Compare commits

...

1007 Commits

Author SHA1 Message Date
Prateek Sunal
23e0a73e61 Create desktop.yml (#448)
Created desktop.yml as currently main branch doesn't have it so I can't
run workflow of beta
- [x]  Build configuration change
2024-02-12 21:24:37 +05:30
github-actions[bot]
13dd051308 New Translations (#442)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-02-10 12:13:44 +05:30
Neeraj Gupta
f6f8b1ca3d Fix inconsitent state (#446)
If user clicks on New user login flow, abandon that in between and tries
account recovery via recovery code, we were using old volatile password
in memory for generating the recovery_key for UI.

This PR fixes that issue.
2024-02-09 13:41:00 +05:30
Neeraj Gupta
27c6d8ffde Export fixes (#445) 2024-02-09 12:28:36 +05:30
Neeraj Gupta
310d32def2 Log improvements (#444) 2024-02-09 10:47:03 +05:30
forthcoming73
cb1376f338 add icon for notesnook (#443)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

add the svg icon for notesnook

<!--- Describe your changes in detail -->

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [x] 🖼️ 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2024-02-05 10:04:42 +05:30
github-actions[bot]
a1fcc82cb5 New Translations (#441)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-02-04 14:56:16 +05:30
github-actions[bot]
5d0f919027 New Translations (#440)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-02-02 18:53:45 +05:30
Sven
8766face0d Add 6 new icons (#436)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

<!--- Describe your changes in detail -->
Added 6 new icons
- Crowdpear
- DEGIRO
- Esketit
- Estateguru
- Kagi
- Mintos

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [x] 🖼️ 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2024-02-02 18:53:15 +05:30
Kusha Gharahi
1f42338c2a Add Lastpass Authenticator import (#437)
## Description

Added LastPass Authenticator import and tested it on iOS with my
import.json file.

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [ ] 🖼️ New icon
- [x]  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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2024-02-02 12:48:44 +05:30
github-actions[bot]
30f5358ac0 New Translations (#431)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-01-27 18:52:44 +05:30
Tanguy
cb0b965fb7 Fix Filen icon (#426)
Fix Filen SVG

<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

- Fix Filen SVG that was showing like that on my iPhone:

![image](https://github.com/ente-io/auth/assets/98350888/e543cf82-2d46-48df-b846-57fba0b42945)

- Remove GitLab slug that was not necessary (GitLab = gitlab)

<!--- Describe your changes in detail -->

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [ ] 🖼️ New icon
- [ ]  New feature (non-breaking change which adds functionality)
- [x] 🛠️ Bug fix (non-breaking change which fixes an issue)
- [ ]  Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore

---------

Co-authored-by: Vishnu Mohandas <vishnu@ente.io>
2024-01-27 14:01:42 +05:30
Nikunj Kumar Nakum
c9cea27aaa Added Kite icon (#427)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

Added kite icon.

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [x] 🖼️ 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore

---------

Co-authored-by: Vishnu Mohandas <vishnu@ente.io>
2024-01-27 13:35:46 +05:30
iamgitcat
87d23a5327 Add some more icons (#430)
## Description

Add icons for BorgBase, Gosuslugi, IVPN, IceDrive, Yandex, Murena
(eCloud), pCloud

## Type of Change

- [x] 🖼️ 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2024-01-27 12:37:45 +05:30
github-actions[bot]
8def85a2ad New Translations (#414)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-01-25 17:10:03 +05:30
iamgitcat
f4d8cd9e48 Add Koofr icon (#423)
## Description

Add Koofr icon

## Type of Change

- [x] 🖼️ 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore

---------

Co-authored-by: Vishnu Mohandas <vishnu@ente.io>
2024-01-17 11:34:32 +05:30
Nikunj Kumar Nakum
b785bfde57 Optimized SVG icons for #405 (#418)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description
Sizing issue with recent #405 icons was fixed by optimizing svg files.
<!--- Describe your changes in detail -->

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [ ] 🖼️ New icon
- [ ]  New feature (non-breaking change which adds functionality)
- [x] 🛠️ Bug fix (non-breaking change which fixes an issue)
- [ ]  Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2024-01-12 13:07:09 +05:30
green
eb4d43307e Update Authy guide (#415)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

Adds info on Bitwarden import support

## Type of Change

<!--- 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [x] 📝 Documentation
- [ ] 🗑️ Chore
2024-01-08 19:47:32 +05:30
Vishnu Mohandas
66bd489904 Fix privacy screen colors (#411)
### Description
Fixes this monstrosity.

<img width="320" alt="Screenshot 2024-01-06 at 10 17 28 PM"
src="https://github.com/ente-io/auth/assets/1161789/30964804-8e7e-429b-b4f0-6963059c931b">
  
  
### Note
On iOS, the colors could still be inverted if the user has opted for a
theme different from the system theme, since `LaunchImage` is
dynamically provided by iOS
2024-01-07 04:23:38 +05:30
Vishnu Mohandas
1b7b6e457b v2.0.30 (#409) 2024-01-04 10:18:57 +05:30
Zxhir
61c53e9d10 Add the TCPShield logo (#408)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

<!--- Describe your changes in detail -->

This PR adds the TCPShield. TCPShield is a highly available DDoS
protection platform, mainly used in Minecraft servers. I have also
re-aranged NextDNS and Skiff in the custom-icons.json to make it in
alphabetical order.

<!--- Put an `x` in all the boxes that apply: -->

- [x] 🖼️ 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2024-01-04 09:20:44 +05:30
Antoni Siek
13fe460069 fix: bitwarden imports (#406)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

<!--- Describe your changes in detail -->

There are two issues with Bitwarden imports ATM:

1. TOTP secrets in Bitwarden are sometimes saved in a format of
`otpauth://[...]` and sometimes in a format of secret only. Ente auth
assumes that only the second one is used, which is not true and causes
an exception. To make both methods work as excepted, in the code, I'm
checking which format is used and create `Code` object accordingly.
2. Sometimes items in Bitwarden exports are not accounts, but rather
notes. In that case, the `item` variable in the
`_processBitwardenExportFile` method does not contain the `login`
attribute, which causes an exception. I've added a check to make sure
that the item we're parsing is indeed an account.

It is my first time making something in Dart, so please don't be too
harsh about my code :)

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [ ] 🖼️ New icon
- [ ]  New feature (non-breaking change which adds functionality)
- [x] 🛠️ Bug fix (non-breaking change which fixes an issue)
- [ ]  Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2024-01-03 12:53:26 +05:30
Aadarsh Patel
6b4e4b6822 Fix: dark icon hard to see (#407)
## Type of Change

- [x]  New feature (non-breaking change which adds functionality)

## Description

Fall-back to theme's icon-color when the icon-color is too light or
dark. Fixes #403

Logic
1. If RGB values are almost equal (`#000000`, `#0F0F11`, `#212121`,
`#27272A`, `#464949`, `#FFFFFF`)
2. Compute its luminance/brightness (cache this value as it is an
expensive task)
3. If its too bright or dark, return theme's icon-color

I've manually set the threshold values for brightness in light-theme to
be `0.7` and in dark-theme to be `0.05`



https://github.com/ente-io/auth/assets/53324291/aa1e8413-631d-4039-8c08-f8c4d1856fdb

Co-authored-by: aadarsh-patel <aadarsh@zuzu.in>
2024-01-03 12:48:23 +05:30
Nikunj Kumar Nakum
8b9592c06e Update custom-icons.json (#405)
## Description
added following custom icons
1 epic games
2 brave creators
3 gitlab
4 rust users forum
5 uphold

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [x] 🖼️ New icon
2023-12-28 10:53:43 +05:30
Neeraj Gupta
4a0301fe46 Build decrypt binary for all major arch (#401)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

<!--- Describe your changes in detail -->

## Type of Change

<!--- 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2023-12-19 09:41:29 +05:30
Neeraj Gupta
14820ad7a0 Make screen scrollable (#400)
## Description
Fixes https://github.com/ente-io/auth/issues/398

<!--- Describe your changes in detail -->

## Type of Change


- [x] 🛠️ Bug fix (non-breaking change which fixes an issue)
2023-12-19 09:05:02 +05:30
Vishnu Mohandas
974c34a569 Ignore spaces within provider names (#395)
Fixes #393.

Tested with an entry within Simple Icons ("Deutsche Bahn") and an entry
within our Custom Icons ("Anycoin Direct").
2023-12-18 21:37:39 +05:30
github-actions[bot]
4dc31c3e60 New Translations (#397)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-12-18 21:35:53 +05:30
github-actions[bot]
fa60a22443 New Translations (#396)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-12-18 10:34:15 +05:30
Lukas Bestle
cf55c48b4c Add several custom icons (#394)
## Description

Added custom icons that don't meet the requirements of Simple Icons
(especially because they are full-color).

The Airtable and Discourse icons are an upgrade to the single-color
icons in Simple Icons, the others are not available yet at all.

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [x] 🖼️ 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2023-12-17 17:17:32 +05:30
github-actions[bot]
56290b1df6 New Translations (#391)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-12-15 14:09:16 +05:30
github-actions[bot]
8d468dbc91 New Translations (#389)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-12-07 08:03:24 +05:30
Muhammed Ayimen Abdul Latheef
1a654fe748 Added: When the app is in the background, hided te contents of the app (#387)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

Added: Hide the contents of the app, when is it in the background - Both
android and ios

In android, it shows a blank white/black background, when in background

In iOS, it shows the launch icon, when in background


![photo_2023-12-06_12-53-02](https://github.com/ente-io/auth/assets/54765537/4f787e6a-984c-4eae-9028-303a32009838)

Android Physical Device


![photo_2023-12-06_12-52-55](https://github.com/ente-io/auth/assets/54765537/b8802cf5-0db0-473e-8be8-8cf3bf7b29a5)

Android stimulator

Also, compared the bitwarden apps in android, the flow is same

iOS Device: Need to verify 
@ua741 @vishnukvmd Could you run on iOS devices and verify it?

Closes #47 

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [ ] 🖼️ New icon
- [x]  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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2023-12-06 13:50:36 +05:30
github-actions[bot]
1606b74b40 New Translations (#388) 2023-12-06 09:47:32 +05:30
Vishnu Mohandas
8d82851741 Update CONTRIBUTION.md (#385) 2023-12-04 10:48:51 +05:30
github-actions[bot]
a6ca5697d9 New Translations (#381)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-12-04 08:12:11 +05:30
github-actions[bot]
e01ba961a6 New Translations (#378)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-11-27 22:43:46 +05:30
Neeraj Gupta
a256bc9922 EmailVerification: Improve copy for warning (#377) 2023-11-27 22:02:18 +05:30
Neeraj Gupta
77632b3241 Bump version 2.0.26+226 2023-11-27 18:39:22 +05:30
Neeraj Gupta
d02e02a326 Sign up: Add field for 'hear us from' info (#376) 2023-11-27 18:06:49 +05:30
github-actions[bot]
7fe314a16a New Translations (#375)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-11-27 18:04:23 +05:30
green
504fa939d2 Add CLI tool + disclaimer to Authy guide (#373)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description
Adds a hyperlink to Neeraj's CLI tool shown in ente Discord, as well as
a disclaimer to check all accounts have been imported before deleting
Authy data
<!--- Describe your changes in detail -->

## Type of Change

<!--- 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [x] 📝 Documentation
- [ ] 🗑️ Chore
2023-11-27 08:33:49 +05:30
Neeraj Gupta
17f5a7996a Change Password: Confirm before signing out from other devices (#374) 2023-11-26 16:27:25 +05:30
Neeraj Gupta
cf6b4f5423 Enable import for 2fas v4 (#372) 2023-11-26 14:19:33 +05:30
github-actions[bot]
ca46765760 New Translations (#371)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-11-26 13:40:47 +05:30
Neeraj Gupta
4de3287f55 Support importing 2FAS export (v3) (#370)
Tested locally.

Planning to extract the strings separately while merging common strings
from other import sections.
2023-11-26 13:38:47 +05:30
Neeraj Gupta
cdc27e061b Fix: Add missing await (#368) 2023-11-24 22:07:04 +05:30
Tanguy
78b3d239eb Add Proxmox logo (#366)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

New logo + refractor

<!--- Describe your changes in detail -->

Add Proxmox logo. Remove test icon. Refractor X icon data with altNames.

SVGs with mix-blend-mode appear to be glitchy in emulators but not on
real devices
(https://github.com/dnfield/flutter_svg/issues/922#issuecomment-1552104687).
By the way, SVGs using mix-blend-mode get pixelated. This is probably
because of `flutter_svg` library
(https://github.com/dnfield/flutter_svg/issues/985). I didn't go into
any depth, I didn't feel like digging into the code.

<!--- Put an `x` in all the boxes that apply: -->

- [x] 🖼️ 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)
- [x] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2023-11-24 10:42:28 +05:30
github-actions[bot]
005d3b0eca New Translations (#364)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-11-23 07:20:03 +05:30
github-actions[bot]
23ba69c6a6 New Translations (#363)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-11-21 10:35:26 +05:30
Neeraj Gupta
d644ee97e1 Bump version 2.0.22+222 2023-11-20 18:15:10 +05:30
Neeraj Gupta
0afd0d63b3 Show hint that double tapping on hidden code makes it visible (#362)
Related to #331
2023-11-20 18:14:13 +05:30
Neeraj Gupta
f04d9b94d9 Add device auth for sign in to backup action (#361)
Related to #337
2023-11-20 18:08:41 +05:30
github-actions[bot]
8cd4ec30af New Translations (#360)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-11-20 17:35:33 +05:30
Neeraj Gupta
4215810cf8 Add fix for loginViaSRP (#359)
Port fixes from photos-app
2023-11-20 17:21:38 +05:30
Neeraj Gupta
1f0c2d2aa6 Fix lockscreen issue on iPAD (#358)
Tested internally on Simulator and via Test flight.
2023-11-20 15:53:46 +05:30
Zxhir
dc7782fb0c Add the Pingvin Share logo (#356)
<!--
  Thanks for contributing!

Provide a description of your changes below and a general summary in the
title

Please look at the following checklist to ensure that your PR can be
accepted quickly:
-->

## Description

This PR adds the Pingvin Share icon. Pingvin Share is a self-hosted file
sharing platform, their GitHub is
[here](https://github.com/stonith404/pingvin-share) if you want to check
it out.

<!--- Describe your changes in detail -->

## Type of Change

<!--- Put an `x` in all the boxes that apply: -->

- [x] 🖼️ 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)
- [ ] 🧹 Code refactor
- [ ]  Build configuration change
- [ ] 📝 Documentation
- [ ] 🗑️ Chore
2023-11-18 19:51:26 +05:30
github-actions[bot]
c7ba0c5f33 New Translations (#355) 2023-11-18 19:04:56 +05:30
Neeraj Gupta
5d372607a4 Revert "Analyze qr code image (#336)" (#354)
This reverts commit 233858ad09, reversing
changes made to f97bf015f1.

Reason: media_scanner depends on MLKit that underhood also makes
connection to firebase.
2023-11-17 09:09:22 +05:30
Neeraj Gupta
b203b373b9 Bump version 2.0.18+218 (#352) 2023-11-16 19:17:09 +05:30
github-actions[bot]
a4e12a1e0c New Translations (#351)
New translations via [Crowdin GH
Action](https://github.com/crowdin/github-action)

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2023-11-16 19:11:22 +05:30
Neeraj Gupta
233858ad09 Analyze qr code image (#336) 2023-11-16 15:40:47 +05:30
Neeraj Gupta
863d602a70 Merge branch 'main' into analyzeQrCodeImage 2023-11-16 15:30:08 +05:30
Neeraj Gupta
f97bf015f1 New Translations (#350) 2023-11-16 12:16:08 +05:30
Muhammed Ayimen
9d73a39b9d Updated: Parsing error catched and logged 2023-11-16 15:38:42 +09:00
Muhammed Ayimen
3455e7f7c3 Removed: Unwanted comments in analyze qr code screen 2023-11-16 15:34:44 +09:00
Muhammed Ayimen
e9861e5311 Uncommented: Gradle file contents 2023-11-16 13:21:02 +09:00
Muhammed Ayimen
f902c8ca4c Added: Error handling while parcing qr code data 2023-11-16 13:19:51 +09:00
Muhammed Ayimen
4180621bd9 Bug fixed: Old scanner package using in other places 2023-11-16 13:17:43 +09:00
Muhammed Ayimen
ab2eb77722 Added and removed: Disposal of scanner controller and removal of old scanning package 2023-11-16 13:17:07 +09:00
Muhammed Ayimen
09e6511d64 Removed: Old google auth import scanner 2023-11-16 13:12:03 +09:00
Crowdin Bot
5c4ec23b1a New Crowdin translations by GitHub Action 2023-11-16 00:01:16 +00:00
Muhammed Ayimen
c7a78a70c9 Bug fixed: Google auth image option click function 2023-11-15 08:19:07 +09:00
Muhammed Ayimen
a4df578665 Merge conflict: Resolved-2 2023-11-15 08:12:09 +09:00
Muhammed Ayimen
4cfbe91ad4 Merge conflict: Resolved 2023-11-15 08:08:38 +09:00
Vishnu Mohandas
ae6e910e84 New Translations (#346) 2023-11-14 21:14:36 +05:30
Crowdin Bot
533e0c413a New Crowdin translations by GitHub Action 2023-11-14 14:57:08 +00:00
Vishnu Mohandas
4ec71f6151 Bitwarden import (#348) 2023-11-14 20:26:18 +05:30
Muhammed Ayimen
adc157fe56 Fixes: Based on the review 2023-11-14 23:42:53 +09:00
Muhammed Ayimen
3b8219020a Updated: en arb file content for bitwarden data 2023-11-14 23:40:40 +09:00
Muhammed Ayimen
9b759a02a5 Completed: Import from bitwarden functionality 2023-11-14 23:06:02 +09:00
Muhammed Ayimen
bed3bd9612 Bug fixed: Using the map values from wrong jsonArray 2023-11-14 23:05:43 +09:00
Muhammed Ayimen
27c8111e63 Created: Bitward import functionality with json file selecting and extracting the data to a particular format 2023-11-14 23:05:02 +09:00
Muhammed Ayimen
4b66689e07 Created: Popup for bitwarden import option 2023-11-14 23:04:21 +09:00
Muhammed Ayimen
f22b0cde8d Added: Bitwarden option in import screen 2023-11-14 23:04:05 +09:00
Muhammed Ayimen
1705229ad9 Merge conflict: Resolved 2023-11-14 17:47:22 +09:00
Muhammed Ayimen
baa941c9dd Merge branch 'main' of https://github.com/i-aiymen/auth into analyzeQrCodeImage 2023-11-14 17:45:10 +09:00
Neeraj Gupta
55e9a7049e Lock screen fixes (#345) 2023-11-14 10:39:52 +05:30
Neeraj Gupta
6b4b69f0bb Bump version 2.0.17 2023-11-14 10:35:19 +05:30
Neeraj Gupta
572417d3aa Fix bug in setting showingLockScreen flag 2023-11-14 10:35:00 +05:30
Neeraj Gupta
90193eaed9 Fix import 2023-11-14 10:30:19 +05:30
Neeraj Gupta
d80f783013 Remove commented out code 2023-11-14 10:29:59 +05:30
Neeraj Gupta
16c36a088f bump version 2023-11-14 10:28:35 +05:30
Neeraj Gupta
c0444680c6 Extract strings for local auth 2023-11-14 10:25:02 +05:30
Neeraj Gupta
03b1accfda Add lockscreen fixes from photos 2023-11-14 10:21:03 +05:30
Muhammed Ayimen
8e379a8e43 Uncommmented: Gradle file contents 2023-11-13 20:42:30 +09:00
Muhammed Ayimen
e05bd71fe1 Extracted: All the string added in the Qr code scanning and analyzing image to en arb files 2023-11-13 20:38:49 +09:00
Muhammed Ayimen
5cc4d8cfb3 Updated: allowing only images to be selected for analyzing the Qr code 2023-11-13 20:26:30 +09:00
Vishnu Mohandas
c359775ebc Support multiple names for the same service (#344) 2023-11-13 16:42:08 +05:30
Vishnu Mohandas
80148f95af Merge branch 'main' into support_multiple_names 2023-11-13 16:33:16 +05:30
vishnukvmd
16bb23d977 Support multiple names for the same service 2023-11-13 16:32:08 +05:30
Vishnu Mohandas
0e59f80999 Update icons (#341) 2023-11-12 12:19:16 +05:30
vishnukvmd
a13d2a065e Update icon for mstdn.* 2023-11-12 10:31:28 +05:30
vishnukvmd
993bf81e43 Update simple icons 2023-11-12 10:04:50 +05:30
Muhammed Ayimen
71f3ce4120 Changed: Settings.json file 2023-11-12 13:03:16 +09:00
Muhammed Ayimen
694662d851 Uncommmented: Gradle file contents 2023-11-12 12:57:30 +09:00
Muhammed Ayimen
492748f854 Added: Reminder Popup after analyzing a Qr Code image from gallery 2023-11-12 12:56:26 +09:00
Muhammed Ayimen
c6811ffadc Updated: Different toast, based different condition 2023-11-12 12:23:24 +09:00
Muhammed Ayimen
d432f08dc6 Added: Vibration effect, when google auth Qr code scanning is successfull 2023-11-12 12:16:03 +09:00
Muhammed Ayimen
2930f22208 Added: Functionality to capture the QR codes by scanning it and checking if the QR code is associated with google auth and reject all the QR ccodes 2023-11-12 12:15:25 +09:00
Muhammed Ayimen
b52de5d9e6 Added: Popup while selecting google auth saved image option similar to normal google auth option 2023-11-12 12:05:27 +09:00
Muhammed Ayimen
fd6b030dff Removed: Unwanted permissions from manifest file 2023-11-10 07:58:28 +09:00
Muhammed Ayimen
ae07e435ae Merge branch 'analyzeQrCodeImage' of https://github.com/i-aiymen/auth into analyzeQrCodeImage 2023-11-09 08:03:47 +09:00
Muhammed Ayimen
abab8df412 Updated: Build gradle and settings.json file to initial values 2023-11-08 22:30:37 +09:00
Muhammed Ayimen
c0cc5f29e1 Re-Updated: Location of icons used in qr-code-scanner screen and added the location to the pubspec 2023-11-08 22:27:14 +09:00
Muhammed Ayimen
cd817f6df9 Re-Updated: Location of icons used in qr-code-scanner screen 2023-11-08 22:21:10 +09:00
Muhammed Ayimen
2d56c656cc Updated: Location of icons used in qr-code-scanner screen 2023-11-08 22:12:07 +09:00
Muhammed Ayimen
b33ec5e347 Removed: Unwanted permisions from manifest file 2023-11-08 22:08:53 +09:00
Muhammed Ayimen
3bdfebfcea Added: Comments for different widgets used 2023-11-08 21:47:59 +09:00
Vishnu Mohandas
02d2db92c2 New Translations (#335) 2023-11-08 18:14:12 +05:30
Muhammed Ayimen
3db1c55ce3 Function added: Qr Code Image analyzing by uploading from gallery and scanning Qr code images directly 2023-11-08 21:25:01 +09:00
Crowdin Bot
8ed5bd84d2 New Crowdin translations by GitHub Action 2023-11-08 12:01:18 +00:00
Vishnu Mohandas
7855e3925a New Translations (#328) 2023-11-06 14:11:38 +05:30
Crowdin Bot
f5125b7981 New Crowdin translations by GitHub Action 2023-11-06 00:01:05 +00:00
Vishnu Mohandas
5b11569ea9 New Translations (#325) 2023-11-05 20:33:41 +05:30
Crowdin Bot
c2dc0e6318 New Crowdin translations by GitHub Action 2023-11-05 12:01:21 +00:00
Neeraj Gupta
4ab4b51b56 Reformat code (#323) 2023-10-31 11:41:41 +05:30
vishnukvmd
25c84d5b56 Reformat code 2023-10-31 10:56:04 +05:30
Neeraj Gupta
8f7cf104ed New Translations (#322) 2023-10-31 06:40:17 +05:30
Crowdin Bot
dfc21f60a8 New Crowdin translations by GitHub Action 2023-10-31 00:01:26 +00:00
Neeraj Gupta
ed3067d9d2 New Translations (#321) 2023-10-27 11:43:24 +05:30
Crowdin Bot
459e501700 New Crowdin translations by GitHub Action 2023-10-27 00:01:16 +00:00
Neeraj Gupta
67c5452dee Fix invalid json for custom icons + bump version (#320) 2023-10-25 13:21:11 +05:30
Neeraj Gupta
b847880d41 bump version 2.0.15+215 2023-10-25 12:54:03 +05:30
Neeraj Gupta
257e4e1486 Swallow error in during icon json load 2023-10-25 12:52:49 +05:30
Neeraj Gupta
f8f13f9c8c Fix json 2023-10-25 12:51:11 +05:30
Neeraj Gupta
4bfe69bc47 Downgrade file saver (#319) 2023-10-25 10:01:44 +05:30
Neeraj Gupta
322eb273cd Downgrade file saver 2023-10-25 09:57:27 +05:30
Neeraj Gupta
6bb7db7d54 Add dev_test_icon (#318) 2023-10-25 09:57:01 +05:30
Neeraj Gupta
d077109bc8 New Translations (#317) 2023-10-25 09:43:38 +05:30
Crowdin Bot
ed8aef8f80 New Crowdin translations by GitHub Action 2023-10-25 00:01:02 +00:00
Tanguy
bb1f730e32 Add dev_test_icon
Test icon for verifying SVG behaviour in the release version
2023-10-24 19:47:35 +02:00
Neeraj Gupta
afaf26a2f2 Bump version 2.0.13+213 2023-10-24 10:57:12 +05:30
Vishnu Mohandas
d7a2597406 Change Firefox logo name to Mozilla (#312) 2023-10-24 09:11:15 +05:30
Neeraj Gupta
226aeafe76 Warn accounts are linked with all ente apps before deleting account (#314) 2023-10-24 06:44:06 +05:30
Tanguy
d4a6363793 Merge branch 'main' into my-changes 2023-10-23 19:08:35 +02:00
Neeraj Gupta
249a8016a1 New Translations (#310) 2023-10-23 20:20:32 +05:30
ashilkn
f914256510 Move new mapping to bottom 2023-10-23 19:33:51 +05:30
ashilkn
a9bc28ad02 before deleting account, warn that all ente apps use the same account and deleting the account will wipe out data from all apps 2023-10-23 19:23:31 +05:30
Crowdin Bot
4d89a0ed4a New Crowdin translations by GitHub Action 2023-10-23 12:01:17 +00:00
Tanguy
3475e3a988 Change Firefox logo name to Mozilla
Mozilla has announced the end of Firefox accounts, which will all be renamed as Mozilla accounts. "Firefox" title will continue to work by pointing to the file mozilla.svg.
2023-10-22 16:09:45 +02:00
Vishnu Mohandas
4b246174b6 Update issue templates (#306) 2023-10-21 12:10:49 +05:30
Vishnu Mohandas
aad130fdcb Create CODE_OF_CONDUCT.md (#305) 2023-10-21 12:10:34 +05:30
Vishnu Mohandas
cf4ff27e9a Update issue templates 2023-10-21 11:47:17 +05:30
Vishnu Mohandas
a25925aa6d Create CODE_OF_CONDUCT.md 2023-10-21 11:46:22 +05:30
Neeraj Gupta
7c77c03487 Fix log export for android (#302) 2023-10-20 17:46:57 +05:30
Neeraj Gupta
f549e2e268 Fix Instagram logo (#304) 2023-10-20 17:46:38 +05:30
Tanguy
4b1b27a243 Merge branch 'main' into my-changes 2023-10-20 07:55:43 +02:00
Tanguy
ea915489b8 Fix Instagram logo
Quick fix Instagram logo since Flutter is not compatible with SVG <pattern>
2023-10-20 07:52:14 +02:00
Vishnu Mohandas
e211239ed6 Bunch together app specific settings (#303) 2023-10-19 21:19:40 +05:30
vishnukvmd
a09a4e5c9b Bunch together app specific settings 2023-10-19 21:03:35 +05:30
Neeraj Gupta
7c552a1e8c minor refactor 2023-10-19 15:41:54 +05:30
Neeraj Gupta
518eb1d942 Fix log export for android 2023-10-19 15:23:51 +05:30
Neeraj Gupta
ec895546f6 Bump version to 2.0.12 2023-10-19 12:50:48 +05:30
Neeraj Gupta
f5b7894cb1 Show placeholder icons when icon is missing (#301) 2023-10-19 12:48:31 +05:30
Neeraj Gupta
3f5ef23e1b Update ui 2023-10-19 12:46:03 +05:30
Neeraj Gupta
d496adaed2 Show placeholder icons when icon is missing 2023-10-19 12:38:27 +05:30
Neeraj Gupta
016e85f350 Bump version to 2.0.11 2023-10-19 12:20:03 +05:30
Neeraj Gupta
cab66cdea0 Bump version to 2.0.10 2023-10-19 11:57:01 +05:30
Neeraj Gupta
6869cf9c1d Fix: Show confirmation dialog when secrets are updated (#299) 2023-10-19 11:56:04 +05:30
Neeraj Gupta
1b4a9fb12e Merge branch 'main' into fix_save_bug 2023-10-19 11:55:09 +05:30
Neeraj Gupta
20ab1d75d2 Fix: Show confirmation during edit when secret is updated 2023-10-19 11:54:23 +05:30
Neeraj Gupta
68de8b8d39 Fix broken icon for Github and UbiSoft 2023-10-19 11:48:37 +05:30
Neeraj Gupta
40f6def104 Bump version 2.0.9+209 (#298) 2023-10-19 11:42:20 +05:30
Neeraj Gupta
6460396f8d Merge branch 'main' into bump_version 2023-10-19 11:16:37 +05:30
Neeraj Gupta
8aa3d28981 Bump version 2.0.9+209 2023-10-19 11:15:52 +05:30
Neeraj Gupta
2ec537c65f Fix edit/del when device authentication is not supported (#297) 2023-10-19 10:29:22 +05:30
Neeraj Gupta
2448e8d011 Fix edit/del when device authentication is not supported 2023-10-19 10:09:03 +05:30
Neeraj Gupta
4917b65a0b Disable swipe to open hamburger menu on droid (#296) 2023-10-19 09:55:04 +05:30
Neeraj Gupta
f57108c708 Merge branch 'main' into droid_disable_swipe_to_open_hamburger 2023-10-19 09:54:57 +05:30
Neeraj Gupta
e29cb24458 Disable swipe to open hamburger menu on droid 2023-10-19 09:53:54 +05:30
Vishnu Mohandas
e42b469965 Add missing slugs to titles with space (#295) 2023-10-19 07:15:08 +05:30
Vishnu Mohandas
964a333893 Add and normalise logos (#292) 2023-10-19 07:14:12 +05:30
Sven
78af7dec6c add slug to titles with space 2023-10-18 22:47:48 +02:00
Tanguy
e96cc96494 Add Snapchat logo data 2023-10-17 21:17:41 +02:00
Tanguy
3eb538ba59 Add Snapchat logo 2023-10-17 21:14:36 +02:00
Tanguy
add3264e4f Merge branch 'main' into my-changes 2023-10-13 22:21:36 +02:00
Tanguy
0ae1efa133 Add NVIDIA logo 2023-10-13 22:15:54 +02:00
Tanguy
f38c2bead4 Update Google logo
Normalise SVG
2023-10-13 22:08:49 +02:00
Tanguy
c3f5574d77 Update GitHub logo
Normalise SVG and add mix-blend-mode:difference for dark/light mode
2023-10-13 22:04:28 +02:00
Tanguy
9fa6d5f6a7 Update Ubisoft logo
Normalise Ubisoft SVG and add mix-blend-mode:difference for dark/light mode
2023-10-13 21:58:09 +02:00
Tanguy
c59c34b40d Add Notion logo 2023-10-13 21:51:01 +02:00
Tanguy
3f646b6f53 Add Cloudflare logo 2023-10-13 21:50:51 +02:00
Tanguy
122a05e1b9 Add Bitwarden logo 2023-10-13 21:21:51 +02:00
Vishnu Mohandas
b1745466a2 Add a bunch of logos (#291) 2023-10-13 23:39:54 +05:30
Tanguy
ba29be811c Update X (Twitter) logo for dark/light mode
Set mix-blend-mode:difference to enhance SVG visibility in light mode
2023-10-13 18:24:22 +02:00
Tanguy
afedf5947d Fix PayPal logo offset
Fix 1 px offset in SVG
2023-10-13 18:22:36 +02:00
Tanguy
07740023ff Fix La Poste logo offset
Fix 1 px offset in SVG
2023-10-13 18:22:13 +02:00
Tanguy
0979a0d544 Fix Firefox logo offset
Fix 1 px offset in SVG
2023-10-13 18:21:24 +02:00
Tanguy
a79063acc2 Fix Firefox logo size
Set SVG size to 500px × 500px
2023-10-12 20:38:27 +02:00
Tanguy
0dc78e3a87 Fix PayPal logo size
Set SVG size to 500px × 500px
2023-10-12 20:30:25 +02:00
Tanguy
00cb6888bd Add Proton logo 2023-10-12 20:12:43 +02:00
Tanguy
e86ba39909 Add X (Twitter) logo 2023-10-12 20:06:37 +02:00
Tanguy
48f6eee008 Add PayPal logo 2023-10-12 19:57:12 +02:00
Tanguy
23b98d5ff0 Add Instagram logo 2023-10-12 19:50:34 +02:00
Tanguy
03c28698e2 Add Microsoft logo 2023-10-12 19:45:50 +02:00
Tanguy
cbf2dfebe5 Add Firefox logo 2023-10-12 19:40:53 +02:00
Tanguy
7e6ea8fbfd Update La Poste logo size
Set SVG size to 500px × 500px
2023-10-12 19:39:13 +02:00
Neeraj Gupta
4e73836baa Adding La Poste logo (#289) 2023-10-12 10:12:59 +05:30
Vishnu Mohandas
4dbae7c8fa New Translations (#290) 2023-10-12 09:31:59 +05:30
Crowdin Bot
649aa69cf8 New Crowdin translations by GitHub Action 2023-10-12 00:01:16 +00:00
Tanguy
0ba50722f6 Adding La Poste logo 2023-10-11 21:40:20 +02:00
Vishnu Mohandas
ead6fd6d0d Remove redundant warning (#288) 2023-10-11 19:41:03 +05:30
vishnukvmd
f5e4a2ac88 v2.0.8 2023-10-11 19:17:58 +05:30
vishnukvmd
f6d32e22f2 Remove warning while saving a new code 2023-10-11 19:17:35 +05:30
Neeraj Gupta
cad9f00ebe Bump version 2.0.7+207 (#285) 2023-10-10 11:11:45 +05:30
Neeraj Gupta
1fb163d561 Fix translation 2023-10-10 10:58:31 +05:30
Neeraj Gupta
2c82bdc8a3 Bump version to 2.0.7+207 2023-10-10 10:51:49 +05:30
Vishnu Mohandas
ccf51fe139 New Translations (#284) 2023-10-09 19:59:29 +05:30
Crowdin Bot
9c56c0abbc New Crowdin translations by GitHub Action 2023-10-09 12:01:12 +00:00
Vishnu Mohandas
ea1827d963 Added authentication when pressing the Share QR, edit and delete button (#277) 2023-10-06 22:11:24 +05:30
Shivam Pachchigar
c441068857 Typo in QR code authentication message 2023-10-06 21:56:47 +05:30
Vishnu Mohandas
c7e917dacf New Translations (#283) 2023-10-06 20:54:22 +05:30
Shivam Pachchigar
262a49439d Added locales 2023-10-06 19:39:24 +05:30
Shivam Pachchigar
a552783f59 Merge branch 'ente-io:main' into main 2023-10-06 18:25:24 +05:30
Crowdin Bot
5658bd6ecf New Crowdin translations by GitHub Action 2023-10-06 12:01:23 +00:00
Neeraj Gupta
2742db3d5b New Translations (#282) 2023-10-06 06:56:19 +05:30
Crowdin Bot
2344cfda91 New Crowdin translations by GitHub Action 2023-10-06 00:24:44 +00:00
Neeraj Gupta
8f33182c18 New Translations (#280) 2023-10-05 19:47:03 +05:30
Crowdin Bot
2eb9dddf1d New Crowdin translations by GitHub Action 2023-10-05 12:10:02 +00:00
Neeraj Gupta
432e9d77a1 Added Skiff and NextDNS (#278) 2023-10-05 16:12:32 +05:30
Brogio
dbcfbf0824 Update custom-icons.json
Forgot comma
2023-10-05 12:19:24 +02:00
Brogio
3994470117 Update custom-icons.json
Added NextDNS and Skiff
2023-10-05 12:16:39 +02:00
Brogio
fce76ac629 Add files via upload 2023-10-05 12:12:27 +02:00
Shivam Pachchigar
a2d0c3c3d9 Merge branch 'ente-io:main' into main 2023-10-05 15:18:12 +05:30
Shivam Pachchigar
62a41c89c6 Added authentication to show QR, edit or delete a code
- Used the requestAuthentication function in utils/auth_util.dart to perform the authentication
2023-10-05 15:11:38 +05:30
Vishnu Mohandas
31ce98453e feat(screen-refresh-rate): use flutter_displaymode to enable high refresh rates on devices with refresh rate locked at 60FPS (#276) 2023-10-05 13:39:59 +05:30
ashilkn
858ba41f8b Merge main 2023-10-05 13:37:29 +05:30
ashilkn
02750dd8da feat(screen-refresh-rate): use flutter_displaymode to enable high refresh rates in devices with refresh rate locked at 60FPS 2023-10-05 13:29:15 +05:30
ashilkn
25f9b02e53 chore: run dart fix --apply to add trailing commas 2023-10-05 13:13:59 +05:30
Neeraj Gupta
eaca45f5fe New Translations (#272) 2023-10-02 08:03:31 +05:30
Crowdin Bot
ef2b9c5fcd New Crowdin translations by GitHub Action 2023-10-02 00:25:05 +00:00
Vishnu Mohandas
a5a287912b feature/264 - Add clipboard minimize (#273) 2023-10-01 23:36:11 +05:30
Hubert
8dc06464c7 Add minimize on copy 2023-10-01 18:47:13 +02:00
Hubert
5c6eaa9fb9 Fix require_trailing_commas 2023-10-01 17:45:15 +02:00
Vishnu Mohandas
c53ac484fa Require confirmation during Save if Secret Key (#271) 2023-10-01 17:05:17 +05:30
Ahsan Ahmad
573b3a321d Require confirmation during Save if Secret Key 2023-10-01 16:05:35 +05:00
Vishnu Mohandas
7072b14073 New Translations (#270) 2023-10-01 16:32:48 +05:30
Crowdin Bot
8c67e54396 New Crowdin translations by GitHub Action 2023-10-01 00:29:00 +00:00
Vishnu Mohandas
92bfa153f1 Update screenshots (#269) 2023-09-29 16:56:25 +05:30
vishnukvmd
47c5ed25e7 Update screenshots 2023-09-29 16:43:48 +05:30
Vishnu Mohandas
09e7bae985 Update banner (#268) 2023-09-29 16:17:35 +05:30
Vishnu Mohandas
54ecafdafc Merge branch 'main' into update_banner 2023-09-29 16:14:02 +05:30
vishnukvmd
265e74aff9 v2.0.6 2023-09-29 16:12:52 +05:30
vishnukvmd
75a41bc724 Update the banner 2023-09-29 16:12:07 +05:30
Neeraj Gupta
9198b3c29a Support for masking codes (#267) 2023-09-29 14:06:21 +05:30
Neeraj Gupta
37904f9ef4 bump version 2.0.5+205 2023-09-29 13:53:21 +05:30
Neeraj Gupta
b7ce24b9c4 Add support for hiding codes 2023-09-29 13:39:11 +05:30
Neeraj Gupta
a2010b6ae5 Add warning for email verification + flutter upgrade (#266) 2023-09-28 21:00:56 +05:30
Neeraj Gupta
63aa50aaac Upgrade flutter version: 3.13.4 2023-09-28 20:53:52 +05:30
Neeraj Gupta
9ba6bf04e4 Add warning while enabling email verification 2023-09-28 20:52:47 +05:30
Neeraj Gupta
1d96d6c720 Fix build for flutter 3.13.4 2023-09-28 20:48:20 +05:30
Neeraj Gupta
e1084c228f New Translations (#259) 2023-09-19 08:27:58 +05:30
Crowdin Bot
06b32a0f93 New Crowdin translations by GitHub Action 2023-09-19 00:24:39 +00:00
Vishnu Mohandas
b028091052 22 new icons (#256) 2023-09-15 13:17:43 +05:30
Sven
866a555890 Remove TP-Link, already part of simple-icons 2023-09-14 20:57:21 +02:00
Sven
69f017bc5e Sort JSON A-Z 2023-09-14 20:54:30 +02:00
Sven
b1001bfd7d simplelogin icon 2023-09-14 20:50:43 +02:00
Sven
4620fd1380 More icons 2023-09-14 20:49:15 +02:00
Sven
506b3a8520 Techlore icon 😁 2023-09-14 20:26:40 +02:00
Sven
f193156397 New icons 2023-09-14 20:26:00 +02:00
Vishnu Mohandas
362cbf860c More Logos. (#254) 2023-09-14 18:40:09 +05:30
Jam
96b60842b6 Removed Jagex pre-defined colour. 2023-09-14 14:06:32 +01:00
Jam
173e29d2f4 Added custom name slug. 2023-09-14 14:05:49 +01:00
Jam
acb9983ade Removed colours from icons that have baked in hex codes. 2023-09-14 14:05:31 +01:00
Jam
7a6ce4dcb9 Revert "Changed Termius logo to blue."
This reverts commit ff37e902ea.
2023-09-14 13:58:57 +01:00
Vishnu Mohandas
b9bda2f2da Merge branch 'main' into main 2023-09-14 18:25:38 +05:30
Vishnu Mohandas
8f037204e5 Make colors optional (#255) 2023-09-14 18:24:00 +05:30
vishnukvmd
42d2b17b98 Support slugs 2023-09-14 18:08:17 +05:30
vishnukvmd
1576f5b9c4 Make colors optional 2023-09-14 17:55:37 +05:30
Vishnu Mohandas
e9a41e4b7f Merge branch 'main' into main 2023-09-14 17:40:02 +05:30
Neeraj Gupta
0a42788e52 Update PR template (#252) 2023-09-14 00:16:22 +05:30
Jam
ff37e902ea Changed Termius logo to blue. 2023-09-13 19:21:27 +01:00
Jam
cb558203e1 Added ubisoft logo. 2023-09-13 19:21:08 +01:00
Jam
c1a7b6a443 Added Google logo. 2023-09-13 19:12:37 +01:00
Jam
4f712982d2 Added Jagex logo. 2023-09-13 19:12:19 +01:00
Jam
197d51d51f Added Parsec logo. 2023-09-13 19:07:17 +01:00
Jam
fe9d3c2bc3 Added ngrok logo. 2023-09-13 19:04:19 +01:00
Jam
f288b2ccae Added Revolt logo. 2023-09-13 19:03:05 +01:00
Jam
bc153b64a9 Added Twingate logo. 2023-09-13 19:00:31 +01:00
Jam
c840f9044c Added WHMCS logo. 2023-09-13 18:48:19 +01:00
Jam
74459e6481 Added Kronos App logo. 2023-09-13 18:43:54 +01:00
Jam
96b581a119 Removed whitespace. 2023-09-13 18:41:15 +01:00
Jam
a3a1ee4cec Added Channel Island Hosting logo. 2023-09-13 18:40:40 +01:00
vishnukvmd
257aae0d6a Update PR template 2023-09-13 22:40:42 +05:30
Vishnu Mohandas
382bd03a65 Added 9 new icons & changed colors for 2 icons to improve visibility (#247) 2023-09-13 22:38:04 +05:30
Sven
9fd4c7499e Add Termius & Unity icons to custom-icons folder 2023-09-13 18:52:57 +02:00
Neeraj Gupta
83635e4477 New Translations (#249) 2023-09-11 08:30:21 +05:30
Crowdin Bot
76af10ce3e New Crowdin translations by GitHub Action 2023-09-11 00:24:35 +00:00
Vishnu Mohandas
b9a12ccea2 New Translations (#248) 2023-09-10 19:07:04 +05:30
Crowdin Bot
93baf88e3a New Crowdin translations by GitHub Action 2023-09-10 12:01:16 +00:00
Sven
f0210a2580 add Peerberry icon 2023-09-09 14:11:37 +02:00
Sven
e333af0d1a Merge branch 'main' of https://github.com/sv3nnie/auth 2023-09-09 14:07:32 +02:00
Sven
8bdbecdeb5 add Plutus icon 2023-09-09 14:07:29 +02:00
Sven
c88d17aae7 Merge branch 'main' into main 2023-09-09 13:57:45 +02:00
Sven
d057cbdd00 add KuCoin icon 2023-09-09 13:50:35 +02:00
Sven
025192f5a5 change Unity icon for visibility w/ light theme 2023-09-09 13:45:28 +02:00
Sven
d24bc62d1c change Termius icon for visibility w/ dark theme 2023-09-09 13:44:09 +02:00
Sven
eed4ea3d78 add Trading 212 icon 2023-09-09 13:42:38 +02:00
Sven
53c7ee6efa add Standard Notes icon 2023-09-09 13:40:29 +02:00
Sven
3c18cd425e add Kraken icon 2023-09-09 13:34:36 +02:00
Sven
7817a67fd9 add Filen icon 2023-09-09 13:31:13 +02:00
Sven
3a593c4f72 add Control D icon 2023-09-09 13:29:08 +02:00
Sven
c589a23372 add Bitvavo icon 2023-09-09 13:18:59 +02:00
Vishnu Mohandas
0cf56b2cbc add 3 custom icons (#246) 2023-09-09 16:31:48 +05:30
Sven
eb6e0f93c6 add colors to custom-icons.json 2023-09-09 11:57:31 +02:00
Sven
30b1fca8fb add windscribe svg 2023-09-09 11:57:09 +02:00
Sven
e99d29bcbc add porkbun svg 2023-09-09 11:57:03 +02:00
Sven
1f14e4d499 add kick svg 2023-09-09 11:56:56 +02:00
Vishnu Mohandas
905a288f4b Update settings (#241) 2023-09-08 21:07:16 +05:30
vishnukvmd
d389d3d163 v2.0.4 2023-09-08 21:05:02 +05:30
vishnukvmd
60e34f780e Update color of the active track within Toggle Switches 2023-09-08 21:04:41 +05:30
Vishnu Mohandas
16d57b8bad Merge branch 'main' into update_settings 2023-09-08 21:00:34 +05:30
vishnukvmd
ddc14a031e v2.0.3 2023-09-08 21:00:07 +05:30
vishnukvmd
bd7402fe38 Move option to select a language from Account -> General 2023-09-08 20:59:43 +05:30
Vishnu Mohandas
ad3ae560bd Update settings (#240) 2023-09-08 20:56:50 +05:30
vishnukvmd
1a15410f0d v2.0.2 2023-09-08 20:35:38 +05:30
vishnukvmd
3d7a4b1d32 Rename General -> Advanced 2023-09-08 20:32:47 +05:30
vishnukvmd
ba1c74b9b5 Update icon for the general section 2023-09-08 20:31:00 +05:30
vishnukvmd
9d3a7efe29 Remove border from search bar 2023-09-08 20:29:09 +05:30
vishnukvmd
95d7a9fe67 Change app header to simply "ente Auth" 2023-09-08 20:29:01 +05:30
vishnukvmd
e4a549a55b Add setting to auto-focus on search bar on app-start 2023-09-08 20:25:31 +05:30
vishnukvmd
9f0a53e733 Add setting to show large icons 2023-09-08 20:19:16 +05:30
vishnukvmd
c89bffb8ff Remove easter egg 2023-09-08 20:18:15 +05:30
Vishnu Mohandas
7456b0a2e7 Format 6-digit codes (#239) 2023-09-08 18:49:09 +05:30
vishnukvmd
bffff57d28 Format 6-digit codes 2023-09-08 18:40:54 +05:30
Vishnu Mohandas
442bab6bdd Copy next code to clipboard on tap (#238) 2023-09-08 18:39:27 +05:30
Vishnu Mohandas
ef9530af24 Merge branch 'main' into copy_next 2023-09-08 18:33:42 +05:30
vishnukvmd
cdb615b0ba Copy next code to clipboard on tap 2023-09-08 18:33:03 +05:30
Vishnu Mohandas
fddf9169d3 Large icons (#237) 2023-09-08 18:32:14 +05:30
vishnukvmd
91cd77ad8d Animate while switching between small and large icons 2023-09-08 18:26:51 +05:30
vishnukvmd
1697547091 Refresh UI when icon settings are updated 2023-09-08 18:02:10 +05:30
vishnukvmd
7fb3ab02f9 Publish an event when icons are changed 2023-09-08 18:01:45 +05:30
vishnukvmd
d855559bab Add option to save the preference for viewing large icons 2023-09-08 17:51:58 +05:30
vishnukvmd
c02a16a321 Refactor code widget 2023-09-08 17:49:16 +05:30
vishnukvmd
97bc2ba141 Accept icon-width as a param 2023-09-08 17:48:26 +05:30
Neeraj Gupta
7f8673b65b Fix: Avoid duplicate imports during offline to offline switch (#234) 2023-09-05 17:36:45 +05:30
Vishnu Mohandas
a5caa06944 Minor updates to readme (#233) 2023-09-05 17:17:16 +05:30
Neeraj Gupta
457c6ffd2f bump version: 2.0.1+201 2023-09-05 17:13:46 +05:30
Neeraj Gupta
1d960fadce Fix: Run single instance of offline import 2023-09-05 17:13:08 +05:30
vishnukvmd
cba39f4ef5 Minor updates to readme 2023-09-05 16:50:28 +05:30
Vishnu Mohandas
9f270cf471 Bump version: v2.0.0+200 (#232) 2023-09-05 15:41:17 +05:30
Neeraj Gupta
5b8ccea31a Add more logs for offline to online import (#231) 2023-09-05 15:40:44 +05:30
Neeraj Gupta
92201eb4ea bump version: 2.0.0+200 2023-09-05 15:31:10 +05:30
Neeraj Gupta
9d519d90c7 Enchance logging 2023-09-05 14:48:23 +05:30
Neeraj Gupta
4d34ab7a01 Force insert offline entry to avoid bad conflict 2023-09-05 13:40:22 +05:30
Neeraj Gupta
3c25216116 Add more logs for offline to online import 2023-09-05 13:34:04 +05:30
Neeraj Gupta
5d0007d749 Add decryption tool for auth encrypted export (#230) 2023-09-05 13:18:26 +05:30
Neeraj Gupta
1afd2ce27e Update encrypted export doc 2023-09-05 13:15:59 +05:30
Neeraj Gupta
438193ac39 go mod tidy 2023-09-05 13:15:44 +05:30
Neeraj Gupta
286940a5d1 Add decryption tool for auth encrypted export 2023-09-05 13:14:30 +05:30
Neeraj Gupta
50ebcdd1f0 Fix duplicate entry for same code during offline to online transition (#229) 2023-09-05 09:19:24 +05:30
Neeraj Gupta
53c406f30c bump version: 1.0.57+57 2023-09-05 08:21:44 +05:30
Neeraj Gupta
acbbd8d049 Minor imporvement 2023-09-05 08:21:11 +05:30
Neeraj Gupta
5c9e879628 Avoid duplicate imports 2023-09-05 08:12:52 +05:30
Vishnu Mohandas
4b633d1a02 Minor changes (#228) 2023-09-05 06:39:34 +05:30
vishnukvmd
b95ed5fbb5 Increase font size for progress dialogs 2023-09-04 23:28:05 +05:30
vishnukvmd
ffcd4022ea Update icon 2023-09-04 23:23:24 +05:30
vishnukvmd
aa525bfeb1 Update alignment of the support widget 2023-09-04 23:19:06 +05:30
Neeraj Gupta
18d098b310 Add no account/offline mode (#227) 2023-09-04 19:34:04 +05:30
Neeraj Gupta
57930b2dd8 Add warning when user selects without backup option 2023-09-04 19:30:55 +05:30
Neeraj Gupta
0d0c89900a Show copoun code for iOS 2023-09-04 19:22:26 +05:30
Neeraj Gupta
4893753b19 Add warning before export 2023-09-04 19:10:54 +05:30
Neeraj Gupta
a594d1c962 Show support dev banner in offline mode 2023-09-04 18:52:38 +05:30
Neeraj Gupta
2e3b6b27de Add support for importing offline codes 2023-09-04 17:51:09 +05:30
Neeraj Gupta
326653054d Add option to sign in to backup 2023-09-04 17:47:31 +05:30
Neeraj Gupta
a7818fc6d4 Add notification component 2023-09-04 16:58:13 +05:30
Neeraj Gupta
5e327a7d65 Show error toast if device doesn't support biometrics 2023-09-04 16:51:07 +05:30
Neeraj Gupta
9c0aea66ec Check for existing key before creating new 2023-09-04 16:45:08 +05:30
Neeraj Gupta
523f216b61 Update key 2023-09-04 16:34:06 +05:30
Neeraj Gupta
fb0fa73c03 Use Sizebox.shrink() 2023-09-04 16:22:50 +05:30
Neeraj Gupta
535109d08f Hide unsync icon for offline mode 2023-09-04 16:13:19 +05:30
Neeraj Gupta
a02cfef105 Add basic support for offline mode 2023-09-04 16:01:59 +05:30
Neeraj Gupta
2ff8963c52 Refactor to clear online mode keys 2023-09-04 10:54:14 +05:30
Neeraj Gupta
117d397d77 Add offline db 2023-09-04 10:49:28 +05:30
Neeraj Gupta
c5b3808dee Merge branch 'main' into offline_mode 2023-09-04 09:50:32 +05:30
Neeraj Gupta
7cd5b313de Ind Upgrade: Switch to direct download option (#226) 2023-09-04 09:45:48 +05:30
Neeraj Gupta
8cbba78bcb APK download: Switch to direct download option 2023-09-04 09:43:45 +05:30
Neeraj Gupta
9d95bd16cd By default, enable sentry in debugMode 2023-09-04 09:35:38 +05:30
Neeraj Gupta
f9eb7c11fd New Translations (#225) 2023-09-03 06:04:05 +05:30
Crowdin Bot
e5c8e90889 New Crowdin translations by GitHub Action 2023-09-03 00:25:35 +00:00
Vishnu Mohandas
a4941d9975 Update README.md (#224) 2023-09-02 10:15:31 +05:30
Vishnu Mohandas
69f09c896c Update README.md 2023-09-02 10:08:07 +05:30
Neeraj Gupta
7f7954d4ea Update CONTRIBUTING.md 2023-09-02 10:04:06 +05:30
Neeraj Gupta
f736357b04 Add Contribution.md & Updated Readme (#223) 2023-09-02 10:01:47 +05:30
Neeraj Gupta
c413564a4b Add Contribution doc 2023-09-02 09:58:42 +05:30
Neeraj Gupta
445f3f20f0 Add option to install manually 2023-09-02 08:31:38 +05:30
Neeraj Gupta
05a36b051d Clean up configuration 2023-08-31 09:33:03 +05:30
Neeraj Gupta
75843814bd Merge branch 'main' into offline_mode 2023-08-29 15:34:14 +05:30
Neeraj Gupta
c3a38b5002 bump version: 1.0.56+56 2023-08-28 18:57:10 +05:30
Vishnu Mohandas
615809e383 Update _getProviderTitle to also split on parentheses (#221) 2023-08-25 01:44:29 +05:30
laurenspriem
10ca447f54 Update _getProviderTitle to split on parentheses 2023-08-24 22:05:11 +02:00
Neeraj Gupta
7fefadc808 New Translations (#220) 2023-08-24 20:08:10 +05:30
Crowdin Bot
991f7ce302 New Crowdin translations by GitHub Action 2023-08-24 12:09:15 +00:00
Neeraj Gupta
864fbd015d New Translations (#219) 2023-08-23 07:23:57 +05:30
Crowdin Bot
427cf73d9d New Crowdin translations by GitHub Action 2023-08-23 00:23:21 +00:00
Neeraj Gupta
8428af3b40 Obscure secret key during edit #193 (#218) 2023-08-22 23:00:23 +05:30
Alastair McNeill
c117473ce8 Issue #193: masked secret key 2023-08-22 17:12:12 +01:00
Neeraj Gupta
a90670e404 dart fix --apply (#216) 2023-08-22 10:48:50 +05:30
Neeraj Gupta
c758704a2e ignore lint for pb generate 2023-08-22 10:18:38 +05:30
Neeraj Gupta
0a010994ee dart fix --apply 2023-08-22 10:17:15 +05:30
vishnukvmd
d965a0239f Merge branch 'main' into offline_mode 2023-08-20 21:50:38 +05:30
vishnukvmd
a773f999fa Merge branch 'main' into offline_mode 2023-08-20 21:50:09 +05:30
vishnukvmd
3b710e9274 Revert "Generate and save localKey"
This reverts commit 945d6d6728.
2023-08-20 21:49:35 +05:30
Vishnu Mohandas
08090f6873 New Translations (#215) 2023-08-20 19:57:49 +05:30
Crowdin Bot
a59c5539b2 New Crowdin translations by GitHub Action 2023-08-20 12:01:06 +00:00
Vishnu Mohandas
75fb88ba1d Add instructions for adding custom icons (#214) 2023-08-20 03:57:57 +05:30
Vishnu Mohandas
e8416728b4 New Translations (#211) 2023-08-19 22:56:36 +05:30
vishnukvmd
d0481775ad Add instructions for adding custom icons 2023-08-19 22:55:04 +05:30
Neeraj Gupta
2960cb7bac Create a custom icon for Github (#213) 2023-08-19 22:35:10 +05:30
vishnukvmd
2b43825eef Create a custom icon for Github 2023-08-19 21:08:03 +05:30
Crowdin Bot
814fc98274 New Crowdin translations by GitHub Action 2023-08-19 12:07:29 +00:00
Neeraj Gupta
1ba113147f Flutter upgrade: v3.10.6 (#210) 2023-08-19 09:22:24 +05:30
Neeraj Gupta
630c3f8ec8 New Translations (#209) 2023-08-19 08:47:18 +05:30
Neeraj Gupta
f975895e4d [Flutter-submodule] Update to 3.10.6 2023-08-19 07:49:04 +05:30
Crowdin Bot
456e46052d New Crowdin translations by GitHub Action 2023-08-19 00:22:02 +00:00
Neeraj Gupta
0d9223e6ea Upgrade flutter: 3.10.6 2023-08-18 20:03:51 +05:30
Neeraj Gupta
cdd8d7906b Upgrade flutter: 3.10.6 2023-08-18 20:03:33 +05:30
Neeraj Gupta
384f37bb07 Aegis import + bump version (#207) 2023-08-18 17:03:53 +05:30
Neeraj Gupta
7cee6ad7e6 Clean up 2023-08-18 16:14:01 +05:30
Neeraj Gupta
6f51d0bd75 bump version for release 2023-08-18 15:59:29 +05:30
Neeraj Gupta
111c28d076 Add support for importing encrypt aegis vault 2023-08-18 15:59:10 +05:30
Neeraj Gupta
815059f11e Add support for plain text import from Aegis 2023-08-18 14:47:16 +05:30
Vishnu Mohandas
16dbf5b3bf Minor fixes (#206) 2023-08-18 09:07:41 +05:30
vishnukvmd
1c5d4201ea Prioritize custom icons 2023-08-18 08:50:48 +05:30
vishnukvmd
400de2d20e Return empty widget in case there's no icon 2023-08-18 08:50:24 +05:30
Neeraj Gupta
f4ee647144 New Translations (#205) 2023-08-18 06:06:16 +05:30
Vishnu Mohandas
f73df1f8b7 Icons (#204) 2023-08-18 06:05:47 +05:30
Crowdin Bot
0f76e30d0a New Crowdin translations by GitHub Action 2023-08-18 00:23:02 +00:00
Vishnu Mohandas
bc5f731a68 New Translations (#203) 2023-08-18 00:15:02 +05:30
vishnukvmd
51da1ab4c7 Update screenshots 2023-08-17 23:32:13 +05:30
vishnukvmd
909276fe2f Update README 2023-08-17 23:19:35 +05:30
vishnukvmd
041e90a8ed Setup custom icons 2023-08-17 23:16:10 +05:30
vishnukvmd
0ed1b15977 Remove debug statement 2023-08-17 23:04:01 +05:30
vishnukvmd
cdcc8e103f Setup icon loading with colors 2023-08-17 22:54:53 +05:30
vishnukvmd
ab2e3645f5 Add build ID 2023-08-17 22:54:21 +05:30
vishnukvmd
45afcf1e35 Load icons within pubspec 2023-08-17 22:12:07 +05:30
vishnukvmd
2711d3c2e3 Add dependency on Simple Icons 2023-08-17 22:07:27 +05:30
Crowdin Bot
028c2f7e4c New Crowdin translations by GitHub Action 2023-08-17 12:08:31 +00:00
Neeraj Gupta
b54e6a01f1 New Translations (#202) 2023-08-16 18:11:57 +05:30
Crowdin Bot
d551780d81 New Crowdin translations by GitHub Action 2023-08-16 12:08:41 +00:00
vishnukvmd
945d6d6728 Generate and save localKey 2023-08-16 14:00:19 +05:30
vishnukvmd
7d8a85b861 Modify Settings page to work for offline mode 2023-08-16 13:28:09 +05:30
vishnukvmd
54817cc100 Add an option in the onboarding page to opt in for offline mode 2023-08-16 13:27:55 +05:30
vishnukvmd
34a39a2a86 Redirect to home page if user has opted for offline mode 2023-08-16 13:27:30 +05:30
vishnukvmd
52e9567a12 Persist user preference for offline mode 2023-08-16 13:27:13 +05:30
vishnukvmd
0a05fc917b Update Podfile 2023-08-16 13:26:35 +05:30
Neeraj Gupta
e0512f687c New Translations (#201) 2023-08-14 18:08:19 +05:30
Crowdin Bot
2a3886c7c4 New Crowdin translations by GitHub Action 2023-08-14 12:09:07 +00:00
Neeraj Gupta
f8d3cb5d5b Show disable email verification for all users (#200) 2023-08-14 10:08:42 +05:30
Neeraj Gupta
bf9449ea69 Bump version to 1.0.54+54 2023-08-14 10:07:15 +05:30
Neeraj Gupta
2b827fd5d5 New Translations (#199) 2023-08-14 10:04:03 +05:30
Neeraj Gupta
31ffb48e0f Disable emailMFA: request for password if SRP setup is not done 2023-08-14 10:02:37 +05:30
Neeraj Gupta
648f68d6a6 Page for password verification 2023-08-14 09:46:12 +05:30
Crowdin Bot
993fd16075 New Crowdin translations by GitHub Action 2023-08-14 00:24:05 +00:00
Neeraj Gupta
16b2602423 Minor imprvements & fixes (#198) 2023-08-13 11:08:37 +05:30
Neeraj Gupta
90103c67ae Always show the dialog to disable email verification 2023-08-13 11:05:17 +05:30
Neeraj Gupta
4c1783a54b Disable barrier dismissibility for session expired dialog, resolves #166 2023-08-13 11:04:11 +05:30
Neeraj Gupta
65e5a8f900 Dismiss dialog before navigation 2023-08-13 10:28:32 +05:30
Neeraj Gupta
0c4e5b7da6 Improve UX for login via password 2023-08-13 10:27:48 +05:30
Neeraj Gupta
6f032eeba3 Fix qrcode for dark mode, resolves #197 2023-08-13 10:06:47 +05:30
Neeraj Gupta
edc1023caf Fix export for macOS & iPadOS, resolves #196 2023-08-13 10:01:12 +05:30
Neeraj Gupta
c8e8240540 Extract strings 2023-08-12 12:45:55 +05:30
Neeraj Gupta
718fd294a6 Fix update check for Github Channel (#195) 2023-08-12 12:43:36 +05:30
Neeraj Gupta
19942db88d Refactor: route to homePage post import 2023-08-12 12:13:11 +05:30
Neeraj Gupta
287c23038d Update review url for playstore 2023-08-12 12:02:18 +05:30
Neeraj Gupta
4d13ca6c1d Use env variable to identify Github APKs 2023-08-12 11:51:54 +05:30
Neeraj Gupta
9c1e24f8aa New Translations (#191) 2023-08-12 06:03:33 +05:30
Crowdin Bot
8c30cf71b2 New Crowdin translations by GitHub Action 2023-08-12 00:22:12 +00:00
Neeraj Gupta
c1097bf251 Update Social + bump version to 1.0.52+52 (#190) 2023-08-11 17:24:04 +05:30
Neeraj Gupta
3e96118079 Merge branch 'main' into social 2023-08-11 17:10:11 +05:30
Neeraj Gupta
ace3754370 Update case 2023-08-11 17:01:06 +05:30
Neeraj Gupta
3f0cd893b2 Bump version to 1.0.52+52 2023-08-11 16:57:36 +05:30
Neeraj Gupta
66ebcb6701 Add link to blog and shop 2023-08-11 16:57:12 +05:30
Neeraj Gupta
bd18e966f5 Add option to rate 2023-08-11 16:53:59 +05:30
Vishnu Mohandas
ccbe0953d8 New Translations (#189) 2023-08-11 07:12:05 +05:30
Crowdin Bot
a965b859ff New Crowdin translations by GitHub Action 2023-08-11 00:22:37 +00:00
Neeraj Gupta
683d44a83c Fix bug in editing code with username in non-ascii format (#188) 2023-08-10 12:33:13 +05:30
Neeraj Gupta
7d5bbfdadd Add test 2023-08-10 12:25:47 +05:30
Neeraj Gupta
81fcbac0ec Fix: use safeDecode while decoding account & issuer 2023-08-10 11:59:19 +05:30
Neeraj Gupta
32e74929ce New Translations (#186) 2023-08-10 06:34:24 +05:30
Crowdin Bot
d6f20e827a New Crowdin translations by GitHub Action 2023-08-10 00:29:23 +00:00
Neeraj Gupta
67ce577fe4 Add option to view QR code (#184) 2023-08-09 15:42:41 +05:30
Neeraj Gupta
1d7abe4023 Fix bug 2023-08-09 14:27:09 +05:30
Neeraj Gupta
70c72a45b7 Calculate qr size dynamatically 2023-08-09 14:16:18 +05:30
Neeraj Gupta
ea6eb1368c Add support for viewing qrCode 2023-08-09 14:13:12 +05:30
Neeraj Gupta
28f94df354 Minor fixes (#183) 2023-08-09 12:35:56 +05:30
Neeraj Gupta
e5812ed09a Add option to suggest features 2023-08-09 12:07:14 +05:30
Neeraj Gupta
08eac475d1 -mRemove unused import 2023-08-09 12:01:34 +05:30
Neeraj Gupta
306f7fdab7 Fix url for github 2023-08-09 12:00:37 +05:30
Vishnu Mohandas
4257dac83e New Translations (#180) 2023-08-09 09:41:48 +05:30
Crowdin Bot
ef8294adb3 New Crowdin translations by GitHub Action 2023-08-09 00:28:57 +00:00
Neeraj Gupta
dc5cb41f95 Update copies and hook for import & faq on Empty home page (#179) 2023-08-08 10:26:40 +05:30
Neeraj Gupta
caeb0f4e92 Remove unused import 2023-08-08 10:05:40 +05:30
Neeraj Gupta
e8ffaa5278 Bump version 2023-08-08 10:02:23 +05:30
Neeraj Gupta
79b5b835b4 Fix: Check canPop before pop 2023-08-08 09:59:41 +05:30
Neeraj Gupta
2cd8ff6a46 EmptyState: Add hook to import code and faq 2023-08-08 09:59:04 +05:30
Neeraj Gupta
911471cd98 Remove dead code 2023-08-08 09:49:44 +05:30
Neeraj Gupta
4944eff546 Switch to new actionSheet for delete code 2023-08-08 09:45:02 +05:30
Neeraj Gupta
9f470ac709 Update copy for Google auth import 2023-08-08 09:39:54 +05:30
Neeraj Gupta
5d682989cd Add faq for auth (#178) 2023-08-08 09:10:07 +05:30
Neeraj Gupta
b5d5c283a1 bump version 2023-08-08 08:42:40 +05:30
Neeraj Gupta
00fc97129b Remove unused import 2023-08-08 08:39:07 +05:30
Neeraj Gupta
1f6ef8f941 Add faq for auth 2023-08-08 08:38:40 +05:30
Neeraj Gupta
e24fda9ce6 Move UI options (#177) 2023-08-07 19:04:31 +05:30
Neeraj Gupta
98e9cfc44a Move logout and delete options under account 2023-08-07 16:49:32 +05:30
Neeraj Gupta
3db76c7e1b Recovery key under security 2023-08-07 16:45:51 +05:30
Neeraj Gupta
a08c01b49b Document encrypted export format (#175) 2023-08-03 17:20:46 +05:30
Neeraj Gupta
cf862d291d Add support for toggling email MFA (#174) 2023-08-03 16:49:39 +05:30
Neeraj Gupta
007de8bb87 Document encrypted export format 2023-08-03 16:31:41 +05:30
Neeraj Gupta
5dbeb36be9 Minor update 2023-08-02 17:39:00 +05:30
Neeraj Gupta
45e720917d Minor refactor + comment 2023-08-02 16:41:05 +05:30
Neeraj Gupta
a8c2bc2d9a Fix UI refresh 2023-08-02 16:35:57 +05:30
Neeraj Gupta
10a26131ac Extract string 2023-08-02 16:33:10 +05:30
Neeraj Gupta
8394ec72ce Show generic error 2023-08-02 13:39:45 +05:30
Neeraj Gupta
895f9bf410 Bump version 2023-08-02 13:37:54 +05:30
Neeraj Gupta
b8c4711b8d Fetch user profile on Sign in 2023-08-02 13:37:39 +05:30
Neeraj Gupta
553a6ce732 Show option to enable/disable email MFA 2023-08-02 13:17:41 +05:30
Neeraj Gupta
89774972f8 Handle emailMFA flag during login 2023-08-02 13:16:48 +05:30
Neeraj Gupta
58cf5ab4c3 HOTP next counter (#173) 2023-08-01 17:58:48 +05:30
Neeraj Gupta
e401503948 Add support for incrementing hotp counter 2023-08-01 17:34:58 +05:30
Neeraj Gupta
80d97734fd Add support for parsing counter 2023-08-01 15:50:28 +05:30
Neeraj Gupta
e6a6f0a76f Remove bad tests 2023-08-01 15:50:16 +05:30
Neeraj Gupta
8a3a64adcc Google auth import (#172) 2023-08-01 13:22:06 +05:30
Neeraj Gupta
25b10efec4 Add support for importing from Google Authenticator 2023-08-01 12:51:05 +05:30
Neeraj Gupta
2879f9efd7 Add dependency on base32 2023-08-01 12:50:44 +05:30
Neeraj Gupta
39d415bab6 HomePage: Call super.initiate() first 2023-08-01 12:50:24 +05:30
Neeraj Gupta
010c32ecf7 Fix: UI bug 2023-08-01 12:41:04 +05:30
Neeraj Gupta
2637cd60a0 Add generated proto model 2023-08-01 08:09:26 +05:30
Neeraj Gupta
d67f7db834 Add depedency on protobuf 2023-08-01 08:07:41 +05:30
Neeraj Gupta
bd8cc72dfd Add proto for Google Auth 2023-08-01 08:04:45 +05:30
Neeraj Gupta
5cef1cd0e6 Show error if user tries to import zip 2023-08-01 07:54:40 +05:30
Neeraj Gupta
f3bd45f31b Add dependency on archive pkg 2023-07-31 21:51:19 +05:30
Neeraj Gupta
503d06edec RaivoImport: Minor refactor 2023-07-31 21:51:06 +05:30
Neeraj Gupta
b10ee19a50 Login v2 (#156) 2023-07-31 17:52:00 +05:30
Neeraj Gupta
108298b52a Merge branch 'main' into login-v2 2023-07-31 17:36:15 +05:30
Neeraj Gupta
8016c11a2b Support for importing ente encrypted export (#171) 2023-07-31 17:29:38 +05:30
Neeraj Gupta
46d96ef779 Support for importing ente encrypted export 2023-07-31 17:26:56 +05:30
Neeraj Gupta
c666bbb6e8 Fix alignment of codes list (#170) 2023-07-31 16:20:21 +05:30
Neeraj Gupta
c09cb51ef6 Merge branch 'main' into login-v2 2023-07-31 16:07:39 +05:30
Neeraj Gupta
d41cae9903 Merge branch 'main' into login-v2 2023-07-31 16:07:17 +05:30
Neeraj Gupta
fb8aa013fa Export in encrypted format + import from Ravio (#168) 2023-07-31 16:06:51 +05:30
Neeraj Gupta
9070f12edc Merge branch 'main' into fix_165 2023-07-31 15:58:00 +05:30
Neeraj Gupta
f10bc75668 Fix alginment of codes list 2023-07-31 15:56:05 +05:30
Neeraj Gupta
d8182225d3 Make sort case-insensitive (#169) 2023-07-31 15:50:48 +05:30
Neeraj Gupta
5a245ed1ef Make sort case-insensitive 2023-07-31 15:47:54 +05:30
Neeraj Gupta
2cb6275fdf Fix minor bug 2023-07-31 15:43:02 +05:30
Neeraj Gupta
4e4a773c1a Remove commented out code 2023-07-31 15:41:17 +05:30
Neeraj Gupta
50b74367be Extract strings 2023-07-31 15:39:19 +05:30
Neeraj Gupta
94eb5d8c97 Add support for importing raivo codes 2023-07-31 15:26:08 +05:30
Neeraj Gupta
f91d3876d0 Merge branch 'main' into login-v2 2023-07-31 13:12:38 +05:30
Neeraj Gupta
471621880f Fix bug in closing progressDialog 2023-07-31 13:06:00 +05:30
Neeraj Gupta
562f5667eb Show multiple import options 2023-07-31 13:00:38 +05:30
Neeraj Gupta
ea770cfa18 Export auth codes 2023-07-31 10:45:07 +05:30
Neeraj Gupta
07f63bc07c Add model for exporting encrypted codes 2023-07-29 21:10:41 +05:30
Neeraj Gupta
dd90d57675 Update UI 2023-07-29 21:10:24 +05:30
Neeraj Gupta
f40df0b819 Show option to export encrypted or plain text codes 2023-07-29 21:00:01 +05:30
Neeraj Gupta
7a4125a847 Move settings->data files 2023-07-29 16:03:08 +05:30
Neeraj Gupta
a53a13b746 New Translations (#163) 2023-07-28 09:42:53 +05:30
Crowdin Bot
d48fd18749 New Crowdin translations by GitHub Action 2023-07-28 00:26:47 +00:00
Neeraj Gupta
a70d04f704 New Translations (#162) 2023-07-27 09:16:11 +05:30
Crowdin Bot
51ec1d5b0c New Crowdin translations by GitHub Action 2023-07-27 00:26:42 +00:00
Vishnu Mohandas
7827b7dbd8 New Translations (#158) 2023-07-25 22:21:12 +05:30
Crowdin Bot
26af0b4689 New Crowdin translations by GitHub Action 2023-07-25 12:09:05 +00:00
Neeraj Gupta
261496c417 New Translations (#157) 2023-07-25 10:43:08 +05:30
Crowdin Bot
d60f0c3841 New Crowdin translations by GitHub Action 2023-07-25 00:30:33 +00:00
Neeraj Gupta
9a80bf2cb2 Use initial 128bit as loginKey 2023-07-24 15:11:43 +05:30
Neeraj Gupta
a88cd75a5c LoginV2 changes 2023-07-24 11:47:01 +05:30
Neeraj Gupta
37ce8a55db LoginV2 changes 2023-07-24 11:43:17 +05:30
Neeraj Gupta
42b3dee44a Update migration guide (#154) 2023-07-24 08:57:55 +05:30
Neeraj Gupta
4ad2627b8b Add LoginPasswordVerificationPage page 2023-07-20 18:07:43 +05:30
green
b6371179ff Update authy.md
got rid of "there is" because i forgot to delete that for some reason when editing my guide before publishing it
2023-07-20 14:21:24 +02:00
green
9d3a998c42 Update authy.md 2023-07-20 14:06:42 +02:00
green
2ce7ed87e1 Update authy.md
I was going to add a recommendation to delete the unencrypted files that were made during migration, but I forgot to when I wrote the guide and now I've added it
2023-07-20 14:01:48 +02:00
Neeraj Gupta
d13c7bfd3a Login V2 changes - part 2 2023-07-20 17:26:19 +05:30
Neeraj Gupta
ac82e1a004 LoginV2 changes 2023-07-20 16:40:00 +05:30
Neeraj Gupta
5a0927ea82 Add dependency on pointycastle 2023-07-20 16:26:30 +05:30
Neeraj Gupta
dad3d2fa51 Add model for SRP 2023-07-20 16:02:57 +05:30
Neeraj Gupta
16d90d33f5 Upgrade CryptoUtil 2023-07-20 15:59:23 +05:30
Neeraj Gupta
396cd87bbe Lint: ignore flutter submodule 2023-07-20 15:58:51 +05:30
Neeraj Gupta
68b7f3d265 Switch to forked version for computer 2023-07-20 15:49:47 +05:30
Neeraj Gupta
2835f9777b New Translations (#151) 2023-07-17 08:02:25 +05:30
Crowdin Bot
8cd030e62e New Crowdin translations by GitHub Action 2023-07-17 00:35:14 +00:00
Neeraj Gupta
4148c8fdf9 bump kotlin version 2023-07-13 22:00:40 +05:30
Neeraj Gupta
54f94c2137 l10n: Enable japanese and turkish locale 2023-07-13 21:29:20 +05:30
Neeraj Gupta
479753291c Bump version (#150) 2023-07-13 21:11:12 +05:30
Neeraj Gupta
d67df6b4b5 Bump version and add generated changes 2023-07-13 21:02:09 +05:30
Neeraj Gupta
70ccb5856a Extract strings 2023-07-13 20:59:28 +05:30
Neeraj Gupta
902b30d9bc Handle # in label (#149) 2023-07-13 20:58:47 +05:30
Neeraj Gupta
f05fb0374f Add test for rawCodes with bad account names 2023-07-13 20:33:21 +05:30
Neeraj Gupta
ab6867e3b0 Fix: Handle # value in the account name 2023-07-13 20:32:57 +05:30
Vishnu Mohandas
1b85674357 Authy to ente Auth migration guide (#146) 2023-07-07 19:48:26 +05:30
green
618d5bf5e5 authy to ente guide 2023-07-07 15:55:14 +02:00
Vishnu Mohandas
9d476188c4 New Translations (#145) 2023-07-06 06:21:15 +05:30
Crowdin Bot
cb5b89154d New Crowdin translations by GitHub Action 2023-07-06 00:35:06 +00:00
Vishnu Mohandas
0c1707fbba New Translations (#142) 2023-06-29 20:42:31 +05:30
Crowdin Bot
86289eb217 New Crowdin translations by GitHub Action 2023-06-29 12:09:49 +00:00
Neeraj Gupta
b8a186972a New Translations (#140) 2023-06-14 09:12:24 +05:30
Crowdin Bot
aa8a911298 New Crowdin translations by GitHub Action 2023-06-14 03:41:41 +00:00
Neeraj Gupta
07181c1e37 Fix: Handle empty spaces in qrCode secrets (#138) 2023-06-09 14:59:21 +05:30
Neeraj Gupta
79de39f92a Fix: Handle empty spaces in qrCode secrets 2023-06-09 14:57:31 +05:30
Neeraj Gupta
e5a5759ee1 Update README.md (#133) 2023-06-02 16:11:01 +05:30
Neeraj Gupta
64c712efd9 Update README.md 2023-06-02 16:09:47 +05:30
Neeraj Gupta
840bf8d8eb Resolve package version conflict and fix error (#132) 2023-06-02 10:34:41 +05:30
Naveen
842f33ea06 intl package has been updated from 1.17.0 to 1.18.0
local_auth package has been updated from 1.1.5 to 2.1.3
Code related to local_auth package has been updated
2023-06-02 08:27:56 +05:30
Neeraj Gupta
4e8af2818f UX: Search for new account post scanning QRcode (#131) 2023-05-25 15:31:12 +05:30
Neeraj Gupta
c95d32a10e UX: Search for new account post scanning QRcode 2023-05-25 15:09:14 +05:30
Neeraj Gupta
a95394a9b2 New Translations (#130) 2023-05-25 09:40:42 +05:30
Crowdin Bot
ef2757b8ce New Crowdin translations by GitHub Action 2023-05-25 00:24:41 +00:00
Neeraj Gupta
e62e79f56b New Translations (#129) 2023-05-24 12:26:19 +05:30
Crowdin Bot
355609194f New Crowdin translations by GitHub Action 2023-05-24 00:26:13 +00:00
Neeraj Gupta
7069f2cc68 New Translations (#127) 2023-05-18 05:31:14 +05:30
Crowdin Bot
bb02fa8197 New Crowdin translations by GitHub Action 2023-05-17 12:08:31 +00:00
Neeraj Gupta
bb26599caf New Translations (#126) 2023-05-17 11:20:03 +05:30
Crowdin Bot
5350ade862 New Crowdin translations by GitHub Action 2023-05-17 00:29:23 +00:00
Neeraj Gupta
9fe4eb77b3 New Translations (#125) 2023-05-16 12:05:59 +05:30
Crowdin Bot
75b195e51b New Crowdin translations by GitHub Action 2023-05-16 00:26:08 +00:00
Neeraj Gupta
e69d7c3554 Update list for older iphones (#124) 2023-05-15 15:53:40 +05:30
Neeraj Gupta
febe877300 Update list for older iphones 2023-05-15 15:15:33 +05:30
Neeraj Gupta
943bf096fe New Translations (#123) 2023-05-15 12:35:19 +05:30
Crowdin Bot
1547ec648b New Crowdin translations by GitHub Action 2023-05-15 00:27:23 +00:00
Vishnu Mohandas
189f2524c2 Add links to Mastodon and Matrix (#122) 2023-05-14 19:58:38 +05:30
vishnukvmd
7dc79f4631 Add links to Mastodon and Matrix 2023-05-14 17:57:43 +05:30
Vishnu Mohandas
7055bad2b2 New Translations (#120) 2023-05-13 20:43:26 +05:30
Crowdin Bot
e05ac2144b New Crowdin translations by GitHub Action 2023-05-13 12:07:46 +00:00
Neeraj Gupta
ed490957ae bump version 1.0.40+40 2023-05-12 11:20:27 +05:30
Neeraj Gupta
3b105f13c2 Merge branch 'bug_fix' 2023-05-12 11:19:57 +05:30
Neeraj Gupta
93d9609218 New Translations (#119) 2023-05-12 11:19:40 +05:30
Neeraj Gupta
3c355a6b8d Fix bug during setup first code via qr 2023-05-12 11:17:59 +05:30
Crowdin Bot
37c62e9a97 New Crowdin translations by GitHub Action 2023-05-12 00:25:13 +00:00
Neeraj Gupta
2e828ef218 Sort by issuer,account (#118) 2023-05-11 14:38:06 +05:30
Neeraj Gupta
ba08479e54 l10n: Add translation for Polski and Italiano 2023-05-11 14:29:05 +05:30
Neeraj Gupta
ae9a8f71da Sort by issuer,account 2023-05-11 14:18:11 +05:30
Neeraj Gupta
4e0d4ff6fd New Translations (#116) 2023-05-10 06:27:23 +05:30
Crowdin Bot
1f6f411abf New Crowdin translations by GitHub Action 2023-05-10 00:25:19 +00:00
Vishnu Mohandas
88dc209d6a New Translations (#115) 2023-05-09 18:42:51 +05:30
Crowdin Bot
39fb6c2a52 New Crowdin translations by GitHub Action 2023-05-09 12:47:29 +00:00
Neeraj Gupta
40ed35e5f5 bump version to 1.0.39+39 2023-05-07 14:48:24 +05:30
Neeraj Gupta
ecdeb2c8ae Update changelog and description 2023-05-07 14:33:02 +05:30
Neeraj Gupta
736516f449 l10n: Extract strings 2023-05-07 14:12:54 +05:30
Neeraj Gupta
2750192ed4 l10n: Extract strings 2023-05-07 11:52:07 +05:30
Neeraj Gupta
1d778821af l10n: Enable persian language 2023-05-07 11:51:53 +05:30
Neeraj Gupta
a22e136e71 Improve localeResolution logic 2023-05-07 10:28:21 +05:30
Neeraj Gupta
4a64aa6a41 bump version to 1.0.38+38 2023-05-07 10:04:08 +05:30
Neeraj Gupta
f75c43f4ad Add support for more locales 2023-05-07 10:01:23 +05:30
Neeraj Gupta
aece36e82c Locale: Support persisting both lang and countryCode 2023-05-07 09:44:26 +05:30
Neeraj Gupta
b0734f6d06 Update toggle_switch_widget 2023-05-07 09:38:53 +05:30
Neeraj Gupta
08d01b22f8 Merge pull request #113 from ente-io/register_for_url
Support for handling otpauth scheme
2023-05-06 01:54:05 +05:30
Neeraj Gupta
ea3cd1844b Add support for handling otpauth:// scheme 2023-05-06 01:47:04 +05:30
Neeraj Gupta
ba49d0002d Add dependency on uni_link 2023-05-06 01:39:44 +05:30
Neeraj Gupta
73c130ce7e Add widget for empty state and coach mark 2023-05-06 00:45:34 +05:30
Neeraj Gupta
4d88503c2b Extract widget in separate file 2023-05-06 00:16:07 +05:30
Neeraj Gupta
3bce3092e3 Remove redundant lint ignore rule 2023-05-06 00:00:07 +05:30
Neeraj Gupta
08cc772ff1 Merge pull request #112 from ente-io/109_fix_bug
Fix bug in edit code
2023-04-30 09:29:38 +05:30
Neeraj Gupta
c4d671596b Fix bug in edit code 2023-04-30 09:28:25 +05:30
Neeraj Gupta
e993fba73d Merge pull request #111 from ente-io/l10n_translations
New Translations
2023-04-30 06:48:17 +05:30
Crowdin Bot
4daac3bdea New Crowdin translations by GitHub Action 2023-04-30 00:28:20 +00:00
Vishnu Mohandas
4beeec1e43 Merge pull request #106 from ente-io/l10n_translations
New Translations
2023-04-28 07:16:10 +05:30
Crowdin Bot
b50019c287 New Crowdin translations by GitHub Action 2023-04-28 00:26:14 +00:00
Neeraj Gupta
3e3cb71767 Merge pull request #104 from ente-io/l10n_translations
New Translations
2023-04-26 00:18:34 +05:30
Crowdin Bot
623c80aa8d New Crowdin translations by GitHub Action 2023-04-25 12:08:34 +00:00
Neeraj Gupta
acdce27dbf Merge pull request #103 from ente-io/l10n_translations
New Translations
2023-04-24 09:10:55 +05:30
Crowdin Bot
6e88b85fed New Crowdin translations by GitHub Action 2023-04-24 00:26:38 +00:00
Neeraj Gupta
385a5443f3 Merge pull request #102 from ente-io/l10n_translations
New Translations
2023-04-21 10:23:03 +05:30
Crowdin Bot
33179207d2 New Crowdin translations by GitHub Action 2023-04-21 00:25:40 +00:00
Neeraj Gupta
ab89674b58 Merge pull request #101 from ente-io/l10n_translations
New Translations
2023-04-20 14:52:57 +05:30
Crowdin Bot
124ef81865 New Crowdin translations by GitHub Action 2023-04-20 00:24:26 +00:00
Neeraj Gupta
1773820ac6 Merge pull request #100 from ente-io/l10n_translations
New Translations
2023-04-18 21:05:49 +05:30
Crowdin Bot
e935eace16 New Crowdin translations by GitHub Action 2023-04-18 15:35:26 +00:00
Neeraj Gupta
86bb4bc86c Merge pull request #99 from ente-io/l10n_translations
New Translations
2023-04-18 09:34:15 +05:30
Crowdin Bot
7d7385c9da New Crowdin translations by GitHub Action 2023-04-18 04:03:16 +00:00
Neeraj Gupta
ce514d9e95 Fix typo 2023-04-18 09:32:37 +05:30
Neeraj Gupta
59c0df2ce8 Merge pull request #98 from ente-io/l10n_translations
New Translations
2023-04-18 09:14:59 +05:30
Crowdin Bot
9f514447e4 New Crowdin translations by GitHub Action 2023-04-18 00:26:08 +00:00
Vishnu Mohandas
065248a9cb Update README.md 2023-04-17 19:12:20 +05:30
Vishnu Mohandas
09fad5fa3e Update README.md 2023-04-17 19:11:52 +05:30
Neeraj Gupta
a46fff91c2 bump version to 1.0.37+37 2023-04-15 13:51:08 +05:30
Neeraj Gupta
6277bd8e7a Merge pull request #97 from ente-io/minor_fixes
minor fixes
2023-04-15 12:50:36 +05:30
vishnukvmd
7cc3ed8fa5 Update string 2023-04-15 12:50:21 +05:30
Neeraj Gupta
0d59263422 Logout: Add warning for unsycned changes 2023-04-15 12:25:52 +05:30
Neeraj Gupta
5e21a077cf Extract more strings 2023-04-15 11:56:01 +05:30
Neeraj Gupta
aa558fd35d Extract strings 2023-04-15 11:42:05 +05:30
Neeraj Gupta
20f50e4dba Extract strings 2023-04-15 11:23:45 +05:30
Neeraj Gupta
48828d095f Remove unused lint skip 2023-04-15 11:23:04 +05:30
Neeraj Gupta
727d53bb8f Lang: Allow fr and es 2023-04-15 11:22:36 +05:30
Neeraj Gupta
6892d029aa Fix social section 2023-04-15 11:11:20 +05:30
Neeraj Gupta
91d78cd83e Merge pull request #96 from ente-io/l10n_translations
New Translations
2023-04-15 10:59:41 +05:30
Crowdin Bot
76cf109433 New Crowdin translations by GitHub Action 2023-04-15 00:28:13 +00:00
Neeraj Gupta
22b05da6bf Update README.md 2023-04-14 16:35:38 +05:30
Neeraj Gupta
b0e9cd49ae Update uri scheme from ente to ente-auth 2023-04-13 12:19:27 +05:30
Neeraj Gupta
f47e0fe1c7 Merge pull request #93 from ente-io/l10n_translations
New Translations
2023-04-12 11:28:44 +05:30
Crowdin Bot
553f8555de New Crowdin translations by GitHub Action 2023-04-12 00:25:31 +00:00
Neeraj Gupta
ca53f5127e Merge pull request #92 from ente-io/l10n_translations
New Translations
2023-04-10 10:03:40 +05:30
Crowdin Bot
30d1238e09 New Crowdin translations by GitHub Action 2023-04-10 04:27:15 +00:00
Neeraj Gupta
11d6e672b1 Merge pull request #90 from ente-io/update_pages
Nullsafety + string extractions
2023-04-10 09:56:36 +05:30
Neeraj Gupta
8f7226cb02 Complete null-safety migration 2023-04-10 09:47:45 +05:30
Neeraj Gupta
fc2db578a8 Add more components 2023-04-09 19:10:34 +05:30
Neeraj Gupta
bb86c023cc Merge pull request #91 from ente-io/l10n_translations
New Translations
2023-04-09 19:00:04 +05:30
Crowdin Bot
cefd663921 New Crowdin translations by GitHub Action 2023-04-09 12:07:51 +00:00
Neeraj Gupta
84bf988de4 Null safety migration 2023-04-08 17:26:28 +05:30
Neeraj Gupta
537b3d2e4d Copy more common components 2023-04-08 17:10:10 +05:30
Neeraj Gupta
33b141916f Remove unused widgets 2023-04-08 17:08:53 +05:30
Neeraj Gupta
c10655e353 NullSafety migration: app_lock.dart 2023-04-08 17:08:16 +05:30
Neeraj Gupta
8e3c766468 NullSafety+ String extraction for LoginPage 2023-04-08 15:34:32 +05:30
Neeraj Gupta
646c64372c Fix validate fillColor 2023-04-08 14:11:11 +05:30
Neeraj Gupta
cc8139341b NullSafety+ String extraction for EmailEntryPage 2023-04-08 14:08:15 +05:30
Neeraj Gupta
b12043ae13 Merge pull request #89 from ente-io/lang_change
Support for changing language
2023-04-08 10:32:27 +05:30
Neeraj Gupta
cc15def963 Show language names 2023-04-08 10:23:55 +05:30
Neeraj Gupta
e0fe0833fb Update recovery_key_page 2023-04-08 09:48:39 +05:30
Neeraj Gupta
624ca39fff l10n: extract strings 2023-04-08 09:38:10 +05:30
Neeraj Gupta
33292657b9 l10n: extract strings 2023-04-08 09:33:12 +05:30
Neeraj Gupta
24c97c56a0 l10n: extract strings 2023-04-08 09:25:34 +05:30
Neeraj Gupta
2ffe79b9b3 Merge branch 'main' into lang_change 2023-04-07 17:43:49 +05:30
Neeraj Gupta
66ee9ef1a6 Add support for changing language 2023-04-07 17:40:47 +05:30
Neeraj Gupta
0629789a22 [design] Update components 2023-04-07 15:11:37 +05:30
Neeraj Gupta
1e0e5c3ff5 [design] Update components 2023-04-07 15:06:57 +05:30
Neeraj Gupta
bff5205dda [design] Update components 2023-04-07 15:02:11 +05:30
Neeraj Gupta
5cd08622ff Add de, fr, and fi as support locales 2023-04-07 14:29:27 +05:30
Neeraj Gupta
f478014c64 Merge pull request #88 from ente-io/l10n_translations
New Translations
2023-04-07 10:57:42 +05:30
Crowdin Bot
d932d7c6b8 New Crowdin translations by GitHub Action 2023-04-07 00:24:00 +00:00
Neeraj Gupta
8d734b761e Merge pull request #86 from ente-io/l10n_translations
New Translations
2023-04-06 10:38:43 +05:30
Crowdin Bot
790985663f New Crowdin translations by GitHub Action 2023-04-06 00:25:18 +00:00
Neeraj Gupta
f5e1319f1b Merge pull request #83 from ente-io/l10n_translations
New Translations
2023-04-04 21:32:56 +05:30
Crowdin Bot
a71f7b78ca New Crowdin translations by GitHub Action 2023-04-04 12:08:51 +00:00
Neeraj Gupta
a5eb5c4cb8 Merge pull request #85 from ente-io/ua741-patch-1
README: Add link to view codes on web
2023-04-04 16:26:24 +05:30
Neeraj Gupta
6f80ded657 README: Add link to view codes on web 2023-04-04 16:22:14 +05:30
Neeraj Gupta
33c3b997ed Merge pull request #84 from ente-io/handle_logout
Handle invalid sessions
2023-04-04 16:14:38 +05:30
Neeraj Gupta
b841d5ecd7 Fix string 2023-04-04 16:12:18 +05:30
Neeraj Gupta
abf4afe76e Fix: Remove synced codes on logout 2023-04-04 16:06:51 +05:30
Neeraj Gupta
873da725f9 l10n: remove @@locale 2023-04-04 16:00:39 +05:30
Neeraj Gupta
c9ce4b662a l10n: extract strings 2023-04-04 15:59:28 +05:30
Neeraj Gupta
e140e9dfa7 Handle logged out sessions 2023-04-04 15:46:18 +05:30
Neeraj Gupta
1551842886 Fix: throw UnauthorizedError on 401 status 2023-04-04 15:25:19 +05:30
Neeraj Gupta
153998763e Fix format for importing codes 2023-04-04 14:53:26 +05:30
Neeraj Gupta
d66a5db998 Merge pull request #82 from ente-io/minor_fixes
Minor fixes
2023-04-03 12:31:05 +05:30
Neeraj Gupta
ea20e1b155 Fix locales 2023-04-03 12:28:36 +05:30
Neeraj Gupta
0963ea7129 Fix parsing and add tests 2023-04-03 12:28:27 +05:30
Neeraj Gupta
1c3ebd026b Fix: Parsing of account name 2023-04-03 12:13:43 +05:30
Neeraj Gupta
d1e1cb983e Handle bad issuerName 2023-04-03 12:10:32 +05:30
Vishnu Mohandas
ad8fd6224a Merge pull request #64 from ente-io/vishnukvmd-patch-1 2023-04-03 11:53:51 +05:30
Neeraj Gupta
2893eb45fa Merge branch 'main' into vishnukvmd-patch-1 2023-04-03 11:53:09 +05:30
Neeraj Gupta
2ea4d2c614 Merge pull request #78 from ente-io/l10n_translations
New Translations
2023-04-03 09:30:03 +05:30
Crowdin Bot
259461cf8b New Crowdin translations by GitHub Action 2023-04-03 00:26:40 +00:00
Vishnu Mohandas
2109c912fe Merge pull request #80 from ente-io/minor_fixes
Minor fixes
2023-03-29 11:44:40 +05:30
vishnukvmd
54b3b3ecb6 v1.0.36 2023-03-29 11:27:50 +05:30
vishnukvmd
766742abf2 Cache fetched subscription 2023-03-29 11:27:21 +05:30
vishnukvmd
a2216fe145 Minor copy change 2023-03-29 11:25:45 +05:30
Neeraj Gupta
29d6012fde Merge pull request #79 from ente-io/upgrade_store 2023-03-29 08:59:57 +05:30
vishnukvmd
983496e711 Fix i18n 2023-03-28 17:24:12 +05:30
vishnukvmd
a16aace96a Update deps 2023-03-28 17:24:04 +05:30
vishnukvmd
e2a1b429e2 Upgrade SecureStorage 2023-03-28 17:21:49 +05:30
Neeraj Gupta
4906f980f7 Merge pull request #76 from ente-io/l10n_translations
New Translations
2023-03-21 15:13:55 +05:30
Neeraj Gupta
f17275071c Merge pull request #77 from ente-io/fixes
fixes
2023-03-21 14:44:10 +05:30
Neeraj Gupta
abb51d09ac Read issuer name from query params 2023-03-21 14:37:47 +05:30
Neeraj Gupta
5ca06c12d7 Fix typo 2023-03-21 14:16:40 +05:30
Crowdin Bot
e91deee8fe New Crowdin translations by GitHub Action 2023-03-21 00:26:29 +00:00
Neeraj Gupta
8571c024f7 Update README.md 2023-03-18 19:24:55 +05:30
Neeraj Gupta
d621e2fd74 Merge pull request #75 from ente-io/crowdin_ci 2023-03-18 12:39:33 +05:30
Neeraj Gupta
b06649b9c9 Add CI config for crowdin action 2023-03-18 11:41:33 +05:30
Neeraj Gupta
862bea5a18 Add crowdin config 2023-03-18 11:39:47 +05:30
Neeraj Gupta
81740bb549 bump version 2023-03-15 20:34:21 +05:30
Neeraj Gupta
4bf0c5d4bb Merge pull request #73 from ente-io/ente_photos_upgrade
Hook for development support
2023-03-15 18:17:36 +05:30
vishnukvmd
e7a2c671e1 Minor fixes 2023-03-15 18:15:10 +05:30
Neeraj Gupta
099be22598 Hide discount for iOS users 2023-03-15 14:08:37 +05:30
Neeraj Gupta
34200b702a Add nudget to upgrade 2023-03-15 14:05:30 +05:30
Neeraj Gupta
719585f74b Merge pull request #72 from ente-io/timer_animation
Fix timer animation
2023-03-14 06:43:21 +05:30
Neeraj Gupta
4b003cb91f Merge pull request #71 from ente-io/monochrome_icon
Android: Add support for theme icon
2023-03-14 06:42:40 +05:30
Neeraj Gupta
b9fa6f3094 remove unused pkg 2023-03-14 06:23:15 +05:30
Neeraj Gupta
835e8d01bd Switch to simple progress widget with no animation 2023-03-14 06:19:49 +05:30
Neeraj Gupta
3d2dabc288 Add linear progress bar widget 2023-03-14 06:19:08 +05:30
Neeraj Gupta
2ed8684cc1 bump version : 1.0.33 2023-03-14 05:12:38 +05:30
Neeraj Gupta
2eb7542293 Improve time counter animation 2023-03-14 05:12:10 +05:30
Neeraj Gupta
96dc8adf46 Android: Add support for theme icon 2023-03-14 05:02:36 +05:30
Vishnu Mohandas
0650889afa Merge pull request #68 from ente-io/f-droid
Add link to F-Droid to README
2023-03-12 12:34:49 +05:30
vishnukvmd
65a78ae4b1 Update description 2023-03-12 11:25:15 +05:30
vishnukvmd
060ae5571f Add link to F-Droid to README 2023-03-12 11:17:53 +05:30
Vishnu Mohandas
875df67a5e Update README.md 2023-02-23 20:59:06 +05:30
Vishnu Mohandas
74f2d70000 Update README.md 2023-02-23 20:46:40 +05:30
Manav
64ff5d91b9 Merge pull request #63 from ente-io/update-cla
Update to cla-assistant.io for CLA shared across ente
2023-02-16 21:04:36 +05:30
Manav
317ba39f46 Update to cla-assistant.io for CLA shared across ente
Replace the manual per-repository integration with the standard cla-assistant.io
setup for integrating a single CLA across all ente repositories.

Updated CLA: https://gist.github.com/enteio/f3b9abc4e047425da3e1538cde903b4d
2023-02-16 20:26:27 +05:30
Neeraj Gupta
cf3a9f9d8f Merge Upgrade flutter: 3.7.3 #62
Upgrade flutter: 3.7.3
2023-02-16 10:24:04 +05:30
Neeraj Gupta
e6fb1d6fc0 Upgrade flutter: 3.7.3 2023-02-16 09:07:39 +05:30
Neeraj Gupta
001077dd97 Merge pull request #61 from ente-io/fix_code_generation
Fix: Wrap decode in try catch
2023-02-16 08:22:54 +05:30
Neeraj Gupta
e82e7634d4 Improve logging 2023-02-16 07:56:20 +05:30
Neeraj Gupta
d20eb65645 bump version to 1.0.32+32 2023-02-16 07:47:35 +05:30
Neeraj Gupta
bf86dac10f Fix: Wrap decode in try catch 2023-02-16 07:47:08 +05:30
Neeraj Gupta
c5d68b4a94 Merge pull request #60 from ente-io/fix_change_email
Fix change email
2023-02-13 13:01:10 +05:30
Neeraj Gupta
dd558cb008 bump version to 1.0.31+31 2023-02-13 12:56:09 +05:30
Neeraj Gupta
ea9b0d01ba Fix change email 2023-02-13 12:40:33 +05:30
Manav
6582c3b3dc Merge pull request #59 from ente-io/fix_build
Fix iOS build by configuring the Flutter script to be run for all builds
2023-02-13 12:34:44 +05:30
vishnukvmd
5fdc475386 Fix iOS build by configuring the Flutter script to be run for all builds 2023-02-13 12:33:38 +05:30
Vishnu Mohandas
806fe8a916 Merge pull request #58 from ente-io/add_logs
Log error while rendering code widgets
2023-02-13 11:51:35 +05:30
Neeraj Gupta
161a990c17 Log error while rendering code widgets 2023-02-13 11:48:40 +05:30
Neeraj Gupta
3fc716d474 Merge pull request #56 from ente-io/ui_fresh
Fix: Reduce UI rebuilds
2023-02-11 17:02:07 +05:30
Neeraj Gupta
d7d61f2699 bump version to 1.0.30+30 2023-02-11 16:53:07 +05:30
Neeraj Gupta
37f5c23169 Reduce UI rebuilds 2023-02-11 16:52:08 +05:30
Neeraj Gupta
7c5d95d8e3 Merge pull request #55 from ente-io/fix_locale
Fix locale detection for AppLock
2023-02-07 12:57:08 +05:30
Neeraj Gupta
4f3dff44fc bump version to 1.0.29+29 2023-02-07 12:54:03 +05:30
Neeraj Gupta
3b2f886ae1 Fix locale detection for AppLock 2023-02-07 12:53:04 +05:30
Vishnu Mohandas
bad2bafbe9 Merge pull request #53 from ente-io/search_ux
Improve UX for search
2023-02-06 15:48:13 +05:30
Neeraj Gupta
4f7b6e9f8e Merge pull request #52 from ente-io/low_end_key_derivation
Be verbose about the key derivation limits on low end devices
2023-02-06 15:39:20 +05:30
Neeraj Gupta
120fee358b bump version to 1.0.28+28 2023-02-06 15:38:18 +05:30
Neeraj Gupta
85cc5d7d18 bump version to 1.0.27+27 2023-02-06 15:37:53 +05:30
vishnukvmd
660b370d72 Be verbose about the key derivation limits on low end devices 2023-02-06 14:57:25 +05:30
Vishnu Mohandas
a23fd97f83 Merge pull request #51 from ente-io/handle_empty_account
Allow empty account name + bump version
2023-02-06 12:11:16 +05:30
Neeraj Gupta
1f83456b2b bump version to 1.0.27+27 2023-02-06 12:09:28 +05:30
Neeraj Gupta
28ea0d1b06 Allow adding code without account info 2023-02-06 12:08:55 +05:30
Neeraj Gupta
1584a23936 Merge pull request #49 from ente-io/handle_low_end_device
Fix: Attempt to avoid crash on low-spec devices
2023-02-06 11:39:37 +05:30
Neeraj Gupta
7fd0b8f407 Refactor and start with 256MB as memLimit for lowSpecDevices 2023-02-06 11:29:45 +05:30
Neeraj Gupta
bbe7525882 Switch to maxOpsLimit for low end devices 2023-02-06 10:21:49 +05:30
Neeraj Gupta
a9182577c0 Fix typo in comparision 2023-02-06 10:21:49 +05:30
Neeraj Gupta
7d6d3fe0f2 Switch to device_info_plus 2023-02-06 10:20:57 +05:30
Neeraj Gupta
303cdc92e7 Merge pull request #50 from ente-io/basic_search
Support for searching by account or issuer
2023-02-05 22:54:51 +05:30
Neeraj Gupta
3b39a34045 Support for searching by account or issuer 2023-02-05 22:33:37 +05:30
Vishnu Mohandas
2435c9ddef Merge pull request #48 from ente-io/fix_incorrect_scanning 2023-02-05 01:03:11 +05:30
Neeraj Gupta
35bb9284d6 Fix incorrect 2fa type detection 2023-02-05 01:02:16 +05:30
Neeraj Gupta
0c34cfcc5e Merge pull request #46 from ente-io/20_secret_with_spaces
Trim whitespaces from manual secret input
2023-01-28 18:44:56 +05:30
Neeraj Gupta
a0c2db5315 Merge pull request #45 from ente-io/34_url_decode
Fix: Url decode the path value
2023-01-28 18:44:46 +05:30
Neeraj Gupta
b8f1f00d2f Trim whitespaces from manual secret input 2023-01-28 18:42:32 +05:30
Neeraj Gupta
41c33003ac Fix: Url decode the path value 2023-01-28 18:27:59 +05:30
Neeraj Gupta
4103b776c4 Merge pull request #44 from ente-io/flutter_as_module
Add flutter as submodule
2023-01-28 15:46:06 +05:30
Manav
ae1986d7d3 Merge pull request #43 from ente-io/bump-build-number
1.0.25 (26)
2023-01-28 15:43:00 +05:30
Manav
3b6648074a 1.0.25 (26) 2023-01-28 15:42:03 +05:30
Neeraj Gupta
d5249d40cb Add flutter as submodule 2023-01-28 15:41:14 +05:30
Manav
a90f7e6abc Merge pull request #42 from ente-io/document-releases
Document automated releases
2023-01-28 15:37:37 +05:30
Manav
55722dd818 Merge pull request #41 from ente-io/playstore-submit
Upload to Google Play from GitHub action
2023-01-28 15:37:25 +05:30
Manav
7666c4e053 Document automated releases 2023-01-28 15:34:21 +05:30
Manav
cb93a0658f Use direct path
Removes the dependency of this build step on the previous build step.
2023-01-28 14:58:47 +05:30
Manav
97f665e8cf Remove unneeded mapping files 2023-01-28 14:57:55 +05:30
Manav
99516650fe Fix path 2023-01-28 14:01:10 +05:30
Manav
3928ccc6b7 Build a playstore variants 2023-01-28 13:49:42 +05:30
Manav
699f906843 Skeleton for upload-google-play 2023-01-28 13:39:24 +05:30
Manav
ca809a0e0b Merge pull request #40 from ente-io/apply-bis
Enable the BIS self classification flag
2023-01-28 13:02:18 +05:30
Manav
d52e0ed04a Enable the BIS self classification flag
We've submitted the BIS self classification report for the auth app alongwith
the photos app. More details: https://github.com/ente-io/photos-app/issues/427
2023-01-28 12:59:19 +05:30
Neeraj Gupta
c9936d68c1 Merge pull request #38 from ente-io/use_en_as_default
Restrict to en locale
2023-01-28 12:30:40 +05:30
Neeraj Gupta
59cfc88b4e Merge pull request #39 from ente-io/ua741-patch-1
Fix typo in read me
2023-01-28 12:14:15 +05:30
Neeraj Gupta
39f9385c74 Fix typo in read me 2023-01-28 12:13:16 +05:30
Neeraj Gupta
2017506b28 bump version to 1.0.25+25 2023-01-28 12:06:01 +05:30
Neeraj Gupta
1497866597 Restrict locale to en 2023-01-28 12:05:31 +05:30
Neeraj Gupta
78c12b5ee2 Merge pull request #35 from ente-io/24 2023-01-27 17:22:51 +05:30
Vishnu Mohandas
64159434d0 Merge pull request #36 from ente-io/xcloud 2023-01-26 16:39:23 +05:30
vishnukvmd
8bd1c1ec50 Update build script 2023-01-26 14:57:24 +05:30
vishnukvmd
409e9c39ca Update build file 2023-01-26 14:51:06 +05:30
vishnukvmd
73bd24da95 Add post clone CI script 2023-01-26 14:51:00 +05:30
vishnukvmd
aeb2f46a4f v1.0.24 2023-01-26 14:04:13 +05:30
vishnukvmd
cc9f8db288 Update build files 2023-01-26 14:04:06 +05:30
Vishnu Mohandas
83c70f0f6b Merge pull request #32 from ente-io/recents
Remove option to remove app from recents
2023-01-08 16:51:01 +05:30
Vishnu Mohandas
91fffc8b04 Merge pull request #31 from ente-io/tweak-trailing-margin-theme-picker
Increase trailing margin for the theme picker selection checkmark
2023-01-08 16:47:31 +05:30
Vishnu Mohandas
50b583c2d7 Merge pull request #30 from ente-io/use-newer-alternative
Use `AppLocalizations.localizationsDelegates` in other MaterialApp
2023-01-08 16:47:07 +05:30
vishnukvmd
0034da064f Remove option to remove app from recents 2023-01-08 16:38:04 +05:30
Manav
4fa61f0997 Use AppLocalizations.localizationsDelegates in other MaterialApp
Smoke tested by running the app on iOS simulator
2023-01-08 16:26:36 +05:30
Vishnu Mohandas
29bc7bb78f Merge pull request #29 from ente-io/fix-change-email-i18n-crash
Fix the crash on opening change email dialog
2023-01-08 16:16:55 +05:30
Manav
1df7d8de46 Fix the crash on opening change email dialog
The crash was happening in the `context.l10n` line in the
change_email_dialog.dart. This was because the root MaterialApp created by
AppLock wasn't being passed the AppLocalizations object.

Tested:
- Was able to reproduce the crash on iOS simulator (null check assertion)
- After the change, the crash doesn't happen
2023-01-08 16:05:40 +05:30
Manav
435fd6a1e7 Increase trailing margin for the theme picker selection checkmark 2023-01-08 15:26:05 +05:30
Vishnu Mohandas
c0f450d380 Merge pull request #27 from ente-io/reduce-cla-spam 2023-01-06 15:17:31 +05:30
Manav
9f686d38ed Run the CLA bot only on comments to PR
Right now, it unnecessarily runs and sends an email when customers open issues.

Not tested, but can test it by opening an issue after this is merged.

Reference:
- https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#issue_comment
2023-01-06 15:15:10 +05:30
Vishnu Mohandas
8ade294d7a Merge pull request #26 from ente-io/fix_typo
Fix copy
2022-12-31 11:30:57 +05:30
vishnukvmd
b5f3694805 Fix copy 2022-12-31 11:30:19 +05:30
Manav
1b1df0aa37 Merge pull request #25 from MalteKiefer/hotfix/german_language
fixed a forgotten string
2022-12-28 12:37:10 +05:30
Malte Kiefer
25dd92bdf0 fixed a forgotten string 2022-12-28 08:05:26 +01:00
Manav
e3ddc10a00 Merge pull request #24 from MalteKiefer/feature/language_german
translate app to german
2022-12-28 12:24:16 +05:30
Malte Kiefer
d0ae1ce566 translate app to german 2022-12-28 07:36:07 +01:00
Neeraj Gupta
b0eb0413f0 Separate icon config for fdroid 2022-12-18 08:59:05 +05:30
Neeraj Gupta
60a66efa79 Add fdroid flavor 2022-12-18 07:11:55 +05:30
Neeraj Gupta
e7c8437478 Merge branch 'main' of github.com:ente-io/auth 2022-12-18 06:43:35 +05:30
Neeraj Gupta
21ca31c1f3 Add fastlane details 2022-12-18 06:42:54 +05:30
Vishnu Mohandas
0330982eb0 Merge pull request #19 from ente-io/fix_window_manager_warning
Update warning dialog when "Hide from recents" is enabled
2022-12-15 22:36:19 +05:30
vishnukvmd
5fec321267 Update the warning copy since not all ROMs may block capturing of screenshots once FLAG_SECURE is set 2022-12-15 22:34:48 +05:30
Vishnu Mohandas
ca378d31d2 Merge pull request #17 from ente-io/ua741-patch-1 2022-12-15 14:08:33 +05:30
Neeraj Gupta
aedde8e447 Readme: Fix link to issues 2022-12-15 13:47:24 +05:30
Vishnu Mohandas
1f090ce3af Merge pull request #16 from ente-io/independent
Merge Independent APK track
2022-12-14 14:55:27 +05:30
vishnukvmd
308cf250fd v1.0.23 2022-12-14 14:43:20 +05:30
vishnukvmd
9ef9c3b9fd Migrate to open_filex 2022-12-14 14:43:05 +05:30
vishnukvmd
8e39b6f359 Merge branch 'main' into independent 2022-12-14 14:24:04 +05:30
vishnukvmd
05955e2e76 Update .gitignore 2022-12-14 14:23:51 +05:30
vishnukvmd
3bc9b46d4d Merge branch 'main' into independent 2022-12-14 14:16:39 +05:30
Vishnu Mohandas
38a6e5a99c Merge pull request #15 from ente-io/upgrade_dependencies
Upgrade dependencies
2022-12-14 14:16:03 +05:30
vishnukvmd
89dc0f81ed v1.0.22 2022-12-14 13:46:33 +05:30
vishnukvmd
24de1c6af7 Upgrade file_picker and flutter_sodium 2022-12-14 13:46:14 +05:30
Vishnu Mohandas
ee6c4d3744 Fix hyperlink to Download 2022-12-12 20:29:50 +05:30
Vishnu Mohandas
4e46a6f222 Merge pull request #14 from ente-io/readme-tweaks 2022-12-12 18:34:28 +05:30
Manav
563fb2fb7c README tweaks 2022-12-12 18:30:32 +05:30
Manav
216499d0a6 Merge pull request #13 from ente-io/extract-more-strings
Extract more strings into ARB files for localization
2022-12-12 18:11:02 +05:30
Manav
daf48befff Merge pull request #12 from ente-io/remove-test-file
Remove test file
2022-12-12 17:31:47 +05:30
Manav
359dc09d6a Extract more strings into ARB files for localization 2022-12-12 17:30:37 +05:30
Neeraj Gupta
73989998e9 Remove test file 2022-12-12 14:44:54 +05:30
Manav
0894a7eb36 Merge pull request #11 from ente-io/add-cla
Add CLA
2022-12-12 14:20:57 +05:30
Manav
550a955c1a Add CLA 2022-12-12 14:17:14 +05:30
Manav
598fb7856c Merge pull request #9 from ente-io/test-clabot
Testing CLA bot
2022-12-12 13:27:51 +05:30
Manav
b0d89cc568 Configure cla-assistant 2022-12-12 11:58:26 +05:30
Manav
e4eacb684f Test commit 2022-12-12 10:48:18 +05:30
Manav
6717f739ae Testing CLA bot 2022-12-12 10:40:15 +05:30
Vishnu Mohandas
00372208a4 Update Architecture folder structure 2022-12-09 21:50:36 +05:30
Vishnu Mohandas
7c093ec8c8 Update README 2022-12-09 21:46:31 +05:30
Vishnu Mohandas
ed3aafa7fc Fix licence to GPL-3.0 2022-12-09 21:42:35 +05:30
Vishnu Mohandas
6505ed37fc Add info about desktop support 2022-12-09 14:47:19 +05:30
vishnukvmd
6dd3903c78 Add screenshots 2022-12-05 10:50:38 +05:30
vishnukvmd
6996650ad5 Add links to both stores 2022-12-05 10:37:31 +05:30
vishnukvmd
86be8482b7 Merge branch 'main' into independent 2022-11-28 13:07:08 +05:30
vishnukvmd
26930f2760 v1.0.21 2022-11-28 13:06:57 +05:30
vishnukvmd
3e49cfbe5f Merge branch 'main' into independent 2022-11-28 13:06:41 +05:30
vishnukvmd
17fc973bfb Pause and resume camera on Android 2022-11-28 13:06:27 +05:30
vishnukvmd
0aae349509 Update POD file 2022-11-28 13:05:13 +05:30
vishnukvmd
bacca876ae Remove usages of IAP 2022-11-28 13:05:07 +05:30
vishnukvmd
d7e1998fbd v1.0.20 2022-11-24 16:23:47 +05:30
vishnukvmd
f53b44ec97 Remove unused library 2022-11-24 16:23:41 +05:30
vishnukvmd
338efb1eba v1.0.19 2022-11-24 16:15:58 +05:30
vishnukvmd
02ffe72cca Revert "Disable OpenFile to please PlayStore overlords"
This reverts commit a5cac1579b.
2022-11-24 16:15:24 +05:30
vishnukvmd
a5cac1579b Disable OpenFile to please PlayStore overlords 2022-11-24 16:14:57 +05:30
vishnukvmd
7a90a09d0c Format README 2022-11-24 13:23:07 +05:30
vishnukvmd
9508b30353 Update readme 2022-11-24 13:21:40 +05:30
vishnukvmd
7207921838 v1.0.18 2022-11-23 17:23:06 +05:30
vishnukvmd
56a741b2ac Update copy 2022-11-23 17:23:02 +05:30
vishnukvmd
e52aa78fae v1.0.17 2022-11-23 16:26:47 +05:30
vishnukvmd
9bcd107de8 Display a coach mark to nudge the user to swipe left 2022-11-23 16:26:29 +05:30
vishnukvmd
8e5488eaf9 v1.0.16 2022-11-22 15:00:08 +05:30
vishnukvmd
b20139f3b8 Provide option to opt in to crash analytics 2022-11-22 14:59:25 +05:30
vishnukvmd
21b139687d Disable Sentry tunnel 2022-11-22 14:58:59 +05:30
vishnukvmd
385731196f Remove code for setting anonymous user ID from Configuration 2022-11-22 14:44:27 +05:30
vishnukvmd
71c2958078 Improve warning while sharing logs 2022-11-22 14:06:46 +05:30
vishnukvmd
7a25da3927 Simplify email to share logs with 2022-11-22 14:06:36 +05:30
vishnukvmd
34c9ee76b3 Improve logging 2022-11-22 14:06:25 +05:30
vishnukvmd
3fbad241b1 Remove irrelevant link 2022-11-22 13:57:38 +05:30
vishnukvmd
9143634000 Execute remote sync if local items were pushed 2022-11-22 13:56:00 +05:30
vishnukvmd
a573c012e0 Rename variable 2022-11-22 13:37:09 +05:30
vishnukvmd
94debda2c7 Add the ability to add and edit issuers 2022-11-22 13:24:37 +05:30
vishnukvmd
c9f37b4f5a Add ability to edit an existing code 2022-11-22 13:24:37 +05:30
Neeraj Gupta
05652656ae Update README.md 2022-11-16 16:15:13 +05:30
vishnukvmd
8e715b4cf9 v1.0.15 2022-11-15 17:44:18 +05:30
vishnukvmd
e264d3456b Add indicator for codes that haven't synced to remote yet 2022-11-15 17:44:04 +05:30
vishnukvmd
56a73ab7ee Send stack trace on error capture 2022-11-15 17:27:12 +05:30
vishnukvmd
963d18b501 Gracefully parse errors 2022-11-15 17:26:59 +05:30
vishnukvmd
b35d3bda16 Reset cache on logout 2022-11-15 17:21:44 +05:30
vishnukvmd
7ad76adcaa v1.0.14 2022-11-15 14:04:26 +05:30
vishnukvmd
691eaabf50 Switch to FlutterFragmentActivity 2022-11-15 14:04:17 +05:30
vishnukvmd
7ab16df330 Update readme 2022-11-14 22:46:08 +05:30
vishnukvmd
3c16cfd829 Update podfile 2022-11-14 22:46:02 +05:30
vishnukvmd
8c9c9c53d1 v1.0.12 2022-11-14 22:11:38 +05:30
vishnukvmd
aeaaddbe40 Update README 2022-11-14 22:11:14 +05:30
vishnukvmd
25782870c7 Remove wasteful refresh 2022-11-14 21:53:14 +05:30
vishnukvmd
39e28dd63b Sort codes by issuer 2022-11-14 21:51:25 +05:30
vishnukvmd
517ce33fd9 Display the account within the code widget 2022-11-14 21:49:00 +05:30
vishnukvmd
02d2cb5733 Document architecture 2022-11-14 20:46:43 +05:30
vishnukvmd
2b5f349b2f Copy code on long press as well as on tap 2022-11-14 20:30:15 +05:30
vishnukvmd
08ad496975 Update README 2022-11-14 20:02:32 +05:30
vishnukvmd
f52ee5683b v1.0.11 2022-11-14 18:57:45 +05:30
vishnukvmd
332faa9166 Send error messages to sentry, even if the error object is missing 2022-11-14 18:57:37 +05:30
vishnukvmd
3d95c789f5 v1.0.10 2022-11-14 18:33:56 +05:30
vishnukvmd
244d4d969a Enable auto-updates 2022-11-14 18:33:49 +05:30
vishnukvmd
32605dc708 Implement a functional notification service 2022-11-14 18:23:55 +05:30
vishnukvmd
ef0c302c94 Add configuration for production builds for Android 2022-11-14 18:12:07 +05:30
vishnukvmd
fba694de68 Sort dependencies 2022-11-14 18:10:06 +05:30
vishnukvmd
3d4cd106cb Add dependencies to power auto-update 2022-11-14 18:08:42 +05:30
vishnukvmd
61e6e0ffaa Define responsible disclosure policy 2022-11-14 14:00:00 +05:30
vishnukvmd
e0b952e516 Configure Sentry 2022-11-14 13:58:09 +05:30
vishnukvmd
546a9234a4 Allow resetting on 2FA with the mnemonic phrase 2022-11-13 13:57:18 +05:30
vishnukvmd
da2083ef08 Fix styles for 2FA entry 2022-11-13 13:56:49 +05:30
vishnukvmd
8a1177e7db Fix case 2022-11-13 13:29:18 +05:30
vishnukvmd
8acd1faf03 Remove link to rate 2022-11-13 12:02:45 +05:30
vishnukvmd
0c28b83b46 Fix button color 2022-11-13 11:58:40 +05:30
vishnukvmd
fa0ac608f4 Add illustration for the lock screen 2022-11-13 11:57:07 +05:30
vishnukvmd
0965b367cc Decode the recovery key into hex instead of base64 2022-11-13 11:41:40 +05:30
vishnukvmd
37db940720 v1.0.9 2022-11-12 01:19:42 +05:30
vishnukvmd
334800472e Fix iOS permission issue 2022-11-12 01:19:25 +05:30
vishnukvmd
0da4497857 v1.0.8 2022-11-12 01:07:04 +05:30
vishnukvmd
0b05a21dc7 Fix fab colors 2022-11-12 01:05:25 +05:30
vishnukvmd
2558473399 Remove unused import 2022-11-12 00:47:53 +05:30
vishnukvmd
4dd465fdfa Remove junk value 2022-11-12 00:47:35 +05:30
vishnukvmd
1f20ba17f4 Remove toast library that was blocking user interaction 2022-11-12 00:46:02 +05:30
vishnukvmd
9ce8059212 Fix ripple 2022-11-12 00:37:06 +05:30
vishnukvmd
e69a3adf14 Remove redundant import 2022-11-12 00:35:21 +05:30
vishnukvmd
8baa350056 Improve style of the code widget 2022-11-12 00:34:06 +05:30
vishnukvmd
2526b61620 v1.0.7 2022-11-11 20:24:02 +05:30
vishnukvmd
ec4df467a0 Up flutter version to 3.3.8 2022-11-11 20:23:48 +05:30
vishnukvmd
41fd5337a6 Fix link to checksum 2022-11-11 20:23:29 +05:30
vishnukvmd
8fbec8307e v1.0.6 2022-11-11 20:14:01 +05:30
vishnukvmd
d902fdbf75 Add separate section for import and export 2022-11-11 20:13:52 +05:30
vishnukvmd
932dc53f6c Made with love @ ente 2022-11-11 20:09:59 +05:30
vishnukvmd
745cb54ffd Update copy 2022-11-11 20:01:02 +05:30
vishnukvmd
8ced5bf32e Fix error dialog 2022-11-11 19:58:36 +05:30
vishnukvmd
9b1a8fb4ca v1.0.5 2022-11-11 19:52:23 +05:30
vishnukvmd
824c6d769b Sanitize the secret 2022-11-11 19:51:54 +05:30
vishnukvmd
92c2247aa1 Add option to bulk import codes 2022-11-11 18:51:09 +05:30
vishnukvmd
e84e9db70e Add parameter to disable sync post code addition 2022-11-11 18:50:26 +05:30
vishnukvmd
be72db844d De-duplicate codes before inserting them into the DB 2022-11-11 17:12:05 +05:30
vishnukvmd
2386a5a10b Remove redundant code 2022-11-11 17:05:28 +05:30
vishnukvmd
09ae14a1d6 Add dependency on file picker 2022-11-11 17:05:22 +05:30
vishnukvmd
924ce5ff86 Update launch config 2022-11-11 15:45:58 +05:30
vishnukvmd
c47370163d Auto focus on OTT entry screen 2022-11-11 15:45:52 +05:30
vishnukvmd
3dd408af01 Clarify that account deletion applies to all products 2022-11-03 16:13:48 +05:30
vishnukvmd
408e3bd2b6 Fix the option to view recovery key 2022-11-03 16:00:02 +05:30
vishnukvmd
ebf634ef1e Enable 2fa within 2fa :okaypepe: 2022-11-03 15:59:00 +05:30
vishnukvmd
62c21749b5 v1.0.3 2022-11-03 15:04:52 +05:30
vishnukvmd
a9e8245b4d Fix typo 2022-11-03 15:04:43 +05:30
vishnukvmd
a088c61785 v1.0.2 2022-11-03 14:06:49 +05:30
vishnukvmd
640fad7b3c Add permission to use biometric auth on Android devices 2022-11-03 14:06:25 +05:30
vishnukvmd
f6df133e73 Add permission for biometric auth to Info.plist 2022-11-03 14:04:47 +05:30
351 changed files with 24628 additions and 4012 deletions

38
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@@ -0,0 +1,38 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]
**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]
**Additional context**
Add any other context about the problem here.

View File

@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

View File

@@ -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)

View File

@@ -1,70 +1,86 @@
name: Flutter CI
name: release
# This workflow is triggered on pushes to the repository.
on:
workflow_dispatch:
# Enable manual run
push:
# Sequence of patterns matched against refs/tags
tags:
- 'v*' # Push events to matching v*, i.e. v4.2.0
workflow_dispatch:
# Enable manual run
push:
# Sequence of patterns matched against refs/tags
tags:
- "v*" # Push events to matching v*, i.e. v4.2.0
jobs:
build:
# This job will run on ubuntu virtual machine
runs-on: ubuntu-latest
steps:
build:
# This job will run on ubuntu virtual machine
runs-on: ubuntu-latest
steps:
# Setup Java environment in order to build the Android app.
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: "adopt"
java-version: "11"
# Setup Java environment in order to build the Android app.
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '11'
# Setup the flutter environment.
- uses: subosito/flutter-action@v2
with:
channel: "stable"
flutter-version: "3.13.4"
# Setup the flutter environment.
- uses: subosito/flutter-action@v2
with:
channel: 'stable'
flutter-version: '3.3.2'
# Fetch sub modules
- run: git submodule update --init --recursive
# Fetch sub modules
- run: git submodule update --init --recursive
# Get flutter dependencies.
- run: flutter pub get
# Get flutter dependencies.
- run: flutter pub get
- name: Setup keys
uses: timheuer/base64-to-file@v1
with:
fileName: "keystore/ente_auth_key.jks"
encodedString: ${{ secrets.SIGNING_KEY }}
- name: Setup keys
uses: timheuer/base64-to-file@v1
with:
fileName: 'keystore/ente_auth_key.jks'
encodedString: ${{ secrets.SIGNING_KEY }}
# Build independent apk.
- name: Build
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 }}
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }}
# 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
env:
SIGNING_KEY_PATH: '/home/runner/work/_temp/keystore/ente_auth_key.jks'
SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }}
# Build Play store aab.
- name: Build
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 }}
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }}
- name: Checksum
run: sha256sum build/app/outputs/flutter-apk/ente-auth.apk > build/app/outputs/flutter-apk/sha256sum
- name: Checksum
run: sha256sum build/app/outputs/flutter-apk/ente-auth.apk > build/app/outputs/flutter-apk/sha256sum
# Upload generated apk to the artifacts.
- uses: actions/upload-artifact@v2
with:
name: release-apk
path: build/app/outputs/flutter-apk/ente-auth.apk
# Upload generated apk to the artifacts.
- uses: actions/upload-artifact@v2
with:
name: release-apk
path: build/app/outputs/flutter-apk/ente-auth.apk
- uses: actions/upload-artifact@v2
with:
name: release-checksum
path: build/app/outputs/flutter-apk/checksum
- uses: actions/upload-artifact@v2
with:
name: release-checksum
path: build/app/outputs/flutter-apk/sha256sum
# Create a Github release
- uses: ncipollo/release-action@v1
with:
artifacts: "build/app/outputs/flutter-apk/ente-auth.apk,build/app/outputs/flutter-apk/sha256sum"
token: ${{ secrets.GITHUB_TOKEN }}
# Create a Github release
- uses: ncipollo/release-action@v1
with:
artifacts: "build/app/outputs/flutter-apk/ente-auth.apk,build/app/outputs/flutter-apk/sha256sum"
token: ${{ secrets.GITHUB_TOKEN }}
# Upload to Play store
- uses: ente-io/upload-google-play@v1
with:
serviceAccountJsonPlainText: ${{ secrets.SERVICE_ACCOUNT_JSON }}
packageName: io.ente.auth
releaseFiles: build/app/outputs/bundle/playstoreRelease/app-playstore-release.aab
track: internal

12
.github/workflows/desktop.yml vendored Normal file
View File

@@ -0,0 +1,12 @@
name: desktop build
on:
workflow_dispatch:
jobs:
build-linux:
name: Linux
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2

35
.github/workflows/l18n-crowdin.yml vendored Normal file
View File

@@ -0,0 +1,35 @@
name: Sync crowdin translation
on:
push:
paths: # run action automatically when app_en.arb file is changed
- 'lib/l10n/arb/app_en.arb'
branches: [ main ]
schedule:
- cron: '0 */12 * * *' # Every 12 hours - https://crontab.guru/#0_*/12_*_*_*
workflow_dispatch: # for manually running the action
jobs:
synchronize-with-crowdin:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: crowdin action
uses: crowdin/github-action@v1
with:
upload_sources: true
upload_translations: true
download_translations: true
localization_branch_name: l10n_translations
create_pull_request: true
skip_untranslated_strings: true
pull_request_title: 'New Translations'
pull_request_body: 'New translations via [Crowdin GH Action](https://github.com/crowdin/github-action)'
pull_request_base_branch_name: 'main'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}

7
.gitmodules vendored
View File

@@ -2,3 +2,10 @@
path = thirdparty/sentry-dart
url = https://github.com/ente-io/sentry-dart.git
branch = sentry_flutter_ente
[submodule "flutter"]
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

11
.vscode/launch.json vendored
View File

@@ -26,14 +26,21 @@
"request": "launch",
"type": "dart",
"program": "lib/main.dart",
"args": ["--dart-define", "endpoint=http://192.168.1.3:8080"]
"args": ["--dart-define", "endpoint=http://192.168.1.30:8080"]
},
{
"name": "Prod",
"name": "iOS Prod",
"request": "launch",
"type": "dart",
"program": "lib/main.dart",
"args": ["--target", "lib/main.dart"]
},
{
"name": "Android Prod",
"request": "launch",
"type": "dart",
"program": "lib/main.dart",
"args": ["--target", "lib/main.dart", "--flavor", "independent"]
}
]
}

128
CODE_OF_CONDUCT.md Normal file
View File

@@ -0,0 +1,128 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
community@ente.io.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.

72
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,72 @@
# 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
[![Crowdin](https://badges.crowdin.net/ente-authenticator-app/localized.svg)](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 placed within `assets/custom-icons/icons` and add the
corresponding entry within `assets/custom-icons/_data/custom-icons.json`.
This JSON file contains the following attributes:
| Attribute | Usecase | Required |
|---|---|---|
| `title` | Name of the service. | Yes |
| `slug` | If the icon's SVG file has a name different from the `title` | No |
| `hex` | Color code for the icon | No |
| `altNames` | If the same service goes by different names or has different instances (eg. Mastodon) | No |
Here is an [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
```

687
LICENSE
View File

@@ -1,21 +1,674 @@
MIT License
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (c) 2021 Very Good Ventures
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
Preamble
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<https://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<https://www.gnu.org/licenses/why-not-lgpl.html>.

129
README.md
View File

@@ -1,3 +1,128 @@
# ente Auth
# ente Authenticator
Open source authenticator app for your 2FA secrets, with end-to-end encrypted backups.
![Build](https://github.com/ente-io/auth/actions/workflows/ci.yml/badge.svg?branch=)
[![Crowdin](https://badges.crowdin.net/ente-authenticator-app/localized.svg)](https://crowdin.com/project/ente-authenticator-app)
[![Matrix](https://img.shields.io/matrix/ente:matrix.org?color=blue)](https://matrix.to/#/#ente:matrix.org)
ente's Authenticator app helps you generate and store 2 step verification (2FA)
tokens on your mobile devices.
[Download now](#-download)
![App Screenshots](./screenshots/screenshots.png)
## ✨ Features
### Secure Backups
ente provides end-to-end encrypted cloud backups so that you don't have to worry
about losing your tokens. We use the same protocols [ente
Photos](https://ente.io) uses to encrypt and preserve your data.
### Multi Device Synchronization
ente will automatically sync the 2FA tokens you add to your account, across all
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. 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 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 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
### Android
This repository's [GitHub
releases](https://github.com/ente-io/auth/releases/latest/download/ente-auth.apk)
contains APKs, built straight from source. These builds keep themselves updated,
without relying on third party stores.
You can alternatively install the build from PlayStore or F-Droid.
<a href="https://play.google.com/store/apps/details?id=io.ente.auth"> <img
width="197" alt="Get it on Google Play"
src="https://ente.io/static/ed265c3abdcd3efa5e29f64b927bcb44/e230a/play-store-badge.webp">
</a>
<a href="https://f-droid.org/packages/io.ente.auth/">
<img width="197" alt="Get it on F-Droid" src="https://ente.io/static/5378d3de690a04a5011268b9caf739f5/e230a/f-droid-badge.webp">
</a>
### iPhone / Apple Silicon
<a href="https://apps.apple.com/us/app/ente-authenticator/id6444121398"> <img
width="197" alt="Download on AppStore"
src="https://user-images.githubusercontent.com/1161789/154795157-c4468ff9-97fd-46f3-87fe-dca789d8733a.png">
</a>
### 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.
## 🔩 Architecture
The architecture that powers end-to-end encrypted storage and sync of your
tokens has been documented [here](architecture/README.md).
## 🧑‍💻 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`
3. Pull in all submodules with `git submodule update --init --recursive`
4. For Android, [setup your keystore](https://docs.flutter.dev/deployment/android#create-an-upload-keystore) and run `flutter build apk --release --flavor independent`
5. For iOS, run `flutter build ios`
For maintainers, there is [additional documentation](RELEASES.md) on
automatically publishing the main branch to App store, Play store and GitHub
releases.
## 🧑‍🔧 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/).
## 💜 Community
- Follow us on [Twitter](https://twitter.com/enteio) / [Mastodon](https://mstdn.social/@ente)
- Join us on [Discord](https://ente.io/discord) / [Matrix](https://ente.io/matrix)

12
RELEASES.md Normal file
View File

@@ -0,0 +1,12 @@
# Releases
1. Create a PR to bump up the version number in `pubspec.yaml`.
2. Once that is merged, tag main. This'll trigger the
[workflow](.github/workflows/ci.yml) to (a) create a new GitHub release with
the independently distributed APK, and (b) build and upload a release to
Google Play.
3. Xcode Cloud has already been configured and will automatically build and
release to TestFlight when step 1 was merged to main (you can see logs under
the PR checks).

50
SECURITY.md Normal file
View File

@@ -0,0 +1,50 @@
ente believes that working with security researchers across the globe is crucial
to keeping our users safe. If you believe you've found a security issue in our
product or service, we encourage you to notify us (security@ente.io). We welcome
working with you to resolve the issue promptly. Thanks in advance!
# Disclosure Policy
- Let us know as soon as possible upon discovery of a potential security issue,
and we'll make every effort to quickly resolve the issue.
- Provide us a reasonable amount of time to resolve the issue before any
disclosure to the public or a third-party. We may publicly disclose the issue
before resolving it, if appropriate.
- Make a good faith effort to avoid privacy violations, destruction of data, and
interruption or degradation of our service. Only interact with accounts you
own or with explicit permission of the account holder.
- If you would like to encrypt your report, please use the PGP key with long ID
`E273695C0403F34F74171932DF6DDDE98EBD2394` (available in the public keyserver
pool).
# In-scope
- Security issues in any current release of ente. This includes the web app,
desktop app, and mobile apps (iOS and Android). Product downloads are
available at https://ente.io. Source code is available at
https://github.com/ente-io.
# Exclusions
The following bug classes are out-of scope:
- Bugs that are already reported on any of ente's issue trackers
(https://github.com/ente-io), or that we already know of. Note that some of
our issue tracking is private.
- Issues in an upstream software dependency (ex: Flutter, Next.js etc) which are
already reported to the upstream maintainer.
- Attacks requiring physical access to a user's device.
- Self-XSS
- Issues related to software or protocols not under ente's control
- Vulnerabilities in outdated versions of ente
- Missing security best practices that do not directly lead to a vulnerability
- Issues that do not have any impact on the general public
While researching, we'd like to ask you to refrain from:
- Denial of service
- Spamming
- Social engineering (including phishing) of ente staff or contractors
- Any physical attempts against ente property or data centers
Thank you for helping keep ente and our users safe!

View File

@@ -41,11 +41,12 @@ analyzer:
use_rethrow_when_possible: info
require_trailing_commas: error
prefer_const_constructors: error # too many warnings
prefer_const_declarations: error # too many warnings
prefer_const_constructors: warning
prefer_const_declarations: warning
prefer_const_constructors_in_immutables: ignore # too many warnings
avoid_renaming_method_parameters: ignore # incorrect warnings for `equals` overrides
exclude:
- thirdparty/**
- thirdparty/**
- flutter/**

View File

@@ -72,6 +72,9 @@ android {
playstore {
dimension "default"
}
fdroid {
dimension "default"
}
}
buildTypes {

View File

@@ -25,7 +25,14 @@
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="ente"/>
<data android:scheme="ente-auth"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="otpauth" />
</intent-filter>
</activity>
@@ -35,7 +42,7 @@
<meta-data android:name="flutterEmbedding" android:value="2"/>
<meta-data android:name="io.sentry.dsn"
android:value="https://8aeb7f013be74f829f8b73b46b3d7a80@sentry.ente.io/8"/>
android:value="https://ed4ddd6309b847ba8849935e26e9b648@sentry.ente.io/9"/>
</application>
<queries>
@@ -52,4 +59,6 @@
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="29"
tools:ignore="ScopedStorage"/>
</manifest>
<uses-permission android:name="android.permission.USE_BIOMETRIC"/>
</manifest>

View File

@@ -1,6 +1,6 @@
package io.ente.auth
import io.flutter.embedding.android.FlutterActivity
import io.flutter.embedding.android.FlutterFragmentActivity
class MainActivity: FlutterActivity() {
class MainActivity: FlutterFragmentActivity() {
}

View File

@@ -2,4 +2,5 @@
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@color/ic_launcher_background"/>
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
<monochrome android:drawable="@drawable/ic_launcher_foreground"/>
</adaptive-icon>

View File

@@ -1,5 +1,5 @@
buildscript {
ext.kotlin_version = '1.6.10'
ext.kotlin_version = '1.8.22'
repositories {
google()
mavenCentral()
@@ -24,6 +24,6 @@ subprojects {
project.evaluationDependsOn(':app')
}
task clean(type: Delete) {
tasks.register("clean", Delete) {
delete rootProject.buildDir
}

275
architecture/README.md Normal file
View File

@@ -0,0 +1,275 @@
# Architecture
This is an overview of ente's end-to-end encrypted architecture and
specifications of the underlying cryptography.
## Introduction
Your data is end-to-end encrypted with **ente**. Meaning, they are encrypted
with your `keys` before they leave your device.
<img src="assets/e2ee.svg" class="architecture-svg" style="max-width: 600px"
title="End-to-end encryption in ente" />
<br/>
These `keys` are available only to you. Meaning only you can access your data
else where.
What follows is an explanation of how we do what we do.
## Key Encryption
### Fundamentals
#### Master Key
When you sign up for **ente**, your client generates a `masterKey` for you. This
never leaves your device unencrypted.
#### Key Encryption Key
Once you choose a password, a `keyEncryptionKey` is derived from it. This never
leaves your device.
### Flows
#### Primary Device
During registration, your `masterKey` is encrypted with your`keyEncryptionKey`,
and the resultant `encryptedMasterKey` is then sent to our servers for storage.
<img src="assets/key-derivation.svg" class="architecture-svg" title="Key derivation" />
#### <a id="key-encryption-flows-secondary-device"></a> Secondary Device
When you sign in on a secondary device, after you successfully verify your
email, our servers give you back your `encryptedMasterKey` that was sent to us
by your primary device.
You are then prompted to enter your password. Once entered, your
`keyEncryptionKey` is derived, and the client decrypts your `encryptedMasterKey`
with this, to yield your original `masterKey`.
If the decryption fails, the client will know that the derived
`keyEncryptionKey` was wrong, indicating an incorrect password, and this
information will be surfaced to you.
### Privacy
- Since only you know your password, only you can derive your
`keyEncryptionKey`.
- Since only you can derive your `keyEncryptionKey`, only you have access to
your `masterKey`.
> Keep reading to learn about how this `masterKey` is used to encrypt your data.
---
## Token Encryption
### Fundamentals
#### Token Key
Each of your tokens in **ente** are encrypted with a `tokenKey`. These never
leave your device unencrypted.
#### Authenticator Key
Each of your `tokenKey`s are in turn encrypted with an `authKey`. This never
leave your device unencrypted.
### Flows
#### Upload
- Each token and associated metadata is encrypted with randomly generated
`tokenKey`s.
- Each `tokenKey` is encrypted with your `authKey`. In case your account does
not have an `authKey` yet, one is randomly generated and encrypted with your
`masterKey`.
- All of the above mentioned encrypted data is then pushed to the server for
storage.
<img src="assets/token-encryption.svg" class="architecture-svg" title="Token
encryption" />
#### Download
- All of the above mentioned encrypted data is pulled from the server.
- You first decrypt your `authKey` with your `masterKey`.
- You then decrypt each token's `tokenKey` with your `authKey`.
- Finally, you decrypt each token and associated metadata with the respective
`tokenKey`s.
### Privacy
- As explained in the previous section, only you have access to your
`masterKey`.
- Since only you have access to your `masterKey`, only you can decrypt your
`authKey`.
- Since only you have access to your `authKey`, only you can decrypt the
`tokenKey`s.
- Since only you have access to the `tokenKey`s, only you can decrypt the tokens
and their associated metadata.
---
## Key Recovery
### Fundamentals
#### Recovery Key
When you sign up for **ente**, your app generates a `recoveryKey` for you. This
never leaves your device unencrypted.
### Flow
#### Storage
Your `recoveryKey` and `masterKey` are encrypted with each other and stored on
the server.
#### Access
This encrypted `recoveryKey` is downloaded when you sign in on a new device.
This is decrypted with your `masterKey` and surfaced to you whenever you request
for it.
#### Recovery
Post email verification, if you're unable to unlock your account because you
have forgotten your password, the client will prompt you to enter your
`recoveryKey`.
The client then pulls the `masterKey` that was earlier encrypted and pushed to
the server (as discussed in [Key Encryption](#key-encryption), and decrypts it
with the entered `recoveryKey`. If the decryption succeeds, the client will know
that you have entered the correct `recoveryKey`.
<img src="assets/recovery.svg" class="architecture-svg" title="Recovery" />
Now that you have your `masterKey`, the client will prompt you to set a new
password, using which it will derive a new `keyEncryptionKey`. This is then used
to encrypt your `masterKey` and this new `encryptedMasterKey` is uploaded to our
servers, similar to what was earlier discussed in [Key
Encryption](#key-encryption).
### Privacy
- Since only you have access to your `masterKey`, only you can access your
`recoveryKey`.
- Since only you can access your `recoveryKey`, only you can reset your
password.
---
## Authentication
### Fundamentals
#### One Time Token
When you attempt to verify ownership of an email address, our server generates a
`oneTimeToken`, that if presented confirms your access to the said email
address. This token is valid for a short time and can only be used once.
#### Authentication Token
When you successfully authenticate yourself against our server by proving
ownership of your email (and in future any other configured vectors), the server
generates an `authToken`, that can from there on be used to authenticate against
our private APIs.
#### Encrypted Authentication Token
A generated `authToken` is returned to your client after being encrypted with
your `publicKey`. This `encryptedAuthToken` can only be decrypted with your
`privateKey`.
### Flow
- You are asked for an email address, to which a `oneTimeToken` is sent.
- Once you present this information correctly to our server, an `authToken` is
generated and an `encryptedAuthToken` is returned to you, along with your
other encrypted keys.
- You are then prompted to enter your password, using which your `masterKey` is
derived (as discussed [here](#key-encryption-flows-secondary-device)).
- Using this `masterKey`, the rest of your keys, including your `privateKey` is
decrypted (as discussed [here](#private-key)).
- Using your `privateKey`, the client will then decrypt the `encryptedAuthToken`
that was earlier encrypted by our server with your `publicKey`.
- This decrypted `authToken` can then from there on be used to authenticate all
API calls against our servers.
<img src="assets/authentication.svg" class="architecture-svg" title="Authentication" />
### Security
Only by verifying access to your email and knowing your password can you obtain
an `authToken` that can be used to authenticate yourself against our servers.
---
## Implementation Details
We rely on the high level APIs exposed by this wonderful library called
[libsodium](https://libsodium.gitbook.io/doc/).
#### Key Generation
[`crypto_secretbox_keygen`](https://libsodium.gitbook.io/doc/public-key_cryptography/sealed_boxes)
is used to generate all random keys within the application. Your `masterKey`,
`recoveryKey`, `authKey`, `tokenKey` are all 256-bit keys generated using this
API.
#### Key Derivation
[`crypto_pwhash`](https://libsodium.gitbook.io/doc/password_hashing/default_phf)
is used to derive your `keyEncryptionKey` from your password.
`crypto_pwhash_OPSLIMIT_SENSITIVE` and `crypto_pwhash_MEMLIMIT_SENSITIVE` are
used as the limits for computation and memory respectively. If the operation
fails due to insufficient memory, the former is doubled and the latter is halved
progressively, until a key can be derived. If during this process the memory
limit is reduced to a value less than `crypto_pwhash_MEMLIMIT_MIN`, the client
will not let you register from that device.
Internally, this uses [Argon2
v1.3](https://github.com/P-H-C/phc-winner-argon2/raw/master/argon2-specs.pdf),
which is regarded as [one of the best hashing
algorithms](https://en.wikipedia.org/wiki/Argon2) currently available.
#### Symmetric Encryption
[`crypto_secretbox_easy`](https://libsodium.gitbook.io/doc/secret-key_cryptography/secretbox)
is used to encrypt your `masterKey`, `recoveryKey`, `authKey` and `tokenKey`s.
Internally, this uses
[XSalsa20](https://libsodium.gitbook.io/doc/advanced/stream_ciphers/xsalsa20)
stream cipher with [Poly1305
MAC](https://datatracker.ietf.org/doc/html/rfc8439#section-2.5) for
authentication.
[`crypto_secretstream_*`](https://libsodium.gitbook.io/doc/secret-key_cryptography/secretstream)
APIs are used to encrypt your token data. Internally, this uses
[XChaCha20](https://libsodium.gitbook.io/doc/advanced/stream_ciphers/xchacha20)
stream cipher with [Poly1305
MAC](https://datatracker.ietf.org/doc/html/rfc8439#section-2.5) for
authentication.
#### Salt & Nonce Generation
[`randombytes_buf`](https://libsodium.gitbook.io/doc/generating_random_data) is
used to generate a new salt/nonce every time data needs to be hashed/encrypted.
---
## Further Details
Thank you for reading this far! For implementation details, we request you to
checkout [our code](https://github.com/ente-io).
If you'd like to help us improve this document, kindly email
[security@ente.io](mailto:security@ente.io).

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 119 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 22 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 76 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 130 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

View File

@@ -0,0 +1 @@
f23611a675a8c9bc71eb16e8a1108cf8

View File

@@ -0,0 +1,356 @@
{
"icons": [
{
"title": "3Commas"
},
{
"title": "Addy.io",
"slug": "addy_io"
},
{
"title": "Airtable"
},
{
"title": "Anycoin Direct",
"slug": "anycoindirect"
},
{
"title": "AscendEX"
},
{
"title": "BitMEX"
},
{
"title": "Bitfinex"
},
{
"title": "Bitvavo",
"hex": "0051FF"
},
{
"title": "Bitwarden"
},
{
"title": "BorgBase",
"altNames": ["borg"],
"slug": "BorgBase",
"hex": "222C31"
},
{
"title": "Brave Creators",
"slug": "brave_creators"
},
{
"title": "Bybit"
},
{
"title": "Channel Island Hosting",
"slug": "cih",
"hex": "D14633"
},
{
"title": "Cloudflare"
},
{
"title": "Control D",
"slug": "controld",
"hex": "5FD800"
},
{
"title": "Crowdpear"
},
{
"title": "DEGIRO"
},
{
"title": "Discourse"
},
{
"title": "dus.net",
"slug": "dusnet"
},
{
"title": "ente",
"hex": "1DB954"
},
{
"title": "Epic Games",
"slug": "epic_games",
"hex": "000000"
},
{
"title": "Esketit"
},
{
"title": "Estateguru"
},
{
"title": "Filen",
"hex": "858585"
},
{
"title": "Firefox",
"slug": "mozilla"
},
{
"title": "GitHub",
"hex": "858585"
},
{
"title": "GitLab"
},
{
"title": "Google"
},
{
"title": "Gosuslugi",
"altNames": ["Госуслуги"],
"slug": "Gosuslugi",
"hex": "EE2F53"
},
{
"title": "ING"
},
{
"title": "INWX"
},
{
"title": "Instagram"
},
{
"title": "IVPN",
"slug": "IVPN",
"hex": "FA3243"
},
{
"title": "IceDrive",
"slug": "Icedrive",
"hex": "1F4FD0"
},
{
"title": "Jagex",
"hex": "D3D800"
},
{
"title": "Kagi"
},
{
"title": "KPN",
"color": "00CC00"
},
{
"title": "Kick",
"hex": "53FC19"
},
{
"title": "Kite"
},
{
"title": "Koofr",
"hex": "71BA05"
},
{
"title": "Kraken",
"hex": "5848D5"
},
{
"title": "Kronos"
},
{
"title": "KuCoin",
"hex": "01BC8D"
},
{
"title": "La Poste",
"slug": "laposte"
},
{
"title": "Mastodon",
"altNames": ["mstdn", "fediscience", "mathstodon", "fosstodon"],
"slug": "mastodon",
"hex": "6364FF"
},
{
"title": "Murena",
"altNames": ["eCloud"],
"slug": "ecloud",
"hex": "EC6A55"
},
{
"title": "Microsoft"
},
{
"title": "Mintos"
},
{
"title": "Mozilla"
},
{
"title": "NextDNS"
},
{
"title": "ngrok",
"hex": "858585"
},
{
"title": "Njalla"
},
{
"title": "Notesnook"
},
{
"title": "Notion"
},
{
"title": "NVIDIA"
},
{
"title": "Odido"
},
{
"title": "Parsec"
},
{
"title": "PayPal"
},
{
"title": "pCloud",
"slug": "pCloud",
"hex": "1EBCC5"
},
{
"title": "Peerberry",
"hex": "03E5A5"
},
{
"title": "Pingvin Share",
"hex": "485099"
},
{
"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": "Proxmox"
},
{
"title": "Revolt",
"hex": "858585"
},
{
"title": "Rust Language Forum",
"slug": "rust_language_forum",
"hex": "000000"
},
{
"title": "service-bw"
},
{
"title": "SimpleLogin"
},
{
"title": "Sipgate"
},
{
"title": "Skiff",
"hex": "EF5A3C"
},
{
"title": "Snapchat"
},
{
"title": "Standard Notes",
"slug": "standardnotes",
"hex": "2173E6"
},
{
"title": "TCPShield",
"slug": "tcpshield",
"hex": "FFFFFF"
},
{
"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": "Ubisoft",
"hex": "4285f4"
},
{
"title": "Unity",
"hex": "858585"
},
{
"title": "Uphold",
"slug": "uphold",
"hex": "6FE68A"
},
{
"title": "WHMCS"
},
{
"title": "Windscribe",
"hex": "858585"
},
{
"title": "Wise"
},
{
"title": "X",
"altNames": ["twitter"],
"slug": "x"
},
{
"title": "Yandex",
"altNames": ["Ya", "Яндекс"],
"slug": "Yandex",
"hex": "FC3F1D"
}
]
}

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 21 KiB

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<circle cx="512" cy="512" r="512" style="fill:#263238"/>
<path d="M768 554.7V640c0 23.6-19.1 42.7-42.7 42.7H298.7c-23.6 0-42.7-19.1-42.7-42.7v-85.3c0-23.6 19.1-42.7 42.7-42.7h426.7c23.5 0 42.6 19.1 42.6 42.7zm-42.7-71.1c9.4 0 18.7 1.9 27.4 5.5l-85.8-128.7c-7.9-11.9-21.2-19-35.5-19H392.6c-14.3 0-27.6 7.1-35.5 19L271.3 489c8.7-3.6 18-5.5 27.4-5.5h426.6zm-42.6 85.3c-15.7 0-28.4 12.7-28.4 28.4s12.7 28.4 28.4 28.4 28.4-12.7 28.4-28.4-12.7-28.4-28.4-28.4zm-85.4 0c-15.7 0-28.4 12.7-28.4 28.4s12.7 28.4 28.4 28.4 28.4-12.7 28.4-28.4c.1-15.7-12.7-28.4-28.4-28.4z" style="fill:#fff"/>
</svg>

After

Width:  |  Height:  |  Size: 662 B

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<circle cx="512" cy="512" r="512" style="fill:#ee2f53"/>
<path d="M768 511.51a892.66 892.66 0 0 1-5.18 94.8 138.36 138.36 0 0 1-47.4 84.35S680.6 716 637.64 742.17a869.63 869.63 0 0 1-82.22 43.29 116.91 116.91 0 0 1-47.4 9 119.39 119.39 0 0 1-47.4-8.73 864.24 864.24 0 0 1-82.22-43.29c-43-25.38-77.77-51.51-77.77-51.51-9.63-7.79-19.23-19.17-27.29-31.93a2.19 2.19 0 0 1 1.87-3.35h36.24a3 3 0 0 1 2.26 1 93.83 93.83 0 0 0 11.79 11.44s30.64 22.8 68.44 45a762.9 762.9 0 0 0 72.35 37.78 105.85 105.85 0 0 0 41.71 7.61 103.61 103.61 0 0 0 41.72-7.82 767.21 767.21 0 0 0 72.35-37.78c37.81-22.8 68.44-45 68.44-45a120.5 120.5 0 0 0 41.72-73.62 772.63 772.63 0 0 0 4.56-82.74c-.65-44.76-5.21-82.54-5.21-82.54-2-25.41-21.51-58-41.06-73.61a747 747 0 0 0-68.44-44.3 762.58 762.58 0 0 0-72.35-37.78 105.83 105.83 0 0 0-41.73-7.78 103.61 103.61 0 0 0-41.72 7.82 767.4 767.4 0 0 0-72.35 37.78c-37.81 22.8-68.44 44.3-68.44 44.3a120.46 120.46 0 0 0-13.64 13.39 3 3 0 0 1-2.27 1h-36.1a2.18 2.18 0 0 1-1.89-3.3 137.79 137.79 0 0 1 29-34s34.81-24.63 77.77-50.76a869.5 869.5 0 0 1 82.22-43.29 116.89 116.89 0 0 1 47.4-9 119.4 119.4 0 0 1 47.4 9 864.24 864.24 0 0 1 82.22 43.29 848.16 848.16 0 0 1 77.77 50.76c22.22 17.92 44.44 55.24 46.66 84.35.04.09 5.23 43.38 5.97 94.66Zm-318 76.58h17.1a.89.89 0 0 0 .89-.89v-69.48a.89.89 0 0 0-.89-.89H415a.88.88 0 0 0-.89.85 296 296 0 0 1-3.78 35.51 289.23 289.23 0 0 1-8.1 33.77.89.89 0 0 0 .85 1.14h17.52a.88.88 0 0 0 .83-.6 250.76 250.76 0 0 0 7.12-28.54 228.6 228.6 0 0 0 3.45-25.43h17.13v53.67a.89.89 0 0 0 .87.89ZM256.89 484.17h17a.89.89 0 0 0 .89-.89v-53.67h26a.87.87 0 0 0 .9-.54l6.22-14.93a.89.89 0 0 0-.81-1.23h-50.2a.89.89 0 0 0-.89.89v69.49a.89.89 0 0 0 .89.88Zm322.9 103.92a.89.89 0 0 0 .89-.89v-53.67h26a.87.87 0 0 0 .9-.54l6.23-14.93a.89.89 0 0 0-.81-1.23h-50.3a.89.89 0 0 0-.89.89v69.48a.89.89 0 0 0 .89.89Zm-290.16 25.63C303.27 586 313.31 561.34 327 518a.89.89 0 0 0-.84-1.17h-17.09a.9.9 0 0 0-.86.65 455.34 455.34 0 0 1-15.81 47L275 517.4a.89.89 0 0 0-.83-.58h-17.28a.88.88 0 0 0-.83 1.18L282 588.1c-3.66 7.69-7.72 15.79-12.37 24.81a.89.89 0 0 0 .79 1.3h18.44a.9.9 0 0 0 .77-.49Zm204.2.49h18.44a.9.9 0 0 0 .79-.49C526.7 586 536.75 561.34 550.47 518a.9.9 0 0 0-.84-1.17H532.5a.9.9 0 0 0-.86.65 455.2 455.2 0 0 1-15.81 47l-17.4-47.08a.89.89 0 0 0-.83-.58h-17.28a.88.88 0 0 0-.83 1.18l25.92 70.09c-3.66 7.69-7.72 15.79-12.37 24.81a.89.89 0 0 0 .79 1.31Zm-124-82.78a46.93 46.93 0 0 1 13.7 2.14.92.92 0 0 0 1.08-.46c1.94-3.63 4.29-8.08 6.93-13.52a.91.91 0 0 0 0-.77 1 1 0 0 0-.58-.53 76.92 76.92 0 0 0-22.36-3.44c-24.49 0-35.41 11.5-35.41 37.31 0 26.18 10.92 37.86 35.41 37.86 6.14 0 18.23-1.28 24.07-3.6a.94.94 0 0 0 .53-1.18l-5.06-14a1 1 0 0 0-.49-.53 1 1 0 0 0-.72 0 59.43 59.43 0 0 1-17.1 2.74c-11.69 0-17.26-3.14-17.26-21-.01-14.29 1.7-21.01 17.25-21.01Zm58.65-103.92a46.94 46.94 0 0 1 13.7 2.14.92.92 0 0 0 1.08-.46c1.94-3.63 4.29-8.08 6.93-13.52a.91.91 0 0 0 0-.77 1 1 0 0 0-.58-.53 76.93 76.93 0 0 0-22.36-3.44c-24.49 0-35.41 11.5-35.41 37.31 0 26.18 10.92 37.86 35.41 37.86 6.14 0 18.23-1.28 24.07-3.6a.94.94 0 0 0 .53-1.18l-5.06-14a1 1 0 0 0-.49-.53 1 1 0 0 0-.72 0 59.41 59.41 0 0 1-17.1 2.74c-11.69 0-17.26-3.14-17.26-21-.01-14.29 1.7-21.01 17.25-21.01Zm-49.24 20.73c0 27.26-9.41 37.86-33.55 37.86-23.95 0-33.27-10.6-33.27-37.86 0-26.85 9.32-37.31 33.27-37.31 24.14.01 33.55 10.47 33.55 37.32Zm-19 .27c0-20.16-3.78-21.95-14.59-21.95-10.6 0-14.31 1.79-14.31 21.95 0 18.93 3.4 22 14.31 22 11.16-.04 14.63-3.06 14.63-21.99Zm279.66 68.32h-17.05a.88.88 0 0 0-.89.89v40.58c.41 22.82 8.69 31.76 29.13 31.76a102.78 102.78 0 0 0 33.16-6 .9.9 0 0 0 .6-.87v-65.48a.85.85 0 0 0-.87-.89H667a.88.88 0 0 0-.89.89v53.69a42 42 0 0 1-11.54 1.53c-10.34 0-13.34-2.91-13.73-15v-40.22a.88.88 0 0 0-.94-.88Z" style="fill:#fff"/>
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<circle cx="512" cy="512" r="512" style="fill:#f34"/>
<path d="M267 451.92c-.52-22.65-28-28.12-31.37-29-3.62-.92-3.24-4.88-3.24-4.88h85.08a1.69 1.69 0 0 1 1.3.61 1.73 1.73 0 0 1 .38 1.4l-29.62 181.87a1.71 1.71 0 0 1-1.58 1.45l-44.17 2.56h-.1a1.69 1.69 0 0 1-1.27-.57 1.75 1.75 0 0 1-.41-1.44Zm225.52-33a1.73 1.73 0 0 1 .05 1.67l-87.62 171.6a1.66 1.66 0 0 1-1.39.91l-50.37 2.9h-.09a1.68 1.68 0 0 1-1.64-1.39l-32.31-174.52a1.73 1.73 0 0 1 .36-1.4 1.65 1.65 0 0 1 1.28-.62h43.63a1.68 1.68 0 0 1 1.64 1.4l20.36 116.08L446.23 419a1.67 1.67 0 0 1 1.48-.91H491a1.67 1.67 0 0 1 1.47.8Zm135 36.84a69.67 69.67 0 0 1-.83 18.19L622.81 496c-2.39 13.65-6.86 24.4-13.27 31.95s-13.05 13-19.92 16.46a66.4 66.4 0 0 1-25.86 6.87h-40.51l-5 31a1.65 1.65 0 0 1-1.51 1.4l-41.62 2.44h-.09a1.6 1.6 0 0 1-1.21-.56 1.71 1.71 0 0 1-.39-1.39l26.73-164.74a1.64 1.64 0 0 1 1.61-1.4h82.79c9.35.58 17.54 2.9 24.42 6.92a43.41 43.41 0 0 1 8.22 6.69 35.3 35.3 0 0 1 6.7 10.11 45.78 45.78 0 0 1 3.55 13.97Zm-48 39.37 3.48-21.49a16.62 16.62 0 0 0-.74-6.41 11.77 11.77 0 0 0-3.08-4.35c-1.31-1.2-3.51-1.81-6.52-1.81h-35.29L530 508h34.73a13.15 13.15 0 0 0 7.39-1.82 16.82 16.82 0 0 0 4.58-4.44 17 17 0 0 0 2.75-6.65Zm210.57-77a1.61 1.61 0 0 1 1.26.62 1.83 1.83 0 0 1 .37 1.43l-24.25 156.17a1.69 1.69 0 0 1-1.53 1.47l-57.1 3.49a1.67 1.67 0 0 1-1.65-1.17l-22.69-67.51-10.74 69.44a1.69 1.69 0 0 1-1.53 1.47l-42.85 2.61a1.6 1.6 0 0 1-1.23-.59 1.84 1.84 0 0 1-.4-1.47l25.7-164.56a1.69 1.69 0 0 1 1.63-1.47h42.11a1.66 1.66 0 0 1 1.55 1.16l32.53 96.39 15-96.08a1.69 1.69 0 0 1 1.63-1.47Z" style="fill:#fff"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<circle cx="512" cy="512" r="512" style="fill:#1f4fd0"/>
<path d="M476.88 258.41C532 250.77 589.62 261.39 638 289c54.28 30.53 97 81.45 116.52 140.69 16.71 48.8 17.87 102.62 4 152.26a256.48 256.48 0 0 1-96 137.42c-42.36 31-94.6 48.48-147.1 48.59a252.5 252.5 0 0 1-157.68-51.19c-50.49-37.72-86-94.87-97.39-156.9-11.4-60.07-.78-124.17 30.4-176.86 38.62-67.18 109.25-114.78 186.13-124.6m-76.49 135.95c-20.82-11.19-48.29 2.33-53.85 24.87-14.89 9.82-29.46 20.5-41.72 33.51-14.86 49.8-10.3 105 12.21 151.83C340.53 654.71 384.18 695 436 714.51a215.88 215.88 0 0 0 121.46 9.23 96.58 96.58 0 0 1-12.15-22.89c-14.38-38.71 3.78-87 41.77-104.39 19-11.21 41.77-3.89 62.19-9.39 26-6.25 47.7-25 61.65-47.3 5.37-7.62.86-17.41-4.88-23.37-23-23-53.82-35.25-82.42-49.34-11.78-14.41-13-37.05-29.89-47.73-56.26-37-129.37-44.72-193.3-25m127.89 59.32c-6.17 3.38-13.84 11.27-7.81 18.32 15 0 30 1.74 45 .38 6-1.5 13.15-8.08 8.37-14.38-6.2-2.82-13.09-3.41-19.61-5.18-8.42-2.15-18.06-4.05-25.94.86" style="fill:#fff"/>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1,20 @@
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 339 339">
<defs />
<defs>
<linearGradient id="b" x1="193.9" x2="198.7" y1="166.8" y2="223.3" gradientTransform="rotate(5 4448 -4204) scale(2.93671)" gradientUnits="userSpaceOnUse" xlink:href="#a" />
<linearGradient id="a">
<stop offset="0" />
<stop offset="1" stop-color="#fff9f9" stop-opacity="0" />
</linearGradient>
<linearGradient id="c" x1="167.8" x2="270.6" y1="76.9" y2="64.2" gradientTransform="rotate(5 465 -2050) scale(1.50082)" gradientUnits="userSpaceOnUse" xlink:href="#a" />
</defs>
<g transform="translate(0 42)">
<path fill="url(#b)" d="M160 205l154 42-141 44-155-42z" />
<path fill="url(#c)" d="M160-35v240l154 42 1-253z" />
<path fill="none" stroke-width="1.2" d="M160 205V-35m0 240L18 249m142-44l154 41" />
<path d="M84 109l35 54V98l21-7v91l-27 9-35-54v65l-21 6v-91z" />
<rect width="86.1" height="12.6" x="185" y="97" fill="#bebebe" ry="2.3" transform="skewY(15) scale(.9669 1)" />
<path fill="#bebebe" d="M181 169l99 26 2 3v8c0 1-1 2-2 1l-99-26-2-3v-7c0-2 1-2 2-2zm0-47l99 27 2 2v8l-2 2-99-27c-1 0-2-1-2-3v-7l2-2z" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<circle cx="512" cy="512" r="512" style="fill:#fc3f1d"/>
<path d="M390.3 542.51q0 14 1.37 28.06h-26.54a35.68 35.68 0 0 1-2.06-9.12h-1.14c-5.26 5.48-12.13 10.72-28.14 10.72-21 0-35.23-13-35.23-36.27s18.53-37 60.17-37h4.35v-6.39c0-12.32-5.95-16.88-19-16.88-14 0-30 5.93-37.29 11.41v-22.56a81.65 81.65 0 0 1 40.5-10.48c28.83 0 43 10.49 43 38.33ZM363.07 517h-3.89c-23.34 0-32.71 4.79-32.71 18.25 0 10.27 5.72 17.11 17.16 17.11 9.61 0 16-4.11 19.45-9.13Zm76.64 53.61h-27.22V455.82H439l.69 9.58h1.37c5.49-5.48 15.1-11.41 31.34-11.41 22.19 0 31.34 10 31.34 32.85v83.73h-27.2v-81c0-8.67-4.35-12.78-14-12.78-9.84 0-17.84 5.25-22.88 11.41ZM522.07 514c0-38.33 18.3-60.46 44.61-60.46 11.9 0 22 5.48 28.83 15.74V412h27.22v158.57h-25.17l-1.37-14.83c-7.32 11.18-17.84 17.11-30.65 17.11-25.62 0-43.47-21-43.47-58.86m28.14 0c0 26 7.32 37.41 22.19 37.41 15.33 0 23.11-11.63 23.11-38.33 0-26.46-7.32-38.1-22-38.1-15.56 0-23.33 11.86-23.33 39m144.35 58.86c-34.77 0-54.45-19.39-54.45-59.32 0-34.68 15.79-60 49-60 27.22 0 44.84 15.06 44.84 55v14.37h-65.67c1.14 19.16 8.69 28.52 28.6 28.52 13.27 0 27.45-5 35.92-10.72v22.13c-8 5.47-20.82 10-38.2 10m-26.31-70h38v-2.28c0-14.37-4.12-25.55-17.62-25.55-13 0-19.67 9.58-20.36 27.83m122.62 29-23.11 38.78h-27.71l36.15-59.77-34.77-55h30.65l22 34.68 19.67-34.68H841l-32.49 55.67L846 570.57h-30.65Zm-532.6 38.76v-19.39c0-26.24-4.58-38.1-15.1-60.91L207.28 412H178l42.32 91.48c8.69 18.71 11.21 29.43 11.21 51.1v16Zm18.07-81.9L310.23 412h-28.14l-33.4 76.66Z" style="fill:#fff"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Airtable</title><path fill="#ffba05" d="M11.992 1.966c-.434 0-.87.086-1.28.257L1.779 5.917c-.503.208-.49.908.012 1.116l8.982 3.558a3.266 3.266 0 0 0 2.454 0l8.982-3.558c.503-.196.503-.908.012-1.116l-8.957-3.694a3.255 3.255 0 0 0-1.272-.257z"/><path fill="#39caff" d="M23.4 8.056a.589.589 0 0 0-.222.045l-10.012 3.877a.612.612 0 0 0-.38.564v8.896a.6.6 0 0 0 .821.552L23.62 18.1a.583.583 0 0 0 .38-.551V8.653a.6.6 0 0 0-.6-.596z"/><path fill="#dc043b" d="M.676 8.095a.644.644 0 0 0-.48.19C.086 8.396 0 8.53 0 8.69v8.355c0 .442.515.737.908.54l6.27-3.006.307-.147 2.969-1.436c.466-.22.43-.908-.061-1.092L.883 8.138a.57.57 0 0 0-.207-.044z"/><path fill-opacity="0.25" d="M10.451,12.997l-2.972,1.434l-7.287,-6.144c0.046,-0.046 0.098,-0.084 0.152,-0.114c0.15,-0.09 0.363,-0.114 0.545,-0.042l9.512,3.769c0.483,0.191 0.521,0.869 0.05,1.097"/></svg>

After

Width:  |  Height:  |  Size: 918 B

View 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

View 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

View 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

View 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

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 13 KiB

View 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

View File

@@ -0,0 +1,19 @@
<svg fill="none" viewBox="0 0 500 500">
<defs>
<linearGradient id="a" x1="0" x2="1" y1="1.007" y2="1.007">
<stop stop-color="#F50"/>
<stop offset=".41" stop-color="#F50"/>
<stop offset=".582" stop-color="#FF2000"/>
<stop offset="1" stop-color="#FF2000"/>
</linearGradient>
<linearGradient id="b" x1=".021" x2="1" y1=".996" y2=".996">
<stop stop-color="#FF452A"/>
<stop offset="1" stop-color="#FF2000"/>
</linearGradient>
</defs>
<g fill-rule="evenodd" clip-rule="evenodd">
<path fill="url(#a)" d="m448.34 120.054 11.734-28.753s-14.932-15.98-33.064-34.088c-18.123-18.108-56.513-7.454-56.513-7.454L326.78.214H173.228L129.51 49.76s-38.39-10.654-56.514 7.454C54.867 75.32 39.942 91.3 39.942 91.3l11.733 28.753-14.94 42.606s43.912 166.107 49.06 186.397c10.129 39.939 17.059 55.38 45.851 75.622 28.785 20.236 81.036 55.38 89.561 60.714 8.534 5.32 19.203 14.393 28.8 14.393 9.598 0 20.26-9.074 28.786-14.393 8.533-5.326 60.776-40.478 89.576-60.714 28.785-20.235 35.723-35.683 45.852-75.622 5.14-20.29 49.044-186.397 49.044-186.397l-14.924-42.606z"/>
<path fill="#fff" d="M304.386 90.23c6.398 0 53.854-9.05 53.854-9.05s56.232 67.894 56.232 82.411c0 11.999-4.842 16.692-10.536 22.23-1.19 1.158-2.425 2.347-3.653 3.66l-42.16 44.719a73.683 73.683 0 0 1-1.377 1.408c-4.208 4.223-10.403 10.45-6.039 20.79l.9 2.104c4.795 11.201 10.716 25.03 3.183 39.032-8.017 14.908-21.745 24.858-30.544 23.208-8.792-1.643-29.458-12.43-37.053-17.35-7.595-4.927-31.679-24.764-31.679-32.359 0-6.328 17.318-16.856 25.735-21.98 1.674-1.016 2.995-1.814 3.754-2.33.868-.587 2.323-1.487 4.114-2.597 7.674-4.772 21.542-13.376 21.894-17.185.43-4.709.266-6.086-5.929-17.709-1.314-2.472-2.855-5.115-4.443-7.853-5.898-10.13-12.5-21.471-11.029-29.598 1.643-9.175 16.035-14.432 28.222-18.89a296.51 296.51 0 0 0 4.435-1.635l12.695-4.764c12.17-4.552 25.687-9.613 27.924-10.637 3.082-1.416 2.284-2.777-7.063-3.661a427.508 427.508 0 0 1-4.537-.47c-11.576-1.227-32.922-3.488-43.294-.602a834.722 834.722 0 0 1-6.727 1.838c-11.655 3.153-25.945 7.017-27.322 9.246-.235.391-.47.727-.696 1.04-1.314 1.862-2.167 3.082-.712 10.998.43 2.362 1.322 7 2.425 12.742 3.207 16.801 8.236 43.005 8.87 48.887.086.829.188 1.619.281 2.386.806 6.57 1.338 10.942-6.296 12.687l-1.995.453c-8.62 1.972-21.252 4.873-25.812 4.873-4.568 0-17.208-2.894-25.828-4.873l-1.987-.453c-7.634-1.745-7.094-6.117-6.289-12.687.094-.767.188-1.565.274-2.386.634-5.89 5.67-32.164 8.894-48.958 1.095-5.71 1.978-10.325 2.409-12.671 1.447-7.916.594-9.136-.72-10.998a29.277 29.277 0 0 1-.704-1.04c-1.36-2.23-15.644-6.093-27.306-9.246-2.402-.649-4.693-1.267-6.727-1.838-10.38-2.894-31.718-.625-43.295.603-1.767.187-3.3.352-4.536.469-9.355.884-10.145 2.245-7.063 3.66 2.229 1.025 15.745 6.086 27.908 10.638 4.67 1.745 9.152 3.419 12.703 4.764 1.431.54 2.918 1.08 4.443 1.643 12.186 4.458 26.579 9.707 28.221 18.882 1.463 8.127-5.139 19.468-11.029 29.598-1.595 2.738-3.128 5.381-4.45 7.853-6.187 11.623-6.352 13-5.921 17.709.344 3.817 14.204 12.413 21.885 17.185 1.792 1.11 3.246 2.01 4.115 2.597.766.516 2.08 1.314 3.754 2.33 8.417 5.116 25.734 15.644 25.734 21.98 0 7.587-24.075 27.432-31.678 32.36-7.588 4.927-28.253 15.706-37.053 17.349-8.792 1.642-22.527-8.3-30.537-23.2-7.532-14.01-1.619-27.839 3.176-39.032l.9-2.112c4.372-10.34-1.823-16.567-6.039-20.79a73.346 73.346 0 0 1-1.369-1.408l-42.16-44.718c-1.236-1.307-2.472-2.503-3.66-3.661-5.695-5.53-10.53-10.231-10.53-22.23 0-14.51 56.233-82.412 56.233-82.412s47.448 9.05 53.846 9.05c5.108 0 14.963-3.387 25.241-6.922 2.605-.892 5.233-1.8 7.822-2.66 12.79-4.263 21.323-4.294 21.323-4.294s8.526.031 21.322 4.294c2.582.86 5.218 1.768 7.822 2.66 10.27 3.535 20.134 6.922 25.234 6.922zm-8.143 240.18c10.028 5.162 17.146 8.823 19.837 10.504 3.48 2.175 1.36 6.281-1.815 8.526-3.168 2.23-45.782 35.191-49.912 38.836l-1.681 1.494c-3.982 3.59-9.066 8.166-12.672 8.166-3.598 0-8.682-4.583-12.672-8.166l-1.666-1.494c-4.145-3.645-46.751-36.607-49.92-38.844-3.167-2.237-5.295-6.335-1.814-8.526 2.69-1.673 9.817-5.342 19.86-10.512l9.543-4.92c15.018-7.76 33.751-14.37 36.677-14.37 2.917 0 21.643 6.603 36.677 14.37a2187.6 2187.6 0 0 0 9.558 4.928v.007z"/>
<path fill="url(#b)" d="M370.497 49.759 326.78.214H173.228L129.51 49.76s-38.39-10.654-56.514 7.454c0 0 51.187-4.615 68.779 23.966 0 0 47.448 9.05 53.846 9.05 6.398 0 20.259-5.319 33.055-9.582 12.797-4.263 21.33-4.294 21.33-4.294s8.527.031 21.323 4.294 26.658 9.582 33.056 9.582c6.398 0 53.854-9.05 53.854-9.05 17.591-28.581 68.77-23.966 68.77-23.966-18.123-18.108-56.513-7.454-56.513-7.454z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.5 KiB

View 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

View 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

View 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

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 10 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="349" height="289" viewBox="0 0 349 289" version="1.1"><path d="" stroke="none" fill="#f05c54" fill-rule="evenodd"/><path d="M 239.500 5.541 C 205.730 9.902, 171.702 22.773, 146.551 40.697 C 125.629 55.608, 103.242 80.036, 90.251 102.131 C 83.727 113.228, 76.448 129.673, 73.378 140.250 C 71.855 145.501, 70.437 150.315, 66.679 163 C 65.294 167.675, 62.815 176.450, 61.169 182.500 C 59.524 188.550, 57.071 197.325, 55.718 202 C 54.365 206.675, 50.676 219.725, 47.521 231 C 44.366 242.275, 40.532 255.775, 39.001 261 C 37.470 266.225, 35.995 271.400, 35.722 272.500 C 35.450 273.600, 34.927 275.223, 34.561 276.107 C 33.745 278.077, 36.477 279.236, 47 281.382 C 97.602 291.700, 156.970 279.284, 201 249.173 C 221.648 235.052, 240.499 215.912, 253.638 195.726 C 262.663 181.860, 272.732 160.215, 276.073 147.500 C 276.507 145.850, 277.599 142.025, 278.500 139 C 279.402 135.975, 280.966 130.575, 281.977 127 C 285.631 114.068, 290.042 98.385, 291.539 93 C 292.380 89.975, 293.680 85.475, 294.427 83 C 295.791 78.484, 298.841 67.263, 301.495 57 C 302.277 53.975, 304.994 44.525, 307.533 36 C 313.697 15.306, 314.432 12.032, 313.198 10.798 C 311.811 9.411, 301.685 7.277, 288.038 5.496 C 274.453 3.723, 253.426 3.743, 239.500 5.541" stroke="none" fill="#ec5c54" fill-rule="evenodd"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1 @@
<svg viewBox="0 95 566 376" 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><rect x="0" y="94.5" width="566" height="159.987" style="fill:#009fe3;"/><rect x="0" y="311.513" width="566" height="159.987" style="fill:#009fe3;"/></g></svg>

After

Width:  |  Height:  |  Size: 427 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Discourse</title><path d="M11.992 0C5.482 0 0 5.278 0 11.791V24l11.99-.012c6.51 0 11.79-5.481 11.79-11.991C23.78 5.486 18.495 0 11.992 0"/><path d="M12.108 4.564c-4.009.002-7.306 3.301-7.306 7.31 0 1.215.302 2.411.881 3.479L4.36 19.607l4.749-1.072a7.312 7.312 0 0 0 3.002.645c4.009 0 7.308-3.299 7.308-7.308 0-4.008-3.297-7.306-7.305-7.308z" fill="#fff9ae"/><path d="M17.822 16.395a7.307 7.307 0 0 1-8.713 2.128L4.36 19.61l4.834-.571a7.306 7.306 0 0 0 8.712-11.613 7.306 7.306 0 0 1-.084 8.969" fill="#00aeef"/><path d="M17.413 15.006a7.307 7.307 0 0 1-8.443 3.027L4.36 19.61l4.749-1.075A7.306 7.306 0 0 0 16.56 6.078a7.305 7.305 0 0 1 .853 8.928" fill="#00a94f"/><path d="M6.12 15.515a7.308 7.308 0 0 1 11.79-8.091 7.308 7.308 0 0 0-12.227 7.929L4.36 19.607z" fill="#f15d22"/><path d="M5.683 15.353A7.308 7.308 0 0 1 16.56 6.078 7.308 7.308 0 0 0 5.232 15.24l-.869 4.37z" fill="#d0232b"/></svg>

After

Width:  |  Height:  |  Size: 973 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>dus.net</title><circle cx="12" cy="21.799" r="2.201"/><path d="M5.467 0a2.202 2.202 0 1 0 .001 4.403A2.202 2.202 0 0 0 5.467 0M12 0a2.201 2.201 0 1 0 0 4.402A2.201 2.201 0 0 0 12 0m6.533 4.402a2.201 2.201 0 1 0 0-4.402 2.201 2.201 0 0 0 0 4.402M5.467 6.533a2.201 2.201 0 1 0 0 4.402 2.201 2.201 0 0 0 0-4.402m6.533 0a2.2 2.2 0 1 0-.001 4.4 2.2 2.2 0 0 0 .001-4.4m6.533 0a2.201 2.201 0 1 0-.001 4.403 2.201 2.201 0 0 0 .001-4.403M5.467 13.065a2.202 2.202 0 1 0 .001 4.403 2.202 2.202 0 0 0-.001-4.403m6.533 0a2.201 2.201 0 1 0 0 4.402 2.201 2.201 0 0 0 0-4.402m6.533 0a2.202 2.202 0 1 0 0 4.404 2.202 2.202 0 0 0 0-4.404" fill="#eb311b"/></svg>

After

Width:  |  Height:  |  Size: 721 B

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<circle cx="512" cy="512" r="512" style="fill:#ec6a55"/>
<path d="M256 512.09c.19 141.31 114.69 255.81 256 256a48.36 48.36 0 0 0 0-96.73c-87.84 0-159.27-71.43-159.27-159.27S424.16 352.81 512 352.81c70.92 0 131.25 46.65 151.75 110.91H512a48.36 48.36 0 1 0 0 96.73h207.64A48.43 48.43 0 0 0 768 512.09c-.19-141.33-114.67-255.89-256-256.17-141.16.17-256 115-256 256.17" style="fill:#fff"/>
</svg>

After

Width:  |  Height:  |  Size: 468 B

View 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

View File

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 500 500" fill-rule="evenodd">
<path d="m191.196 323.447-6.552 16.497h12.986l-6.434-16.497zm38.469-171.75v-48.161c0-7.677-3.528-11.222-10.886-11.222h-11.977v70.622h11.977c7.358 0 10.886-3.561 10.886-11.221v-.017zM426.175.19H73.79c-28.592 0-39.108 10.533-39.108 39.108v344.81l.42 9.02c.639 6.25.79 12.297 6.586 19.15a121.454 121.454 0 0 0 6.5 5.074l8.954 4.166 173.514 72.688c9.02 4.116 12.767 5.745 19.318 5.594h.05c6.552.134 10.298-1.478 19.32-5.594l173.513-72.688 8.954-4.166 6.5-5.073c5.796-6.888 5.93-12.935 6.586-19.15a88.697 88.697 0 0 0 .42-9.022V39.315c0-28.592-10.55-39.108-39.108-39.108h-.033V.19zM271.948 66.58h29.146v191.57h-29.146V66.579zm1.965 238.222h16.967v57.955h-15.992v-33.295L260.07 352.14h-.336l-14.732-22.51v33.126h-15.74v-57.955h16.966l13.826 22.46 13.825-22.46h.034zM177.656 66.579h45.743c23.686 0 35.411 11.759 35.411 35.58v50.9c0 23.803-11.708 35.579-35.411 35.579h-16.597v69.53h-29.146V66.578zm-79.44 0h64.825V93.12h-35.68v54.175h34.32v26.542h-34.32v57.754h36.235v26.542h-65.38V66.58zm55.72 288.416c-6.131 5.04-14.665 8.937-25.164 8.937-18.059 0-31.548-12.43-31.548-29.985v-.168c0-16.883 13.237-30.154 31.212-30.154 10.197 0 17.387 3.141 23.518 8.45l-9.44 11.339c-4.15-3.477-8.283-5.46-13.994-5.46-8.366 0-14.817 7.022-14.817 15.909v.168a15.287 15.287 0 0 0 15.74 16.076c3.898 0 6.888-.84 9.274-2.402v-7.022h-11.423v-11.76h26.66v26.09l-.018-.018zm29.65-50.597h15.488l24.66 58.375h-17.218l-4.233-10.365h-22.376l-4.15 10.365h-16.882l24.66-58.375h.052zm65.078 155.068L166.99 431.38h166.828l-85.153 28.087zm99.902-96.676H301.53v-57.955h46.616v13.657h-30.708v8.786h27.835v12.683h-27.835v9.188h31.145v13.658-.034l-.017.017zM316.53 224.218V100.512c0-23.804 11.708-35.58 35.411-35.58h14.162c23.686 0 35.142 11.508 35.142 35.311v39.141h-28.59V101.89c0-7.677-3.562-11.222-10.886-11.222h-4.906c-7.61 0-11.17 3.561-11.17 11.222v120.95c0 7.677 3.56 11.222 11.17 11.222h5.46c7.358 0 10.885-3.562 10.885-11.222v-43.223H401.8v44.6c0 23.804-11.709 35.597-35.412 35.597h-14.447c-23.686 0-35.411-11.759-35.411-35.596zm86.765 120.681c0 11.843-9.357 18.865-23.434 18.865-10.281 0-20.041-3.225-27.164-9.609l8.937-10.7a29.734 29.734 0 0 0 18.781 6.938c4.317 0 6.636-1.479 6.636-3.982v-.168c0-2.402-1.899-3.729-9.777-5.543-12.347-2.822-21.872-6.3-21.872-18.227v-.168c0-10.785 8.534-18.562 22.46-18.562 9.86 0 17.554 2.654 23.854 7.693l-8.03 11.34c-5.291-3.73-11.087-5.712-16.244-5.712-3.898 0-5.796 1.646-5.796 3.73v.167c0 2.654 1.982 3.814 10.029 5.628 13.321 2.906 21.62 7.19 21.62 18.058v.252z"/>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,6 @@
<svg width="1000" height="1000" viewBox="0 0 1000 1000" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="1000" height="1000" fill="#0B042C"/>
<path fill-rule="evenodd" clip-rule="evenodd"
d="M530.713 484.942C531.477 480.62 532.627 476.603 534.17 472.891C537.226 465.545 541.723 459.817 547.668 455.715C553.609 451.613 561.078 449.562 570.079 449.562C578.905 449.562 586.163 451.445 591.853 455.202C597.538 458.963 601.824 464.219 604.714 470.969C606.489 475.125 607.714 479.786 608.396 484.942H530.713ZM607.134 434.692C597.369 428.198 585.017 424.949 570.079 424.949C558.702 424.949 548.77 426.959 540.282 430.974C531.791 434.992 524.747 440.375 519.146 447.126C513.543 453.881 509.339 461.483 506.539 469.943C503.738 478.404 502.337 487.165 502.337 496.223V500.838C502.337 509.726 503.738 518.399 506.539 526.859C509.339 535.321 513.543 542.928 519.146 549.678C524.747 556.432 531.918 561.855 540.664 565.958C549.406 570.059 559.721 572.111 571.607 572.111C582.641 572.111 592.446 570.272 601.021 566.598C609.591 562.924 616.723 557.585 622.412 550.574C628.099 543.568 631.964 535.364 634 525.962H607.261C605.732 531.775 601.868 536.819 595.673 541.089C589.473 545.363 581.452 547.498 571.607 547.498C561.929 547.498 553.991 545.407 547.795 541.217C541.596 537.03 537.012 531.218 534.043 523.783C531.736 518.011 530.337 511.641 529.822 504.684H636.293V493.146C636.293 481.353 633.873 470.288 629.034 459.945C624.196 449.605 616.894 441.189 607.134 434.692ZM483.864 429.564H453.813L397.785 497.295V388.77H369.008V567.495H397.785V503.145H414.595L463.999 567.495H496.852L434.99 488.47L483.864 429.564ZM327.502 498.787C318.501 491.953 306.364 487.762 291.084 486.224L277.332 484.687C269.52 483.832 263.918 481.995 260.523 479.174C257.126 476.354 255.43 472.553 255.43 467.764C255.43 462.297 257.723 457.766 262.306 454.177C266.891 450.587 273.596 448.793 282.425 448.793C291.421 448.793 298.253 450.676 302.926 454.433C307.593 458.195 310.012 462.637 310.184 467.764H336.668C336.328 453.921 331.194 443.409 321.262 436.23C311.329 429.052 298.382 425.462 282.425 425.462C271.896 425.462 262.644 427.174 254.667 430.59C246.684 434.01 240.405 438.882 235.821 445.204C231.236 451.529 228.944 459.221 228.944 468.278C228.944 479.903 233.06 489.089 241.296 495.838C249.529 502.592 260.606 506.734 274.53 508.273L288.282 509.554C297.617 510.58 304.326 512.591 308.4 515.58C312.476 518.572 314.512 522.718 314.512 528.014C314.512 533.827 311.796 538.653 306.364 542.499C300.928 546.345 293.205 548.267 283.189 548.267C271.984 548.267 263.918 546.089 258.995 541.73C254.068 537.371 251.356 532.629 250.845 527.502H224.615C224.953 541.345 230.218 552.158 240.405 559.933C250.591 567.708 264.853 571.599 283.189 571.599C294.561 571.599 304.621 569.759 313.367 566.086C322.109 562.412 328.902 557.241 333.741 550.575C338.579 543.909 340.999 536.218 340.999 527.502C340.999 515.194 336.499 505.625 327.502 498.787ZM699.957 389.056H672.707V429.564H649.787V451.099H672.707V518.784C672.707 531.434 674.7 541.433 678.691 548.779C682.679 556.131 688.535 561.342 696.263 564.419C703.987 567.495 713.454 569.034 724.66 569.034H745.032V543.908H722.113C714.982 543.908 709.506 541.946 705.687 538.012C701.867 534.082 699.957 528.526 699.957 521.348V451.099H745.032V429.564H699.957V389.056ZM929.153 451.099V429.564H884.078V389.056H856.828V429.564H833.907V451.099H856.828V518.784C856.828 531.434 858.821 541.433 862.812 548.779C866.8 556.131 872.656 561.342 880.383 564.419C888.108 567.495 897.574 569.034 908.78 569.034H929.153V543.908H906.234C899.103 543.908 893.627 541.946 889.808 538.012C885.986 534.082 884.078 528.526 884.078 521.348V451.099H929.153ZM764.131 451.869H784.505V567.496H813.282V429.564H764.131V451.869ZM270.186 409.649H297.239V389.009H270.186V409.649ZM785.737 409.649H812.791V389.009H785.737V409.649ZM98.1558 484.942C98.9189 480.62 100.07 476.603 101.613 472.891C104.669 465.545 109.165 459.817 115.111 455.715C121.05 451.613 128.52 449.562 137.522 449.562C146.348 449.562 153.605 451.445 159.296 455.202C164.982 458.963 169.267 464.219 172.156 470.969C173.931 475.125 175.155 479.786 175.839 484.942H98.1558ZM174.576 434.692C164.811 428.198 152.46 424.949 137.522 424.949C126.144 424.949 116.212 426.959 107.725 430.974C99.2339 434.992 92.1892 440.375 86.5877 447.126C80.9849 453.881 76.7825 461.483 73.9817 469.943C71.1809 478.404 69.7793 487.165 69.7793 496.223V500.838C69.7793 509.726 71.1809 518.399 73.9817 526.859C76.7825 535.321 80.9849 542.928 86.5877 549.678C92.1892 556.432 99.3609 561.855 108.106 565.958C116.849 570.059 127.162 572.111 139.049 572.111C150.084 572.111 159.888 570.272 168.464 566.598C177.035 562.924 184.165 557.585 189.855 550.574C195.541 543.568 199.405 535.364 201.443 525.962H174.703C173.175 531.775 169.311 536.819 163.115 541.089C156.915 545.363 148.895 547.498 139.049 547.498C129.372 547.498 121.433 545.407 115.238 541.217C109.038 537.03 104.455 531.218 101.485 523.783C99.1778 518.011 97.7786 511.641 97.2634 504.684H203.736V493.146C203.736 481.353 201.316 470.288 196.476 459.945C191.638 449.605 184.337 441.189 174.576 434.692ZM270.186 608.075H297.239V588.083H270.186V608.075Z"
fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="400" height="400" viewBox="0 0 400 400" version="1.1"><path d="M 187 53.170 C 181.955 55.065, 176.921 59.801, 126.212 110.368 C 80.783 155.668, 70.440 166.481, 68.212 171 L 65.500 176.500 65.500 231 L 65.500 285.500 68.432 291.290 C 72.004 298.344, 78.253 304.290, 85.825 307.840 L 91.500 310.500 199.500 310.500 L 307.500 310.500 314 307.387 C 322.095 303.510, 327.422 298.258, 331.131 290.500 L 333.998 284.500 333.998 231 L 333.998 177.500 330.937 171 C 328.156 165.096, 323.132 159.746, 276.187 112.685 C 247.759 84.186, 222.475 59.389, 220 57.580 C 210.808 50.860, 197.783 49.120, 187 53.170 M 194.500 75.146 C 191.385 76.837, 91.050 177.162, 89.435 180.200 C 88.246 182.438, 88 191.073, 88 230.549 C 88 284.367, 87.895 283.540, 95.097 286.422 C 98.598 287.823, 110.384 288, 200.052 288 C 285.090 288, 301.602 287.775, 304.466 286.579 C 311.086 283.813, 311 284.557, 311 229.810 L 311 180.521 257.740 127.260 C 205.048 74.569, 204.436 74, 200.490 74.030 C 198.295 74.047, 195.600 74.549, 194.500 75.146 M 196.670 105.737 C 194.511 106.051, 184.441 115.634, 154.170 146.182 C 132.352 168.200, 113.715 187.404, 112.757 188.857 C 111.179 191.249, 111.013 194.987, 111.007 228.250 L 111 265 122.500 265 L 134 265 134.049 232.250 L 134.098 199.500 166.899 166.262 L 199.700 133.024 232.350 166.062 L 265 199.099 265 232.050 L 265 265 276.500 265 L 288 265 287.965 228.250 C 287.939 201.311, 287.605 190.933, 286.715 189.376 C 284.568 185.622, 206.799 107.069, 204.610 106.444 C 201.087 105.438, 199.623 105.308, 196.670 105.737 M 178.674 187.570 L 158 209.191 158 237.128 L 158 265.066 169.250 264.783 L 180.500 264.500 181 241.405 L 181.500 218.310 190.485 208.543 L 199.469 198.776 209.235 208.895 L 219 219.015 219 242.008 L 219 265 230.500 265 L 242 265 241.947 237.250 L 241.895 209.500 221.381 188 C 210.098 176.175, 200.525 166.376, 200.108 166.225 C 199.690 166.073, 190.045 175.679, 178.674 187.570" stroke="none" fill="#eef8fb" fill-rule="evenodd"/><path d="M -0 200.002 L -0 400.005 200.250 399.752 L 400.500 399.500 400.752 199.750 L 401.005 0 200.502 0 L 0 0 -0 200.002 M 0.490 200.500 C 0.490 310.500, 0.607 355.352, 0.750 300.170 C 0.893 244.989, 0.893 154.989, 0.750 100.170 C 0.607 45.352, 0.490 90.500, 0.490 200.500 M 187 53.170 C 181.955 55.065, 176.921 59.801, 126.212 110.368 C 80.783 155.668, 70.440 166.481, 68.212 171 L 65.500 176.500 65.500 231 L 65.500 285.500 68.432 291.290 C 72.004 298.344, 78.253 304.290, 85.825 307.840 L 91.500 310.500 199.500 310.500 L 307.500 310.500 314 307.387 C 322.095 303.510, 327.422 298.258, 331.131 290.500 L 333.998 284.500 333.998 231 L 333.998 177.500 330.937 171 C 328.156 165.096, 323.132 159.746, 276.187 112.685 C 247.759 84.186, 222.475 59.389, 220 57.580 C 210.808 50.860, 197.783 49.120, 187 53.170 M 194.500 75.146 C 191.385 76.837, 91.050 177.162, 89.435 180.200 C 88.246 182.438, 88 191.073, 88 230.549 C 88 284.367, 87.895 283.540, 95.097 286.422 C 98.598 287.823, 110.384 288, 200.052 288 C 285.090 288, 301.602 287.775, 304.466 286.579 C 311.086 283.813, 311 284.557, 311 229.810 L 311 180.521 257.740 127.260 C 205.048 74.569, 204.436 74, 200.490 74.030 C 198.295 74.047, 195.600 74.549, 194.500 75.146 M 196.670 105.737 C 194.511 106.051, 184.441 115.634, 154.170 146.182 C 132.352 168.200, 113.715 187.404, 112.757 188.857 C 111.179 191.249, 111.013 194.987, 111.007 228.250 L 111 265 122.500 265 L 134 265 134.049 232.250 L 134.098 199.500 166.899 166.262 L 199.700 133.024 232.350 166.062 L 265 199.099 265 232.050 L 265 265 276.500 265 L 288 265 287.965 228.250 C 287.939 201.311, 287.605 190.933, 286.715 189.376 C 284.568 185.622, 206.799 107.069, 204.610 106.444 C 201.087 105.438, 199.623 105.308, 196.670 105.737 M 178.674 187.570 L 158 209.191 158 237.128 L 158 265.066 169.250 264.783 L 180.500 264.500 181 241.405 L 181.500 218.310 190.485 208.543 L 199.469 198.776 209.235 208.895 L 219 219.015 219 242.008 L 219 265 230.500 265 L 242 265 241.947 237.250 L 241.895 209.500 221.381 188 C 210.098 176.175, 200.525 166.376, 200.108 166.225 C 199.690 166.073, 190.045 175.679, 178.674 187.570" stroke="none" fill="#244cf9" fill-rule="evenodd"/></svg>

After

Width:  |  Height:  |  Size: 4.1 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.9 KiB

View 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

View File

@@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" fill="none" aria-labelledby="tanukiHomeTablet" viewBox="0 0 500 500">
<path fill="#E24329" d="m491.105 199.768-.699-1.787-67.837-177.004a17.733 17.733 0 0 0-6.97-8.421 18.14 18.14 0 0 0-20.938 1.114 17.747 17.747 0 0 0-6.011 9.147L342.785 163.18H157.23L111.367 22.817a17.75 17.75 0 0 0-6.011-9.147 17.983 17.983 0 0 0-20.911-1.114 17.646 17.646 0 0 0-6.997 8.421L9.533 198.214l-.699 1.762a126.167 126.167 0 0 0 41.77 145.65l.259.182.596.466 103.466 77.45 51.15 38.74 31.095 23.552a21.038 21.038 0 0 0 25.367 0l31.094-23.552 51.175-38.74 104.063-77.916.284-.208a126.13 126.13 0 0 0 45.357-65.902 126.126 126.126 0 0 0-3.405-79.93z"/>
<path fill="#FC6D26" d="m491.108 199.768-.699-1.787a229.975 229.975 0 0 0-91.313 41.07L250.128 351.947c50.787 38.403 94.993 71.776 94.993 71.776l104.062-77.916.285-.208a126.138 126.138 0 0 0 41.64-145.832z"/>
<path fill="#FCA326" d="m155.005 423.724 51.072 38.74 31.094 23.552a21.041 21.041 0 0 0 25.368 0l31.094-23.552 51.177-38.74s-44.207-33.373-94.994-71.776l-94.811 71.776z"/>
<path fill="#FC6D26" d="M100.847 239.155A229.413 229.413 0 0 0 9.534 198.11l-.7 1.762a126.16 126.16 0 0 0 41.77 145.754l.26.18.595.467 103.466 77.45 95.2-71.776-149.278-112.793z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View 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

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.1 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 118 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 4.9 KiB

View 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

View File

@@ -0,0 +1,4 @@
<svg width="512" height="512" viewBox="0 0 512 512" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M410.121 0H101.879C45.6125 0 0 45.6125 0 101.879V410.121C0 466.388 45.6125 512 101.879 512H410.121C466.388 512 512 466.388 512 410.121V101.879C512 45.6125 466.388 0 410.121 0Z" fill="#FFB319"/>
<path d="M297.731 375.79H211.319C187.568 375.79 183.953 350.318 188.38 340.093C190.491 335.241 195.271 328.218 199.795 322.48C216.994 331.976 236.322 336.947 255.968 336.927C286.917 336.891 316.588 324.58 338.47 302.695C360.354 280.81 372.661 251.138 372.694 220.189C372.701 203.83 369.261 187.652 362.598 172.711C355.935 157.769 346.199 144.4 334.023 133.473L336.704 130.756C339.84 127.566 343.656 125.126 347.868 123.618C352.079 122.11 356.576 121.573 361.025 122.047L375.071 123.539V66.3224H350.52C337.213 66.3293 324.213 70.3151 313.189 77.7681C302.166 85.2211 293.623 95.7999 288.658 108.146C278.02 105.031 266.992 103.45 255.908 103.452C224.958 103.487 195.286 115.798 173.4 137.682C151.516 159.568 139.205 189.239 139.17 220.189C139.139 245.073 147.099 269.309 161.877 289.329L154.963 294.654C153.931 295.443 152.755 296.437 151.543 297.578C127.89 319.629 117.045 348.523 123.243 380.654C126.64 398.255 141.584 416.535 156.795 426.227C167.619 433.032 180.132 436.671 192.917 436.731L289.798 432.801C295.179 432.788 300.475 434.138 305.194 436.723C309.913 439.308 313.901 443.046 316.787 447.587L329.45 470.44L389.505 450.365L379.232 427.998C372.064 412.411 360.575 399.208 346.13 389.955C331.684 380.701 314.887 375.786 297.731 375.79ZM255.968 164.355C270.758 164.381 284.936 170.268 295.394 180.727C305.853 191.185 311.739 205.363 311.765 220.153C311.739 234.943 305.853 249.12 295.394 259.579C284.936 270.038 270.758 275.924 255.968 275.95C241.178 275.924 227.001 270.038 216.542 259.579C206.083 249.12 200.196 234.943 200.17 220.153C200.196 205.363 206.083 191.185 216.542 180.727C227.001 170.268 241.178 164.381 255.968 164.355Z" fill="#191919"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 386 KiB

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewBox="0 0 500 500">
<path fill="#f6461a" d="M166.667 83.333 0 250l166.667 166.667L333.333 250 500 83.333H166.667z" class="cls-1"/>
<path fill="#db342c" d="M166.667 416.667 333.333 250 500 416.667H166.667z" class="cls-2"/>
</svg>

After

Width:  |  Height:  |  Size: 296 B

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<circle cx="512" cy="512" r="512" style="fill:#263238"/>
<path d="M768 554.7V640c0 23.6-19.1 42.7-42.7 42.7H298.7c-23.6 0-42.7-19.1-42.7-42.7v-85.3c0-23.6 19.1-42.7 42.7-42.7h426.7c23.5 0 42.6 19.1 42.6 42.7zm-42.7-71.1c9.4 0 18.7 1.9 27.4 5.5l-85.8-128.7c-7.9-11.9-21.2-19-35.5-19H392.6c-14.3 0-27.6 7.1-35.5 19L271.3 489c8.7-3.6 18-5.5 27.4-5.5h426.6zm-42.6 85.3c-15.7 0-28.4 12.7-28.4 28.4s12.7 28.4 28.4 28.4 28.4-12.7 28.4-28.4-12.7-28.4-28.4-28.4zm-85.4 0c-15.7 0-28.4 12.7-28.4 28.4s12.7 28.4 28.4 28.4 28.4-12.7 28.4-28.4c.1-15.7-12.7-28.4-28.4-28.4z" style="fill:#fff"/>
</svg>

After

Width:  |  Height:  |  Size: 662 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 59 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 106 KiB

View 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 &#9;&#9;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 &#9;"/> <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 &#9;"/> <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 &#9;&#9;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 &#9;"/> <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 &#9;"/> <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 &#9;"/> <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 &#9;&#9;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

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 523 KiB

View 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

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Mastodon</title><path d="M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38.265-.061.527-.132.786-.213.585-.184 1.27-.39 1.774-.753a.057.057 0 0 0 .023-.043v-1.809a.052.052 0 0 0-.02-.041.053.053 0 0 0-.046-.01 20.282 20.282 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.593 5.593 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422.038-.008.077-.015.11-.024 2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545zm-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102c0-1.31.337-2.35 1.011-3.12.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164.675.77 1.012 1.81 1.012 3.12z"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View 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

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.8 KiB

View 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

View 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)">&gt;<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

View 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

View 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

View 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

View 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

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 70 KiB

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<circle cx="512" cy="512" r="512" style="fill:#1ebcc5"/>
<path d="M550.35 470.76a16.57 16.57 0 0 1-16.56 16.57h-41.57V454.2h41.56a16.56 16.56 0 0 1 16.57 16.56Zm92.14 17.67a132 132 0 1 1-132-132 132 132 0 0 1 131.99 132Zm-52.81-17.69a56 56 0 0 0-56.06-56h-62.5A21.28 21.28 0 0 0 449.83 436v115.42a21.28 21.28 0 1 0 42.56 0v-24.56h41.22v-.08a56.05 56.05 0 0 0 56.06-56.04ZM805.06 583.1a94.06 94.06 0 0 1-92.18 94v.16H358.36a139.36 139.36 0 0 1-17.51-277.62 187.32 187.32 0 0 0-17.08 78c0 1.52.14 3 .18 4.53 3.58-100.84 86.4-181.49 188.1-181.49 102 0 185 81.11 188.11 182.33.07-1.79.16-3.57.16-5.37a185.38 185.38 0 0 0-16.94-77.76 78.53 78.53 0 0 1 45.7 147.8 79.17 79.17 0 0 0 40.82-37.94 93.92 93.92 0 0 1 35.16 73.36Zm-143-94.45a151.53 151.53 0 1 0-151.49 151.54 151.52 151.52 0 0 0 151.52-151.53Z" style="fill:#fff"/>
</svg>

After

Width:  |  Height:  |  Size: 902 B

View 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

View 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

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 36 KiB

View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 943.11 911.62"><script xmlns=""/>
<defs>
<style>
.cls-1 {
fill: #fff;
}
.cls-2 {
fill: #37474f;
}
.cls-3 {
fill: #46509e;
}
</style>
</defs>
<ellipse class="cls-3" cx="471.56" cy="454.28" rx="471.56" ry="454.28"/>
<g>
<g>
<ellipse class="cls-2" cx="471.56" cy="390.28" rx="233.66" ry="207"/>
<path class="cls-2" d="m705.22,848.95c-36.69,21.14-123.09,64.33-240.64,62.57-109.54-1.63-190.04-41.45-226.68-62.57v-454.19h467.33v454.19Z"/>
</g>
<path class="cls-1" d="m658.81,397.7v475.8c-36.98,15.7-98.93,36.54-177.98,38.04-88.67,1.69-157.75-21.73-196.2-38.04v-475.8c0-95.55,83.77-173.02,187.09-173.02s187.09,77.47,187.09,173.02Z"/>
<polygon class="cls-3" points="565.02 431.68 471.56 514.49 378.09 431.68 565.02 431.68"/>
<ellipse class="cls-2" cx="378.09" cy="369.58" rx="23.37" ry="20.7"/>
<ellipse class="cls-2" cx="565.02" cy="369.58" rx="23.37" ry="20.7"/>
<path class="cls-2" d="m658.49,400.63c0-40.04-36.59-72.45-81.78-72.45s-81.78,32.41-81.78,72.45c0,11.14,2.81,21.65,7.9,31.05h-62.54c5.1-9.4,7.9-19.91,7.9-31.05,0-40.04-36.59-72.45-81.78-72.45s-81.78,32.41-81.78,72.45l-46.73-10.35c0-114.32,104.63-207,233.66-207s233.66,92.69,233.66,207l-46.73,10.35Z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 671 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 65 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 27 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.0 KiB

View 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

View 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

View 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

Some files were not shown because too many files have changed in this diff Show More