Compare commits
408 commits
chatIndexH
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
0236586e44 | ||
|
e13c7ae68c | ||
|
1d68123ea1 | ||
|
cf7b706582 | ||
|
c42d030d02 | ||
|
edfce9b492 | ||
|
e5d1ecd9f3 | ||
|
42a7813776 | ||
|
627faba0db | ||
|
a4ebaf52f5 | ||
|
660fe527f2 | ||
|
1a0ed7f298 | ||
062f5d3811 | |||
034c70542f | |||
|
ef244c3319 | ||
|
556505894c | ||
|
7c63ad66f9 | ||
|
26772a48eb | ||
|
2ded14deda | ||
|
465c082328 | ||
|
25e6660e8e | ||
f58afe92cb | |||
2b3ca0dff9 | |||
|
1e88a31f90 | ||
|
026d32c92a | ||
|
a28b9df6b5 | ||
d2bde99e1f | |||
f8ffedb5db | |||
4b7d17c02f | |||
0ae98f96b5 | |||
|
fb3d314ee2 | ||
|
b032b32db1 | ||
|
63f4b37655 | ||
|
bdc0423bf3 | ||
749f05816c | |||
06ebe95309 | |||
|
40ec4b0968 | ||
|
c4c9dc83c0 | ||
9a37db94ae | |||
|
0ba3a8cd7f | ||
|
0aeaf50c92 | ||
|
a9947ff9f7 | ||
|
c7324c020b | ||
|
46419b0960 | ||
|
c1c8729023 | ||
|
9bcc9ab690 | ||
|
0b6a2db2f1 | ||
61a04b034a | |||
|
ca42a5e7e0 | ||
400cda8dcd | |||
fe50ead4ee | |||
f1717cbd29 | |||
|
5394fde136 | ||
1ad324aa23 | |||
59b99a0a28 | |||
12dbac7480 | |||
258466beeb | |||
656e8ccfe7 | |||
22930628ae | |||
0d26167ee3 | |||
723105382d | |||
c9773fb5ab | |||
51227c1323 | |||
aac7fd7328 | |||
f3dd33c4ca | |||
|
83f0c54f8b | ||
71d1831ed3 | |||
|
29621b739a | ||
|
0b91948141 | ||
|
9d37635500 | ||
|
df6322c712 | ||
|
5de2e94f32 | ||
|
85732c6fbc | ||
|
a7ab0ed33a | ||
|
f152bbeb5b | ||
|
b469135877 | ||
|
a9b6bf5817 | ||
|
f91eb7936a | ||
|
5465d454f5 | ||
|
227c9146f2 | ||
|
ec2a1cf398 | ||
|
0a76ede35a | ||
|
99910a3f3a | ||
|
9ff7a8371d | ||
|
fa8a77a265 | ||
|
03fad6da6d | ||
|
0cc6f959fc | ||
|
033f96b366 | ||
|
7c56bbeae4 | ||
|
723371e9c9 | ||
|
2c53848d04 | ||
|
23df9d05ee | ||
|
0e7ae00a67 | ||
|
81cf5b6852 | ||
|
6d6b07b9a9 | ||
|
4445be3302 | ||
|
d21cbc455a | ||
|
32a55c48be | ||
|
99bb0c7b85 | ||
|
46433109a6 | ||
|
679426abc1 | ||
|
1f589cc2da | ||
|
856a16c640 | ||
|
ebe0143a8a | ||
|
e40cf02baa | ||
|
7c74c7c444 | ||
|
9d6ff8e7d7 | ||
|
3957cdbde4 | ||
|
5f16156f01 | ||
|
3c5bf563a6 | ||
|
40f60cf4be | ||
|
ea409c4220 | ||
|
016e0ffd51 | ||
|
8c725826cb | ||
|
01cbed675b | ||
|
da4393043f | ||
|
11f055932a | ||
|
0b350d083e | ||
|
79b901b63f | ||
|
6c78b9335e | ||
|
5e1d9c3bdb | ||
|
dc5e76e1e9 | ||
|
7ae3e25fb4 | ||
|
338fd3edd1 | ||
|
60c1ed6bb1 | ||
|
932f483b7a | ||
|
fcbf9d65f1 | ||
|
3a8615dbe3 | ||
|
fd46780b89 | ||
|
699d65ff4a | ||
|
dfb3c58153 | ||
|
29cc5968c0 | ||
|
964aa1a833 | ||
|
c979e23084 | ||
|
6fecd5e217 | ||
|
a6d469a999 | ||
|
af5a2b6c92 | ||
|
326a789b01 | ||
|
0c3afffbac | ||
|
b6fa0413d4 | ||
|
d243f130a2 | ||
|
effc1f0a3b | ||
|
985e7341dc | ||
|
b4f64aaedd | ||
|
55d046d318 | ||
|
7c8db1b739 | ||
|
1179c86a06 | ||
|
833f5f1df7 | ||
|
2d58239c34 | ||
|
49b7047ac9 | ||
|
1ff1426b8b | ||
|
5ad93a777a | ||
|
a5e5e36083 | ||
|
8349cb4377 | ||
|
313a4d3827 | ||
|
f33162801c | ||
|
3786a0cb3f | ||
|
68a2adc38d | ||
|
fb4ce26dd3 | ||
|
7bfa4a54e0 | ||
|
4929efadeb | ||
|
f8bc0df74a | ||
|
4a04a55513 | ||
|
fe9cd73798 | ||
|
7996291d0f | ||
|
b8e5fb189c | ||
|
37518d06a6 | ||
|
f6d6352879 | ||
|
02138e9115 | ||
|
5da08c2a15 | ||
|
3c20eb7ca8 | ||
|
65567b9a19 | ||
|
5309dda94b | ||
|
02573e8d4e | ||
|
c509616db9 | ||
|
57f2d71eca | ||
|
fb2c0a42c1 | ||
|
c6f50b8071 | ||
|
54f4ce2dfe | ||
|
fcdf6cc4ed | ||
|
0f4e0eaf58 | ||
|
2fea47af1b | ||
|
25db7a5904 | ||
|
b5b0ec5ed1 | ||
|
b2e41a6421 | ||
|
a92712d158 | ||
|
fa59ca0bb1 | ||
|
22f7a956dc | ||
|
2086a72e8c | ||
|
84cfcb5150 | ||
|
5a2596e9de | ||
|
bf87aa723d | ||
|
4b744f300d | ||
|
8573b3f6d9 | ||
|
489c410b14 | ||
|
a4dcec0540 | ||
|
9da9d22a71 | ||
|
a59d32b29d | ||
|
7657a6e4da | ||
|
9f4f3c9475 | ||
|
8a48982ca5 | ||
|
0400d12e52 | ||
|
88d385ab0d | ||
|
7e985f5823 | ||
|
346ba3c8ef | ||
|
406fbb04a4 | ||
|
4407d8f561 | ||
|
f43364a71a | ||
|
f3242bf7db | ||
|
a88abbb20f | ||
|
db655d766f | ||
|
88d84caad9 | ||
|
fd71c3c013 | ||
|
90b0a40824 | ||
|
0d01ad0b22 | ||
|
f476239f3a | ||
|
555b8320a6 | ||
|
9e45b8ee5c | ||
|
d336e6188e | ||
|
97ee0d7f1d | ||
|
9ef5151fa4 | ||
|
4d4868377b | ||
|
dcb213fe8a | ||
|
972d74f3e2 | ||
|
9b85f2ed82 | ||
|
4f37fdeb67 | ||
|
76063e21cb | ||
|
6bd869b542 | ||
|
162a47fd26 | ||
|
481d6e88cc | ||
|
dce28370b5 | ||
|
2f635395bc | ||
|
bb9cacb71e | ||
|
5a76303f4d | ||
|
1379d2883f | ||
|
56fc96aafa | ||
|
fa9e0c7d54 | ||
|
8bd4ff9102 | ||
|
2ffe9ae885 | ||
|
fbf8671012 | ||
|
0aba35d9bd | ||
|
a2b05fc227 | ||
|
a1859c0333 | ||
|
ded3735973 | ||
|
612ff05983 | ||
|
056b8b9aac | ||
|
1eab3a0627 | ||
|
36947e8470 | ||
|
5a2f250e39 | ||
|
d3a4c50e76 | ||
|
db8e1d6ba8 | ||
|
d668c8666e | ||
|
d2df4ddf16 | ||
|
78e578c5e2 | ||
|
df1f20cb30 | ||
|
91ec56898a | ||
|
136e4328d7 | ||
|
bd9df7b10c | ||
|
942e51a36f | ||
|
b719d18a70 | ||
|
b350487fb9 | ||
|
388ea83e45 | ||
|
29719c0764 | ||
|
9339a2cdf5 | ||
|
98307c59e4 | ||
|
3262835f1d | ||
|
b9917059ed | ||
|
a9c0ae8f37 | ||
|
5c69119b38 | ||
|
9fded3d3a8 | ||
|
109913c9ca | ||
|
cefa87767a | ||
|
2adb002c28 | ||
|
f559b4892b | ||
|
c26ce4cd6b | ||
|
93da676e6b | ||
|
23d4ac6c02 | ||
|
9a2b2b0ca8 | ||
|
4f65b3b666 | ||
|
f240845927 | ||
|
ee4fd1bdbb | ||
|
72f3fddcb2 | ||
|
bc2e92a285 | ||
|
d3556d293d | ||
|
2eb75929aa | ||
|
d76d9bea0f | ||
|
edd9db186b | ||
|
747e35dd4b | ||
|
8fabca8a0d | ||
|
2540b4e28c | ||
|
c8fe64e83f | ||
|
545b716f24 | ||
|
330c642f00 | ||
|
0e64c620dc | ||
|
b422c15b86 | ||
|
694cc0f453 | ||
|
dd55c91000 | ||
|
612026f937 | ||
|
b8e512855d | ||
|
4e9eb36e40 | ||
|
43478b646e | ||
|
d3f721fcce | ||
|
8647c24f23 | ||
|
88160cb621 | ||
|
5e8584af79 | ||
|
eae863172d | ||
|
57267dc944 | ||
|
02f69c2a2c | ||
|
d1043bc97e | ||
|
f0d1111c47 | ||
|
e6471f3d54 | ||
|
f33f70d723 | ||
|
3957ec27e4 | ||
|
4050f41ce2 | ||
|
15f33145a7 | ||
|
cca6e41369 | ||
|
2ff093717c | ||
|
525eba5be1 | ||
|
426bf9c05e | ||
|
3497f9d0fc | ||
|
6ebe312651 | ||
|
45aaf50c40 | ||
|
6be12bd31c | ||
|
bae1777df6 | ||
|
250a83347c | ||
|
aef9fd8391 | ||
|
cb16582722 | ||
|
b2f2ee5453 | ||
|
9715e03971 | ||
|
aae881cec8 | ||
|
366b24bf02 | ||
|
58f6a26bff | ||
|
1a409407c9 | ||
|
4669d17cea | ||
|
8ae148ec90 | ||
|
a432e91996 | ||
|
7ae58badd9 | ||
|
e2e78713df | ||
|
a734690d0d | ||
|
9688c09002 | ||
|
01cdb18b46 | ||
|
063d782001 | ||
|
7369eaec4f | ||
|
532b35e9f3 | ||
|
27f33d1883 | ||
|
2e3fbb0fd3 | ||
|
1dcaaa7169 | ||
|
0a8f507f6f | ||
|
41e9efb8e5 | ||
|
034069320f | ||
|
fe6e1db689 | ||
|
20fd359fb1 | ||
|
8cdfb8a30b | ||
|
1f832d6511 | ||
|
3210bab4e3 | ||
|
d9991cce79 | ||
|
22c30f334d | ||
|
9ebe33a419 | ||
|
257fc749ee | ||
|
352789f79d | ||
|
ade5cb34fb | ||
|
42a697591d | ||
|
23fd7cb7cd | ||
|
8fc499582b | ||
|
ef9a999994 | ||
|
94aee83936 | ||
|
4435828ff7 | ||
|
fc2c53f840 | ||
|
0a4fd6be93 | ||
|
3575e1674c | ||
|
5de6ea4f11 | ||
|
b0ed187bb4 | ||
|
08b004f6a5 | ||
|
40edb2069a | ||
|
98eaf699bc | ||
|
64ef10a10c | ||
|
9280236743 | ||
|
bcff42c449 | ||
|
8f345174ab | ||
|
4cf12cfd15 | ||
|
472d07721f | ||
|
f6e21b6428 | ||
|
cbee948e09 | ||
|
4b0f8f3166 | ||
|
35ed5879bc | ||
|
42f55db3f4 | ||
|
58e0ecce1f | ||
|
0b7c6cd75f | ||
|
299ab8d7a0 | ||
|
2d5798e182 | ||
|
aa2d47cb11 | ||
|
1dee780d0b | ||
|
530afe2714 | ||
|
0948d32fe1 | ||
|
1f4b9ce082 | ||
|
84752798f3 | ||
|
66dc268efc | ||
|
40fea18a46 | ||
|
31ee65fc98 | ||
|
ca94e7971b | ||
|
8d6d88de5f | ||
|
1a3767e599 | ||
|
c12c9e2ac6 | ||
|
a6e0c9b3ab | ||
|
9219495081 | ||
|
42f3cfb155 | ||
|
fba20712b2 | ||
|
910e261ad9 |
102
.github/workflows/main.yml
vendored
Normal file
|
@ -0,0 +1,102 @@
|
|||
name: Fernschreiber build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
tags:
|
||||
- '*'
|
||||
# to prevent secrets leaking,
|
||||
# we don't build on PRs
|
||||
#pull_request:
|
||||
# branches:
|
||||
# - master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: 'true'
|
||||
|
||||
- name: Prepare
|
||||
run: mkdir output
|
||||
|
||||
- name: Fetch TDLib
|
||||
uses: dsaltares/fetch-gh-release-asset@master
|
||||
with:
|
||||
repo: "Wunderfitz/td"
|
||||
file: "tdlib.zip"
|
||||
target: tdlib/tdlib.zip
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Decompress TDLib
|
||||
uses: TonyBogdanov/zip@1.0
|
||||
with:
|
||||
args: unzip -qq ./tdlib/tdlib.zip -d ./tdlib
|
||||
|
||||
- name: Set Secrets
|
||||
uses: DamianReeves/write-file-action@master
|
||||
with:
|
||||
path: ./src/tdlibsecrets.h
|
||||
contents: |
|
||||
#ifndef TDLIBSECRETS_H
|
||||
#define TDLIBSECRETS_H
|
||||
const char TDLIB_API_ID[] = "${{secrets.TDLIB_API_ID}}";
|
||||
const char TDLIB_API_HASH[] = "${{secrets.TDLIB_API_HASH}}";
|
||||
#endif // TDLIBSECRETS_H
|
||||
write-mode: overwrite
|
||||
|
||||
- name: Build armv7hl
|
||||
id: build_armv7hl
|
||||
uses: coderus/github-sfos-build@master
|
||||
with:
|
||||
release: 4.4.0.58
|
||||
|
||||
- name: Build i486
|
||||
id: build_i486
|
||||
uses: coderus/github-sfos-build@master
|
||||
with:
|
||||
release: 4.4.0.58
|
||||
arch: i486
|
||||
|
||||
- name: Build aarch64
|
||||
id: build_aarch64
|
||||
uses: coderus/github-sfos-build@master
|
||||
with:
|
||||
release: 4.4.0.58
|
||||
arch: aarch64
|
||||
|
||||
- name: Upload build result
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: rpm-build-result
|
||||
path: RPMS
|
||||
|
||||
- name: Create release
|
||||
if: contains(github.ref, 'v')
|
||||
run: |
|
||||
set -x
|
||||
assets=()
|
||||
for asset in RPMS/*.rpm; do
|
||||
assets+=("-a" "$asset")
|
||||
done
|
||||
tag_name="${GITHUB_REF##*/}"
|
||||
gh release create "$tag_name" "${assets[@]}"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Create prerelease
|
||||
if: contains(github.ref, 'pre')
|
||||
run: |
|
||||
set -x
|
||||
assets=()
|
||||
for asset in RPMS/*.rpm; do
|
||||
assets+=("-a" "$asset")
|
||||
done
|
||||
tag_name="${GITHUB_REF##*/}"
|
||||
gh release create "$tag_name" -p -n "This is a pre-release for testing purposes only. It may or may not be unstable." "${assets[@]}"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
3
.gitignore
vendored
|
@ -53,3 +53,6 @@ compile_commands.json
|
|||
|
||||
# TDLib API Secrets
|
||||
tdlibsecrets.h
|
||||
|
||||
#Convinience scripts
|
||||
*.sh
|
||||
|
|
35
README.md
|
@ -1,6 +1,7 @@
|
|||
# Fernschreiber
|
||||
A Telegram client for Sailfish OS
|
||||
|
||||
[![Fernschreiber build](https://github.com/Wunderfitz/harbour-fernschreiber/actions/workflows/main.yml/badge.svg)](https://github.com/Wunderfitz/harbour-fernschreiber/actions/workflows/main.yml)
|
||||
## Authors
|
||||
Sebastian J. Wolf [sebastian@ygriega.de](mailto:sebastian@ygriega.de) and several contributors
|
||||
|
||||
|
@ -10,9 +11,14 @@ Fernschreiber wouldn't be the same without all the people helping in making it b
|
|||
|
||||
### Code (Features, Bugfixes, Optimizations etc.)
|
||||
- Chat list model, chat model, notifications, TDLib receiver, animated stickers, project dependencies, qml/c++ optimizations, chatPhoto, TDLibFile, code reviews, logging categories: [Slava Monich](https://github.com/monich)
|
||||
- Chat info page, performance improvements to chat page, location support, app initialization/registration with Telegram, project dependencies, emoji handling, qml/js optimizations, multi-message actions, i18n fixes, chat permission handling, code reviews, logging categories, bot support: [jgibbon](https://github.com/jgibbon)
|
||||
- Copy message to clipboard [Christian Stemmle](https://github.com/chstem)
|
||||
- Hide send message button if send-by-enter is switched on [santhoshmanikandan](https://github.com/santhoshmanikandan)
|
||||
- Chat info page, performance improvements to chat page, location support, app initialization/registration with Telegram, project dependencies, emoji handling, qml/js optimizations, multi-message actions, i18n fixes, chat permission handling, code reviews, logging categories, bot support, github build: [jgibbon](https://github.com/jgibbon)
|
||||
- Copy message to clipboard: [Christian Stemmle](https://github.com/chstem)
|
||||
- Hide send message button if send-by-enter is switched on, focus text input on entering a chat: [santhoshmanikandan](https://github.com/santhoshmanikandan)
|
||||
- Integration of logout and sesison options to settings page, search results optimization, highlight unread conversations: [Peter G.](https://github.com/nephros)
|
||||
- Option to always append last message in notifications: [Johannes Bachmann](https://github.com/dscheinah)
|
||||
- Option to jump to quoted message, widescreen UI adjustments: [Mikhail Barashkov](https://github.com/mbarashkov)
|
||||
|
||||
This list might not be complete. In case I forgot something/somebody, please let me know or create a PR, thanks! :)
|
||||
|
||||
### Logo/Icon
|
||||
- Designed by [Matteo](https://github.com/iamnomeutente), adjustments by [Slava Monich](https://github.com/monich)
|
||||
|
@ -20,6 +26,7 @@ Fernschreiber wouldn't be the same without all the people helping in making it b
|
|||
### Translations
|
||||
- Chinese: [dashinfantry](https://github.com/dashinfantry)
|
||||
- Finnish: [jorm1s](https://github.com/jorm1s)
|
||||
- French: [Patrick Hervieux](https://github.com/pherjung), [Nicolas Bourdais](https://github.com/nbourdais)
|
||||
- Hungarian: [edp17](https://github.com/edp17)
|
||||
- Italian: [Matteo](https://github.com/iamnomeutente)
|
||||
- Polish: [atlochowski](https://github.com/atlochowski)
|
||||
|
@ -32,6 +39,7 @@ Fernschreiber wouldn't be the same without all the people helping in making it b
|
|||
Licensed under GNU GPLv3
|
||||
|
||||
## Build
|
||||
### Local build
|
||||
Simply clone this repository and ensure to have all [submodules](https://git-scm.com/docs/git-submodule) imported as well (e.g. by using `git submodule update --init`). Then use the project file `harbour-fernschreiber.pro` to import the sources in your SailfishOS IDE. To build and run Fernschreiber or an application which is based on Fernschreiber, you need to create the file `harbour-fernschreiber/src/tdlibsecrets.h` and enter the required constants in the following format:
|
||||
|
||||
```
|
||||
|
@ -44,29 +52,39 @@ const char TDLIB_API_HASH[] = "1234567890abcdef1234567890abcdef";
|
|||
|
||||
You get the Telegram API ID and hash as soon as you've registered your own application on [https://my.telegram.org](https://my.telegram.org).
|
||||
|
||||
Moreover, you need to have a compiled version of [TDLib 1.7](https://github.com/tdlib/td) in the sub-directory `tdlib`. This sub-directory must contain another sub-directory that fits to the target device architecture (e.g. armv7hl, i486). Within this directory, there needs to be a folder called `lib` that contains at least `libtdjson.so`. For armv7hl the relative path would consequently be `tdlib/armv7hl/lib`.
|
||||
Moreover, you need to have a compiled version of [TDLib 1.8.21](https://github.com/tdlib/td) or higher in the sub-directory `tdlib`. This sub-directory must contain another sub-directory that fits to the target device architecture (e.g. armv7hl, i486). Within this directory, there needs to be a folder called `lib` that contains at least `libtdjson.so`. For armv7hl the relative path would consequently be `tdlib/armv7hl/lib`.
|
||||
|
||||
In case you encounter strange performance issues on startup (several seconds delay, app seems to do nothing), please be sure to [follow the instructions from the respective GitHub issue](https://github.com/tdlib/td/issues/1322), i.e. let TDLib build SQLite with `-DOMIT_MEMLOCK` and be sure to comment the two lines 22558 (`#ifndef OMIT_MEMLOCK`) and 22567 (`#endif`) in the file `sqlite/sqlite/sqlite3.c`.
|
||||
|
||||
Moreover, TDLib 1.7 has issues loading some pinned messages in case the message database is used (which is the case in Fernschreiber). [A small patch](https://github.com/tdlib/td/commit/30d912bd4b145afb8d494b307d37645ffa21ec29) is required to make TDLib work properly in all cases. See [the respective TDLib issue](https://github.com/tdlib/td/issues/1343) for more details.
|
||||
You may just want to download the [tdlib.zip from our fork](https://github.com/Wunderfitz/td/releases) to just use the exact version of the latest official Fernschreiber release. To use it, you need to extract it into your local `tdlib/` folder as described above. If so, you're done and can compile Fernschreiber using the Sailfish SDK. If you want to build TDLib for yourself, please keep on reading.
|
||||
|
||||
In case you want to use the same codebase which was used to compile the library that is shipped with Fernschreiber, please [check out the fork](https://github.com/Wunderfitz/td), be sure to use the branch `fernschreiber` and compile these sources using the following commands (be sure to have the Sailfish OS build engine running):
|
||||
|
||||
- `alias sfdk=~/SailfishOS/bin/sfdk`
|
||||
- `sfdk config target=SailfishOS-3.3.0.16-armv7hl` (this compiles the sources on SFOS 3.3 and ARM - the target needs to be adjusted according to the running SDK engine and the platform)
|
||||
- `sfdk config target=SailfishOS-4.4.0.58-armv7hl` (this compiles the sources on SFOS 4.4 and ARM - the target needs to be adjusted according to the running SDK engine and the platform)
|
||||
- `mkdir build`
|
||||
- `cd build`
|
||||
- `sfdk build-init`
|
||||
- `sfdk build-shell cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=../tdlib -DTD_ENABLE_LTO=ON ..` (in case of compilation issues, try removing the flag `-DTD_ENABLE_LTO=ON`)
|
||||
- `sfdk build-shell cmake --build . --target install`
|
||||
|
||||
You'll find the compiled library in the directory `td/tdlib`.
|
||||
|
||||
### Github Action
|
||||
Please read the "Local build" section anyway to understand what's going on before continuing. If you want to automatically build your fork on Github, you'll still need to get a Telegram API ID and hash. These are then [added as project secrets](https://docs.github.com/en/actions/reference/encrypted-secrets#creating-encrypted-secrets-for-a-repository) named `TDLIB_API_ID` and `TDLIB_API_HASH`.
|
||||
|
||||
By default, only commits to the master branch will be built. You may [change that for your fork](https://docs.github.com/en/actions/quickstart), but please don't create a pull request to the official repository changing the github action without consulting the [Fernschreiber contributors](https://github.com/Wunderfitz/harbour-fernschreiber/issues/162) first.
|
||||
|
||||
If you push a tag containing the letter "v" (for example "v0.99.3"), a github release will be created allowing easy download of the resulting rpms. If the tag is named for example "pre-0.99.3", the resulting release is marked as a pre-release for testing purposes.
|
||||
|
||||
|
||||
## Debug
|
||||
Fernschreiber does only output a few TDLib messages by default. To get its own debug log messages, you can either run a debug build to see all of them or use the environment variable `QT_LOGGING_RULES` to specify/filter which messages you'd like to see.
|
||||
|
||||
Run `QT_LOGGING_RULES="fernschreiber.*=true" harbour-fernschreiber` to see all messages or replace the `*` with specific logging categories. You'll find the logging category inside the corresponding `.cpp` file for backend usage or you can use `JS` to only see frontend messages.
|
||||
|
||||
You can append ` &> fernschreiber.log` to the command to create a text file containing the debug messages.
|
||||
|
||||
**Please be aware that debug messages will most likely include personal information** including (but not limited to) chat content and user ids/names of yourself and all your chat partners. Do not share it publicly and, at your discretion, try to remove private info even from the parts you do share with a trusted person.
|
||||
|
||||
## Contribute
|
||||
|
||||
If you want to contribute bug fixes, improvements, new features etc. please create a pull request (PR). PRs are always welcome and will be reviewed as soon as possible, but may take some time. :)
|
||||
|
@ -78,5 +96,6 @@ This project uses
|
|||
- The Telegram Database Library (TDLib) - available on [GitHub.com](https://github.com/tdlib/td). Thanks for making it available under the conditions of the Boost Software License 1.0! Details about the license of TDLib in [its license file](https://github.com/tdlib/td/blob/master/LICENSE_1_0.txt).
|
||||
- Emoji parsing and artwork by [Twitter Emoji (Twemoji)](http://twitter.github.io/twemoji/), copyright 2018 Twitter, Inc and other contributors, Code licensed under the [MIT License](http://opensource.org/licenses/MIT), Graphics licensed under [CC-BY 4.0](https://creativecommons.org/licenses/by/4.0/)
|
||||
- Animated sticker parsing and animation by [rlottie](https://github.com/Samsung/rlottie), copyright 2020 Samsung Electronics Co., Ltd. and [other contributors](https://github.com/Samsung/rlottie/blob/master/AUTHORS), Code licensed under the [MIT License](https://github.com/Samsung/rlottie/blob/master/licenses/COPYING.MIT), some rlottie components [licensed under other licenses](https://github.com/Samsung/rlottie/blob/master/COPYING).
|
||||
- Reverse geocoding for location attachments by [OpenStreetMap Nominatim](https://wiki.openstreetmap.org/wiki/Nominatim).
|
||||
|
||||
Thanks to the maintainers of the used components and - again - all contributors to Fernschreiber!
|
||||
|
|
BIN
db/emojis.db
3288
doc/emojis.md
Normal file
|
@ -4,3 +4,8 @@ X-Nemo-Application-Type=silica-qt5
|
|||
Icon=harbour-fernschreiber
|
||||
Exec=harbour-fernschreiber
|
||||
Name=Fernschreiber
|
||||
|
||||
[X-Sailjail]
|
||||
Permissions=Audio;Documents;Downloads;Internet;Location;MediaIndexing;Microphone;Music;Pictures;PublicDir;RemovableMedia;UserDirs;Videos
|
||||
OrganizationName=de.ygriega
|
||||
ApplicationName=fernschreiber
|
||||
|
|
|
@ -22,6 +22,7 @@ DEFINES += QT_STATICPLUGIN
|
|||
|
||||
SOURCES += src/harbour-fernschreiber.cpp \
|
||||
src/appsettings.cpp \
|
||||
src/chatpermissionfiltermodel.cpp \
|
||||
src/chatlistmodel.cpp \
|
||||
src/chatmodel.cpp \
|
||||
src/contactsmodel.cpp \
|
||||
|
@ -38,12 +39,14 @@ SOURCES += src/harbour-fernschreiber.cpp \
|
|||
src/tdlibfile.cpp \
|
||||
src/tdlibreceiver.cpp \
|
||||
src/tdlibwrapper.cpp \
|
||||
src/textfiltermodel.cpp \
|
||||
src/tgsplugin.cpp
|
||||
|
||||
DISTFILES += qml/harbour-fernschreiber.qml \
|
||||
qml/components/AudioPreview.qml \
|
||||
qml/components/BackgroundImage.qml \
|
||||
qml/components/ChatListViewItem.qml \
|
||||
qml/components/ContactSync.qml \
|
||||
qml/components/DocumentPreview.qml \
|
||||
qml/components/GamePreview.qml \
|
||||
qml/components/ImagePreview.qml \
|
||||
|
@ -64,6 +67,7 @@ DISTFILES += qml/harbour-fernschreiber.qml \
|
|||
qml/components/ReplyMarkupButtons.qml \
|
||||
qml/components/StickerPicker.qml \
|
||||
qml/components/PhotoTextsListItem.qml \
|
||||
qml/components/StickerSetOverlay.qml \
|
||||
qml/components/TDLibImage.qml \
|
||||
qml/components/TDLibMinithumbnail.qml \
|
||||
qml/components/TDLibPhoto.qml \
|
||||
|
@ -92,6 +96,7 @@ DISTFILES += qml/harbour-fernschreiber.qml \
|
|||
qml/components/inlineQueryResults/InlineQueryResultVenue.qml \
|
||||
qml/components/inlineQueryResults/InlineQueryResultVideo.qml \
|
||||
qml/components/inlineQueryResults/InlineQueryResultVoiceNote.qml \
|
||||
qml/components/messageContent/MessageAnimatedEmoji.qml \
|
||||
qml/components/messageContent/MessageAnimation.qml \
|
||||
qml/components/messageContent/MessageAudio.qml \
|
||||
qml/components/messageContent/MessageContentBase.qml \
|
||||
|
@ -106,7 +111,17 @@ DISTFILES += qml/harbour-fernschreiber.qml \
|
|||
qml/components/messageContent/MessageVideoNote.qml \
|
||||
qml/components/messageContent/MessageVideo.qml \
|
||||
qml/components/messageContent/MessageVoiceNote.qml \
|
||||
qml/components/messageContent/SponsoredMessage.qml \
|
||||
qml/components/messageContent/WebPagePreview.qml \
|
||||
qml/components/settingsPage/Accordion.qml \
|
||||
qml/components/settingsPage/AccordionItem.qml \
|
||||
qml/components/settingsPage/ResponsiveGrid.qml \
|
||||
qml/components/settingsPage/SettingsAppearance.qml \
|
||||
qml/components/settingsPage/SettingsBehavior.qml \
|
||||
qml/components/settingsPage/SettingsPrivacy.qml \
|
||||
qml/components/settingsPage/SettingsSession.qml \
|
||||
qml/components/settingsPage/SettingsStorage.qml \
|
||||
qml/components/settingsPage/SettingsUserProfile.qml \
|
||||
qml/js/debug.js \
|
||||
qml/js/functions.js \
|
||||
qml/pages/ChatInformationPage.qml \
|
||||
|
@ -125,7 +140,6 @@ DISTFILES += qml/harbour-fernschreiber.qml \
|
|||
qml/pages/VideoPage.qml \
|
||||
rpm/harbour-fernschreiber.changes \
|
||||
rpm/harbour-fernschreiber.spec \
|
||||
rpm/harbour-fernschreiber.yaml \
|
||||
translations/*.ts \
|
||||
harbour-fernschreiber.desktop
|
||||
|
||||
|
@ -134,6 +148,7 @@ SAILFISHAPP_ICONS = 86x86 108x108 128x128 172x172 256x256
|
|||
TRANSLATIONS += translations/harbour-fernschreiber-de.ts \
|
||||
translations/harbour-fernschreiber-es.ts \
|
||||
translations/harbour-fernschreiber-fi.ts \
|
||||
translations/harbour-fernschreiber-fr.ts \
|
||||
translations/harbour-fernschreiber-hu.ts \
|
||||
translations/harbour-fernschreiber-it.ts \
|
||||
translations/harbour-fernschreiber-pl.ts \
|
||||
|
@ -143,11 +158,18 @@ TRANSLATIONS += translations/harbour-fernschreiber-de.ts \
|
|||
translations/harbour-fernschreiber-en.ts \
|
||||
translations/harbour-fernschreiber-zh_CN.ts
|
||||
|
||||
contains(QT_ARCH, arm) {
|
||||
equals(QT_ARCH, arm) {
|
||||
message(Building ARM)
|
||||
TARGET_ARCHITECTURE = armv7hl
|
||||
} else {
|
||||
}
|
||||
equals(QT_ARCH, i386) {
|
||||
message(Building i486)
|
||||
TARGET_ARCHITECTURE = i486
|
||||
}
|
||||
equals(QT_ARCH, arm64){
|
||||
message(Building aarch64)
|
||||
TARGET_ARCHITECTURE = aarch64
|
||||
}
|
||||
|
||||
INCLUDEPATH += $$PWD/tdlib/include
|
||||
DEPENDPATH += $$PWD/tdlib/include
|
||||
|
@ -189,6 +211,7 @@ INSTALLS += telegram 86.png 108.png 128.png 172.png 256.png \
|
|||
|
||||
HEADERS += \
|
||||
src/appsettings.h \
|
||||
src/chatpermissionfiltermodel.h \
|
||||
src/chatlistmodel.h \
|
||||
src/chatmodel.h \
|
||||
src/contactsmodel.h \
|
||||
|
@ -208,6 +231,7 @@ HEADERS += \
|
|||
src/tdlibreceiver.h \
|
||||
src/tdlibsecrets.h \
|
||||
src/tdlibwrapper.h \
|
||||
src/textfiltermodel.h \
|
||||
src/tgsplugin.h
|
||||
|
||||
# https://github.com/Samsung/rlottie.git
|
||||
|
|
Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 9.8 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 7.6 KiB |
|
@ -7,37 +7,37 @@
|
|||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
sodipodi:docname="background-black.svg"
|
||||
inkscape:version="0.92.2 5c3e80d, 2017-08-06"
|
||||
viewBox="0 0 114.66667 114.66667"
|
||||
height="114.66667"
|
||||
width="114.66667"
|
||||
version="1.1"
|
||||
xml:space="preserve"
|
||||
id="svg2"
|
||||
version="1.1"><sodipodi:namedview
|
||||
inkscape:current-layer="svg2"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-x="0"
|
||||
inkscape:cy="57.333336"
|
||||
inkscape:cx="57.333336"
|
||||
inkscape:zoom="2.0581394"
|
||||
showgrid="false"
|
||||
id="namedview70"
|
||||
inkscape:window-height="1015"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0"
|
||||
guidetolerance="10"
|
||||
gridtolerance="10"
|
||||
objecttolerance="10"
|
||||
borderopacity="1"
|
||||
width="114.66667"
|
||||
height="114.66667"
|
||||
viewBox="0 0 114.66667 114.66667"
|
||||
inkscape:version="0.92.2 5c3e80d, 2017-08-06"
|
||||
sodipodi:docname="background-black.svg"
|
||||
id="svg60"><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff" /><metadata
|
||||
id="metadata72"><rdf:RDF><cc:Work
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1015"
|
||||
id="namedview62"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.0581394"
|
||||
inkscape:cx="57.333336"
|
||||
inkscape:cy="57.333336"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="g67" /><metadata
|
||||
id="metadata64"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs12"><clipPath
|
||||
id="defs8"><clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath18"><path
|
||||
d="M 0.301,43 C 0.301,42.364 0.3,1.723 0.3,1.723 v 0 C 0.3,0.938 0.938,0.3 1.723,0.3 v 0 H 43 c 23.584,0 42.7,19.117 42.7,42.7 v 0 C 85.7,66.583 66.584,85.7 43,85.7 v 0 C 19.417,85.7 0.301,66.583 0.301,43"
|
||||
|
@ -67,16 +67,16 @@
|
|||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(-72.476372,-72.476372,72.476372,-72.476372,73.193359,73.192871)"
|
||||
spreadMethod="pad"
|
||||
id="linearGradient30-152"><stop
|
||||
id="linearGradient30-529"><stop
|
||||
style="stop-opacity:1;stop-color:#727272;opacity:1"
|
||||
offset="0"
|
||||
id="stop3900" /><stop
|
||||
id="stop74" /><stop
|
||||
style="stop-opacity:1;stop-color:#898989;opacity:1"
|
||||
offset="0.959184"
|
||||
id="stop3902" /><stop
|
||||
id="stop76" /><stop
|
||||
style="stop-opacity:1;stop-color:#898989;opacity:1"
|
||||
offset="1"
|
||||
id="stop3904" /></linearGradient><linearGradient
|
||||
id="stop78" /></linearGradient><linearGradient
|
||||
x1="0"
|
||||
y1="0"
|
||||
x2="1"
|
||||
|
@ -84,16 +84,16 @@
|
|||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(-72.476372,-72.476372,72.476372,-72.476372,73.193359,73.192871)"
|
||||
spreadMethod="pad"
|
||||
id="linearGradient30-152-977"><stop
|
||||
id="linearGradient30-529-824"><stop
|
||||
style="stop-opacity:1;stop-color:#8d8d8d;opacity:1"
|
||||
offset="0"
|
||||
id="stop4065" /><stop
|
||||
id="stop290" /><stop
|
||||
style="stop-opacity:1;stop-color:#767676;opacity:1"
|
||||
offset="0.959184"
|
||||
id="stop4067" /><stop
|
||||
id="stop292" /><stop
|
||||
style="stop-opacity:1;stop-color:#767676;opacity:1"
|
||||
offset="1"
|
||||
id="stop4069" /></linearGradient></defs><g
|
||||
id="stop294" /></linearGradient></defs><g
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="harbour-fernschreiber"
|
||||
transform="matrix(1.3333333,0,0,-1.3333333,0,114.66667)"
|
||||
|
@ -102,15 +102,15 @@
|
|||
clip-path="url(#clipPath18)"
|
||||
id="g16"><path
|
||||
d="M 0.301,43 C 0.301,42.364 0.3,1.723 0.3,1.723 v 0 C 0.3,0.938 0.938,0.3 1.723,0.3 v 0 H 43 c 23.584,0 42.7,19.117 42.7,42.7 v 0 C 85.7,66.583 66.584,85.7 43,85.7 v 0 C 19.417,85.7 0.301,66.583 0.301,43"
|
||||
style="fill:url(#linearGradient30-152-977);stroke:none;opacity:1"
|
||||
style="fill:url(#linearGradient30-529-824);stroke:none;opacity:1"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path14" /></g></g><g
|
||||
transform="translate(75,43.1621)"
|
||||
id="g20" /><path
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.9;fill:#464646;stroke-width:0.97363532;fill-opacity:1"
|
||||
d="m 43.000002,75.285148 c -17.583854,0 -31.837875,-12.9659 -31.837875,-28.958836 V 17.367476 7.7148552 c 5.861284,0 10.612625,4.1720268 10.612625,9.5017078 h 21.22525 c 17.583855,0 31.837876,13.115841 31.837876,29.109749 0,15.992936 -14.254021,28.958836 -31.837876,28.958836 z"
|
||||
id="path10" /><g
|
||||
style="opacity:0.9;fill:#464646;fill-opacity:1;stroke-width:0.9930262"
|
||||
d="M 42.700457,74.178768 C 24.766404,74.178768 10.2285,60.954638 10.2285,44.643189 V 15.107611 5.2627488 c 5.978017,0 10.823985,4.255117 10.823985,9.6909432 h 21.647972 c 17.934054,0 32.471954,13.377056 32.471954,29.689497 0,16.311449 -14.5379,29.535579 -32.471954,29.535579 z"
|
||||
id="path10-3"
|
||||
inkscape:connector-curvature="0" /><g
|
||||
id="g46"
|
||||
transform="translate(15.3208,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.592,-1.322 1.323,-1.322 0.732,0 1.324,0.593 1.324,1.322 0,0.73 -0.592,1.322 -1.324,1.322 C 0.592,1.322 0,0.73 0,0"
|
||||
|
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
@ -7,37 +7,37 @@
|
|||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
sodipodi:docname="background-white.svg"
|
||||
inkscape:version="0.92.2 5c3e80d, 2017-08-06"
|
||||
viewBox="0 0 114.66667 114.66667"
|
||||
height="114.66667"
|
||||
width="114.66667"
|
||||
version="1.1"
|
||||
xml:space="preserve"
|
||||
id="svg2"
|
||||
version="1.1"><sodipodi:namedview
|
||||
inkscape:current-layer="svg2"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-x="0"
|
||||
inkscape:cy="57.333336"
|
||||
inkscape:cx="57.333336"
|
||||
inkscape:zoom="2.0581394"
|
||||
showgrid="false"
|
||||
id="namedview70"
|
||||
inkscape:window-height="1015"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0"
|
||||
guidetolerance="10"
|
||||
gridtolerance="10"
|
||||
objecttolerance="10"
|
||||
borderopacity="1"
|
||||
width="114.66667"
|
||||
height="114.66667"
|
||||
viewBox="0 0 114.66667 114.66667"
|
||||
inkscape:version="0.92.2 5c3e80d, 2017-08-06"
|
||||
sodipodi:docname="background-white.svg"
|
||||
id="svg60"><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff" /><metadata
|
||||
id="metadata72"><rdf:RDF><cc:Work
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1015"
|
||||
id="namedview62"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.0581394"
|
||||
inkscape:cx="57.333336"
|
||||
inkscape:cy="57.333336"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="g67" /><metadata
|
||||
id="metadata64"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs12"><clipPath
|
||||
id="defs8"><clipPath
|
||||
id="clipPath18"
|
||||
clipPathUnits="userSpaceOnUse"><path
|
||||
id="path2"
|
||||
|
@ -60,7 +60,7 @@
|
|||
id="stop9"
|
||||
offset="1"
|
||||
style="stop-opacity:1;stop-color:#767676;opacity:1" /></linearGradient><linearGradient
|
||||
id="linearGradient30-152"
|
||||
id="linearGradient30-529"
|
||||
spreadMethod="pad"
|
||||
gradientTransform="matrix(-72.476372,-72.476372,72.476372,-72.476372,73.193359,73.192871)"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
|
@ -68,13 +68,13 @@
|
|||
x2="1"
|
||||
y1="0"
|
||||
x1="0"><stop
|
||||
id="stop3900"
|
||||
id="stop74"
|
||||
offset="0"
|
||||
style="stop-opacity:1;stop-color:#8d8d8d;opacity:1" /><stop
|
||||
id="stop3902"
|
||||
id="stop76"
|
||||
offset="0.959184"
|
||||
style="stop-opacity:1;stop-color:#767676;opacity:1" /><stop
|
||||
id="stop3904"
|
||||
id="stop78"
|
||||
offset="1"
|
||||
style="stop-opacity:1;stop-color:#767676;opacity:1" /></linearGradient></defs><g
|
||||
id="g67"
|
||||
|
@ -86,14 +86,14 @@
|
|||
clip-path="url(#clipPath18)"><path
|
||||
id="path14"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:url(#linearGradient30-152);stroke:none;opacity:1"
|
||||
style="fill:url(#linearGradient30-529);stroke:none;opacity:1"
|
||||
d="M 0.301,43 C 0.301,42.364 0.3,1.723 0.3,1.723 v 0 C 0.3,0.938 0.938,0.3 1.723,0.3 v 0 H 43 c 23.584,0 42.7,19.117 42.7,42.7 v 0 C 85.7,66.583 66.584,85.7 43,85.7 v 0 C 19.417,85.7 0.301,66.583 0.301,43" /></g></g><g
|
||||
id="g20"
|
||||
transform="translate(75,43.1621)" /><path
|
||||
id="path10"
|
||||
d="m 43.000002,75.285148 c -17.583854,0 -31.837875,-12.9659 -31.837875,-28.958836 V 17.367476 7.7148552 c 5.861284,0 10.612625,4.1720268 10.612625,9.5017078 h 21.22525 c 17.583855,0 31.837876,13.115841 31.837876,29.109749 0,15.992936 -14.254021,28.958836 -31.837876,28.958836 z"
|
||||
style="opacity:0.9;fill:#b9b9b9;stroke-width:0.97363532;fill-opacity:1"
|
||||
inkscape:connector-curvature="0" /><g
|
||||
inkscape:connector-curvature="0"
|
||||
id="path10-3"
|
||||
d="M 42.700457,74.178768 C 24.766404,74.178768 10.2285,60.954638 10.2285,44.643189 V 15.107611 5.2627488 c 5.978017,0 10.823985,4.255117 10.823985,9.6909432 h 21.647972 c 17.934054,0 32.471954,13.377056 32.471954,29.689497 0,16.311449 -14.5379,29.535579 -32.471954,29.535579 z"
|
||||
style="opacity:0.9;fill:#b9b9b9;fill-opacity:1;stroke-width:0.9930262" /><g
|
||||
transform="translate(15.3208,45.7656)"
|
||||
id="g46"><path
|
||||
inkscape:connector-curvature="0"
|
||||
|
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
@ -5,191 +5,200 @@
|
|||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="svg2"
|
||||
xml:space="preserve"
|
||||
width="114.66667"
|
||||
height="114.66667"
|
||||
viewBox="0 0 114.66667 114.66667"
|
||||
inkscape:version="0.92.4 (unknown)">
|
||||
inkscape:version="0.92.4 (unknown)"
|
||||
sodipodi:docname="harbour-fernschreiber-3.svg">
|
||||
<defs>
|
||||
<clipPath
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath18">
|
||||
clipPathUnits="userSpaceOnUse"
|
||||
id="clipPath18">
|
||||
<path
|
||||
d="M 0.301,43 C 0.301,42.364 0.3,1.723 0.3,1.723 v 0 C 0.3,0.938 0.938,0.3 1.723,0.3 v 0 H 43 c 23.584,0 42.7,19.117 42.7,42.7 v 0 C 85.7,66.583 66.584,85.7 43,85.7 v 0 C 19.417,85.7 0.301,66.583 0.301,43"
|
||||
inkscape:connector-curvature="0"/>
|
||||
d="M 0.301,43 C 0.301,42.364 0.3,1.723 0.3,1.723 v 0 C 0.3,0.938 0.938,0.3 1.723,0.3 v 0 H 43 c 23.584,0 42.7,19.117 42.7,42.7 v 0 C 85.7,66.583 66.584,85.7 43,85.7 v 0 C 19.417,85.7 0.301,66.583 0.301,43"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path2" />
|
||||
</clipPath>
|
||||
<linearGradient
|
||||
x1="0"
|
||||
y1="0"
|
||||
x2="1"
|
||||
y2="0"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(-72.476372,-72.476372,72.476372,-72.476372,73.193359,73.192871)"
|
||||
spreadMethod="pad"
|
||||
id="linearGradient30">
|
||||
x1="0"
|
||||
y1="0"
|
||||
x2="1"
|
||||
y2="0"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(-72.476372,-72.476372,72.476372,-72.476372,73.193359,73.192871)"
|
||||
spreadMethod="pad"
|
||||
id="linearGradient30">
|
||||
<stop
|
||||
style="stop-opacity:1;stop-color:#ec7221"
|
||||
offset="0"/>
|
||||
style="stop-opacity:1;stop-color:#ec7221"
|
||||
offset="0"
|
||||
id="stop5" />
|
||||
<stop
|
||||
style="stop-opacity:1;stop-color:#e7454c"
|
||||
offset="0.959184"/>
|
||||
style="stop-opacity:1;stop-color:#e7454c"
|
||||
offset="0.959184"
|
||||
id="stop7" />
|
||||
<stop
|
||||
style="stop-opacity:1;stop-color:#e7454c"
|
||||
offset="1"/>
|
||||
style="stop-opacity:1;stop-color:#e7454c"
|
||||
offset="1"
|
||||
id="stop9" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="harbour-fernschreiber"
|
||||
transform="matrix(1.3333333,0,0,-1.3333333,0,114.66667)">
|
||||
<g>
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="harbour-fernschreiber"
|
||||
transform="matrix(1.3333333,0,0,-1.3333333,0,114.66667)"
|
||||
id="g67">
|
||||
<g
|
||||
id="g18">
|
||||
<g
|
||||
clip-path="url(#clipPath18)">
|
||||
clip-path="url(#clipPath18)"
|
||||
id="g16">
|
||||
<path
|
||||
d="M 0.301,43 C 0.301,42.364 0.3,1.723 0.3,1.723 v 0 C 0.3,0.938 0.938,0.3 1.723,0.3 v 0 H 43 c 23.584,0 42.7,19.117 42.7,42.7 v 0 C 85.7,66.583 66.584,85.7 43,85.7 v 0 C 19.417,85.7 0.301,66.583 0.301,43"
|
||||
style="fill:url(#linearGradient30);stroke:none"
|
||||
inkscape:connector-curvature="0"/>
|
||||
d="M 0.301,43 C 0.301,42.364 0.3,1.723 0.3,1.723 v 0 C 0.3,0.938 0.938,0.3 1.723,0.3 v 0 H 43 c 23.584,0 42.7,19.117 42.7,42.7 v 0 C 85.7,66.583 66.584,85.7 43,85.7 v 0 C 19.417,85.7 0.301,66.583 0.301,43"
|
||||
style="fill:url(#linearGradient30);stroke:none"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path14" />
|
||||
</g>
|
||||
</g>
|
||||
<g
|
||||
transform="translate(75,43.1621)"/>
|
||||
transform="translate(75,43.1621)"
|
||||
id="g20" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:0.9;fill:#fcba02;stroke-width:0.97363532;fill-opacity:1"
|
||||
d="m 43.000002,75.285148 c -17.583854,0 -31.837875,-12.9659 -31.837875,-28.958836 V 17.367476 7.7148552 c 5.861284,0 10.612625,4.1720268 10.612625,9.5017078 h 21.22525 c 17.583855,0 31.837876,13.115841 31.837876,29.109749 0,15.992936 -14.254021,28.958836 -31.837876,28.958836 z"
|
||||
id="path10"/><g
|
||||
id="g46"
|
||||
transform="translate(15.3208,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.592,-1.322 1.323,-1.322 0.732,0 1.324,0.593 1.324,1.322 0,0.73 -0.592,1.322 -1.324,1.322 C 0.592,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path48"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g50"
|
||||
transform="translate(21.8672,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.591,-1.322 1.321,-1.322 0.732,0 1.323,0.593 1.323,1.322 0,0.73 -0.591,1.322 -1.323,1.322 C 0.591,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path52"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g54"
|
||||
transform="translate(28.4116,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.591,-1.322 1.323,-1.322 0.729,0 1.321,0.593 1.321,1.322 0,0.73 -0.592,1.322 -1.321,1.322 C 0.591,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path56"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g58"
|
||||
transform="translate(34.9561,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.592,-1.322 1.323,-1.322 0.73,0 1.321,0.593 1.321,1.322 0,0.73 -0.591,1.322 -1.321,1.322 C 0.592,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path60"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g62"
|
||||
transform="translate(41.502,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.593,-1.322 1.32,-1.322 0.732,0 1.322,0.593 1.322,1.322 0,0.73 -0.59,1.322 -1.322,1.322 C 0.593,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path64"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g66"
|
||||
transform="translate(48.0469,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.59,-1.322 1.32,-1.322 0.732,0 1.322,0.593 1.322,1.322 0,0.73 -0.59,1.322 -1.322,1.322 C 0.59,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path68"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g70"
|
||||
transform="translate(54.5898,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.594,-1.322 1.32,-1.322 0.735,0 1.326,0.593 1.326,1.322 0,0.73 -0.591,1.322 -1.326,1.322 C 0.594,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path72"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g74"
|
||||
transform="translate(61.1377,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.59,-1.322 1.319,-1.322 0.732,0 1.322,0.593 1.322,1.322 0,0.73 -0.59,1.322 -1.322,1.322 C 0.59,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path76"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g78"
|
||||
transform="translate(14,26.1348)"><path
|
||||
d="m 0,0 c 0,-1.465 1.184,-2.646 2.644,-2.646 1.461,0 2.645,1.181 2.645,2.646 0,1.459 -1.184,2.641 -2.645,2.641 C 1.184,2.641 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path80"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g82"
|
||||
transform="translate(20.5444,58.856)"><path
|
||||
d="m 0,0 c 0,-1.462 1.185,-2.645 2.644,-2.645 1.461,0 2.645,1.183 2.645,2.645 0,1.459 -1.184,2.644 -2.645,2.644 C 1.185,2.644 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path84"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g86"
|
||||
transform="translate(27.0894,52.3101)"><path
|
||||
d="m 0,0 c 0,-1.461 1.185,-2.644 2.645,-2.644 1.461,0 2.644,1.183 2.644,2.644 0,1.46 -1.183,2.645 -2.644,2.645 C 1.185,2.645 0,1.46 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path88"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g90"
|
||||
transform="translate(27.0894,26.1348)"><path
|
||||
d="m 0,0 c 0,-1.465 1.185,-2.646 2.645,-2.646 1.461,0 2.644,1.181 2.644,2.646 0,1.459 -1.183,2.641 -2.644,2.641 C 1.185,2.641 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path92"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g94"
|
||||
transform="translate(33.6338,58.856)"><path
|
||||
d="M 0,0 C 0,-1.462 1.184,-2.645 2.646,-2.645 4.106,-2.645 5.29,-1.462 5.29,0 5.29,1.459 4.106,2.644 2.646,2.644 1.184,2.644 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path96"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g98"
|
||||
transform="translate(40.1758,52.3101)"><path
|
||||
d="m 0,0 c 0,-1.461 1.187,-2.644 2.646,-2.644 1.461,0 2.648,1.183 2.648,2.644 0,1.46 -1.187,2.645 -2.648,2.645 C 1.187,2.645 0,1.46 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path100"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g102"
|
||||
transform="translate(40.1758,32.6768)"><path
|
||||
d="m 0,0 c 0,-1.458 1.187,-2.646 2.646,-2.646 1.461,0 2.648,1.188 2.648,2.646 0,1.459 -1.187,2.645 -2.648,2.645 C 1.187,2.645 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path104"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g106"
|
||||
transform="translate(40.1758,26.1348)"><path
|
||||
d="m 0,0 c 0,-1.465 1.187,-2.646 2.646,-2.646 1.461,0 2.648,1.181 2.648,2.646 0,1.459 -1.187,2.641 -2.648,2.641 C 1.187,2.641 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path108"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g110"
|
||||
transform="translate(46.7236,52.3101)"><path
|
||||
d="m 0,0 c 0,-1.461 1.184,-2.644 2.644,-2.644 1.461,0 2.645,1.183 2.645,2.644 0,1.46 -1.184,2.645 -2.645,2.645 C 1.184,2.645 0,1.46 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path112"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g114"
|
||||
transform="translate(46.7236,32.6768)"><path
|
||||
d="m 0,0 c 0,-1.458 1.184,-2.646 2.644,-2.646 1.461,0 2.645,1.188 2.645,2.646 0,1.459 -1.184,2.645 -2.645,2.645 C 1.184,2.645 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path116"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g118"
|
||||
transform="translate(53.2686,58.856)"><path
|
||||
d="m 0,0 c 0,-1.462 1.183,-2.645 2.643,-2.645 1.461,0 2.645,1.183 2.645,2.645 0,1.459 -1.184,2.644 -2.645,2.644 C 1.183,2.644 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path120"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g122"
|
||||
transform="translate(53.2686,52.3101)"><path
|
||||
d="m 0,0 c 0,-1.461 1.183,-2.644 2.643,-2.644 1.461,0 2.645,1.183 2.645,2.644 0,1.46 -1.184,2.645 -2.645,2.645 C 1.183,2.645 0,1.46 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path124"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g126"
|
||||
transform="translate(59.8135,39.2217)"><path
|
||||
d="m 0,0 c 0,-1.459 1.187,-2.646 2.644,-2.646 1.461,0 2.644,1.187 2.644,2.646 0,1.459 -1.183,2.646 -2.644,2.646 C 1.187,2.646 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path128"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g130"
|
||||
transform="translate(59.8135,32.6768)"><path
|
||||
d="m 0,0 c 0,-1.458 1.187,-2.646 2.644,-2.646 1.461,0 2.644,1.188 2.644,2.646 0,1.459 -1.183,2.645 -2.644,2.645 C 1.187,2.645 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path132"
|
||||
inkscape:connector-curvature="0" /></g>
|
||||
style="opacity:0.9;fill:#fcba02;fill-opacity:1;stroke-width:0.9930262"
|
||||
d="M 42.700457,74.178768 C 24.766404,74.178768 10.2285,60.954638 10.2285,44.643189 V 15.107611 5.2627488 c 5.978017,0 10.823985,4.255117 10.823985,9.6909432 h 21.647972 c 17.934054,0 32.471954,13.377056 32.471954,29.689497 0,16.311449 -14.5379,29.535579 -32.471954,29.535579 z"
|
||||
id="path10-3"
|
||||
inkscape:connector-curvature="0" /><g
|
||||
id="g46"
|
||||
transform="translate(15.3208,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.592,-1.322 1.323,-1.322 0.732,0 1.324,0.593 1.324,1.322 0,0.73 -0.592,1.322 -1.324,1.322 C 0.592,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path48"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g50"
|
||||
transform="translate(21.8672,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.591,-1.322 1.321,-1.322 0.732,0 1.323,0.593 1.323,1.322 0,0.73 -0.591,1.322 -1.323,1.322 C 0.591,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path52"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g54"
|
||||
transform="translate(28.4116,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.591,-1.322 1.323,-1.322 0.729,0 1.321,0.593 1.321,1.322 0,0.73 -0.592,1.322 -1.321,1.322 C 0.591,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path56"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g58"
|
||||
transform="translate(34.9561,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.592,-1.322 1.323,-1.322 0.73,0 1.321,0.593 1.321,1.322 0,0.73 -0.591,1.322 -1.321,1.322 C 0.592,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path60"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g62"
|
||||
transform="translate(41.502,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.593,-1.322 1.32,-1.322 0.732,0 1.322,0.593 1.322,1.322 0,0.73 -0.59,1.322 -1.322,1.322 C 0.593,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path64"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g66"
|
||||
transform="translate(48.0469,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.59,-1.322 1.32,-1.322 0.732,0 1.322,0.593 1.322,1.322 0,0.73 -0.59,1.322 -1.322,1.322 C 0.59,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path68"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g70"
|
||||
transform="translate(54.5898,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.594,-1.322 1.32,-1.322 0.735,0 1.326,0.593 1.326,1.322 0,0.73 -0.591,1.322 -1.326,1.322 C 0.594,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path72"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g74"
|
||||
transform="translate(61.1377,45.7656)"><path
|
||||
d="m 0,0 c 0,-0.729 0.59,-1.322 1.319,-1.322 0.732,0 1.322,0.593 1.322,1.322 0,0.73 -0.59,1.322 -1.322,1.322 C 0.59,1.322 0,0.73 0,0"
|
||||
style="fill:#fffda9;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path76"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g78"
|
||||
transform="translate(14,26.1348)"><path
|
||||
d="m 0,0 c 0,-1.465 1.184,-2.646 2.644,-2.646 1.461,0 2.645,1.181 2.645,2.646 0,1.459 -1.184,2.641 -2.645,2.641 C 1.184,2.641 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path80"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g82"
|
||||
transform="translate(20.5444,58.856)"><path
|
||||
d="m 0,0 c 0,-1.462 1.185,-2.645 2.644,-2.645 1.461,0 2.645,1.183 2.645,2.645 0,1.459 -1.184,2.644 -2.645,2.644 C 1.185,2.644 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path84"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g86"
|
||||
transform="translate(27.0894,52.3101)"><path
|
||||
d="m 0,0 c 0,-1.461 1.185,-2.644 2.645,-2.644 1.461,0 2.644,1.183 2.644,2.644 0,1.46 -1.183,2.645 -2.644,2.645 C 1.185,2.645 0,1.46 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path88"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g90"
|
||||
transform="translate(27.0894,26.1348)"><path
|
||||
d="m 0,0 c 0,-1.465 1.185,-2.646 2.645,-2.646 1.461,0 2.644,1.181 2.644,2.646 0,1.459 -1.183,2.641 -2.644,2.641 C 1.185,2.641 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path92"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g94"
|
||||
transform="translate(33.6338,58.856)"><path
|
||||
d="M 0,0 C 0,-1.462 1.184,-2.645 2.646,-2.645 4.106,-2.645 5.29,-1.462 5.29,0 5.29,1.459 4.106,2.644 2.646,2.644 1.184,2.644 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path96"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g98"
|
||||
transform="translate(40.1758,52.3101)"><path
|
||||
d="m 0,0 c 0,-1.461 1.187,-2.644 2.646,-2.644 1.461,0 2.648,1.183 2.648,2.644 0,1.46 -1.187,2.645 -2.648,2.645 C 1.187,2.645 0,1.46 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path100"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g102"
|
||||
transform="translate(40.1758,32.6768)"><path
|
||||
d="m 0,0 c 0,-1.458 1.187,-2.646 2.646,-2.646 1.461,0 2.648,1.188 2.648,2.646 0,1.459 -1.187,2.645 -2.648,2.645 C 1.187,2.645 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path104"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g106"
|
||||
transform="translate(40.1758,26.1348)"><path
|
||||
d="m 0,0 c 0,-1.465 1.187,-2.646 2.646,-2.646 1.461,0 2.648,1.181 2.648,2.646 0,1.459 -1.187,2.641 -2.648,2.641 C 1.187,2.641 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path108"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g110"
|
||||
transform="translate(46.7236,52.3101)"><path
|
||||
d="m 0,0 c 0,-1.461 1.184,-2.644 2.644,-2.644 1.461,0 2.645,1.183 2.645,2.644 0,1.46 -1.184,2.645 -2.645,2.645 C 1.184,2.645 0,1.46 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path112"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g114"
|
||||
transform="translate(46.7236,32.6768)"><path
|
||||
d="m 0,0 c 0,-1.458 1.184,-2.646 2.644,-2.646 1.461,0 2.645,1.188 2.645,2.646 0,1.459 -1.184,2.645 -2.645,2.645 C 1.184,2.645 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path116"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g118"
|
||||
transform="translate(53.2686,58.856)"><path
|
||||
d="m 0,0 c 0,-1.462 1.183,-2.645 2.643,-2.645 1.461,0 2.645,1.183 2.645,2.645 0,1.459 -1.184,2.644 -2.645,2.644 C 1.183,2.644 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path120"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g122"
|
||||
transform="translate(53.2686,52.3101)"><path
|
||||
d="m 0,0 c 0,-1.461 1.183,-2.644 2.643,-2.644 1.461,0 2.645,1.183 2.645,2.644 0,1.46 -1.184,2.645 -2.645,2.645 C 1.183,2.645 0,1.46 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path124"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g126"
|
||||
transform="translate(59.8135,39.2217)"><path
|
||||
d="m 0,0 c 0,-1.459 1.187,-2.646 2.644,-2.646 1.461,0 2.644,1.187 2.644,2.646 0,1.459 -1.183,2.646 -2.644,2.646 C 1.187,2.646 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path128"
|
||||
inkscape:connector-curvature="0" /></g><g
|
||||
id="g130"
|
||||
transform="translate(59.8135,32.6768)"><path
|
||||
d="m 0,0 c 0,-1.458 1.187,-2.646 2.644,-2.646 1.461,0 2.644,1.188 2.644,2.646 0,1.459 -1.183,2.645 -2.644,2.645 C 1.187,2.645 0,1.459 0,0"
|
||||
style="fill:#fffee3;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
id="path132"
|
||||
inkscape:connector-curvature="0" /></g>
|
||||
</g>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 9.7 KiB |
|
@ -24,6 +24,8 @@ PhotoTextsListItem {
|
|||
// message date
|
||||
tertiaryText.text: showDraft ? Functions.getDateTimeElapsed(draft_message_date) : ( last_message_date ? ( last_message_date.length === 0 ? "" : Functions.getDateTimeElapsed(last_message_date) + Emoji.emojify(last_message_status, tertiaryText.font.pixelSize) ) : "" )
|
||||
unreadCount: unread_count
|
||||
unreadReactionCount: unread_reaction_count
|
||||
unreadMentionCount: unread_mention_count
|
||||
isSecret: ( chat_type === TelegramAPI.ChatTypeSecret )
|
||||
isMarkedAsUnread: is_marked_as_unread
|
||||
isPinned: is_pinned
|
||||
|
@ -48,16 +50,18 @@ PhotoTextsListItem {
|
|||
sourceComponent: Component {
|
||||
ContextMenu {
|
||||
MenuItem {
|
||||
visible: unread_count > 0
|
||||
visible: unread_count > 0 || unread_reaction_count > 0 || unread_mention_count > 0
|
||||
onClicked: {
|
||||
tdLibWrapper.viewMessage(chat_id, display.last_message.id, true);
|
||||
tdLibWrapper.readAllChatMentions(chat_id);
|
||||
tdLibWrapper.readAllChatReactions(chat_id);
|
||||
tdLibWrapper.toggleChatIsMarkedAsUnread(chat_id, false);
|
||||
}
|
||||
text: qsTr("Mark all messages as read")
|
||||
}
|
||||
|
||||
MenuItem {
|
||||
visible: unread_count === 0
|
||||
visible: unread_count === 0 && unread_reaction_count === 0 && unread_mention_count === 0
|
||||
onClicked: {
|
||||
tdLibWrapper.toggleChatIsMarkedAsUnread(chat_id, !is_marked_as_unread);
|
||||
}
|
||||
|
|
44
qml/components/ContactSync.qml
Normal file
|
@ -0,0 +1,44 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
import QtQuick 2.0
|
||||
//import org.nemomobile.contacts 1.0
|
||||
|
||||
Item {
|
||||
|
||||
// signal syncError();
|
||||
|
||||
// function synchronize() {
|
||||
// if (peopleModel.count === 0) {
|
||||
// appNotification.show(qsTr("Could not synchronize your contacts with Telegram."));
|
||||
// syncError();
|
||||
// } else {
|
||||
// contactsModel.startImportingContacts();
|
||||
// for (var i = 0; i < peopleModel.count; i++ ) {
|
||||
// contactsModel.importContact(peopleModel.get(i));
|
||||
// }
|
||||
// contactsModel.stopImportingContacts();
|
||||
// }
|
||||
// }
|
||||
|
||||
// PeopleModel {
|
||||
// id: peopleModel
|
||||
// requiredProperty: PeopleModel.PhoneNumberRequired
|
||||
// }
|
||||
|
||||
}
|
|
@ -31,16 +31,24 @@ Row {
|
|||
property string myUserId;
|
||||
property var inReplyToMessage;
|
||||
property bool editable: false;
|
||||
property bool inReplyToMessageDeleted: false;
|
||||
|
||||
signal clearRequested()
|
||||
|
||||
onInReplyToMessageChanged: {
|
||||
if (inReplyToMessage) {
|
||||
inReplyToUserText.text = (inReplyToMessage.sender["@type"] === "messageSenderChat" ? page.chatInformation.title : (inReplyToRow.inReplyToMessage.sender.user_id !== inReplyToRow.myUserId) ? Emoji.emojify(Functions.getUserName(tdLibWrapper.getUserInformation(inReplyToRow.inReplyToMessage.sender.user_id)), inReplyToUserText.font.pixelSize) : qsTr("You"));
|
||||
inReplyToUserText.text = (inReplyToMessage.sender_id["@type"] === "messageSenderChat" ? page.chatInformation.title : (inReplyToRow.inReplyToMessage.sender_id.user_id !== inReplyToRow.myUserId) ? Emoji.emojify(Functions.getUserName(tdLibWrapper.getUserInformation(inReplyToRow.inReplyToMessage.sender_id.user_id)), inReplyToUserText.font.pixelSize) : qsTr("You"));
|
||||
inReplyToMessageText.text = Emoji.emojify(Functions.getMessageText(inReplyToRow.inReplyToMessage, true, inReplyToRow.myUserId, false), inReplyToMessageText.font.pixelSize);
|
||||
}
|
||||
}
|
||||
|
||||
onInReplyToMessageDeletedChanged: {
|
||||
if (inReplyToMessageDeleted) {
|
||||
inReplyToUserText.text = qsTr("Unknown")
|
||||
inReplyToMessageText.text = "<i>" + qsTr("This message was deleted") + "</i>";
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: inReplyToMessageRectangle
|
||||
height: inReplyToMessageColumn.height
|
||||
|
|
|
@ -76,7 +76,6 @@ Column {
|
|||
anchors.verticalCenter: parent.verticalCenter
|
||||
text: editAreaColumn.text || editAreaColumn.emptyPlaceholderText
|
||||
width: parent.width - editAreaButton.width
|
||||
height: !editAreaColumn.multiLine ? implicitHeight : editAreaTextField.height
|
||||
}
|
||||
IconButton {
|
||||
id: editAreaButton
|
||||
|
|
|
@ -40,7 +40,7 @@ Loader {
|
|||
|
||||
property string chatId
|
||||
property string userName
|
||||
property bool userNameIsValid: userName !== "" && inlineBotInformation && userName.toLowerCase() === inlineBotInformation.username.toLowerCase()
|
||||
property bool userNameIsValid: userName !== "" && inlineBotInformation && userName.toLowerCase() === inlineBotInformation.usernames.editable_username.toLowerCase()
|
||||
property string query
|
||||
property int currentOffset: 0
|
||||
property string responseExtra: chatId+"|"+userName+"|"+query+"|"+currentOffset
|
||||
|
|
|
@ -25,56 +25,193 @@ import "../js/debug.js" as Debug
|
|||
|
||||
ListItem {
|
||||
id: messageListItem
|
||||
contentHeight: messageBackground.height + Theme.paddingMedium
|
||||
contentHeight: messageBackground.height + Theme.paddingMedium + ( reactionsColumn.visible ? reactionsColumn.height : 0 )
|
||||
Behavior on contentHeight { NumberAnimation { duration: 200 } }
|
||||
property var chatId
|
||||
property var messageId
|
||||
property int messageIndex
|
||||
property int messageViewCount
|
||||
property var myMessage
|
||||
property var reactions
|
||||
property bool canReplyToMessage
|
||||
readonly property bool isAnonymous: myMessage.sender["@type"] === "messageSenderChat"
|
||||
readonly property var userInformation: tdLibWrapper.getUserInformation(myMessage.sender.user_id)
|
||||
readonly property bool isAnonymous: myMessage.sender_id["@type"] === "messageSenderChat"
|
||||
readonly property var userInformation: tdLibWrapper.getUserInformation(myMessage.sender_id.user_id)
|
||||
property QtObject precalculatedValues: ListView.view.precalculatedValues
|
||||
readonly property color textColor: isOwnMessage ? Theme.highlightColor : Theme.primaryColor
|
||||
readonly property int textAlign: isOwnMessage ? Text.AlignRight : Text.AlignLeft
|
||||
readonly property int textAlign: Text.AlignLeft
|
||||
readonly property Page page: precalculatedValues.page
|
||||
readonly property bool isSelected: messageListItem.precalculatedValues.pageIsSelecting && page.selectedMessages.some(function(existingMessage) {
|
||||
return existingMessage.id === messageId
|
||||
});
|
||||
readonly property bool isOwnMessage: page.myUserId === myMessage.sender.user_id
|
||||
readonly property bool isOwnMessage: page.myUserId === myMessage.sender_id.user_id
|
||||
readonly property bool canDeleteMessage: myMessage.can_be_deleted_for_all_users || (myMessage.can_be_deleted_only_for_self && myMessage.chat_id === page.myUserId)
|
||||
property bool hasContentComponent
|
||||
property bool additionalOptionsOpened
|
||||
property bool wasNavigatedTo: false
|
||||
|
||||
highlighted: (down || isSelected) && !menuOpen
|
||||
readonly property var additionalItemsModel: (extraContentLoader.item && ("extraContextMenuItems" in extraContentLoader.item)) ?
|
||||
extraContentLoader.item.extraContextMenuItems : 0
|
||||
readonly property int numberOfExtraOptionsOtherThanDeleteMessage:
|
||||
(showCopyMessageToClipboardMenuItem ? 0 : 1) +
|
||||
(showForwardMessageMenuItem ? 0 : 1) +
|
||||
(page.canPinMessages() ? 1 : 0) +
|
||||
(additionalItemsModel ? additionalItemsModel.length : 0)
|
||||
readonly property bool deleteMessageIsOnlyExtraOption: canDeleteMessage && !numberOfExtraOptionsOtherThanDeleteMessage
|
||||
|
||||
readonly property int maxContextMenuItemCount: page.isPortrait ? 5 : 4
|
||||
readonly property int baseContextMenuItemCount: (canReplyToMessage ? 1 : 0) +
|
||||
(myMessage.can_be_edited ? 1 : 0) + 2 /* "Select Message" and "More Options..." */
|
||||
readonly property bool showCopyMessageToClipboardMenuItem: (baseContextMenuItemCount + 1) <= maxContextMenuItemCount
|
||||
readonly property bool showForwardMessageMenuItem: (baseContextMenuItemCount + 2) <= maxContextMenuItemCount
|
||||
// And don't count "More Options..." for "Delete Message" if "Delete Message" is the only extra option
|
||||
readonly property bool haveSpaceForDeleteMessageMenuItem: (baseContextMenuItemCount + 3 - (deleteMessageIsOnlyExtraOption ? 1 : 0)) <= maxContextMenuItemCount
|
||||
property var chatReactions
|
||||
property var messageReactions
|
||||
|
||||
highlighted: (down || isSelected || additionalOptionsOpened || wasNavigatedTo) && !menuOpen
|
||||
openMenuOnPressAndHold: !messageListItem.precalculatedValues.pageIsSelecting
|
||||
|
||||
signal replyToMessage()
|
||||
signal editMessage()
|
||||
signal forwardMessage()
|
||||
|
||||
function deleteMessage() {
|
||||
var chatId = page.chatInformation.id
|
||||
var messageId = myMessage.id
|
||||
Remorse.itemAction(messageListItem, qsTr("Message deleted"), function() {
|
||||
tdLibWrapper.deleteMessages(chatId, [ messageId ]);
|
||||
})
|
||||
}
|
||||
|
||||
function copyMessageToClipboard() {
|
||||
Clipboard.text = Functions.getMessageText(myMessage, true, userInformation.id, true)
|
||||
}
|
||||
|
||||
function openContextMenu() {
|
||||
messageOptionsDrawer.open = false
|
||||
if (menu) {
|
||||
openMenu()
|
||||
} else {
|
||||
contextMenuLoader.active = true
|
||||
}
|
||||
}
|
||||
|
||||
function getInteractionText(viewCount, reactions, size, highlightColor) {
|
||||
var interactionText = "";
|
||||
if (viewCount > 0) {
|
||||
interactionText = Emoji.emojify("👁️ ", size) + Functions.getShortenedCount(viewCount);
|
||||
}
|
||||
for (var i = 0; i < reactions.length; i++) {
|
||||
var reaction = reactions[i]
|
||||
var reactionText = reaction.reaction ? reaction.reaction : (reaction.type && reaction.type.emoji) ? reaction.type.emoji : ""
|
||||
if (reactionText) {
|
||||
interactionText += ( " " + Emoji.emojify(reactionText, size) );
|
||||
if (!chatPage.isPrivateChat) {
|
||||
var count = Functions.getShortenedCount(reaction.total_count)
|
||||
interactionText += " "
|
||||
interactionText += (reaction.is_chosen ? ( "<font color='" + highlightColor + "'><b>" + count + "</b></font>" ) : count)
|
||||
}
|
||||
}
|
||||
}
|
||||
return interactionText;
|
||||
}
|
||||
|
||||
function openReactions() {
|
||||
if (messageListItem.chatReactions) {
|
||||
Debug.log("Using chat reactions")
|
||||
messageListItem.messageReactions = chatReactions
|
||||
showItemCompletelyTimer.requestedIndex = index;
|
||||
showItemCompletelyTimer.start();
|
||||
} else {
|
||||
Debug.log("Obtaining message reactions")
|
||||
tdLibWrapper.getMessageAvailableReactions(messageListItem.chatId, messageListItem.messageId);
|
||||
}
|
||||
selectReactionBubble.visible = false;
|
||||
}
|
||||
|
||||
function getContentWidthMultiplier() {
|
||||
return Functions.isWidescreen(appWindow) ? 0.4 : 1.0
|
||||
}
|
||||
|
||||
onClicked: {
|
||||
if(messageListItem.precalculatedValues.pageIsSelecting) {
|
||||
if (messageListItem.precalculatedValues.pageIsSelecting) {
|
||||
page.toggleMessageSelection(myMessage);
|
||||
} else {
|
||||
if (messageOptionsDrawer.sourceItem !== messageListItem) {
|
||||
messageOptionsDrawer.open = false
|
||||
}
|
||||
// Allow extra context to react to click
|
||||
var extraContent = extraContentLoader.item
|
||||
if (extraContent && ("clicked" in extraContent) && (typeof extraContent.clicked === "function") &&
|
||||
mouseX >= extraContentLoader.x && mouseY >= extraContentLoader.y &&
|
||||
mouseX < (extraContentLoader.x + extraContentLoader.width) &&
|
||||
mouseY < (extraContentLoader.y + extraContentLoader.height)) {
|
||||
if (extraContent && extraContentLoader.contains(mapToItem(extraContentLoader, mouse.x, mouse.y))) {
|
||||
extraContent.clicked()
|
||||
} else if (webPagePreviewLoader.item) {
|
||||
webPagePreviewLoader.item.clicked()
|
||||
}
|
||||
|
||||
if (messageListItem.messageReactions) {
|
||||
messageListItem.messageReactions = null;
|
||||
selectReactionBubble.visible = false;
|
||||
} else {
|
||||
selectReactionBubble.visible = !selectReactionBubble.visible;
|
||||
elementSelected(index);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
onDoubleClicked: {
|
||||
if (messageListItem.chatReactions) {
|
||||
Debug.log("Using chat reactions")
|
||||
messageListItem.messageReactions = chatReactions
|
||||
showItemCompletelyTimer.requestedIndex = index;
|
||||
showItemCompletelyTimer.start();
|
||||
} else {
|
||||
Debug.log("Obtaining message reactions")
|
||||
tdLibWrapper.getMessageAvailableReactions(messageListItem.chatId, messageListItem.messageId);
|
||||
}
|
||||
}
|
||||
|
||||
onPressAndHold: {
|
||||
if(messageListItem.precalculatedValues.pageIsSelecting) {
|
||||
page.selectedMessages = [];
|
||||
page.state = ""
|
||||
if (openMenuOnPressAndHold) {
|
||||
openContextMenu()
|
||||
} else {
|
||||
contextMenuLoader.active = true;
|
||||
page.selectedMessages = []
|
||||
page.state = ""
|
||||
}
|
||||
}
|
||||
|
||||
onMenuOpenChanged: {
|
||||
// When opening/closing the context menu, we no longer scroll automatically
|
||||
chatView.manuallyScrolledToBottom = false;
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: additionalOptionsOpened ? messageOptionsDrawer : null
|
||||
onOpenChanged: {
|
||||
if (!messageOptionsDrawer.open) {
|
||||
additionalOptionsOpened = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: chatPage
|
||||
onResetElements: {
|
||||
messageListItem.messageReactions = null;
|
||||
selectReactionBubble.visible = false;
|
||||
}
|
||||
onElementSelected: {
|
||||
if (elementIndex !== index) {
|
||||
selectReactionBubble.visible = false;
|
||||
}
|
||||
}
|
||||
onNavigatedTo: {
|
||||
if (targetIndex === index) {
|
||||
messageListItem.wasNavigatedTo = true;
|
||||
restoreNormalityTimer.start();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: contextMenuLoader
|
||||
active: false
|
||||
|
@ -87,58 +224,50 @@ ListItem {
|
|||
}
|
||||
sourceComponent: Component {
|
||||
ContextMenu {
|
||||
Repeater {
|
||||
model: (extraContentLoader.item && ("extraContextMenuItems" in extraContentLoader.item)) ?
|
||||
extraContentLoader.item.extraContextMenuItems : 0
|
||||
delegate: MenuItem {
|
||||
visible: modelData.visible
|
||||
text: modelData.name
|
||||
onClicked: modelData.action()
|
||||
}
|
||||
}
|
||||
|
||||
MenuItem {
|
||||
visible: messageListItem.canReplyToMessage
|
||||
onClicked: messageListItem.replyToMessage()
|
||||
visible: canReplyToMessage
|
||||
onClicked: replyToMessage()
|
||||
text: qsTr("Reply to Message")
|
||||
}
|
||||
MenuItem {
|
||||
visible: myMessage.can_be_edited
|
||||
onClicked: messageListItem.editMessage()
|
||||
visible: typeof myMessage.can_be_edited !== "undefined" && myMessage.can_be_edited
|
||||
onClicked: editMessage()
|
||||
text: qsTr("Edit Message")
|
||||
}
|
||||
MenuItem {
|
||||
onClicked: {
|
||||
Clipboard.text = Functions.getMessageText(myMessage, true, userInformation.id, true);
|
||||
}
|
||||
text: qsTr("Copy Message to Clipboard")
|
||||
}
|
||||
MenuItem {
|
||||
onClicked: {
|
||||
page.toggleMessageSelection(myMessage);
|
||||
}
|
||||
onClicked: page.toggleMessageSelection(myMessage)
|
||||
text: qsTr("Select Message")
|
||||
}
|
||||
MenuItem {
|
||||
onClicked: {
|
||||
if (myMessage.is_pinned) {
|
||||
Remorse.popupAction(page, qsTr("Message unpinned"), function() { tdLibWrapper.unpinMessage(page.chatInformation.id, messageId);
|
||||
pinnedMessageItem.requestCloseMessage(); } );
|
||||
} else {
|
||||
tdLibWrapper.pinMessage(page.chatInformation.id, messageId);
|
||||
}
|
||||
}
|
||||
text: myMessage.is_pinned ? qsTr("Unpin Message") : qsTr("Pin Message")
|
||||
visible: canPinMessages()
|
||||
visible: showCopyMessageToClipboardMenuItem
|
||||
onClicked: copyMessageToClipboard()
|
||||
text: qsTr("Copy Message to Clipboard")
|
||||
}
|
||||
MenuItem {
|
||||
onClicked: {
|
||||
var chatId = page.chatInformation.id;
|
||||
var messageId = messageListItem.messageId;
|
||||
Remorse.itemAction(messageListItem, qsTr("Message deleted"), function() { tdLibWrapper.deleteMessages(chatId, [ messageId]); })
|
||||
}
|
||||
visible: showForwardMessageMenuItem
|
||||
onClicked: forwardMessage()
|
||||
text: qsTr("Forward Message")
|
||||
}
|
||||
MenuItem {
|
||||
visible: canDeleteMessage && haveSpaceForDeleteMessageMenuItem
|
||||
onClicked: deleteMessage()
|
||||
text: qsTr("Delete Message")
|
||||
visible: myMessage.can_be_deleted_for_all_users || (myMessage.can_be_deleted_only_for_self && myMessage.chat_id === page.myUserId)
|
||||
}
|
||||
MenuItem {
|
||||
visible: (numberOfExtraOptionsOtherThanDeleteMessage > 0) ||
|
||||
(deleteMessageIsOnlyExtraOption && !haveSpaceForDeleteMessageMenuItem)
|
||||
onClicked: {
|
||||
messageOptionsDrawer.myMessage = myMessage;
|
||||
messageOptionsDrawer.userInformation = userInformation;
|
||||
messageOptionsDrawer.sourceItem = messageListItem
|
||||
messageOptionsDrawer.additionalItemsModel = additionalItemsModel
|
||||
messageOptionsDrawer.showCopyMessageToClipboardMenuItem = !showCopyMessageToClipboardMenuItem
|
||||
messageOptionsDrawer.showForwardMessageMenuItem = !showForwardMessageMenuItem
|
||||
messageOptionsDrawer.showDeleteMessageMenuItem = canDeleteMessage && !haveSpaceForDeleteMessageMenuItem
|
||||
messageListItem.additionalOptionsOpened = true;
|
||||
messageOptionsDrawer.open = true;
|
||||
}
|
||||
text: qsTr("More Options...")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -147,16 +276,16 @@ ListItem {
|
|||
Connections {
|
||||
target: chatModel
|
||||
onMessagesReceived: {
|
||||
messageBackground.isUnread = index > chatModel.getLastReadMessageIndex();
|
||||
messageBackground.isUnread = index > chatModel.getLastReadMessageIndex() && myMessage['@type'] !== "sponsoredMessage";
|
||||
}
|
||||
onMessagesIncrementalUpdate: {
|
||||
messageBackground.isUnread = index > chatModel.getLastReadMessageIndex();
|
||||
messageBackground.isUnread = index > chatModel.getLastReadMessageIndex() && myMessage['@type'] !== "sponsoredMessage";
|
||||
}
|
||||
onNewMessageReceived: {
|
||||
messageBackground.isUnread = index > chatModel.getLastReadMessageIndex();
|
||||
messageBackground.isUnread = index > chatModel.getLastReadMessageIndex() && myMessage['@type'] !== "sponsoredMessage";
|
||||
}
|
||||
onUnreadCountUpdated: {
|
||||
messageBackground.isUnread = index > chatModel.getLastReadMessageIndex();
|
||||
messageBackground.isUnread = index > chatModel.getLastReadMessageIndex() && myMessage['@type'] !== "sponsoredMessage";
|
||||
}
|
||||
onLastReadSentMessageUpdated: {
|
||||
Debug.log("[ChatModel] Messages in this chat were read, new last read: ", lastReadSentIndex, ", updating description for index ", index, ", status: ", (index <= lastReadSentIndex));
|
||||
|
@ -173,16 +302,68 @@ ListItem {
|
|||
}
|
||||
onMessageNotFound: {
|
||||
if (messageId === myMessage.reply_to_message_id) {
|
||||
messageInReplyToLoader.active = false;
|
||||
messageInReplyToLoader.inReplyToMessageDeleted = true;
|
||||
}
|
||||
}
|
||||
onAvailableReactionsReceived: {
|
||||
if (messageListItem.messageId === messageId &&
|
||||
pageStack.currentPage === chatPage) {
|
||||
Debug.log("Available reactions for this message: " + reactions);
|
||||
messageListItem.messageReactions = reactions;
|
||||
showItemCompletelyTimer.requestedIndex = index;
|
||||
showItemCompletelyTimer.start();
|
||||
} else {
|
||||
messageListItem.messageReactions = null;
|
||||
}
|
||||
}
|
||||
onReactionsUpdated: {
|
||||
chatReactions = tdLibWrapper.getChatReactions(page.chatInformation.id);
|
||||
}
|
||||
}
|
||||
|
||||
Timer {
|
||||
id: showItemCompletelyTimer
|
||||
|
||||
property int requestedIndex: (chatView.count - 1)
|
||||
|
||||
repeat: false
|
||||
running: false
|
||||
interval: 200
|
||||
triggeredOnStart: false
|
||||
onTriggered: {
|
||||
Debug.log("Show item completely timer triggered, requested index: " + requestedIndex + ", current index: " + index)
|
||||
if (requestedIndex === index) {
|
||||
var p = chatView.contentItem.mapFromItem(reactionsColumn, 0, 0)
|
||||
if (chatView.contentY > p.y || p.y + reactionsColumn.height > chatView.contentY + chatView.height) {
|
||||
Debug.log("Moving reactions for item at", requestedIndex, "info the view")
|
||||
chatView.highlightMoveDuration = -1
|
||||
chatView.highlightResizeDuration = -1
|
||||
chatView.scrollToIndex(requestedIndex, height <= chatView.height ? ListView.Contain : ListView.End)
|
||||
chatView.highlightMoveDuration = 0
|
||||
chatView.highlightResizeDuration = 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Timer {
|
||||
id: restoreNormalityTimer
|
||||
|
||||
repeat: false
|
||||
running: false
|
||||
interval: 1000
|
||||
triggeredOnStart: false
|
||||
onTriggered: {
|
||||
Debug.log("Restore normality for index " + index);
|
||||
messageListItem.wasNavigatedTo = false;
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
delegateComponentLoadingTimer.start();
|
||||
|
||||
if (myMessage.reply_to_message_id !== 0) {
|
||||
tdLibWrapper.getMessage(page.chatInformation.id, myMessage.reply_to_message_id);
|
||||
if (myMessage.reply_to_message_id) {
|
||||
tdLibWrapper.getMessage(myMessage.reply_in_chat_id ? myMessage.reply_in_chat_id : page.chatInformation.id,
|
||||
myMessage.reply_to_message_id)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -220,7 +401,10 @@ ListItem {
|
|||
id: messageTextRow
|
||||
spacing: Theme.paddingSmall
|
||||
width: precalculatedValues.entryWidth
|
||||
anchors.centerIn: parent
|
||||
anchors.horizontalCenter: Functions.isWidescreen(appWindow) ? undefined : parent.horizontalCenter
|
||||
anchors.left: Functions.isWidescreen(appWindow) ? parent.left : undefined
|
||||
y: Theme.paddingSmall
|
||||
anchors.leftMargin: Functions.isWidescreen(appWindow) ? Theme.paddingMedium : undefined
|
||||
|
||||
Loader {
|
||||
id: profileThumbnailLoader
|
||||
|
@ -260,16 +444,16 @@ ListItem {
|
|||
|
||||
anchors {
|
||||
left: parent.left
|
||||
leftMargin: messageListItem.isOwnMessage ? precalculatedValues.pageMarginDouble : 0
|
||||
leftMargin: page.isPrivateChat ? (messageListItem.isOwnMessage ? precalculatedValues.pageMarginDouble : 0) : 0 //левый марджин для собственных сообщений в приватных чатах. В остальных на полную ширину
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
height: messageTextColumn.height + precalculatedValues.paddingMediumDouble
|
||||
width: precalculatedValues.backgroundWidth
|
||||
property bool isUnread: index > chatModel.getLastReadMessageIndex()
|
||||
color: Theme.colorScheme === Theme.LightOnDark ? (isUnread ? Theme.secondaryHighlightColor : Theme.secondaryColor) : (isUnread ? Theme.backgroundGlowColor : Theme.overlayBackgroundColor)
|
||||
property bool isUnread: index > chatModel.getLastReadMessageIndex() && myMessage['@type'] !== "sponsoredMessage"
|
||||
color: Theme.colorScheme === Theme.LightOnDark ? (isOwnMessage ? Theme.highlightBackgroundColor : (isUnread ? Theme.secondaryHighlightColor : Theme.secondaryColor)) : (isOwnMessage ? Theme.highlightBackgroundColor : (isUnread ? Theme.backgroundGlowColor : Theme.overlayBackgroundColor))
|
||||
radius: parent.width / 50
|
||||
opacity: isUnread ? 0.5 : 0.2
|
||||
visible: appSettings.showStickersAsImages || myMessage.content['@type'] !== "messageSticker"
|
||||
visible: appSettings.showStickersAsImages || (myMessage.content['@type'] !== "messageSticker" && myMessage.content['@type'] !== "messageAnimatedEmoji")
|
||||
Behavior on color { ColorAnimation { duration: 200 } }
|
||||
Behavior on opacity { FadeAnimation {} }
|
||||
}
|
||||
|
@ -287,7 +471,7 @@ ListItem {
|
|||
id: userText
|
||||
|
||||
width: parent.width
|
||||
text: messageListItem.isOwnMessage ? qsTr("You") : Emoji.emojify(messageListItem.isAnonymous ? page.chatInformation.title : Functions.getUserName(messageListItem.userInformation), font.pixelSize)
|
||||
text: messageListItem.isOwnMessage ? qsTr("You") : Emoji.emojify( myMessage['@type'] === "sponsoredMessage" ? tdLibWrapper.getChat(myMessage.sponsor_chat_id).title : ( messageListItem.isAnonymous ? page.chatInformation.title : Functions.getUserName(messageListItem.userInformation) ), font.pixelSize)
|
||||
font.pixelSize: Theme.fontSizeExtraSmall
|
||||
font.weight: Font.ExtraBold
|
||||
color: messageListItem.textColor
|
||||
|
@ -295,7 +479,7 @@ ListItem {
|
|||
truncationMode: TruncationMode.Fade
|
||||
textFormat: Text.StyledText
|
||||
horizontalAlignment: messageListItem.textAlign
|
||||
visible: precalculatedValues.showUserInfo
|
||||
visible: messageListItem.isOwnMessage ? false : (precalculatedValues.showUserInfo || myMessage['@type'] === "sponsoredMessage")
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
enabled: !(messageListItem.precalculatedValues.pageIsSelecting || messageListItem.isAnonymous)
|
||||
|
@ -311,11 +495,12 @@ ListItem {
|
|||
|
||||
Loader {
|
||||
id: messageInReplyToLoader
|
||||
active: myMessage.reply_to_message_id !== 0
|
||||
active: typeof myMessage.reply_to_message_id !== "undefined" && myMessage.reply_to_message_id !== 0
|
||||
width: parent.width
|
||||
// text height ~= 1,28*font.pixelSize
|
||||
height: active ? precalculatedValues.messageInReplyToHeight : 0
|
||||
property var inReplyToMessage;
|
||||
property bool inReplyToMessageDeleted: false;
|
||||
sourceComponent: Component {
|
||||
Item {
|
||||
width: messageInReplyToRow.width
|
||||
|
@ -323,14 +508,31 @@ ListItem {
|
|||
InReplyToRow {
|
||||
id: messageInReplyToRow
|
||||
myUserId: page.myUserId
|
||||
visible: true
|
||||
layer.enabled: messageInReplyToMouseArea.pressed && !messageListItem.highlighted && !messageListItem.menuOpen
|
||||
layer.effect: PressEffect { source: messageInReplyToRow }
|
||||
inReplyToMessage: messageInReplyToLoader.inReplyToMessage
|
||||
inReplyToMessageDeleted: messageInReplyToLoader.inReplyToMessageDeleted
|
||||
}
|
||||
MouseArea {
|
||||
id: messageInReplyToMouseArea
|
||||
anchors.fill: parent
|
||||
onClicked: {
|
||||
messageOverlayLoader.overlayMessage = messageInReplyToRow.inReplyToMessage;
|
||||
messageOverlayLoader.active = true;
|
||||
if (precalculatedValues.pageIsSelecting) {
|
||||
page.toggleMessageSelection(myMessage)
|
||||
} else {
|
||||
messageOptionsDrawer.open = false
|
||||
if(appSettings.goToQuotedMessage) {
|
||||
chatPage.showMessage(messageInReplyToRow.inReplyToMessage.id, true)
|
||||
} else {
|
||||
messageOverlayLoader.active = true
|
||||
messageOverlayLoader.overlayMessage = messageInReplyToRow.inReplyToMessage
|
||||
}
|
||||
}
|
||||
}
|
||||
onPressAndHold: {
|
||||
if (openMenuOnPressAndHold) {
|
||||
openContextMenu()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -350,11 +552,12 @@ ListItem {
|
|||
width: parent.width
|
||||
|
||||
Component.onCompleted: {
|
||||
if (myMessage.forward_info.origin["@type"] === "messageForwardOriginChannel") {
|
||||
var originType = myMessage.forward_info.origin["@type"]
|
||||
if (originType === "messageOriginChannel" || originType === "messageForwardOriginChannel") {
|
||||
var otherChatInformation = tdLibWrapper.getChat(myMessage.forward_info.origin.chat_id);
|
||||
forwardedThumbnail.photoData = (typeof otherChatInformation.photo !== "undefined") ? otherChatInformation.photo.small : {};
|
||||
forwardedChannelText.text = Emoji.emojify(otherChatInformation.title, Theme.fontSizeExtraSmall);
|
||||
} else if (myMessage.forward_info.origin["@type"] === "messageForwardOriginUser") {
|
||||
} else if (originType === "messageOriginUser" || originType === "messageForwardOriginUser") {
|
||||
var otherUserInformation = tdLibWrapper.getUserInformation(myMessage.forward_info.origin.sender_user_id);
|
||||
forwardedThumbnail.photoData = (typeof otherUserInformation.profile_photo !== "undefined") ? otherUserInformation.profile_photo.small : {};
|
||||
forwardedChannelText.text = Emoji.emojify(Functions.getUserName(otherUserInformation), Theme.fontSizeExtraSmall);
|
||||
|
@ -416,11 +619,26 @@ ListItem {
|
|||
visible: (text !== "")
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: sponsoredMessageButtonLoader
|
||||
active: myMessage['@type'] === "sponsoredMessage"
|
||||
asynchronous: true
|
||||
width: parent.width
|
||||
height: (status === Loader.Ready) ? item.implicitHeight : myMessage['@type'] === "sponsoredMessage" ? Theme.itemSizeMedium : 0
|
||||
|
||||
sourceComponent: Component {
|
||||
SponsoredMessage {
|
||||
sponsoredMessageData: myMessage
|
||||
width: parent.width
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: webPagePreviewLoader
|
||||
active: false
|
||||
asynchronous: true
|
||||
width: parent.width
|
||||
width: parent.width * getContentWidthMultiplier()
|
||||
height: (status === Loader.Ready) ? item.implicitHeight : myMessage.content.web_page ? precalculatedValues.webPagePreviewHeight : 0
|
||||
|
||||
sourceComponent: Component {
|
||||
|
@ -434,7 +652,7 @@ ListItem {
|
|||
|
||||
Loader {
|
||||
id: extraContentLoader
|
||||
width: parent.width
|
||||
width: parent.width * getContentWidthMultiplier()
|
||||
asynchronous: true
|
||||
height: item ? item.height : (messageListItem.hasContentComponent ? chatView.getContentComponentHeight(model.content_type, myMessage.content, width) : 0)
|
||||
}
|
||||
|
@ -465,7 +683,6 @@ ListItem {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
Text {
|
||||
width: parent.width
|
||||
|
||||
|
@ -476,7 +693,6 @@ ListItem {
|
|||
color: messageListItem.isOwnMessage ? Theme.secondaryHighlightColor : Theme.secondaryColor
|
||||
horizontalAlignment: messageListItem.textAlign
|
||||
text: getMessageStatusText(myMessage, index, chatView.lastReadSentIndex, messageDateText.useElapsed)
|
||||
rightPadding: interactionLoader.active ? interactionLoader.width : 0
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
enabled: !messageListItem.precalculatedValues.pageIsSelecting
|
||||
|
@ -485,33 +701,25 @@ ListItem {
|
|||
messageDateText.text = getMessageStatusText(myMessage, index, chatView.lastReadSentIndex, messageDateText.useElapsed);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: interactionLoader
|
||||
height: parent.height
|
||||
anchors.right: parent.right
|
||||
asynchronous: true
|
||||
active: chatPage.isChannel && messageViewCount
|
||||
sourceComponent: Component {
|
||||
Label {
|
||||
text: Functions.getShortenedCount(messageViewCount)
|
||||
leftPadding: Theme.iconSizeSmall
|
||||
font.pixelSize: Theme.fontSizeTiny
|
||||
color: Theme.secondaryColor
|
||||
Icon {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
width: Theme.iconSizeExtraSmall
|
||||
height: Theme.iconSizeExtraSmall
|
||||
opacity: 0.6
|
||||
source: "../../images/icon-s-eye.svg"
|
||||
sourceSize {
|
||||
width: Theme.iconSizeExtraSmall
|
||||
height: Theme.iconSizeExtraSmall
|
||||
}
|
||||
}
|
||||
}
|
||||
Loader {
|
||||
id: interactionLoader
|
||||
width: parent.width
|
||||
asynchronous: true
|
||||
active: ( chatPage.isChannel && messageViewCount > 0 ) || reactions.length > 0
|
||||
height: ( ( chatPage.isChannel && messageViewCount > 0 ) || reactions.length > 0 ) ? ( Theme.fontSizeExtraSmall + Theme.paddingSmall ) : 0
|
||||
sourceComponent: Component {
|
||||
Label {
|
||||
text: getInteractionText(messageViewCount, reactions, font.pixelSize, Theme.highlightColor)
|
||||
width: parent.width
|
||||
font.pixelSize: Theme.fontSizeTiny
|
||||
color: messageListItem.isOwnMessage ? Theme.secondaryHighlightColor : Theme.secondaryColor
|
||||
horizontalAlignment: messageListItem.textAlign
|
||||
textFormat: Text.StyledText
|
||||
maximumLineCount: 1
|
||||
elide: Text.ElideRight
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -521,4 +729,59 @@ ListItem {
|
|||
|
||||
}
|
||||
|
||||
Column {
|
||||
id: reactionsColumn
|
||||
width: parent.width - ( 2 * Theme.horizontalPageMargin )
|
||||
anchors.top: messageTextRow.bottom
|
||||
anchors.topMargin: Theme.paddingSmall
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
visible: messageListItem.messageReactions ? ( messageListItem.messageReactions.length > 0 ? true : false ) : false
|
||||
opacity: messageListItem.messageReactions ? ( messageListItem.messageReactions.length > 0 ? 1 : 0 ) : 0
|
||||
Behavior on opacity { NumberAnimation {} }
|
||||
spacing: Theme.paddingMedium
|
||||
|
||||
Flickable {
|
||||
width: parent.width
|
||||
height: reactionsResultRow.height + Theme.paddingSmall
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
contentWidth: reactionsResultRow.width
|
||||
clip: true
|
||||
Row {
|
||||
id: reactionsResultRow
|
||||
spacing: Theme.paddingMedium
|
||||
Repeater {
|
||||
model: messageListItem.messageReactions
|
||||
|
||||
Item {
|
||||
height: singleReactionRow.height
|
||||
width: singleReactionRow.width
|
||||
|
||||
Row {
|
||||
id: singleReactionRow
|
||||
spacing: Theme.paddingSmall
|
||||
|
||||
Image {
|
||||
id: emojiPicture
|
||||
source: Emoji.getEmojiPath(modelData)
|
||||
width: status === Image.Ready ? Theme.fontSizeLarge : 0
|
||||
height: Theme.fontSizeLarge
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: {
|
||||
tdLibWrapper.setMessageReaction(messageListItem.chatId, messageListItem.messageId, modelData);
|
||||
messageListItem.messageReactions = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -25,9 +25,9 @@ import "../js/debug.js" as Debug
|
|||
Item {
|
||||
id: messageListItem
|
||||
property var myMessage: display
|
||||
property bool senderIsUser: myMessage.sender["@type"] === "messageSenderUser"
|
||||
property var userInformation: senderIsUser ? tdLibWrapper.getUserInformation(myMessage.sender.user_id) : null
|
||||
property bool isOwnMessage: senderIsUser && chatPage.myUserId === myMessage.sender.user_id
|
||||
property bool senderIsUser: myMessage.sender_id["@type"] === "messageSenderUser"
|
||||
property var userInformation: senderIsUser ? tdLibWrapper.getUserInformation(myMessage.sender_id.user_id) : null
|
||||
property bool isOwnMessage: senderIsUser && chatPage.myUserId === myMessage.sender_id.user_id
|
||||
property var linkedMessage
|
||||
height: backgroundRectangle.height + Theme.paddingMedium
|
||||
|
||||
|
|
|
@ -32,19 +32,21 @@ Flickable {
|
|||
|
||||
property var overlayMessage;
|
||||
property bool showHeader: true
|
||||
readonly property var userInformation: tdLibWrapper.getUserInformation(overlayMessage.sender.user_id);
|
||||
readonly property bool isOwnMessage: tdLibWrapper.getUserInformation().id === overlayMessage.sender.user_id;
|
||||
readonly property bool isAnonymous: overlayMessage.sender["@type"] === "messageSenderChat"
|
||||
readonly property var userInformation: tdLibWrapper.getUserInformation(overlayMessage.sender_id.user_id);
|
||||
readonly property bool isOwnMessage: tdLibWrapper.getUserInformation().id === overlayMessage.sender_id.user_id;
|
||||
readonly property bool isAnonymous: overlayMessage.sender_id["@type"] === "messageSenderChat"
|
||||
property bool hasContentComponent: overlayMessage.content && chatView.delegateMessagesContent.indexOf(overlayMessage.content['@type']) > -1
|
||||
signal requestClose;
|
||||
|
||||
function getOriginalAuthor(forwardInformation, fontSize) {
|
||||
switch (forwardInformation.origin["@type"]) {
|
||||
case "messageOriginChannel":
|
||||
case "messageForwardOriginChannel":
|
||||
var otherChatInformation = tdLibWrapper.getChat(forwardInformation.origin.chat_id);
|
||||
return Emoji.emojify(otherChatInformation.title, fontSize);
|
||||
case "messageOriginUser":
|
||||
case "messageForwardOriginUser":
|
||||
var otherUserInformation = tdLibWrapper.getUserInformation(forwardInformation.origin.sender.user_id);
|
||||
var otherUserInformation = tdLibWrapper.getUserInformation(forwardInformation.origin.sender_id.user_id);
|
||||
return Emoji.emojify(Functions.getUserName(otherUserInformation), fontSize);
|
||||
default:
|
||||
return Emoji.emojify(forwardInformation.origin.sender_name, fontSize);
|
||||
|
|
|
@ -31,12 +31,12 @@ Loader {
|
|||
property var botUserInformation: tdLibWrapper.getUserInformation(message.via_bot_user_id)
|
||||
color: Theme.secondaryColor
|
||||
font.pixelSize: Theme.fontSizeExtraSmall
|
||||
text: qsTr("via %1", "message posted via bot user").arg("<a style=\"text-decoration: none; font-weight: bold; color:"+Theme.primaryColor+"\" href=\"userId://" + message.via_bot_user_id + "\">@" + Emoji.emojify(botUserInformation.username, font.pixelSize)+"</a>")
|
||||
text: qsTr("via %1", "message posted via bot user").arg("<a style=\"text-decoration: none; font-weight: bold; color:"+Theme.primaryColor+"\" href=\"userId://" + message.via_bot_user_id + "\">@" + Emoji.emojify(botUserInformation.usernames.editable_username, font.pixelSize)+"</a>")
|
||||
textFormat: Text.RichText
|
||||
truncationMode: TruncationMode.Fade
|
||||
onLinkActivated: {
|
||||
if(link === "userId://" + message.via_bot_user_id && botUserInformation.type.is_inline) {
|
||||
newMessageTextField.text = "@"+botUserInformation.username+" "
|
||||
newMessageTextField.text = "@"+botUserInformation.usernames.editable_username+" "
|
||||
newMessageTextField.cursorPosition = newMessageTextField.text.length
|
||||
lostFocusTimer.start();
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
import WerkWolf.Fernschreiber 1.0
|
||||
import "../js/functions.js" as Functions
|
||||
|
||||
ListItem {
|
||||
id: chatListViewItem
|
||||
|
@ -11,6 +12,8 @@ ListItem {
|
|||
property alias tertiaryText: tertiaryText //usually last message date
|
||||
|
||||
property int unreadCount: 0
|
||||
property int unreadMentionCount: 0
|
||||
property int unreadReactionCount: 0
|
||||
property bool isSecret: false
|
||||
property bool isVerified: false
|
||||
property bool isMarkedAsUnread: false
|
||||
|
@ -84,8 +87,8 @@ ListItem {
|
|||
|
||||
Rectangle {
|
||||
id: chatUnreadMessagesCountBackground
|
||||
color: Theme.highlightBackgroundColor
|
||||
width: Theme.fontSizeLarge
|
||||
color: isMuted ? ((Theme.colorScheme === Theme.DarkOnLight) ? "lightgray" : "dimgray") : Theme.highlightBackgroundColor
|
||||
width: chatUnreadMessagesCount.width + Theme.fontSizeLarge / 2
|
||||
height: Theme.fontSizeLarge
|
||||
anchors.right: parent.right
|
||||
anchors.bottom: parent.bottom
|
||||
|
@ -100,10 +103,43 @@ ListItem {
|
|||
color: Theme.primaryColor
|
||||
anchors.centerIn: chatUnreadMessagesCountBackground
|
||||
visible: chatListViewItem.unreadCount > 0
|
||||
text: chatListViewItem.unreadCount > 99 ? "99+" : chatListViewItem.unreadCount
|
||||
opacity: isMuted ? Theme.opacityHigh : 1.0
|
||||
text: Functions.formatUnreadCount(chatListViewItem.unreadCount)
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
color: isMuted ? ((Theme.colorScheme === Theme.DarkOnLight) ? "lightgray" : "dimgray") : Theme.highlightBackgroundColor
|
||||
width: Theme.fontSizeLarge
|
||||
height: Theme.fontSizeLarge
|
||||
anchors.right: parent.right
|
||||
anchors.top: parent.top
|
||||
radius: parent.width / 2
|
||||
visible: chatListViewItem.unreadReactionCount > 0 || chatListViewItem.unreadMentionCount > 0
|
||||
|
||||
Icon {
|
||||
source: "image://theme/icon-s-favorite"
|
||||
height: Theme.iconSizeExtraSmall
|
||||
width: Theme.iconSizeExtraSmall
|
||||
highlighted: chatListViewItem.highlighted
|
||||
anchors.centerIn: parent
|
||||
visible: chatListViewItem.unreadReactionCount > 0 && !chatListViewItem.unreadMentionCount
|
||||
}
|
||||
|
||||
Text {
|
||||
font {
|
||||
pixelSize: Theme.iconSizeExtraSmall
|
||||
bold: true
|
||||
}
|
||||
color: Theme.primaryColor
|
||||
anchors.centerIn: parent
|
||||
visible: chatListViewItem.unreadMentionCount > 0
|
||||
opacity: isMuted ? Theme.opacityHigh : 1.0
|
||||
text: "@"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
id: contentColumn
|
||||
anchors {
|
||||
|
@ -126,6 +162,9 @@ ListItem {
|
|||
truncationMode: TruncationMode.Fade
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
width: Math.min(contentColumn.width - (verifiedImage.visible ? (verifiedImage.width + primaryTextRow.spacing) : 0) - (mutedImage.visible ? (mutedImage.width + primaryTextRow.spacing) : 0), implicitWidth)
|
||||
font.bold: appSettings.highlightUnreadConversations && ( !chatListViewItem.isMuted && (chatListViewItem.unreadCount > 0 || chatListViewItem.isMarkedAsUnread) )
|
||||
font.italic: appSettings.highlightUnreadConversations && (chatListViewItem.unreadReactionCount > 0)
|
||||
color: (appSettings.highlightUnreadConversations && (chatListViewItem.unreadCount > 0)) ? Theme.highlightColor : Theme.primaryColor
|
||||
}
|
||||
|
||||
Image {
|
||||
|
|
|
@ -33,7 +33,7 @@ Item {
|
|||
onPinnedMessageChanged: {
|
||||
if (pinnedMessage) {
|
||||
Debug.log("[ChatPage] Activating pinned message");
|
||||
var messageUserText = (pinnedMessage.sender.user_id !== chatPage.myUserId) ? Emoji.emojify(Functions.getUserName(tdLibWrapper.getUserInformation(pinnedMessage.sender.user_id)), pinnedMessageUserText.font.pixelSize) : qsTr("You");
|
||||
var messageUserText = (pinnedMessage.sender_id.user_id !== chatPage.myUserId) ? Emoji.emojify(Functions.getUserName(tdLibWrapper.getUserInformation(pinnedMessage.sender_id.user_id)), pinnedMessageUserText.font.pixelSize) : qsTr("You");
|
||||
pinnedMessageUserText.text = (messageUserText === "" ? qsTr("Pinned Message") : messageUserText );
|
||||
pinnedMessageText.text = Emoji.emojify(Functions.getMessageText(pinnedMessage, true, chatPage.myUserId, false), pinnedMessageText.font.pixelSize);
|
||||
pinnedMessageItem.visible = true;
|
||||
|
|
|
@ -60,12 +60,12 @@ Column {
|
|||
},
|
||||
inlineKeyboardButtonTypeSwitchInline: function() {
|
||||
if(modelData.type.in_current_chat) {
|
||||
chatPage.setMessageText("@" + userInformation.username + " "+(modelData.type.query || ""))
|
||||
chatPage.setMessageText("@" + userInformation.usernames.editable_username + " "+(modelData.type.query || ""))
|
||||
} else {
|
||||
|
||||
pageStack.push(Qt.resolvedUrl("../pages/ChatSelectionPage.qml"), {
|
||||
myUserId: chatPage.myUserId,
|
||||
payload: { neededPermissions: ["can_send_other_messages"], text:"@" + userInformation.username + " "+(modelData.type.query || "")},
|
||||
payload: { neededPermissions: ["can_send_other_messages"], text:"@" + userInformation.usernames.editable_username + " "+(modelData.type.query || "")},
|
||||
state: "fillTextArea"
|
||||
})
|
||||
}
|
||||
|
|
|
@ -25,22 +25,52 @@ Item {
|
|||
id: stickerPickerOverlayItem
|
||||
anchors.fill: parent
|
||||
|
||||
property var recentStickers: stickerManager.getRecentStickers()
|
||||
property var installedStickerSets: stickerManager.getInstalledStickerSets()
|
||||
property bool pickerLoaded: false
|
||||
property var recentStickers: stickerManager.getRecentStickers();
|
||||
property var installedStickerSets: stickerManager.getInstalledStickerSets();
|
||||
|
||||
signal stickerPicked(var stickerId)
|
||||
|
||||
Timer {
|
||||
id: stickerPickerLoadedTimer
|
||||
interval: 100
|
||||
running: true
|
||||
repeat: false
|
||||
onTriggered: {
|
||||
stickerPickerOverlayItem.pickerLoaded = true;
|
||||
Connections {
|
||||
target: tdLibWrapper
|
||||
onOkReceived: {
|
||||
if (request === "removeStickerSet") {
|
||||
appNotification.show(qsTr("Sticker set successfully removed!"));
|
||||
tdLibWrapper.getInstalledStickerSets();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: stickerManager
|
||||
onStickerSetsReceived: {
|
||||
installedStickerSets = stickerManager.getInstalledStickerSets();
|
||||
}
|
||||
}
|
||||
Component {
|
||||
id: stickerComponent
|
||||
BackgroundItem {
|
||||
id: stickerSetItem
|
||||
width: Theme.itemSizeExtraLarge
|
||||
height: Theme.itemSizeExtraLarge
|
||||
|
||||
onClicked: stickerPickerOverlayItem.stickerPicked(modelData.sticker.remote.id)
|
||||
|
||||
TDLibThumbnail {
|
||||
thumbnail: modelData.thumbnail
|
||||
anchors.fill: parent
|
||||
highlighted: stickerSetItem.highlighted
|
||||
}
|
||||
|
||||
Label {
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
anchors.right: parent.right
|
||||
anchors.bottom: parent.bottom
|
||||
text: Emoji.emojify(modelData.emoji, font.pixelSize)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
signal stickerPicked(var stickerId)
|
||||
|
||||
Rectangle {
|
||||
id: stickerPickerOverlayBackground
|
||||
anchors.fill: parent
|
||||
|
@ -49,35 +79,32 @@ Item {
|
|||
opacity: 0.7
|
||||
}
|
||||
|
||||
Flickable {
|
||||
id: stickerPickerFlickable
|
||||
SilicaListView {
|
||||
id: stickerPickerListView
|
||||
anchors.fill: parent
|
||||
anchors.margins: Theme.paddingMedium
|
||||
|
||||
opacity: stickerPickerOverlayItem.pickerLoaded ? 1 : 0
|
||||
Behavior on opacity { NumberAnimation {} }
|
||||
visible: stickerPickerOverlayItem.pickerLoaded
|
||||
|
||||
contentHeight: stickerPickerColumn.height
|
||||
clip: true
|
||||
|
||||
Column {
|
||||
id: stickerPickerColumn
|
||||
spacing: Theme.paddingMedium
|
||||
width: stickerPickerFlickable.width
|
||||
model: stickerPickerOverlayItem.installedStickerSets
|
||||
|
||||
header: Column {
|
||||
spacing: Theme.paddingSmall
|
||||
width: stickerPickerListView.width
|
||||
height: recentStickersGridView.count > 0 ? ( Theme.fontSizeLarge + Theme.itemSizeExtraLarge + 4 * Theme.paddingSmall ) : 0
|
||||
topPadding: Theme.paddingSmall
|
||||
Label {
|
||||
font.pixelSize: Theme.fontSizeMedium
|
||||
font.pixelSize: Theme.fontSizeLarge
|
||||
font.bold: true
|
||||
width: parent.width
|
||||
width: recentStickersGridView.width
|
||||
leftPadding: Theme.paddingMedium
|
||||
visible: recentStickersGridView.count > 0
|
||||
maximumLineCount: 1
|
||||
truncationMode: TruncationMode.Fade
|
||||
text: qsTr("Recently used")
|
||||
}
|
||||
|
||||
SilicaGridView {
|
||||
id: recentStickersGridView
|
||||
width: parent.width
|
||||
height: Theme.itemSizeExtraLarge
|
||||
width: stickerPickerListView.width
|
||||
height: Theme.itemSizeExtraLarge + Theme.paddingSmall
|
||||
cellWidth: Theme.itemSizeExtraLarge;
|
||||
cellHeight: Theme.itemSizeExtraLarge;
|
||||
visible: count > 0
|
||||
|
@ -85,119 +112,132 @@ Item {
|
|||
flow: GridView.FlowTopToBottom
|
||||
|
||||
model: stickerPickerOverlayItem.recentStickers
|
||||
|
||||
delegate: Item {
|
||||
width: recentStickersGridView.cellWidth
|
||||
height: recentStickersGridView.cellHeight
|
||||
|
||||
Image {
|
||||
source: modelData.thumbnail.file.local.path
|
||||
anchors.fill: parent
|
||||
asynchronous: true
|
||||
onStatusChanged: {
|
||||
if (status === Image.Ready) {
|
||||
stickerPickerLoadedTimer.restart();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: stickerPickerOverlayItem.stickerPicked(modelData.sticker.remote.id)
|
||||
}
|
||||
|
||||
}
|
||||
delegate: stickerComponent
|
||||
|
||||
HorizontalScrollDecorator {}
|
||||
|
||||
}
|
||||
}
|
||||
delegate: Column {
|
||||
id: stickerSetColumn
|
||||
|
||||
property bool isExpanded: false
|
||||
function toggleDisplaySet() {
|
||||
stickerSetColumn.isExpanded = !stickerSetColumn.isExpanded;
|
||||
if (stickerSetColumn.isExpanded) {
|
||||
stickerSetLoader.myStickerSet = modelData.stickers;
|
||||
}
|
||||
}
|
||||
|
||||
spacing: Theme.paddingSmall
|
||||
width: parent.width
|
||||
|
||||
Row {
|
||||
id: stickerSetTitleRow
|
||||
width: parent.width
|
||||
height: Theme.itemSizeMedium + ( 2 * Theme.paddingSmall )
|
||||
spacing: Theme.paddingMedium
|
||||
BackgroundItem {
|
||||
id: stickerSetToggle
|
||||
width: parent.width - removeSetButton.width - Theme.paddingMedium * 2
|
||||
height: parent.height
|
||||
|
||||
onClicked: {
|
||||
toggleDisplaySet();
|
||||
}
|
||||
TDLibThumbnail {
|
||||
id: stickerSetThumbnail
|
||||
thumbnail: modelData.thumbnail ? modelData.thumbnail : modelData.stickers[0].thumbnail
|
||||
anchors {
|
||||
left: parent.left
|
||||
verticalCenter: parent.verticalCenter
|
||||
leftMargin: Theme.paddingMedium
|
||||
}
|
||||
width: Theme.itemSizeMedium
|
||||
height: Theme.itemSizeMedium
|
||||
highlighted: stickerSetToggle.down
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: stickerPickerOverlayItem.installedStickerSets
|
||||
width: stickerPickerFlickable.width
|
||||
Column {
|
||||
spacing: Theme.paddingMedium
|
||||
width: parent.width
|
||||
Label {
|
||||
font.pixelSize: Theme.fontSizeMedium
|
||||
id: setTitleText
|
||||
font.pixelSize: Theme.fontSizeLarge
|
||||
font.bold: true
|
||||
width: parent.width
|
||||
maximumLineCount: 1
|
||||
|
||||
anchors {
|
||||
left: stickerSetThumbnail.right
|
||||
right: expandSetButton.left
|
||||
verticalCenter: parent.verticalCenter
|
||||
margins: Theme.paddingSmall
|
||||
}
|
||||
truncationMode: TruncationMode.Fade
|
||||
text: modelData.title
|
||||
}
|
||||
|
||||
SilicaGridView {
|
||||
id: installedStickerSetGridView
|
||||
width: parent.width
|
||||
height: Theme.itemSizeExtraLarge
|
||||
cellWidth: Theme.itemSizeExtraLarge;
|
||||
cellHeight: Theme.itemSizeExtraLarge;
|
||||
visible: count > 0
|
||||
clip: true
|
||||
flow: GridView.FlowTopToBottom
|
||||
|
||||
model: modelData.stickers
|
||||
delegate: Item {
|
||||
width: installedStickerSetGridView.cellWidth
|
||||
height: installedStickerSetGridView.cellHeight
|
||||
|
||||
Image {
|
||||
id: singleStickerImage
|
||||
source: modelData.thumbnail.file.local.is_downloading_completed ? modelData.thumbnail.file.local.path : ""
|
||||
anchors.fill: parent
|
||||
visible: modelData.thumbnail.file.local.is_downloading_completed
|
||||
asynchronous: true
|
||||
onStatusChanged: {
|
||||
if (status === Image.Ready) {
|
||||
stickerPickerLoadedTimer.restart();
|
||||
}
|
||||
}
|
||||
}
|
||||
Label {
|
||||
font.pixelSize: Theme.fontSizeHuge
|
||||
anchors.fill: parent
|
||||
maximumLineCount: 1
|
||||
truncationMode: TruncationMode.Fade
|
||||
text: Emoji.emojify(modelData.emoji, font.pixelSize)
|
||||
visible: !modelData.thumbnail.file.local.is_downloading_completed
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: stickerPickerOverlayItem.stickerPicked(modelData.sticker.remote.id)
|
||||
}
|
||||
Icon {
|
||||
id: expandSetButton
|
||||
source: stickerSetColumn.isExpanded ? "image://theme/icon-m-up" : "image://theme/icon-m-down"
|
||||
anchors {
|
||||
right: parent.right
|
||||
verticalCenter: parent.verticalCenter
|
||||
rightMargin: Theme.paddingMedium
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
IconButton {
|
||||
id: removeSetButton
|
||||
icon.source: "image://theme/icon-m-remove"
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
onClicked: {
|
||||
var stickerSetId = modelData.id;
|
||||
Remorse.popupAction(chatPage, qsTr("Removing sticker set"), function() {
|
||||
tdLibWrapper.changeStickerSet(stickerSetId, false);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: stickerSetLoader
|
||||
width: parent.width
|
||||
active: stickerSetColumn.isExpanded || height > 0
|
||||
height: stickerSetColumn.isExpanded ? Theme.itemSizeExtraLarge + Theme.paddingSmall : 0
|
||||
opacity: stickerSetColumn.isExpanded ? 1.0 : 0.0
|
||||
|
||||
Behavior on height {
|
||||
NumberAnimation { duration: 200 }
|
||||
}
|
||||
Behavior on opacity {
|
||||
NumberAnimation { duration: 200 }
|
||||
}
|
||||
|
||||
property var myStickerSet
|
||||
onActiveChanged: {
|
||||
if(!active) {
|
||||
myStickerSet = ({});
|
||||
}
|
||||
}
|
||||
|
||||
sourceComponent: Component {
|
||||
SilicaListView {
|
||||
id: installedStickerSetGridView
|
||||
width: stickerSetLoader.width
|
||||
height: stickerSetLoader.height
|
||||
|
||||
orientation: Qt.Horizontal
|
||||
visible: count > 0
|
||||
|
||||
model: stickerSetLoader.myStickerSet
|
||||
delegate: stickerComponent
|
||||
|
||||
HorizontalScrollDecorator {}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
anchors.centerIn: parent
|
||||
width: parent.width
|
||||
spacing: Theme.paddingMedium
|
||||
|
||||
opacity: stickerPickerOverlayItem.pickerLoaded ? 0 : 1
|
||||
Behavior on opacity { NumberAnimation {} }
|
||||
visible: !stickerPickerOverlayItem.pickerLoaded
|
||||
|
||||
InfoLabel {
|
||||
id: loadingLabel
|
||||
text: qsTr("Loading stickers...")
|
||||
}
|
||||
|
||||
BusyIndicator {
|
||||
id: loadingBusyIndicator
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
running: !stickerPickerOverlayItem.pickerLoaded
|
||||
size: BusyIndicatorSize.Large
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
173
qml/components/StickerSetOverlay.qml
Normal file
|
@ -0,0 +1,173 @@
|
|||
/*
|
||||
Copyright (C) 2020-21 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
import "./messageContent"
|
||||
import "../js/functions.js" as Functions
|
||||
import "../js/twemoji.js" as Emoji
|
||||
import "../js/debug.js" as Debug
|
||||
|
||||
Flickable {
|
||||
id: stickerSetOverlayFlickable
|
||||
anchors.fill: parent
|
||||
boundsBehavior: Flickable.StopAtBounds
|
||||
contentHeight: stickerSetContentColumn.height
|
||||
clip: true
|
||||
|
||||
property string stickerSetId;
|
||||
property var stickerSet;
|
||||
signal requestClose;
|
||||
|
||||
Component.onCompleted: {
|
||||
if (!stickerManager.hasStickerSet(stickerSetId)) {
|
||||
tdLibWrapper.getStickerSet(stickerSetId);
|
||||
} else {
|
||||
stickerSet = stickerManager.getStickerSet(stickerSetId);
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: tdLibWrapper
|
||||
onStickerSetReceived: {
|
||||
if (stickerSet.id === stickerSetOverlayFlickable.stickerSetId) {
|
||||
stickerSetOverlayFlickable.stickerSet = stickerSet;
|
||||
}
|
||||
}
|
||||
onOkReceived: {
|
||||
if (request === "installStickerSet") {
|
||||
appNotification.show(qsTr("Sticker set successfully installed!"));
|
||||
installSetButton.visible = false;
|
||||
tdLibWrapper.getInstalledStickerSets();
|
||||
}
|
||||
if (request === "removeStickerSet") {
|
||||
appNotification.show(qsTr("Sticker set successfully removed!"));
|
||||
installSetButton.visible = true;
|
||||
tdLibWrapper.getInstalledStickerSets();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
id: stickerSetContentBackground
|
||||
color: Theme.overlayBackgroundColor
|
||||
opacity: 0.7
|
||||
anchors.fill: parent
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
onClicked: {
|
||||
stickerSetOverlayFlickable.requestClose();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
id: stickerSetContentColumn
|
||||
spacing: Theme.paddingMedium
|
||||
width: parent.width
|
||||
height: parent.height
|
||||
|
||||
Row {
|
||||
id: stickerSetTitleRow
|
||||
width: parent.width - ( 2 * Theme.horizontalPageMargin )
|
||||
height: overlayStickerTitleText.height + ( 2 * Theme.paddingMedium )
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
Label {
|
||||
id: overlayStickerTitleText
|
||||
|
||||
width: parent.width - installSetButton.width - closeSetButton.width
|
||||
text: stickerSet.title
|
||||
font.pixelSize: Theme.fontSizeExtraLarge
|
||||
font.weight: Font.ExtraBold
|
||||
maximumLineCount: 1
|
||||
truncationMode: TruncationMode.Fade
|
||||
textFormat: Text.StyledText
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
}
|
||||
|
||||
IconButton {
|
||||
id: installSetButton
|
||||
icon.source: "image://theme/icon-m-add"
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
visible: !stickerManager.isStickerSetInstalled(stickerSet.id)
|
||||
onClicked: {
|
||||
tdLibWrapper.changeStickerSet(stickerSet.id, true);
|
||||
}
|
||||
}
|
||||
|
||||
IconButton {
|
||||
id: removeSetButton
|
||||
icon.source: "image://theme/icon-m-remove"
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
visible: !installSetButton.visible
|
||||
onClicked: {
|
||||
tdLibWrapper.changeStickerSet(stickerSet.id, false);
|
||||
}
|
||||
}
|
||||
|
||||
IconButton {
|
||||
id: closeSetButton
|
||||
icon.source: "image://theme/icon-m-clear"
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
onClicked: {
|
||||
stickerSetOverlayFlickable.requestClose();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
SilicaGridView {
|
||||
id: stickerSetGridView
|
||||
|
||||
width: parent.width - ( 2 * Theme.horizontalPageMargin )
|
||||
height: parent.height - stickerSetTitleRow.height - Theme.paddingMedium
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
cellWidth: chatPage.isLandscape ? (width / 5) : (width / 3);
|
||||
cellHeight: cellWidth
|
||||
|
||||
visible: count > 0
|
||||
|
||||
clip: true
|
||||
|
||||
model: stickerSet.stickers
|
||||
delegate: Item {
|
||||
width: stickerSetGridView.cellWidth - Theme.paddingSmall
|
||||
height: stickerSetGridView.cellHeight - Theme.paddingSmall
|
||||
|
||||
TDLibThumbnail {
|
||||
id: singleStickerThumbnail
|
||||
thumbnail: modelData.thumbnail
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
Label {
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
anchors.right: parent.right
|
||||
anchors.bottom: parent.bottom
|
||||
text: Emoji.emojify(modelData.emoji, font.pixelSize)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
VerticalScrollDecorator {}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -209,7 +209,6 @@ Item {
|
|||
attachmentOptionsFlickable.isNeeded = false;
|
||||
attachmentPreviewRow.isVoiceNote = true;
|
||||
attachmentPreviewRow.attachmentDescription = qsTr("Voice Note (%1)").arg(recordingDurationLabel.text);
|
||||
attachmentPreviewRow.visible = true;
|
||||
controlSendButton();
|
||||
voiceNoteOverlayLoader.active = false;
|
||||
}
|
||||
|
|
|
@ -98,7 +98,7 @@ SilicaFlickable {
|
|||
if(groupFullInfo.members && groupFullInfo.members.length > 0) {
|
||||
for(var memberIndex in groupFullInfo.members) {
|
||||
var memberData = groupFullInfo.members[memberIndex];
|
||||
var userInfo = tdLibWrapper.getUserInformation(memberData.user_id) || {user:{}, bot_info:{}};
|
||||
var userInfo = tdLibWrapper.getUserInformation(memberData.member_id.user_id) || {user:{}, bot_info:{}};
|
||||
memberData.user = userInfo;
|
||||
memberData.bot_info = memberData.bot_info || {};
|
||||
membersList.append(memberData);
|
||||
|
@ -187,6 +187,14 @@ SilicaFlickable {
|
|||
chatInformationPage.chatInformation = newInformation
|
||||
}
|
||||
}
|
||||
onChatNotificationSettingsUpdated: {
|
||||
if (chatInformationPage.chatInformation.id.toString() === chatId) {
|
||||
// set whole object to trigger change
|
||||
var newInformation = chatInformation;
|
||||
newInformation.notification_settings = chatNotificationSettings;
|
||||
chatInformationPage.chatInformation = newInformation;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
|
@ -292,7 +300,8 @@ SilicaFlickable {
|
|||
}
|
||||
leftMargin: imageContainer.getEased((imageContainer.minDimension + Theme.paddingMedium), 0, imageContainer.tweenFactor) + Theme.horizontalPageMargin
|
||||
title: chatInformationPage.chatInformation.title !== "" ? Emoji.emojify(chatInformationPage.chatInformation.title, Theme.fontSizeLarge) : qsTr("Unknown")
|
||||
description: (chatInformationPage.isPrivateChat || chatInformationPage.isSecretChat) ? ("@"+(chatInformationPage.privateChatUserInformation.username || chatInformationPage.chatPartnerGroupId)) : ""
|
||||
description: ((chatInformationPage.isPrivateChat || chatInformationPage.isSecretChat) && chatInformationPage.privateChatUserInformation.usernames.editable_username)
|
||||
? ("@"+chatInformationPage.privateChatUserInformation.usernames.editable_username) : ""
|
||||
}
|
||||
|
||||
SilicaFlickable {
|
||||
|
@ -355,6 +364,27 @@ SilicaFlickable {
|
|||
height: imageContainer.hasImage ? imageContainer.maxDimension : 0
|
||||
}
|
||||
|
||||
Label {
|
||||
id: copyIdText
|
||||
x: Math.max(headerItem.x + imageContainer.x - groupInfoItem.x + (imageContainer.width - width)/2, 0)
|
||||
text: chatInformationPage.chatPartnerGroupId
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
color: copyIdMouseArea.pressed ? Theme.secondaryHighlightColor : Theme.highlightColor
|
||||
visible: text !== ""
|
||||
|
||||
MouseArea {
|
||||
id: copyIdMouseArea
|
||||
anchors {
|
||||
fill: parent
|
||||
margins: -Theme.paddingLarge
|
||||
}
|
||||
onClicked: {
|
||||
Clipboard.text = copyIdText.text
|
||||
appNotification.show(qsTr("ID has been copied to the clipboard."));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
InformationEditArea {
|
||||
visible: canEdit
|
||||
canEdit: !(chatInformationPage.isPrivateChat || chatInformationPage.isSecretChat) && chatInformationPage.groupInformation.status && (chatInformationPage.groupInformation.status.can_change_info || chatInformationPage.groupInformation.status["@type"] === "chatMemberStatusCreator")
|
||||
|
|
|
@ -79,7 +79,7 @@ ChatInformationTabItemBase {
|
|||
// chat title
|
||||
primaryText.text: Emoji.emojify(Functions.getUserName(user), primaryText.font.pixelSize)
|
||||
// last user
|
||||
prologSecondaryText.text: "@"+(user.username !== "" ? user.username : user_id) + (user_id === chatInformationPage.myUserId ? " " + qsTr("You") : "")
|
||||
prologSecondaryText.text: "@"+(user.username ? user.username : member_id.user_id) + (member_id.user_id === chatInformationPage.myUserId ? " " + qsTr("You") : "")
|
||||
secondaryText {
|
||||
horizontalAlignment: Text.AlignRight
|
||||
property string statusText: Functions.getChatMemberStatusText(model.status["@type"])
|
||||
|
@ -92,7 +92,7 @@ ChatInformationTabItemBase {
|
|||
}
|
||||
|
||||
onClicked: {
|
||||
tdLibWrapper.createPrivateChat(user_id, "openDirectly");
|
||||
tdLibWrapper.createPrivateChat(member_id.user_id, "openDirectly");
|
||||
}
|
||||
}
|
||||
footer: Component {
|
||||
|
@ -179,7 +179,10 @@ ChatInformationTabItemBase {
|
|||
if(members && members.length > 0 && chatInformationPage.groupInformation.member_count > membersView.count) {
|
||||
for(var memberIndex in members) {
|
||||
var memberData = members[memberIndex];
|
||||
var userInfo = tdLibWrapper.getUserInformation(memberData.user_id) || {user:{}, bot_info:{}};
|
||||
var userInfo = tdLibWrapper.getUserInformation(memberData.member_id.user_id) || {user:{}, bot_info:{}};
|
||||
if (!userInfo.username && userInfo.usernames && userInfo.usernames.active_usernames) {
|
||||
userInfo.username = userInfo.usernames.active_usernames[0]
|
||||
}
|
||||
memberData.user = userInfo;
|
||||
memberData.bot_info = memberData.bot_info || {};
|
||||
pageContent.membersList.append(memberData);
|
||||
|
|
27
qml/components/messageContent/MessageAnimatedEmoji.qml
Normal file
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
Copyright (C) 2020-21 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
import WerkWolf.Fernschreiber 1.0
|
||||
import "../"
|
||||
import "../../js/twemoji.js" as Emoji
|
||||
|
||||
MessageSticker {
|
||||
stickerData: messageListItem ? messageListItem.myMessage.content.animated_emoji.sticker : overlayFlickable.overlayMessage.content.animated_emoji.sticker;
|
||||
}
|
|
@ -35,7 +35,7 @@ MessageContentFileInfoBase {
|
|||
onClicked: {
|
||||
if(file.isDownloadingCompleted) {
|
||||
// in this case, the MouseArea should take over
|
||||
tdLibWrapper.openFileOnDevice(file.path);
|
||||
tdLibWrapper.copyFileToDownloads(file.path, true);
|
||||
} else if(!file.isDownloadingActive) {
|
||||
file.load();
|
||||
} else {
|
||||
|
@ -76,7 +76,7 @@ MessageContentFileInfoBase {
|
|||
rightMargin: copyButton.width
|
||||
}
|
||||
onClicked: {
|
||||
tdLibWrapper.openFileOnDevice(file.path);
|
||||
tdLibWrapper.copyFileToDownloads(file.path, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -29,9 +29,7 @@ MessageContentBase {
|
|||
property string fileExtra;
|
||||
|
||||
onClicked: {
|
||||
if(!processLauncher.launchProgram('harbour-pure-maps', ["geo:"+locationData.latitude+","+locationData.longitude])) {
|
||||
imageNotification.show(qsTr("Install Pure Maps to inspect this location."));
|
||||
}
|
||||
Qt.openUrlExternally("geo:" + locationData.latitude + "," + locationData.longitude);
|
||||
}
|
||||
onLocationDataChanged: updatePicture()
|
||||
onWidthChanged: updatePicture()
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
Copyright (C) 2020 Sebastian J. Wolf and other contributors
|
||||
Copyright (C) 2020-21 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
|
@ -20,14 +20,18 @@ import QtQuick 2.6
|
|||
import Sailfish.Silica 1.0
|
||||
import WerkWolf.Fernschreiber 1.0
|
||||
import "../"
|
||||
import "../../js/twemoji.js" as Emoji
|
||||
|
||||
MessageContentBase {
|
||||
readonly property var stickerData: messageListItem ? messageListItem.myMessage.content.sticker : overlayFlickable.overlayMessage.content.sticker;
|
||||
readonly property bool animated: stickerData.is_animated && appSettings.animateStickers
|
||||
id: thisItem
|
||||
|
||||
property var stickerData: messageListItem ? messageListItem.myMessage.content.sticker : overlayFlickable.overlayMessage.content.sticker;
|
||||
readonly property bool asEmoji: appSettings.showStickersAsEmojis
|
||||
readonly property bool animated: stickerData.format["@type"] === "stickerFormatTgs" && appSettings.animateStickers
|
||||
readonly property bool stickerVisible: staticStickerLoader.item ? staticStickerLoader.item.visible :
|
||||
animatedStickerLoader.item ? animatedStickerLoader.item.visible : false
|
||||
readonly property bool isOwnSticker : messageListItem ? messageListItem.isOwnMessage : overlayFlickable.isOwnMessage
|
||||
property real aspectRatio: stickerData.width / stickerData.height
|
||||
readonly property real aspectRatio: stickerData.width / stickerData.height
|
||||
|
||||
implicitWidth: stickerData.width
|
||||
implicitHeight: stickerData.height
|
||||
|
@ -40,6 +44,7 @@ MessageContentBase {
|
|||
}
|
||||
|
||||
Item {
|
||||
|
||||
width: Math.min( stickerData.width, parent.width )
|
||||
height: width * aspectRatio
|
||||
// (centered in image mode, text-like in sticker mode)
|
||||
|
@ -50,7 +55,7 @@ MessageContentBase {
|
|||
Loader {
|
||||
id: animatedStickerLoader
|
||||
anchors.fill: parent
|
||||
active: animated
|
||||
active: animated && !asEmoji
|
||||
sourceComponent: Component {
|
||||
AnimatedImage {
|
||||
id: animatedSticker
|
||||
|
@ -59,7 +64,7 @@ MessageContentBase {
|
|||
asynchronous: true
|
||||
paused: !Qt.application.active
|
||||
cache: false
|
||||
layer.enabled: highlighted
|
||||
layer.enabled: thisItem.highlighted
|
||||
layer.effect: PressEffect { source: animatedSticker }
|
||||
}
|
||||
}
|
||||
|
@ -68,19 +73,23 @@ MessageContentBase {
|
|||
Loader {
|
||||
id: staticStickerLoader
|
||||
anchors.fill: parent
|
||||
active: !animated
|
||||
active: !animated || asEmoji
|
||||
sourceComponent: Component {
|
||||
Image {
|
||||
id: staticSticker
|
||||
anchors.fill: parent
|
||||
source: file.path
|
||||
source: asEmoji ? Emoji.getEmojiPath(stickerData.emoji) : file.path
|
||||
sourceSize {
|
||||
width: width
|
||||
height: height
|
||||
}
|
||||
fillMode: Image.PreserveAspectFit
|
||||
autoTransform: true
|
||||
asynchronous: true
|
||||
visible: opacity > 0
|
||||
opacity: status === Image.Ready ? 1 : 0
|
||||
Behavior on opacity { FadeAnimation {} }
|
||||
layer.enabled: highlighted
|
||||
layer.enabled: thisItem.highlighted
|
||||
layer.effect: PressEffect { source: staticSticker }
|
||||
}
|
||||
}
|
||||
|
@ -98,6 +107,11 @@ MessageContentBase {
|
|||
}
|
||||
}
|
||||
|
||||
onClicked: {
|
||||
stickerSetOverlayLoader.stickerSetId = stickerData.set_id
|
||||
stickerSetOverlayLoader.active = true
|
||||
}
|
||||
|
||||
Timer {
|
||||
id: placeHolderDelayTimer
|
||||
interval: 1000
|
||||
|
|
|
@ -95,7 +95,7 @@ MessageContentBase {
|
|||
tdLibWrapper.downloadFile(previewFileId);
|
||||
}
|
||||
} else {
|
||||
placeholderImage.source = "image://theme/icon-l-video?white";
|
||||
placeholderImage.source = "image://theme/icon-m-video?white";
|
||||
placeholderImage.width = Theme.itemSizeLarge
|
||||
placeholderImage.height = Theme.itemSizeLarge
|
||||
}
|
||||
|
@ -218,7 +218,7 @@ MessageContentBase {
|
|||
highlighted: videoMessageComponent.highlighted || down
|
||||
visible: ( placeholderImage.status === Image.Ready && !videoMessageComponent.fullscreen ) ? true : false
|
||||
onClicked: {
|
||||
pageStack.push(Qt.resolvedUrl("../../pages/VideoPage.qml"), {"videoData": videoData});
|
||||
pageStack.push(Qt.resolvedUrl("../../pages/VideoPage.qml"), {"videoData": videoData, "sourceMessage": rawMessage});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -464,7 +464,7 @@ MessageContentBase {
|
|||
}
|
||||
visible: ( videoComponentLoader.active && messageVideo.playbackState === MediaPlayer.PausedState ) ? true : false
|
||||
onClicked: {
|
||||
pageStack.push(Qt.resolvedUrl("../../pages/VideoPage.qml"), {"videoData": videoData});
|
||||
pageStack.push(Qt.resolvedUrl("../../pages/VideoPage.qml"), {"videoData": videoData, "sourceMessage": rawMessage});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
77
qml/components/messageContent/SponsoredMessage.qml
Normal file
|
@ -0,0 +1,77 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
import QtQuick 2.6
|
||||
import QtGraphicalEffects 1.0
|
||||
import Sailfish.Silica 1.0
|
||||
import WerkWolf.Fernschreiber 1.0
|
||||
import "../"
|
||||
import "../../js/functions.js" as Functions
|
||||
|
||||
Column {
|
||||
id: sponsoredMessageColumn
|
||||
|
||||
property var sponsoredMessageData;
|
||||
|
||||
Connections {
|
||||
target: tdLibWrapper
|
||||
onMessageLinkInfoReceived: {
|
||||
if (sponsoredMessageData.link.url === url) {
|
||||
messageOverlayLoader.overlayMessage = messageLinkInfo.message;
|
||||
messageOverlayLoader.active = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
if (sponsoredMessageData) {
|
||||
if (typeof sponsoredMessageData.link === "undefined") {
|
||||
sponsoredMessageButton.text = qsTr("Go to Channel");
|
||||
sponsoredMessageButton.advertisesChannel = true;
|
||||
} else if (sponsoredMessageData.link['@type'] === "internalLinkTypeMessage") {
|
||||
sponsoredMessageButton.text = qsTr("Go to Message");
|
||||
sponsoredMessageButton.advertisesMessage = true;
|
||||
} else {
|
||||
sponsoredMessageButton.text = qsTr("Start Bot");
|
||||
sponsoredMessageButton.advertisesBot = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
id: sponsoredMessageButton
|
||||
property bool advertisesChannel: false;
|
||||
property bool advertisesMessage: false;
|
||||
property bool advertisesBot: false;
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
onClicked: {
|
||||
if (advertisesChannel) {
|
||||
tdLibWrapper.createSupergroupChat(tdLibWrapper.getChat(sponsoredMessageData.sponsor_chat_id).type.supergroup_id, "openDirectly");
|
||||
}
|
||||
if (advertisesMessage) {
|
||||
tdLibWrapper.getMessageLinkInfo(sponsoredMessageData.link.url);
|
||||
}
|
||||
if (advertisesBot) {
|
||||
tdLibWrapper.createPrivateChat(tdLibWrapper.getUserInformationByName(sponsoredMessageData.link.bot_username).id, "openAndSendStartToBot:" + sponsoredMessageData.link.start_parameter);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
42
qml/components/settingsPage/Accordion.qml
Normal file
|
@ -0,0 +1,42 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
|
||||
|
||||
Column {
|
||||
width: parent.width
|
||||
property SilicaFlickable flickable
|
||||
property bool animate: false
|
||||
signal setActiveArea(string activeAreaTitle)
|
||||
function scrollUpFlickable(amount) {
|
||||
if(flickable) {
|
||||
flickableAnimation.to = Math.max(0, flickable.contentY - amount);
|
||||
flickableAnimation.start()
|
||||
}
|
||||
}
|
||||
|
||||
NumberAnimation {
|
||||
id: flickableAnimation
|
||||
target: flickable
|
||||
property: "contentY"
|
||||
duration: 200
|
||||
}
|
||||
}
|
106
qml/components/settingsPage/AccordionItem.qml
Normal file
|
@ -0,0 +1,106 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
|
||||
Item {
|
||||
id: area
|
||||
width: parent.width
|
||||
height: button.height + content.height
|
||||
property alias icon: image
|
||||
property alias text: label.text
|
||||
property alias asynchronous: content.asynchronous
|
||||
property bool expanded: false
|
||||
default property alias els: content.sourceComponent
|
||||
states: [
|
||||
State {
|
||||
when: area.expanded
|
||||
PropertyChanges { target: image; rotation: 90 }
|
||||
PropertyChanges { target: content; height: content.implicitHeight + Theme.paddingLarge; opacity: 1.0 }
|
||||
}
|
||||
]
|
||||
transitions: Transition {
|
||||
to: "*"
|
||||
enabled: area.parent.animate
|
||||
NumberAnimation { target: content; properties: "height, opacity"; duration: 200}
|
||||
NumberAnimation { target: image; properties: "rotation"; duration: 200}
|
||||
}
|
||||
Connections {
|
||||
target: area.parent
|
||||
onSetActiveArea: {
|
||||
var expand = (activeAreaTitle === area.text);
|
||||
if(area.expanded && !expand && area.parent.scrollUpFlickable) {
|
||||
area.parent.scrollUpFlickable(content.implicitHeight + Theme.paddingLarge);
|
||||
}
|
||||
|
||||
area.expanded = expand;
|
||||
}
|
||||
}
|
||||
BackgroundItem {
|
||||
id: button
|
||||
height: Theme.itemSizeMedium
|
||||
onClicked: {
|
||||
area.parent.animate = true;
|
||||
area.parent.setActiveArea(area.expanded ? -1 : area.text)
|
||||
}
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
gradient: Gradient {
|
||||
GradientStop { position: 0.0; color: Theme.rgba(Theme.highlightBackgroundColor, 0.15) }
|
||||
GradientStop { position: 1.0; color: "transparent" }
|
||||
}
|
||||
}
|
||||
Label {
|
||||
id: label
|
||||
anchors {
|
||||
left: parent.left
|
||||
right: image.left
|
||||
verticalCenter: parent.verticalCenter
|
||||
leftMargin: Theme.horizontalPageMargin + Theme.paddingLarge
|
||||
rightMargin: Theme.paddingMedium
|
||||
}
|
||||
horizontalAlignment: Text.AlignRight
|
||||
truncationMode: TruncationMode.Fade
|
||||
color: button.highlighted ? Theme.highlightColor : Theme.primaryColor
|
||||
textFormat: Text.PlainText
|
||||
}
|
||||
HighlightImage {
|
||||
id: image
|
||||
anchors {
|
||||
right: parent.right
|
||||
verticalCenter: parent.verticalCenter
|
||||
rightMargin: Theme.horizontalPageMargin
|
||||
}
|
||||
width: visible ? Theme.iconSizeMedium : 0
|
||||
highlighted: parent.highlighted
|
||||
source: "image://theme/icon-m-left"
|
||||
rotation: -90
|
||||
}
|
||||
}
|
||||
Loader {
|
||||
id: content
|
||||
width: parent.width
|
||||
height: 0
|
||||
opacity: 0
|
||||
anchors.top: button.bottom
|
||||
asynchronous: true
|
||||
clip: true
|
||||
}
|
||||
}
|
28
qml/components/settingsPage/ResponsiveGrid.qml
Normal file
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
import "../../js/functions.js" as Functions
|
||||
|
||||
Grid {
|
||||
width: parent.width - ( 2 * x )
|
||||
columns: Functions.isWidescreen(appWindow) ? 2 : 1
|
||||
readonly property real columnWidth: width/columns
|
||||
}
|
89
qml/components/settingsPage/SettingsAppearance.qml
Normal file
|
@ -0,0 +1,89 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
|
||||
AccordionItem {
|
||||
text: qsTr("Appearance")
|
||||
clip: heightBehavior.enabled || heightAnimation.running
|
||||
|
||||
// One-shot behavior
|
||||
Behavior on height {
|
||||
id: heightBehavior
|
||||
enabled: false
|
||||
SequentialAnimation {
|
||||
id: heightAnimation
|
||||
SmoothedAnimation { duration: 200 }
|
||||
ScriptAction { script: heightBehavior.enabled = false }
|
||||
}
|
||||
}
|
||||
|
||||
Component {
|
||||
ResponsiveGrid {
|
||||
bottomPadding: Theme.paddingMedium
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.showStickersAsEmojis
|
||||
text: qsTr("Show stickers as emojis")
|
||||
description: qsTr("Only display emojis instead of the actual stickers")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
heightBehavior.enabled = true
|
||||
appSettings.showStickersAsEmojis = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.showStickersAsImages
|
||||
text: qsTr("Show stickers as images")
|
||||
description: qsTr("Show background for stickers and align them centrally like images")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.showStickersAsImages = !checked
|
||||
}
|
||||
visible: !appSettings.showStickersAsEmojis
|
||||
opacity: visible ? 1 : 0
|
||||
Behavior on opacity { FadeAnimation { } }
|
||||
}
|
||||
|
||||
Item {
|
||||
// Placeholder to move the next switch to the second column
|
||||
visible: parent.columns === 2
|
||||
width: 1
|
||||
height: 1
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.animateStickers
|
||||
text: qsTr("Animate stickers")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.animateStickers = !checked
|
||||
}
|
||||
visible: !appSettings.showStickersAsEmojis
|
||||
opacity: visible ? 1 : 0
|
||||
Behavior on opacity { FadeAnimation { } }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
221
qml/components/settingsPage/SettingsBehavior.qml
Normal file
|
@ -0,0 +1,221 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
import WerkWolf.Fernschreiber 1.0
|
||||
|
||||
AccordionItem {
|
||||
text: qsTr("Behavior")
|
||||
Component {
|
||||
ResponsiveGrid {
|
||||
bottomPadding: Theme.paddingMedium
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.sendByEnter
|
||||
text: qsTr("Send message by enter")
|
||||
description: qsTr("Send your message by pressing the enter key")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.sendByEnter = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.focusTextAreaOnChatOpen
|
||||
text: qsTr("Focus text input on chat open")
|
||||
description: qsTr("Focus the text input area when entering a chat")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.focusTextAreaOnChatOpen = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.focusTextAreaAfterSend
|
||||
text: qsTr("Focus text input area after send")
|
||||
description: qsTr("Focus the text input area after sending a message")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.focusTextAreaAfterSend = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.delayMessageRead
|
||||
text: qsTr("Delay before marking messages as read")
|
||||
description: qsTr("Fernschreiber will wait a bit before messages are marked as read")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.delayMessageRead = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.highlightUnreadConversations
|
||||
text: qsTr("Highlight unread messages")
|
||||
description: qsTr("Highlight Conversations with unread messages")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.highlightUnreadConversations = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.useOpenWith
|
||||
text: qsTr("Open-with menu integration")
|
||||
description: qsTr("Integrate Fernschreiber into open-with menu of Sailfish OS")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.useOpenWith = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.notificationAlwaysShowPreview
|
||||
text: qsTr("Always append message preview to notifications")
|
||||
description: qsTr("In addition to showing the number of unread messages, the latest message will also be appended to notifications.")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.notificationAlwaysShowPreview = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.goToQuotedMessage
|
||||
text: qsTr("Go to quoted message")
|
||||
description: qsTr("When tapping a quoted message, open it in chat instead of showing it in an overlay.")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.goToQuotedMessage = !checked
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox {
|
||||
id: feedbackComboBox
|
||||
width: parent.columnWidth
|
||||
label: qsTr("Notification feedback")
|
||||
description: qsTr("Use non-graphical feedback (sound, vibration) for notifications")
|
||||
menu: ContextMenu {
|
||||
id: feedbackMenu
|
||||
x: 0
|
||||
width: feedbackComboBox.width
|
||||
|
||||
MenuItem {
|
||||
readonly property int value: AppSettings.NotificationFeedbackAll
|
||||
text: qsTr("All events")
|
||||
onClicked: {
|
||||
appSettings.notificationFeedback = value
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
readonly property int value: AppSettings.NotificationFeedbackNew
|
||||
text: qsTr("Only new events")
|
||||
onClicked: {
|
||||
appSettings.notificationFeedback = value
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
readonly property int value: AppSettings.NotificationFeedbackNone
|
||||
text: qsTr("None")
|
||||
onClicked: {
|
||||
appSettings.notificationFeedback = value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: updateFeedbackSelection()
|
||||
|
||||
function updateFeedbackSelection() {
|
||||
var menuItems = feedbackMenu.children
|
||||
var n = menuItems.length
|
||||
for (var i=0; i<n; i++) {
|
||||
if (menuItems[i].value === appSettings.notificationFeedback) {
|
||||
currentIndex = i
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: appSettings
|
||||
onNotificationFeedbackChanged: {
|
||||
feedbackComboBox.updateFeedbackSelection()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
// Occupies one grid cell so that the column ends up under the combo box
|
||||
// in the landscape layout
|
||||
visible: parent.columns === 2
|
||||
width: 1
|
||||
height: 1
|
||||
}
|
||||
|
||||
Column {
|
||||
enabled: appSettings.notificationFeedback !== AppSettings.NotificationFeedbackNone
|
||||
width: parent.columnWidth
|
||||
height: enabled ? implicitHeight: 0
|
||||
clip: height < implicitHeight
|
||||
visible: height > 0
|
||||
|
||||
Behavior on height { SmoothedAnimation { duration: 200 } }
|
||||
|
||||
TextSwitch {
|
||||
checked: appSettings.notificationSuppressContent && enabled
|
||||
text: qsTr("Hide content in notifications")
|
||||
enabled: parent.enabled
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.notificationSuppressContent = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
checked: appSettings.notificationTurnsDisplayOn && enabled
|
||||
text: qsTr("Notification turns on the display")
|
||||
enabled: parent.enabled
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.notificationTurnsDisplayOn = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
checked: appSettings.notificationSoundsEnabled && enabled
|
||||
text: qsTr("Enable notification sounds")
|
||||
description: qsTr("When sounds are enabled, Fernschreiber will use the current Sailfish OS notification sound for chats, which can be configured in the system settings.")
|
||||
enabled: parent.enabled
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.notificationSoundsEnabled = !checked
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
266
qml/components/settingsPage/SettingsPrivacy.qml
Normal file
|
@ -0,0 +1,266 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
import WerkWolf.Fernschreiber 1.0
|
||||
|
||||
AccordionItem {
|
||||
text: qsTr("Privacy")
|
||||
Component {
|
||||
Column {
|
||||
bottomPadding: Theme.paddingMedium
|
||||
Connections {
|
||||
target: tdLibWrapper
|
||||
onUserPrivacySettingUpdated: {
|
||||
Debug.log("Received updated privacy setting: " + setting + ":" + rule);
|
||||
switch (setting) {
|
||||
case TelegramAPI.SettingAllowChatInvites:
|
||||
allowChatInvitesComboBox.currentIndex = rule;
|
||||
break;
|
||||
case TelegramAPI.SettingAllowFindingByPhoneNumber:
|
||||
allowFindingByPhoneNumberComboBox.currentIndex = rule;
|
||||
break;
|
||||
case TelegramAPI.SettingShowLinkInForwardedMessages:
|
||||
showLinkInForwardedMessagesComboBox.currentIndex = rule;
|
||||
break;
|
||||
case TelegramAPI.SettingShowPhoneNumber:
|
||||
showPhoneNumberComboBox.currentIndex = rule;
|
||||
break;
|
||||
case TelegramAPI.SettingShowProfilePhoto:
|
||||
showProfilePhotoComboBox.currentIndex = rule;
|
||||
break;
|
||||
case TelegramAPI.SettingShowStatus:
|
||||
showStatusComboBox.currentIndex = rule;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
ResponsiveGrid {
|
||||
ComboBox {
|
||||
id: allowChatInvitesComboBox
|
||||
width: parent.columnWidth
|
||||
label: qsTr("Allow chat invites")
|
||||
description: qsTr("Privacy setting for managing whether you can be invited to chats.")
|
||||
menu: ContextMenu {
|
||||
x: 0
|
||||
width: allowChatInvitesComboBox.width
|
||||
|
||||
MenuItem {
|
||||
text: qsTr("Yes")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingAllowChatInvites, TelegramAPI.RuleAllowAll);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("Your contacts only")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingAllowChatInvites, TelegramAPI.RuleAllowContacts);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("No")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingAllowChatInvites, TelegramAPI.RuleRestrictAll);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
currentIndex = tdLibWrapper.getUserPrivacySettingRule(TelegramAPI.SettingAllowChatInvites);
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox {
|
||||
id: allowFindingByPhoneNumberComboBox
|
||||
width: parent.columnWidth
|
||||
label: qsTr("Allow finding by phone number")
|
||||
description: qsTr("Privacy setting for managing whether you can be found by your phone number.")
|
||||
menu: ContextMenu {
|
||||
x: 0
|
||||
width: allowFindingByPhoneNumberComboBox.width
|
||||
|
||||
MenuItem {
|
||||
text: qsTr("Yes")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingAllowFindingByPhoneNumber, TelegramAPI.RuleAllowAll);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("Your contacts only")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingAllowFindingByPhoneNumber, TelegramAPI.RuleAllowContacts);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
currentIndex = tdLibWrapper.getUserPrivacySettingRule(TelegramAPI.SettingAllowFindingByPhoneNumber);
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox {
|
||||
id: showLinkInForwardedMessagesComboBox
|
||||
width: parent.columnWidth
|
||||
label: qsTr("Show link in forwarded messages")
|
||||
description: qsTr("Privacy setting for managing whether a link to your account is included in forwarded messages.")
|
||||
menu: ContextMenu {
|
||||
x: 0
|
||||
width: showLinkInForwardedMessagesComboBox.width
|
||||
|
||||
MenuItem {
|
||||
text: qsTr("Yes")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowLinkInForwardedMessages, TelegramAPI.RuleAllowAll);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("Your contacts only")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowLinkInForwardedMessages, TelegramAPI.RuleAllowContacts);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("No")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowLinkInForwardedMessages, TelegramAPI.RuleRestrictAll);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
currentIndex = tdLibWrapper.getUserPrivacySettingRule(TelegramAPI.SettingShowLinkInForwardedMessages);
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox {
|
||||
id: showPhoneNumberComboBox
|
||||
width: parent.columnWidth
|
||||
label: qsTr("Show phone number")
|
||||
description: qsTr("Privacy setting for managing whether your phone number is visible.")
|
||||
menu: ContextMenu {
|
||||
x: 0
|
||||
width: showPhoneNumberComboBox.width
|
||||
|
||||
MenuItem {
|
||||
text: qsTr("Yes")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowPhoneNumber, TelegramAPI.RuleAllowAll);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("Your contacts only")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowPhoneNumber, TelegramAPI.RuleAllowContacts);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("No")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowPhoneNumber, TelegramAPI.RuleRestrictAll);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
currentIndex = tdLibWrapper.getUserPrivacySettingRule(TelegramAPI.SettingShowPhoneNumber);
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox {
|
||||
id: showProfilePhotoComboBox
|
||||
width: parent.columnWidth
|
||||
label: qsTr("Show profile photo")
|
||||
description: qsTr("Privacy setting for managing whether your profile photo is visible.")
|
||||
menu: ContextMenu {
|
||||
x: 0
|
||||
width: showProfilePhotoComboBox.width
|
||||
|
||||
MenuItem {
|
||||
text: qsTr("Yes")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowProfilePhoto, TelegramAPI.RuleAllowAll);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("Your contacts only")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowProfilePhoto, TelegramAPI.RuleAllowContacts);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("No")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowProfilePhoto, TelegramAPI.RuleRestrictAll);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
currentIndex = tdLibWrapper.getUserPrivacySettingRule(TelegramAPI.SettingShowProfilePhoto);
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox {
|
||||
id: showStatusComboBox
|
||||
width: parent.columnWidth
|
||||
label: qsTr("Show status")
|
||||
description: qsTr("Privacy setting for managing whether your online status is visible.")
|
||||
menu: ContextMenu {
|
||||
x: 0
|
||||
width: showStatusComboBox.width
|
||||
|
||||
MenuItem {
|
||||
text: qsTr("Yes")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowStatus, TelegramAPI.RuleAllowAll);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("Your contacts only")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowStatus, TelegramAPI.RuleAllowContacts);
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
text: qsTr("No")
|
||||
onClicked: {
|
||||
tdLibWrapper.setUserPrivacySettingRule(TelegramAPI.SettingShowStatus, TelegramAPI.RuleRestrictAll);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
currentIndex = tdLibWrapper.getUserPrivacySettingRule(TelegramAPI.SettingShowStatus);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
checked: appSettings.allowInlineBotLocationAccess
|
||||
text: qsTr("Allow sending Location to inline bots")
|
||||
description: qsTr("Some inline bots request location data when using them")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.allowInlineBotLocationAccess = !checked
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
216
qml/components/settingsPage/SettingsSession.qml
Normal file
|
@ -0,0 +1,216 @@
|
|||
/*
|
||||
Copyright (C) 2020-21 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
import WerkWolf.Fernschreiber 1.0
|
||||
import "../../components"
|
||||
import "../../js/functions.js" as Functions
|
||||
|
||||
AccordionItem {
|
||||
text: qsTr("Sessions")
|
||||
property SilicaFlickable flickable: parent.flickable
|
||||
Component {
|
||||
Column {
|
||||
id: activeSessionsItem
|
||||
bottomPadding: Theme.paddingMedium
|
||||
property variant activeSessions
|
||||
property int inactiveSessionsTtlDays
|
||||
|
||||
Component.onCompleted: {
|
||||
if (!activeSessions) {
|
||||
tdLibWrapper.getActiveSessions();
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: tdLibWrapper
|
||||
onSessionsReceived: {
|
||||
activeSessionsItem.activeSessions = sessions
|
||||
activeSessionsItem.inactiveSessionsTtlDays = inactive_session_ttl_days
|
||||
}
|
||||
onOkReceived: {
|
||||
if (request === "terminateSession") {
|
||||
appNotification.show(qsTr("Session was terminated"));
|
||||
tdLibWrapper.getActiveSessions();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loader {
|
||||
active: tdLibWrapper.authorizationState === TelegramAPI.AuthorizationReady
|
||||
width: parent.width
|
||||
sourceComponent: Component {
|
||||
Column {
|
||||
BusyIndicator {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
running: !activeSessionsListView.count && !activeSessionsItem.inactiveSessionsTtlDays
|
||||
size: BusyIndicatorSize.Medium
|
||||
visible: opacity > 0
|
||||
height: running ? implicitHeight : 0
|
||||
}
|
||||
|
||||
SilicaListView {
|
||||
id: activeSessionsListView
|
||||
width: parent.width
|
||||
height: contentHeight
|
||||
model: activeSessionsItem.activeSessions
|
||||
headerPositioning: ListView.OverlayHeader
|
||||
header: Separator {
|
||||
width: parent.width
|
||||
color: Theme.primaryColor
|
||||
horizontalAlignment: Qt.AlignHCenter
|
||||
visible: activeSessionsListView.count > 0
|
||||
}
|
||||
delegate: ListItem {
|
||||
id: activeSessionListItem
|
||||
width: parent.width
|
||||
contentHeight: activeSessionColumn.height + ( 2 * Theme.paddingMedium )
|
||||
|
||||
menu: ContextMenu {
|
||||
hasContent: !modelData.is_current
|
||||
onHeightChanged: {
|
||||
if (parent && flickable) {
|
||||
// Make sure we are inside the screen area
|
||||
var bottom = parent.mapToItem(flickable, x, y).y + height
|
||||
if (bottom > flickable.height) {
|
||||
flickable.contentY += bottom - flickable.height
|
||||
}
|
||||
}
|
||||
}
|
||||
MenuItem {
|
||||
onClicked: {
|
||||
var sessionId = modelData.id;
|
||||
Remorse.itemAction(activeSessionListItem, qsTr("Terminating session"), function() { tdLibWrapper.terminateSession(sessionId); });
|
||||
}
|
||||
text: qsTr("Terminate Session")
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
id: activeSessionColumn
|
||||
width: parent.width - ( 2 * Theme.horizontalPageMargin )
|
||||
spacing: Theme.paddingSmall
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
|
||||
Label {
|
||||
width: parent.width
|
||||
text: qsTr("This app")
|
||||
font.pixelSize: Theme.fontSizeMedium
|
||||
font.bold: true
|
||||
visible: modelData.is_current
|
||||
color: Theme.highlightColor
|
||||
}
|
||||
|
||||
Label {
|
||||
width: parent.width
|
||||
text: modelData.application_name + " " + modelData.application_version
|
||||
font.pixelSize: Theme.fontSizeMedium
|
||||
font.bold: true
|
||||
maximumLineCount: 1
|
||||
elide: Text.ElideRight
|
||||
}
|
||||
|
||||
Label {
|
||||
width: parent.width
|
||||
text: modelData.device_model + ", " + (modelData.platform + " " + modelData.system_version).trim()
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
maximumLineCount: 1
|
||||
truncationMode: TruncationMode.Fade
|
||||
}
|
||||
|
||||
Label {
|
||||
width: parent.width
|
||||
text: qsTr("Active since: %1, last online: %2").arg(Functions.getDateTimeTimepoint(modelData.log_in_date)).arg(Functions.getDateTimeElapsed(modelData.last_active_date))
|
||||
font.pixelSize: Theme.fontSizeExtraSmall
|
||||
maximumLineCount: 1
|
||||
truncationMode: TruncationMode.Fade
|
||||
}
|
||||
}
|
||||
|
||||
Separator {
|
||||
anchors {
|
||||
bottom: parent.bottom
|
||||
}
|
||||
|
||||
width: parent.width
|
||||
color: Theme.primaryColor
|
||||
horizontalAlignment: Qt.AlignHCenter
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ComboBox {
|
||||
readonly property int ttl: activeSessionsItem.inactiveSessionsTtlDays
|
||||
label: qsTr("Session Timeout")
|
||||
description: qsTr("Inactive sessions will be terminated after this timeframe")
|
||||
value: (currentItem && currentItem.text) ? currentItem.text : qsTr("%1 day(s)", "", ttl).arg(ttl)
|
||||
visible: ttl > 0
|
||||
menu: ContextMenu {
|
||||
id: ttlMenu
|
||||
MenuItem {
|
||||
readonly property int days: 7
|
||||
text: qsTr("1 week")
|
||||
onClicked: tdLibWrapper.setInactiveSessionTtl(days)
|
||||
}
|
||||
MenuItem {
|
||||
readonly property int days: 30
|
||||
text: qsTr("1 month")
|
||||
onClicked: tdLibWrapper.setInactiveSessionTtl(days)
|
||||
}
|
||||
MenuItem {
|
||||
readonly property int days: 90
|
||||
text: qsTr("3 months")
|
||||
onClicked: tdLibWrapper.setInactiveSessionTtl(days)
|
||||
}
|
||||
MenuItem {
|
||||
readonly property int days: 180
|
||||
text: qsTr("6 months")
|
||||
onClicked: tdLibWrapper.setInactiveSessionTtl(days)
|
||||
}
|
||||
MenuItem {
|
||||
readonly property int days: 365
|
||||
text: qsTr("1 year")
|
||||
onClicked: tdLibWrapper.setInactiveSessionTtl(days)
|
||||
}
|
||||
}
|
||||
|
||||
Component.onCompleted: updateSelection()
|
||||
|
||||
onTtlChanged: updateSelection()
|
||||
|
||||
function updateSelection() {
|
||||
var menuItems = ttlMenu.children
|
||||
var n = menuItems.length
|
||||
for (var i = 0; i < n; i++) {
|
||||
if (menuItems[i].days === ttl) {
|
||||
currentIndex = i
|
||||
return
|
||||
}
|
||||
}
|
||||
currentIndex = -1
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
51
qml/components/settingsPage/SettingsStorage.qml
Normal file
|
@ -0,0 +1,51 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
import WerkWolf.Fernschreiber 1.0
|
||||
|
||||
AccordionItem {
|
||||
text: qsTr("Storage")
|
||||
Component {
|
||||
ResponsiveGrid {
|
||||
bottomPadding: Theme.paddingMedium
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.onlineOnlyMode
|
||||
text: qsTr("Enable online-only mode")
|
||||
description: qsTr("Disables offline caching. Certain features may be limited or missing in this mode. Changes require a restart of Fernschreiber to take effect.")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.onlineOnlyMode = !checked
|
||||
}
|
||||
}
|
||||
|
||||
TextSwitch {
|
||||
width: parent.columnWidth
|
||||
checked: appSettings.storageOptimizer
|
||||
text: qsTr("Enable storage optimizer")
|
||||
automaticCheck: false
|
||||
onClicked: {
|
||||
appSettings.storageOptimizer = !checked
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
346
qml/components/settingsPage/SettingsUserProfile.qml
Normal file
|
@ -0,0 +1,346 @@
|
|||
/*
|
||||
Copyright (C) 2021 Sebastian J. Wolf and other contributors
|
||||
|
||||
This file is part of Fernschreiber.
|
||||
|
||||
Fernschreiber is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Fernschreiber is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fernschreiber. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import QtQuick 2.6
|
||||
import Sailfish.Silica 1.0
|
||||
import Sailfish.Pickers 1.0
|
||||
import WerkWolf.Fernschreiber 1.0
|
||||
import "../"
|
||||
import "../../pages/"
|
||||
import "../../js/twemoji.js" as Emoji
|
||||
import "../../js/functions.js" as Functions
|
||||
|
||||
AccordionItem {
|
||||
text: qsTr("User Profile")
|
||||
Component {
|
||||
Column {
|
||||
id: accordionContent
|
||||
bottomPadding: Theme.paddingMedium
|
||||
|
||||
readonly property var userInformation: tdLibWrapper.getUserInformation()
|
||||
property bool uploadInProgress: false
|
||||
property bool contactSyncEnabled: false
|
||||
|
||||
Component.onCompleted: {
|
||||
tdLibWrapper.getUserProfilePhotos(userInformation.id, 100, 0);
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: tdLibWrapper
|
||||
onOwnUserUpdated: {
|
||||
firstNameEditArea.text = userInformation.first_name;
|
||||
lastNameEditArea.text = userInformation.last_name;
|
||||
userNameEditArea.text = userInformation.username;
|
||||
}
|
||||
onUserProfilePhotosReceived: {
|
||||
if (extra === userInformation.id.toString()) {
|
||||
imageContainer.thumbnailModel = photos;
|
||||
}
|
||||
}
|
||||
onFileUpdated: {
|
||||
if (uploadInProgress) {
|
||||
profilePictureButtonColumn.visible = !fileInformation.remote.is_uploading_active;
|
||||
uploadInProgress = fileInformation.remote.is_uploading_active;
|
||||
if (!fileInformation.remote.is_uploading_active) {
|
||||
uploadInProgress = false;
|
||||
tdLibWrapper.getUserProfilePhotos(userInformation.id, 100, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
onOkReceived: {
|
||||
if (request === "deleteProfilePhoto") {
|
||||
tdLibWrapper.getUserProfilePhotos(userInformation.id, 100, 0);
|
||||
}
|
||||
if (request === "setProfilePhoto") {
|
||||
tdLibWrapper.getUserProfilePhotos(userInformation.id, 100, 0);
|
||||
profilePictureButtonColumn.visible = true;
|
||||
uploadInProgress = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ResponsiveGrid {
|
||||
x: Theme.horizontalPageMargin
|
||||
|
||||
InformationEditArea {
|
||||
id: firstNameEditArea
|
||||
visible: true
|
||||
canEdit: true
|
||||
headerText: qsTr("First Name", "first name of the logged-in profile - header")
|
||||
text: userInformation.first_name
|
||||
width: parent.columnWidth
|
||||
headerLeftAligned: true
|
||||
|
||||
onSaveButtonClicked: {
|
||||
if(!editItem.errorHighlight) {
|
||||
tdLibWrapper.setName(textValue, lastNameEditArea.text);
|
||||
} else {
|
||||
isEditing = true;
|
||||
}
|
||||
}
|
||||
|
||||
onTextEdited: {
|
||||
if(textValue.length > 0 && textValue.length < 65) {
|
||||
editItem.errorHighlight = false;
|
||||
editItem.label = "";
|
||||
editItem.placeholderText = "";
|
||||
} else {
|
||||
editItem.label = qsTr("Enter 1-64 characters");
|
||||
editItem.placeholderText = editItem.label;
|
||||
editItem.errorHighlight = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
InformationEditArea {
|
||||
id: lastNameEditArea
|
||||
visible: true
|
||||
canEdit: true
|
||||
headerText: qsTr("Last Name", "last name of the logged-in profile - header")
|
||||
text: userInformation.last_name
|
||||
width: parent.columnWidth
|
||||
headerLeftAligned: true
|
||||
|
||||
onSaveButtonClicked: {
|
||||
if(!editItem.errorHighlight) {
|
||||
tdLibWrapper.setName(firstNameEditArea.text, textValue);
|
||||
} else {
|
||||
isEditing = true;
|
||||
}
|
||||
}
|
||||
|
||||
onTextEdited: {
|
||||
if(textValue.length >= 0 && textValue.length < 65) {
|
||||
editItem.errorHighlight = false;
|
||||
editItem.label = "";
|
||||
editItem.placeholderText = "";
|
||||
} else {
|
||||
editItem.label = qsTr("Enter 0-64 characters");
|
||||
editItem.placeholderText = editItem.label;
|
||||
editItem.errorHighlight = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
InformationEditArea {
|
||||
id: userNameEditArea
|
||||
visible: true
|
||||
canEdit: true
|
||||
headerText: qsTr("Username", "user name of the logged-in profile - header")
|
||||
text: userInformation.usernames.editable_username
|
||||
width: parent.columnWidth
|
||||
headerLeftAligned: true
|
||||
|
||||
onSaveButtonClicked: {
|
||||
tdLibWrapper.setUsername(textValue);
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
id: contactSyncItem
|
||||
width: parent.width
|
||||
height: syncInProgress ? ( syncContactsBusyIndicator.height + Theme.paddingMedium ) : ( syncContactsButton.height + Theme.paddingMedium )
|
||||
visible: accordionContent.contactSyncEnabled
|
||||
|
||||
property bool syncInProgress: false
|
||||
|
||||
Connections {
|
||||
target: contactSyncLoader.item
|
||||
onSyncError: {
|
||||
contactSyncItem.syncInProgress = false;
|
||||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: tdLibWrapper
|
||||
onContactsImported: {
|
||||
appNotification.show(qsTr("Contacts successfully synchronized with Telegram."));
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
id: syncContactsButton
|
||||
text: qsTr("Synchronize Contacts with Telegram")
|
||||
visible: !contactSyncItem.syncInProgress
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
onClicked: {
|
||||
contactSyncLoader.item.synchronize();
|
||||
}
|
||||
}
|
||||
|
||||
BusyIndicator {
|
||||
id: syncContactsBusyIndicator
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
running: contactSyncItem.syncInProgress
|
||||
size: BusyIndicatorSize.Small
|
||||
visible: running
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
SectionHeader {
|
||||
horizontalAlignment: Text.AlignLeft
|
||||
text: qsTr("Profile Pictures")
|
||||
}
|
||||
|
||||
Row {
|
||||
width: parent.width - ( 2 * Theme.horizontalPageMargin )
|
||||
spacing: Theme.paddingMedium
|
||||
|
||||
Item {
|
||||
id: imageContainer
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
width: parent.width / 2
|
||||
height: profilePictureLoader.height
|
||||
property var thumbnailModel: ({})
|
||||
property bool thumbnailVisible: true
|
||||
property bool thumbnailActive: thumbnailModel.length > 0
|
||||
property int thumbnailRadius: imageContainer.width / 2
|
||||
|
||||
Loader {
|
||||
id: profilePictureLoader
|
||||
active: imageContainer.thumbnailActive
|
||||
asynchronous: true
|
||||
width: Theme.itemSizeExtraLarge
|
||||
height: Theme.itemSizeExtraLarge
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
source: "../ProfilePictureList.qml"
|
||||
}
|
||||
|
||||
ProfileThumbnail {
|
||||
id: chatPictureReplacement
|
||||
visible: !profilePictureLoader.active
|
||||
replacementStringHint: Functions.getUserName(accordionContent.userInformation)
|
||||
radius: imageContainer.thumbnailRadius
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
width: Theme.itemSizeExtraLarge
|
||||
height: Theme.itemSizeExtraLarge
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
id: profilePictureButtonColumn
|
||||
spacing: Theme.paddingSmall
|
||||
width: parent.width / 2
|
||||
|
||||
Button {
|
||||
id: addProfilePictureButton
|
||||
text: qsTr("Add Picture")
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
onClicked: {
|
||||
pageStack.push(imagePickerPage);
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
id: removeProfilePictureButton
|
||||
text: qsTr("Delete Picture")
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
onClicked: {
|
||||
var pictureIdForDeletion = imageContainer.thumbnailModel[profilePictureLoader.item.currentPictureIndex].id;
|
||||
Remorse.popupAction(settingsPage, qsTr("Deleting profile picture"), function() { tdLibWrapper.deleteProfilePhoto(pictureIdForDeletion) });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
id: uploadStatusColumn
|
||||
visible: !profilePictureButtonColumn.visible
|
||||
spacing: Theme.paddingMedium
|
||||
width: parent.width / 2
|
||||
|
||||
Text {
|
||||
id: uploadingText
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
text: qsTr("Uploading...")
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
color: Theme.secondaryColor
|
||||
width: parent.width
|
||||
}
|
||||
|
||||
BusyIndicator {
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
running: uploadStatusColumn.visible
|
||||
size: BusyIndicatorSize.Medium
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loader {
|
||||
id: contactSyncLoader
|
||||
source: "../ContactSync.qml"
|
||||
active: true
|
||||
onLoaded: {
|
||||
accordionContent.contactSyncEnabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
Component {
|
||||
id: imagePickerPage
|
||||
ImagePickerPage {
|
||||
onSelectedContentPropertiesChanged: {
|
||||
profilePictureButtonColumn.visible = false;
|
||||
uploadInProgress = true;
|
||||
tdLibWrapper.setProfilePhoto(selectedContentProperties.filePath);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column {
|
||||
|
||||
width: parent.width - ( 2 * Theme.horizontalPageMargin )
|
||||
spacing: Theme.paddingMedium
|
||||
|
||||
Label {
|
||||
width: parent.width
|
||||
height: Theme.fontSizeExtraLarge
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignBottom
|
||||
text: qsTr("Phone number: +%1").arg(accordionContent.userInformation.phone_number)
|
||||
font.pixelSize: Theme.fontSizeSmall
|
||||
wrapMode: Text.Wrap
|
||||
anchors {
|
||||
horizontalCenter: parent.horizontalCenter
|
||||
}
|
||||
}
|
||||
|
||||
Button {
|
||||
id: logOutButton
|
||||
text: qsTr("Log Out")
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
onClicked: Remorse.popupAction(settingsPage, qsTr("Logged out"), function() {
|
||||
tdLibWrapper.logout();
|
||||
pageStack.pop();
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -40,6 +40,16 @@ ApplicationWindow
|
|||
}
|
||||
}
|
||||
|
||||
Connections {
|
||||
target: tdLibWrapper
|
||||
onOpenFileExternally: {
|
||||
Qt.openUrlExternally(filePath);
|
||||
}
|
||||
onTgUrlFound: {
|
||||
Functions.handleLink(tgUrl);
|
||||
}
|
||||
}
|
||||
|
||||
AppNotification {
|
||||
id: appNotification
|
||||
parent: pageStack.currentPage
|
||||
|
|
|
@ -1 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#141414" d="M4 5C1.791 5 0 6.791 0 9v18c0 2.209 1.791 4 4 4h8V5H4z"/><path fill="#FEE833" d="M12 5h12v26H12z"/><path fill="#EE232C" d="M32 5h-8v26h8c2.209 0 4-1.791 4-4V9c0-2.209-1.791-4-4-4z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36" xml:space="preserve"><path fill="#141414" d="M7 5a4 4 0 0 0-4 4v18a4 4 0 0 0 4 4h6V5H7z"/><path fill="#FDDA24" d="M13 5h10v26H13z"/><path fill="#EF3340" d="M29 5h-6v26h6a4 4 0 0 0 4-4V9a4 4 0 0 0-4-4z"/></svg>
|
Before Width: | Height: | Size: 272 B After Width: | Height: | Size: 269 B |
|
@ -1 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#138808" d="M0 27c0 2.209 1.791 4 4 4h28c2.209 0 4-1.791 4-4v-4H0v4z"/><path fill="#EEE" d="M0 13h36v10H0z"/><path fill="#F93" d="M36 13V9c0-2.209-1.791-4-4-4H4C1.791 5 0 6.791 0 9v4h36z"/><circle fill="navy" cx="18" cy="18" r="4"/><circle fill="#EEE" cx="18" cy="18" r="3"/><path fill="#6666B3" d="M18 15l.146 2.264 1.001-2.035-.73 2.147 1.704-1.498-1.497 1.705 2.147-.731-2.035 1.002L21 18l-2.264.146 2.035 1.001-2.147-.73 1.497 1.704-1.704-1.497.73 2.147-1.001-2.035L18 21l-.146-2.264-1.002 2.035.731-2.147-1.705 1.497 1.498-1.704-2.147.73 2.035-1.001L15 18l2.264-.146-2.035-1.002 2.147.731-1.498-1.705 1.705 1.498-.731-2.147 1.002 2.035z"/><circle fill="navy" cx="18" cy="18" r="1"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36" xml:space="preserve"><path fill="#138808" d="M0 27a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4v-5H0v5z"/><path fill="#F93" d="M36 14V9a4 4 0 0 0-4-4H4a4 4 0 0 0-4 4v5h36z"/><path fill="#F7F7F7" d="M0 13.667h36v8.667H0z"/><circle fill="navy" cx="18" cy="18" r="4"/><circle fill="#F7F7F7" cx="18" cy="18" r="3.375"/><path d="m18.1 16.75-.1.65-.1-.65.1-1.95zm-.928-1.841.408 1.909.265.602-.072-.653zm-.772.32.888 1.738.412.513-.238-.613zm-.663.508 1.308 1.45.531.389-.389-.531zm-.508.663 1.638 1.062.613.238-.513-.412zm-.32.772 1.858.601.653.072-.602-.265zM14.8 18l1.95.1.65-.1-.65-.1zm.109.828 1.909-.408.602-.265-.653.072zm.32.772 1.738-.888.513-.412-.613.238zm.508.663 1.45-1.308.389-.531-.531.389zm.663.508 1.062-1.638.238-.613-.412.513zm.772.32.601-1.858.072-.653-.265.602zM18 21.2l.1-1.95-.1-.65-.1.65zm.828-.109-.408-1.909-.265-.602.072.653zm.772-.32-.888-1.738-.412-.513.238.613zm.663-.508-1.308-1.45-.531-.389.389.531zm.508-.663-1.638-1.062-.613-.238.513.412zm.32-.772-1.858-.601-.653-.072.602.265zM21.2 18l-1.95-.1-.65.1.65.1zm-.109-.828-1.909.408-.602.265.653-.072zm-.32-.772-1.738.888-.513.412.613-.238zm-.508-.663-1.45 1.308-.389.531.531-.389zm-.663-.508-1.062 1.638-.238.613.412-.513zm-.772-.32-.601 1.858-.072.653.265-.602z" fill="#6666B3"/><g fill="navy"><circle cx="17.56" cy="14.659" r=".2"/><circle cx="16.71" cy="14.887" r=".2"/><circle cx="15.948" cy="15.326" r=".2"/><circle cx="15.326" cy="15.948" r=".2"/><circle cx="14.887" cy="16.71" r=".2"/><circle cx="14.659" cy="17.56" r=".2"/><circle cx="14.659" cy="18.44" r=".2"/><circle cx="14.887" cy="19.29" r=".2"/><circle cx="15.326" cy="20.052" r=".2"/><circle cx="15.948" cy="20.674" r=".2"/><circle cx="16.71" cy="21.113" r=".2"/><circle cx="17.56" cy="21.341" r=".2"/><circle cx="18.44" cy="21.341" r=".2"/><circle cx="19.29" cy="21.113" r=".2"/><circle cx="20.052" cy="20.674" r=".2"/><circle cx="20.674" cy="20.052" r=".2"/><circle cx="21.113" cy="19.29" r=".2"/><circle cx="21.341" cy="18.44" r=".2"/><circle cx="21.341" cy="17.56" r=".2"/><circle cx="21.113" cy="16.71" r=".2"/><circle cx="20.674" cy="15.948" r=".2"/><circle cx="20.052" cy="15.326" r=".2"/><circle cx="19.29" cy="14.887" r=".2"/><circle cx="18.44" cy="14.659" r=".2"/><circle cx="18" cy="18" r=".9"/></g></svg>
|
Before Width: | Height: | Size: 765 B After Width: | Height: | Size: 2.2 KiB |
|
@ -1 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#060" d="M36 27c0 2.209-1.791 4-4 4H4c-2.209 0-4-1.791-4-4V9c0-2.209 1.791-4 4-4h28c2.209 0 4 1.791 4 4v18z"/><path fill="#D52B1E" d="M32 5H15v26h17c2.209 0 4-1.791 4-4V9c0-2.209-1.791-4-4-4z"/><path fill="#FFCC4D" d="M15 10c-4.418 0-8 3.582-8 8s3.582 8 8 8 8-3.582 8-8-3.582-8-8-8zm3.994 5.938l2.089-1.393c.491.863.803 1.839.888 2.881l-2.977-1.488zM16 24h2.592c-.779.467-1.655.786-2.592.92V24zm-7.971-6.574c.083-1.022.383-1.982.858-2.832l1.602 1.602-2.46 1.23zm0 1.147l3.747 1.874.447-.895L9.118 18l2.116-1.058 1.412 1.412.707-.707-1.176-1.176.046-.023-.447-.895-.344.172-.975-.975 1.461.244.164-.986-2.514-.419c1.084-1.333 2.65-2.253 4.432-2.508V23h-3.099l2.376-1.584-.555-.832-3 2 .014.021c-.959-1.097-1.582-2.492-1.707-4.032zM14 24.92c-.937-.135-1.813-.453-2.592-.92H14v.92zm6.287-2.34l-2.933-2.933-.707.707.471.471-.395.592L19.099 23H16V11.08c1.321.189 2.524.741 3.499 1.561l-2.657.886.316.948 3-1-.103-.308c.167.174.323.357.471.548l-2.804 1.869L18 16l-.224.447L20.882 18l-3.105 1.553.447.895 3.747-1.874c-.124 1.527-.737 2.913-1.684 4.006z"/><path fill="#D52B1E" d="M11 13v7c0 2.209 1.791 4 4 4s4-1.791 4-4v-7h-8z"/><path fill="#FFF" d="M12 14v6c0 1.656 1.343 3 3 3s3-1.344 3-3v-6h-6z"/><path fill="#829ACD" d="M13 17h4v2h-4z"/><path fill="#829ACD" d="M14 16h2v4h-2z"/><path fill="#039" d="M12 17h1v2h-1zm2 0h2v2h-2zm3 0h1v2h-1zm-3 3h2v2h-2zm0-6h2v2h-2z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#060" d="M36 27c0 2.209-1.791 4-4 4H4c-2.209 0-4-1.791-4-4V9c0-2.209 1.791-4 4-4h28c2.209 0 4 1.791 4 4v18z"/><path fill="#D52B1E" d="M32 5H15v26h17c2.209 0 4-1.791 4-4V9c0-2.209-1.791-4-4-4z"/><path fill="#FFCC4D" d="M15 10c-4.419 0-8 3.581-8 8 0 4.418 3.581 8 8 8 4.418 0 8-3.582 8-8 0-4.419-3.582-8-8-8zm-6.113 4.594l1.602 1.602-2.46 1.23c.083-1.022.383-1.981.858-2.832zm-.858 3.979l4.4 2.207-2.706 1.804.014.021c-.96-1.097-1.583-2.492-1.708-4.032zM14 24.92c-.937-.134-1.813-.453-2.592-.92H14v.92zM14 23h-3.099L14 20.934V23zm0-3.268l-.607.405L9.118 18l2.116-1.058L14 19.707v.025zm0-1.439l-3.543-3.543 3.543.59v2.953zm0-3.992l-4.432-.713c1.084-1.333 2.65-2.253 4.432-2.508v3.221zm7.113.293c.475.851.775 1.81.858 2.833l-2.46-1.23 1.602-1.603zM16 11.08c1.782.256 3.348 1.175 4.432 2.508L16 14.301V11.08zm0 4.26l3.543-.591L16 18.293V15.34zm0 4.367l2.765-2.765L20.882 18l-4.274 2.137-.608-.405v-.025zm0 5.213V24h2.592c-.779.467-1.655.786-2.592.92zM16 23v-2.066L19.099 23H16zm4.264-.395l.014-.021-2.706-1.804 4.4-2.207c-.126 1.54-.749 2.935-1.708 4.032z"/><path fill="#D52B1E" d="M11 13v7c0 2.209 1.791 4 4 4s4-1.791 4-4v-7h-8z"/><path fill="#FFF" d="M12 14v6c0 1.656 1.343 3 3 3s3-1.344 3-3v-6h-6z"/><path fill="#829ACD" d="M13 17h4v2h-4z"/><path fill="#829ACD" d="M14 16h2v4h-2z"/><path fill="#039" d="M12 17h1v2h-1zm2 0h2v2h-2zm3 0h1v2h-1zm-3 3h2v2h-2zm0-6h2v2h-2z"/></svg>
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
@ -1 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#ED1C24" d="M32 5H4C1.791 5 0 6.791 0 9h36c0-2.209-1.791-4-4-4z"/><path fill="#EEE" d="M0 9h36v4H0z"/><path fill="#ED1C24" d="M32 31H4c-2.209 0-4-1.791-4-4h36c0 2.209-1.791 4-4 4z"/><path fill="#EEE" d="M0 23h36v4H0z"/><path fill="#241D4F" d="M0 13h36v10H0z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#A7122D" d="M0 26.518V27c0 2.209 1.791 4 4 4h28c2.209 0 4-1.791 4-4v-.482H0z"/><path fill="#EEE" d="M0 22.181h36v4.485H0z"/><path fill="#292648" d="M0 13.513h36v8.821H0z"/><path fill="#EEE" d="M0 9.181h36v4.485H0z"/><path fill="#A7122D" d="M0 9.333V9c0-2.209 1.791-4 4-4h28c2.209 0 4 1.791 4 4v.333H0z"/></svg>
|
Before Width: | Height: | Size: 338 B After Width: | Height: | Size: 382 B |
|
@ -1 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><circle fill="#CCD6DD" cx="18" cy="18" r="18"/><circle fill="#3B88C3" cx="18" cy="18" r="14"/><circle fill="#DD2E44" cx="18" cy="18" r="10"/><circle fill="#FFAC33" cx="18" cy="18" r="6"/><path d="M34.864 29.199c-.42.306-1.257.592-1.934.592-1.965 0-4.654-.717-6.334-2.386l-2.954-3.872c-.274-.275-.357-.575-.21-.932.148-.359-.73-.601-.342-.601h5.058c1.867 0 4.308 1.256 5.925 3.018l.371.351c.772.843 1.183 1.629 1.182 2.386 0 .621-.272 1.087-.762 1.444z"/><path d="M28.305 35.204c-.771 0-1.632-.417-2.49-1.204l-.488-.378C23.532 31.977 22 29.491 22 27.59v-5.164c0-.396.5.514.865.363.363-.15.915-.066 1.195.214l3.166 3.124c1.699 1.711 3.061 4.619 3.061 6.62 0 .689-.143 1.255-.452 1.682-.364.499-.897.775-1.53.775z"/><path fill="#C1694F" d="M31.345 31.964c-.256 0-.487-.122-.683-.317l-14-14c-.391-.391-.391-1.023 0-1.415.391-.391 1.023-.39 1.414 0l14 14c.391.391.378 1.036-.013 1.427-.194.195-.461.305-.718.305z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><circle fill="#DD2E44" cx="18" cy="18" r="18"/><circle fill="#FFF" cx="18" cy="18" r="13.5"/><circle fill="#DD2E44" cx="18" cy="18" r="10"/><circle fill="#FFF" cx="18" cy="18" r="6"/><circle fill="#DD2E44" cx="18" cy="18" r="3"/><path opacity=".2" d="M18.24 18.282l13.144 11.754s-2.647 3.376-7.89 5.109L17.579 18.42l.661-.138z"/><path fill="#FFAC33" d="M18.294 19c-.255 0-.509-.097-.704-.292-.389-.389-.389-1.018 0-1.407l.563-.563c.389-.389 1.018-.389 1.408 0 .388.389.388 1.018 0 1.407l-.564.563c-.194.195-.448.292-.703.292z"/><path fill="#55ACEE" d="M24.016 6.981c-.403 2.079 0 4.691 0 4.691l7.054-7.388c.291-1.454-.528-3.932-1.718-4.238-1.19-.306-4.079.803-5.336 6.935zm5.003 5.003c-2.079.403-4.691 0-4.691 0l7.388-7.054c1.454-.291 3.932.528 4.238 1.718.306 1.19-.803 4.079-6.935 5.336z"/><path fill="#3A87C2" d="M32.798 4.485L21.176 17.587c-.362.362-1.673.882-2.51.046-.836-.836-.419-2.08-.057-2.443L31.815 3.501s.676-.635 1.159-.152-.176 1.136-.176 1.136z"/></svg>
|
Before Width: | Height: | Size: 976 B After Width: | Height: | Size: 1 KiB |
|
@ -1 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#880082" d="M0 27c0 2.209 1.791 4 4 4h28c2.209 0 4-1.791 4-4v-.5H0v.5z"/><path fill="#3558A0" d="M0 22.07h36v4.6H0z"/><path fill="#138F3E" d="M0 17.83h36v4.5H0z"/><path fill="#FAD220" d="M0 13.5h36V18H0z"/><path fill="#FF5000" d="M0 9.17h36v4.5H0z"/><path fill="#FF000E" d="M32 5H4C1.791 5 0 6.791 0 9v.33h36V9c0-2.209-1.791-4-4-4z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36" xml:space="preserve"><path fill="#880082" d="M0 27a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4v-.5H0v.5z"/><path fill="#3558A0" d="M0 22.07h36v4.6H0z"/><path fill="#138F3E" d="M0 17.83h36v4.5H0z"/><path fill="#FAD220" d="M0 13.5h36V18H0z"/><path fill="#FF7300" d="M0 9.17h36v4.5H0z"/><path fill="#FF000E" d="M32 5H4a4 4 0 0 0-4 4v.33h36V9a4 4 0 0 0-4-4z"/></svg>
|
Before Width: | Height: | Size: 412 B After Width: | Height: | Size: 409 B |
|
@ -1 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#5BCEFA" d="M0 27c0 2.209 1.791 4 4 4h28c2.209 0 4-1.791 4-4v-1.3H0V27z"/><path fill="#F5A9B8" d="M.026 20.5L0 25.8h36v-5.3z"/><path fill="#EEE" d="M0 15.3h36v5.3H0z"/><path fill="#F5A9B8" d="M.026 10.1L0 15.4h36v-5.3z"/><path fill="#5BCEFA" d="M36 9c0-2.209-1.791-4-4-4H4C1.791 5 0 6.791 0 9v1.2h36V9z"/></svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#5BCEFA" d="M0 27c0 2.209 1.791 4 4 4h28c2.209 0 4-1.791 4-4v-1.3H0V27z"/><path fill="#F5A9B8" d="M.026 20.5L0 25.8h36v-5.3z"/><path fill="#EEE" d="M0 15.3h36v5.3H0z"/><path fill="#F5A9B8" d="M0 9.902h36V15.4H0z"/><path fill="#5BCEFA" d="M36 9c0-2.209-1.791-4-4-4H4C1.791 5 0 6.791 0 9v1.2h36V9z"/></svg>
|
Before Width: | Height: | Size: 383 B After Width: | Height: | Size: 376 B |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#292F33" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F7DECE" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#292F33" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F7DECE" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#292F33" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F7DECE" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#FFE51E" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F3D2A2" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#292F33" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F7DECE" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#963B22" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#D4AB88" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#292F33" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F7DECE" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#60352A" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#AF7E57" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#915A34" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#292F33" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F7DECE" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#0B0200" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#7C533E" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#3D2E24" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F7DECE" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#292F33" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#F7DECE" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#292F33" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F7DECE" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#292F33" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#F3D2A2" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#FFE51E" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F7DECE" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#292F33" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#D4AB88" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#963B22" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F7DECE" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#292F33" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#AF7E57" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#60352A" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#915A34" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F7DECE" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#292F33" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#7C533E" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#0B0200" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#3D2E24" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFE51E" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F3D2A2" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#292F33" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F7DECE" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFE51E" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F3D2A2" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#FFE51E" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F3D2A2" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFE51E" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F3D2A2" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#963B22" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#D4AB88" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFE51E" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F3D2A2" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#60352A" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#AF7E57" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#915A34" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#FFE51E" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#F3D2A2" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#0B0200" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#7C533E" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#3D2E24" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F3D2A2" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#FFE51E" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#F7DECE" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#292F33" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F3D2A2" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#FFE51E" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#F3D2A2" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#FFE51E" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F3D2A2" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#FFE51E" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#D4AB88" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#963B22" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F3D2A2" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#FFE51E" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#AF7E57" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#60352A" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#915A34" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#F3D2A2" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#FFE51E" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#7C533E" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#0B0200" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#3D2E24" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#963B22" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#D4AB88" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#292F33" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F7DECE" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#963B22" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#D4AB88" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#FFE51E" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F3D2A2" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#963B22" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#D4AB88" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#963B22" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#D4AB88" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#963B22" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#D4AB88" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#60352A" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#AF7E57" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#915A34" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#963B22" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#D4AB88" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#C1694F" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#0B0200" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#7C533E" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#3D2E24" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#D4AB88" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#963B22" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#F7DECE" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#292F33" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#D4AB88" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#963B22" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#F3D2A2" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#FFE51E" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#D4AB88" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#963B22" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#D4AB88" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#963B22" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#D4AB88" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#963B22" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#AF7E57" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#60352A" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#915A34" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#D4AB88" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#963B22" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#C1694F" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#7C533E" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#0B0200" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#3D2E24" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#60352A" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#AF7E57" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#915A34" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#292F33" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F7DECE" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#60352A" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#AF7E57" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#915A34" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#FFE51E" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F3D2A2" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#60352A" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#AF7E57" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#915A34" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#963B22" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#D4AB88" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#60352A" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#AF7E57" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#915A34" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#60352A" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#AF7E57" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#915A34" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#60352A" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#AF7E57" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#915A34" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path fill="#662113" d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#0B0200" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#7C533E" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#3D2E24" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#AF7E57" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#60352A" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#915A34" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#F7DECE" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#292F33" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#AF7E57" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#60352A" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#915A34" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#F3D2A2" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#FFE51E" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#AF7E57" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#60352A" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#915A34" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#D4AB88" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#963B22" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#C1694F" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#AF7E57" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#60352A" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#915A34" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#AF7E57" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#60352A" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path fill="#662113" d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#915A34" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#AF7E57" d="M5 8.042c6.626 0 12 5.373 12 12 0 6.626-5.374 12-12 12-1.787 0-3.476-.401-5-1.102V9.143c1.524-.7 3.213-1.101 5-1.101z"/><path fill="#60352A" d="M15.333 15.042c-.055.06-.128.115-.197.171-.72.716-1.753 1.477-3.219 2.036-3.691 1.407-9.121.297-9.121.297s.748-1.198 2.101-2.492c-1.809.549-3.463 1.359-4.897 2.371v-9.25c1.81-.903 3.843-1.425 6-1.428 6.508-.008 9.915 3.393 10.059 6.135.176.085.352.168.531.265 0 0-.237.641-.902 1.459-.077.094-.161.191-.249.29-.038.047-.064.1-.106.146z"/><path fill="#662113" d="M10 21.542c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5zm-5 0c1.411 0 1.497-1.251 1.5-1.503.001-.274.225-.497.5-.497.276 0 .5.224.5.5 0 .864-.523 2.5-2.5 2.5-.276 0-.5-.224-.5-.5 0-.277.224-.5.5-.5z"/><path fill="#915A34" d="M9.995 25.542c-.273-.003-.495-.226-.495-.5 0-.276.224-.5.5-.5.602 0 1.5.399 1.5 1.5 0 .438-.143.765-.352 1 .209.235.352.562.352 1 0 1.101-.898 1.5-1.5 1.5-.273 0-.493-.22-.496-.494-.004-.273.217-.499.49-.506.231-.006.506-.098.506-.5s-.275-.494-.5-.5h-.011c-.272-.006-.489-.228-.489-.5 0-.274.222-.497.495-.5.23-.006.505-.098.505-.5 0-.403-.274-.494-.505-.5z"/><path fill="#7C533E" d="M31 8.042c-6.626 0-12 5.373-12 12 0 6.626 5.374 12 12 12 1.787 0 3.476-.401 5-1.102V9.143c-1.524-.7-3.213-1.101-5-1.101z"/><path fill="#0B0200" d="M20.667 15.042c.055.06.128.115.197.171.72.716 1.753 1.477 3.219 2.036 3.691 1.407 9.121.297 9.121.297s-.748-1.198-2.101-2.492c1.809.549 3.463 1.358 4.897 2.371v-9.25c-1.81-.904-3.843-1.426-6-1.429-6.508-.008-9.915 3.393-10.059 6.135-.176.085-.352.168-.531.265 0 0 .237.641.902 1.459.077.094.161.191.249.29.038.048.064.101.106.147z"/><path d="M26 21.542c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5zm5 0c-1.411 0-1.497-1.251-1.5-1.503-.001-.274-.225-.497-.5-.497-.276 0-.5.224-.5.5 0 .864.523 2.5 2.5 2.5.276 0 .5-.224.5-.5 0-.277-.224-.5-.5-.5z"/><path fill="#3D2E24" d="M26.005 25.542c.273-.003.495-.226.495-.5 0-.276-.224-.5-.5-.5-.602 0-1.5.399-1.5 1.5 0 .438.143.765.352 1-.209.235-.352.562-.352 1 0 1.101.898 1.5 1.5 1.5.273 0 .493-.22.496-.494.004-.273-.217-.499-.49-.506-.231-.006-.506-.098-.506-.5s.275-.494.5-.5h.011c.272-.006.489-.228.489-.5 0-.274-.222-.497-.495-.5-.23-.006-.505-.098-.505-.5 0-.403.274-.494.505-.5z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 2.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#0B0200" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#7C533E" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#3D2E24" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#292F33" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F7DECE" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#0B0200" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#7C533E" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#3D2E24" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#FFE51E" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#F3D2A2" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#0B0200" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#7C533E" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#3D2E24" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#963B22" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#D4AB88" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#C1694F" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#0B0200" d="M11 11.844c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28V.425C.955.154 1.959 0 3 0c6.075 0 11 4.925 11 11 0 3.009-1.211 5.733-3.168 7.719.107-.557.168-1.13.168-1.719v-5.156z"/><path fill="#7C533E" d="M0 28.604L2 32l3-5v-1.523c2.968-1.051 5.222-3.607 5.832-6.757.107-.558.168-1.131.168-1.72v-5.156c-2.297-.669-3.315-3.565-3.734-5.369C6.313 7.952 4.23 10.155 0 11.28v17.324z"/><path fill="#3B94D9" d="M0 28.604L2 32l3-5h6c2.209 0 4 1.791 4 4v5H0v-7.396z"/><path fill="#1C6399" d="M10 32h1v4h-1z"/><path fill="#3D2E24" d="M5 22h1s-1 2-4 2c-.809 0-1.462-.151-2-.363V22h5zm-2-2.5H1c-.276 0-.5-.224-.5-.5s.224-.5.5-.5h2c.276 0 .5.224.5.5s-.224.5-.5.5z"/><path d="M6 16c-.553 0-1-.448-1-1v-1c0-.552.447-1 1-1s1 .448 1 1v1c0 .552-.447 1-1 1z"/><path fill="#60352A" d="M25 11.844c2.297-.669 3.315-3.565 3.734-5.369.953 1.477 3.036 3.68 7.266 4.805V.425C35.045.154 34.041 0 33 0c-6.075 0-11 4.925-11 11 0 3.009 1.211 5.733 3.168 7.719C25.061 18.162 25 17.589 25 17v-5.156z"/><path fill="#AF7E57" d="M36 11.28c-4.23-1.125-6.313-3.328-7.266-4.804-.42 1.804-1.438 4.699-3.734 5.369V17c0 .589.061 1.162.168 1.719.61 3.15 2.863 5.706 5.832 6.757V27l3 5 2-3.396V11.28z"/><path fill="#3B94D9" d="M36 28.604L34 32l-3-5h-6c-2.209 0-4 1.791-4 4v5h15v-7.396z"/><path fill="#1C6399" d="M25 32h1v4h-1z"/><path fill="#915A34" d="M31 22h-1s1 2 4 2c.809 0 1.462-.151 2-.363V22h-5zm2-2.5h2c.276 0 .5-.224.5-.5s-.224-.5-.5-.5h-2c-.276 0-.5.224-.5.5s.224.5.5.5z"/><path fill="#662113" d="M30 16c.553 0 1-.448 1-1v-1c0-.552-.447-1-1-1s-1 .448-1 1v1c0 .552.447 1 1 1z"/><path fill="#DD2E44" d="M26.539 4.711c0-2.602-2.11-4.711-4.711-4.711C20.249 0 18.855.78 18 1.972 17.144.78 15.751 0 14.172 0c-2.601 0-4.711 2.109-4.711 4.711 0 .369.047.727.127 1.07.654 4.065 5.173 8.353 8.411 9.529 3.238-1.177 7.758-5.465 8.412-9.528.081-.344.128-.702.128-1.071z"/></svg>
|
After Width: | Height: | Size: 1.9 KiB |