Compare commits
339 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ec895546f6 | ||
|
|
f5b7894cb1 | ||
|
|
3f5ef23e1b | ||
|
|
d496adaed2 | ||
|
|
016e85f350 | ||
|
|
cab66cdea0 | ||
|
|
6869cf9c1d | ||
|
|
1b4a9fb12e | ||
|
|
20ab1d75d2 | ||
|
|
68de8b8d39 | ||
|
|
40f6def104 | ||
|
|
6460396f8d | ||
|
|
8aa3d28981 | ||
|
|
2ec537c65f | ||
|
|
2448e8d011 | ||
|
|
4917b65a0b | ||
|
|
f57108c708 | ||
|
|
e29cb24458 | ||
|
|
e42b469965 | ||
|
|
964a333893 | ||
|
|
78af7dec6c | ||
|
|
e96cc96494 | ||
|
|
3eb538ba59 | ||
|
|
add3264e4f | ||
|
|
0ae1efa133 | ||
|
|
f38c2bead4 | ||
|
|
c3f5574d77 | ||
|
|
9fa6d5f6a7 | ||
|
|
c59c34b40d | ||
|
|
3f646b6f53 | ||
|
|
122a05e1b9 | ||
|
|
b1745466a2 | ||
|
|
ba29be811c | ||
|
|
afedf5947d | ||
|
|
07740023ff | ||
|
|
0979a0d544 | ||
|
|
a79063acc2 | ||
|
|
0dc78e3a87 | ||
|
|
00cb6888bd | ||
|
|
e86ba39909 | ||
|
|
48f6eee008 | ||
|
|
23b98d5ff0 | ||
|
|
03c28698e2 | ||
|
|
cbf2dfebe5 | ||
|
|
7e6ea8fbfd | ||
|
|
4e73836baa | ||
|
|
4dbae7c8fa | ||
|
|
649aa69cf8 | ||
|
|
0ba50722f6 | ||
|
|
ead6fd6d0d | ||
|
|
f5e4a2ac88 | ||
|
|
f6d32e22f2 | ||
|
|
cad9f00ebe | ||
|
|
1fb163d561 | ||
|
|
2c82bdc8a3 | ||
|
|
ccf51fe139 | ||
|
|
9c56c0abbc | ||
|
|
ea1827d963 | ||
|
|
c441068857 | ||
|
|
c7e917dacf | ||
|
|
262a49439d | ||
|
|
a552783f59 | ||
|
|
5658bd6ecf | ||
|
|
2742db3d5b | ||
|
|
2344cfda91 | ||
|
|
8f33182c18 | ||
|
|
2eb9dddf1d | ||
|
|
432e9d77a1 | ||
|
|
dbcfbf0824 | ||
|
|
3994470117 | ||
|
|
fce76ac629 | ||
|
|
a2d0c3c3d9 | ||
|
|
62a41c89c6 | ||
|
|
31ce98453e | ||
|
|
858ba41f8b | ||
|
|
02750dd8da | ||
|
|
25f9b02e53 | ||
|
|
eaca45f5fe | ||
|
|
ef2b9c5fcd | ||
|
|
a5a287912b | ||
|
|
8dc06464c7 | ||
|
|
5c6eaa9fb9 | ||
|
|
c53ac484fa | ||
|
|
573b3a321d | ||
|
|
7072b14073 | ||
|
|
8c67e54396 | ||
|
|
92bfa153f1 | ||
|
|
47c5ed25e7 | ||
|
|
09e7bae985 | ||
|
|
54ecafdafc | ||
|
|
265e74aff9 | ||
|
|
75a41bc724 | ||
|
|
9198b3c29a | ||
|
|
37904f9ef4 | ||
|
|
b7ce24b9c4 | ||
|
|
a2010b6ae5 | ||
|
|
63aa50aaac | ||
|
|
9ba6bf04e4 | ||
|
|
1d96d6c720 | ||
|
|
e1084c228f | ||
|
|
06b32a0f93 | ||
|
|
b028091052 | ||
|
|
866a555890 | ||
|
|
69f017bc5e | ||
|
|
b1001bfd7d | ||
|
|
4620fd1380 | ||
|
|
506b3a8520 | ||
|
|
f193156397 | ||
|
|
362cbf860c | ||
|
|
96b60842b6 | ||
|
|
173e29d2f4 | ||
|
|
acb9983ade | ||
|
|
7a6ce4dcb9 | ||
|
|
b9bda2f2da | ||
|
|
8f037204e5 | ||
|
|
42d2b17b98 | ||
|
|
1576f5b9c4 | ||
|
|
e9a41e4b7f | ||
|
|
0a42788e52 | ||
|
|
ff37e902ea | ||
|
|
cb558203e1 | ||
|
|
c1a7b6a443 | ||
|
|
4f712982d2 | ||
|
|
197d51d51f | ||
|
|
fe9d3c2bc3 | ||
|
|
f288b2ccae | ||
|
|
bc153b64a9 | ||
|
|
c840f9044c | ||
|
|
74459e6481 | ||
|
|
96b581a119 | ||
|
|
a3a1ee4cec | ||
|
|
257aae0d6a | ||
|
|
382bd03a65 | ||
|
|
9fd4c7499e | ||
|
|
83635e4477 | ||
|
|
76af10ce3e | ||
|
|
b9a12ccea2 | ||
|
|
93baf88e3a | ||
|
|
f0210a2580 | ||
|
|
e333af0d1a | ||
|
|
8bdbecdeb5 | ||
|
|
c88d17aae7 | ||
|
|
d057cbdd00 | ||
|
|
025192f5a5 | ||
|
|
d24bc62d1c | ||
|
|
eed4ea3d78 | ||
|
|
53c7ee6efa | ||
|
|
3c18cd425e | ||
|
|
7817a67fd9 | ||
|
|
3a593c4f72 | ||
|
|
c589a23372 | ||
|
|
0cf56b2cbc | ||
|
|
eb6e0f93c6 | ||
|
|
30b1fca8fb | ||
|
|
e99d29bcbc | ||
|
|
1f14e4d499 | ||
|
|
905a288f4b | ||
|
|
d389d3d163 | ||
|
|
60e34f780e | ||
|
|
16d57b8bad | ||
|
|
ddc14a031e | ||
|
|
bd7402fe38 | ||
|
|
ad3ae560bd | ||
|
|
1a15410f0d | ||
|
|
3d7a4b1d32 | ||
|
|
ba1c74b9b5 | ||
|
|
9d3a7efe29 | ||
|
|
95d7a9fe67 | ||
|
|
e4a549a55b | ||
|
|
9f0a53e733 | ||
|
|
c89bffb8ff | ||
|
|
7456b0a2e7 | ||
|
|
bffff57d28 | ||
|
|
442bab6bdd | ||
|
|
ef9530af24 | ||
|
|
cdb615b0ba | ||
|
|
fddf9169d3 | ||
|
|
91cd77ad8d | ||
|
|
1697547091 | ||
|
|
7fb3ab02f9 | ||
|
|
d855559bab | ||
|
|
c02a16a321 | ||
|
|
97bc2ba141 | ||
|
|
7f8673b65b | ||
|
|
a5caa06944 | ||
|
|
457c6ffd2f | ||
|
|
1d960fadce | ||
|
|
cba39f4ef5 | ||
|
|
9f270cf471 | ||
|
|
5b8ccea31a | ||
|
|
92201eb4ea | ||
|
|
9d519d90c7 | ||
|
|
4d34ab7a01 | ||
|
|
3c25216116 | ||
|
|
5d0007d749 | ||
|
|
1afd2ce27e | ||
|
|
438193ac39 | ||
|
|
286940a5d1 | ||
|
|
50ebcdd1f0 | ||
|
|
53c406f30c | ||
|
|
acbbd8d049 | ||
|
|
5c9e879628 | ||
|
|
4b633d1a02 | ||
|
|
b95ed5fbb5 | ||
|
|
ffcd4022ea | ||
|
|
aa525bfeb1 | ||
|
|
18d098b310 | ||
|
|
57930b2dd8 | ||
|
|
0d0c89900a | ||
|
|
4893753b19 | ||
|
|
a594d1c962 | ||
|
|
2e3b6b27de | ||
|
|
326653054d | ||
|
|
a7818fc6d4 | ||
|
|
5e327a7d65 | ||
|
|
9c0aea66ec | ||
|
|
523f216b61 | ||
|
|
fb0fa73c03 | ||
|
|
535109d08f | ||
|
|
a02cfef105 | ||
|
|
2ff8963c52 | ||
|
|
117d397d77 | ||
|
|
c5b3808dee | ||
|
|
7cd5b313de | ||
|
|
8cbba78bcb | ||
|
|
9d95bd16cd | ||
|
|
f9eb7c11fd | ||
|
|
e5c8e90889 | ||
|
|
a4941d9975 | ||
|
|
69f09c896c | ||
|
|
7f7954d4ea | ||
|
|
f736357b04 | ||
|
|
c413564a4b | ||
|
|
445f3f20f0 | ||
|
|
05a36b051d | ||
|
|
75843814bd | ||
|
|
c3a38b5002 | ||
|
|
615809e383 | ||
|
|
10ca447f54 | ||
|
|
7fefadc808 | ||
|
|
991f7ce302 | ||
|
|
864fbd015d | ||
|
|
427cf73d9d | ||
|
|
8428af3b40 | ||
|
|
c117473ce8 | ||
|
|
a90670e404 | ||
|
|
c758704a2e | ||
|
|
0a010994ee | ||
|
|
d965a0239f | ||
|
|
a773f999fa | ||
|
|
3b710e9274 | ||
|
|
08090f6873 | ||
|
|
a59c5539b2 | ||
|
|
75fb88ba1d | ||
|
|
e8416728b4 | ||
|
|
d0481775ad | ||
|
|
2960cb7bac | ||
|
|
2b43825eef | ||
|
|
814fc98274 | ||
|
|
1ba113147f | ||
|
|
630c3f8ec8 | ||
|
|
f975895e4d | ||
|
|
456e46052d | ||
|
|
0d9223e6ea | ||
|
|
cdd8d7906b | ||
|
|
384f37bb07 | ||
|
|
7cee6ad7e6 | ||
|
|
6f51d0bd75 | ||
|
|
111c28d076 | ||
|
|
815059f11e | ||
|
|
16dbf5b3bf | ||
|
|
1c5d4201ea | ||
|
|
400de2d20e | ||
|
|
f4ee647144 | ||
|
|
f73df1f8b7 | ||
|
|
0f76e30d0a | ||
|
|
bc5f731a68 | ||
|
|
51da1ab4c7 | ||
|
|
909276fe2f | ||
|
|
041e90a8ed | ||
|
|
0ed1b15977 | ||
|
|
cdcc8e103f | ||
|
|
ab2e3645f5 | ||
|
|
45afcf1e35 | ||
|
|
2711d3c2e3 | ||
|
|
028c2f7e4c | ||
|
|
b54e6a01f1 | ||
|
|
d551780d81 | ||
|
|
945d6d6728 | ||
|
|
7d8a85b861 | ||
|
|
54817cc100 | ||
|
|
34a39a2a86 | ||
|
|
52e9567a12 | ||
|
|
0a05fc917b | ||
|
|
e0512f687c | ||
|
|
2a3886c7c4 | ||
|
|
f8d3cb5d5b | ||
|
|
bf9449ea69 | ||
|
|
2b827fd5d5 | ||
|
|
31ffb48e0f | ||
|
|
648f68d6a6 | ||
|
|
993fd16075 | ||
|
|
16b2602423 | ||
|
|
90103c67ae | ||
|
|
4c1783a54b | ||
|
|
65e5a8f900 | ||
|
|
0c4e5b7da6 | ||
|
|
6f032eeba3 | ||
|
|
edc1023caf | ||
|
|
c8e8240540 | ||
|
|
718fd294a6 | ||
|
|
19942db88d | ||
|
|
287c23038d | ||
|
|
4d13ca6c1d | ||
|
|
9c1e24f8aa | ||
|
|
8c30cf71b2 | ||
|
|
c1097bf251 | ||
|
|
3e96118079 | ||
|
|
ace3754370 | ||
|
|
3f0cd893b2 | ||
|
|
66ebcb6701 | ||
|
|
bd18e966f5 | ||
|
|
ccbe0953d8 | ||
|
|
a965b859ff | ||
|
|
683d44a83c | ||
|
|
7d5bbfdadd | ||
|
|
81fcbac0ec | ||
|
|
32e74929ce | ||
|
|
d6f20e827a | ||
|
|
67ce577fe4 | ||
|
|
1d7abe4023 | ||
|
|
70c72a45b7 | ||
|
|
ea6eb1368c | ||
|
|
28f94df354 | ||
|
|
e5812ed09a | ||
|
|
08eac475d1 | ||
|
|
306f7fdab7 | ||
|
|
4257dac83e | ||
|
|
ef8294adb3 |
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -14,6 +14,7 @@
|
||||
|
||||
<!--- Put an `x` in all the boxes that apply: -->
|
||||
|
||||
- [ ] 🖼️ New icon
|
||||
- [ ] ✨ New feature (non-breaking change which adds functionality)
|
||||
- [ ] 🛠️ Bug fix (non-breaking change which fixes an issue)
|
||||
- [ ] ❌ Breaking change (fix or feature that would cause existing functionality to change)
|
||||
|
||||
8
.github/workflows/ci.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: Flutter CI
|
||||
name: release
|
||||
|
||||
# This workflow is triggered on pushes to the repository.
|
||||
on:
|
||||
@@ -25,7 +25,7 @@ jobs:
|
||||
- uses: subosito/flutter-action@v2
|
||||
with:
|
||||
channel: "stable"
|
||||
flutter-version: "3.7.3"
|
||||
flutter-version: "3.13.4"
|
||||
|
||||
# Fetch sub modules
|
||||
- run: git submodule update --init --recursive
|
||||
@@ -41,7 +41,7 @@ jobs:
|
||||
|
||||
# Build independent apk.
|
||||
- name: Build
|
||||
run: flutter build apk --release --flavor independent && mv build/app/outputs/flutter-apk/app-independent-release.apk build/app/outputs/flutter-apk/ente-auth.apk
|
||||
run: flutter build apk --release --flavor independent --dart-define=app.flavor=independent && mv build/app/outputs/flutter-apk/app-independent-release.apk build/app/outputs/flutter-apk/ente-auth.apk
|
||||
env:
|
||||
SIGNING_KEY_PATH: "/home/runner/work/_temp/keystore/ente_auth_key.jks"
|
||||
SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
|
||||
@@ -50,7 +50,7 @@ jobs:
|
||||
|
||||
# Build Play store aab.
|
||||
- name: Build
|
||||
run: flutter build appbundle --release --flavor playstore
|
||||
run: flutter build appbundle --release --flavor playstore --dart-define=app.flavor=playstore
|
||||
env:
|
||||
SIGNING_KEY_PATH: "/home/runner/work/_temp/keystore/ente_auth_key.jks"
|
||||
SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
|
||||
|
||||
3
.gitmodules
vendored
@@ -6,3 +6,6 @@
|
||||
path = flutter
|
||||
url = https://github.com/flutter/flutter.git
|
||||
branch = stable
|
||||
[submodule "assets/simple-icons"]
|
||||
path = assets/simple-icons
|
||||
url = https://github.com/simple-icons/simple-icons.git
|
||||
|
||||
56
CONTRIBUTING.md
Normal file
@@ -0,0 +1,56 @@
|
||||
# Contributing
|
||||
|
||||
Thank you for showing interest in contributing to ente Authenticator. There are a couple of ways to help
|
||||
out. This document contains some general guidelines for each type of
|
||||
contribution.
|
||||
|
||||
|
||||
## Translations
|
||||
[](https://crowdin.com/project/ente-authenticator-app)
|
||||
|
||||
We use [Crowdin](https://crowdin.com/project/ente-authenticator-app) to crowdsource
|
||||
translations of ente Authenticator.
|
||||
If your language is not listed for translation, feel free to [create a GitHub issue](https://github.com/ente-io/auth/issues/new?title=Request+for+New+Language+Translation&body=Language+name%3A) to have it added.
|
||||
|
||||
## Icons
|
||||
|
||||
ente Auth supports the icon pack provided by
|
||||
[simple-icons](https://github.com/simple-icons/simple-icons).
|
||||
|
||||
If you would like to add your own custom icon, please open a pull-request
|
||||
with the relevant SVG and color
|
||||
code ([example PR](https://github.com/ente-io/auth/pull/213/files)).
|
||||
|
||||
|
||||
## Development
|
||||
|
||||
If you're planning on adding a new feature or making other changes, please
|
||||
discuss it with us by creating [an
|
||||
issue](https://github.com/ente-io/auth/issues/new)
|
||||
on GitHub. Discussing your idea with us first ensures that everyone is on the
|
||||
same page before you start working on your change.
|
||||
|
||||
### 💻 Setup
|
||||
|
||||
1. [Install Flutter v3.10.6](https://flutter.dev/docs/get-started/install)
|
||||
2. Clone this repository with `git clone git@github.com:ente-io/auth.git`
|
||||
3. Pull in all submodules with `git submodule update --init --recursive`
|
||||
4. For Android, run
|
||||
```bash
|
||||
flutter run -t lib/main.dart --flavor independent
|
||||
```
|
||||
5. For iOS, run `flutter run`
|
||||
|
||||
|
||||
#### Localization
|
||||
If the feature requires adding new strings, you can do that by following these steps:
|
||||
|
||||
1. Add a new entry inside [app_en.arb](https://github.com/ente-io/auth/blob/main/lib/l10n/arb/app_en.arb) (Remember to save)
|
||||
2. In your dart file, add follwing import
|
||||
```dart
|
||||
import "package:ente_auth/l10n/l10n.dart";
|
||||
```
|
||||
3. Refer to the string using `context.l10n.<keyName>`. For example
|
||||
```dart
|
||||
context.l10n.account
|
||||
```
|
||||
54
README.md
@@ -1,5 +1,9 @@
|
||||
# ente Authenticator
|
||||
|
||||

|
||||
[](https://crowdin.com/project/ente-authenticator-app)
|
||||
[](https://matrix.to/#/#ente:matrix.org)
|
||||
|
||||
ente's Authenticator app helps you generate and store 2 step verification (2FA)
|
||||
tokens on your mobile devices.
|
||||
|
||||
@@ -25,22 +29,23 @@ your devices. Every new device you sign into will have access to these tokens.
|
||||
### Offline Mode
|
||||
|
||||
ente generates 2FA tokens offline, so your network connectivity will not get in
|
||||
the way of your workflow.
|
||||
the way of your workflow. If you wish to use the app without an account for e2ee
|
||||
backups, you can do that as well.
|
||||
|
||||
### Import and Export Tokens
|
||||
|
||||
You can add tokens to ente by one of the following methods:
|
||||
1. Scanning a QR code
|
||||
2. Manually entering (copy-pasting) a 2FA secret
|
||||
3. Bulk importing from a file that contains a list of codes in the following
|
||||
format:
|
||||
```
|
||||
otpauth://totp/provider.com:you@email.com?secret=YOUR_SECRET
|
||||
```
|
||||
The codes maybe separated by new lines or commas.
|
||||
3. Bulk importing from other popular 2FA apps and from a file that contains a list of codes in the following format:.
|
||||
```
|
||||
otpauth://totp/provider.com:you@email.com?secret=YOUR_SECRET
|
||||
```
|
||||
|
||||
You can also export the codes you have added to ente, to an **unencrypted** text
|
||||
file, that adheres to the above format.
|
||||
You can export the codes you have added to ente, to either an **encrypted** or
|
||||
plain text file. The encrypted backups can be accessed through the app, as well
|
||||
as a standalone CLI tool. [Read
|
||||
more](migration-guides/encrypted_export.md#how-to-use-the-exported-data).
|
||||
|
||||
|
||||
## 📲 Download
|
||||
@@ -71,16 +76,10 @@ src="https://ente.io/static/ed265c3abdcd3efa5e29f64b927bcb44/e230a/play-store-ba
|
||||
src="https://user-images.githubusercontent.com/1161789/154795157-c4468ff9-97fd-46f3-87fe-dca789d8733a.png">
|
||||
</a>
|
||||
|
||||
### Web
|
||||
### Web / Desktop
|
||||
|
||||
You can view your 2FA codes at [auth.ente.io](https://auth.ente.io). For adding or managing your secrets, please use our mobile app.
|
||||
|
||||
### Desktop
|
||||
|
||||
Support for desktop platforms (Linux, Windows and older Macs) is a [work in
|
||||
progress](https://github.com/ente-io/auth/tree/desktop).
|
||||
|
||||
Please ⭐ this repo to be notified of updates.
|
||||
|
||||
|
||||
## 🔩 Architecture
|
||||
@@ -89,7 +88,7 @@ The architecture that powers end-to-end encrypted storage and sync of your
|
||||
tokens has been documented [here](architecture/README.md).
|
||||
|
||||
|
||||
## 🧑💻 Building from source
|
||||
## 🧑💻 Build from source
|
||||
|
||||
1. [Install Flutter](https://flutter.dev/docs/get-started/install)
|
||||
2. Clone this repository with `git clone git@github.com:ente-io/auth.git`
|
||||
@@ -101,20 +100,27 @@ For maintainers, there is [additional documentation](RELEASES.md) on
|
||||
automatically publishing the main branch to App store, Play store and GitHub
|
||||
releases.
|
||||
|
||||
## 🙋♂️ Support
|
||||
|
||||
## 🧑🔧 Contribute
|
||||
|
||||
Please refer to our [contribution guide](./CONTRIBUTING.md) if you wish to add
|
||||
an icon, assist with translation, or develop new features.
|
||||
|
||||
You can also support us by giving this project a ⭐ star on GitHub or by leaving
|
||||
a review on
|
||||
[PlayStore](https://play.google.com/store/apps/details?id=io.ente.auth),
|
||||
[AppStore](https://apps.apple.com/us/app/ente-authenticator/id6444121398) or
|
||||
[AlternativeTo](https://alternativeto.net/software/ente-authenticator/).
|
||||
|
||||
|
||||
## 🙋♂️ Help
|
||||
|
||||
If you need help, please reach out to support@ente.io, and a human will get in
|
||||
touch with you.
|
||||
|
||||
If you have feature requests, please create a [GitHub issue](https://github.com/ente-io/auth/issues/).
|
||||
|
||||
If you wish to support us, please ⭐
|
||||
[star](https://github.com/ente-io/auth/stargazers) this project.
|
||||
|
||||
## 🙌 Translation
|
||||
[](https://crowdin.com/project/ente-authenticator-app)
|
||||
|
||||
If you're interested in helping out with translation, please visit our [Crowdin project](https://crowdin.com/project/ente-authenticator-app) to get started. Thank you for your support.
|
||||
|
||||
## 💜 Community
|
||||
|
||||
|
||||
@@ -24,6 +24,6 @@ subprojects {
|
||||
project.evaluationDependsOn(':app')
|
||||
}
|
||||
|
||||
task clean(type: Delete) {
|
||||
tasks.register("clean", Delete) {
|
||||
delete rootProject.buildDir
|
||||
}
|
||||
|
||||
1
assets/build/.last_build_id
Normal file
@@ -0,0 +1 @@
|
||||
f23611a675a8c9bc71eb16e8a1108cf8
|
||||
229
assets/custom-icons/_data/custom-icons.json
Normal file
@@ -0,0 +1,229 @@
|
||||
{
|
||||
"icons": [
|
||||
{
|
||||
"title": "3Commas"
|
||||
},
|
||||
{
|
||||
"title": "Addy.io",
|
||||
"slug": "addy_io"
|
||||
},
|
||||
{
|
||||
"title": "Anycoin Direct",
|
||||
"slug": "anycoindirect"
|
||||
},
|
||||
{
|
||||
"title": "AscendEX"
|
||||
},
|
||||
{
|
||||
"title": "BitMEX"
|
||||
},
|
||||
{
|
||||
"title": "Bitfinex"
|
||||
},
|
||||
{
|
||||
"title": "Bitvavo",
|
||||
"hex": "0051FF"
|
||||
},
|
||||
{
|
||||
"title": "Bitwarden"
|
||||
},
|
||||
{
|
||||
"title": "Bybit"
|
||||
},
|
||||
{
|
||||
"title": "Channel Island Hosting",
|
||||
"slug": "cih",
|
||||
"hex": "D14633"
|
||||
},
|
||||
{
|
||||
"title": "Cloudflare"
|
||||
},
|
||||
{
|
||||
"title": "Control D",
|
||||
"slug": "controld",
|
||||
"hex": "5FD800"
|
||||
},
|
||||
{
|
||||
"title": "ente",
|
||||
"hex": "1DB954"
|
||||
},
|
||||
{
|
||||
"title": "Filen",
|
||||
"hex": "858585"
|
||||
},
|
||||
{
|
||||
"title": "Firefox"
|
||||
},
|
||||
{
|
||||
"title": "GitHub",
|
||||
"hex": "858585"
|
||||
},
|
||||
{
|
||||
"title": "Google"
|
||||
},
|
||||
{
|
||||
"title": "ING"
|
||||
},
|
||||
{
|
||||
"title": "Instagram"
|
||||
},
|
||||
{
|
||||
"title": "Jagex",
|
||||
"hex": "D3D800"
|
||||
},
|
||||
{
|
||||
"title": "KPN",
|
||||
"color": "00CC00"
|
||||
},
|
||||
{
|
||||
"title": "Kick",
|
||||
"hex": "53FC19"
|
||||
},
|
||||
{
|
||||
"title": "Kraken",
|
||||
"hex": "5848D5"
|
||||
},
|
||||
{
|
||||
"title": "Kronos"
|
||||
},
|
||||
{
|
||||
"title": "KuCoin",
|
||||
"hex": "01BC8D"
|
||||
},
|
||||
{
|
||||
"title": "La Poste",
|
||||
"slug": "laposte"
|
||||
},
|
||||
{
|
||||
"title": "Microsoft"
|
||||
},
|
||||
{
|
||||
"title": "ngrok",
|
||||
"hex": "858585"
|
||||
},
|
||||
{
|
||||
"title": "Njalla"
|
||||
},
|
||||
{
|
||||
"title": "Notion"
|
||||
},
|
||||
{
|
||||
"title": "NVIDIA"
|
||||
},
|
||||
{
|
||||
"title": "Odido"
|
||||
},
|
||||
{
|
||||
"title": "Parsec"
|
||||
},
|
||||
{
|
||||
"title": "PayPal"
|
||||
},
|
||||
{
|
||||
"title": "Peerberry",
|
||||
"hex": "03E5A5"
|
||||
},
|
||||
{
|
||||
"title": "Plutus",
|
||||
"hex": "DEC685"
|
||||
},
|
||||
{
|
||||
"title": "Poloniex"
|
||||
},
|
||||
{
|
||||
"title": "Porkbun",
|
||||
"hex": "F27777"
|
||||
},
|
||||
{
|
||||
"title": "PostNL",
|
||||
"color": "EF8300"
|
||||
},
|
||||
{
|
||||
"title": "Privacy Guides",
|
||||
"slug": "privacyguides"
|
||||
},
|
||||
{
|
||||
"title": "Privacy.com",
|
||||
"slug": "privacy"
|
||||
},
|
||||
{
|
||||
"title": "Proton"
|
||||
},
|
||||
{
|
||||
"title": "Revolt",
|
||||
"hex": "858585"
|
||||
},
|
||||
{
|
||||
"title": "SimpleLogin"
|
||||
},
|
||||
{
|
||||
"title": "Snapchat"
|
||||
},
|
||||
{
|
||||
"title": "Standard Notes",
|
||||
"slug": "standardnotes",
|
||||
"hex": "2173E6"
|
||||
},
|
||||
{
|
||||
"title": "Techlore"
|
||||
},
|
||||
{
|
||||
"title": "Termius",
|
||||
"hex": "858585"
|
||||
},
|
||||
{
|
||||
"title": "Trading 212",
|
||||
"slug": "trading212",
|
||||
"hex": "4BA4DE"
|
||||
},
|
||||
{
|
||||
"title": "TradingView"
|
||||
},
|
||||
{
|
||||
"title": "TransIP"
|
||||
},
|
||||
{
|
||||
"title": "Tresorit"
|
||||
},
|
||||
{
|
||||
"title": "Tweakers"
|
||||
},
|
||||
{
|
||||
"title": "Twingate",
|
||||
"hex": "858585"
|
||||
},
|
||||
{
|
||||
"title": "Twitter",
|
||||
"slug": "x"
|
||||
},
|
||||
{
|
||||
"title": "Ubisoft",
|
||||
"hex": "4285f4"
|
||||
},
|
||||
{
|
||||
"title": "Unity",
|
||||
"hex": "858585"
|
||||
},
|
||||
{
|
||||
"title": "WHMCS"
|
||||
},
|
||||
{
|
||||
"title": "Windscribe",
|
||||
"hex": "858585"
|
||||
},
|
||||
{
|
||||
"title": "Wise"
|
||||
},
|
||||
{
|
||||
"title": "X"
|
||||
},
|
||||
{
|
||||
"title": "NextDNS"
|
||||
},
|
||||
{
|
||||
"title": "Skiff",
|
||||
"hex": "EF5A3C"
|
||||
}
|
||||
|
||||
]
|
||||
}
|
||||
3
assets/custom-icons/icons/3commas.svg
Normal file
|
After Width: | Height: | Size: 21 KiB |
3
assets/custom-icons/icons/addy_io.svg
Normal file
|
After Width: | Height: | Size: 28 KiB |
6
assets/custom-icons/icons/anycoindirect.svg
Normal file
@@ -0,0 +1,6 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" aria-label="Orcid" role="img" version="1.1" viewBox="0.79 51.26 510.85 401.95">
|
||||
<g transform="matrix(1.8847 0 0 1.8847 -226.47 142.44)">
|
||||
<path d="m210.18 163.64c-14.707-2.2926-31.751-9.0578-44.305-17.585-2.8482-1.9348-8.7317-6.9155-13.075-11.068-21.324-20.391-32.22-46.1-32.22-76.022 0-17.205 2.7096-29.835 9.5175-44.363 5.8047-12.387 10.213-18.754 20.167-29.132 13.999-14.594 31.147-24.495 51.284-29.609 11.441-2.9055 37.22-2.9624 48.711-0.1076 40.087 9.9595 70.882 41.824 79.154 81.902 1.9229 9.3165 2.1434 16.351 2.157 68.808l0.0151 58.431-36.249-0.63384-0.57539-10.345c-0.69065-12.418-1.4635-12.921-10.457-6.8047-8.8696 6.0316-21.846 11.745-32.623 14.363-10.811 2.6264-31.592 3.7112-41.501 2.1665zm37.596-39.57c11.397-3.9634 19.648-9.2846 27.823-17.943 23.762-25.167 25.535-62.553 4.2627-89.883-24.032-30.876-70.734-34.898-99.77-8.5916-9.161 8.2997-14.976 17.186-19.235 29.396-8.3593 23.965-2.0768 51.448 15.95 69.775 10.466 10.64 20.214 15.985 35.674 19.561 9.7042 2.2446 25.084 1.2359 35.294-2.3148z" fill="#0b0b0b" stroke-width="1.1508"></path>
|
||||
<ellipse cx="368.88" cy="-25.341" rx="22.749" ry="23.037" fill="#4b72e6" stroke-width=".91944"></ellipse>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
5
assets/custom-icons/icons/ascendex.svg
Normal file
@@ -0,0 +1,5 @@
|
||||
<svg viewBox="0 0 260 175" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
|
||||
<path d="M247.29 1.26445C240.845 -1.34875 233.551 0.084293 228.633 4.9735L164.605 68.6175V103.179L233.212 35.0674V148.615H119.235L106.09 127.457L60.2109 173.061H240.76C250.173 173.061 257.805 165.474 257.805 156.118V17.0279C257.805 10.1156 253.65 3.96194 247.29 1.26445Z" fill="#2C2236"/>
|
||||
<path d="M59.448 148.615L135.009 73.5067V143.642H159.602V55.3829C159.602 48.4706 155.447 42.3169 149.086 39.7037C142.641 37.0905 135.348 38.5236 130.429 43.4128L0 173.061H53.0028L77.5961 148.615H59.448Z" fill="#2C2236"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 593 B |
1
assets/custom-icons/icons/bitfinex.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100.1"><path d="M3.7 85.5c4.6 4.9 29.9 28.2 69.7 1.2 28.7-22.3 28.1-70.9 25.3-85.6 0 0-.2 0-.5-.2C96.9 4 63.9 76.4 3.7 85.5zM98.1 1.1C93.3.4 58.8-2.5 24.8 19.5 2.2 34.1-.9 55.5.1 69.6c52.8-5.8 96.1-66 98-68.5z" fill="#a3bf00"/></svg>
|
||||
|
After Width: | Height: | Size: 290 B |
1
assets/custom-icons/icons/bitmex.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg viewBox="0 0 312.41 195.69" xmlns="http://www.w3.org/2000/svg"><path d="M107.52 0h118.16a7.78 7.78 0 01-1.55 4.32c-4 6.86-7.6 14-11.53 20.86-5.6 9.82-10.76 19.88-16.41 29.69-3.58 7.06-7.62 13.9-11.44 20.84h-68.88c-1.2 0-2.39.06-3.59.13-1 2.64-2.66 5-4 7.43-1.75 2.84-3.17 5.87-4.9 8.71-1.83 3.82-4.36 7.24-6.2 11-3.8 6.45-7.35 13-11.07 19.52q-5.82 10-11.38 20.28c-1.57 2.43-3 4.94-4.33 7.51-7.77 13.57-15.29 27.21-23.07 40.71a16.39 16.39 0 01-2.58 4c-13.3-.09-26.6 0-39.9 0a20.34 20.34 0 00-4.85.68c0-3.68 2.46-6.62 4.12-9.68 2-4.15 4.67-8 6.68-12.16 15.94-28.52 31.71-57.14 47.6-85.68 3.6-6.2 6.69-12.53 10.31-18.61 4.52-8 8.73-16.18 13.44-24.09 1.5-3.31 3.52-6.34 5.17-9.57 5.86-10.43 11.61-20.92 17.45-31.35A18.11 18.11 0 01107.52 0z" fill="#eb4a60"/><path d="M244.44 42c7.87-13.75 15.47-27.65 23.45-41.34h42.68a8.82 8.82 0 011.84.29c-1.42 2.15-2.61 4.43-3.86 6.67q-15.44 27.71-30.79 55.45c-4.3 7.53-8.3 15.23-12.66 22.72l-.43.15-.08.94q-30.1 54-60 108.08Q145.82 195 87 195c2.23-4.66 4.87-9.11 7.35-13.64 11.2-20.57 22.65-40.91 33.65-61.43q36.1-.06 72.22 0C215.09 94 229.64 67.93 244.4 42z" fill="#595fb5"/></svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
3
assets/custom-icons/icons/bitvavo.svg
Normal file
|
After Width: | Height: | Size: 13 KiB |
11
assets/custom-icons/icons/bitwarden.svg
Normal file
@@ -0,0 +1,11 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_8_67)">
|
||||
<path d="M500 421.875C500 465.039 465.039 500 421.875 500H78.125C34.9609 500 0 465.039 0 421.875V78.125C0 34.9609 34.9609 0 78.125 0H421.875C465.039 0 500 34.9609 500 78.125V421.875Z" fill="#175DDC"/>
|
||||
<path d="M405.176 62.793C402.002 59.6191 398.242 58.0566 393.945 58.0566H106.055C101.709 58.0566 97.998 59.6191 94.8242 62.793C91.6504 65.9668 90.0879 69.7266 90.0879 74.0234V265.967C90.0879 280.273 92.8711 294.482 98.4375 308.594C104.004 322.656 110.938 335.156 119.189 346.094C127.441 356.982 137.256 367.627 148.682 377.978C160.107 388.33 170.654 396.875 180.273 403.711C189.941 410.547 200 416.992 210.498 423.096C220.996 429.199 228.467 433.301 232.861 435.449C237.256 437.598 240.82 439.307 243.457 440.43C245.459 441.406 247.607 441.943 249.951 441.943C252.295 441.943 254.443 441.455 256.445 440.43C259.131 439.258 262.646 437.598 267.09 435.449C271.484 433.301 278.955 429.15 289.453 423.096C299.951 416.992 310.01 410.547 319.678 403.711C329.346 396.875 339.893 388.281 351.318 377.978C362.744 367.627 372.559 357.031 380.811 346.094C389.063 335.156 395.947 322.705 401.563 308.594C407.129 294.531 409.912 280.322 409.912 265.967V74.0723C409.961 69.7266 408.35 65.9668 405.176 62.793ZM368.066 267.773C368.066 337.256 250 397.119 250 397.119V99.1699H368.066C368.066 99.1699 368.066 198.291 368.066 267.773Z" fill="white"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_8_67">
|
||||
<rect width="500" height="500" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
7
assets/custom-icons/icons/bybit.svg
Normal file
@@ -0,0 +1,7 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 3 87 29">
|
||||
<path d="M62.0083 25.3572V3H66.5022V25.3572H62.0083Z" fill="#F7A600"></path>
|
||||
<path d="M9.63407 31.9983H0V9.64111H9.24666C13.7406 9.64111 16.3591 12.0903 16.3591 15.9214C16.3591 18.4013 14.6774 20.0039 13.5134 20.5375C14.9028 21.1652 16.6813 22.5779 16.6813 25.5624C16.6813 29.7373 13.7406 31.9983 9.63407 31.9983ZM8.89096 13.5355H4.4939V18.6852H8.89096C10.7981 18.6852 11.8652 17.6488 11.8652 16.1095C11.8652 14.5719 10.7981 13.5355 8.89096 13.5355ZM9.18151 22.6104H4.4939V28.1056H9.18151C11.2189 28.1056 12.1874 26.8503 12.1874 25.3418C12.1874 23.835 11.2171 22.6104 9.18151 22.6104Z" fill="white"></path>
|
||||
<path d="M30.3882 22.8293V31.9983H25.926V22.8293L19.0073 9.64111H23.8886L28.1888 18.6527L32.4239 9.64111H37.3052L30.3882 22.8293Z" fill="white"></path>
|
||||
<path d="M50.0457 31.9983H40.4116V9.64111H49.6583C54.1522 9.64111 56.7707 12.0903 56.7707 15.9214C56.7707 18.4013 55.089 20.0039 53.925 20.5375C55.3144 21.1652 57.093 22.5779 57.093 25.5624C57.093 29.7373 54.1522 31.9983 50.0457 31.9983ZM49.3026 13.5355H44.9055V18.6852H49.3026C51.2097 18.6852 52.2768 17.6488 52.2768 16.1095C52.2768 14.5719 51.2097 13.5355 49.3026 13.5355ZM49.5931 22.6104H44.9055V28.1056H49.5931C51.6305 28.1056 52.599 26.8503 52.599 25.3418C52.599 23.835 51.6305 22.6104 49.5931 22.6104Z" fill="white"></path>
|
||||
<path d="M80.986 13.5355V32H76.4921V13.5355H70.4785V9.64111H86.9996V13.5355H80.986Z" fill="white"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
1
assets/custom-icons/icons/cih.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid meet" viewBox="1 0 385.87 107"><g transform="translate(0.000000,107.000000) scale(0.100000,-0.100000)"><path d="M10 535 l0 -535 535 0 535 0 0 535 0 535 -535 0 -535 0 0 -535z m360 255 c58 -17 61 -21 48 -63 -9 -28 -16 -36 -27 -31 -9 3 -33 10 -55 15 -51 13 -104 -13 -128 -61 -23 -46 -24 -159 -2 -206 28 -58 97 -79 173 -53 37 13 37 14 45 -28 7 -28 4 -33 -23 -47 -37 -20 -140 -21 -184 -2 -122 51 -157 287 -62 413 48 62 132 87 215 63z m188 -242 l2 -238 -45 0 -45 0 0 233 c0 129 3 237 7 241 4 4 23 6 43 4 l35 -3 3 -237z m152 147 l0 -95 85 0 85 0 0 95 0 95 40 0 40 0 0 -240 0 -240 -40 0 -40 0 0 105 0 105 -85 0 -85 0 0 -105 0 -105 -40 0 -40 0 0 240 0 240 40 0 40 0 0 -95z" /></g></svg>
|
||||
|
After Width: | Height: | Size: 761 B |
4
assets/custom-icons/icons/cloudflare.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M341.368 359.947L343.921 351.059C346.952 340.494 345.83 330.743 340.724 323.556C335.951 316.944 328.172 313.063 318.652 312.608L138.423 310.308C137.857 310.3 137.302 310.155 136.805 309.885C136.307 309.614 135.882 309.228 135.566 308.757C135.249 308.286 135.051 307.746 134.988 307.182C134.924 306.617 134.998 306.046 135.202 305.517C135.508 304.63 136.067 303.853 136.809 303.282C137.552 302.711 138.445 302.372 139.377 302.306L321.348 299.911C342.824 298.929 366.304 281.344 374.488 259.879L384.844 232.664C385.138 231.9 385.284 231.087 385.274 230.268C385.262 229.833 385.214 229.401 385.131 228.974C379.481 203.66 365.746 180.894 346.018 164.141C326.29 147.388 301.649 137.566 275.848 136.172C250.046 134.778 224.498 141.887 203.093 156.417C181.687 170.947 165.598 192.102 157.274 216.66C148.437 210.066 137.785 206.379 126.778 206.106C115.772 205.833 104.951 208.986 95.8004 215.133C86.65 221.28 79.6189 230.12 75.6722 240.44C71.7255 250.759 71.0566 262.051 73.7573 272.768C63.0348 273.046 52.4935 275.608 42.8317 280.285C33.17 284.962 24.6082 291.646 17.7136 299.896C10.819 308.145 5.74894 317.771 2.83918 328.136C-0.0705683 338.501 -0.753564 349.369 0.835439 360.019C0.950401 360.859 1.36372 361.63 1.9994 362.189C2.63508 362.748 3.45038 363.058 4.29541 363.061H337.145C338.089 363.071 339.012 362.772 339.773 362.211C340.535 361.649 341.094 360.855 341.368 359.947Z" fill="#F4801F"/>
|
||||
<path d="M401.428 234.724C399.838 234.724 398.167 234.772 396.417 234.868C396.155 234.875 395.896 234.932 395.654 235.035C395.218 235.18 394.824 235.431 394.508 235.765C394.192 236.1 393.962 236.507 393.84 236.952L386.682 261.532C383.627 272.097 384.749 281.847 389.879 289.034C392.471 292.435 395.808 295.191 399.632 297.09C403.455 298.989 407.662 299.978 411.928 299.983L450.369 302.378C450.907 302.395 451.433 302.538 451.905 302.796C452.378 303.054 452.783 303.42 453.089 303.864C453.414 304.338 453.62 304.884 453.691 305.455C453.761 306.026 453.694 306.606 453.495 307.146C453.189 308.033 452.63 308.81 451.887 309.381C451.145 309.951 450.252 310.29 449.319 310.356L409.398 312.752C387.708 313.758 364.347 331.318 356.162 352.76L353.275 360.33C353.154 360.647 353.11 360.988 353.145 361.326C353.181 361.663 353.295 361.987 353.478 362.272C353.662 362.557 353.91 362.794 354.202 362.965C354.495 363.135 354.823 363.234 355.16 363.253H492.676C493.514 363.273 494.335 363.007 495.002 362.497C495.67 361.988 496.146 361.266 496.351 360.45C500.45 345.742 501.106 330.281 498.266 315.276C495.427 300.271 489.169 286.129 479.982 273.955C470.796 261.781 458.929 251.905 445.31 245.099C431.691 238.294 416.689 234.743 401.476 234.724H401.428Z" fill="#F9AB41"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.7 KiB |
3
assets/custom-icons/icons/controld.svg
Normal file
|
After Width: | Height: | Size: 10 KiB |
3
assets/custom-icons/icons/ente.svg
Normal file
@@ -0,0 +1,3 @@
|
||||
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M4.06803 7.096C3.33203 7.096 2.68403 6.952 2.12403 6.664C1.57203 6.376 1.14403 5.984 0.840033 5.488C0.536033 4.984 0.384033 4.412 0.384033 3.772C0.384033 3.124 0.532033 2.552 0.828033 2.056C1.13203 1.552 1.54403 1.16 2.06403 0.879997C2.58403 0.591998 3.17203 0.447998 3.82803 0.447998C4.46003 0.447998 5.02803 0.583998 5.53203 0.855998C6.04403 1.12 6.44803 1.504 6.74403 2.008C7.04003 2.504 7.18803 3.1 7.18803 3.796C7.18803 3.868 7.18403 3.952 7.17603 4.048C7.16803 4.136 7.16003 4.22 7.15203 4.3H1.90803V3.208H6.16803L5.44803 3.532C5.44803 3.196 5.38003 2.904 5.24403 2.656C5.10803 2.408 4.92003 2.216 4.68003 2.08C4.44003 1.936 4.16003 1.864 3.84003 1.864C3.52003 1.864 3.23603 1.936 2.98803 2.08C2.74803 2.216 2.56003 2.412 2.42403 2.668C2.28803 2.916 2.22003 3.212 2.22003 3.556V3.844C2.22003 4.196 2.29603 4.508 2.44803 4.78C2.60803 5.044 2.82803 5.248 3.10803 5.392C3.39603 5.528 3.73203 5.596 4.11603 5.596C4.46003 5.596 4.76003 5.544 5.01603 5.44C5.28003 5.336 5.52003 5.18 5.73603 4.972L6.73203 6.052C6.43603 6.388 6.06403 6.648 5.61603 6.832C5.16803 7.008 4.65203 7.096 4.06803 7.096Z" fill="black" style="fill:black;fill:black;fill-opacity:1;"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
1
assets/custom-icons/icons/filen.svg
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?><svg id="Ebene_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 499.35 499.35"><defs><style>.cls-1{fill-rule:evenodd;}</style></defs><g id="Ebene_1-2"><path id="Ellipse-Copy-Difference-Union-2" class="cls-1" d="M249.67,0C111.79,0,0,111.79,0,249.67s111.79,249.67,249.67,249.67,249.67-111.79,249.67-249.67S387.56,0,249.67,0ZM116.67,77.19h155.67c5.37-8.57,14.92-14.27,25.82-14.27,16.81,0,30.48,13.61,30.48,30.48s-13.67,30.43-30.48,30.43c-11.07,0-20.77-5.91-26.09-14.75H99.86V406.87c0,.33,0,.54-.05,.87,15.35,14.54,32.76,26.85,51.75,36.45v-129.42c0-.27,.05-.49,.05-.76s.05-.49,.11-.76,.11-.49,.16-.76c.05-.27,.11-.49,.16-.76,.05-.27,.16-.49,.22-.76s.16-.49,.27-.76,.22-.49,.27-.71c.11-.27,.22-.49,.33-.71,.11-.22,.27-.43,.33-.71,.11-.27,.27-.43,.38-.65,.16-.22,.27-.43,.38-.65,.16-.22,.33-.38,.43-.65,.16-.22,.33-.38,.43-.6,.16-.22,.33-.38,.49-.6,.16-.22,.33-.38,.49-.54s.33-.33,.54-.54c.22-.16,.38-.33,.6-.49,.22-.16,.38-.33,.6-.49,.22-.16,.38-.33,.6-.43,.22-.16,.43-.33,.65-.38,.22-.16,.43-.27,.65-.38,.27-.11,.43-.27,.71-.33s.43-.22,.71-.33c.27-.11,.49-.22,.71-.33,.27-.11,.49-.16,.76-.27s.49-.16,.76-.22,.49-.16,.76-.22c.27-.05,.49-.11,.76-.16s.49-.11,.76-.11,.49-.05,.76-.11c.27,0,.49-.05,.76-.05h53.81c5.37-8.57,14.92-14.27,25.82-14.27,16.81,0,30.48,13.61,30.48,30.48s-13.61,30.48-30.48,30.48c-11.07,0-20.77-5.91-26.09-14.75h-37.26v123.56c0,.71-.05,1.41-.16,2.12,21.05,6.62,43.39,10.25,66.5,10.25,20.72,0,40.79-2.87,59.77-8.3v-165c-8.52-5.37-14.16-14.86-14.16-25.71,0-16.81,13.61-30.48,30.48-30.48s30.48,13.61,30.48,30.48c0,11.12-5.97,20.88-14.92,26.2v152.64c14.65-6.78,28.42-15.19,41.12-24.95v-154.43c0-.27,.05-.49,.05-.76s.05-.49,.11-.76c.05-.27,.11-.49,.16-.76s.11-.49,.16-.76,.16-.49,.22-.76c.11-.27,.16-.49,.27-.76s.16-.49,.27-.76,.22-.49,.33-.71c.11-.22,.27-.43,.33-.71,.11-.27,.27-.43,.38-.65s.27-.43,.38-.65c.16-.22,.33-.43,.43-.65s.33-.38,.43-.6c.16-.22,.33-.38,.49-.6,.16-.22,.33-.38,.54-.54s.33-.33,.54-.54c.22-.16,.38-.33,.6-.49,.22-.16,.38-.33,.6-.49,.22-.16,.38-.33,.65-.43,.22-.16,.43-.33,.65-.38,.22-.11,.43-.27,.65-.38,.22-.16,.43-.27,.71-.33,.27-.11,.43-.22,.71-.33s.49-.22,.71-.33c.27-.11,.49-.22,.76-.27,.27-.11,.49-.16,.76-.22s.49-.11,.76-.22c.27-.05,.49-.11,.76-.16,.27-.05,.49-.05,.76-.11s.49-.05,.76-.05,.49-.05,.76-.05h69.43v-3.04c0-54.51-20.02-104.36-53.16-142.55v68.56c0,.27-.05,.49-.05,.81s-.05,.49-.11,.76c-.05,.27-.11,.49-.16,.76s-.11,.49-.16,.76-.16,.49-.22,.76c-.11,.27-.16,.49-.27,.76s-.22,.49-.33,.76c-.11,.27-.22,.49-.33,.71-.11,.27-.27,.43-.33,.71s-.27,.43-.38,.71c-.16,.27-.27,.43-.38,.65-.16,.22-.33,.43-.43,.65-.16,.22-.33,.38-.49,.6-.16,.22-.33,.38-.49,.6-.16,.22-.33,.38-.54,.54s-.38,.33-.54,.54c-.22,.22-.38,.33-.6,.49-.22,.16-.38,.33-.6,.49-.22,.16-.38,.33-.65,.43-.22,.16-.43,.33-.65,.38-.27,.16-.43,.27-.71,.38s-.43,.27-.71,.33c-.27,.11-.49,.22-.71,.33-.27,.11-.49,.22-.76,.33s-.49,.16-.76,.27-.49,.16-.76,.22-.49,.11-.76,.16c-.27,.05-.49,.11-.76,.16-.27,.05-.49,.05-.81,.11s-.49,.05-.81,.05H183.44v32.38c8.9,5.32,14.81,15.02,14.81,26.14,0,16.81-13.61,30.48-30.48,30.48s-30.38-13.67-30.38-30.54c0-10.85,5.64-20.39,14.16-25.76v-49.47c0-.27,.05-.49,.05-.76s.05-.49,.11-.76,.11-.49,.16-.76,.11-.49,.16-.76,.16-.49,.22-.76,.16-.49,.27-.76,.22-.49,.27-.71c.11-.27,.22-.49,.33-.71s.27-.43,.33-.71c.11-.27,.27-.43,.38-.71,.16-.27,.27-.43,.38-.65,.16-.22,.33-.43,.43-.65,.16-.22,.33-.38,.43-.6,.16-.22,.33-.38,.49-.6s.33-.38,.49-.54l.54-.54c.22-.22,.38-.33,.6-.49s.38-.33,.6-.49,.38-.33,.6-.43c.22-.16,.43-.33,.65-.38,.22-.16,.43-.27,.65-.38,.27-.11,.43-.27,.71-.33s.43-.22,.71-.33,.49-.22,.71-.33c.27-.11,.49-.22,.76-.27s.49-.16,.76-.22,.49-.16,.76-.22,.49-.11,.76-.16c.27-.05,.49-.11,.76-.11s.49-.05,.76-.05,.49-.05,.76-.05h215.45V78.7c0-.49,0-.98,.05-1.46-36.78-28.53-82.83-45.4-132.89-45.4s-96.28,16.92-133.05,45.35h0ZM31.84,249.67c0-44.42,13.29-85.76,36.12-120.15v240.34c-22.84-34.44-36.12-75.78-36.12-120.2h0Zm432.85,34.88h-50.44v107.72c25.98-29.83,43.88-66.83,50.44-107.72Z"/></g></svg>
|
||||
|
After Width: | Height: | Size: 3.9 KiB |
112
assets/custom-icons/icons/firefox.svg
Normal file
@@ -0,0 +1,112 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_1_7)">
|
||||
<path d="M449.654 98.1278C404.468 38.6202 334.019 1.53338 259.925 0.0547762C201.883 -1.10346 161.778 16.3386 139.088 30.3608C169.446 12.7546 213.373 2.76876 251.835 3.26003C350.78 4.52365 457.038 71.8955 472.82 193.345C490.937 332.758 393.84 449.114 257.237 449.466C106.955 449.852 15.5524 316.787 39.4413 197.267C40.6343 191.299 40.0388 185.493 42.0276 179.853C43.166 158.838 51.1048 125.897 68.2302 92.2396C50.9267 101.192 28.8901 129.518 18.0097 155.755C2.32437 193.58 -3.20344 238.813 1.77266 281.848C2.14727 285.086 2.48657 288.317 2.91021 291.529C23.0382 409.89 125.845 500 249.662 500C387.921 500 500.001 387.654 500.001 249.068C500.001 192.404 481.256 140.133 449.654 98.1278Z" fill="url(#paint0_radial_1_7)"/>
|
||||
<g opacity="0.67">
|
||||
<path d="M449.654 98.1278C404.468 38.6202 334.019 1.53338 259.925 0.0547762C201.883 -1.10346 161.778 16.3386 139.088 30.3608C169.446 12.7546 213.373 2.76876 251.835 3.26003C350.78 4.52365 457.038 71.8955 472.82 193.345C490.937 332.758 393.84 449.114 257.237 449.466C106.955 449.852 15.5524 316.787 39.4413 197.267C40.6343 191.299 40.0388 185.493 42.0276 179.853C43.166 158.838 51.1048 125.897 68.2302 92.2396C50.9267 101.192 28.8901 129.518 18.0097 155.755C2.32437 193.58 -3.20344 238.813 1.77266 281.848C2.14727 285.086 2.48657 288.317 2.91021 291.529C23.0382 409.89 125.845 500 249.662 500C387.921 500 500.001 387.654 500.001 249.068C500.001 192.404 481.256 140.133 449.654 98.1278Z" fill="url(#paint1_radial_1_7)"/>
|
||||
</g>
|
||||
<path d="M449.654 98.1278C404.468 38.6202 334.019 1.53338 259.925 0.0547762C201.883 -1.10346 161.778 16.3386 139.088 30.3608C169.446 12.7546 213.373 2.76876 251.835 3.26003C350.78 4.52365 457.038 71.8955 472.82 193.345C490.937 332.758 393.84 449.114 257.237 449.466C106.955 449.852 15.5524 316.787 39.4413 197.267C40.6343 191.299 40.0388 185.493 42.0276 179.853C43.166 158.838 51.1048 125.897 68.2302 92.2396C50.9267 101.192 28.8901 129.518 18.0097 155.755C2.32437 193.58 -3.20344 238.813 1.77266 281.848C2.14727 285.086 2.48657 288.317 2.91021 291.529C23.0382 409.89 125.845 500 249.662 500C387.921 500 500.001 387.654 500.001 249.068C500.001 192.404 481.256 140.133 449.654 98.1278Z" fill="url(#paint2_radial_1_7)"/>
|
||||
<path d="M449.654 98.1278C404.468 38.6202 334.019 1.53338 259.925 0.0547762C201.883 -1.10346 161.778 16.3386 139.088 30.3608C169.446 12.7546 213.373 2.76876 251.835 3.26003C350.78 4.52365 457.038 71.8955 472.82 193.345C490.937 332.758 393.84 449.114 257.237 449.466C106.955 449.852 15.5524 316.787 39.4413 197.267C40.6343 191.299 40.0388 185.493 42.0276 179.853C43.166 158.838 51.1048 125.897 68.2302 92.2396C50.9267 101.192 28.8901 129.518 18.0097 155.755C2.32437 193.58 -3.20344 238.813 1.77266 281.848C2.14727 285.086 2.48657 288.317 2.91021 291.529C23.0382 409.89 125.845 500 249.662 500C387.921 500 500.001 387.654 500.001 249.068C500.001 192.404 481.256 140.133 449.654 98.1278Z" fill="url(#paint3_radial_1_7)"/>
|
||||
<path d="M449.654 98.1278C404.468 38.6202 334.019 1.53338 259.925 0.0547762C201.883 -1.10346 161.778 16.3386 139.088 30.3608C169.446 12.7546 213.373 2.76876 251.835 3.26003C350.78 4.52365 457.038 71.8955 472.82 193.345C490.937 332.758 393.84 449.114 257.237 449.466C106.955 449.852 15.5524 316.787 39.4413 197.267C40.6343 191.299 40.0388 185.493 42.0276 179.853C43.166 158.838 51.1048 125.897 68.2302 92.2396C50.9267 101.192 28.8901 129.518 18.0097 155.755C2.32437 193.58 -3.20344 238.813 1.77266 281.848C2.14727 285.086 2.48657 288.317 2.91021 291.529C23.0382 409.89 125.845 500 249.662 500C387.921 500 500.001 387.654 500.001 249.068C500.001 192.404 481.256 140.133 449.654 98.1278Z" fill="url(#paint4_radial_1_7)"/>
|
||||
<path d="M472.82 193.345C474.821 208.74 475.411 223.879 474.704 238.634C482.993 237.404 491.298 236.29 499.619 235.324C496.852 183.966 478.684 136.714 449.654 98.1278C404.468 38.6202 334.019 1.53338 259.925 0.0547762C201.883 -1.10346 161.778 16.3386 139.088 30.3608C169.447 12.7546 213.373 2.76876 251.835 3.26003C350.78 4.52365 457.038 71.8955 472.82 193.345Z" fill="url(#paint5_linear_1_7)"/>
|
||||
<path d="M478.906 186.412C464.837 59.4883 351.644 2.43711 251.835 3.25968C213.372 3.57668 169.447 12.7542 139.088 30.3605C124.907 39.1241 117.529 46.5463 116.84 47.2553C117.645 46.5872 120.05 44.6073 124.039 41.8694C124.17 41.7779 124.302 41.6883 124.433 41.5973C124.546 41.5201 124.665 41.4409 124.78 41.3627C139.252 31.3609 155.585 24.0969 172.857 19.0356C199.234 11.3059 227.794 8.71175 255.252 9.40176C368.133 15.9111 447.791 109.6 450.564 209.328C452.859 291.866 385.3 357.69 307.425 361.502C250.788 364.274 197.438 336.868 171.364 282.041C165.564 269.844 161.31 257.447 159.091 242.46C146.738 159.023 202.77 87.8675 254.153 70.2514C226.429 46.0376 156.976 47.68 105.282 85.7096C68.0543 113.097 43.9045 154.767 35.9036 204.479C29.8035 242.381 35.5487 281.798 50.5293 317C65.7937 352.87 90.6184 384.493 121.828 407.778C155.719 433.064 196.529 447.778 238.591 450.983C244.794 451.455 251.016 451.686 257.237 451.686C422.629 451.686 494.395 326.143 478.906 186.412Z" fill="url(#paint6_radial_1_7)"/>
|
||||
<path d="M478.906 186.412C464.837 59.4883 351.644 2.43711 251.835 3.25968C213.372 3.57668 169.447 12.7542 139.088 30.3605C124.907 39.1241 117.529 46.5463 116.84 47.2553C117.645 46.5872 120.05 44.6073 124.039 41.8694C124.17 41.7779 124.302 41.6883 124.433 41.5973C124.546 41.5201 124.665 41.4409 124.78 41.3627C139.252 31.3609 155.585 24.0969 172.857 19.0356C199.234 11.3059 227.794 8.71175 255.252 9.40176C368.133 15.9111 447.791 109.6 450.564 209.328C452.859 291.866 385.3 357.69 307.425 361.502C250.788 364.274 197.438 336.868 171.364 282.041C165.564 269.844 161.31 257.447 159.091 242.46C146.738 159.023 202.77 87.8675 254.153 70.2514C226.429 46.0376 156.976 47.68 105.282 85.7096C68.0543 113.097 43.9045 154.767 35.9036 204.479C29.8035 242.381 35.5487 281.798 50.5293 317C65.7937 352.87 90.6184 384.493 121.828 407.778C155.719 433.064 196.529 447.778 238.591 450.983C244.794 451.455 251.016 451.686 257.237 451.686C422.629 451.686 494.395 326.143 478.906 186.412Z" fill="url(#paint7_radial_1_7)"/>
|
||||
<path opacity="0.53" d="M478.906 186.412C464.837 59.4883 351.644 2.43711 251.835 3.25968C213.372 3.57668 169.447 12.7542 139.088 30.3605C124.907 39.1241 117.529 46.5463 116.84 47.2553C117.645 46.5872 120.05 44.6073 124.039 41.8694C124.17 41.7779 124.302 41.6883 124.433 41.5973C124.546 41.5201 124.665 41.4409 124.78 41.3627C139.252 31.3609 155.585 24.0969 172.857 19.0356C199.234 11.3059 227.794 8.71175 255.252 9.40176C368.133 15.9111 447.791 109.6 450.564 209.328C452.859 291.866 385.3 357.69 307.425 361.502C250.788 364.274 197.438 336.868 171.364 282.041C165.564 269.844 161.31 257.447 159.091 242.46C146.738 159.023 202.77 87.8675 254.153 70.2514C226.429 46.0376 156.976 47.68 105.282 85.7096C68.0543 113.097 43.9045 154.767 35.9036 204.479C29.8035 242.381 35.5487 281.798 50.5293 317C65.7937 352.87 90.6184 384.493 121.828 407.778C155.719 433.064 196.529 447.778 238.591 450.983C244.794 451.455 251.016 451.686 257.237 451.686C422.629 451.686 494.395 326.143 478.906 186.412Z" fill="url(#paint8_radial_1_7)"/>
|
||||
<path opacity="0.53" d="M478.906 186.412C464.837 59.4883 351.644 2.43711 251.835 3.25968C213.372 3.57668 169.447 12.7542 139.088 30.3605C124.907 39.1241 117.529 46.5463 116.84 47.2553C117.645 46.5872 120.05 44.6073 124.039 41.8694C124.17 41.7779 124.302 41.6883 124.433 41.5973C124.546 41.5201 124.665 41.4409 124.78 41.3627C139.252 31.3609 155.585 24.0969 172.857 19.0356C199.234 11.3059 227.794 8.71175 255.252 9.40176C368.133 15.9111 447.791 109.6 450.564 209.328C452.859 291.866 385.3 357.69 307.425 361.502C250.788 364.274 197.438 336.868 171.364 282.041C165.564 269.844 161.31 257.447 159.091 242.46C146.738 159.023 202.77 87.8675 254.153 70.2514C226.429 46.0376 156.976 47.68 105.282 85.7096C68.0543 113.097 43.9045 154.767 35.9036 204.479C29.8035 242.381 35.5487 281.798 50.5293 317C65.7937 352.87 90.6184 384.493 121.828 407.778C155.719 433.064 196.529 447.778 238.591 450.983C244.794 451.455 251.016 451.686 257.237 451.686C422.629 451.686 494.395 326.143 478.906 186.412Z" fill="url(#paint9_radial_1_7)"/>
|
||||
<path d="M307.425 361.503C414.316 355.001 460.052 266.526 462.918 203.72C467.395 105.643 409.2 -0.126533 255.252 9.40221C227.794 8.7122 199.234 11.3064 172.857 19.0361C149.734 26.107 133.674 35.352 124.78 41.3631C124.665 41.4427 124.547 41.5179 124.433 41.5978C124.294 41.6919 124.174 41.7775 124.039 41.8698C121.646 43.5471 119.305 45.302 117.019 47.1331C121.299 44.2048 174.389 12.8524 248.148 22.5325C336.512 34.1291 417.329 102.89 417.329 193.616C417.329 263.42 363.381 316.711 300.217 312.907C206.37 307.255 182.739 211.024 231.535 169.445C218.371 166.611 193.632 172.162 176.408 197.914C160.953 221.021 161.826 256.725 171.364 282.042C197.438 336.869 250.824 364.945 307.425 361.503Z" fill="url(#paint10_radial_1_7)"/>
|
||||
<path d="M449.653 98.128C442.953 89.3023 435.635 81.0359 427.892 73.24C421.681 66.6494 415.025 60.5769 408.035 54.9527C412.063 58.4828 415.94 62.1882 419.589 66.1366C433.126 80.7851 443.847 98.0902 450.1 117.036C463.157 156.595 462.305 206.1 437.378 244.983C407.672 291.317 359.312 314.19 307.033 313.076C304.773 313.086 302.503 313.045 300.216 312.907C206.371 307.254 182.739 211.024 231.536 169.446C218.37 166.611 193.633 172.163 176.409 197.914C160.954 221.021 161.826 256.725 171.365 282.041C165.564 269.845 161.31 257.448 159.092 242.461C146.739 159.024 202.771 87.8674 254.154 70.2515C226.43 46.0383 156.977 47.6807 105.282 85.7101C75.1598 107.87 53.6089 139.387 42.2367 176.943C43.9084 155.87 51.8685 124.396 68.2293 92.2397C50.9275 101.191 28.8895 129.518 18.011 155.754C2.32562 193.58 -3.20326 238.813 1.77207 281.848C2.14848 285.086 2.48726 288.317 2.91018 291.53C23.0374 409.89 125.845 500 249.663 500C387.921 500 500.002 387.654 500.002 249.068C500.002 192.404 481.256 140.134 449.653 98.128Z" fill="url(#paint11_linear_1_7)"/>
|
||||
<path d="M450.1 117.036C443.847 98.0897 433.126 80.7844 419.588 66.1372C403.638 48.8804 383.775 35.7674 362.749 25.5553C344.86 16.8673 326.178 10.0107 306.871 5.74991C272.289 -1.88175 236.008 -1.7464 203.338 5.14589C167.82 12.6389 136.586 28.0095 116.833 47.2254C131.645 38.2253 152.305 30.926 167.027 27.2063C235.343 9.94493 310.57 28.6413 361.858 77.8279C372.17 87.7169 381.417 98.7823 388.914 110.971C419.511 160.713 416.616 223.248 392.761 260.13C375.039 287.529 337.09 313.232 301.682 312.954C356.003 315.803 406.659 292.898 437.377 244.983C462.305 206.1 463.157 156.595 450.1 117.036Z" fill="url(#paint12_linear_1_7)"/>
|
||||
<path d="M450.1 117.036C443.847 98.0897 433.126 80.7844 419.588 66.1372C403.638 48.8804 383.775 35.7674 362.749 25.5553C344.86 16.8673 326.178 10.0107 306.871 5.74991C272.289 -1.88175 236.008 -1.7464 203.338 5.14589C167.82 12.6389 136.586 28.0095 116.833 47.2254C131.645 38.2253 152.305 30.926 167.027 27.2063C235.343 9.94493 310.57 28.6413 361.858 77.8279C372.17 87.7169 381.417 98.7823 388.914 110.971C419.511 160.713 416.616 223.248 392.761 260.13C375.039 287.529 337.09 313.232 301.682 312.954C356.003 315.803 406.659 292.898 437.377 244.983C462.305 206.1 463.157 156.595 450.1 117.036Z" fill="url(#paint13_linear_1_7)"/>
|
||||
</g>
|
||||
<defs>
|
||||
<radialGradient id="paint0_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(447.072 94.7143) scale(567.377 568.723)">
|
||||
<stop stop-color="#FFF44F"/>
|
||||
<stop offset="0.294852" stop-color="#FF980E"/>
|
||||
<stop offset="0.431521" stop-color="#FF5D36"/>
|
||||
<stop offset="0.530208" stop-color="#FF3750"/>
|
||||
<stop offset="0.749319" stop-color="#F5156C"/>
|
||||
<stop offset="0.76479" stop-color="#F1136E"/>
|
||||
<stop offset="0.880096" stop-color="#DA057A"/>
|
||||
<stop offset="0.952784" stop-color="#D2007F"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="paint1_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(41.434 118.242) scale(335.789 336.586)">
|
||||
<stop stop-color="#B5007F"/>
|
||||
<stop offset="1" stop-color="#F5156C" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="paint2_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(495.573 62.3537) scale(666.248 667.828)">
|
||||
<stop stop-color="#FFDD00" stop-opacity="0.6"/>
|
||||
<stop offset="0.0836672" stop-color="#FFD801" stop-opacity="0.524402"/>
|
||||
<stop offset="0.182244" stop-color="#FECA05" stop-opacity="0.435332"/>
|
||||
<stop offset="0.288366" stop-color="#FEB20C" stop-opacity="0.339445"/>
|
||||
<stop offset="0.399791" stop-color="#FD9115" stop-opacity="0.238766"/>
|
||||
<stop offset="0.515404" stop-color="#FB6621" stop-opacity="0.134303"/>
|
||||
<stop offset="0.632872" stop-color="#F9332F" stop-opacity="0.028164"/>
|
||||
<stop offset="0.664042" stop-color="#F92433" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="paint3_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(264.281 278.186) scale(859.512 861.552)">
|
||||
<stop offset="0.152849" stop-color="#960E18"/>
|
||||
<stop offset="0.20613" stop-color="#CC2335" stop-opacity="0.554139"/>
|
||||
<stop offset="0.249478" stop-color="#F13148" stop-opacity="0.191404"/>
|
||||
<stop offset="0.272351" stop-color="#FF3750" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="paint4_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(199.239 267.352) scale(859.512 861.552)">
|
||||
<stop offset="0.112906" stop-color="#960E18"/>
|
||||
<stop offset="0.189346" stop-color="#CC2335" stop-opacity="0.554139"/>
|
||||
<stop offset="0.251535" stop-color="#F13148" stop-opacity="0.191404"/>
|
||||
<stop offset="0.28435" stop-color="#FF3750" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<linearGradient id="paint5_linear_1_7" x1="286.442" y1="48.5943" x2="434.03" y2="303.619" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#FFBC04"/>
|
||||
<stop offset="0.259693" stop-color="#FFA202" stop-opacity="0.488604"/>
|
||||
<stop offset="0.507812" stop-color="#FF8E00" stop-opacity="0"/>
|
||||
</linearGradient>
|
||||
<radialGradient id="paint6_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(435.167 75.4991) scale(532.55 533.814)">
|
||||
<stop stop-color="#FF980E"/>
|
||||
<stop offset="0.295012" stop-color="#FF7139"/>
|
||||
<stop offset="0.484646" stop-color="#FF5B51"/>
|
||||
<stop offset="0.626002" stop-color="#FF4F5E"/>
|
||||
<stop offset="0.73652" stop-color="#FF4055"/>
|
||||
<stop offset="0.842829" stop-color="#FF3750"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="paint7_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(435.167 75.4991) scale(532.55 533.814)">
|
||||
<stop offset="0.0840745" stop-color="#FFDE08"/>
|
||||
<stop offset="0.208103" stop-color="#FFD609" stop-opacity="0.832008"/>
|
||||
<stop offset="0.40327" stop-color="#FFBF0B" stop-opacity="0.567662"/>
|
||||
<stop offset="0.643689" stop-color="#FF9B0F" stop-opacity="0.242024"/>
|
||||
<stop offset="0.822376" stop-color="#FF7B12" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="paint8_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(312.131 241.565) rotate(75.719) scale(261.769 272.613)">
|
||||
<stop offset="0.363381" stop-color="#FF3750"/>
|
||||
<stop offset="0.411136" stop-color="#FF444B" stop-opacity="0.789478"/>
|
||||
<stop offset="0.590223" stop-color="#FF7139" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="paint9_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(267.11 263.737) rotate(75.719) scale(261.769 261.454)">
|
||||
<stop offset="0.215889" stop-color="#FF3750" stop-opacity="0.8"/>
|
||||
<stop offset="0.270209" stop-color="#FF444B" stop-opacity="0.631583"/>
|
||||
<stop offset="0.473917" stop-color="#FF7139" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<radialGradient id="paint10_radial_1_7" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(541.45 15.2) scale(900.107 902.242)">
|
||||
<stop offset="0.0535657" stop-color="#FFF44F"/>
|
||||
<stop offset="0.457272" stop-color="#FF980E"/>
|
||||
<stop offset="0.52105" stop-color="#FF8424"/>
|
||||
<stop offset="0.587052" stop-color="#FF7634"/>
|
||||
<stop offset="0.639343" stop-color="#FF7139"/>
|
||||
</radialGradient>
|
||||
<linearGradient id="paint11_linear_1_7" x1="368.882" y1="44.1075" x2="112.796" y2="486.612" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#FFF44F" stop-opacity="0.8"/>
|
||||
<stop offset="0.75" stop-color="#FFF44F" stop-opacity="0"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint12_linear_1_7" x1="287.639" y1="314.472" x2="287.639" y2="3.17061" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#3A8EE6"/>
|
||||
<stop offset="0.235934" stop-color="#5C79F0"/>
|
||||
<stop offset="0.629327" stop-color="#9059FF"/>
|
||||
<stop offset="1" stop-color="#C139E6"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="paint13_linear_1_7" x1="173.353" y1="1.74342" x2="425.949" y2="253.742" gradientUnits="userSpaceOnUse">
|
||||
<stop offset="0.805429" stop-color="#9059FF" stop-opacity="0"/>
|
||||
<stop offset="1" stop-color="#6E008B" stop-opacity="0.5"/>
|
||||
</linearGradient>
|
||||
<clipPath id="clip0_1_7">
|
||||
<rect width="500" height="500" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 16 KiB |
1
assets/custom-icons/icons/github.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg>
|
||||
|
After Width: | Height: | Size: 822 B |
6
assets/custom-icons/icons/google.svg
Normal file
@@ -0,0 +1,6 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M495 255.682C495 237.955 493.409 220.909 490.455 204.545H255V301.364H389.545C383.636 332.5 365.909 358.864 339.318 376.591V439.545H420.455C467.727 395.909 495 331.818 495 255.682Z" fill="#4285F4"/>
|
||||
<path d="M254.998 499.999C322.498 499.999 379.089 477.727 420.453 439.545L339.317 376.59C317.044 391.59 288.635 400.681 254.998 400.681C189.998 400.681 134.771 356.818 114.998 297.727H31.8167V362.272C72.953 443.863 157.271 499.999 254.998 499.999Z" fill="#34A853"/>
|
||||
<path d="M115 297.499C110 282.499 107.045 266.59 107.045 249.999C107.045 233.408 110 217.499 115 202.499V137.953H31.8182C14.7727 171.59 5 209.544 5 249.999C5 290.453 14.7727 328.408 31.8182 362.044L96.5909 311.59L115 297.499Z" fill="#FBBC05"/>
|
||||
<path d="M254.998 99.5455C291.817 99.5455 324.544 112.273 350.68 136.818L422.271 65.2273C378.862 24.7727 322.498 0 254.998 0C157.271 0 72.953 56.1364 31.8167 137.955L114.998 202.5C134.771 143.409 189.998 99.5455 254.998 99.5455Z" fill="#EA4335"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
1
assets/custom-icons/icons/ing.svg
Normal file
|
After Width: | Height: | Size: 9.1 KiB |
19
assets/custom-icons/icons/instagram.svg
Normal file
|
After Width: | Height: | Size: 10 MiB |
1
assets/custom-icons/icons/jagex.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg class="c-banner__logo" viewBox="-1 -1 92 82" version="1.1" xmlns="http://www.w3.org/2000/svg"><polygon points="60.1999 0.5754 57.6142 5.7558 24.2762 72.1228 13.3222 72.1228 29.3572 40.1918 29.3432 40.1638 29.3522 40.1408 13.3462 8.2678 33.4892 8.2678 29.3882 0.0448 0.0002 0.0448 20.1542 40.1708 0.0002 80.2968 0.0232 80.2968 0.0002 80.3408 29.3882 80.3408 65.5952 8.2178 76.5512 8.2178 60.5132 40.1478 60.5282 40.1798 60.5182 40.2018 76.5302 72.0768 56.3842 72.0768 60.4872 80.2968 89.8752 80.2968 69.7202 40.1708 89.8752 0.0448 89.8542 0.0448 89.8752 -0.0002 60.4872 -0.0002"></polygon></svg>
|
||||
|
After Width: | Height: | Size: 599 B |
3
assets/custom-icons/icons/kick.svg
Normal file
|
After Width: | Height: | Size: 386 KiB |
3
assets/custom-icons/icons/kpn.svg
Normal file
|
After Width: | Height: | Size: 59 KiB |
3
assets/custom-icons/icons/kraken.svg
Normal file
|
After Width: | Height: | Size: 106 KiB |
1
assets/custom-icons/icons/kronos.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" enable-background="new 0 183 500 127" xml:space="preserve" viewBox="4.4 197.87 81.3 99.27"> <g> <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="35.9" y1="490.1" x2="35.9" y2="404" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <path fill="url(#SVGID_1_)" d="M19.1,242.1l13.3-5.6v-24.5c0-7.7-6.3-14-14-14l0,0c-7.7,0-14,6.3-14,14V235 		c0.3,0.1,0.6,0.3,0.9,0.4L19.1,242.1z"/> <linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="35.9" y1="344.1" x2="35.9" y2="296.6666" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <path fill="url(#SVGID_2_)" d="M4.4,278.7v4.4c0,7.7,6.3,14,14,14l0,0c7.7,0,14-6.3,14-14v-3.6l-14-6.8L4.4,278.7z"/> <linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="63.2" y1="408.4827" x2="166.9691" y2="408.4827" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <path fill="url(#SVGID_3_)" d="M52.7,258.2l23-9.7c8-3.4,12-11.9,9-19l0,0c-3-7.1-11.9-10.2-19.9-6.7l-32.3,13.7v12.1L52.7,258.2z"/> <linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="37.3" y1="403.2" x2="63.1711" y2="403.2" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <polygon fill="url(#SVGID_4_)" points="32.4,248.5 32.4,236.5 19.1,242.1 	"/> <linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="8.6" y1="344.85" x2="35.8632" y2="344.85" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <polygon fill="url(#SVGID_5_)" points="4.4,266.1 4.4,278.7 18.4,272.8 	"/> <linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="63.2" y1="335.0948" x2="167.0464" y2="335.0948" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <path fill="url(#SVGID_6_)" d="M76.5,269.7l-23.8-11.5l-20.3,8.6v12.7l31.9,15.4c7.7,3.7,16.7,1.1,20.1-5.8l0,0 		C87.7,282.1,84.2,273.4,76.5,269.7z"/> <linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="35.9" y1="343.3" x2="63.2" y2="343.3" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <polygon fill="url(#SVGID_7_)" points="18.4,272.8 32.4,279.5 32.4,266.8 	"/> <linearGradient id="SVGID_8_" gradientUnits="userSpaceOnUse" x1="8.6" y1="404.75" x2="37.3" y2="404.75" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <path fill="url(#SVGID_8_)" d="M19.1,242.1l-13.8-6.7c-0.3-0.2-0.6-0.3-0.9-0.4v13.3L19.1,242.1z"/> <linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="63.2" y1="373.6" x2="102.7" y2="373.6" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <polygon fill="url(#SVGID_9_)" points="32.4,266.8 52.7,258.2 32.4,248.5 	"/> <linearGradient id="SVGID_10_" gradientUnits="userSpaceOnUse" x1="35.9" y1="404" x2="35.9" y2="344.1" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <polygon fill="url(#SVGID_10_)" points="19.1,242.1 4.4,248.3 4.4,266.1 18.4,272.8 32.4,266.8 32.4,248.5 	"/> <linearGradient id="SVGID_11_" gradientUnits="userSpaceOnUse" x1="35.9" y1="490.1" x2="35.9" y2="296.6" gradientTransform="matrix(0.5128 0 0 -0.5128 -1.525879e-005 449.2308)"> <stop offset="0" style="stop-color:#0099FF"/> <stop offset="1" style="stop-color:#0033FF"/> </linearGradient> <path opacity="0.8" fill="url(#SVGID_11_)" enable-background="new " d="M4.4,211.9v71.2c0,7.7,6.3,14,14,14l0,0 		c7.7,0,14-6.3,14-14v-71.2c0-7.7-6.3-14-14-14l0,0C10.7,197.9,4.4,204.2,4.4,211.9z"/> </g> </svg>
|
||||
|
After Width: | Height: | Size: 4.7 KiB |
3
assets/custom-icons/icons/kucoin.svg
Normal file
|
After Width: | Height: | Size: 523 KiB |
3
assets/custom-icons/icons/laposte.svg
Normal file
@@ -0,0 +1,3 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M113.22 144.994L222.135 194.471H388.952L402.763 170.591C411.046 156.238 401.045 139 385.937 139H114.404C113.68 138.996 112.977 139.244 112.417 139.702C111.857 140.16 111.474 140.799 111.333 141.508C111.193 142.218 111.305 142.954 111.65 143.591C111.994 144.227 112.549 144.723 113.22 144.994ZM222.135 215.71H493.862C495.344 215.723 496.773 216.267 497.888 217.244C499.003 218.22 499.731 219.563 499.939 221.03C500.147 222.497 499.821 223.99 499.021 225.237C498.222 226.485 497.001 227.404 495.58 227.828L3.93325 360.885C3.24581 361.078 2.51276 361.027 1.85828 360.742C1.20379 360.457 0.668087 359.954 0.341912 359.319C0.0157368 358.684 -0.0808603 357.956 0.0684733 357.258C0.217807 356.561 0.603887 355.936 1.16134 355.49L222.135 215.71ZM263.114 357.759L84.8044 360.999L331.309 294.317L309.928 331.432C300.673 347.471 280.41 357.435 263.114 357.759Z" fill="#003DA5"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
13
assets/custom-icons/icons/microsoft.svg
Normal file
@@ -0,0 +1,13 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g clip-path="url(#clip0_120_68)">
|
||||
<path d="M0 0H238.095V238.095H0V0Z" fill="#F35325"/>
|
||||
<path d="M261.905 0H500V238.095H261.905V0Z" fill="#81BC06"/>
|
||||
<path d="M0 261.905H238.095V500H0V261.905Z" fill="#05A6F0"/>
|
||||
<path d="M261.905 261.905H500V500H261.905V261.905Z" fill="#FFBA08"/>
|
||||
</g>
|
||||
<defs>
|
||||
<clipPath id="clip0_120_68">
|
||||
<rect width="500" height="500" fill="white"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 493 B |
1
assets/custom-icons/icons/nextdns.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg height="512pt" viewBox="0 0 512 512" width="512pt" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><linearGradient id="a" gradientTransform="matrix(.43837115 .89879405 -.89879405 .43837115 0 0)">><stop offset="0" stop-color="#00a9ff"/><stop offset="1" stop-color="#05f"/></linearGradient><path d="m469.139 139.984-.016-.391c-.218-4.819-.363-9.919-.452-15.592-.409-27.666-22.402-50.55-50.071-52.097-57.69-3.219-102.319-22.031-140.45-59.198l-.326-.31c-12.437-11.404-31.199-11.404-43.64 0l-.326.31c-38.132 37.167-82.76 55.979-140.45 59.202-27.666 1.543-49.662 24.427-50.072 52.097-.084 5.635-.233 10.734-.452 15.588l-.023.907c-1.121 58.827-2.515 132.04 21.978 198.493 13.467 36.543 33.863 68.309 60.618 94.42 30.472 29.737 70.384 53.345 118.626 70.166 1.57.547 3.2.991 4.862 1.324 2.343.467 4.701.701 7.059.701s4.72-.234 7.059-.701c1.661-.333 3.304-.78 4.881-1.332 48.184-16.851 88.054-40.471 118.499-70.204 26.744-26.119 47.14-57.892 60.619-94.443 24.584-66.652 23.194-140.003 22.077-198.94z" fill="url(#a)"/></svg>
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
1
assets/custom-icons/icons/ngrok.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ngrok</title><path d="M18.951 7.598v6.713h1.463v-1.69l1.61 1.69H24v-.08l-2.123-2.153 2.002-1.846v-.07H21.95l-1.537 1.496v-4.06zm-2.93 2.41a2.626 2.626 0 00-1.787.635 2.049 2.049 0 00-.703 1.556c-.002.75.311 1.287.7 1.643.526.478 1.221.626 1.767.623.666 0 1.34-.195 1.805-.62.521-.483.713-1.029.713-1.607 0-.73-.31-1.247-.71-1.603-.553-.475-1.202-.628-1.785-.627zm-9.062.039c-1.188-.005-2.1.977-2.104 2.25-.004 1.296.908 2.108 2.032 2.096.664.002.983-.244 1.308-.541v1.193h-1.37l-1.03 1.158v.2H9.66v-6.24H8.195v.435c-.381-.408-.772-.542-1.236-.551zm-4.805.11l-.691.786v-.771H0v4.15h1.463v-2.799c.547.002 1.023-.002 1.49-.003v2.802h1.465v-2.595c-.004-.547-.1-.819-.307-1.061a1.431 1.431 0 00-.914-.51zm8.114.005v4.15h1.468l.002-2.779h1.065l1.164-1.314v-.057h-1.598l-.635.715v-.715zm-2.946 1.115c.504 0 .96.444.948.948a.956.956 0 01-.948.945c-.523 0-.931-.403-.947-.945-.002-.52.443-.94.947-.948zm8.703.001c.525 0 .94.434.944.95-.027.544-.42.95-.944.95s-.934-.417-.95-.95a.955.955 0 01.95-.95z"/></svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
4
assets/custom-icons/icons/njalla.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="5.77 -0.00 22.32 33.87">
|
||||
<polygon transform="matrix(.95184 0 0 .95184 -135.49 -8.5051)" points="156.53 25.555 160.28 17.221 167.88 34.983 171.86 34.983 160.35 8.9354 148.41 34.983 152.33 34.983" fill="#19d6ac" fill-rule="evenodd"></polygon>
|
||||
<path d="m15.203 24.793h3.4654v9.0737h-3.4654z" fill="#01051f" fill-rule="evenodd"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 409 B |
4
assets/custom-icons/icons/notion.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M348.185 1.98651C335.888 -0.838881 322.856 -0.18931 307.908 1.10769L61.7824 19.4822L61.5904 19.4969L61.459 19.5078C46.029 20.8632 32.37 27.1506 23.121 39.1599C14.4013 50.4814 12 63.8022 12 74.9404V348.014C12 367.649 19.4888 383.288 31.5785 399.623L31.7723 399.879L89.7367 476.12L89.8101 476.215C96.3914 484.701 104.432 492.043 115.735 496.225C126.186 500.092 137 500.293 146.936 499.813L147.02 499.809L147.177 499.8L147.253 499.796L433.252 482.287L433.303 482.284L433.436 482.275L433.517 482.27C448.807 481.169 464.24 476.661 475.101 464.16C485.703 451.959 487.694 436.935 487.694 425.047V117.831C487.694 108.11 485.351 98.6341 477.959 89.9565C473.589 84.8263 467.561 80.3871 462.902 76.9554L462.351 76.5496C461.668 76.0456 461.001 75.5537 460.339 75.0625L460.197 74.9568L459.961 74.7882L381.488 18.8742C371.335 11.4076 361.321 5.00502 348.185 1.98651Z" fill="white"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M309.904 25.9322L63.6284 44.3172C43.7692 46.0606 36.8488 59.1944 36.8488 74.9395V348.013C36.8488 360.281 41.1626 370.768 51.537 384.783L109.43 460.93C118.938 473.19 127.581 475.814 145.739 474.936L431.736 457.428C455.927 455.686 462.846 444.299 462.846 425.046V117.83C462.846 107.878 458.961 105.003 447.509 96.5273C446.879 96.0604 446.225 95.5772 445.55 95.0754L366.935 39.0622C347.927 25.063 340.146 23.3022 309.904 25.9322ZM152.223 112.792C128.873 114.389 123.567 114.753 110.307 103.832L76.587 76.7003C73.148 73.1924 74.8725 68.8153 83.5074 67.9473L320.274 50.4414C340.142 48.6869 350.509 55.7002 358.291 61.8231L398.9 91.5849C400.628 92.4566 404.942 97.7016 399.756 97.7016L155.237 112.586L152.223 112.792ZM124.988 422.415V161.6C124.988 150.224 128.444 144.969 138.807 144.086L419.627 127.462C429.152 126.587 433.466 132.718 433.466 144.086V403.151C433.466 414.537 431.734 424.178 416.173 425.046L147.45 440.809C131.898 441.675 124.988 436.433 124.988 422.415ZM390.272 175.591C391.995 183.476 390.272 191.354 382.481 192.241L369.532 194.856V387.406C358.291 393.531 347.924 397.033 339.286 397.033C325.455 397.033 321.991 392.653 311.632 379.532L226.94 244.746V375.155L253.739 381.286C253.739 381.286 253.739 397.033 232.117 397.033L172.511 400.538C170.779 397.033 172.511 388.287 178.557 386.535L194.111 382.164V209.74L172.513 207.986C170.783 200.101 175.095 188.731 187.202 187.85L251.146 183.48L339.286 320.021V199.232L316.814 196.618C315.088 186.978 321.991 179.979 330.634 179.111L390.272 175.591Z" fill="black"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.5 KiB |
3
assets/custom-icons/icons/nvidia.svg
Normal file
@@ -0,0 +1,3 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M51.085 226.924C51.085 226.924 96.2921 159.994 186.556 153.069V128.787C86.5773 136.844 0 221.814 0 221.814C0 221.814 49.0359 364.059 186.556 377.083V351.273C85.6371 338.533 51.085 226.924 51.085 226.924ZM186.556 299.942V323.58C110.284 309.935 89.1125 230.375 89.1125 230.375C89.1125 230.375 125.734 189.666 186.556 183.064V209.002C186.509 209.002 186.477 208.988 186.439 208.988C154.516 205.143 129.579 235.068 129.579 235.068C129.579 235.068 143.556 285.445 186.556 299.942ZM186.556 84V128.787C189.491 128.561 192.425 128.37 195.376 128.269C309.041 124.425 383.101 221.814 383.101 221.814C383.101 221.814 298.041 325.604 209.422 325.604C201.301 325.604 193.697 324.848 186.556 323.578V351.273C192.662 352.051 198.994 352.508 205.601 352.508C288.067 352.508 347.703 310.247 405.45 260.229C415.024 267.923 454.22 286.642 462.278 294.836C407.372 340.964 279.411 378.147 206.865 378.147C199.872 378.147 193.157 377.722 186.556 377.083V416H500V84H186.556ZM186.556 183.064V153.069C189.46 152.866 192.387 152.711 195.376 152.616C277.112 150.04 330.737 223.098 330.737 223.098C330.737 223.098 272.818 303.817 210.716 303.817C201.779 303.817 193.767 302.375 186.556 299.942V209.002C218.376 212.86 224.778 226.964 243.908 258.965L286.456 222.965C286.456 222.965 255.397 182.091 203.04 182.091C197.349 182.089 191.903 182.49 186.556 183.064Z" fill="#76B900"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
3
assets/custom-icons/icons/odido.svg
Normal file
|
After Width: | Height: | Size: 70 KiB |
1
assets/custom-icons/icons/parsec.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg width="1251" height="1942" viewBox="0 0 1251 1942" xmlns="http://www.w3.org/2000/svg"><g fillRule="nonzero" fill="none"><path d="M235.91 1333.56c53.54 32.86 786.2 484.26 786.2 484.26s76.62 60 153.83 22.79c77.21-37.21 74.06-112.61 74.06-122.49v-997s2.85-59.82-22.79-113.94c-28.91-61-68.27-93.36-111.09-119.64-42.82-26.28-743.48-458.62-743.48-458.62s-62.29-49.27-136.73-17.09C161.47 44.01 159 115.52 159 134.32v1078.14c.52 16.25 2.43 37.81 8.55 49.89 10.68 21.09 14.82 38.35 68.36 71.21zM487 487.37l436 267.87v607l-436-265V487.37z" fill="#26ABFF"/><path d="M0 1299.37c.52 16.25 2.43 39.2 8.55 51.27 10.68 21.1 14.82 38.36 68.36 71.22s786.2 484.25 786.2 484.25 76.62 60.06 153.83 22.79c77.21-37.27 74.06-112.61 74.06-122.49v-997s2.85-59.82-22.79-113.95c-28.91-61-68.27-93.36-111.09-119.64-42.82-26.28-743.48-458.6-743.48-458.6S151.35 68 76.91 100.12 0 203.82 0 222.61v1076.76zm327-723.71l436 267.87v607l-436-265V575.66z" fill="#F50049"/></g></svg>
|
||||
|
After Width: | Height: | Size: 949 B |
5
assets/custom-icons/icons/paypal.svg
Normal file
@@ -0,0 +1,5 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M446.258 230.173C434.83 295.328 381.676 344.578 311.926 344.578H267.645C258.614 344.578 249.514 352.94 248.072 362.188L228.68 485.284C227.555 492.294 224.272 494.623 217.172 494.623H145.945C138.743 494.623 137.039 492.214 138.118 485.114L146.298 399.986L60.8024 395.566C53.6116 395.566 51.0102 391.647 52.0325 384.467L110.366 14.5526C111.491 7.54283 115.853 4.53217 122.93 4.53217H270.871C342.087 4.53217 387.14 52.4756 392.65 114.643C435.023 143.273 454.834 181.366 446.269 230.162L446.258 230.173Z" fill="#001C64"/>
|
||||
<path d="M167.972 262.157L146.309 400L132.609 486.48C132.354 488.148 132.462 489.85 132.924 491.472C133.386 493.094 134.192 494.598 135.287 495.881C136.382 497.163 137.741 498.195 139.27 498.906C140.8 499.617 142.464 499.99 144.151 500H219.376C222.81 499.996 226.13 498.767 228.739 496.535C231.348 494.303 233.075 491.213 233.61 487.821L253.411 362.168C253.949 358.778 255.677 355.691 258.286 353.461C260.895 351.231 264.213 350.004 267.645 350.001H311.926C345.668 349.957 378.285 337.859 403.896 315.889C429.507 293.919 446.428 263.521 451.608 230.176C459.276 181.244 434.659 136.698 392.525 114.692C392.43 119.905 391.974 125.106 391.162 130.256C385.962 163.584 369.035 193.96 343.428 215.913C317.822 237.867 285.219 249.955 251.491 250.001H182.195C178.766 250.002 175.449 251.227 172.842 253.456C170.235 255.684 168.508 258.77 167.972 262.157Z" fill="#0070E0"/>
|
||||
<path d="M146.297 399.998H58.7005C57.0105 399.99 55.3422 399.617 53.8091 398.906C52.276 398.195 50.9144 397.161 49.8168 395.876C48.7193 394.591 47.9117 393.084 47.4491 391.458C46.9864 389.833 46.8797 388.126 47.1361 386.456L106.163 12.179C106.693 8.78702 108.418 5.6961 111.025 3.46315C113.633 1.23021 116.952 0.00205828 120.385 0H270.791C342.007 0 393.786 51.8289 392.57 114.621C373.615 104.841 352.565 99.8231 331.238 99.9995H205.846C202.412 100 199.091 101.226 196.48 103.456C193.869 105.687 192.139 108.775 191.601 112.167L167.972 262.155L146.297 399.998Z" fill="#003087"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.0 KiB |
3
assets/custom-icons/icons/peerberry.svg
Normal file
|
After Width: | Height: | Size: 36 KiB |
3
assets/custom-icons/icons/plutus.svg
Normal file
|
After Width: | Height: | Size: 671 KiB |
3
assets/custom-icons/icons/poloniex.svg
Normal file
|
After Width: | Height: | Size: 65 KiB |
3
assets/custom-icons/icons/porkbun.svg
Normal file
|
After Width: | Height: | Size: 27 KiB |
1
assets/custom-icons/icons/postnl.svg
Normal file
|
After Width: | Height: | Size: 5.0 KiB |
4
assets/custom-icons/icons/privacy.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg data-v-08e34066="" viewBox="1 1 38 38" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path data-v-08e34066="" d="M29.4 1H10.6C7.23969 1 5.55953 1 4.27606 1.65396C3.14708 2.2292 2.2292 3.14708 1.65396 4.27606C1 5.55953 1 7.23969 1 10.6V29.4C1 32.7603 1 34.4405 1.65396 35.7239C2.2292 36.8529 3.14708 37.7708 4.27606 38.346C5.55953 39 7.23969 39 10.6 39H29.4C32.7603 39 34.4405 39 35.7239 38.346C36.8529 37.7708 37.7708 36.8529 38.346 35.7239C39 34.4405 39 32.7603 39 29.4V10.6C39 7.23969 39 5.55953 38.346 4.27606C37.7708 3.14708 36.8529 2.2292 35.7239 1.65396C34.4405 1 32.7603 1 29.4 1Z" fill="#232320"></path>
|
||||
<path data-v-08e34066="" fill-rule="evenodd" clip-rule="evenodd" d="M19.5603 10.0009H12V30.0471H16.2956V23.4605H19.5603C25.3259 23.4605 28.2087 21.2172 28.2087 16.7307C28.2087 12.2442 25.3259 10.0009 19.5603 10.0009ZM19.7607 13.781C22.4717 13.781 23.8272 14.7643 23.8272 16.7307C23.8272 18.6971 22.4717 19.6803 19.7607 19.6803H16.2956V13.781H19.7607Z" fill="white"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1003 B |
1
assets/custom-icons/icons/privacyguides.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="100%" height="100%" version="1.1" viewBox="0 0 33 34" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2"><path d="M4.581,4.337c-0.113,0.379 -0.049,0.822 0.077,1.707l1.604,11.224c0.277,1.939 0.415,2.909 0.782,3.775c0.325,0.768 0.781,1.474 1.346,2.087c0.638,0.691 1.465,1.217 3.117,2.269l2.349,1.495c1.126,0.716 1.69,1.075 2.295,1.214c0.465,0.108 0.947,0.121 1.416,0.042c-0.388,-0.887 -0.603,-1.867 -0.603,-2.897c0,-3.996 3.24,-7.236 7.236,-7.236c1.166,0 2.268,0.276 3.243,0.766c0.069,-0.432 0.14,-0.929 0.223,-1.514l0,-0.001l1.604,-11.224c0.126,-0.885 0.19,-1.328 0.077,-1.707c-0.099,-0.334 -0.292,-0.632 -0.557,-0.859c-0.3,-0.257 -0.73,-0.38 -1.59,-0.626l-9.441,-2.697c-0.296,-0.085 -0.444,-0.127 -0.594,-0.144c-0.134,-0.015 -0.268,-0.015 -0.402,0c-0.15,0.017 -0.298,0.059 -0.594,0.144l-9.441,2.697c-0.86,0.246 -1.29,0.369 -1.59,0.626c-0.265,0.227 -0.458,0.525 -0.557,0.859Z" style="fill:#ffd06f"/><path d="M13.246,2.719c0.066,-0.007 0.134,-0.007 0.201,0c0.057,0.007 0.122,0.022 0.446,0.114l9.44,2.698c0.444,0.126 0.727,0.208 0.94,0.287c0.202,0.075 0.274,0.124 0.311,0.156c0.132,0.113 0.229,0.262 0.278,0.429c0.014,0.047 0.03,0.133 0.016,0.348c-0.015,0.226 -0.056,0.518 -0.122,0.974l-1.346,9.426c-4.125,0.397 -7.351,3.873 -7.351,8.102c0,0.835 0.126,1.641 0.36,2.4l-0.451,0.286c-1.183,0.753 -1.594,1.001 -2.012,1.097c-0.401,0.092 -0.818,0.092 -1.22,0c-0.417,-0.096 -0.829,-0.344 -2.012,-1.097l-2.349,-1.494c-1.693,-1.078 -2.398,-1.535 -2.938,-2.12c-0.495,-0.536 -0.894,-1.153 -1.178,-1.825c-0.31,-0.733 -0.436,-1.564 -0.72,-3.551l-1.603,-11.224c-0.066,-0.456 -0.107,-0.748 -0.121,-0.974c-0.015,-0.215 0.001,-0.301 0.015,-0.348c0.05,-0.167 0.146,-0.316 0.279,-0.429c0.036,-0.032 0.109,-0.081 0.31,-0.156c0.213,-0.079 0.496,-0.161 0.94,-0.287l9.44,-2.698c0.324,-0.092 0.389,-0.107 0.447,-0.114Zm13.306,5.231l-1.318,9.228c4.007,0.508 7.106,3.93 7.106,8.075c0,4.496 -3.644,8.141 -8.14,8.141c-3.01,0 -5.639,-1.634 -7.048,-4.064l-0.212,0.136l-0.135,0.085c-0.996,0.634 -1.683,1.072 -2.443,1.248c-0.668,0.154 -1.364,0.154 -2.032,0c-0.76,-0.176 -1.447,-0.614 -2.443,-1.248l-0.134,-0.085l-2.466,-1.57l0,0c-1.541,-0.98 -2.461,-1.565 -3.179,-2.344c-0.637,-0.689 -1.149,-1.483 -1.515,-2.347c-0.413,-0.976 -0.567,-2.054 -0.825,-3.863l-1.628,-11.392c-0.059,-0.416 -0.111,-0.778 -0.131,-1.081c-0.021,-0.323 -0.012,-0.648 0.087,-0.98c0.148,-0.501 0.439,-0.949 0.835,-1.289c0.264,-0.226 0.557,-0.366 0.86,-0.478c0.285,-0.106 0.636,-0.206 1.04,-0.322l0.031,-0.009l9.44,-2.697l0.05,-0.014c0.247,-0.071 0.465,-0.133 0.693,-0.159c0.2,-0.022 0.402,-0.022 0.603,0c0.227,0.026 0.445,0.088 0.692,0.159l0.05,0.014l9.471,2.706c0.404,0.116 0.755,0.216 1.04,0.322c0.304,0.112 0.596,0.252 0.86,0.478c0.397,0.34 0.687,0.788 0.835,1.289c0.099,0.332 0.108,0.657 0.087,0.98c-0.02,0.303 -0.072,0.665 -0.131,1.08l0,0.001Zm-2.352,10.972c-3.497,0 -6.332,2.835 -6.332,6.331c0,3.497 2.835,6.332 6.332,6.332c3.497,0 6.331,-2.835 6.331,-6.332c0,-3.496 -2.834,-6.331 -6.331,-6.331Zm4.313,4.197c0.319,-0.384 0.268,-0.954 -0.116,-1.274c-0.384,-0.32 -0.954,-0.268 -1.274,0.116l-3.888,4.666l-2.013,-2.013c-0.354,-0.353 -0.926,-0.353 -1.28,0c-0.353,0.353 -0.353,0.926 0,1.279l2.714,2.713c0.18,0.18 0.427,0.276 0.68,0.264c0.254,-0.011 0.492,-0.129 0.654,-0.324l4.523,-5.427Zm-19.689,-10.529c0,-2.497 2.024,-4.522 4.522,-4.522c2.498,0 4.522,2.025 4.522,4.522c0,1.48 -0.71,2.794 -1.809,3.619l0,3.617c0,1.499 -1.214,2.714 -2.713,2.714c-1.499,0 -2.713,-1.215 -2.713,-2.714l0,-3.617c-1.099,-0.825 -1.809,-2.139 -1.809,-3.619Zm5.426,4.523l-1.808,0l0,2.713c0,0.5 0.405,0.905 0.904,0.905c0.5,0 0.904,-0.405 0.904,-0.905l0,-2.713Zm-0.904,-1.809c1.499,0 2.713,-1.215 2.713,-2.714c0,-1.498 -1.214,-2.713 -2.713,-2.713c-1.499,0 -2.713,1.215 -2.713,2.713c0,1.499 1.214,2.714 2.713,2.714Z" style="fill:#28323f"/></svg>
|
||||
|
After Width: | Height: | Size: 3.8 KiB |
14
assets/custom-icons/icons/proton.svg
Normal file
@@ -0,0 +1,14 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M52 369.795V500H143.481V375.43C143.481 363.31 148.3 351.686 156.878 343.116C165.456 334.547 177.09 329.732 189.222 329.732H283.02C326.779 329.719 368.74 312.345 399.678 281.429C430.615 250.513 447.997 208.589 448 164.872C448 121.15 430.616 79.2177 399.673 48.2988C368.729 17.38 326.759 0.00664019 282.995 0H52V162.756H143.481V86.023H276.83C297.535 86.023 317.393 94.2386 332.035 108.863C346.678 123.487 354.909 143.323 354.915 164.009C354.915 184.698 346.689 204.541 332.044 219.17C317.401 233.8 297.539 242.019 276.83 242.019H179.885C163.088 242.011 146.453 245.31 130.933 251.728C115.413 258.148 101.311 267.559 89.434 279.426C77.557 291.293 68.1375 305.383 61.7143 320.889C55.2912 336.395 51.9901 353.014 52 369.795Z" fill="url(#paint0_radial_122_119)"/>
|
||||
<path d="M189.196 329.731C152.81 329.735 117.916 344.178 92.1875 369.881C66.459 395.586 52.0033 430.446 52 466.798L52 500H143.481V375.429C143.481 363.313 148.297 351.694 156.869 343.125C165.442 334.556 177.069 329.738 189.196 329.731Z" fill="url(#paint1_linear_122_119)"/>
|
||||
<defs>
|
||||
<radialGradient id="paint0_radial_122_119" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(449.441 -69.4219) scale(503.735 503.255)">
|
||||
<stop stop-color="#A995FF"/>
|
||||
<stop offset="1" stop-color="#6652F5"/>
|
||||
</radialGradient>
|
||||
<linearGradient id="paint1_linear_122_119" x1="120.598" y1="475.374" x2="120.598" y2="284.048" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="#6D4BFD"/>
|
||||
<stop offset="1" stop-color="#1C0554"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.6 KiB |
1
assets/custom-icons/icons/revolt.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="193.733" height="37.438" viewBox="0 0 193.733 37.438"><path d="M23.393,1.382c0,2.787-1.52,4.46-4.764,4.46H13.258V-2.977H18.63C21.873-2.977,23.393-1.254,23.393,1.382Zm-24-11.555,5.2,7.213V25.4h8.666V11.973h2.078l7.4,13.43h9.781l-8.21-14.089A10.355,10.355,0,0,0,32.212,1.027c0-6.183-4.358-11.2-13.075-11.2Zm60.035,0H37.634V25.4H59.426V18.46H46.3v-7.8H57.906V3.966H46.3V-2.969H59.426Zm20.981,26.86-8.818-26.86H62.365L74.984,25.4H85.83L98.449-10.173H89.276Zm56.659-9.173c0-10.693-8.058-18.194-18.194-18.194-10.085,0-18.3,7.5-18.3,18.194a17.9,17.9,0,0,0,18.3,18.244A17.815,17.815,0,0,0,137.066,7.514Zm-27.62,0c0-6.335,3.649-10.338,9.426-10.338,5.676,0,9.376,4,9.376,10.338,0,6.233-3.7,10.338-9.376,10.338C113.095,17.852,109.446,13.747,109.446,7.514ZM141.88-10.173V25.4H161.9v-6.95H150.545V-10.173Zm22.248,7.2h9.426V25.4h8.666V-2.975h9.426v-7.2H164.128Z" transform="translate(1.586 11.18)" stroke-width="1"/></svg>
|
||||
|
After Width: | Height: | Size: 955 B |
1
assets/custom-icons/icons/simplelogin.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="257.53 367.08 96.3 56.1"><path d="M320.99 367.09h31.23c1.65 1.51 1.51 3.5 1.51 5.47.03 16.44.06 32.88.1 49.32-.54 1.26-1.63 1.31-2.79 1.3-10.01-.05-20.03-.08-30.04-.12v-3.7h24.59c.07-.31.15-.62.22-.94l-17.42-15.56c1.03-.86 2.06-1.73 3.09-2.59 6.01 5.12 12.02 10.24 18.4 15.68v-41.87c-6.46 5.59-12.42 10.76-18.38 15.92-1.47-.47-2.05-1.63-2.33-3.02 5.58-4.96 11.17-9.92 17.53-15.58H321c-.01-1.43-.01-2.87-.01-4.31z" fill="#d63085"/><path d="M320.99 419.36v3.7c-12.96.04-25.93.08-38.89.11-.75 0-1.49-.02-2.05-.63l.81-2.34c.37-.02.77.04 1.11-.07 13.45-4.42 23.45-20.97 21.19-34.9-.27-1.64-1.13-2.22-2.54-2.69-6.15-2.06-11.75-5.11-16.62-9.42-.87-.77-1.74-1.92-3.12-.73l-.78-3.07c.49-.75.98-1.5 1.47-2.24h39.41v4.31h-33.81c4.99 4.71 9.96 7.07 15.29 8.63 2.08.61 3.47 1.46 3.29 3.62-.34 4.16 2.24 6.43 5.1 8.68 1.54 1.21 2.87 2.67 4.3 4.02-.6 1.17-.85 2.6-2.28 3.18-1.23-1-2.26-1.39-3.69 0-3.34 3.24-7.14 5.96-9.5 10.19-2.05 3.66-5.35 6.43-9.56 9.62 11.14-.15 21.01-.48 30.87.03z" fill="#e13282"/><path d="M331.49 390c-1.69 1.71-4.56 3.31-4.75 5.17-.21 2.06 3.39 3.06 4.73 5.1-1.03.86-2.06 1.73-3.09 2.59-.59-.43-1.3-.76-1.74-1.31-2.64-3.36-4.98-3.57-8.02-.15-2.65 2.99-4.03-.53-5.74-1.86 1.43-.58 1.68-2.01 2.28-3.18 1.58.86 2.72.14 3.92-.9 3.31-2.87 6.71-5.65 10.07-8.47.3 1.38.87 2.54 2.34 3.01z" fill="#db3485"/><path d="M280.89 372.41c-4.61 4.6-10.14 7.79-16.3 9.72-2.97.93-3.78 2.58-3.83 5.31-.25 13.99 5.63 24.51 17.9 31.47.74.42 1.47.87 2.21 1.3l-.81 2.34c-15.11-5.05-25.86-25.05-21.59-40.06.31-1.08.78-1.76 1.84-2.03 7.64-1.89 13.93-6.14 19.81-11.12.25 1.02.51 2.04.77 3.07z" fill="#ea3a84"/><path d="M264.89 390.1c-.35-2.49.61-4.72 4.4-5.83 4.16-1.22 7.73-3.85 10.92-6.78 1.37-1.25 2.27-1.35 3.65-.09 3.77 3.44 8.06 6.11 12.95 7.67 1.57.5 1.99 1.45 2.19 2.92 1.42 10.49-5.72 22.94-15.46 27.11-1.77.76-3.05.28-4.46-.55-9.01-5.29-13.69-13.15-14.19-24.45zm29.95 1.06c-.74-.77-1.4-1.48-2.08-2.16-.92-.91-1.55-.17-2.15.44a307.76 307.76 0 00-4.37 4.48c-5.12 5.35-5.11 5.36-10.55.22a3.19 3.19 0 01-.26-.26c-1-1.17-1.89-1.71-3.24-.24-1.12 1.22-1.47 2.03-.1 3.3 2.43 2.25 4.8 4.58 7.05 7.01 1.28 1.38 2.14 1.07 3.29-.1 3.62-3.68 7.31-7.28 10.96-10.92.49-.53.91-1.13 1.45-1.77z" fill="#e63280"/><path d="M294.84 391.16c-.53.64-.95 1.24-1.46 1.76-3.65 3.65-7.34 7.25-10.96 10.92-1.15 1.17-2.01 1.48-3.29.1-2.25-2.43-4.62-4.76-7.05-7.01-1.37-1.27-1.02-2.08.1-3.3 1.36-1.47 2.25-.92 3.24.24.08.09.17.18.26.26 5.44 5.14 5.44 5.14 10.55-.22 1.44-1.51 2.9-3 4.37-4.48.6-.61 1.23-1.35 2.15-.44.69.69 1.34 1.39 2.09 2.17z" fill="#fdf5f9"/></svg>
|
||||
|
After Width: | Height: | Size: 2.5 KiB |
13
assets/custom-icons/icons/skiff.svg
Normal file
@@ -0,0 +1,13 @@
|
||||
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 90 90" width="90" height="90">
|
||||
<title>skiff</title>
|
||||
<style>
|
||||
.s0 { fill: #000000 }
|
||||
</style>
|
||||
<g id="Layer">
|
||||
<g id="Layer">
|
||||
<path id="Layer" fill-rule="evenodd" class="s0" d="m54.8 16.3q-1.8 0-3.6 0.3-1.7 0.4-3.4 1-1.7 0.7-3.2 1.7-1.5 0.9-2.8 2.2-1.3 1.2-2.3 2.7-1.1 1.4-1.8 3.1-0.8 1.6-1.2 3.3-0.5 1.8-0.6 3.6-0.1 1.8 0.2 3.5 0.2 1.8 0.7 3.5 0.6 1.8 1.5 3.3 0.8 1.6 2 3 1.1 1.4 2.5 2.5 1.4 1.2 2.9 2 1.6 0.9 3.3 1.4 1.7 0.6 3.5 0.8c0.6 0.1 1.2 0.2 1.8 0.2v0.9q-0.1 1.3-0.3 2.5c0 0.2-0.1 0.4-0.1 0.6-0.1 0.4-0.2 0.9-0.3 1.3-0.1 0.2-0.3 0.7-0.3 0.8l-0.2 0.6q-0.3 0.8-0.8 1.6-0.4 0.9-0.9 1.7-0.5 0.7-1 1.5-0.6 0.7-1.3 1.4-0.6 0.7-1.3 1.3-0.7 0.6-1.5 1.1-0.7 0.5-1.5 1-0.8 0.4-1.7 0.8c-2.1 0.9-4.4 1.4-6.8 1.5q-1.4 0-2.8-0.3l-0.8-0.1-0.9-0.2c-0.3-0.1-0.6-0.2-0.9-0.2-0.5-0.2-1.1-0.4-1.7-0.6-0.2-0.1-0.5-0.3-0.8-0.4l-0.7-0.4c-0.1 0-0.2-0.1-0.5-0.2-0.2-0.2-0.7-0.4-0.9-0.6l-0.3-0.2-0.2-0.1c-0.3-0.2-0.6-0.5-0.9-0.7l-0.2-0.2-0.2-0.1-0.4-0.4c-0.3-0.2-0.6-0.6-0.8-0.8l-1.2-1.2-1.1-1.2-0.7-0.9c-0.2-0.3-0.5-0.7-0.6-0.9-0.5-0.6-1-1.5-1.4-2.2q-1.4-2.4-2.4-5.1-0.9-2.7-1.4-5.5-0.5-2.8-0.5-5.7 0-2.8 0.5-5.6v-0.3c0.1-0.4 0.3-1.3 0.4-1.7 0.2-0.6 0.3-1.2 0.5-1.8 0.1-0.4 0.3-1 0.4-1.1 0-0.1 0.5-1.2 0.5-1.3l0.5-1.3c0.2-0.3 0.6-1.3 0.7-1.5 0.2-0.3 0.7-1.3 0.8-1.4 0.1-0.1 0.3-0.4 0.4-0.6 0.1-0.1 0.2-0.4 0.4-0.7 0.2-0.3 0.7-1.1 1-1.4l0.8-1.1c0.2-0.3 0.7-0.9 1.1-1.3 0.4-0.3 0.9-0.9 1.2-1.2 0.2-0.3 0.9-0.9 1.1-1.2 0.3-0.2 1-0.9 1.3-1.1q1.6-1.3 3.4-2.4 1.7-1.1 3.6-1.9 1.9-0.9 3.9-1.5 1.9-0.6 4-1 2-0.3 4.1-0.4 2.1-0.1 4.1 0.1 2.1 0.2 4.1 0.7 2 0.4 3.9 1.2 0.8 0.2 1.6 0.6 0.8 0.3 1.5 0.7 0.8 0.4 1.5 0.8 0.8 0.4 1.5 0.8c-2.5-1.1-5.3-1.7-8.1-1.6zm-22.3 50.8q2.3 0.9 4.7 1.1 2.5 0.2 4.9-0.3 2.5-0.5 4.6-1.7c-2.9 1.3-6.1 1.8-9.2 1.3q-1.1-0.2-2.3-0.5-1.1-0.4-2.2-0.8-1.1-0.5-2-1.2-1-0.6-1.9-1.4-0.3-0.2-0.5-0.5-0.2-0.2-0.5-0.4-0.2-0.3-0.4-0.5-0.3-0.3-0.5-0.5l-0.1-0.1-0.1-0.2-0.2-0.2q-0.8-1-1.6-2.1-0.7-1-1.3-2.1-0.6-1.1-1.2-2.2-0.5-1.2-0.9-2.4-1.1-3-1.5-6.1-0.4-3.1-0.1-6.2 0.3-3.2 1.2-6.2 1-3 2.6-5.7 0.7-1.4 1.6-2.6 1-1.3 2-2.5 1.1-1.1 2.2-2.2 1.2-1 2.5-1.9 1.2-0.9 2.6-1.7 1.4-0.7 2.8-1.3 1.4-0.6 2.9-1.1 1.5-0.4 3.1-0.7l1.3-0.2 1.4-0.2 1.3-0.1h-2.7l-1.4 0.1c-3.7 0.4-7.3 1.6-10.6 3.4q-1.5 0.9-2.9 1.9c-0.2 0.2-0.6 0.5-0.9 0.7q-1.1 0.9-2.2 2-1.1 1-2 2.2-1 1.2-1.8 2.4-0.8 1.3-1.5 2.6-1.4 2.7-2.2 5.6-0.8 2.9-1 5.9-0.3 3 0.1 6 0.4 3 1.5 5.9 0.4 1.4 1.1 2.7 0.6 1.4 1.4 2.7 0.8 1.3 1.7 2.5 0.9 1.2 1.9 2.3 0.3 0.2 0.5 0.5 0.3 0.3 0.5 0.5 0.3 0.2 0.5 0.5 0.3 0.2 0.6 0.4 1.9 1.6 4.2 2.6zm17.2-6.4c-2.9 1.5-6.1 2-9.2 1.4q-1.1-0.2-2.3-0.6-1.1-0.4-2.1-1-1-0.6-1.9-1.3-0.9-0.8-1.7-1.7c-0.4-0.4-0.8-0.9-1.2-1.4-0.2-0.2-0.5-0.7-0.7-0.9q-1-1.4-1.8-2.9-0.8-1.5-1.4-3-0.6-1.6-0.9-3.2-0.4-1.6-0.6-3.3-0.2-1.7-0.1-3.3 0-1.7 0.3-3.4 0.3-1.6 0.8-3.2 0.5-1.6 1.1-3.2 0.7-1.4 1.5-2.7 0.8-1.4 1.8-2.6 1-1.2 2.1-2.3 1.2-1.1 2.4-2.1 1.2-0.9 2.6-1.7 1.3-0.8 2.8-1.4 1.4-0.6 2.9-1.1 1.5-0.4 3.1-0.7 0.5-0.1 1-0.1 0.6-0.1 1.1-0.2 0.6 0 1.1 0 0.5-0.1 1.1-0.1-1.4-0.1-2.8-0.1h-1c-0.3 0-0.9 0.1-1.2 0.1q-0.8 0.1-1.7 0.3-0.8 0.1-1.6 0.3-0.8 0.2-1.6 0.5-0.8 0.2-1.5 0.5c-0.2 0.1-0.7 0.3-0.9 0.4-0.2 0.1-0.4 0.2-0.6 0.3-0.5 0.2-1.2 0.6-1.7 0.9-0.5 0.2-1.1 0.7-1.6 1q-0.3 0.2-0.7 0.4-0.3 0.3-0.6 0.5-0.3 0.3-0.6 0.5-0.3 0.3-0.6 0.6-1 0.8-1.9 1.8-0.8 0.9-1.6 2-0.8 1-1.5 2.1-0.6 1.1-1.2 2.3-1.1 2.3-1.7 4.8-0.6 2.6-0.8 5.2-0.1 2.6 0.3 5.1 0.4 2.6 1.3 5 0.5 1.3 1 2.4 0.6 1.2 1.3 2.3 0.7 1.1 1.5 2.1 0.7 1 1.6 2l0.8 0.8 0.1 0.1 0.2 0.2c4.7 4.3 12.2 5.4 17.5 1.6zm-14.3-10.1q-0.7-1.1-1.3-2.2-0.6-1.1-1.1-2.3-0.5-1.2-0.8-2.5-0.3-1.2-0.5-2.5-0.2-1.3-0.2-2.6-0.1-1.2 0.1-2.5 0.1-1.3 0.3-2.6 0.3-1.2 0.7-2.5 0.4-1.2 1-2.3 0.5-1.2 1.2-2.3 0.6-1.1 1.4-2.1 0.8-1 1.7-1.9 1-0.9 2-1.7 1-0.8 2.1-1.5 1-0.7 2.2-1.2 1.2-0.5 2.4-0.9 0.7-0.3 1.5-0.5 0.7-0.2 1.5-0.3 0.7-0.2 1.5-0.3 0.7-0.1 1.5-0.1h2.4c-0.4-0.1-0.9-0.2-1.3-0.2l-0.8-0.1h-2.2q-1 0.1-1.9 0.2-1 0.1-1.9 0.3-1 0.3-1.9 0.6-0.9 0.3-1.8 0.6c-0.4 0.2-0.7 0.3-1.3 0.6-0.5 0.3-1.1 0.7-1.6 1-0.3 0.2-0.7 0.4-1 0.6q-0.9 0.7-1.8 1.5-0.9 0.8-1.7 1.7-0.8 0.9-1.6 1.8-0.7 1-1.3 2-1.2 2.1-1.9 4.4-0.8 2.3-1 4.7-0.3 2.4 0 4.8 0.2 2.4 1 4.6 0.4 1.2 0.9 2.3 0.5 1.1 1.1 2.1 0.6 1 1.3 2 0.7 1 1.5 1.8 0.5 0.6 1 1 0.5 0.5 1.1 0.9 0.5 0.5 1.1 0.8 0.6 0.4 1.3 0.7 1.2 0.7 2.5 1 1.4 0.3 2.8 0.4 1.3 0 2.7-0.2 1.3-0.3 2.6-0.9c-2 0.7-4.2 0.8-6.3 0.3q-0.7-0.1-1.5-0.4-0.7-0.2-1.5-0.5-0.7-0.4-1.4-0.8-0.6-0.4-1.2-0.9-0.6-0.5-1-0.9-0.5-0.5-0.9-1-0.5-0.4-0.9-1-0.4-0.5-0.8-1z"/>
|
||||
<path id="Layer" class="s0" d="m37.4 35.8l-0.7-0.1v0.1q0.8 0 1.5 0.1z"/>
|
||||
<path id="Layer" fill-rule="evenodd" class="s0" d="m62 72.2q-1.7 1.1-3.6 2-1.9 0.8-3.9 1.4-2 0.6-4 1-2.1 0.3-4.1 0.4-2.1 0.1-4.2-0.1-2-0.2-4.1-0.6-2-0.5-3.9-1.2-0.8-0.3-1.6-0.6-0.8-0.3-1.5-0.7-0.8-0.4-1.5-0.8-0.7-0.4-1.5-0.9 2.2 1 4.5 1.4 2.3 0.4 4.7 0.2 2.3-0.1 4.6-0.9 2.2-0.7 4.2-2 1-0.6 1.9-1.3 0.9-0.8 1.7-1.6 0.8-0.9 1.5-1.8 0.8-0.9 1.3-2 0.6-1 1.1-2.1 0.5-1 0.8-2.2 0.3-1.1 0.5-2.3 0.2-1.1 0.3-2.3 0-1-0.1-1.9 0-0.9-0.2-1.9-0.2-0.9-0.4-1.8-0.2-0.9-0.6-1.8-0.3-0.8-0.7-1.7-0.4-0.8-0.9-1.6-0.5-0.8-1.1-1.5-0.6-0.8-1.2-1.5-0.7-0.6-1.4-1.3-0.7-0.6-1.5-1.1-0.7-0.5-1.5-1-0.9-0.4-1.7-0.8c-2.3-1-4.7-1.5-7.2-1.6v-1q0-1.3 0.3-2.5c0-0.2 0.1-0.4 0.1-0.6 0.1-0.4 0.2-0.9 0.3-1.3 0.1-0.2 0.2-0.7 0.3-0.8l0.2-0.6q0.3-0.8 0.7-1.7 0.4-0.8 0.9-1.6 0.5-0.8 1.1-1.5 0.6-0.7 1.2-1.4 0.7-0.7 1.4-1.3 0.7-0.6 1.4-1.1 0.8-0.5 1.6-1 0.8-0.4 1.7-0.8c2.1-0.9 4.4-1.4 6.7-1.5q0.4 0 0.8 0 0.3 0.1 0.7 0.1 0.3 0 0.7 0.1 0.3 0 0.7 0l0.8 0.2 0.8 0.2 1 0.2c0.5 0.2 1.1 0.4 1.7 0.6l0.7 0.4 0.8 0.4c0.1 0 0.2 0.1 0.4 0.2 0.3 0.2 0.7 0.4 1 0.6l0.2 0.2 0.3 0.1c0.2 0.2 0.6 0.5 0.8 0.7l0.3 0.2h0.1l0.1 0.1 0.4 0.4c0.2 0.2 0.6 0.6 0.8 0.8 0.4 0.3 0.9 0.9 1.2 1.1 0.2 0.3 0.8 1.1 1.1 1.3l0.6 0.9q0.1 0.1 0.2 0.3 0.1 0.1 0.2 0.2 0.1 0.1 0.1 0.2 0.1 0.1 0.2 0.2c0.4 0.7 1 1.5 1.4 2.2q1.4 2.4 2.3 5.1 1 2.7 1.5 5.5 0.5 2.8 0.5 5.7 0 2.8-0.6 5.6v0.3c0 0.4-0.2 1.3-0.3 1.7-0.2 0.6-0.4 1.2-0.6 1.8 0 0.3-0.2 1-0.3 1.1-0.1 0.1-0.5 1.2-0.5 1.3-0.2 0.4-0.4 1-0.5 1.3-0.2 0.3-0.7 1.3-0.8 1.5-0.1 0.3-0.7 1.3-0.7 1.4-0.1 0.1-0.3 0.5-0.4 0.6l-0.4 0.7c-0.2 0.3-0.8 1.1-1 1.4l-0.8 1.1c-0.3 0.3-0.8 1-1.1 1.3l-2.4 2.4c-0.2 0.2-1 0.9-1.2 1.1q-1.6 1.3-3.4 2.4zm-3.4-49.3q-2.3-0.9-4.8-1.2-2.5-0.2-4.9 0.4-2.4 0.5-4.6 1.7 1.2-0.5 2.5-0.9 1.3-0.3 2.7-0.5 1.3-0.1 2.6 0 1.4 0.1 2.7 0.4 1.3 0.3 2.6 0.8 1.2 0.5 2.4 1.2 1.1 0.7 2.1 1.6 1 0.9 1.9 2l0.1 0.1 0.1 0.1 0.2 0.3c0.3 0.3 0.6 0.7 0.9 1q1.5 2.1 2.6 4.3 1.2 2.3 1.9 4.7 0.8 2.4 1.1 4.9 0.3 2.5 0.1 5.1-0.1 2.5-0.7 4.9-0.5 2.5-1.5 4.8-1 2.4-2.4 4.5-1.3 2.1-3.1 4-1.9 2-4.2 3.7-2.2 1.6-4.8 2.8-2.5 1.2-5.3 1.9-2.7 0.7-5.5 0.8 1.7 0.1 3.5 0 1.7-0.2 3.4-0.5 1.7-0.4 3.4-1 1.6-0.6 3.2-1.3l1.2-0.7q0.4-0.2 0.8-0.4 0.4-0.3 0.7-0.5 0.4-0.3 0.8-0.5 0.3-0.3 0.7-0.5l0.7-0.6 0.1-0.1 0.3-0.2 0.5-0.5c0.4-0.2 0.8-0.6 1.1-0.9q2.1-2 3.7-4.3 1.6-2.4 2.8-5 1.2-2.6 1.8-5.4 0.6-2.8 0.7-5.7 0.1-2.8-0.4-5.7-0.5-2.8-1.5-5.5-1-2.6-2.5-5.1-1.5-2.4-3.4-4.5-0.3-0.3-0.5-0.5-0.3-0.3-0.5-0.5-0.3-0.3-0.6-0.5-0.2-0.3-0.5-0.5-1.9-1.6-4.2-2.5zm-0.5 7.3q0 0 0 0 0 0 0 0 0 0 0 0zm0 0c0 0 0 0 0 0-4.6-3.8-11.8-4.5-16.7-0.9q1-0.6 2.1-0.9 1.1-0.4 2.2-0.6 1.2-0.2 2.3-0.2 1.2 0 2.3 0.2 1.2 0.2 2.3 0.6 1.1 0.4 2.1 1 1 0.5 1.9 1.2 0.9 0.8 1.7 1.6c0.3 0.4 0.8 0.9 1 1.2 0.3 0.3 0.6 0.6 0.8 0.9q1 1.4 1.8 2.9 0.9 1.5 1.5 3.1 0.6 1.6 1 3.2 0.5 1.7 0.6 3.4 0.2 1.7 0.2 3.4 0 1.7-0.3 3.4-0.3 1.6-0.8 3.3-0.4 1.6-1.1 3.2-0.7 1.4-1.5 2.7-0.8 1.3-1.7 2.5-1 1.2-2 2.3-1.1 1.1-2.3 2-1.2 0.9-2.5 1.7-1.3 0.8-2.7 1.5-1.4 0.6-2.8 1.1-1.5 0.5-3 0.8-0.6 0.1-1.2 0.2-0.6 0.1-1.2 0.1-0.6 0.1-1.3 0.1-0.6 0.1-1.2 0.1 1.3 0.1 2.5 0.1 1.3 0 2.5-0.1 1.3-0.2 2.5-0.4 1.3-0.3 2.5-0.7c0.3-0.1 0.8-0.3 1.1-0.4l0.3-0.1 0.2-0.1 0.1-0.1 0.6-0.2q1.4-0.7 2.8-1.5 1.3-0.8 2.6-1.8 1.2-0.9 2.3-2.1 1.1-1.1 2-2.3 1-1.3 1.8-2.6 0.8-1.4 1.5-2.8 0.6-1.5 1-3 0.5-1.5 0.8-3 0.2-1.6 0.3-3.2 0.1-1.5 0-3.1-0.1-1.6-0.4-3.1-0.3-1.6-0.8-3.1-0.5-1.5-1.2-2.9-0.6-1.4-1.5-2.8-0.8-1.3-1.8-2.6-1-1.2-2.1-2.3c-0.4-0.3-0.7-0.6-1.1-0.9zm-12.6 42.4c-3 1.2-6.2 1.7-9.4 1.6q1.2 0.2 2.5 0.3 1.2 0.1 2.4 0 1.3-0.1 2.5-0.3 1.2-0.3 2.4-0.6 1.3-0.5 2.5-1 1.3-0.6 2.4-1.3 1.2-0.8 2.3-1.6 1-0.9 2-1.9 0.9-1 1.8-2.1 0.8-1.1 1.5-2.3 0.7-1.2 1.2-2.4 0.5-1.3 0.9-2.6 0.4-1.3 0.6-2.7 0.2-1.4 0.3-2.8 0-1.3-0.1-2.7-0.1-1.4-0.4-2.7-0.3-1.4-0.8-2.7-0.4-1.3-1-2.5-0.6-1.3-1.4-2.4-0.7-1.2-1.6-2.2-0.4-0.5-0.8-0.9-0.4-0.4-0.8-0.8-0.4-0.4-0.8-0.7-0.4-0.4-0.9-0.7-1.3-1-2.9-1.6-1.6-0.6-3.2-0.8-1.7-0.2-3.4 0-1.6 0.3-3.2 1 0.8-0.3 1.6-0.4 0.8-0.1 1.6-0.2 0.7 0 1.5 0 0.8 0.1 1.6 0.3 0.8 0.1 1.5 0.4 0.8 0.2 1.5 0.5 0.7 0.4 1.4 0.8 0.7 0.4 1.3 0.9 0.3 0.3 0.6 0.5 0.3 0.3 0.5 0.6 0.3 0.2 0.6 0.5 0.2 0.3 0.5 0.6l0.6 0.9 0.7 0.8 0.5 0.9q1.1 1.7 1.9 3.6 0.7 1.9 1.1 4 0.4 2 0.4 4 0 2.1-0.3 4.1-0.4 2-1.1 3.9-0.8 1.9-1.8 3.7-1.1 1.7-2.5 3.3-1.4 1.5-3 2.7c-0.3 0.2-0.7 0.6-1.1 0.8l-1.1 0.7c-0.4 0.2-0.8 0.4-1.2 0.6l-0.9 0.5-1 0.4z"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.5 KiB |
4
assets/custom-icons/icons/snapchat.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M464.522 368.578C387.094 331.097 374.754 273.228 374.204 268.935C373.54 263.736 372.786 259.648 378.522 254.359C384.054 249.249 408.594 234.06 415.403 229.308C426.657 221.439 431.614 213.582 427.96 203.925C425.405 197.243 419.184 194.727 412.631 194.727C410.563 194.733 408.503 194.964 406.486 195.417C394.12 198.099 382.112 204.295 375.162 205.969C374.327 206.184 373.47 206.3 372.607 206.313C368.903 206.313 367.498 204.666 367.855 200.207C368.724 186.691 370.563 160.312 368.43 135.669C365.505 101.765 354.569 84.9663 341.603 70.1093C335.331 62.9043 306.204 31.9512 249.996 31.9512C193.787 31.9512 164.699 62.9043 158.465 70.0199C145.46 84.8769 134.538 101.676 131.638 135.58C129.504 160.222 131.421 186.589 132.213 200.118C132.468 204.359 131.165 206.224 127.46 206.224C126.598 206.209 125.741 206.094 124.905 205.879C117.969 204.206 105.961 198.01 93.5946 195.327C91.5774 194.875 89.5171 194.644 87.4499 194.637C80.8709 194.637 74.6752 197.192 72.1202 203.835C68.4667 213.493 73.3977 221.349 84.6906 229.219C91.4995 233.971 116.04 249.147 121.571 254.27C127.294 259.559 126.553 263.646 125.889 268.846C125.34 273.202 112.987 331.071 35.5717 368.489C31.0367 370.686 23.3208 375.336 36.9259 382.847C58.2852 394.651 72.5035 393.387 83.5536 400.502C92.9303 406.545 87.3861 419.575 94.2078 424.276C102.588 430.063 127.358 423.867 159.359 434.432C186.186 443.272 202.486 468.247 250.059 468.247C297.633 468.247 314.406 443.157 340.76 434.432C372.697 423.867 397.518 430.063 405.911 424.276C412.72 419.575 407.189 406.545 416.565 400.502C427.615 393.387 441.821 394.651 463.193 382.847C476.773 375.425 469.057 370.775 464.522 368.578Z" fill="white"/>
|
||||
<path d="M498.208 364.171C494.734 354.717 488.116 349.659 480.579 345.469C479.161 344.638 477.858 343.974 476.747 343.463C474.499 342.3 472.199 341.176 469.912 339.988C446.42 327.533 428.075 311.82 415.352 293.194C411.738 287.951 408.604 282.393 405.988 276.587C404.902 273.483 404.953 271.72 405.732 270.11C406.505 268.87 407.527 267.805 408.734 266.981C412.771 264.311 416.936 261.602 419.759 259.776C424.792 256.518 428.778 253.938 431.346 252.111C440.99 245.366 447.736 238.199 451.951 230.189C454.893 224.656 456.608 218.553 456.98 212.297C457.353 206.041 456.374 199.779 454.11 193.935C447.723 177.123 431.844 166.686 412.605 166.686C408.547 166.682 404.5 167.111 400.533 167.964C399.473 168.194 398.412 168.436 397.378 168.705C397.556 157.207 397.301 145.071 396.279 133.127C392.651 91.1365 377.947 69.1256 362.618 51.5732C352.801 40.574 341.238 31.2685 328.394 24.0308C305.131 10.7451 278.751 4.00006 249.995 4.00006C221.24 4.00006 194.988 10.7451 171.699 24.0308C158.824 31.2707 147.238 40.5949 137.412 51.6243C122.082 69.1767 107.378 91.2259 103.75 133.178C102.728 145.123 102.473 157.322 102.639 168.756C101.604 168.487 100.557 168.245 99.4964 168.015C95.5291 167.162 91.4823 166.734 87.4243 166.737C68.1728 166.737 52.2682 177.174 45.9064 193.986C43.6324 199.832 42.6437 206.099 43.0074 212.362C43.3711 218.624 45.0788 224.735 48.0142 230.279C52.2427 238.289 58.9877 245.455 68.6327 252.2C71.1876 253.989 75.1861 256.569 80.2193 259.865C82.9404 261.628 86.9133 264.209 90.8096 266.789C92.1728 267.67 93.3315 268.833 94.2077 270.2C95.0253 271.873 95.0508 273.675 93.8372 276.996C91.2559 282.679 88.1736 288.122 84.6266 293.258C72.184 311.462 54.3761 326.894 31.637 339.247C19.5905 345.635 7.07124 349.901 1.7825 364.273C-2.20322 375.119 0.402827 387.459 10.5332 397.858C14.2511 401.739 18.5634 405.003 23.3079 407.528C33.1801 412.954 43.6777 417.153 54.5677 420.035C56.815 420.614 58.9485 421.569 60.8784 422.858C64.5703 426.09 64.0465 430.957 68.9648 438.085C71.4337 441.769 74.5707 444.958 78.2137 447.488C88.5357 454.616 100.135 455.063 112.424 455.536C123.526 455.957 136.109 456.443 150.48 461.182C156.433 463.149 162.616 466.956 169.783 471.402C186.991 481.979 210.547 496.453 249.97 496.453C289.393 496.453 313.115 481.903 330.451 471.287C337.566 466.918 343.711 463.149 349.498 461.233C363.869 456.481 376.453 456.008 387.554 455.587C399.843 455.114 411.443 454.667 421.765 447.539C426.079 444.53 429.674 440.604 432.291 436.041C435.83 430.024 435.74 425.822 439.062 422.883C440.872 421.656 442.876 420.74 444.989 420.175C456.028 417.285 466.668 413.046 476.67 407.554C481.711 404.85 486.249 401.297 490.084 397.053L490.212 396.9C499.716 386.731 502.105 374.748 498.208 364.171ZM463.167 383.001C441.795 394.805 427.59 393.54 416.54 400.655C407.15 406.698 412.707 419.728 405.886 424.429C397.505 430.216 372.735 424.02 340.734 434.585C314.342 443.31 297.505 468.4 250.034 468.4C202.563 468.4 186.122 443.361 159.295 434.521C127.358 423.956 102.537 430.152 94.1438 424.365C87.3349 419.664 92.8663 406.634 83.4897 400.592C72.4268 393.476 58.2213 394.741 36.8619 383.001C23.2568 375.489 30.9728 370.839 35.5078 368.642C112.923 331.161 125.276 273.291 125.825 268.999C126.489 263.8 127.23 259.712 121.507 254.423C115.976 249.313 91.4356 234.124 84.6266 229.372C73.3593 221.503 68.4027 213.646 72.0563 203.988C74.6112 197.307 80.8453 194.791 87.386 194.791C89.4531 194.797 91.5135 195.028 93.5306 195.481C105.897 198.163 117.905 204.359 124.841 206.032C125.677 206.247 126.534 206.363 127.396 206.377C131.101 206.377 132.404 204.512 132.149 200.271C131.357 186.743 129.44 160.376 131.574 135.733C134.499 101.829 145.422 85.0302 158.401 70.1732C164.635 63.0321 193.927 32.0789 249.944 32.0789C305.962 32.0789 335.331 62.9043 341.565 70.0199C354.557 84.8769 365.492 101.676 368.392 135.58C370.525 160.222 368.686 186.602 367.817 200.118C367.523 204.576 368.864 206.224 372.569 206.224C373.431 206.21 374.289 206.094 375.124 205.879C382.073 204.206 394.082 198.01 406.448 195.327C408.465 194.875 410.525 194.644 412.592 194.637C419.171 194.637 425.367 197.192 427.922 203.835C431.576 213.493 426.644 221.349 415.364 229.219C408.555 233.971 384.015 249.147 378.484 254.27C372.748 259.559 373.502 263.646 374.166 268.846C374.715 273.202 387.056 331.071 464.483 368.489C469.057 370.775 476.773 375.425 463.167 383.001Z" fill="black"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 6.0 KiB |
3
assets/custom-icons/icons/standardnotes.svg
Normal file
|
After Width: | Height: | Size: 389 KiB |
44
assets/custom-icons/icons/techlore.svg
Normal file
@@ -0,0 +1,44 @@
|
||||
<svg viewBox="0 0 6048 6048" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
|
||||
<g id="OriginalVar02" transform="matrix(2.14229,0,0,2.14229,-3453.84,-3453.84)">
|
||||
<g transform="matrix(0.946278,0,0,0.946278,58.4097,253.617)">
|
||||
<circle cx="3133.55" cy="2927.26" r="1491.53" style="fill:rgb(238,81,40);"/>
|
||||
<clipPath id="_clip1">
|
||||
<circle cx="3133.55" cy="2927.26" r="1491.53"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip1)">
|
||||
<g transform="matrix(0.707107,-0.707107,0.707107,0.707107,-1135.13,2924.48)">
|
||||
<rect x="651.828" y="3023.62" width="4729.24" height="1958.3" style="fill:rgb(250,179,20);"/>
|
||||
</g>
|
||||
<g transform="matrix(1,0,0,1,109.931,-96.3589)">
|
||||
<path d="M3023.62,1353.88L3023.62,2776.29L3028.21,3023.62L4304.79,1747.04L3577.71,1353.88L3023.62,1353.88Z" style="fill:rgb(124,187,65);"/>
|
||||
</g>
|
||||
<g transform="matrix(1,0,0,1,109.931,-96.3589)">
|
||||
<path d="M4920.41,3023.62L3028.21,3023.62L4391.69,1660.14L4920.41,3023.62Z" style="fill:rgb(39,154,213);"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g transform="matrix(0.834404,0,0,0.834404,408.972,581.101)">
|
||||
<circle cx="3133.55" cy="2927.26" r="1491.53"/>
|
||||
<clipPath id="_clip2">
|
||||
<circle cx="3133.55" cy="2927.26" r="1491.53"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip2)">
|
||||
<g transform="matrix(2.13311,0,0,2.13311,-3918.18,-3725.29)">
|
||||
<circle cx="3305.85" cy="4518.47" r="1209.3" style="fill:white;"/>
|
||||
</g>
|
||||
<g transform="matrix(0.769998,0,0,0.769998,805.369,599.08)">
|
||||
<path d="M3047.81,4345.68C3032.69,4353.73 3014.55,4353.73 2999.44,4345.68C2931.61,4308.11 2734.01,4185.69 2573.45,3956.88C2453.8,3786.35 2399.49,3593.47 2377.44,3491.3C2373.47,3472.7 2377.15,3453.29 2387.64,3437.43C2398.12,3421.57 2414.55,3410.59 2433.22,3406.95C2510.15,3391.86 2638,3360.86 2745.78,3306.34C2856.29,3250.44 2942.35,3175.89 2987.84,3131.96C3007.79,3112.67 3039.45,3112.67 3059.41,3131.96C3104.89,3175.89 3190.96,3250.44 3301.46,3306.34C3409.25,3360.86 3537.09,3391.86 3614.03,3406.95C3632.7,3410.59 3649.12,3421.57 3659.61,3437.43C3670.1,3453.29 3673.77,3472.7 3669.81,3491.3C3647.75,3593.47 3593.45,3786.35 3473.79,3956.88C3313.24,4185.69 3115.64,4308.11 3047.81,4345.68Z" style="fill:rgb(250,179,20);"/>
|
||||
</g>
|
||||
<g transform="matrix(1.19846,0,0,1.19846,-490.136,-696.426)">
|
||||
<path d="M2994.76,2354.51C3000.61,2364.97 3011.65,2371.44 3023.62,2371.44C3035.6,2371.44 3046.64,2364.97 3052.48,2354.51C3107.2,2256.62 3193.51,2183.01 3301.76,2154.01C3538.6,2090.55 3791.31,2264.5 3865.72,2542.23C3940.14,2819.95 3808.27,3096.95 3571.43,3160.41C3370.55,3214.24 3158.25,3097.27 3053.02,2891.07C3047.36,2880.06 3036.01,2873.14 3023.62,2873.14C3011.24,2873.14 2999.89,2880.06 2994.22,2891.07C2888.99,3097.27 2676.7,3214.24 2475.82,3160.41C2238.97,3096.95 2107.11,2819.95 2181.52,2542.23C2255.94,2264.5 2508.64,2090.55 2745.48,2154.01C2853.73,2183.01 2940.05,2256.62 2994.76,2354.51Z" style="fill:white;"/>
|
||||
</g>
|
||||
<g transform="matrix(1.52514,0,0,1.52514,-1330.46,-1816.92)">
|
||||
<circle cx="2728.54" cy="2896.83" r="108.215"/>
|
||||
</g>
|
||||
<g transform="matrix(1.52514,0,0,1.52514,-725.25,-1816.92)">
|
||||
<circle cx="2728.54" cy="2896.83" r="108.215"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.7 KiB |
1
assets/custom-icons/icons/termius.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Termius</title><path d="M17.812 19.381A6.194 6.194 0 0 0 24 13.193c0-1.7-.723-3.352-1.958-4.515a6.01 6.01 0 0 0-6.005-5.955 5.98 5.98 0 0 0-2.731.656 5.985 5.985 0 0 0-4.12-1.635 6.011 6.011 0 0 0-6 5.743A6.224 6.224 0 0 0 0 12.917a6.225 6.225 0 0 0 6.706 6.2 6.426 6.426 0 0 0 5.508 3.14 6.395 6.395 0 0 0 5.347-2.881c.084.003.167.005.25.005zm-5.598 1.242A4.792 4.792 0 0 1 7.9 17.888l-.267-.562-.613.108a4.592 4.592 0 0 1-5.387-4.516A4.59 4.59 0 0 1 4.34 8.734l.506-.228-.026-.555a4.377 4.377 0 0 1 4.367-4.574c1.297 0 2.512.566 3.347 1.56l.47.56.609-.407a4.349 4.349 0 0 1 2.425-.734 4.378 4.378 0 0 1 4.364 4.632l-.025.416.322.265a4.612 4.612 0 0 1 1.669 3.524 4.561 4.561 0 0 1-5.14 4.518l-.554-.071-.267.49a4.764 4.764 0 0 1-4.192 2.493zm3.102-6.533.016-.007c.212-.091.288-.171.288-.393v-.278c0-.244-.14-.401-.37-.401h-.013l-.046.01a4.534 4.534 0 0 1-1.502.272c-.48 0-.954-.09-1.409-.27l-.013-.005-.052-.007c-.23 0-.37.157-.37.401v.278c0 .209.078.303.261.382l.02.009.02.008a3.91 3.91 0 0 0 1.544.32c.525 0 1.071-.107 1.626-.319zm-7.081-2.285c0-.224.116-.348.272-.38l1.501-.394-1.505-.395c-.156-.041-.268-.164-.268-.38v-.473c0-.207.124-.296.266-.296.046 0 .094.01.141.028l2.68.867c.203.068.315.231.315.455v.387c0 .224-.112.388-.316.456l-2.685.868a.437.437 0 0 1-.125.02c-.168 0-.276-.12-.276-.297v-.466z"/></svg>
|
||||
|
After Width: | Height: | Size: 1.4 KiB |
1
assets/custom-icons/icons/trading212.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" id="Layer_1" x="0" y="0" xml:space="preserve" viewBox="416.27 4.60 176.09 146.40"><style>.st0{fill:#373944}</style><path id="logo--en__char--2" d="M504.3 64.4l35.7 79.3c1.8 5.5 5.5 7.3 10.1 7.3H584c7.3 0 10.1-4.6 7.3-11L533.6 11.9c-1.8-5.5-5.5-7.3-10.1-7.3h-38.4c-4.6 0-8.2 1.8-10.1 7.3L417.3 140c-2.7 6.4 0 11 7.3 11h33.9c4.6 0 8.2-1.8 10.1-7.3l35.7-79.3z" fill="#4ba4de"></path></svg>
|
||||
|
After Width: | Height: | Size: 441 B |
7
assets/custom-icons/icons/tradingview.svg
Normal file
@@ -0,0 +1,7 @@
|
||||
<svg viewBox="74.19999694824219 156.22198486328125 352.21697998046875 181.93902587890625" xmlns="http://www.w3.org/2000/svg">
|
||||
<g>
|
||||
<path style="stroke-width: 0px; stroke: rgb(41, 98, 255); stroke-miterlimit: 1; paint-order: stroke; fill: rgb(41, 98, 255);" d="M 74.268 158.688 L 216.747 158.711 L 217.506 338.161 L 145.466 337.657 L 145.445 229.983 L 74.2 229.871 L 74.268 158.688 Z"></path>
|
||||
<circle style="fill: rgb(41, 98, 255);" cx="270.59" cy="192.178" r="35.956"></circle>
|
||||
<polygon style="stroke: rgb(0, 0, 0); fill: rgb(41, 98, 255); stroke-width: 0px;" points="343.41 158.808 426.417 158.896 351.232 336.856 269.104 336.679 342.837 158.951"></polygon>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 686 B |
1
assets/custom-icons/icons/transip.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120.1 21.4"><path d="M12.7 12.4c-.1 2.5-.3 2.8-3.2 2.897h-.8c-2.399-.1-3.1-.6-3.1-2.698V6.7h9V4.6h-9V1.8H2.9v2.9H0v2.1h2.9v6.6c0 1 .3 2.1 1.1 2.8.8.8 2.2 1.2 4.3 1.2h1.2c2.5 0 3.8-.5 4.6-1.301.7-.802.8-2 .8-3.199v-1.5h-2.3v1h.1zm17.9-6.9c-.9-.7-2.4-1-4.5-1H24c-1.4 0-3 .3-3.9 1.5V4.6h-2.5v12.5h2.7V9.3c0-1.5 1-2.7 3.3-2.7H25c4 .1 4.4.3 4.5 3.3v.7H32V8.9c-.1-1.5-.5-2.7-1.4-3.4zM48 13.7c0 .7-.3 1-1.2 1.3-.9.3-2.3.3-4.3.3h-3c-3.1-.1-3.4-.5-3.4-1.7v-.4c0-1.4.6-1.601 3.5-1.7h3.5c1.7 0 3 0 3.8.3s1.1.6 1.1 1.4v.5zm-4.6-9.2h-3.6c-2 0-3.5.2-4.4.8-1 .5-1.4 1.4-1.4 2.6v.8h2.7v-.8c0-.9.3-1.4 3.2-1.4h3.3c3.5 0 4.8.3 4.8 2.3v1.8c-.8-.9-2.1-1.1-4.6-1.1h-3.6c-2 0-3.5.1-4.601.5-1.1.4-1.7 1.3-1.7 2.8v.8c0 1.2.2 2.103.9 2.801.7.699 1.8 1 3.6 1h5.4c2.9 0 4-.198 4.6-1v.802h2.7V8.8C50.7 5 47.6 4.5 43.4 4.5zm25.7 1.2c-.9-.8-2.4-1.3-4.5-1.3h-3.4c-2.5 0-4.299.3-5.299 1.8V4.6h-2.5v12.5h2.7V10c0-2.7 1-3.5 6.3-3.5H63c4.4.1 4.699 1 4.699 2.7v7.9H70.4V8.8c-.099-1.2-.4-2.3-1.3-3.1zm19.3 4.7c-1.103-.5-2.5-.6-4.201-.6h-6c-2.398-.1-2.5-.5-2.5-1.4V8c0-.7.102-.9.602-1.1.5-.2 1.5-.3 3.1-.3h3.9c1.199 0 2.199 0 2.799.2.599.2.9.5.9 1.4v.3h2.5v-.8c0-.9-.199-1.8-1.1-2.3-.9-.6-2.4-.9-4.9-.9H80c-2.801 0-4.5.3-5.6.8-1 .5-1.4 1.4-1.4 2.4v.7c0 1.2.301 2.1 1.1 2.6.801.6 1.9.8 3.5.8h6.9c2.699.101 2.801.5 2.9 1.601v.102c0 .898-.201 1.2-.801 1.5-.599.197-1.699.297-3.4.297h-4.898c-2.301 0-2.9-.5-3-1.899V12.6h-2.5v.9c0 1.9.799 2.9 2.1 3.4 1.199.5 2.9.5 4.5.5H83.6c2.701 0 6.4-.103 6.4-3.7.1-1.8-.6-2.8-1.6-3.3z"/><path fill="#187dc1" d="M96.5 0h2.699v2.2H96.5zm0 4.6h2.699v12.5H96.5zm20.801 7.6c0 2.7-1.301 3.1-4 3.1h-4c-2.4 0-4.102-.399-4.201-3.2V9.8c0-2 1-3.3 3.9-3.3h4.5c3.1.1 3.801 1 3.801 3.3v2.4zM118 5.5c-1.199-.8-2.801-1-4.4-1h-4.299C107.5 4.5 105.9 5 105 6.1V4.6h-2.5v16.8h2.699v-5.3c.602.9 1.801 1.3 3.801 1.3h4.301c2.299 0 4-.301 5.199-1.2 1.1-.9 1.6-2.3 1.6-4.3V9.8c-.1-2.2-.901-3.5-2.1-4.3z"/></svg>
|
||||
|
After Width: | Height: | Size: 1.9 KiB |
1
assets/custom-icons/icons/tresorit.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="#1f85e9" d="M256 0l-30 52.278h30l67.444 39.879L256 134.102l-30 52.993h30l111.124-69.111 64.944 38.401v199.23L256 459.722h-30L256 512l221.069-130.715v-250.57z"/><path fill="#0ab2db" d="M79.932 355.615v-59.018L256 187.095v-52.993L79.932 243.604v-87.219L256 52.278V0L34.931 130.715v250.57L256 512v-52.278z"/></svg>
|
||||
|
After Width: | Height: | Size: 385 B |
3
assets/custom-icons/icons/tweakers.svg
Normal file
|
After Width: | Height: | Size: 17 KiB |
1
assets/custom-icons/icons/twingate.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg width="86" height="20" xmlns="http://www.w3.org/2000/svg" id="svg712272324_2169"><path fill-rule="evenodd" clip-rule="evenodd" d="M0 8.516V17.2s1.298-.89 2.75-1.91v-4.774c0-2.347.707-3.104 2.62-4.526l2.624-1.95V0S4.198 2.816 2.62 3.99C.707 5.412 0 6.17 0 8.516ZM4 20v-8.684c0-2.347.707-3.104 2.62-4.526 1.578-1.174 5.374-3.99 5.374-3.99v7.577c0 .218.001.425.003.624.018 2.099.027 3.218-2.12 4.841C8.105 17.184 4 20 4 20ZM26.8 5.617h-3.4v9.825h-2V5.617H18V3.72h8.802L26.8 5.617Zm5.336 3.947h.017l1.925 5.878h1.866l2.989-8.57h-2l-1.931 6.16-1.944-6.16h-1.814l-1.965 6.144-1.915-6.143h-2.032l2.995 8.57h1.865l1.944-5.88Zm8-2.691h2.47v8.57h-1.964v-6.82h-1.134l.627-1.75Zm.259-2.642a1.231 1.231 0 0 1 2.461 0c0 .71-.511 1.205-1.221 1.205-.71 0-1.242-.495-1.242-1.205h.002Zm8.451 2.444c-1.403 0-2.277.66-2.642 1.337l-.002-1.14h-1.814v8.576h1.965v-4.97c0-1.336.776-2.114 2.015-2.114 1.173 0 1.7.771 1.7 1.944v5.134h1.966V10.06c0-1.998-1.107-3.385-3.188-3.385Zm11.207.198h1.814v8.207c0 2.262-1.454 3.979-4.096 3.979-2.576 0-3.748-1.651-3.93-2.988h1.966c.181.66.759 1.303 1.998 1.303 1.354 0 2.096-.825 2.096-2.03v-1.337c-.48.742-1.388 1.32-2.708 1.32-2.444 0-3.947-1.964-3.947-4.326 0-2.362 1.503-4.326 3.947-4.326 1.32 0 2.295.528 2.857 1.425l.003-1.227ZM57.59 8.408c-1.425 0-2.378 1.09-2.378 2.591 0 1.502.958 2.592 2.378 2.592 1.452 0 2.394-1.107 2.394-2.591 0-1.485-.94-2.592-2.393-2.592h-.001ZM70 15.441h1.814V6.89h-1.817v1.227c-.546-.897-1.552-1.426-2.89-1.426-2.525 0-3.96 2.033-3.96 4.478s1.437 4.476 3.962 4.476c1.336 0 2.345-.534 2.89-1.426v1.222Zm-.068-4.276c0 1.537-.908 2.742-2.411 2.742-1.486 0-2.411-1.206-2.411-2.742 0-1.535.907-2.74 2.411-2.74s2.411 1.204 2.411 2.74Zm3.448-6.52h1.964v2.228h1.602v1.569h-1.602v4.326c0 .676.282 1.007.958 1.007a2.42 2.42 0 0 0 .611-.083v1.701a4.31 4.31 0 0 1-1.023.099c-1.75 0-2.51-.907-2.51-2.526V4.644Zm8.474 9.311c-1.371 0-2.246-.874-2.395-2.228h6.524s.017-.298.017-.612c0-2.51-1.668-4.441-4.211-4.441s-4.26 1.98-4.26 4.475c0 2.559 1.684 4.49 4.276 4.49 1.997 0 3.516-1.204 4.028-2.905h-1.981c-.314.759-1.091 1.221-1.998 1.221Zm2.196-3.682h-4.557c.198-1.173 1.024-1.998 2.295-1.998 1.27 0 2.097.81 2.262 1.998Z"></path></svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
1
assets/custom-icons/icons/ubisoft.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Ubisoft</title><path d="M23.561 11.988C23.301-.304 6.954-4.89.656 6.634c.282.206.661.477.943.672a11.747 11.747 0 00-.976 3.067 11.885 11.885 0 00-.184 2.071C.439 18.818 5.621 24 12.005 24c6.385 0 11.556-5.17 11.556-11.556v-.455zm-20.27 2.06c-.152 1.246-.054 1.636-.054 1.788l-.282.098c-.108-.206-.37-.932-.488-1.908C2.163 10.308 4.7 6.96 8.57 6.33c3.544-.52 6.937 1.68 7.728 4.758l-.282.098c-.087-.087-.228-.336-.77-.878-4.281-4.281-11.002-2.32-11.956 3.74zm11.002 2.081a3.145 3.145 0 01-2.59 1.355 3.15 3.15 0 01-3.155-3.155 3.159 3.159 0 012.927-3.144c1.018-.043 1.972.51 2.416 1.398a2.58 2.58 0 01-.455 2.95c.293.205.575.4.856.595zm6.58.12c-1.669 3.782-5.106 5.766-8.77 5.712-7.034-.347-9.083-8.466-4.38-11.393l.207.206c-.076.108-.358.325-.791 1.182-.51 1.041-.672 2.081-.607 2.732.369 5.67 8.314 6.83 11.045 1.214C21.057 8.217 11.822.401 3.626 6.374l-.184-.184C5.599 2.808 9.816 1.3 13.837 2.309c6.147 1.55 9.453 7.956 7.035 13.94z"/></svg>
|
||||
|
After Width: | Height: | Size: 1022 B |
1
assets/custom-icons/icons/unity.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Unity</title><path d="m12.9288 4.2939 3.7997 2.1929c.1366.077.1415.2905 0 .3675l-4.515 2.6076a.4192.4192 0 0 1-.4246 0L7.274 6.8543c-.139-.0745-.1415-.293 0-.3675l3.7972-2.193V0L1.3758 5.5977V16.793l3.7177-2.1456v-4.3858c-.0025-.1565.1813-.2682.318-.1838l4.5148 2.6076a.4252.4252 0 0 1 .2136.3676v5.2127c.0025.1565-.1813.2682-.3179.1838l-3.7996-2.1929-3.7178 2.1457L12 24l9.6954-5.5977-3.7178-2.1457-3.7996 2.1929c-.1341.082-.3229-.0248-.3179-.1838V13.053c0-.1565.087-.2956.2136-.3676l4.5149-2.6076c.134-.082.3228.0224.3179.1838v4.3858l3.7177 2.1456V5.5977L12.9288 0Z"/></svg>
|
||||
|
After Width: | Height: | Size: 654 B |
1
assets/custom-icons/icons/whmcs.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" viewBox="610.85 0 209.25 205.02"><defs><style>.cls-4,.cls-5{fill-rule:evenodd}.cls-4{fill:#c3c7cc}.cls-5{fill:#8abd56}</style></defs><g id="Layer_1-2" data-name="Layer 1"><path class="cls-5" d="M706.12 154.18c-24.88 0-45.04-20.12-45.04-44.92s20.17-44.91 45.04-44.91c18.75 0 34.83 11.44 41.61 27.69h29.99c-.58-2.36-1.22-4.71-2.01-6.98l17.24-15.67-8.47-15.1-23.03 6.45a77.812 77.812 0 0 0-6.48-6.49l7.07-21.88-14.88-8.89-17.6 16.1c-2.95-.99-5.99-1.79-9.1-2.4l-5.41-22.39-17.34-.33-5.97 22.73a73.37 73.37 0 0 0-9.5 2.55l-16.3-16.96-15.22 8.31 6.33 23.37a75.446 75.446 0 0 0-6.18 6.21l-23.03-6.39-9.07 14.75L636.22 86c-.97 2.87-1.75 5.83-2.35 8.85l-22.5 6.18-.5 17.29 23.19 6.31c.68 3.2 1.58 6.32 2.66 9.35l-17.77 15.43 8.18 15.25 23.99-6.48a78.86 78.86 0 0 0 5.93 5.92l-5.56 23.97 14.77 8.28 17.47-17.04c2.64.84 5.37 1.54 8.14 2.08l5.49 23.6h17.35l5.71-23.6c3.17-.62 6.28-1.45 9.29-2.46l16.07 17.23 15.05-8.59-6.36-22.81c2.42-2.1 4.69-4.35 6.8-6.74l22.37 6.72 8.77-14.92-14.02-13.77H742.3c-8.21 11.01-21.36 18.15-36.17 18.15z"/><path class="cls-4" d="M757.72 32.4c-16.16 0-29.26 13.06-29.26 29.18s13.1 29.18 29.26 29.18 29.26-13.06 29.26-29.18-13.1-29.18-29.26-29.18zm46.88 38.87c-.42 2.05-.98 4.06-1.66 6.01l10.84 10.62-5.7 9.7-14.52-4.36a46.849 46.849 0 0 1-4.43 4.37l4.14 14.82-9.78 5.58-10.46-11.2c-1.95.66-3.96 1.2-6.02 1.6l-3.72 15.34h-11.27l-3.57-15.34c-1.81-.35-3.57-.8-5.29-1.35l-11.35 11.08-9.6-5.38 3.62-15.58a48.105 48.105 0 0 1-3.85-3.84l-15.59 4.22-5.32-9.92 11.54-10.02c-.7-1.97-1.28-4-1.72-6.08l-15.07-4.09.32-11.23 14.62-4.01c.39-1.96.9-3.88 1.53-5.75l-11.33-11.02 5.89-9.58 14.96 4.15c1.25-1.42 2.6-2.77 4.02-4.03l-4.12-15.19 9.89-5.39 10.58 11.02a49.32 49.32 0 0 1 6.18-1.66L752.24 0l11.27.22 3.5 14.54c2.02.4 3.99.92 5.91 1.57l11.44-10.46 9.66 5.78-4.6 14.21c1.49 1.32 2.9 2.73 4.22 4.22l14.96-4.19 5.5 9.8-11.2 10.18c.77 2.24 1.39 4.54 1.85 6.92l15.34 3.85-.12 11.24-15.4 3.4z"/></g></svg>
|
||||
|
After Width: | Height: | Size: 1.9 KiB |
13
assets/custom-icons/icons/windscribe.svg
Normal file
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<svg width="800px" height="800px" viewBox="0 0 192 192" xmlns="http://www.w3.org/2000/svg">
|
||||
|
||||
<g fill="none">
|
||||
|
||||
<path d="m97.156 22 49.672 21.975L170 96.111l-21.154 51.37L96.122 170l-50.775-20.6L22 97.096l22.34-53.421Z" style="fill:#000000;fill-opacity:0;stroke:#000000;stroke-width:12;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;paint-order:stroke fill markers"/>
|
||||
|
||||
<path d="M128.273 70v51.57h-7.916L96.096 98.308 71.703 121.57h-7.666V70" style="fill:#000000;fill-opacity:0;stroke:#000000;stroke-width:12;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;paint-order:stroke fill markers"/>
|
||||
|
||||
</g>
|
||||
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 677 B |
3
assets/custom-icons/icons/wise.svg
Normal file
|
After Width: | Height: | Size: 69 KiB |
5
assets/custom-icons/icons/x.svg
Normal file
@@ -0,0 +1,5 @@
|
||||
<svg width="500" height="500" viewBox="0 0 500 500" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<g style="mix-blend-mode:difference">
|
||||
<path d="M296.617 211.716L479.03 0H435.804L277.414 183.83L150.909 0H5L196.301 277.983L5 500H48.2286L215.492 305.869L349.091 500H495L296.606 211.716H296.617ZM237.409 280.432L218.026 252.752L63.8045 32.492H130.201L254.66 210.249L274.043 237.929L435.824 468.986H369.428L237.409 280.443V280.432Z" fill="white"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 458 B |
1
assets/simple-icons
Submodule
2
flutter
@@ -81,14 +81,16 @@ PODS:
|
||||
- Flutter
|
||||
- MTBBarcodeScanner
|
||||
- Reachability (3.2)
|
||||
- SDWebImage (5.15.0):
|
||||
- SDWebImage/Core (= 5.15.0)
|
||||
- SDWebImage/Core (5.15.0)
|
||||
- Sentry/HybridSDK (7.31.5)
|
||||
- SDWebImage (5.17.0):
|
||||
- SDWebImage/Core (= 5.17.0)
|
||||
- SDWebImage/Core (5.17.0)
|
||||
- Sentry/HybridSDK (8.9.1):
|
||||
- SentryPrivate (= 8.9.1)
|
||||
- sentry_flutter (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- Sentry/HybridSDK (= 7.31.5)
|
||||
- Sentry/HybridSDK (= 8.9.1)
|
||||
- SentryPrivate (8.9.1)
|
||||
- share_plus (0.0.1):
|
||||
- Flutter
|
||||
- shared_preferences_foundation (0.0.1):
|
||||
@@ -121,11 +123,11 @@ DEPENDENCIES:
|
||||
- move_to_background (from `.symlinks/plugins/move_to_background/ios`)
|
||||
- open_filex (from `.symlinks/plugins/open_filex/ios`)
|
||||
- package_info_plus (from `.symlinks/plugins/package_info_plus/ios`)
|
||||
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/ios`)
|
||||
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
|
||||
- qr_code_scanner (from `.symlinks/plugins/qr_code_scanner/ios`)
|
||||
- sentry_flutter (from `.symlinks/plugins/sentry_flutter/ios`)
|
||||
- share_plus (from `.symlinks/plugins/share_plus/ios`)
|
||||
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/ios`)
|
||||
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`)
|
||||
- sqflite (from `.symlinks/plugins/sqflite/ios`)
|
||||
- uni_links (from `.symlinks/plugins/uni_links/ios`)
|
||||
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
|
||||
@@ -140,6 +142,7 @@ SPEC REPOS:
|
||||
- Reachability
|
||||
- SDWebImage
|
||||
- Sentry
|
||||
- SentryPrivate
|
||||
- SwiftyGif
|
||||
- Toast
|
||||
|
||||
@@ -177,7 +180,7 @@ EXTERNAL SOURCES:
|
||||
package_info_plus:
|
||||
:path: ".symlinks/plugins/package_info_plus/ios"
|
||||
path_provider_foundation:
|
||||
:path: ".symlinks/plugins/path_provider_foundation/ios"
|
||||
:path: ".symlinks/plugins/path_provider_foundation/darwin"
|
||||
qr_code_scanner:
|
||||
:path: ".symlinks/plugins/qr_code_scanner/ios"
|
||||
sentry_flutter:
|
||||
@@ -185,7 +188,7 @@ EXTERNAL SOURCES:
|
||||
share_plus:
|
||||
:path: ".symlinks/plugins/share_plus/ios"
|
||||
shared_preferences_foundation:
|
||||
:path: ".symlinks/plugins/shared_preferences_foundation/ios"
|
||||
:path: ".symlinks/plugins/shared_preferences_foundation/darwin"
|
||||
sqflite:
|
||||
:path: ".symlinks/plugins/sqflite/ios"
|
||||
uni_links:
|
||||
@@ -214,13 +217,14 @@ SPEC CHECKSUMS:
|
||||
MTBBarcodeScanner: f453b33c4b7dfe545d8c6484ed744d55671788cb
|
||||
open_filex: 6e26e659846ec990262224a12ef1c528bb4edbe4
|
||||
OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c
|
||||
package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e
|
||||
package_info_plus: fd030dabf36271f146f1f3beacd48f564b0f17f7
|
||||
path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
|
||||
qr_code_scanner: bb67d64904c3b9658ada8c402e8b4d406d5d796e
|
||||
Reachability: 33e18b67625424e47b6cde6d202dce689ad7af96
|
||||
SDWebImage: 9bec4c5cdd9579e1f57104735ee0c37df274d593
|
||||
Sentry: 4c9babff9034785067c896fd580b1f7de44da020
|
||||
sentry_flutter: 1346a880b24c0240807b53b10cf50ddad40f504e
|
||||
SDWebImage: 750adf017a315a280c60fde706ab1e552a3ae4e9
|
||||
Sentry: e3203780941722a1fcfee99e351de14244c7f806
|
||||
sentry_flutter: 8f0ffd53088e6a4d50c095852c5cad9e4405025c
|
||||
SentryPrivate: 5e3683390f66611fc7c6215e27645873adb55d13
|
||||
share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68
|
||||
shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126
|
||||
sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a
|
||||
|
||||
@@ -159,7 +159,7 @@
|
||||
97C146E61CF9000F007C117D /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1300;
|
||||
LastUpgradeCheck = 1430;
|
||||
ORGANIZATIONNAME = "";
|
||||
TargetAttributes = {
|
||||
97C146ED1CF9000F007C117D = {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1300"
|
||||
LastUpgradeVersion = "1430"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
|
||||
import 'dart:async';
|
||||
import 'dart:io';
|
||||
|
||||
@@ -129,7 +128,8 @@ class _AppState extends State<App> {
|
||||
|
||||
Map<String, WidgetBuilder> get _getRoutes {
|
||||
return {
|
||||
"/": (context) => Configuration.instance.hasConfiguredAccount()
|
||||
"/": (context) => Configuration.instance.hasConfiguredAccount() ||
|
||||
Configuration.instance.hasOptedForOfflineMode()
|
||||
? const HomePage()
|
||||
: const OnboardingPage(),
|
||||
};
|
||||
|
||||
@@ -38,9 +38,7 @@ final darkTheme = ThemeData(
|
||||
fontFamily: "Inter",
|
||||
brightness: Brightness.dark,
|
||||
scaffoldBackgroundColor: Colors.black,
|
||||
backgroundColor: Colors.black,
|
||||
appBarTheme: const AppBarTheme(color: Colors.orange),
|
||||
colorScheme: const ColorScheme.dark(primary: Colors.white),
|
||||
textTheme: _buildTextTheme(Colors.white),
|
||||
outlinedButtonTheme: buildOutlinedButtonThemeData(
|
||||
bgDisabled: Colors.grey.shade500,
|
||||
@@ -59,25 +57,25 @@ final darkTheme = ThemeData(
|
||||
borderSide: BorderSide.none,
|
||||
borderRadius: BorderRadius.circular(6),
|
||||
),
|
||||
),
|
||||
), colorScheme: const ColorScheme.dark(primary: Colors.white).copyWith(background: Colors.black),
|
||||
);
|
||||
|
||||
TextTheme _buildTextTheme(Color textColor) {
|
||||
return const TextTheme().copyWith(
|
||||
headline4: TextStyle(
|
||||
headlineMedium: TextStyle(
|
||||
color: textColor,
|
||||
fontSize: 32,
|
||||
fontWeight: FontWeight.w700,
|
||||
fontFamily: "Inter",
|
||||
),
|
||||
headline5: TextStyle(
|
||||
headlineSmall: TextStyle(
|
||||
color: textColor,
|
||||
fontSize: 24,
|
||||
fontWeight: FontWeight.w600,
|
||||
fontFamily: "Inter",
|
||||
),
|
||||
// AG: Body
|
||||
headline6: TextStyle(
|
||||
titleLarge: TextStyle(
|
||||
color: textColor,
|
||||
fontSize: 18,
|
||||
fontFamily: "Inter",
|
||||
@@ -92,31 +90,31 @@ TextTheme _buildTextTheme(Color textColor) {
|
||||
height: 28,
|
||||
),
|
||||
|
||||
subtitle1: TextStyle(
|
||||
titleMedium: TextStyle(
|
||||
color: textColor,
|
||||
fontFamily: "Inter",
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
subtitle2: TextStyle(
|
||||
titleSmall: TextStyle(
|
||||
color: textColor,
|
||||
fontFamily: "Inter",
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
bodyText1: TextStyle(
|
||||
bodyLarge: TextStyle(
|
||||
fontFamily: "Inter",
|
||||
color: textColor,
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
bodyText2: TextStyle(
|
||||
bodyMedium: TextStyle(
|
||||
fontFamily: "Inter",
|
||||
color: textColor,
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
caption: TextStyle(
|
||||
bodySmall: TextStyle(
|
||||
color: textColor.withOpacity(0.6),
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w500,
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import 'dart:async';
|
||||
import 'dart:convert';
|
||||
import 'dart:io' as io;
|
||||
import 'dart:typed_data';
|
||||
@@ -29,15 +30,23 @@ class Configuration {
|
||||
);
|
||||
static const emailKey = "email";
|
||||
static const keyAttributesKey = "key_attributes";
|
||||
static const keyKey = "key";
|
||||
|
||||
static const keyShouldShowLockScreen = "should_show_lock_screen";
|
||||
static const lastTempFolderClearTimeKey = "last_temp_folder_clear_time";
|
||||
static const keyKey = "key";
|
||||
static const secretKeyKey = "secret_key";
|
||||
static const authSecretKeyKey = "auth_secret_key";
|
||||
static const offlineAuthSecretKey = "offline_auth_secret_key";
|
||||
static const tokenKey = "token";
|
||||
static const encryptedTokenKey = "encrypted_token";
|
||||
static const userIDKey = "user_id";
|
||||
static const hasMigratedSecureStorageKey = "has_migrated_secure_storage";
|
||||
static const hasOptedForOfflineModeKey = "has_opted_for_offline_mode";
|
||||
final List<String> onlineSecureKeys = [
|
||||
keyKey,
|
||||
secretKeyKey,
|
||||
authSecretKeyKey,
|
||||
];
|
||||
|
||||
final kTempFolderDeletionTimeBuffer = const Duration(days: 1).inMicroseconds;
|
||||
|
||||
@@ -45,28 +54,20 @@ class Configuration {
|
||||
|
||||
String? _cachedToken;
|
||||
late String _documentsDirectory;
|
||||
String? _key;
|
||||
late SharedPreferences _preferences;
|
||||
String? _key;
|
||||
String? _secretKey;
|
||||
String? _authSecretKey;
|
||||
String? _offlineAuthKey;
|
||||
late FlutterSecureStorage _secureStorage;
|
||||
late String _tempDirectory;
|
||||
late String _thumbnailCacheDirectory;
|
||||
|
||||
// 6th July 22: Remove this after 3 months. Hopefully, active users
|
||||
// will migrate to newer version of the app, where shared media is stored
|
||||
// on appSupport directory which OS won't clean up automatically
|
||||
late String _sharedTempMediaDirectory;
|
||||
|
||||
late String _sharedDocumentsMediaDirectory;
|
||||
String? _volatilePassword;
|
||||
|
||||
final _secureStorageOptionsIOS = const IOSOptions(
|
||||
accessibility: KeychainAccessibility.first_unlock_this_device,
|
||||
);
|
||||
|
||||
// const IOSOptions(accessibility: IOSAccessibility.first_unlock);
|
||||
|
||||
Future<void> init() async {
|
||||
_preferences = await SharedPreferences.getInstance();
|
||||
_secureStorage = const FlutterSecureStorage();
|
||||
@@ -88,15 +89,27 @@ class Configuration {
|
||||
_logger.warning(e);
|
||||
}
|
||||
tempDirectory.createSync(recursive: true);
|
||||
final tempDirectoryPath = (await getTemporaryDirectory()).path;
|
||||
_thumbnailCacheDirectory = tempDirectoryPath + "/thumbnail-cache";
|
||||
io.Directory(_thumbnailCacheDirectory).createSync(recursive: true);
|
||||
_sharedTempMediaDirectory = tempDirectoryPath + "/ente-shared-media";
|
||||
io.Directory(_sharedTempMediaDirectory).createSync(recursive: true);
|
||||
_sharedDocumentsMediaDirectory = _documentsDirectory + "/ente-shared-media";
|
||||
io.Directory(_sharedDocumentsMediaDirectory).createSync(recursive: true);
|
||||
await _initOnlineAccount();
|
||||
await _initOfflineAccount();
|
||||
}
|
||||
|
||||
Future<void> _initOfflineAccount() async {
|
||||
_offlineAuthKey = await _secureStorage.read(
|
||||
key: offlineAuthSecretKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> _initOnlineAccount() async {
|
||||
if (!_preferences.containsKey(tokenKey)) {
|
||||
await _secureStorage.deleteAll(iOptions: _secureStorageOptionsIOS);
|
||||
for (final key in onlineSecureKeys) {
|
||||
unawaited(
|
||||
_secureStorage.delete(
|
||||
key: key,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
),
|
||||
);
|
||||
}
|
||||
} else {
|
||||
_key = await _secureStorage.read(
|
||||
key: keyKey,
|
||||
@@ -113,13 +126,17 @@ class Configuration {
|
||||
if (_key == null) {
|
||||
await logout(autoLogout: true);
|
||||
}
|
||||
await _migrateSecurityStorageToFirstUnlock();
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> logout({bool autoLogout = false}) async {
|
||||
await _preferences.clear();
|
||||
await _secureStorage.deleteAll(iOptions: _secureStorageOptionsIOS);
|
||||
for (String key in onlineSecureKeys) {
|
||||
await _secureStorage.delete(
|
||||
key: key,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
}
|
||||
await AuthenticatorDB.instance.clearTable();
|
||||
_key = null;
|
||||
_cachedToken = null;
|
||||
@@ -179,8 +196,9 @@ class Configuration {
|
||||
return KeyGenResult(attributes, privateAttributes, loginKey);
|
||||
}
|
||||
|
||||
|
||||
Future<Tuple2<KeyAttributes, Uint8List>> getAttributesForNewPassword(String password) async {
|
||||
Future<Tuple2<KeyAttributes, Uint8List>> getAttributesForNewPassword(
|
||||
String password,
|
||||
) async {
|
||||
// Get master key
|
||||
final masterKey = getKey();
|
||||
|
||||
@@ -215,10 +233,11 @@ class Configuration {
|
||||
// SRP setup for existing users.
|
||||
Future<Uint8List> decryptSecretsAndGetKeyEncKey(
|
||||
String password,
|
||||
KeyAttributes attributes,
|
||||
) async {
|
||||
KeyAttributes attributes, {
|
||||
Uint8List? keyEncryptionKey,
|
||||
}) async {
|
||||
_logger.info('Start decryptAndSaveSecrets');
|
||||
final keyEncryptionKey = await CryptoUtil.deriveKey(
|
||||
keyEncryptionKey ??= await CryptoUtil.deriveKey(
|
||||
utf8.encode(password) as Uint8List,
|
||||
Sodium.base642bin(attributes.kekSalt),
|
||||
attributes.memLimit,
|
||||
@@ -353,52 +372,31 @@ class Configuration {
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> setKey(String? key) async {
|
||||
Future<void> setKey(String key) async {
|
||||
_key = key;
|
||||
if (key == null) {
|
||||
await _secureStorage.delete(
|
||||
key: keyKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
} else {
|
||||
await _secureStorage.write(
|
||||
key: keyKey,
|
||||
value: key,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
}
|
||||
await _secureStorage.write(
|
||||
key: keyKey,
|
||||
value: key,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> setSecretKey(String? secretKey) async {
|
||||
_secretKey = secretKey;
|
||||
if (secretKey == null) {
|
||||
await _secureStorage.delete(
|
||||
key: secretKeyKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
} else {
|
||||
await _secureStorage.write(
|
||||
key: secretKeyKey,
|
||||
value: secretKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
}
|
||||
await _secureStorage.write(
|
||||
key: secretKeyKey,
|
||||
value: secretKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> setAuthSecretKey(String? authSecretKey) async {
|
||||
_authSecretKey = authSecretKey;
|
||||
if (authSecretKey == null) {
|
||||
await _secureStorage.delete(
|
||||
key: authSecretKeyKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
} else {
|
||||
await _secureStorage.write(
|
||||
key: authSecretKeyKey,
|
||||
value: authSecretKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
}
|
||||
await _secureStorage.write(
|
||||
key: authSecretKeyKey,
|
||||
value: authSecretKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
}
|
||||
|
||||
Uint8List? getKey() {
|
||||
@@ -413,6 +411,10 @@ class Configuration {
|
||||
return _authSecretKey == null ? null : Sodium.base642bin(_authSecretKey!);
|
||||
}
|
||||
|
||||
Uint8List? getOfflineSecretKey() {
|
||||
return _offlineAuthKey == null ? null : Sodium.base642bin(_offlineAuthKey!);
|
||||
}
|
||||
|
||||
Uint8List getRecoveryKey() {
|
||||
final keyAttributes = getKeyAttributes()!;
|
||||
return CryptoUtil.decryptSync(
|
||||
@@ -427,22 +429,34 @@ class Configuration {
|
||||
return _tempDirectory;
|
||||
}
|
||||
|
||||
String getThumbnailCacheDirectory() {
|
||||
return _thumbnailCacheDirectory;
|
||||
}
|
||||
|
||||
String getOldSharedMediaCacheDirectory() {
|
||||
return _sharedTempMediaDirectory;
|
||||
}
|
||||
|
||||
String getSharedMediaDirectory() {
|
||||
return _sharedDocumentsMediaDirectory;
|
||||
}
|
||||
|
||||
bool hasConfiguredAccount() {
|
||||
return getToken() != null && _key != null;
|
||||
}
|
||||
|
||||
bool hasOptedForOfflineMode() {
|
||||
return _preferences.getBool(hasOptedForOfflineModeKey) ?? false;
|
||||
}
|
||||
|
||||
Future<void> optForOfflineMode() async {
|
||||
if ((await _secureStorage.containsKey(
|
||||
key: offlineAuthSecretKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
))) {
|
||||
_offlineAuthKey = await _secureStorage.read(
|
||||
key: offlineAuthSecretKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
} else {
|
||||
_offlineAuthKey = Sodium.bin2base64(CryptoUtil.generateKey());
|
||||
await _secureStorage.write(
|
||||
key: offlineAuthSecretKey,
|
||||
value: _offlineAuthKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
}
|
||||
await _preferences.setBool(hasOptedForOfflineModeKey, true);
|
||||
}
|
||||
|
||||
bool shouldShowLockScreen() {
|
||||
if (_preferences.containsKey(keyShouldShowLockScreen)) {
|
||||
return _preferences.getBool(keyShouldShowLockScreen)!;
|
||||
@@ -462,27 +476,4 @@ class Configuration {
|
||||
String? getVolatilePassword() {
|
||||
return _volatilePassword;
|
||||
}
|
||||
|
||||
Future<void> _migrateSecurityStorageToFirstUnlock() async {
|
||||
final hasMigratedSecureStorageToFirstUnlock =
|
||||
_preferences.getBool(hasMigratedSecureStorageKey) ?? false;
|
||||
if (!hasMigratedSecureStorageToFirstUnlock &&
|
||||
_key != null &&
|
||||
_secretKey != null) {
|
||||
await _secureStorage.write(
|
||||
key: keyKey,
|
||||
value: _key,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
await _secureStorage.write(
|
||||
key: secretKeyKey,
|
||||
value: _secretKey,
|
||||
iOptions: _secureStorageOptionsIOS,
|
||||
);
|
||||
await _preferences.setBool(
|
||||
hasMigratedSecureStorageKey,
|
||||
true,
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ const String sentryDSN =
|
||||
"https://ed4ddd6309b847ba8849935e26e9b648@sentry.ente.io/9";
|
||||
const String sentryTunnel = "https://sentry-reporter.ente.io";
|
||||
const String roadmapURL = "https://roadmap.ente.io";
|
||||
const String githubIssuesUrl = "https://github.com/ente-io/auth/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc";
|
||||
const int microSecondsInDay = 86400000000;
|
||||
const int android11SDKINT = 30;
|
||||
const int galleryLoadStartTime = -8000000000000000; // Wednesday, March 6, 1748
|
||||
|
||||
@@ -204,7 +204,7 @@ class SuperLogging {
|
||||
|
||||
static void setUserID(String userID) async {
|
||||
if (config.sentryDsn != null) {
|
||||
Sentry.configureScope((scope) => scope.user = SentryUser(id: userID));
|
||||
Sentry.configureScope((scope) => scope.setUser(SentryUser(id: userID)));
|
||||
$.info("setting sentry user ID to: $userID");
|
||||
}
|
||||
}
|
||||
@@ -310,7 +310,7 @@ class SuperLogging {
|
||||
if (_preferences.containsKey(keyShouldReportErrors)) {
|
||||
return _preferences.getBool(keyShouldReportErrors)!;
|
||||
} else {
|
||||
return false;
|
||||
return kDebugMode;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -22,11 +22,11 @@ class TunneledTransport implements Transport {
|
||||
: _dsn = _options.dsn != null ? Dsn.parse(_options.dsn!) : null,
|
||||
_headers = _buildHeaders(
|
||||
_options.platformChecker.isWeb,
|
||||
_options.sdk.identifier,
|
||||
_options.sentryClientName,
|
||||
) {
|
||||
_credentialBuilder = _CredentialBuilder(
|
||||
_dsn,
|
||||
_options.sdk.identifier,
|
||||
_options.sentryClientName,
|
||||
_options.clock,
|
||||
);
|
||||
}
|
||||
@@ -122,7 +122,7 @@ class _CredentialBuilder {
|
||||
return headers
|
||||
..addAll(
|
||||
<String, String>{
|
||||
'X-Sentry-Auth': '$_authHeader, sentry_timestamp=$timestamp'
|
||||
'X-Sentry-Auth': '$_authHeader, sentry_timestamp=$timestamp',
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
@@ -11,11 +11,6 @@ final lightThemeData = ThemeData(
|
||||
iconTheme: const IconThemeData(color: Colors.black),
|
||||
primaryIconTheme:
|
||||
const IconThemeData(color: Colors.red, opacity: 1.0, size: 50.0),
|
||||
colorScheme: const ColorScheme.light(
|
||||
primary: Colors.black,
|
||||
secondary: Color.fromARGB(255, 163, 163, 163),
|
||||
),
|
||||
accentColor: const Color.fromRGBO(0, 0, 0, 0.6),
|
||||
outlinedButtonTheme: buildOutlinedButtonThemeData(
|
||||
bgDisabled: const Color.fromRGBO(158, 158, 158, 1),
|
||||
bgEnabled: const Color.fromRGBO(0, 0, 0, 1),
|
||||
@@ -26,9 +21,7 @@ final lightThemeData = ThemeData(
|
||||
onPrimary: const Color.fromRGBO(255, 255, 255, 1),
|
||||
primary: const Color.fromRGBO(0, 0, 0, 1),
|
||||
),
|
||||
toggleableActiveColor: const Color.fromRGBO(102, 187, 106, 1),
|
||||
scaffoldBackgroundColor: const Color.fromRGBO(255, 255, 255, 1),
|
||||
backgroundColor: const Color.fromRGBO(255, 255, 255, 1),
|
||||
appBarTheme: const AppBarTheme().copyWith(
|
||||
backgroundColor: Colors.white,
|
||||
foregroundColor: Colors.black,
|
||||
@@ -38,8 +31,8 @@ final lightThemeData = ThemeData(
|
||||
//https://api.flutter.dev/flutter/material/TextTheme-class.html
|
||||
textTheme: _buildTextTheme(const Color.fromRGBO(0, 0, 0, 1)),
|
||||
primaryTextTheme: const TextTheme().copyWith(
|
||||
bodyText2: const TextStyle(color: Colors.yellow),
|
||||
bodyText1: const TextStyle(color: Colors.orange),
|
||||
bodyMedium: const TextStyle(color: Colors.yellow),
|
||||
bodyLarge: const TextStyle(color: Colors.orange),
|
||||
),
|
||||
cardColor: const Color.fromRGBO(250, 250, 250, 1.0),
|
||||
dialogTheme: const DialogTheme().copyWith(
|
||||
@@ -79,7 +72,27 @@ final lightThemeData = ThemeData(
|
||||
? const Color.fromRGBO(255, 255, 255, 1)
|
||||
: const Color.fromRGBO(0, 0, 0, 1);
|
||||
}),
|
||||
),
|
||||
), radioTheme: RadioThemeData(
|
||||
fillColor: MaterialStateProperty.resolveWith<Color?>((Set<MaterialState> states) {
|
||||
if (states.contains(MaterialState.disabled)) { return null; }
|
||||
if (states.contains(MaterialState.selected)) { return const Color.fromRGBO(102, 187, 106, 1); }
|
||||
return null;
|
||||
}),
|
||||
), switchTheme: SwitchThemeData(
|
||||
thumbColor: MaterialStateProperty.resolveWith<Color?>((Set<MaterialState> states) {
|
||||
if (states.contains(MaterialState.disabled)) { return null; }
|
||||
if (states.contains(MaterialState.selected)) { return const Color.fromRGBO(102, 187, 106, 1); }
|
||||
return null;
|
||||
}),
|
||||
trackColor: MaterialStateProperty.resolveWith<Color?>((Set<MaterialState> states) {
|
||||
if (states.contains(MaterialState.disabled)) { return null; }
|
||||
if (states.contains(MaterialState.selected)) { return const Color.fromRGBO(102, 187, 106, 1); }
|
||||
return null;
|
||||
}),
|
||||
), colorScheme: const ColorScheme.light(
|
||||
primary: Colors.black,
|
||||
secondary: Color.fromARGB(255, 163, 163, 163),
|
||||
).copyWith(background: const Color.fromRGBO(255, 255, 255, 1)),
|
||||
);
|
||||
|
||||
final darkThemeData = ThemeData(
|
||||
@@ -90,13 +103,10 @@ final darkThemeData = ThemeData(
|
||||
primaryIconTheme:
|
||||
const IconThemeData(color: Colors.red, opacity: 1.0, size: 50.0),
|
||||
hintColor: const Color.fromRGBO(158, 158, 158, 1),
|
||||
colorScheme: const ColorScheme.dark(primary: Colors.white),
|
||||
accentColor: const Color.fromRGBO(45, 194, 98, 0.2),
|
||||
buttonTheme: const ButtonThemeData().copyWith(
|
||||
buttonColor: const Color.fromRGBO(45, 194, 98, 1.0),
|
||||
),
|
||||
textTheme: _buildTextTheme(const Color.fromRGBO(255, 255, 255, 1)),
|
||||
toggleableActiveColor: const Color.fromRGBO(102, 187, 106, 1),
|
||||
outlinedButtonTheme: buildOutlinedButtonThemeData(
|
||||
bgDisabled: const Color.fromRGBO(158, 158, 158, 1),
|
||||
bgEnabled: const Color.fromRGBO(255, 255, 255, 1),
|
||||
@@ -108,7 +118,6 @@ final darkThemeData = ThemeData(
|
||||
primary: const Color.fromRGBO(255, 255, 255, 1),
|
||||
),
|
||||
scaffoldBackgroundColor: const Color.fromRGBO(0, 0, 0, 1),
|
||||
backgroundColor: const Color.fromRGBO(0, 0, 0, 1),
|
||||
appBarTheme: const AppBarTheme().copyWith(
|
||||
color: Colors.black,
|
||||
elevation: 0,
|
||||
@@ -155,59 +164,76 @@ final darkThemeData = ThemeData(
|
||||
return const Color.fromRGBO(158, 158, 158, 1);
|
||||
}
|
||||
}),
|
||||
),
|
||||
), radioTheme: RadioThemeData(
|
||||
fillColor: MaterialStateProperty.resolveWith<Color?>((Set<MaterialState> states) {
|
||||
if (states.contains(MaterialState.disabled)) { return null; }
|
||||
if (states.contains(MaterialState.selected)) { return const Color.fromRGBO(102, 187, 106, 1); }
|
||||
return null;
|
||||
}),
|
||||
), switchTheme: SwitchThemeData(
|
||||
thumbColor: MaterialStateProperty.resolveWith<Color?>((Set<MaterialState> states) {
|
||||
if (states.contains(MaterialState.disabled)) { return null; }
|
||||
if (states.contains(MaterialState.selected)) { return const Color.fromRGBO(102, 187, 106, 1); }
|
||||
return null;
|
||||
}),
|
||||
trackColor: MaterialStateProperty.resolveWith<Color?>((Set<MaterialState> states) {
|
||||
if (states.contains(MaterialState.disabled)) { return null; }
|
||||
if (states.contains(MaterialState.selected)) { return const Color.fromRGBO(102, 187, 106, 1); }
|
||||
return null;
|
||||
}),
|
||||
), colorScheme: const ColorScheme.dark(primary: Colors.white).copyWith(background: const Color.fromRGBO(0, 0, 0, 1)),
|
||||
);
|
||||
|
||||
TextTheme _buildTextTheme(Color textColor) {
|
||||
return const TextTheme().copyWith(
|
||||
headline4: TextStyle(
|
||||
headlineMedium: TextStyle(
|
||||
color: textColor,
|
||||
fontSize: 32,
|
||||
fontWeight: FontWeight.w600,
|
||||
fontFamily: 'Inter',
|
||||
),
|
||||
headline5: TextStyle(
|
||||
headlineSmall: TextStyle(
|
||||
color: textColor,
|
||||
fontSize: 24,
|
||||
fontWeight: FontWeight.w600,
|
||||
fontFamily: 'Inter',
|
||||
),
|
||||
headline6: TextStyle(
|
||||
titleLarge: TextStyle(
|
||||
color: textColor,
|
||||
fontSize: 18,
|
||||
fontFamily: 'Inter',
|
||||
fontWeight: FontWeight.w600,
|
||||
),
|
||||
subtitle1: TextStyle(
|
||||
titleMedium: TextStyle(
|
||||
color: textColor,
|
||||
fontFamily: 'Inter',
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
subtitle2: TextStyle(
|
||||
titleSmall: TextStyle(
|
||||
color: textColor,
|
||||
fontFamily: 'Inter',
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
bodyText1: TextStyle(
|
||||
bodyLarge: TextStyle(
|
||||
fontFamily: 'Inter',
|
||||
color: textColor,
|
||||
fontSize: 16,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
bodyText2: TextStyle(
|
||||
bodyMedium: TextStyle(
|
||||
fontFamily: 'Inter',
|
||||
color: textColor,
|
||||
fontSize: 14,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
caption: TextStyle(
|
||||
bodySmall: TextStyle(
|
||||
color: textColor.withOpacity(0.4),
|
||||
fontSize: 10,
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
overline: TextStyle(
|
||||
labelSmall: TextStyle(
|
||||
fontFamily: 'Inter',
|
||||
color: textColor,
|
||||
fontSize: 14,
|
||||
@@ -344,7 +370,7 @@ extension CustomColorScheme on ColorScheme {
|
||||
? const Color.fromRGBO(245, 245, 245, 1.0)
|
||||
: const Color.fromRGBO(30, 30, 30, 1.0);
|
||||
|
||||
Color get searchResultsCountTextColor => brightness == Brightness.light
|
||||
Color get mutedTextColor => brightness == Brightness.light
|
||||
? const Color.fromRGBO(80, 80, 80, 1)
|
||||
: const Color.fromRGBO(150, 150, 150, 1);
|
||||
|
||||
@@ -410,9 +436,7 @@ ElevatedButtonThemeData buildElevatedButtonThemeData({
|
||||
}) {
|
||||
return ElevatedButtonThemeData(
|
||||
style: ElevatedButton.styleFrom(
|
||||
elevation: elevation,
|
||||
onPrimary: onPrimary,
|
||||
primary: primary,
|
||||
foregroundColor: onPrimary, backgroundColor: primary, elevation: elevation,
|
||||
alignment: Alignment.center,
|
||||
textStyle: const TextStyle(
|
||||
fontWeight: FontWeight.w600,
|
||||
|
||||
3
lib/events/icons_changed_event.dart
Normal file
@@ -0,0 +1,3 @@
|
||||
import 'package:ente_auth/events/event.dart';
|
||||
|
||||
class IconsChangedEvent extends Event {}
|
||||
@@ -9,6 +9,7 @@
|
||||
"onBoardingGetStarted": "Los geht's",
|
||||
"setupFirstAccount": "Ihr erstes Konto einrichten",
|
||||
"importScanQrCode": "Scannen eines QR-Codes",
|
||||
"qrCode": "QR-Code",
|
||||
"importEnterSetupKey": "Einen Setup-Schlüssel eingeben",
|
||||
"importAccountPageTitle": "Kontodaten eingeben",
|
||||
"secretCanNotBeEmpty": "Geheimnis darf nicht leer sein",
|
||||
@@ -57,6 +58,8 @@
|
||||
}
|
||||
},
|
||||
"contactSupport": "Support kontaktieren",
|
||||
"rateUsOnStore": "Bewerte uns auf {storeName}",
|
||||
"blog": "Blog",
|
||||
"verifyPassword": "Passwort überprüfen",
|
||||
"pleaseWait": "Bitte warten...",
|
||||
"generatingEncryptionKeysTitle": "Generierung von Verschlüsselungsschlüsseln...",
|
||||
@@ -72,10 +75,20 @@
|
||||
"changePassword": "Passwort ändern",
|
||||
"data": "Datei",
|
||||
"importCodes": "Codes importieren",
|
||||
"importTypeEnteEncrypted": "ente verschlüsselt exportieren",
|
||||
"passwordForDecryptingExport": "Passwort um den Export zu entschlüsseln",
|
||||
"passwordEmptyError": "Passwort kann nicht leer sein",
|
||||
"importFromApp": "Importiere Codes von {appName}",
|
||||
"importGoogleAuthGuide": "Exportiere deine Accounts von Google Authenticator zu einem QR-Code, durch die \"Konten übertragen\" Option. Scanne den QR-Code danach mit einem anderen Gerät.\n\nTipp: Du kannst die Kamera eines Laptops verwenden, um ein Foto den dem QR-Code zu erstellen.",
|
||||
"importSelectJsonFile": "Wähle eine JSON-Datei",
|
||||
"importEnteEncGuide": "Wähle die von ente exportierte, verschlüsselte JSON-Datei",
|
||||
"exportCodes": "Codes exportieren",
|
||||
"importLabel": "Importieren",
|
||||
"importInstruction": "Bitte wählen sie eine Datei die Codes in folgendem Format beinhaltet",
|
||||
"importCodeDelimiterInfo": "Codes können in einer neuen Zeile stehen oder durch Kommata getrennt sein",
|
||||
"selectFile": "Datei auswählen",
|
||||
"emailVerificationToggle": "E-Mail-Verifizierung",
|
||||
"authToChangeEmailVerificationSetting": "Bitte Authentifizieren um die E-Mail Bestätigung zu ändern",
|
||||
"authToViewYourRecoveryKey": "Bitte authentifizieren um ihren Wiederherstellungscode anzuzeigen",
|
||||
"authToChangeYourEmail": "Bitte authentifizieren um ihre Emailadresse zu ändern",
|
||||
"authToChangeYourPassword": "Bitte authentifizieren um ihr Passwort zu ändern",
|
||||
@@ -85,6 +98,7 @@
|
||||
"no": "Nein",
|
||||
"email": "E-Mail",
|
||||
"support": "Unterstützung",
|
||||
"general": "Allgemein",
|
||||
"settings": "Einstellungen",
|
||||
"copied": "Kopiert",
|
||||
"pleaseTryAgain": "Bitte versuchen Sie es erneut",
|
||||
@@ -94,6 +108,17 @@
|
||||
"enterYourPasswordHint": "Geben Sie Ihr Passwort ein",
|
||||
"forgotPassword": "Passwort vergessen",
|
||||
"oops": "Hopla",
|
||||
"suggestFeatures": "Features vorschlagen",
|
||||
"faq": "FAQ",
|
||||
"faq_q_1": "Wie sicher ist ente Auth?",
|
||||
"faq_a_1": "Alle Codes, die Sie über ente sichern, werden Ende-zu-Ende-verschlüsselt gespeichert. Das bedeutet, dass nur Sie auf Ihre Codes zugreifen können. Unsere Apps sind Open Source und unsere Kryptografie wurde extern überprüft.",
|
||||
"faq_q_2": "Kann ich auf meine Codes auf dem Desktop zugreifen?",
|
||||
"faq_a_2": "Sie können auf Ihre Codes im Web via auth.ente.io zugreifen.",
|
||||
"faq_q_3": "Wie kann ich Codes löschen?",
|
||||
"faq_a_3": "Sie können einen Code löschen, indem Sie auf dem Code nach links wischen.",
|
||||
"faq_q_4": "Wie kann ich das Projekt unterstützen?",
|
||||
"faq_a_4": "Sie können die Entwicklung dieses Projekts unterstützen, indem Sie unsere Fotos-App auf ente.io abonnieren.",
|
||||
"faq_q_5": "Wie kann ich FaceID Sperre in ente Auth aktivieren",
|
||||
"somethingWentWrongMessage": "Ein Fehler ist aufgetreten, bitte versuchen Sie es erneut",
|
||||
"leaveFamily": "Familie verlassen",
|
||||
"leaveFamilyMessage": "Sind Sie sicher, dass Sie den Familien-Plan verlassen wollen?",
|
||||
@@ -160,6 +185,7 @@
|
||||
"recoveryKeySaveDescription": "Wir speichern diesen Schlüssel nicht. Sichern sie dieses diesen Schlüssel bestehend aus 24 Wörtern an einem sicheren Platz.",
|
||||
"doThisLater": "Auf später verschieben",
|
||||
"saveKey": "Schlüssel speichern",
|
||||
"back": "Zurück",
|
||||
"createAccount": "Account erstellen",
|
||||
"passwordStrength": "Passwortstärke: {passwordStrengthValue}",
|
||||
"@passwordStrength": {
|
||||
@@ -223,6 +249,10 @@
|
||||
"privacy": "Datenschutz",
|
||||
"terms": "Bestimmungen",
|
||||
"checkForUpdates": "Auf Updates prüfen",
|
||||
"downloadUpdate": "Herunterladen",
|
||||
"criticalUpdateAvailable": "Kritische neue Aktualisierung ist verfügbar",
|
||||
"updateAvailable": "Aktualisierung verfügbar",
|
||||
"update": "Aktualisierung",
|
||||
"checking": "Prüfe...",
|
||||
"youAreOnTheLatestVersion": "Sie haben die aktuellste Version",
|
||||
"warning": "Warnung",
|
||||
@@ -267,5 +297,21 @@
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "Dadurch wirst du von folgendem Gerät abgemeldet:",
|
||||
"terminateSession": "Sitzungen beenden?",
|
||||
"terminate": "Beenden",
|
||||
"thisDevice": "Dieses Gerät"
|
||||
"thisDevice": "Dieses Gerät",
|
||||
"toResetVerifyEmail": "Um Ihr Passwort zurückzusetzen, verifizieren Sie bitte zuerst Ihre E-Mail-Adresse.",
|
||||
"thisEmailIsAlreadyInUse": "Diese E-Mail-Adresse wird bereits verwendet",
|
||||
"verificationFailedPleaseTryAgain": "Verifizierung fehlgeschlagen, bitte versuchen Sie es erneut",
|
||||
"yourVerificationCodeHasExpired": "Ihr Bestätigungscode ist abgelaufen",
|
||||
"incorrectCode": "Falscher Code",
|
||||
"sorryTheCodeYouveEnteredIsIncorrect": "Leider ist der eingegebene Code falsch",
|
||||
"emailChangedTo": "E-Mail-Adresse geändert zu {newEmail}",
|
||||
"authenticationFailedPleaseTryAgain": "Authentifizierung fehlgeschlagen, versuchen Sie es bitte erneut",
|
||||
"authenticationSuccessful": "Authentifizierung erfolgreich!",
|
||||
"twofactorAuthenticationSuccessfullyReset": "Zwei-Faktor-Authentifizierung (2FA) erfolgreich zurückgesetzt",
|
||||
"incorrectRecoveryKey": "Falscher Wiederherstellungs-Schlüssel",
|
||||
"theRecoveryKeyYouEnteredIsIncorrect": "Der eingegebene Wiederherstellungs-Schlüssel ist ungültig",
|
||||
"enterPassword": "Passwort eingeben",
|
||||
"editCodeAuthMessage": "Authentifizieren, um Code zu bearbeiten",
|
||||
"deleteCodeAuthMessage": "Authentifizieren, um Code zu löschen",
|
||||
"showQRAuthMessage": "Authentifizieren, um QR-Code anzuzeigen"
|
||||
}
|
||||
@@ -5,10 +5,11 @@
|
||||
"@counterAppBarTitle": {
|
||||
"description": "Text shown in the AppBar of the Counter Page"
|
||||
},
|
||||
"onBoardingBody": "Secure your 2FA codes",
|
||||
"onBoardingBody": "Securely backup your 2FA codes",
|
||||
"onBoardingGetStarted": "Get Started",
|
||||
"setupFirstAccount": "Setup your first account",
|
||||
"importScanQrCode": "Scan a QR Code",
|
||||
"qrCode": "QR Code",
|
||||
"importEnterSetupKey": "Enter a setup key",
|
||||
"importAccountPageTitle": "Enter account details",
|
||||
"secretCanNotBeEmpty": "Secret can not be empty",
|
||||
@@ -57,6 +58,9 @@
|
||||
}
|
||||
},
|
||||
"contactSupport": "Contact support",
|
||||
"rateUsOnStore" : "Rate us on {storeName}",
|
||||
"blog": "Blog",
|
||||
"merchandise": "Merchandise",
|
||||
"verifyPassword": "Verify password",
|
||||
"pleaseWait": "Please wait...",
|
||||
"generatingEncryptionKeysTitle": "Generating encryption keys...",
|
||||
@@ -66,7 +70,7 @@
|
||||
"incorrectPasswordTitle": "Incorrect password",
|
||||
"welcomeBack": "Welcome back!",
|
||||
"madeWithLoveAtPrefix": "made with ❤️ at ",
|
||||
"supportDevs": "Subscribe to <bold-green>ente</bold-green> to support this project.",
|
||||
"supportDevs": "Subscribe to <bold-green>ente</bold-green> to support us",
|
||||
"supportDiscount": "Use coupon code \"AUTH\" to get 10% off first year",
|
||||
"changeEmail": "Change email",
|
||||
"changePassword": "Change password",
|
||||
@@ -81,12 +85,14 @@
|
||||
"importSelectJsonFile": "Select JSON file",
|
||||
"importEnteEncGuide": "Select the encrypted JSON file exported from ente",
|
||||
"importRaivoGuide": "Use the \"Export OTPs to Zip archive\" option in Raivo's Settings.\n\nExtract the zip file and import the JSON file.",
|
||||
"importAegisGuide": "Use the \"Export the vault\" option in Aegis's Settings.\n\nIf your vault is encrypted, you will need to enter vault password to decrypt the vault.",
|
||||
"exportCodes": "Export codes",
|
||||
"importLabel": "Import",
|
||||
"importInstruction": "Please select a file that contains a list of your codes in the following format",
|
||||
"importCodeDelimiterInfo": "The codes can be separated by a comma or a new line",
|
||||
"selectFile": "Select file",
|
||||
"emailVerificationToggle": "Email verification",
|
||||
"emailVerificationEnableWarning": "If you are storing the 2FA to your email with us, turning on email verification could result in a deadlock. If you are locked out of one service, you might not be able to log in to the other.",
|
||||
"authToChangeEmailVerificationSetting": "Please authenticate to change email verification",
|
||||
"authToViewYourRecoveryKey": "Please authenticate to view your recovery key",
|
||||
"authToChangeYourEmail": "Please authenticate to change your email",
|
||||
@@ -97,6 +103,7 @@
|
||||
"no": "No",
|
||||
"email": "Email",
|
||||
"support": "Support",
|
||||
"general": "General",
|
||||
"settings": "Settings",
|
||||
"copied": "Copied",
|
||||
"pleaseTryAgain": "Please try again",
|
||||
@@ -106,6 +113,7 @@
|
||||
"enterYourPasswordHint": "Enter your password",
|
||||
"forgotPassword": "Forgot password",
|
||||
"oops": "Oops",
|
||||
"suggestFeatures": "Suggest features",
|
||||
"faq": "FAQ",
|
||||
"faq_q_1": "How secure is ente Auth?",
|
||||
"faq_a_1": "All codes you backup via ente is stored end-to-end encrypted. This means only you can access your codes. Our apps are open source and our cryptography has been externally audited.",
|
||||
@@ -177,12 +185,14 @@
|
||||
"enterDetailsManually": "Enter details manually",
|
||||
"edit": "Edit",
|
||||
"copiedToClipboard": "Copied to clipboard",
|
||||
"copiedNextToClipboard": "Copied next code to clipboard",
|
||||
"error": "Error",
|
||||
"recoveryKeyCopiedToClipboard": "Recovery key copied to clipboard",
|
||||
"recoveryKeyOnForgotPassword": "If you forget your password, the only way you can recover your data is with this key.",
|
||||
"recoveryKeySaveDescription": "We don't store this key, please save this 24 word key in a safe place.",
|
||||
"doThisLater": "Do this later",
|
||||
"saveKey": "Save key",
|
||||
"back": "Back",
|
||||
"createAccount": "Create account",
|
||||
"passwordStrength": "Password strength: {passwordStrengthValue}",
|
||||
"@passwordStrength": {
|
||||
@@ -246,6 +256,10 @@
|
||||
"privacy": "Privacy",
|
||||
"terms": "Terms",
|
||||
"checkForUpdates": "Check for updates",
|
||||
"downloadUpdate": "Download",
|
||||
"criticalUpdateAvailable": "Critical update available",
|
||||
"updateAvailable": "Update available",
|
||||
"update": "Update",
|
||||
"checking": "Checking...",
|
||||
"youAreOnTheLatestVersion": "You are on the latest version",
|
||||
"warning": "Warning",
|
||||
@@ -303,5 +317,24 @@
|
||||
"twofactorAuthenticationSuccessfullyReset": "Two-factor authentication successfully reset",
|
||||
"incorrectRecoveryKey": "Incorrect recovery key",
|
||||
"theRecoveryKeyYouEnteredIsIncorrect": "The recovery key you entered is incorrect",
|
||||
"enterPassword": "Enter password"
|
||||
"enterPassword": "Enter password",
|
||||
"selectExportFormat": "Select export format",
|
||||
"exportDialogDesc": "Encrypted exports will be protected by a password of your choice.",
|
||||
"encrypted": "Encrypted",
|
||||
"plainText": "Plain text",
|
||||
"passwordToEncryptExport": "Password to encrypt export",
|
||||
"export": "Export",
|
||||
"useOffline": "Use without backups",
|
||||
"signInToBackup": "Sign in to backup your codes",
|
||||
"singIn": "Sign in",
|
||||
"sigInBackupReminder": "Please export your codes to ensure that you have a backup you can restore from.",
|
||||
"offlineModeWarning": "You have chosen to proceed without backups. Please take manual backups to make sure your codes are safe.",
|
||||
"showLargeIcons": "Show large icons",
|
||||
"shouldHideCode": "Hide codes",
|
||||
"focusOnSearchBar": "Focus search on app start",
|
||||
"confirmUpdatingkey": "Are you sure you want to update the secret key?",
|
||||
"minimizeAppOnCopy": "Minimize app on copy",
|
||||
"editCodeAuthMessage": "Authenticate to edit code",
|
||||
"deleteCodeAuthMessage": "Authenticate to delete code",
|
||||
"showQRAuthMessage": "Authenticate to show QR code"
|
||||
}
|
||||
|
||||
@@ -226,5 +226,8 @@
|
||||
"authToExportCodes": "Por favor, autentifíquese para exportar sus códigos",
|
||||
"sorry": "Lo sentimos",
|
||||
"importFailureDesc": "No se pudo analizar el archivo seleccionado.\n¡Por favor escriba a support@ente.io si necesita ayuda!",
|
||||
"pendingSyncs": "Atención"
|
||||
"pendingSyncs": "Atención",
|
||||
"editCodeAuthMessage": "Autenticar para editar código",
|
||||
"deleteCodeAuthMessage": "Autenticar para borrar código",
|
||||
"showQRAuthMessage": "Autenticar para mostrar código QR"
|
||||
}
|
||||
@@ -231,5 +231,8 @@
|
||||
"importFailureDesc": "نتوانستیم فایل انتخابی را تجزیه و تحلیل کنیم.\nاگر به کمک نیاز دارید، لطفا به support@ente.io ایمیل بزنید!",
|
||||
"pendingSyncs": "اخطار",
|
||||
"pendingSyncsWarningBody": "برخی از کدهای شما پشتیبان گیری نشده اند.\n\nلطفا قبل از خروج، مطمئن شوید که یک نسخه پشتیبان برای این کدها دارید.",
|
||||
"thisDevice": "این دستگاه"
|
||||
"thisDevice": "این دستگاه",
|
||||
"editCodeAuthMessage": "احراز هویت برای ویرایش کد",
|
||||
"deleteCodeAuthMessage": "احراز هویت برای حذف کد",
|
||||
"showQRAuthMessage": "احراز هویت برای نمایش کد QR"
|
||||
}
|
||||
@@ -119,5 +119,8 @@
|
||||
"moderateStrength": "Kohtalainen salasana",
|
||||
"confirmPassword": "Vahvista salasana",
|
||||
"close": "Sulje",
|
||||
"oopsSomethingWentWrong": "Hupsista! Jotakin meni nyt pieleen."
|
||||
"oopsSomethingWentWrong": "Hupsista! Jotakin meni nyt pieleen.",
|
||||
"editCodeAuthMessage": "Autentikoidu muokataksesi koodia",
|
||||
"deleteCodeAuthMessage": "Autentikoidu poistaaksesi koodin",
|
||||
"showQRAuthMessage": "Autentikoidu näyttääksesi QR-koodin"
|
||||
}
|
||||
@@ -5,15 +5,20 @@
|
||||
"@counterAppBarTitle": {
|
||||
"description": "Text shown in the AppBar of the Counter Page"
|
||||
},
|
||||
"onBoardingBody": "Sécurisez vos codes 2FA",
|
||||
"onBoardingBody": "Sécurisez vos codes A2F",
|
||||
"onBoardingGetStarted": "Premiers pas",
|
||||
"setupFirstAccount": "Configurez votre premier compte",
|
||||
"importScanQrCode": "Scannez un QR Code",
|
||||
"qrCode": "Code QR",
|
||||
"importEnterSetupKey": "Saisir une clé de configuration",
|
||||
"importAccountPageTitle": "Saisir les détails du compte",
|
||||
"secretCanNotBeEmpty": "La clé secrète ne peut pas être vide",
|
||||
"bothIssuerAndAccountCanNotBeEmpty": "L'émetteur et le compte ne peuvent pas être vides",
|
||||
"incorrectDetails": "Détails incorrects",
|
||||
"pleaseVerifyDetails": "Veuillez vérifier vos informations et réessayez",
|
||||
"codeIssuerHint": "Émetteur",
|
||||
"codeSecretKeyHint": "Clé secrète",
|
||||
"codeAccountHint": "Compte (vous@domaine.fr)",
|
||||
"codeAccountHint": "Compte (vous@exemple.com)",
|
||||
"accountKeyType": "Type de clé",
|
||||
"sessionExpired": "Session expirée",
|
||||
"@sessionExpired": {
|
||||
@@ -53,25 +58,42 @@
|
||||
}
|
||||
},
|
||||
"contactSupport": "Contacter le support",
|
||||
"rateUsOnStore": "Notez-nous sur {storeName}",
|
||||
"blog": "Blog",
|
||||
"merchandise": "Marchandise",
|
||||
"verifyPassword": "Vérifier le mot de passe",
|
||||
"pleaseWait": "Veuillez patienter...",
|
||||
"generatingEncryptionKeysTitle": "Génération des clés de chiffrement...",
|
||||
"recreatePassword": "Recréer le mot de passe",
|
||||
"recreatePasswordMessage": "L'appareil actuel n'est pas assez puissant pour vérifier votre mot de passe, donc nous avons besoin de le régénérer une fois d'une manière qu'il fonctionne avec tous les périphériques.\n\nVeuillez vous connecter en utilisant votre clé de récupération et régénérer votre mot de passe (vous pouvez utiliser le même si vous le souhaitez).",
|
||||
"recreatePasswordMessage": "L'appareil utilisé n'est pas assez performant pour vérifier votre mot de passe, nous avons donc besoin de le générer à nouveau d'une manière fonctionnant avec tous les périphériques.\n\nVeuillez vous connecter en utilisant votre clé de récupération et générer à nouveau votre mot de passe (vous pouvez utiliser le même si vous le souhaitez).",
|
||||
"useRecoveryKey": "Utiliser la clé de récupération",
|
||||
"incorrectPasswordTitle": "Mot de passe incorrect",
|
||||
"welcomeBack": "Bon retour parmi nous !",
|
||||
"madeWithLoveAtPrefix": "fait avec ❤️ à ",
|
||||
"supportDevs": "Abonnez-vous à <bold-green>ente</bold-green> pour soutenir ce projet.",
|
||||
"supportDevs": "Abonnez-vous à <bold-green>ente</bold-green> pour nous soutenir",
|
||||
"supportDiscount": "Utilisez le code coupon \"AUTH\" pour obtenir 10% de réduction sur la première année",
|
||||
"changeEmail": "Modifier l'e-mail",
|
||||
"changePassword": "Modifier le mot de passe",
|
||||
"data": "Données",
|
||||
"importCodes": "Importer les codes",
|
||||
"importTypePlainText": "Texte brut",
|
||||
"importTypeEnteEncrypted": "ente Exportation chiffrée",
|
||||
"passwordForDecryptingExport": "Mot de passe pour déchiffrer l'exportation",
|
||||
"passwordEmptyError": "Le mot de passe ne peut pas être vide",
|
||||
"importFromApp": "Importer des codes depuis {appName}",
|
||||
"importGoogleAuthGuide": "Exportez vos comptes depuis Google Authenticator vers un code QR en utilisant l'option \"Transférer des comptes\". Ensuite, en utilisant un autre appareil, scannez le code QR.\n\nAstuce : Vous pouvez utiliser la webcam de votre ordinateur portable pour prendre une photo du code QR.",
|
||||
"importSelectJsonFile": "Sélectionnez un fichier JSON",
|
||||
"importEnteEncGuide": "Sélectionnez le fichier JSON chiffré exporté à partir de ente",
|
||||
"importRaivoGuide": "Utilisez l'option \"Exporter les OTPs vers l'archive Zip\" dans les paramètres de Raivo.\n\nExtrayez le fichier zip et importez le fichier JSON.",
|
||||
"importAegisGuide": "Utilisez l'option \"Exporter le coffre-fort\" dans les paramètres d'Aegis.\n\nSi votre coffre-fort est crypté, vous devrez saisir le mot de passe du coffre-fort pour déchiffrer le coffre-fort.",
|
||||
"exportCodes": "Exporter les codes",
|
||||
"importLabel": "Importer",
|
||||
"importInstruction": "Veuillez sélectionner un fichier qui contient une liste de vos codes dans le format suivant",
|
||||
"importCodeDelimiterInfo": "Les codes peuvent être séparés par une virgule ou un retour à la ligne",
|
||||
"selectFile": "Sélectionner le fichier",
|
||||
"emailVerificationToggle": "Vérification de l'adresse e-mail",
|
||||
"emailVerificationEnableWarning": "Si vous stockez le 2FA dans votre e-mail avec nous, l'activation de la vérification d'e-mail pourrait entraîner un blocage. Si vous êtes exclu d'un service, il se peut que vous ne puissiez pas vous connecter à l'autre.",
|
||||
"authToChangeEmailVerificationSetting": "Veuillez vous authentifier pour modifier votre adresse e-mail",
|
||||
"authToViewYourRecoveryKey": "Veuillez vous authentifier pour afficher votre clé de récupération",
|
||||
"authToChangeYourEmail": "Veuillez vous authentifier pour modifier votre adresse e-mail",
|
||||
"authToChangeYourPassword": "Veuillez vous authentifier pour modifier votre mot de passe",
|
||||
@@ -81,6 +103,7 @@
|
||||
"no": "Non",
|
||||
"email": "E-mail",
|
||||
"support": "Support",
|
||||
"general": "Général",
|
||||
"settings": "Paramètres",
|
||||
"copied": "Copié",
|
||||
"pleaseTryAgain": "Veuillez réessayer",
|
||||
@@ -90,6 +113,18 @@
|
||||
"enterYourPasswordHint": "Saisir votre mot de passe",
|
||||
"forgotPassword": "Mot de passe oublié",
|
||||
"oops": "Oups",
|
||||
"suggestFeatures": "Suggérer des fonctionnalités",
|
||||
"faq": "FAQ",
|
||||
"faq_q_1": "À quel point ente Auth est-il sécurisé ?",
|
||||
"faq_a_1": "Tous les codes que vous sauvegardez via ente sont chiffrés de bout en bout. Cela signifie que vous seul pouvez accéder à vos codes. Nos applications sont open source et notre cryptographie a fait l'objet d'un audit externe.",
|
||||
"faq_q_2": "Puis-je accéder à mes codes sur mon ordinateur ?",
|
||||
"faq_a_2": "Vous pouvez accéder à vos codes sur le web via auth.ente.io.",
|
||||
"faq_q_3": "Comment puis-je supprimer des codes ?",
|
||||
"faq_a_3": "Vous pouvez supprimer un code en glissant vers la gauche.",
|
||||
"faq_q_4": "Comment puis-je soutenir le projet ?",
|
||||
"faq_a_4": "Vous pouvez soutenir le développement de ce projet en vous abonnant à notre application Photos, ente.io.",
|
||||
"faq_q_5": "Comment puis-je activer le verrouillage FaceID sur ente Auth",
|
||||
"faq_a_5": "Vous pouvez activer le verrouillage FaceID dans Paramètres → Sécurité → Écran de verrouillage.",
|
||||
"somethingWentWrongMessage": "Quelque chose s'est mal passé, veuillez recommencer",
|
||||
"leaveFamily": "Quitter le plan familial",
|
||||
"leaveFamilyMessage": "Êtes-vous certains de vouloir quitter le plan familial?",
|
||||
@@ -98,7 +133,7 @@
|
||||
"scan": "Analyser",
|
||||
"scanACode": "Scanner un code",
|
||||
"verify": "Vérifier",
|
||||
"verifyEmail": "Vérifier l'email",
|
||||
"verifyEmail": "Vérifier l'e-mail",
|
||||
"enterCodeHint": "Saisir le code à 6 caractères de votre appli d'authentification",
|
||||
"lostDeviceTitle": "Appareil perdu ?",
|
||||
"twoFactorAuthTitle": "Authentification à deux facteurs",
|
||||
@@ -115,15 +150,15 @@
|
||||
},
|
||||
"noRecoveryKeyTitle": "Pas de clé de récupération ?",
|
||||
"enterEmailHint": "Entrez votre adresse e-mail",
|
||||
"invalidEmailTitle": "Adresse e-mail non valide",
|
||||
"invalidEmailTitle": "Adresse e-mail invalide",
|
||||
"invalidEmailMessage": "Veuillez saisir une adresse e-mail valide.",
|
||||
"deleteAccount": "Supprimer le compte",
|
||||
"deleteAccountQuery": "Nous sommes désolés de vous voir partir. Êtes-vous confronté à un problème?",
|
||||
"deleteAccountQuery": "Nous sommes désolés de vous voir partir. Rencontrez-vous un problème ?",
|
||||
"yesSendFeedbackAction": "Oui, envoyer un commentaire",
|
||||
"noDeleteAccountAction": "Non, supprimer le compte",
|
||||
"initiateAccountDeleteTitle": "Veuillez vous authentifier pour débuter la suppression du compte",
|
||||
"confirmAccountDeleteTitle": "Êtes-vous sûr de vouloir supprimer votre compte ente ?",
|
||||
"confirmAccountDeleteMessage": "Vos données téléchargées, à travers toutes les applications (Photos et Authenticator), seront planifiées pour la suppression, et votre compte sera définitivement supprimé.",
|
||||
"confirmAccountDeleteMessage": "Vos données, à travers toutes les applications (Photos et Authenticator), seront programmées pour être supprimées et votre compte sera définitivement supprimé.",
|
||||
"sendEmail": "Envoyer un e-mail",
|
||||
"createNewAccount": "Créer un nouveau compte",
|
||||
"weakStrength": "Faible",
|
||||
@@ -131,7 +166,7 @@
|
||||
"moderateStrength": "Modéré",
|
||||
"confirmPassword": "Confirmer le mot de passe",
|
||||
"close": "Fermer",
|
||||
"oopsSomethingWentWrong": "Oops ! Une erreur s'est produite.",
|
||||
"oopsSomethingWentWrong": "Oups, une erreur s'est produite.",
|
||||
"selectLanguage": "Sélectionnez la langue",
|
||||
"language": "Langue",
|
||||
"social": "Réseaux Sociaux",
|
||||
@@ -140,7 +175,7 @@
|
||||
"authToChangeLockscreenSetting": "Veuillez vous authentifier pour modifier les paramètres de l'écran de verrouillage",
|
||||
"lockScreenEnablePreSteps": "Pour activer l'écran de verrouillage, veuillez configurer le code d'accès de l'appareil ou le verrouillage de l'écran dans les paramètres de votre système.",
|
||||
"viewActiveSessions": "Afficher les sessions actives",
|
||||
"authToViewYourActiveSessions": "Veuillez vous authentifier pour voir vos sessions actives",
|
||||
"authToViewYourActiveSessions": "Veuillez vous authentifier pour afficher vos sessions actives",
|
||||
"searchHint": "Rechercher...",
|
||||
"search": "Rechercher",
|
||||
"sorryUnableToGenCode": "Désolé, impossible de générer un code pour {issuerName}",
|
||||
@@ -150,12 +185,14 @@
|
||||
"enterDetailsManually": "Saisir les détails manuellement",
|
||||
"edit": "Éditer",
|
||||
"copiedToClipboard": "Copié dans le presse-papiers",
|
||||
"copiedNextToClipboard": "Code suivant copié dans le presse-papiers",
|
||||
"error": "Erreur",
|
||||
"recoveryKeyCopiedToClipboard": "Clé de récupération copiée dans le presse-papiers",
|
||||
"recoveryKeyOnForgotPassword": "Si vous oubliez votre mot de passe, la seule façon de récupérer vos données sera grâce à cette clé.",
|
||||
"recoveryKeySaveDescription": "Nous ne stockons pas cette clé, veuillez enregistrer cette clé de 24 mots dans un endroit sûr.",
|
||||
"doThisLater": "Plus tard",
|
||||
"saveKey": "Enregistrer la clé",
|
||||
"back": "Retour",
|
||||
"createAccount": "Créer un compte",
|
||||
"passwordStrength": "Force du mot de passe : {passwordStrengthValue}",
|
||||
"@passwordStrength": {
|
||||
@@ -178,7 +215,7 @@
|
||||
"changePasswordTitle": "Modifier le mot de passe",
|
||||
"resetPasswordTitle": "Réinitialiser le mot de passe",
|
||||
"encryptionKeys": "Clés de chiffrement",
|
||||
"passwordWarning": "Nous ne stockons pas ce mot de passe, donc si vous l'oubliez, <underline>nous ne pouvons pas déchiffrer vos données</underline>",
|
||||
"passwordWarning": "Nous ne stockons pas ce mot de passe. Si vous l'oubliez, <underline>nous ne pourrons pas déchiffrer vos données</underline>",
|
||||
"enterPasswordToEncrypt": "Entrez un mot de passe que nous pouvons utiliser pour chiffrer vos données",
|
||||
"enterNewPasswordToEncrypt": "Entrez un nouveau mot de passe que nous pouvons utiliser pour chiffrer vos données",
|
||||
"passwordChangedSuccessfully": "Le mot de passe a été modifié avec succès",
|
||||
@@ -186,11 +223,12 @@
|
||||
"continueLabel": "Continuer",
|
||||
"insecureDevice": "Appareil non sécurisé",
|
||||
"sorryWeCouldNotGenerateSecureKeysOnThisDevicennplease": "Désolé, nous n'avons pas pu générer de clés sécurisées sur cet appareil.\n\nVeuillez vous inscrire depuis un autre appareil.",
|
||||
"howItWorks": "Comment ça fonctionne",
|
||||
"ackPasswordLostWarning": "Je comprends que si je perds mon mot de passe, je risque de perdre mes données puisque celles-ci sont <underline>chiffrées de bout en bout</underline>.",
|
||||
"loginTerms": "En cliquant sur \"Connexion\", j'accepte les <u-terms>conditions d'utilisation</u-terms> et la <u-policy>politique de confidentialité</u-policy>",
|
||||
"logInLabel": "Connexion",
|
||||
"logout": "Déconnexion",
|
||||
"areYouSureYouWantToLogout": "Voulez-vous vraiment vous déconnecter ?",
|
||||
"areYouSureYouWantToLogout": "Êtes-vous sûr de vouloir vous déconnecter ?",
|
||||
"yesLogout": "Oui, se déconnecter",
|
||||
"exit": "Quitter",
|
||||
"verifyingRecoveryKey": "Vérification de la clé de récupération...",
|
||||
@@ -201,7 +239,7 @@
|
||||
"recreatePasswordBody": "L'appareil actuel n'est pas assez puissant pour vérifier votre mot de passe, donc nous avons besoin de le régénérer une fois d'une manière qu'il fonctionne avec tous les périphériques.\n\nVeuillez vous connecter en utilisant votre clé de récupération et régénérer votre mot de passe (vous pouvez utiliser le même si vous le souhaitez).",
|
||||
"invalidKey": "Clé non valide",
|
||||
"tryAgain": "Réessayer",
|
||||
"viewRecoveryKey": "Voir la clé de récupération",
|
||||
"viewRecoveryKey": "Afficher la clé de récupération",
|
||||
"confirmRecoveryKey": "Confirmer la clé de récupération",
|
||||
"recoveryKeyVerifyReason": "Votre clé de récupération est la seule façon de récupérer vos photos si vous oubliez votre mot de passe. Vous pouvez trouver votre clé de récupération dans Paramètres > Compte.\n\nVeuillez entrer votre clé de récupération ici pour vous assurer que vous l'avez enregistrée correctement.",
|
||||
"confirmYourRecoveryKey": "Confirmer la clé de récupération",
|
||||
@@ -218,6 +256,10 @@
|
||||
"privacy": "Confidentialité",
|
||||
"terms": "Conditions",
|
||||
"checkForUpdates": "Vérifier les mises à jour",
|
||||
"downloadUpdate": "Télécharger",
|
||||
"criticalUpdateAvailable": "Mise à jour critique disponible",
|
||||
"updateAvailable": "Une mise à jour est disponible",
|
||||
"update": "Mise à jour",
|
||||
"checking": "Vérification...",
|
||||
"youAreOnTheLatestVersion": "Vous êtes sur la dernière version",
|
||||
"warning": "Attention",
|
||||
@@ -262,5 +304,37 @@
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "Cela vous déconnectera de l'appareil suivant :",
|
||||
"terminateSession": "Quitter la session ?",
|
||||
"terminate": "Quitter",
|
||||
"thisDevice": "Cet appareil"
|
||||
"thisDevice": "Cet appareil",
|
||||
"toResetVerifyEmail": "Pour réinitialiser votre mot de passe, veuillez d'abord vérifier votre e-mail.",
|
||||
"thisEmailIsAlreadyInUse": "Cette adresse mail est déjà utilisé",
|
||||
"verificationFailedPleaseTryAgain": "La vérification a échouée, veuillez réessayer",
|
||||
"yourVerificationCodeHasExpired": "Votre code de vérification a expiré",
|
||||
"incorrectCode": "Code non valide",
|
||||
"sorryTheCodeYouveEnteredIsIncorrect": "Le code que vous avez saisi est incorrect",
|
||||
"emailChangedTo": "L'e-mail a été changé en {newEmail}",
|
||||
"authenticationFailedPleaseTryAgain": "L'authentification a échouée, veuillez réessayer",
|
||||
"authenticationSuccessful": "Authentification réussie!",
|
||||
"twofactorAuthenticationSuccessfullyReset": "L'authentification à deux facteurs a été réinitialisée avec succès ",
|
||||
"incorrectRecoveryKey": "Clé de récupération non valide",
|
||||
"theRecoveryKeyYouEnteredIsIncorrect": "La clé de récupération que vous avez entrée est incorrecte",
|
||||
"enterPassword": "Saisissez le mot de passe",
|
||||
"selectExportFormat": "Choisir le format d'exportation",
|
||||
"exportDialogDesc": "Les exportations chiffrées seront protégées par un mot de passe de votre choix.",
|
||||
"encrypted": "Chiffré",
|
||||
"plainText": "Texte brut",
|
||||
"passwordToEncryptExport": "Mot de passe pour chiffrer l'export",
|
||||
"export": "Exporter",
|
||||
"useOffline": "Utiliser sans sauvegardes",
|
||||
"signInToBackup": "Connectez-vous pour sauvegarder vos codes",
|
||||
"singIn": "Se connecter",
|
||||
"sigInBackupReminder": "Veuillez exporter vos codes pour vous assurer que vous avez une sauvegarde à partir de laquelle vous pouvez restaurer.",
|
||||
"offlineModeWarning": "Vous avez choisi de procéder sans sauvegarde. Veuillez prendre des sauvegardes manuelles pour vous assurer que vos codes sont sûrs.",
|
||||
"showLargeIcons": "Afficher les grandes icônes",
|
||||
"shouldHideCode": "Cacher les codes",
|
||||
"focusOnSearchBar": "Cibler le champ de recherche au démarrage de l'application",
|
||||
"confirmUpdatingkey": "Êtes-vous sûr de vouloir mettre à jour la clé secrète ?",
|
||||
"minimizeAppOnCopy": "Réduire l'application après la copie",
|
||||
"editCodeAuthMessage": "Authentification requise pour modifier le code",
|
||||
"deleteCodeAuthMessage": "Authentification requise pour supprimer le code",
|
||||
"showQRAuthMessage": "Authentification requise pour afficher le code QR"
|
||||
}
|
||||
340
lib/l10n/arb/app_he.arb
Normal file
@@ -0,0 +1,340 @@
|
||||
{
|
||||
"account": "חשבון",
|
||||
"recoveryKey": "מפתח שחזור",
|
||||
"counterAppBarTitle": "מונה",
|
||||
"@counterAppBarTitle": {
|
||||
"description": "Text shown in the AppBar of the Counter Page"
|
||||
},
|
||||
"onBoardingBody": "גיבוי מאובטח של קודי האימות שלך",
|
||||
"onBoardingGetStarted": "התחילו",
|
||||
"setupFirstAccount": "התקנה של החשבון הראשון שלך",
|
||||
"importScanQrCode": "סרוק קוד QR",
|
||||
"qrCode": "קוד QR",
|
||||
"importEnterSetupKey": "הכנס מפתח התקנה",
|
||||
"importAccountPageTitle": "הכנס פרטי חשבון",
|
||||
"secretCanNotBeEmpty": "סוד לא יכול להיות ריק",
|
||||
"bothIssuerAndAccountCanNotBeEmpty": "גם המנפיק והחשבון לא יכולים להיות ריקים",
|
||||
"incorrectDetails": "פרטים לא נכונים",
|
||||
"pleaseVerifyDetails": "אנא אמתו את הפרטים ונסו שוב",
|
||||
"codeIssuerHint": "מנפיק",
|
||||
"codeSecretKeyHint": "מפתח סודי",
|
||||
"codeAccountHint": "חשבון(you@domain.com)",
|
||||
"accountKeyType": "סוג מפתח",
|
||||
"sessionExpired": "זמן החיבור הסתיים",
|
||||
"@sessionExpired": {
|
||||
"description": "Title of the dialog when the users current session is invalid/expired"
|
||||
},
|
||||
"pleaseLoginAgain": "אנא התחבר שוב",
|
||||
"loggingOut": "מתנתק...",
|
||||
"timeBasedKeyType": "מבוסס זמן(TOTP)",
|
||||
"counterBasedKeyType": "מבוסס מונה(HOTP)",
|
||||
"saveAction": "שמור",
|
||||
"nextTotpTitle": "הבא",
|
||||
"deleteCodeTitle": "מחק קוד?",
|
||||
"deleteCodeMessage": "האם אתה בטוח שברצונך למחוק את הקוד הזה? פעולה זו היא בלתי הפיכה.",
|
||||
"viewLogsAction": "צפייה ביומן",
|
||||
"sendLogsDescription": "זה ישלח לוגים לנו כדי לעזור לנו לדבג את הבעיה שלך. אנחנו לוקחים אמצעי זהירות כדי לוודא שמידע רגיש לא יהיה בלוגים, אנו מעודדים אותך לעבור על הלוגים האלו לפני שאתה משתף אותם.",
|
||||
"preparingLogsTitle": "מכין לוגים...",
|
||||
"emailLogsTitle": "לשלוח לוגים באימייל",
|
||||
"emailLogsMessage": "אנא שלחו את הלוגים האלו ל-{email}",
|
||||
"@emailLogsMessage": {
|
||||
"placeholders": {
|
||||
"email": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"copyEmailAction": "העתק אימייל",
|
||||
"exportLogsAction": "ייצוא לוגים",
|
||||
"reportABug": "דווח על באג",
|
||||
"crashAndErrorReporting": "דיווח על שגיאות וקריסות",
|
||||
"reportBug": "דווח על באג",
|
||||
"emailUsMessage": "אנא שלחו לנו אימייל ב-{email}",
|
||||
"@emailUsMessage": {
|
||||
"placeholders": {
|
||||
"email": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"contactSupport": "צור קשר עם התמיכה",
|
||||
"rateUsOnStore": "דרג אותנו ב-{storeName}",
|
||||
"blog": "בלוג",
|
||||
"merchandise": "סחורה",
|
||||
"verifyPassword": "אמת סיסמא",
|
||||
"pleaseWait": "אנא המתן...",
|
||||
"generatingEncryptionKeysTitle": "יוצר מפתחות הצפנה...",
|
||||
"recreatePassword": "צור סיסמא מחדש",
|
||||
"recreatePasswordMessage": "המכשיר הנוכחי אינו חזק מספיק כדי לאמת את הסיסמא שלך, אז אנחנו צריכים ליצור אותו מחדש בצורה שתעבוד עם כל המכשירים.\n\nאנא התחבר בעזרת המפתח שחזור שלך וצור מחדש את הסיסמא שלך (אתה יכול להשתמש באותה אחת אם אתה רוצה).",
|
||||
"useRecoveryKey": "השתמש במפתח שחזור",
|
||||
"incorrectPasswordTitle": "סיסמא לא נכונה",
|
||||
"welcomeBack": "ברוך שובך!",
|
||||
"madeWithLoveAtPrefix": "נעשה עם ❤️ ב- ",
|
||||
"supportDevs": "הירשם ל-<bold-green>ente</bold-green> כדי לתמוך בנו",
|
||||
"supportDiscount": "השתמש בקוד קופון \"AUTH\" כדי לקבל 10% הנחה לשנה הראשונה",
|
||||
"changeEmail": "שנה דוא\"ל",
|
||||
"changePassword": "שנה סיסמה",
|
||||
"data": "נתונים",
|
||||
"importCodes": "ייבא קוד",
|
||||
"importTypePlainText": "טקסט רגיל",
|
||||
"importTypeEnteEncrypted": "ייצוא ente מוצפן",
|
||||
"passwordForDecryptingExport": "סיסמא כדי לפענח יצוא",
|
||||
"passwordEmptyError": "הסיסמה אינה יכולה להיות ריקה",
|
||||
"importFromApp": "יבא קודים מ-{appName}",
|
||||
"importGoogleAuthGuide": "יצא את החשבונות שלך מ-Google Authenticator לקוד QR תוך שימוש באפשרות \"Transfer Accounts\". אז, תוך שימוש במכשיר אחר, סרוק את הקוד QR.",
|
||||
"importSelectJsonFile": "בחר קובץ JSON",
|
||||
"importEnteEncGuide": "בחר את קובץ ה-JSON המוצפן שייוצא מ-ente",
|
||||
"importRaivoGuide": "השתמש באפוציה של \"Export OTPs to Zip archive\" בהגדרות של Raivo.",
|
||||
"importAegisGuide": "אנא השתמש באפשרות של \"ייצוא של הכספת\" בתוך ההגדרות של Aegis.",
|
||||
"exportCodes": "ייצא קודים",
|
||||
"importLabel": "יבוא",
|
||||
"importInstruction": "אנא בחר קובץ שמכיל רשימה של הקודים שלך לפי הפורמט הבא",
|
||||
"importCodeDelimiterInfo": "הקודים יכולים להיות מופרדים על-ידי פסיק או שורה חדשה",
|
||||
"selectFile": "בחר קובץ",
|
||||
"emailVerificationToggle": "אימות אימייל",
|
||||
"emailVerificationEnableWarning": "אם אתם מאחסנים את האימות הדו שלבי לאיימיל שלך איתנו, הדלקה של אימות אימייל יכול להגיע לנעילה. אם אתם ננעלים מחוץ לאחד השירותים, אתם אולי לא תצליחו להתחבר לאחר.",
|
||||
"authToChangeEmailVerificationSetting": "אנא התאמת על מנת לשנות את אימות הדוא\"ל",
|
||||
"authToViewYourRecoveryKey": "אנא אמת על מנת לראות את מפתח השחזור שלך",
|
||||
"authToChangeYourEmail": "אנא אמת על מנת לשנות את הסיסמא שלך",
|
||||
"authToChangeYourPassword": "אנא אמת על מנת לשנות את הסיסמא שלך",
|
||||
"ok": "אוקיי",
|
||||
"cancel": "בטל",
|
||||
"yes": "כן",
|
||||
"no": "לא",
|
||||
"email": "דוא\"ל",
|
||||
"support": "תמיכה",
|
||||
"general": "כללי",
|
||||
"settings": "הגדרות",
|
||||
"copied": "הועתק",
|
||||
"pleaseTryAgain": "אנא נסה שנית",
|
||||
"existingUser": "משתמש קיים",
|
||||
"newUser": "חדש בente",
|
||||
"delete": "למחוק",
|
||||
"enterYourPasswordHint": "הכנס סיסמא",
|
||||
"forgotPassword": "שכחתי סיסמה",
|
||||
"oops": "אופס",
|
||||
"suggestFeatures": "הציעו מאפיינים",
|
||||
"faq": "שאלות נפוצות",
|
||||
"faq_q_1": "כמה מאובטח ente Auth?",
|
||||
"faq_a_1": "כל הקודים שאתה מגבה דרך ente מאוחסנים מקצה לקצה בהצפנה. הכוונה שרק אתה יכול לגשת לקודים שלך. האפליקציות שלנו הם מפותחות דרך קוד פתוח והקריפטוגרפיה שלנו מבוקרת חיצונית.",
|
||||
"faq_q_2": "האם ישנה אפשרות להשתמש בקודים שלי במחשב?",
|
||||
"faq_a_2": "אתה יכול לגשת לקודים שלך ברשת ב- auth.ente.io.",
|
||||
"faq_q_3": "איך אפשר למחוק קודים?",
|
||||
"faq_a_3": "אתה יכול למחוק את הקוד על-ידי החלקה שמאלה על הפריט הזה.",
|
||||
"faq_q_4": "איך אפשר לתמוך בפרויקט זה?",
|
||||
"faq_a_4": "אתה יכול לתמוך בפיתוח של הפרויקט הזה על ידי שתירשם לאפליקצית תמונות שלנו ב-ente.io.",
|
||||
"faq_q_5": "איך אני יכול להפעיל מנעול FaceID ב-ente Auth",
|
||||
"faq_a_5": "אתה יכול להפעיל מנעול FaceID תחת הגדרות -> אבטחה -> מסך נעילה.",
|
||||
"somethingWentWrongMessage": "משהו השתבש, אנא נסה שנית",
|
||||
"leaveFamily": "עזוב משפחה",
|
||||
"leaveFamilyMessage": "האם אתה בטוח שאתה רוצה לעזוב את התוכנית המשפחתית?",
|
||||
"inFamilyPlanMessage": "אתה על תוכנית משפחתית!",
|
||||
"swipeHint": "החלק שמאלה כדי לערוך או להסיר קודים",
|
||||
"scan": "סרוק",
|
||||
"scanACode": "סרוק קוד",
|
||||
"verify": "אמת",
|
||||
"verifyEmail": "אימות דוא\"ל",
|
||||
"enterCodeHint": "הכנס את הקוד בעל 6 ספרות מתוך\nאפליקציית האימות שלך",
|
||||
"lostDeviceTitle": "איבדת את המכשיר?",
|
||||
"twoFactorAuthTitle": "אימות דו-שלבי",
|
||||
"recoverAccount": "שחזר חשבון",
|
||||
"enterRecoveryKeyHint": "הזן את מפתח השחזור שלך",
|
||||
"recover": "שחזר",
|
||||
"contactSupportViaEmailMessage": "אנא תשלח דוא\"ל ל{email} מהכתובת דוא\"ל שנרשמת איתה",
|
||||
"@contactSupportViaEmailMessage": {
|
||||
"placeholders": {
|
||||
"email": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"noRecoveryKeyTitle": "אין מפתח שחזור?",
|
||||
"enterEmailHint": "הכנס את כתובת הדוא״ל שלך",
|
||||
"invalidEmailTitle": "כתובת דוא״ל לא תקינה",
|
||||
"invalidEmailMessage": "אנא הכנס כתובת דוא\"ל תקינה.",
|
||||
"deleteAccount": "מחק חשבון",
|
||||
"deleteAccountQuery": "אנו מצטערים שאתה עוזב. האם יש בעיות שאתה חווה?",
|
||||
"yesSendFeedbackAction": "כן, שלח משוב",
|
||||
"noDeleteAccountAction": "לא, מחק את החשבון",
|
||||
"initiateAccountDeleteTitle": "אנא אמת על מנת להתחיל את מחיקת החשבון שלך",
|
||||
"confirmAccountDeleteTitle": "האם אתה בטוח שברצונך למחוק את חשבונך?",
|
||||
"confirmAccountDeleteMessage": "המידע שלך שהועלה, ברחבי כל האפליקציות (גם ב-Photos וב-Authenticator), יהיה מועמד למחיקה, וגם המחשבון שלך ימחק לצמיתות.",
|
||||
"sendEmail": "שלח אימייל",
|
||||
"createNewAccount": "צור חשבון חדש",
|
||||
"weakStrength": "חלש",
|
||||
"strongStrength": "חזק",
|
||||
"moderateStrength": "מתון",
|
||||
"confirmPassword": "אמת סיסמא",
|
||||
"close": "סגור",
|
||||
"oopsSomethingWentWrong": "אופס, משהו השתבש.",
|
||||
"selectLanguage": "בחר שפה",
|
||||
"language": "שפה",
|
||||
"social": "חברתי",
|
||||
"security": "אבטחה",
|
||||
"lockscreen": "מסך נעילה",
|
||||
"authToChangeLockscreenSetting": "אנא בצע אימות כדי לשנות את הגדרות מסך הנעילה",
|
||||
"lockScreenEnablePreSteps": "כדי לאפשר את מסך הנעילה, אנא הגדר קוד גישה למכשיר או לנעילת מסך בהגדרות המערכת שלך.",
|
||||
"viewActiveSessions": "צפה בחיבורים פעילים",
|
||||
"authToViewYourActiveSessions": "אנא בצע איומת על מנת לראות את החיבורים הפעילים שלך",
|
||||
"searchHint": "חיפוש...",
|
||||
"search": "חיפוש",
|
||||
"sorryUnableToGenCode": "אנו מתנצלים, לא הצלחנו ליצור קוד עבור {issuerName}",
|
||||
"noResult": "אין תוצאות",
|
||||
"addCode": "הוסף קוד",
|
||||
"scanAQrCode": "סרוק קוד QR",
|
||||
"enterDetailsManually": "הכנס פרטים באופן ידני",
|
||||
"edit": "עריכה",
|
||||
"copiedToClipboard": "הועתק ללוח הגזירים",
|
||||
"copiedNextToClipboard": "הקוד הבא הועתק ללוח הכתיבה",
|
||||
"error": "שגיאה",
|
||||
"recoveryKeyCopiedToClipboard": "מפתח השחזור הועתק ללוח",
|
||||
"recoveryKeyOnForgotPassword": "אם אתה שוכח את הסיסמא שלך, הדרך היחידה שתוכל לשחזר את המידע שלך היא עם המפתח הזה.",
|
||||
"recoveryKeySaveDescription": "אנחנו לא מאחסנים את המפתח הזה, אנא שמור את המפתח 24 מילים הזה במקום בטוח.",
|
||||
"doThisLater": "עשה זאת מאוחר יותר",
|
||||
"saveKey": "שמור מפתח",
|
||||
"back": "חזרה",
|
||||
"createAccount": "צור חשבון",
|
||||
"passwordStrength": "חוזק הסיסמא: {passwordStrengthValue}",
|
||||
"@passwordStrength": {
|
||||
"description": "Text to indicate the password strength",
|
||||
"placeholders": {
|
||||
"passwordStrengthValue": {
|
||||
"description": "The strength of the password as a string",
|
||||
"type": "String",
|
||||
"example": "Weak or Moderate or Strong"
|
||||
}
|
||||
},
|
||||
"message": "Password Strength: {passwordStrengthText}"
|
||||
},
|
||||
"password": "סיסמא",
|
||||
"signUpTerms": "אני מסכים ל<u-terms>תנאי שירות</u-terms> ול<u-policy>מדיניות הפרטיות</u-policy>",
|
||||
"privacyPolicyTitle": "מדיניות פרטיות",
|
||||
"termsOfServicesTitle": "תנאים",
|
||||
"encryption": "הצפנה",
|
||||
"setPasswordTitle": "הגדר סיסמא",
|
||||
"changePasswordTitle": "שנה סיסמה",
|
||||
"resetPasswordTitle": "איפוס סיסמה",
|
||||
"encryptionKeys": "מפתחות ההצפנה",
|
||||
"passwordWarning": "אנחנו לא שומרים את הסיסמא הזו, לכן אם אתה שוכח אותה, <underline>אנחנו לא יכולים לפענח את המידע שלך</underline>",
|
||||
"enterPasswordToEncrypt": "הזן סיסמא כדי שנוכל להצפין את המידע שלך",
|
||||
"enterNewPasswordToEncrypt": "הכנס סיסמא חדשה כדי שנוכל להצפין את המידע שלך",
|
||||
"passwordChangedSuccessfully": "הסיסמה הוחלפה בהצלחה",
|
||||
"generatingEncryptionKeys": "יוצר מפתחות הצפנה...",
|
||||
"continueLabel": "המשך",
|
||||
"insecureDevice": "מכשיר בלתי מאובטח",
|
||||
"sorryWeCouldNotGenerateSecureKeysOnThisDevicennplease": "אנחנו מצטערים, לא הצלחנו ליצור מפתחות מאובטחים על מכשיר זה.\n\nאנא הירשם ממכשיר אחר.",
|
||||
"howItWorks": "איך זה עובד",
|
||||
"ackPasswordLostWarning": "אני מבין שאם אאבד את הסיסמא, אני עלול לאבד את המידע שלי מכיוון שהמידע שלי <underline>מוצפן מקצה אל קצה</underline>.",
|
||||
"loginTerms": "על ידי לחיצה על התחברות, אני מסכים ל<u-terms>תנאי שירות</u-terms> ול<u-policy>מדיניות הפרטיות</u-policy>",
|
||||
"logInLabel": "התחבר",
|
||||
"logout": "התנתק/י",
|
||||
"areYouSureYouWantToLogout": "האם את/ה בטוח/ה שאת/ה רוצה לצאת?",
|
||||
"yesLogout": "כן, התנתק",
|
||||
"exit": "יציאה",
|
||||
"verifyingRecoveryKey": "מוודא את מפתח השחזור...",
|
||||
"recoveryKeyVerified": "מפתח השחזור אומת",
|
||||
"recoveryKeySuccessBody": "נהדר! מפתח השחזור תקין. אנחנו מודים לך על האימות.\n\nאנא תזכור לגבות את מפתח השחזור שלך באופן בטוח.",
|
||||
"invalidRecoveryKey": "מפתח השחזור שהזנת אינו תקין. אנא וודא שהוא מכיל 24 מילים, ותבדוק את האיות של כל אחת.\n\nאם הכנסת קוד שחזור ישן, וודא שהוא בעל 64 אותיות, ותבדוק כל אחת מהן.",
|
||||
"recreatePasswordTitle": "צור סיסמא מחדש",
|
||||
"recreatePasswordBody": "המכשיר הנוכחי אינו חזק מספיק כדי לאמת את הסיסמא שלך, אבל אנחנו יכולים ליצור מחדש בצורה שתעבוד עם כל המכשירים.\n\nאנא התחבר בעזרת המפתח שחזור שלך וצור מחדש את הסיסמא שלך (אתה יכול להשתמש באותה אחת אם אתה רוצה).",
|
||||
"invalidKey": "מפתח לא חוקי",
|
||||
"tryAgain": "נסה שוב",
|
||||
"viewRecoveryKey": "צפה במפתח השחזור",
|
||||
"confirmRecoveryKey": "אמת את מפתח השחזור",
|
||||
"recoveryKeyVerifyReason": "מפתח השחזור שלך הוא הדרך היחידה לשחזר את התמונות שלך במקרה ותשכח את הסיסמא שלך. אתה יכול למצוא את מפתח השחזור שלך ב-הגדרות > חשבון.\n\nאנא הכנס את מפתח השחזור שלך כאן על מנת לוודא ששמרת אותו כשורה.",
|
||||
"confirmYourRecoveryKey": "אמת את מפתח השחזור שלך",
|
||||
"confirm": "אשר",
|
||||
"emailYourLogs": "שלח באימייל את הלוגים שלך",
|
||||
"pleaseSendTheLogsTo": "אנא שלחו את הלוגים האלו ל-{toEmail}",
|
||||
"copyEmailAddress": "העתק כתובת דוא\"ל",
|
||||
"exportLogs": "ייצוא לוגים",
|
||||
"enterYourRecoveryKey": "הזן את מפתח השחזור שלך",
|
||||
"tempErrorContactSupportIfPersists": "נראה שמשהו לא פעל כשורה. אנא נסה שוב אחרי כמה זמן. אם הבעיה ממשיכה, אנא צור קשר עם צוות התמיכה שלנו.",
|
||||
"itLooksLikeSomethingWentWrongPleaseRetryAfterSome": "נראה שמשהו לא פעל כשורה. אנא נסה שוב אחרי כמה זמן. אם הבעיה ממשיכה, אנא צור קשר עם צוות התמיכה שלנו.",
|
||||
"about": "אודות",
|
||||
"weAreOpenSource": "הקוד שלנו פתוח!",
|
||||
"privacy": "פרטיות",
|
||||
"terms": "תנאים",
|
||||
"checkForUpdates": "בדוק אם קיימים עדכונים",
|
||||
"downloadUpdate": "הורד",
|
||||
"criticalUpdateAvailable": "עדכון חשוב זמין",
|
||||
"updateAvailable": "עדכון זמין",
|
||||
"update": "עדכן",
|
||||
"checking": "בודק...",
|
||||
"youAreOnTheLatestVersion": "אתה על הגרסא הכי עדכנית",
|
||||
"warning": "אזהרה",
|
||||
"exportWarningDesc": "הקובץ שייוצא מכיל מידע רגיש. אנא שמור אותו מאובטח.",
|
||||
"iUnderStand": "אני מבין",
|
||||
"@iUnderStand": {
|
||||
"description": "Text for the button to confirm the user understands the warning"
|
||||
},
|
||||
"authToExportCodes": "אנא בצע אימות כדי לייצא את הקודים שלך",
|
||||
"importSuccessTitle": "הידד!",
|
||||
"importSuccessDesc": "אתה ייבאת {count} קודים!",
|
||||
"@importSuccessDesc": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"description": "The number of codes imported",
|
||||
"type": "int",
|
||||
"example": "1"
|
||||
}
|
||||
}
|
||||
},
|
||||
"sorry": "צר לנו",
|
||||
"importFailureDesc": "האפליקציה לא הצליחה לקרוא את הקובץ הנבחר.\nאנא כתוב מייל ל-support@ente.io אם אתה צריך עזרה!",
|
||||
"pendingSyncs": "אזהרה",
|
||||
"pendingSyncsWarningBody": "חלק מהקודים שלך לא גובו.\n\nאנא ודא שיש לך גיבוי לקודים האלו לפני שאתה מתנתק.",
|
||||
"checkInboxAndSpamFolder": "אנא בדוק את תיבת הדואר שלך (והספאם) כדי להשלים את האימות",
|
||||
"tapToEnterCode": "הקש כדי להזין את הקוד",
|
||||
"resendEmail": "שלח דוא\"ל מחדש",
|
||||
"weHaveSendEmailTo": "שלחנו דוא\"ל ל<green>{email}</green>",
|
||||
"@weHaveSendEmailTo": {
|
||||
"description": "Text to indicate that we have sent a mail to the user",
|
||||
"placeholders": {
|
||||
"email": {
|
||||
"description": "The email address of the user",
|
||||
"type": "String",
|
||||
"example": "example@ente.io"
|
||||
}
|
||||
}
|
||||
},
|
||||
"activeSessions": "חיבורים פעילים",
|
||||
"somethingWentWrongPleaseTryAgain": "משהו השתבש, אנא נסה שנית",
|
||||
"thisWillLogYouOutOfThisDevice": "זה ינתק אותך במכשיר זה!",
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "זה ינתק אותך מהמכשיר הבא:",
|
||||
"terminateSession": "סיים חיבור?",
|
||||
"terminate": "סיים",
|
||||
"thisDevice": "מכשיר זה",
|
||||
"toResetVerifyEmail": "כדי לאפס את הסיסמא שלך, אנא אמת את האימייל שלך קודם.",
|
||||
"thisEmailIsAlreadyInUse": "כתובת דואר אלקטרוני זאת כבר נמצאת בשימוש",
|
||||
"verificationFailedPleaseTryAgain": "אימות נכשל, אנא נסה שנית",
|
||||
"yourVerificationCodeHasExpired": "קוד האימות שלך פג תוקף",
|
||||
"incorrectCode": "קוד שגוי",
|
||||
"sorryTheCodeYouveEnteredIsIncorrect": "אנו מתנצלים, אבל הקוד שהזנת איננו נכון",
|
||||
"emailChangedTo": "אימייל שונה ל-{newEmail}",
|
||||
"authenticationFailedPleaseTryAgain": "אימות נכשל, אנא נסה שוב",
|
||||
"authenticationSuccessful": "אימות הצליח!",
|
||||
"twofactorAuthenticationSuccessfullyReset": "אימות דו-שלבי אופס בהצלחה",
|
||||
"incorrectRecoveryKey": "מפתח שחזור שגוי",
|
||||
"theRecoveryKeyYouEnteredIsIncorrect": "המפתח שחזור שהזנת שגוי",
|
||||
"enterPassword": "הזן את הסיסמה",
|
||||
"selectExportFormat": "בחר פורמט ייצוא",
|
||||
"exportDialogDesc": "יצוא מוצפן יהיה מוגן על ידי סיסמא שאתה תבחר.",
|
||||
"encrypted": "מוצפן",
|
||||
"plainText": "טקסט רגיל",
|
||||
"passwordToEncryptExport": "סיסמא כדי להצפין יצוא",
|
||||
"export": "יצוא",
|
||||
"useOffline": "השתמש בלי גיבוי",
|
||||
"signInToBackup": "אנא התחבר כדי לבצע גיבוי לקודים שלך",
|
||||
"singIn": "התחברות",
|
||||
"sigInBackupReminder": "אנא ייצא את הקודים שלך כדי לוודא שיש לך גיבוי שניתן לשחזר ממנו.",
|
||||
"offlineModeWarning": "בחרת להמשיך ללא גיבויים. אנא בצע גיבויים ידניים כדי לוודא שהקודים שלך בטוחים.",
|
||||
"showLargeIcons": "הצג סמלים גדולים",
|
||||
"shouldHideCode": "הסתר קודים",
|
||||
"focusOnSearchBar": "התמקד בחיפוש בהתחלת האפליקציה",
|
||||
"confirmUpdatingkey": "האם אתה בטוח שברצונך לעדכן את המפתח הסודי?",
|
||||
"minimizeAppOnCopy": "מזער אפליקציה בהעתקה",
|
||||
"editCodeAuthMessage": "אמת כדי לערוך קוד",
|
||||
"deleteCodeAuthMessage": "אמת כדי למחוק קוד",
|
||||
"showQRAuthMessage": "אמת כדי להראות קוד QR"
|
||||
}
|
||||
@@ -9,8 +9,13 @@
|
||||
"onBoardingGetStarted": "Per iniziare",
|
||||
"setupFirstAccount": "Configura il tuo primo account",
|
||||
"importScanQrCode": "Scansiona un codice QR",
|
||||
"qrCode": "Codice QR",
|
||||
"importEnterSetupKey": "Inserisci il codice segreto",
|
||||
"importAccountPageTitle": "Inserisci i dettagli del tuo account",
|
||||
"secretCanNotBeEmpty": "La chiave segreta è obbligatoria",
|
||||
"bothIssuerAndAccountCanNotBeEmpty": "Sia l'emittente che l'account sono obbligatori",
|
||||
"incorrectDetails": "Dettagli errati",
|
||||
"pleaseVerifyDetails": "Verifica i dettagli e riprova",
|
||||
"codeIssuerHint": "Emittente",
|
||||
"codeSecretKeyHint": "Codice segreto",
|
||||
"codeAccountHint": "Account (username@dominio.it)",
|
||||
@@ -53,6 +58,9 @@
|
||||
}
|
||||
},
|
||||
"contactSupport": "Contatta il supporto",
|
||||
"rateUsOnStore": "Valutaci su {storeName}",
|
||||
"blog": "Blog",
|
||||
"merchandise": "Prodotti",
|
||||
"verifyPassword": "Verifica la password",
|
||||
"pleaseWait": "Attendere prego...",
|
||||
"generatingEncryptionKeysTitle": "Generazione delle chiavi di crittografia...",
|
||||
@@ -64,14 +72,28 @@
|
||||
"madeWithLoveAtPrefix": "realizzato con ❤️ a ",
|
||||
"supportDevs": "Iscriviti a <bold-green>ente</bold-green> per supportare questo progetto.",
|
||||
"supportDiscount": "Utilizzare il codice coupon \"AUTH\" per ottenere il 10% di sconto al primo anno",
|
||||
"changeEmail": "modifica email",
|
||||
"changeEmail": "Modifica email",
|
||||
"changePassword": "Cambia password",
|
||||
"data": "Dati",
|
||||
"importCodes": "Importa codici",
|
||||
"importTypePlainText": "Testo in chiaro",
|
||||
"importTypeEnteEncrypted": "ente Esportazione criptata",
|
||||
"passwordForDecryptingExport": "Password per decriptare il file esportato",
|
||||
"passwordEmptyError": "La password è obbligatoria",
|
||||
"importFromApp": "Importa codici da {appName}",
|
||||
"importGoogleAuthGuide": "Esporta i tuoi account da Google Authenticator in un codice QR utilizzando l'opzione \"Trasferisci Account\". Quindi, usando un altro dispositivo, scansiona il codice QR.\n\nSuggerimento: Puoi usare la webcam del tuo computer portatile per scattare una foto del codice QR.",
|
||||
"importSelectJsonFile": "Seleziona file JSON",
|
||||
"importEnteEncGuide": "Seleziona il file JSON criptato esportato da ente",
|
||||
"importRaivoGuide": "Utilizza l'opzione \"Esporta i codici OTP in archivio Zip\" nelle impostazioni di Raivo.\n\nEstrai il file zip e importa il file JSON.",
|
||||
"importAegisGuide": "Usa l'opzione \"Esporta la cassaforte\" nelle impostazioni di Aegis.\n\nSe la tua cassaforte è criptata, dovrai inserire la password della cassaforte per decriptarla.",
|
||||
"exportCodes": "Esporta codici",
|
||||
"importLabel": "Importa",
|
||||
"importInstruction": "Per favore seleziona un file contenente una lista dei tuoi codici nel seguente formato",
|
||||
"importCodeDelimiterInfo": "I codici possono essere separati da una virgola o da una nuova riga",
|
||||
"selectFile": "Seleziona file",
|
||||
"emailVerificationToggle": "Verifica email",
|
||||
"emailVerificationEnableWarning": "Se memorizzate il 2FA per accedere alla vostra email con noi, l'attivazione della verifica dell'email potrebbe provocare dei problemi. Se siete rimasti bloccati fuori da un servizio, potreste non essere in grado di accedere anche all'altro.",
|
||||
"authToChangeEmailVerificationSetting": "Autenticati per cambiare la verifica email",
|
||||
"authToViewYourRecoveryKey": "Autenticati per visualizzare la tua chiave di recupero",
|
||||
"authToChangeYourEmail": "Autenticati per cambiare la tua email",
|
||||
"authToChangeYourPassword": "Autenticati per cambiare la tua password",
|
||||
@@ -81,6 +103,7 @@
|
||||
"no": "No",
|
||||
"email": "Email",
|
||||
"support": "Supporto",
|
||||
"general": "Generali",
|
||||
"settings": "Impostazioni",
|
||||
"copied": "Copiato",
|
||||
"pleaseTryAgain": "Per favore riprova",
|
||||
@@ -90,6 +113,18 @@
|
||||
"enterYourPasswordHint": "Inserisci la tua password",
|
||||
"forgotPassword": "Password dimenticata",
|
||||
"oops": "Oops",
|
||||
"suggestFeatures": "Suggerisci funzionalità",
|
||||
"faq": "FAQ",
|
||||
"faq_q_1": "Quanto è sicuro ente Auth?",
|
||||
"faq_a_1": "Tutti i codici di cui fai il backup tramite ente sono memorizzati con crittografia end-to-end. Ciò significa che solo tu puoi accedere ai tuoi codici. Le nostre app sono open source e la nostra crittografia è stata verificata esternamente.",
|
||||
"faq_q_2": "Posso accedere ai miei codici sul desktop?",
|
||||
"faq_a_2": "Puoi accedere ai tuoi codici sul web @ auth.ente.io.",
|
||||
"faq_q_3": "Come posso cancellare i codici?",
|
||||
"faq_a_3": "Puoi eliminare un codice scorrendo il dito a sinistra sul codice in questione.",
|
||||
"faq_q_4": "Come posso supportare questo progetto?",
|
||||
"faq_a_4": "Puoi supportare lo sviluppo di questo progetto abbonandoti alla nostra app Photos @ ente.io.",
|
||||
"faq_q_5": "Come posso abilitare il blocco FaceID in ente Auth",
|
||||
"faq_a_5": "Puoi abilitare il blocco FaceID in Impostazioni → Sicurezza → Schermata di blocco.",
|
||||
"somethingWentWrongMessage": "Qualcosa è andato storto, per favore riprova",
|
||||
"leaveFamily": "Abbandona il piano famiglia",
|
||||
"leaveFamilyMessage": "Sei sicuro di voler uscire dal piano famiglia?",
|
||||
@@ -105,7 +140,7 @@
|
||||
"recoverAccount": "Recupera account",
|
||||
"enterRecoveryKeyHint": "Inserisci la tua chiave di recupero",
|
||||
"recover": "Recupera",
|
||||
"contactSupportViaEmailMessage": "Per favore invia un'email a {email} dal tuo indirizzo email registrato",
|
||||
"contactSupportViaEmailMessage": "Per favore invia un'email a {email} dall'indirizzo email con cui sei registrato",
|
||||
"@contactSupportViaEmailMessage": {
|
||||
"placeholders": {
|
||||
"email": {
|
||||
@@ -150,12 +185,14 @@
|
||||
"enterDetailsManually": "Inserisci i dettagli manualmente",
|
||||
"edit": "Modifica",
|
||||
"copiedToClipboard": "Copiato negli appunti",
|
||||
"copiedNextToClipboard": "Copiato il codice successivo negli appunti",
|
||||
"error": "Errore",
|
||||
"recoveryKeyCopiedToClipboard": "Chiave di recupero copiata negli appunti",
|
||||
"recoveryKeyOnForgotPassword": "Se dimentichi la password, l'unico modo per recuperare i tuoi dati è con questa chiave.",
|
||||
"recoveryKeySaveDescription": "Non memorizziamo questa chiave, per favore salva questa chiave di 24 parole in un posto sicuro.",
|
||||
"doThisLater": "Fallo più tardi",
|
||||
"saveKey": "Salva chiave",
|
||||
"back": "Indietro",
|
||||
"createAccount": "Crea account",
|
||||
"passwordStrength": "Forza password: {passwordStrengthValue}",
|
||||
"@passwordStrength": {
|
||||
@@ -219,6 +256,10 @@
|
||||
"privacy": "Privacy",
|
||||
"terms": "Termini",
|
||||
"checkForUpdates": "Controlla aggiornamenti",
|
||||
"downloadUpdate": "Scarica",
|
||||
"criticalUpdateAvailable": "Un aggiornamento importante è disponibile",
|
||||
"updateAvailable": "Aggiornamento disponibile",
|
||||
"update": "Aggiorna",
|
||||
"checking": "Controllo...",
|
||||
"youAreOnTheLatestVersion": "Stai utilizzando l'ultima versione",
|
||||
"warning": "Attenzione",
|
||||
@@ -263,5 +304,37 @@
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "Questo ti disconnetterà dal seguente dispositivo:",
|
||||
"terminateSession": "Termina sessione?",
|
||||
"terminate": "Termina",
|
||||
"thisDevice": "Questo dispositivo"
|
||||
"thisDevice": "Questo dispositivo",
|
||||
"toResetVerifyEmail": "Per reimpostare la tua password, prima verifica la tua email.",
|
||||
"thisEmailIsAlreadyInUse": "Questa email é già in uso",
|
||||
"verificationFailedPleaseTryAgain": "Verifica fallita, per favore riprova",
|
||||
"yourVerificationCodeHasExpired": "Il tuo codice di verifica è scaduto",
|
||||
"incorrectCode": "Codice errato",
|
||||
"sorryTheCodeYouveEnteredIsIncorrect": "Spiacenti, il codice che hai inserito non è corretto",
|
||||
"emailChangedTo": "Email modificata in {newEmail}",
|
||||
"authenticationFailedPleaseTryAgain": "Autenticazione non riuscita, riprova",
|
||||
"authenticationSuccessful": "Autenticazione riuscita!",
|
||||
"twofactorAuthenticationSuccessfullyReset": "Autenticazione a due fattori ripristinata con successo",
|
||||
"incorrectRecoveryKey": "Chiave di recupero errata",
|
||||
"theRecoveryKeyYouEnteredIsIncorrect": "La chiave di recupero che hai inserito non è corretta",
|
||||
"enterPassword": "Inserisci la password",
|
||||
"selectExportFormat": "Seleziona formato di esportazione",
|
||||
"exportDialogDesc": "Le esportazioni criptate saranno protette da una password a tua scelta.",
|
||||
"encrypted": "Criptato",
|
||||
"plainText": "Testo in chiaro",
|
||||
"passwordToEncryptExport": "Password per criptare il file esportato",
|
||||
"export": "Esporta",
|
||||
"useOffline": "Utilizzare senza backup",
|
||||
"signInToBackup": "Accedi per salvare i tuoi codici",
|
||||
"singIn": "Accedi",
|
||||
"sigInBackupReminder": "Si prega di esportare i codici per assicurarsi di avere un backup da cui è possibile ripristinare.",
|
||||
"offlineModeWarning": "Hai scelto di procedere senza backup. Si prega di eseguire backup manuali per assicurarsi che i codici siano al sicuro.",
|
||||
"showLargeIcons": "Mostra icone grandi",
|
||||
"shouldHideCode": "Nascondi i codici",
|
||||
"focusOnSearchBar": "Apri ricerca all'avvio dell'app",
|
||||
"confirmUpdatingkey": "Sei sicuro di voler aggiornare la chiave segreta?",
|
||||
"minimizeAppOnCopy": "Riduci a icona l'app dopo la copia",
|
||||
"editCodeAuthMessage": "Autenticarsi per modificare il codice",
|
||||
"deleteCodeAuthMessage": "Autenticarsi per cancellare il codice",
|
||||
"showQRAuthMessage": "Autenticarsi per mostrare il codice QR"
|
||||
}
|
||||
@@ -263,5 +263,8 @@
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "以下のデバイスからログアウトします:",
|
||||
"terminateSession": "セッションを終了しますか?",
|
||||
"terminate": "終了",
|
||||
"thisDevice": "このデバイス"
|
||||
"thisDevice": "このデバイス",
|
||||
"editCodeAuthMessage": "コードを編集するには認証が必要です",
|
||||
"deleteCodeAuthMessage": "コードを削除するには認証が必要です",
|
||||
"showQRAuthMessage": "QRコードを表示するには認証が必要です"
|
||||
}
|
||||
@@ -9,8 +9,13 @@
|
||||
"onBoardingGetStarted": "Begin",
|
||||
"setupFirstAccount": "Maak je account aan",
|
||||
"importScanQrCode": "Scan een QR-code",
|
||||
"qrCode": "QR Code",
|
||||
"importEnterSetupKey": "Voer een toegangssleutel in",
|
||||
"importAccountPageTitle": "Accountgegevens invoeren",
|
||||
"secretCanNotBeEmpty": "Geheime code mag niet leeg zijn",
|
||||
"bothIssuerAndAccountCanNotBeEmpty": "Uitgever en account kunnen niet beiden leeg zijn",
|
||||
"incorrectDetails": "Onjuiste gegevens",
|
||||
"pleaseVerifyDetails": "Controleer je gegevens en probeer het nog eens",
|
||||
"codeIssuerHint": "Uitgever",
|
||||
"codeSecretKeyHint": "Geheime sleutel",
|
||||
"codeAccountHint": "Account (jij@domein.nl)",
|
||||
@@ -53,6 +58,9 @@
|
||||
}
|
||||
},
|
||||
"contactSupport": "Klantenservice",
|
||||
"rateUsOnStore": "Beoordeel ons op {storeName}",
|
||||
"blog": "Blog",
|
||||
"merchandise": "Merchandise",
|
||||
"verifyPassword": "Bevestig wachtwoord",
|
||||
"pleaseWait": "Een ogenblik geduld...",
|
||||
"generatingEncryptionKeysTitle": "Encryptiesleutels genereren...",
|
||||
@@ -68,10 +76,23 @@
|
||||
"changePassword": "Wachtwoord wijzigen",
|
||||
"data": "Gegevens",
|
||||
"importCodes": "Codes importeren",
|
||||
"importTypePlainText": "Kale tekst",
|
||||
"importTypeEnteEncrypted": "ente versleutelde export",
|
||||
"passwordForDecryptingExport": "Wachtwoord voor het decoderen van export",
|
||||
"passwordEmptyError": "Wachtwoord kan niet leeg zijn",
|
||||
"importFromApp": "Importeer codes van {appName}",
|
||||
"importGoogleAuthGuide": "Exporteer uw accounts van Google Authenticator naar een QR-code met behulp van de optie \"Transfer Accounts\". Met een ander apparaat scan je de QR-code.\n\nTip: Je kunt de webcam van je laptop gebruiken om een foto van de QR-code te maken.",
|
||||
"importSelectJsonFile": "Selecteer JSON bestand",
|
||||
"importEnteEncGuide": "Selecteer het versleutelde JSON-bestand dat vanuit ente geëxporteerd is",
|
||||
"importRaivoGuide": "Gebruik de optie \"Export OTPs to Zip archive\" in Raivo's instellingen.\n\nPak het zip-bestand uit en importeer het JSON-bestand.",
|
||||
"importAegisGuide": "Gebruik de optie \"Exporteer de kluis\" in de instellingen van Aegis.\n\nAls uw kluis is versleuteld, moet u het wachtwoord invoeren om de kluis te ontsleutelen.",
|
||||
"exportCodes": "Codes exporteren",
|
||||
"importLabel": "Importeren",
|
||||
"importInstruction": "Selecteer een bestand dat een lijst van uw codes in de volgende indeling bevat",
|
||||
"importCodeDelimiterInfo": "De codes mogen gescheiden worden door een komma of een nieuwe regel",
|
||||
"selectFile": "Bestand selecteren",
|
||||
"emailVerificationToggle": "E-mailverificatie",
|
||||
"authToChangeEmailVerificationSetting": "Gelieve te verifiëren om de e-mailverificatie te wijzigen",
|
||||
"authToViewYourRecoveryKey": "Graag verifiëren om uw herstelsleutel te bekijken",
|
||||
"authToChangeYourEmail": "Graag verifiëren om je e-mailadres te wijzigen",
|
||||
"authToChangeYourPassword": "Graag verifiëren om je wachtwoord te wijzigen",
|
||||
@@ -81,6 +102,7 @@
|
||||
"no": "Nee",
|
||||
"email": "E-mail",
|
||||
"support": "Ondersteuning",
|
||||
"general": "Algemeen",
|
||||
"settings": "Instellingen",
|
||||
"copied": "Gekopieerd",
|
||||
"pleaseTryAgain": "Probeer het nog eens",
|
||||
@@ -90,6 +112,18 @@
|
||||
"enterYourPasswordHint": "Voer je wachtwoord in",
|
||||
"forgotPassword": "Wachtwoord vergeten",
|
||||
"oops": "Oeps",
|
||||
"suggestFeatures": "Features voorstellen",
|
||||
"faq": "Veelgestelde vragen",
|
||||
"faq_q_1": "Hoe veilig is ente Auth?",
|
||||
"faq_a_1": "Alle codes in ente zijn versleuteld opgeslagen met end-to-end encryptie. Dit betekent dat alleen jij toegang hebt tot je codes. Onze apps zijn open source en onze cryptografie is extern gecontroleerd.",
|
||||
"faq_q_2": "Kan ik toegang krijgen tot mijn codes op desktop?",
|
||||
"faq_a_2": "U heeft toegang tot uw codes op het web @ auth.ente.io.",
|
||||
"faq_q_3": "Hoe kan ik codes verwijderen?",
|
||||
"faq_a_3": "Je kunt een code verwijderen door naar links te vegen op dat item.",
|
||||
"faq_q_4": "Hoe kan ik dit project steunen?",
|
||||
"faq_a_4": "U kunt de ontwikkeling van dit project steunen door u te abonneren op onze Photos app @ ente.io.",
|
||||
"faq_q_5": "Hoe kan ik FaceID lock inschakelen in ente Auth",
|
||||
"faq_a_5": "Je kunt FaceID vergrendelen onder Instellingen → Beveiliging → Lockscreen.",
|
||||
"somethingWentWrongMessage": "Er is iets fout gegaan, probeer het opnieuw",
|
||||
"leaveFamily": "Familie verlaten",
|
||||
"leaveFamilyMessage": "Weet je zeker dat je het familie-plan wil verlaten?",
|
||||
@@ -150,12 +184,14 @@
|
||||
"enterDetailsManually": "Voer gegevens handmatig in",
|
||||
"edit": "Bewerken",
|
||||
"copiedToClipboard": "Gekopieerd naar klembord",
|
||||
"copiedNextToClipboard": "Volgende code gekopieerd naar klembord",
|
||||
"error": "Foutmelding",
|
||||
"recoveryKeyCopiedToClipboard": "Herstelsleutel gekopieerd naar klembord",
|
||||
"recoveryKeyOnForgotPassword": "Als je je wachtwoord vergeet, kun je alleen met deze code je gegevens herstellen.",
|
||||
"recoveryKeySaveDescription": "We slaan deze code niet op, bewaar deze code met 24 woorden op een veilige plaats.",
|
||||
"doThisLater": "Doe dit later",
|
||||
"saveKey": "Sleutel opslaan",
|
||||
"back": "Terug",
|
||||
"createAccount": "Account aanmaken",
|
||||
"passwordStrength": "Wachtwoord sterkte: {passwordStrengthValue}",
|
||||
"@passwordStrength": {
|
||||
@@ -219,6 +255,10 @@
|
||||
"privacy": "Privacy",
|
||||
"terms": "Voorwaarden",
|
||||
"checkForUpdates": "Controleer op updates",
|
||||
"downloadUpdate": "Downloaden",
|
||||
"criticalUpdateAvailable": "Belangrijke update beschikbaar",
|
||||
"updateAvailable": "Update beschikbaar",
|
||||
"update": "Update",
|
||||
"checking": "Controleren...",
|
||||
"youAreOnTheLatestVersion": "Je hebt de meest recente versie",
|
||||
"warning": "Waarschuwing",
|
||||
@@ -263,5 +303,34 @@
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "Dit zal je uitloggen van het volgende apparaat:",
|
||||
"terminateSession": "Sessie beëindigen?",
|
||||
"terminate": "Beëindigen",
|
||||
"thisDevice": "Dit apparaat"
|
||||
"thisDevice": "Dit apparaat",
|
||||
"toResetVerifyEmail": "Verifieer eerst je e-mailadres om je wachtwoord opnieuw in te stellen.",
|
||||
"thisEmailIsAlreadyInUse": "Dit e-mailadres is al in gebruik",
|
||||
"verificationFailedPleaseTryAgain": "Verificatie mislukt, probeer het opnieuw",
|
||||
"yourVerificationCodeHasExpired": "Uw verificatiecode is verlopen",
|
||||
"incorrectCode": "Onjuiste code",
|
||||
"sorryTheCodeYouveEnteredIsIncorrect": "Sorry, de ingevoerde code is onjuist",
|
||||
"emailChangedTo": "E-mailadres gewijzigd naar {newEmail}",
|
||||
"authenticationFailedPleaseTryAgain": "Verificatie mislukt, probeer het opnieuw",
|
||||
"authenticationSuccessful": "Verificatie geslaagd!",
|
||||
"twofactorAuthenticationSuccessfullyReset": "Tweestapsverificatie succesvol gereset",
|
||||
"incorrectRecoveryKey": "Onjuiste herstelsleutel",
|
||||
"theRecoveryKeyYouEnteredIsIncorrect": "De ingevoerde herstelsleutel is onjuist",
|
||||
"enterPassword": "Voer wachtwoord in",
|
||||
"selectExportFormat": "Selecteer export formaat",
|
||||
"exportDialogDesc": "Versleutelde exports worden beschermd door een wachtwoord van uw keuze.",
|
||||
"encrypted": "Versleuteld",
|
||||
"plainText": "Kale tekst",
|
||||
"passwordToEncryptExport": "Wachtwoord voor het versleutelen van export",
|
||||
"export": "Exporteren",
|
||||
"useOffline": "Gebruik zonder back-ups",
|
||||
"signInToBackup": "Meld je aan voor back-ups van je codes",
|
||||
"singIn": "Aanmelden",
|
||||
"sigInBackupReminder": "Exporteer de codes zodat je een back-up hebt waarvandaan je kan herstellen.",
|
||||
"offlineModeWarning": "Je hebt ervoor gekozen om verder te gaan zonder back-ups. Neem handmatige back-ups om ervoor te zorgen dat jouw codes veilig zijn.",
|
||||
"showLargeIcons": "Grote iconen",
|
||||
"focusOnSearchBar": "Focus zoekveld na starten app",
|
||||
"editCodeAuthMessage": "Authenticeren om code te bewerken",
|
||||
"deleteCodeAuthMessage": "Authenticeren om code te verwijderen",
|
||||
"showQRAuthMessage": "Authenticeren om QR-code te tonen"
|
||||
}
|
||||
@@ -263,5 +263,8 @@
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "To wyloguje Cię z tego urządzenia:",
|
||||
"terminateSession": "Zakończyć sesję?",
|
||||
"terminate": "Zakończ",
|
||||
"thisDevice": "To urządzenie"
|
||||
"thisDevice": "To urządzenie",
|
||||
"editCodeAuthMessage": "Uwierzytelnij, aby edytować kod",
|
||||
"deleteCodeAuthMessage": "Uwierzytelnij, aby usunąć kod",
|
||||
"showQRAuthMessage": "Uwierzytelnij, aby pokazać kod QR"
|
||||
}
|
||||
@@ -223,5 +223,8 @@
|
||||
"sorry": "Desculpe",
|
||||
"importFailureDesc": "Não foi possível analisar o arquivo selecionado.\nPor favor, escreva para support@ente.io se precisar de ajuda!",
|
||||
"pendingSyncs": "Atenção",
|
||||
"pendingSyncsWarningBody": "Alguns de seus códigos não foram salvos.\n\nPor favor, certifique-se que você possui um backup para esses códigos antes de sair."
|
||||
"pendingSyncsWarningBody": "Alguns de seus códigos não foram salvos.\n\nPor favor, certifique-se que você possui um backup para esses códigos antes de sair.",
|
||||
"editCodeAuthMessage": "Autenticar para editar o código",
|
||||
"deleteCodeAuthMessage": "Autenticar para excluir o código",
|
||||
"showQRAuthMessage": "Autenticar para mostrar o QR Code"
|
||||
}
|
||||
@@ -9,7 +9,8 @@
|
||||
"onBoardingGetStarted": "Начать",
|
||||
"setupFirstAccount": "Настройте свой первый аккаунт",
|
||||
"importScanQrCode": "Сканировать QR-код",
|
||||
"importEnterSetupKey": "Введите ключ установки",
|
||||
"qrCode": "QR-код",
|
||||
"importEnterSetupKey": "Ввести ключ настройки",
|
||||
"importAccountPageTitle": "Введите данные аккаунта",
|
||||
"secretCanNotBeEmpty": "Секретный код не может быть пустым",
|
||||
"bothIssuerAndAccountCanNotBeEmpty": "И эмитент, и аккаунт не могут быть пустыми",
|
||||
@@ -57,6 +58,9 @@
|
||||
}
|
||||
},
|
||||
"contactSupport": "Связаться с поддержкой",
|
||||
"rateUsOnStore": "Оценить нас на {storeName}",
|
||||
"blog": "Блог",
|
||||
"merchandise": "Товары",
|
||||
"verifyPassword": "Подтверждение пароля",
|
||||
"pleaseWait": "Пожалуйста, подождите...",
|
||||
"generatingEncryptionKeysTitle": "Генерируем ключи шифрования...",
|
||||
@@ -68,14 +72,27 @@
|
||||
"madeWithLoveAtPrefix": "сделана с ❤️ в ",
|
||||
"supportDevs": "Подпишитесь на <bold-green>ente</bold-green> для поддержки этого проекта.",
|
||||
"supportDiscount": "Используйте код скидки \"AUTH\", чтобы получить скидку 10% в первый год",
|
||||
"changeEmail": "изменить почту",
|
||||
"changeEmail": "Изменить почту",
|
||||
"changePassword": "Изменить пароль",
|
||||
"data": "Данные",
|
||||
"importCodes": "Импортировать коды",
|
||||
"importTypePlainText": "Обычный текст",
|
||||
"importTypeEnteEncrypted": "ente Зашифрованный экспорт",
|
||||
"passwordForDecryptingExport": "Пароль для расшифровки экспорта",
|
||||
"passwordEmptyError": "Пароль не может быть пустым",
|
||||
"importFromApp": "Импорт кодов из {appName}",
|
||||
"importGoogleAuthGuide": "Экспортируйте учетные записи из Google Authenticator в QR-код, используя опцию «Перенести учетные записи». Затем с помощью другого устройства отсканируйте QR-код.\n\nСовет: Чтобы сфотографировать QR-код, можно воспользоваться веб-камерой ноутбука.",
|
||||
"importSelectJsonFile": "Выбрать JSON-файл",
|
||||
"importEnteEncGuide": "Выберите зашифрованный JSON-файл, экспортированный из ente",
|
||||
"importRaivoGuide": "Используйте опцию «Export OTPs to Zip archive» в настройках Raivo.\n\nРаспакуйте zip-архив и импортируйте JSON-файл.",
|
||||
"importAegisGuide": "Используйте опцию «Экспортировать хранилище» в настройках Aegis.\n\nЕсли ваше хранилище зашифровано, то для его расшифровки потребуется ввести пароль хранилища.",
|
||||
"exportCodes": "Экспортировать коды",
|
||||
"importLabel": "Импорт",
|
||||
"importInstruction": "Пожалуйста, выберите файл, содержащий список ваших кодов в следующем формате",
|
||||
"importCodeDelimiterInfo": "Коды могут быть разделены запятой или новой строкой",
|
||||
"selectFile": "Выберите файл",
|
||||
"selectFile": "Выбрать файл",
|
||||
"emailVerificationToggle": "Подтверждение электронной почты",
|
||||
"authToChangeEmailVerificationSetting": "Авторизуйтесь, чтобы изменить подтверждение электронной почты",
|
||||
"authToViewYourRecoveryKey": "Пожалуйста, авторизуйтесь для просмотра вашего ключа восстановления",
|
||||
"authToChangeYourEmail": "Пожалуйста, авторизуйтесь, чтобы изменить адрес электронной почты",
|
||||
"authToChangeYourPassword": "Пожалуйста, авторизуйтесь, чтобы изменить пароль",
|
||||
@@ -94,6 +111,18 @@
|
||||
"enterYourPasswordHint": "Введите пароль",
|
||||
"forgotPassword": "Забыл пароль",
|
||||
"oops": "Ой",
|
||||
"suggestFeatures": "Предложить улучшения",
|
||||
"faq": "FAQ",
|
||||
"faq_q_1": "Насколько безопасен ente Auth?",
|
||||
"faq_a_1": "Все коды, которые вы резервируете с помощью ente, хранятся в зашифрованном виде. Это означает, что только вы можете получить доступ к своим кодам. Наши приложения имеют открытый исходный код, а наша криптография прошла внешний аудит.",
|
||||
"faq_q_2": "Могу ли я получить доступ к моим кодам на компьютере?",
|
||||
"faq_a_2": "Вы можете получить доступ к своим кодам на сайте @ auth.ente.io.",
|
||||
"faq_q_3": "Как я могу удалить коды?",
|
||||
"faq_a_3": "Вы можете удалить код, проведя пальцем влево по этому элементу.",
|
||||
"faq_q_4": "Как я могу поддержать этот проект?",
|
||||
"faq_a_4": "Вы можете поддержать развитие этого проекта, подписавшись на наше приложение Photos @ ente.io.",
|
||||
"faq_q_5": "Как мне включить блокировку FaceID в ente Auth?",
|
||||
"faq_a_5": "Вы можете включить блокировку FaceID в Настройки → Безопасность → Экран блокировки.",
|
||||
"somethingWentWrongMessage": "Что-то пошло не так. Попробуйте еще раз",
|
||||
"leaveFamily": "Покинуть семью",
|
||||
"leaveFamilyMessage": "Вы уверены, что хотите отказаться от семейного плана?",
|
||||
@@ -160,6 +189,7 @@
|
||||
"recoveryKeySaveDescription": "Мы не храним этот ключ, пожалуйста, сохраните этот ключ в безопасном месте.",
|
||||
"doThisLater": "Сделать позже",
|
||||
"saveKey": "Сохранить ключ",
|
||||
"back": "Вернуться",
|
||||
"createAccount": "Создать аккаунт",
|
||||
"passwordStrength": "Мощность пароля: {passwordStrengthValue}",
|
||||
"@passwordStrength": {
|
||||
@@ -267,5 +297,27 @@
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "Вы выйдете из списка следующих устройств:",
|
||||
"terminateSession": "Завершить сеанс?",
|
||||
"terminate": "Завершить",
|
||||
"thisDevice": "Это устройство"
|
||||
"thisDevice": "Это устройство",
|
||||
"toResetVerifyEmail": "Чтобы сбросить пароль, сначала подтвердите свой адрес электронной почты.",
|
||||
"thisEmailIsAlreadyInUse": "Этот адрес электронной почты уже используется",
|
||||
"verificationFailedPleaseTryAgain": "Проверка не удалась, попробуйте еще раз",
|
||||
"yourVerificationCodeHasExpired": "Срок действия вашего проверочного кода истек",
|
||||
"incorrectCode": "Неверный код",
|
||||
"sorryTheCodeYouveEnteredIsIncorrect": "Извините, введенный вами код неверный",
|
||||
"emailChangedTo": "Адрес электронной почты изменен на {newEmail}",
|
||||
"authenticationFailedPleaseTryAgain": "Аутентификация не удалась, попробуйте еще раз",
|
||||
"authenticationSuccessful": "Аутентификация прошла успешно!",
|
||||
"twofactorAuthenticationSuccessfullyReset": "Двухфакторная аутентификация успешно сброшена",
|
||||
"incorrectRecoveryKey": "Неправильный ключ восстановления",
|
||||
"theRecoveryKeyYouEnteredIsIncorrect": "Введен неправильный ключ восстановления",
|
||||
"enterPassword": "Введите пароль",
|
||||
"selectExportFormat": "Выбрать формат экспорта",
|
||||
"exportDialogDesc": "Зашифрованные экспортированные данные будут защищены паролем, который вы выберете.",
|
||||
"encrypted": "Зашифрованный",
|
||||
"plainText": "Обычный текст",
|
||||
"passwordToEncryptExport": "Пароль для шифрования экспорта",
|
||||
"export": "Экспорт",
|
||||
"editCodeAuthMessage": "Аутентификация для редактирования кода",
|
||||
"deleteCodeAuthMessage": "Аутентификация для удаления кода",
|
||||
"showQRAuthMessage": "Аутентификация для отображения QR-кода"
|
||||
}
|
||||
@@ -9,8 +9,11 @@
|
||||
"onBoardingGetStarted": "Başlayın",
|
||||
"setupFirstAccount": "İlk hesabınızı ekleyin",
|
||||
"importScanQrCode": "Karekodu tara",
|
||||
"qrCode": "QR Kodu",
|
||||
"importEnterSetupKey": "Kurulum anahtarını giriniz",
|
||||
"importAccountPageTitle": "Hesap bilgilerinizi girin",
|
||||
"incorrectDetails": "Bilgiler yanlış",
|
||||
"pleaseVerifyDetails": "Lütfen bilgileri doğrulayın ve tekrar deneyin",
|
||||
"codeIssuerHint": "Yayınlayan",
|
||||
"codeSecretKeyHint": "Gizli Anahtar",
|
||||
"codeAccountHint": "Hesap (örnek@domain.com)",
|
||||
@@ -24,7 +27,7 @@
|
||||
"timeBasedKeyType": "Zaman tabanlı (TOTP)",
|
||||
"counterBasedKeyType": "Sayaç tabanlı (HOTP)",
|
||||
"saveAction": "Kaydet",
|
||||
"nextTotpTitle": "ileri",
|
||||
"nextTotpTitle": "sonraki",
|
||||
"deleteCodeTitle": "Kodu silmek istiyor musunuz?",
|
||||
"deleteCodeMessage": "Bu kodu silmek istediğinize emin misiniz? Bu geri alınamaz bir işlemdir.",
|
||||
"viewLogsAction": "Günlüğü görüntüle",
|
||||
@@ -53,6 +56,9 @@
|
||||
}
|
||||
},
|
||||
"contactSupport": "Destek ekibiyle iletişime geçin",
|
||||
"rateUsOnStore": "Bizi {storeName} üzerinden değerlendirin",
|
||||
"blog": "Blog",
|
||||
"merchandise": "Ürünler",
|
||||
"verifyPassword": "Şifreyi doğrulayın",
|
||||
"pleaseWait": "Lütfen bekleyin...",
|
||||
"generatingEncryptionKeysTitle": "Şifreleme anahtarları üretiliyor...",
|
||||
@@ -67,11 +73,24 @@
|
||||
"changeEmail": "E-postayı değiştir",
|
||||
"changePassword": "Şifreyi değiştir",
|
||||
"data": "Veriler",
|
||||
"importCodes": "Kodu İçe Aktar",
|
||||
"importCodes": "Kodu içe aktar",
|
||||
"importTypePlainText": "Düz metin",
|
||||
"importTypeEnteEncrypted": "ente Şifreli dışa aktarma",
|
||||
"passwordForDecryptingExport": "Dışa aktarımın şifresini çözmek için parola",
|
||||
"passwordEmptyError": "Şifre boş olamaz",
|
||||
"importFromApp": "Kodları {appName} uygulamasından içe aktarın",
|
||||
"importGoogleAuthGuide": "\"Hesapları Aktar\" seçeneğini kullanarak hesaplarınızı Google Authenticator'dan bir QR koduna aktarın. Ardından başka bir cihaz kullanarak QR kodunu tarayın.\n\nİpucu: QR kodunun fotoğrafını çekmek için dizüstü bilgisayarınızın kamerasını kullanabilirsiniz.",
|
||||
"importSelectJsonFile": "JSON dosyasını seçin",
|
||||
"importEnteEncGuide": "Ente'den dışa aktarılan şifrelenmiş JSON dosyasını seçin",
|
||||
"importRaivoGuide": "Raivo'nun ayarlarında \"OTP'leri Zip arşivine aktar\" seçeneğini kullanın.\n\nZip dosyasını çıkarın ve JSON dosyasını içe aktarın.",
|
||||
"importAegisGuide": "Aegis'in Ayarlarında \"Kasayı dışa aktar\" seçeneğini kullanın.\n\nKasanız şifrelenmişse, kasanın şifresini çözmek için kasa parolasını girmeniz gerekecektir.",
|
||||
"exportCodes": "Kodu dışa aktar",
|
||||
"importLabel": "İçe aktar",
|
||||
"importInstruction": "Lütfen aşağıdaki şekilde kodlarınızın listesini içeren dosyayı seçiniz",
|
||||
"importCodeDelimiterInfo": "Kodlar, virgülle ya da yeni bir satırla ayrılabilir",
|
||||
"selectFile": "Dosya seç",
|
||||
"emailVerificationToggle": "E-posta doğrulama",
|
||||
"authToChangeEmailVerificationSetting": "E-posta doğrulamasını değiştirmek için lütfen kimlik doğrulaması yapın",
|
||||
"authToViewYourRecoveryKey": "Kurtarma anahtarınızı görmek için lütfen kimliğinizi doğrulayın",
|
||||
"authToChangeYourEmail": "Epostanızı değiştirmek için lütfen kimliğinizi doğrulayın",
|
||||
"authToChangeYourPassword": "Şifrenizi değiştirmek için lütfen kimliğinizi doğrulayın",
|
||||
@@ -90,6 +109,18 @@
|
||||
"enterYourPasswordHint": "Parolanızı girin",
|
||||
"forgotPassword": "Şifremi unuttum",
|
||||
"oops": "Hay aksi",
|
||||
"suggestFeatures": "Özellik önerin",
|
||||
"faq": "SSS",
|
||||
"faq_q_1": "Ente Auth ne kadar güvenli?",
|
||||
"faq_a_1": "Ente aracılığıyla yedeklediğiniz tüm kodlar uçtan uca şifrelenmiş olarak saklanır. Bu, kodlarınıza yalnızca sizin erişebileceğiniz anlamına gelir. Uygulamalarımız açık kaynaklıdır ve kriptografimiz harici olarak denetlenmiştir.",
|
||||
"faq_q_2": "Kodlarıma masaüstünden erişebilir miyim?",
|
||||
"faq_a_2": "Kodlarınıza internet üzerinden @ auth.ente.io adresinden erişebilirsiniz.",
|
||||
"faq_q_3": "Kodları nasıl silebilirim?",
|
||||
"faq_a_3": "Bir kodu, o öğenin üzerinde sola kaydırarak silebilirsiniz.",
|
||||
"faq_q_4": "Bu projeye nasıl destek olabilirim?",
|
||||
"faq_a_4": "Fotoğraflar uygulamamıza @ ente.io abone olarak bu projenin geliştirilmesine destek olabilirsiniz.",
|
||||
"faq_q_5": "FaceID kilidini ente Auth'ta nasıl etkinleştirebilirim",
|
||||
"faq_a_5": "FaceID kilidini Ayarlar → Güvenlik → Kilit Ekranı altında etkinleştirebilirsiniz.",
|
||||
"somethingWentWrongMessage": "Bir şeyler ters gitti, lütfen tekrar deneyin",
|
||||
"leaveFamily": "Aile planından ayrıl",
|
||||
"leaveFamilyMessage": "Aile planından ayrılmak istediğinize emin misiniz?",
|
||||
@@ -133,7 +164,7 @@
|
||||
"close": "Kapat",
|
||||
"oopsSomethingWentWrong": "Hay aksi, bir sorun oluştu.",
|
||||
"selectLanguage": "Dil Seçin",
|
||||
"language": "Language",
|
||||
"language": "Dil",
|
||||
"social": "Sosyal Medya",
|
||||
"security": "Güvenlik",
|
||||
"lockscreen": "Kilit ekranı",
|
||||
@@ -156,6 +187,7 @@
|
||||
"recoveryKeySaveDescription": "Biz bu anahtarı saklamıyoruz, lütfen. bu 24 kelimelik anahtarı güvenli bir yerde saklayın.",
|
||||
"doThisLater": "Bunu daha sonra yap",
|
||||
"saveKey": "Anahtarı kaydet",
|
||||
"back": "Geri",
|
||||
"createAccount": "Hesap oluştur",
|
||||
"passwordStrength": "Şifre gücü: {passwordStrengthValue}",
|
||||
"@passwordStrength": {
|
||||
@@ -214,6 +246,7 @@
|
||||
"enterYourRecoveryKey": "Kurtarma anahtarınızı girin",
|
||||
"tempErrorContactSupportIfPersists": "Bir şeyler ters gitmiş gibi görünüyor. Lütfen bir süre sonra tekrar deneyin. Hata devam ederse, lütfen destek ekibimizle iletişime geçin.",
|
||||
"itLooksLikeSomethingWentWrongPleaseRetryAfterSome": "Bir şeyler ters gitmiş gibi görünüyor. Lütfen bir süre sonra tekrar deneyin. Hata devam ederse, lütfen destek ekibimizle iletişime geçin.",
|
||||
"about": "Hakkında",
|
||||
"weAreOpenSource": "Biz açık kaynağız!",
|
||||
"privacy": "Gizlilik",
|
||||
"terms": "Şartlar",
|
||||
@@ -238,6 +271,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"sorry": "Üzgünüz",
|
||||
"importFailureDesc": "Seçilen dosya ayrıştırılamadı.\nYardıma ihtiyacınız varsa lütfen support@ente.io adresine yazın!",
|
||||
"pendingSyncs": "Uyarı",
|
||||
"pendingSyncsWarningBody": "Kodlarınızdan bazıları yedeklenmemiş.\n\nLütfen oturumu kapatmadan önce bu kodların yedeğini aldığınızdan emin olun.",
|
||||
@@ -257,7 +291,31 @@
|
||||
},
|
||||
"activeSessions": "Aktif oturumlar",
|
||||
"somethingWentWrongPleaseTryAgain": "Bir şeyler ters gitti, lütfen tekrar deneyin",
|
||||
"thisWillLogYouOutOfThisDevice": "Bu sizin bu cihazdaki oturumunuzu kapatacaktır!",
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "Bu, aşağıdaki cihazdan çıkış yapmanızı sağlayacaktır:",
|
||||
"terminateSession": "Oturumu sonlandır?",
|
||||
"terminate": "Sonlandır",
|
||||
"thisDevice": "Bu cihaz"
|
||||
"thisDevice": "Bu cihaz",
|
||||
"toResetVerifyEmail": "Şifrenizi sıfırlamak için lütfen önce e-postanızı doğrulayın.",
|
||||
"thisEmailIsAlreadyInUse": "Bu e-posta zaten kullanılıyor",
|
||||
"verificationFailedPleaseTryAgain": "Doğrulama başarısız oldu, lütfen tekrar deneyin",
|
||||
"yourVerificationCodeHasExpired": "Doğrulama kodunuzun süresi doldu",
|
||||
"incorrectCode": "Yanlış kod",
|
||||
"sorryTheCodeYouveEnteredIsIncorrect": "Üzgünüz, girdiğiniz kod yanlış",
|
||||
"emailChangedTo": "E-posta {newEmail} olarak değiştirildi",
|
||||
"authenticationFailedPleaseTryAgain": "Kimlik doğrulama başarısız oldu, lütfen tekrar deneyin",
|
||||
"authenticationSuccessful": "Kimlik doğrulama başarılı!",
|
||||
"twofactorAuthenticationSuccessfullyReset": "İki faktörlü kimlik doğrulama başarıyla sıfırlandı",
|
||||
"incorrectRecoveryKey": "Yanlış kurtarma kodu",
|
||||
"theRecoveryKeyYouEnteredIsIncorrect": "Girdiğiniz kurtarma kodu yanlış",
|
||||
"enterPassword": "Şifreyi girin",
|
||||
"selectExportFormat": "Dışa aktarma formatını seç",
|
||||
"exportDialogDesc": "Şifrelenmiş dışa aktarımlar seçtiğiniz bir parola ile korunacaktır.",
|
||||
"encrypted": "Şifreli",
|
||||
"plainText": "Düz metin",
|
||||
"passwordToEncryptExport": "Dışa aktarımı şifrelemek için parola",
|
||||
"export": "Dışa aktar",
|
||||
"editCodeAuthMessage": "Kodu düzenlemek için doğrulama yapın",
|
||||
"deleteCodeAuthMessage": "Kodu silmek için doğrulama yapın",
|
||||
"showQRAuthMessage": "QR kodunu göstermek için doğrulama yapın"
|
||||
}
|
||||
@@ -267,5 +267,8 @@
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "Thao tác này sẽ đăng xuất bạn khỏi thiết bị sau:",
|
||||
"terminateSession": "Chấm dứt phiên?",
|
||||
"terminate": "Dừng lại",
|
||||
"thisDevice": "Thiết bị này"
|
||||
"thisDevice": "Thiết bị này",
|
||||
"editCodeAuthMessage": "Xác minh để chỉnh sửa mã",
|
||||
"deleteCodeAuthMessage": "Xác minh để xóa mã",
|
||||
"showQRAuthMessage": "Xác minh để hiển thị mã QR"
|
||||
}
|
||||
@@ -9,8 +9,13 @@
|
||||
"onBoardingGetStarted": "开始",
|
||||
"setupFirstAccount": "设置您的第一个账户",
|
||||
"importScanQrCode": "扫描二维码",
|
||||
"qrCode": "二维码",
|
||||
"importEnterSetupKey": "输入设置密钥",
|
||||
"importAccountPageTitle": "输入账户详细信息",
|
||||
"secretCanNotBeEmpty": "密码不能为空",
|
||||
"bothIssuerAndAccountCanNotBeEmpty": "发行人和账户均不能为空",
|
||||
"incorrectDetails": "详细信息不正确",
|
||||
"pleaseVerifyDetails": "请验证详细信息并重试",
|
||||
"codeIssuerHint": "发行人",
|
||||
"codeSecretKeyHint": "私钥",
|
||||
"codeAccountHint": "账户 (you@domain.com)",
|
||||
@@ -24,7 +29,7 @@
|
||||
"timeBasedKeyType": "基于时间的 (TOTP)",
|
||||
"counterBasedKeyType": "基于计数器的(HOTP)",
|
||||
"saveAction": "保存",
|
||||
"nextTotpTitle": "下一步",
|
||||
"nextTotpTitle": "下一个",
|
||||
"deleteCodeTitle": "要删除代码吗?",
|
||||
"deleteCodeMessage": "您确定要删除此代码吗?此操作是不可逆的。",
|
||||
"viewLogsAction": "查看日志",
|
||||
@@ -53,6 +58,9 @@
|
||||
}
|
||||
},
|
||||
"contactSupport": "联系支持",
|
||||
"rateUsOnStore": "在 {storeName} 上给我们评分",
|
||||
"blog": "博客",
|
||||
"merchandise": "商品",
|
||||
"verifyPassword": "验证密码",
|
||||
"pleaseWait": "请稍候...",
|
||||
"generatingEncryptionKeysTitle": "正在生成加密密钥...",
|
||||
@@ -68,10 +76,24 @@
|
||||
"changePassword": "修改密码",
|
||||
"data": "数据",
|
||||
"importCodes": "导入代码",
|
||||
"importTypePlainText": "纯文本",
|
||||
"importTypeEnteEncrypted": "ente 加密导出",
|
||||
"passwordForDecryptingExport": "用来解密导出的密码",
|
||||
"passwordEmptyError": "密码不能为空",
|
||||
"importFromApp": "从 {appName} 导入代码",
|
||||
"importGoogleAuthGuide": "使用“转移帐户”选项将您的帐户从 Google 身份验证器导出到二维码。然后使用另一台设备扫描二维码。\n\n提示:您可以使用笔记本电脑的网络摄像头拍摄二维码的照片。",
|
||||
"importSelectJsonFile": "选择 JSON 文件",
|
||||
"importEnteEncGuide": "选择从ente导出的加密JSON文件",
|
||||
"importRaivoGuide": "使用 Raivo 设置中的“将 OTP 导出到 Zip 存档”选项。\n\n解压 zip 文件并导入 JSON 文件。",
|
||||
"importAegisGuide": "在Aegis的设置中使用\"导出密码库\"选项。\n\n如果您的密码库已加密,您需要输入密码才能解密密码库。",
|
||||
"exportCodes": "导出代码",
|
||||
"importLabel": "导入",
|
||||
"importInstruction": "请以以下格式选择包含代码列表的文件",
|
||||
"importCodeDelimiterInfo": "代码可以用逗号或新行分隔。",
|
||||
"selectFile": "选择文件",
|
||||
"emailVerificationToggle": "电子邮件验证",
|
||||
"emailVerificationEnableWarning": "如果您将 2FA 存储到我们的电子邮件中,则打开电子邮件验证可能会导致僵局。如果您被一项服务锁定,您可能无法登录另一项服务。",
|
||||
"authToChangeEmailVerificationSetting": "请进行身份验证以更改电子邮件验证",
|
||||
"authToViewYourRecoveryKey": "请验证以查看您的恢复密钥",
|
||||
"authToChangeYourEmail": "请验证以更改您的电子邮件",
|
||||
"authToChangeYourPassword": "请验证以更改密码",
|
||||
@@ -81,6 +103,7 @@
|
||||
"no": "否",
|
||||
"email": "电子邮件地址",
|
||||
"support": "支持",
|
||||
"general": "通用",
|
||||
"settings": "设置",
|
||||
"copied": "已复制",
|
||||
"pleaseTryAgain": "请重试",
|
||||
@@ -90,6 +113,18 @@
|
||||
"enterYourPasswordHint": "输入您的密码",
|
||||
"forgotPassword": "忘记密码",
|
||||
"oops": "哎呀",
|
||||
"suggestFeatures": "建议新功能",
|
||||
"faq": "常见问题",
|
||||
"faq_q_1": "ente Auth的安全程度如何?",
|
||||
"faq_a_1": "您通过 ente 备份的所有代码均以端到端加密方式存储。这意味着只有您可以访问您的代码。 我们的应用程序是开源的,我们的加密技术已经过外部审计。",
|
||||
"faq_q_2": "我可以在桌面上访问我的代码吗?",
|
||||
"faq_a_2": "您可以在 web @auth.ente.io 上访问您的代码。",
|
||||
"faq_q_3": "我如何删除代码?",
|
||||
"faq_a_3": "您可以通过向左滑动该项目来删除该代码。",
|
||||
"faq_q_4": "我该如何支持该项目?",
|
||||
"faq_a_4": "您可以通过订阅我们的照片应用程序@ente.io来支持该项目的开发。",
|
||||
"faq_q_5": "如何在 ente Auth 中启用 FaceID 锁定",
|
||||
"faq_a_5": "您可以在“设置”→“安全”→“锁屏”下启用 FaceID 锁定。",
|
||||
"somethingWentWrongMessage": "出了点问题,请重试",
|
||||
"leaveFamily": "离开家庭",
|
||||
"leaveFamilyMessage": "您确定要离开家庭计划吗?",
|
||||
@@ -150,12 +185,14 @@
|
||||
"enterDetailsManually": "手动输入详细信息",
|
||||
"edit": "编辑",
|
||||
"copiedToClipboard": "已复制到剪贴板",
|
||||
"copiedNextToClipboard": "已将下一个代码复制到剪贴板",
|
||||
"error": "错误",
|
||||
"recoveryKeyCopiedToClipboard": "恢复密钥已复制到剪贴板",
|
||||
"recoveryKeyOnForgotPassword": "如果您忘记了密码,恢复数据的唯一方法就是使用此密钥。",
|
||||
"recoveryKeySaveDescription": "我们不会存储此密钥,请将此24个单词密钥保存在一个安全的地方。",
|
||||
"doThisLater": "稍后再做",
|
||||
"saveKey": "保存密钥",
|
||||
"back": "返回",
|
||||
"createAccount": "创建账户",
|
||||
"passwordStrength": "密码强度: {passwordStrengthValue}",
|
||||
"@passwordStrength": {
|
||||
@@ -219,6 +256,10 @@
|
||||
"privacy": "隐私",
|
||||
"terms": "使用条款",
|
||||
"checkForUpdates": "检查更新",
|
||||
"downloadUpdate": "下载",
|
||||
"criticalUpdateAvailable": "有重要更新可用",
|
||||
"updateAvailable": "有可用的更新",
|
||||
"update": "更新",
|
||||
"checking": "正在检查...",
|
||||
"youAreOnTheLatestVersion": "当前为最新版本",
|
||||
"warning": "警告",
|
||||
@@ -263,5 +304,37 @@
|
||||
"thisWillLogYouOutOfTheFollowingDevice": "这将使您在以下设备中退出登录:",
|
||||
"terminateSession": "是否终止会话?",
|
||||
"terminate": "终止",
|
||||
"thisDevice": "此设备"
|
||||
"thisDevice": "此设备",
|
||||
"toResetVerifyEmail": "要重置您的密码,请先验证您的电子邮件。",
|
||||
"thisEmailIsAlreadyInUse": "该电子邮件已被使用",
|
||||
"verificationFailedPleaseTryAgain": "验证失败,请再试一次",
|
||||
"yourVerificationCodeHasExpired": "您的验证码已过期",
|
||||
"incorrectCode": "验证码错误",
|
||||
"sorryTheCodeYouveEnteredIsIncorrect": "抱歉,您输入的验证码不正确",
|
||||
"emailChangedTo": "电子邮件已更改为 {newEmail}",
|
||||
"authenticationFailedPleaseTryAgain": "认证失败,请重试",
|
||||
"authenticationSuccessful": "认证成功!",
|
||||
"twofactorAuthenticationSuccessfullyReset": "双因素身份验证已成功重置",
|
||||
"incorrectRecoveryKey": "恢复密钥不正确",
|
||||
"theRecoveryKeyYouEnteredIsIncorrect": "您输入的恢复密钥不正确",
|
||||
"enterPassword": "输入密码",
|
||||
"selectExportFormat": "选择导出格式",
|
||||
"exportDialogDesc": "加密导出将由您选择的密码保护。",
|
||||
"encrypted": "已加密",
|
||||
"plainText": "纯文本",
|
||||
"passwordToEncryptExport": "用来加密导出的密码",
|
||||
"export": "导出",
|
||||
"useOffline": "无需备份即可使用",
|
||||
"signInToBackup": "登录以备份您的代码",
|
||||
"singIn": "登录",
|
||||
"sigInBackupReminder": "请导出您的代码以确保您有可以恢复的备份。",
|
||||
"offlineModeWarning": "您已选择在不进行备份的情况下继续操作。请手动备份以确保您的代码安全。",
|
||||
"showLargeIcons": "显示大图标",
|
||||
"shouldHideCode": "隐藏代码",
|
||||
"focusOnSearchBar": "应用启动后聚焦搜索",
|
||||
"confirmUpdatingkey": "您确定要更新此密钥吗?",
|
||||
"minimizeAppOnCopy": "复制时最小化应用",
|
||||
"editCodeAuthMessage": "编辑代码需要身份验证",
|
||||
"deleteCodeAuthMessage": "删除代码需要身份验证",
|
||||
"showQRAuthMessage": "显示QR码需要身份验证"
|
||||
}
|
||||
@@ -24,7 +24,7 @@ Locale localResolutionCallBack(locales, supportedLocales) {
|
||||
Locale? languageCodeMatch;
|
||||
final Map<String, Locale> languageCodeToLocale = {
|
||||
for (Locale supportedLocale in appSupportedLocales)
|
||||
supportedLocale.languageCode: supportedLocale
|
||||
supportedLocale.languageCode: supportedLocale,
|
||||
};
|
||||
|
||||
for (Locale locale in locales) {
|
||||
|
||||