Compare commits

...

985 Commits

Author SHA1 Message Date
4d333907bd Fix taps on mentions in note drafts to not redirect to other Nostr clients
Changelog-Fixed: Fix taps on mentions in note drafts to not redirect to other Nostr clients
2023-06-25 09:27:57 -04:00
422167f7aa Add indication of followers you know in a profile
Changelog-Added: Add indication of followers you know in a profile
2023-06-25 09:38:57 +02:00
William Casarin
de84456a57 mediaurl: fix is_img returning true for videos
This makes the image preloader try to download videos... not good.
2023-06-25 09:38:46 +02:00
William Casarin
b70bf1f647 v1.5-6 2023-06-25 09:38:46 +02:00
William Casarin
3db77a16a0 Fix timeline from moving when you're scrolling 2023-06-24 17:39:24 +02:00
William Casarin
2256e2e625 v1.5-5 changelog 2023-06-24 08:39:51 +02:00
William Casarin
a641f972ff v1.5-5 2023-06-24 08:38:02 +02:00
William Casarin
c5846008f2 fix weird quirk with universe toolbar filter button 2023-06-24 08:27:12 +02:00
William Casarin
62bf767be5 nozaps: fix some tests 2023-06-23 20:46:27 +02:00
William Casarin
c00746758e nozaps: disable donation star unless you're on freedom edition 2023-06-23 20:46:27 +02:00
William Casarin
a89f90d7ee nozaps: hide SupportDamus on appstore builds 2023-06-23 20:46:27 +02:00
William Casarin
07d0818ee8 nozaps: disable zap delay on appstore since we don't have 1-tap anymore 2023-06-23 20:46:27 +02:00
William Casarin
0ce7414488 nozaps: disable donation zaps on appstore 2023-06-23 20:46:27 +02:00
William Casarin
f090596067 nozaps: switch to global sheet when zapping
This fixes many popping bugs

Changelog-Fixed: Fix zap sheet popping
2023-06-23 20:46:27 +02:00
William Casarin
61b3ad2990 nozaps: update zap sheet style to make it clear its a user zap 2023-06-23 20:46:27 +02:00
William Casarin
8b24befaf7 nozaps: don't include zaps in thread replies 2023-06-23 20:46:27 +02:00
William Casarin
57789de5cd nozaps: hide zap total 2023-06-23 20:46:27 +02:00
William Casarin
62c539afbf nozaps: never show orange button 2023-06-23 20:46:27 +02:00
William Casarin
b53e6db96b nozaps: show the user you are zapping in CustomizeZapView
This should make it clear that it's definitely not a note zap
2023-06-23 20:46:27 +02:00
William Casarin
b0d6d33573 nozaps: hide zap details on notes for now 2023-06-23 20:46:27 +02:00
William Casarin
c5b0e539d8 nozaps: don't show note zaps in notifications
apple sucks
2023-06-23 20:46:27 +02:00
William Casarin
601fa49a6e nozaps: don't show top zaps or zap replies
We can't associate zaps with notes anymore
2023-06-23 20:46:27 +02:00
William Casarin
216029410b nozaps: add nozaps setting
This will be used to restore functionality in the future
2023-06-23 20:46:27 +02:00
William Casarin
a5b2a5c8b9 tests: disable invalid tests 2023-06-23 20:46:27 +02:00
William Casarin
980394bf0b Revert "ui: remove nip05 badge on events"
This reverts commit d205be3e0a.
2023-06-23 20:46:17 +02:00
William Casarin
ed73899e5b Revert "Initial actionbar model refactor"
This reverts commit d0eb86dfa3.
2023-06-23 12:04:54 +02:00
William Casarin
d0eb86dfa3 Initial actionbar model refactor 2023-06-23 11:53:53 +02:00
William Casarin
337c4de337 reduce ContentView redraws
Remove observability from the home model, and use inner models for
updating specific parts of the UI, such as notification dots on the tab
bar.
2023-06-23 11:51:51 +02:00
William Casarin
e885f38c54 refactor: switch CustomizeZapView to use a model
Changelog-Fixed: Fix CustomizeZapView from randomly disappearing
2023-06-23 11:51:51 +02:00
William Casarin
3dbdc42d8b view/refactor: remove extra spacer 2023-06-23 11:46:42 +02:00
William Casarin
1389e50b8e fix some warnings 2023-06-23 11:46:42 +02:00
William Casarin
092d84f499 eventholder: don't push view updates on queued events 2023-06-23 11:46:42 +02:00
William Casarin
c6a226fff8 Revert "ping: switch to async style"
This was causing crashes =/
2023-06-23 11:46:42 +02:00
William Casarin
e023d1e9cb settings: turn off wallet selector by default
This is a bit confusing for new users
2023-06-23 11:46:42 +02:00
William Casarin
e6b8e39106 actionbar: rename accessibility label boosts to reposts 2023-06-23 11:46:42 +02:00
William Casarin
ced028755c debug: InnerTimeline render counts 2023-06-23 11:46:42 +02:00
William Casarin
dabf737654 Merge remote-tracking branch 'github/translations' 2023-06-22 10:25:14 +02:00
William Casarin
72d141af61 wording: send a "message" with the zap, not "reply" 2023-06-22 10:23:56 +02:00
William Casarin
4d43e590e0 view: Add ZapUserView
This will be used to make it clear that we are zapping a user
2023-06-22 10:23:56 +02:00
William Casarin
c413589582 eventgroup: add is_note_zap
We'll need this to hide note zaps as per apple's insanely dumb
guidelines.
2023-06-22 10:23:56 +02:00
William Casarin
c218e0dcdd refactor: use zap.is_anon instead of recomputing
I believe this code was written before we computed is_anon inside the
zap.
2023-06-22 10:23:56 +02:00
William Casarin
892765eaa5 UserView: Make spacer optional
We need this to center this view sometimes. We should look into removing
this in the future?
2023-06-22 10:23:56 +02:00
William Casarin
455f1f7e1f view/refactor: remove redundant view structs 2023-06-22 10:23:56 +02:00
William Casarin
797762e7d2 view/refactor: move sheet handler in CustomizeZapView 2023-06-22 10:23:56 +02:00
transifex-integration[bot]
efe6689bfb Translate Localizable.stringsdict in ja
100% translated source file: 'Localizable.stringsdict'
on 'ja'.
2023-06-22 01:14:40 +00:00
transifex-integration[bot]
e30541c37e Translate Localizable.strings in ja
100% translated source file: 'Localizable.strings'
on 'ja'.
2023-06-22 01:12:38 +00:00
transifex-integration[bot]
b126257d05 Translate Localizable.stringsdict in es_ES
100% translated source file: 'Localizable.stringsdict'
on 'es_ES'.
2023-06-21 23:22:27 +00:00
transifex-integration[bot]
fde21559c7 Translate Localizable.strings in es_ES
100% translated source file: 'Localizable.strings'
on 'es_ES'.
2023-06-21 23:15:17 +00:00
transifex-integration[bot]
d551b5f28b Translate Localizable.strings in es_ES
100% translated source file: 'Localizable.strings'
on 'es_ES'.
2023-06-21 23:14:48 +00:00
transifex-integration[bot]
961ff6f28b Translate Localizable.strings in fr
100% translated source file: 'Localizable.strings'
on 'fr'.
2023-06-21 15:20:57 +00:00
transifex-integration[bot]
fdfd0f0275 Translate Localizable.strings in nl
100% translated source file: 'Localizable.strings'
on 'nl'.
2023-06-21 15:16:19 +00:00
transifex-integration[bot]
8b1b597f2a Translate Localizable.stringsdict in nl
100% translated source file: 'Localizable.stringsdict'
on 'nl'.
2023-06-21 15:16:05 +00:00
transifex-integration[bot]
f3de41ff08 Translate Localizable.stringsdict in vi
100% translated source file: 'Localizable.stringsdict'
on 'vi'.
2023-06-21 14:33:19 +00:00
transifex-integration[bot]
bf010be27a Translate Localizable.strings in vi
100% translated source file: 'Localizable.strings'
on 'vi'.
2023-06-21 14:32:11 +00:00
transifex-integration[bot]
b013c1f1fd Translate Localizable.stringsdict in zh_HK
100% translated source file: 'Localizable.stringsdict'
on 'zh_HK'.
2023-06-21 12:37:01 +00:00
transifex-integration[bot]
50dfa9e2ed Translate Localizable.stringsdict in zh_TW
100% translated source file: 'Localizable.stringsdict'
on 'zh_TW'.
2023-06-21 12:36:51 +00:00
transifex-integration[bot]
78450792cb Translate Localizable.strings in zh_TW
100% translated source file: 'Localizable.strings'
on 'zh_TW'.
2023-06-21 12:36:17 +00:00
transifex-integration[bot]
4dc2571177 Translate Localizable.strings in zh_HK
100% translated source file: 'Localizable.strings'
on 'zh_HK'.
2023-06-21 12:35:58 +00:00
transifex-integration[bot]
04493b53dc Translate Localizable.strings in zh_CN
100% translated source file: 'Localizable.strings'
on 'zh_CN'.
2023-06-21 12:35:14 +00:00
transifex-integration[bot]
f383388f42 Translate Localizable.stringsdict in zh_CN
100% translated source file: 'Localizable.stringsdict'
on 'zh_CN'.
2023-06-21 12:34:30 +00:00
transifex-integration[bot]
d4cdc7706d Translate Localizable.stringsdict in fr
100% translated source file: 'Localizable.stringsdict'
on 'fr'.
2023-06-21 11:57:54 +00:00
b70406d669 Fix "zapped your profile" strings to say "zapped you"
Changelog-Fixed: Fix "zapped your profile" strings to say "zapped you"
2023-06-21 07:35:16 -04:00
William Casarin
a2866ff6b3 Merge remote-tracking branch 'github/translations' 2023-06-21 10:19:47 +02:00
transifex-integration[bot]
1f0e31faa0 Translate Localizable.strings in hu_HU
100% translated source file: 'Localizable.strings'
on 'hu_HU'.
2023-06-21 08:14:48 +00:00
William Casarin
2ff12cdfa6 video: switch videoplayer to use detached tasks 2023-06-20 17:00:48 +02:00
William Casarin
b7b7d65612 perf: don't use string concat when calculing SeenEven hash
Profiler was complaining about this one
2023-06-20 17:00:48 +02:00
William Casarin
d205be3e0a ui: remove nip05 badge on events
Changelog-Changed: Remove nip05 on events
2023-06-20 17:00:48 +02:00
William Casarin
0bea81c632 perf: move blurhash processing to a background task
Using Task directly will only inherent the parent thread. We need
detached to do heaving processing.
2023-06-20 17:00:48 +02:00
William Casarin
e4842cca3c logs: don't print filters
It can be slow
2023-06-20 17:00:48 +02:00
William Casarin
87d4752aa4 ui: use AboutView in existing views 2023-06-20 17:00:48 +02:00
William Casarin
6ec533b0cd view: Add AboutView
This will be used by different views for the user's about section
2023-06-20 17:00:48 +02:00
William Casarin
51a58360f9 debug slow scroll 2023-06-20 15:29:44 +02:00
William Casarin
fe025532e8 Merge remote-tracking branch 'github/translations' 2023-06-20 11:27:29 +02:00
William Casarin
6eb548a0a9 Fix reconnect loop issues on iOS17
Changelog-Fixed: Fix reconnect loop issues on iOS17
2023-06-20 11:21:21 +02:00
William Casarin
bcaa1d2354 ping: switch to async style
because reasons
2023-06-20 11:21:07 +02:00
Bryan Montz
296d96d6df rename RelayStatus to RelayStatusView 2023-06-20 10:18:34 +02:00
Bryan Montz
28854fdc93 simplify and fix issues with RelayStatus 2023-06-20 10:18:34 +02:00
Bryan Montz
2901cc860f make RelayConnection's state observable 2023-06-20 10:18:34 +02:00
William Casarin
3db13ae171 Fix build for iOS17 2023-06-20 10:18:23 +02:00
transifex-integration[bot]
49dedaec04 Translate Localizable.strings in sv_SE
100% translated source file: 'Localizable.strings'
on 'sv_SE'.
2023-06-20 07:50:51 +00:00
transifex-integration[bot]
491d4c4d25 Translate Localizable.strings in sv_SE
100% translated source file: 'Localizable.strings'
on 'sv_SE'.
2023-06-20 07:49:38 +00:00
transifex-integration[bot]
afcbaea331 Translate Localizable.strings in zh_HK
100% translated source file: 'Localizable.strings'
on 'zh_HK'.
2023-06-19 10:21:11 +00:00
transifex-integration[bot]
340e134046 Translate Localizable.strings in zh_TW
100% translated source file: 'Localizable.strings'
on 'zh_TW'.
2023-06-19 10:21:08 +00:00
transifex-integration[bot]
e68952fa0c Translate Localizable.strings in zh_CN
100% translated source file: 'Localizable.strings'
on 'zh_CN'.
2023-06-19 10:20:07 +00:00
transifex-integration[bot]
83af4ddd89 Translate Localizable.strings in zh_CN
100% translated source file: 'Localizable.strings'
on 'zh_CN'.
2023-06-19 10:19:29 +00:00
transifex-integration[bot]
53262afa01 Translate Localizable.strings in nl
100% translated source file: 'Localizable.strings'
on 'nl'.
2023-06-19 08:39:13 +00:00
transifex-integration[bot]
95148e9c9c Translate Localizable.strings in cs
100% translated source file: 'Localizable.strings'
on 'cs'.
2023-06-19 08:04:14 +00:00
transifex-integration[bot]
5bf4a2cc5a Translate Localizable.strings in ja
100% translated source file: 'Localizable.strings'
on 'ja'.
2023-06-19 07:30:18 +00:00
2d29403145 Remove string referencing tipping posts, add missing localized string comments, and export strings for translation 2023-06-19 00:39:35 -04:00
gladiusKatana
df20b67fc1 video: stop video in post when it disappears from view
Changelog-Fixes: Stop video when it disappears from view
2023-06-16 18:34:14 +02:00
William Casarin
0b5d68c0b8 Revert "threads: attempt to fix state jankiness"
This reverts commit f4024895ba.
2023-06-14 09:30:58 +02:00
William Casarin
f4024895ba threads: attempt to fix state jankiness
Changelog-Fixed: Fix some more thread jankiness
2023-06-14 09:20:51 +02:00
William Casarin
bcdd0b4e23 Revert "Add Inter font"
This reverts commit 271e3ad54a.
2023-06-12 11:25:27 +02:00
William Casarin
1c655d47b2 home: add comment explaining send_home_filters 2023-06-10 15:09:43 +02:00
William Casarin
24cc361d60 refactor: make send_initial_filter more readible 2023-06-10 15:09:43 +02:00
Bryan Montz
71bb9d6c92 Add text description to WebSocket for state logging 2023-06-10 12:39:25 +02:00
Ben Weeks
271e3ad54a Add Inter font
ChangeLog-Changed: Switch to new font (Inter)
2023-06-10 12:38:13 +02:00
transifex-integration[bot]
dac21a1562 Update Translations
Translate Localizable.strings in cs
Translate Localizable.strings in el_GR
Translate Localizable.strings in nl
Translate Localizable.strings in sv_SE
Translate Localizable.strings in zh_CN
Translate Localizable.strings in zh_HK
Translate Localizable.strings in zh_TW
Translate Localizable.stringsdict in el_GR
Translate Localizable.stringsdict in nl
Translate Localizable.stringsdict in sv_SE
Translate Localizable.stringsdict in zh_CN
Translate Localizable.stringsdict in zh_HK
Translate Localizable.stringsdict in zh_TW

Closes: #1262
2023-06-10 11:43:32 +02:00
ae9ae66b39 Fix spelling of Nostr to use Titlecase instead of lowercase
Changelog-Fixed: Fix spelling of Nostr to use Titlecase instead of lowercase
2023-06-10 11:42:25 +02:00
e7281fdacc Add missing localized string comment 2023-06-10 11:42:25 +02:00
baa5454e2a Rename all usages of the term Post as a noun to Note to conform to the Nostr spec
Changelog-Fixed: Rename all usages of the term Post as a noun to Note to conform to the Nostr spec
2023-06-10 11:42:25 +02:00
gladiusKatana
60a892d73b LoginView: prevent explainer-text cutoff on login with npub
Changelog-Fixed: Fix text cutoff on login with npub
Closes: #1264
2023-06-10 11:39:00 +02:00
William Casarin
0ee360f2fa Fix video player hangs
Changelog-Fixed: Fix hangs due to video player
2023-06-10 11:33:35 +02:00
William Casarin
c59d2a96af Make profile picture placeholder gray instead of purple 2023-06-10 11:33:18 +02:00
William Casarin
ba3a6b07b2 Fix warnings 2023-06-10 11:33:07 +02:00
William Casarin
043eb5b436 Show zap comments in threads and show top zap
Changelog-Added: Top zaps
Changelog-Added: Show zap comments in threads
2023-06-09 10:11:25 +02:00
William Casarin
8f237b47eb qrscan: use explicit types when scanning 2023-06-07 08:06:06 +02:00
William Casarin
a0caf9ce07 find_event: refactor with more explicit types 2023-06-07 08:06:06 +02:00
William Casarin
3277aac220 refactor: use guard in qr profile lookup 2023-06-07 08:06:03 +02:00
William Casarin
e67dac13c6 refactor: use guard in handleProfileScan 2023-06-07 08:06:03 +02:00
Suhail Saqan
5f2c8223bd Add qr code scanner
Changelog-Added: Add qr code scanner
Closes: #733
2023-06-07 08:05:27 +02:00
14977fe3dd Replace indexed mentions with NIP-27
Changelog-Fixed: Replace indexed mentions with NIP-27
Closes: #1213
2023-06-07 06:22:38 +02:00
William Casarin
1d3c181b85 Translations
Translate Localizable.strings in ja
Translate Localizable.strings in de
Translate Localizable.strings in vi
Translate Localizable.strings in zh_TW
Translate Localizable.strings in zh_HK
Translate Localizable.strings in zh_CN
Translate Localizable.strings in ru
Localizable.strings in cs

Closes: #1253
2023-06-07 06:17:30 +02:00
8ca377bec9 Add max length truncation to displayed profile attributes to mitigate spam
Changelog-Fixed: Add max length truncation to displayed profile attributes to mitigate spam
Fixes: #1237
2023-06-04 17:50:52 -04:00
952d6746d5 Add profile zaps
Refactor profile zaps to reuse same BOLT11 Lightning invoice logic as
note zaps, which fixes profile zaps from Cash App and Muun wallets

Changelog-Added: Add profile zaps
Changelog-Fixed: Fix profile zapping for Muun and Strike wallets
Closes: #1236
Fixes: #1067
2023-06-04 10:56:43 -07:00
Suhail Saqan
b3b335f917 Add NWC paste button
Changelog-Added: Added Wallet Connect paste button
Closes: #1235
2023-06-04 10:56:43 -07:00
dde48132c9 Fix CI tests
Closes: #1204
2023-05-31 16:40:59 -07:00
William Casarin
809a08ef63 v1.5 (3) 2023-05-30 19:40:37 -07:00
William Casarin
57e6f083b8 Revert "Updated UI to use custom font"
This reverts commit 020a00bf7e.
2023-05-30 19:35:21 -07:00
William Casarin
cfa1e13887 Revert "Add .frame & .position modifiers to TextEntry using ScrollView geometry"
This reverts commit f7a0370824.
2023-05-30 19:29:23 -07:00
William Casarin
6eecb5ef26 video-player: don't stop audio, mix with external media 2023-05-30 18:44:36 -07:00
William Casarin
5dc3e2635e video-player: don't randomly stop video 2023-05-30 18:38:04 -07:00
William Casarin
2713e76e17 v1.5-2 changelog 2023-05-30 18:08:57 -07:00
William Casarin
6aa28fce6c v1.5-2 2023-05-30 18:04:21 -07:00
William Casarin
a6fb175b98 Add Full-Bleed Video Player
Changelog-Added: Add new full-bleed video player
2023-05-30 18:02:19 -07:00
William Casarin
554c091d57 video-player: hide mute button when we have no audio 2023-05-30 17:58:48 -07:00
William Casarin
9e359650bf carousel: fix image positioning 2023-05-30 17:58:48 -07:00
William Casarin
bb091d072f cache: move event-specific media metadata to EventCache 2023-05-30 17:58:48 -07:00
William Casarin
88b04fde09 xcode: remove .git ext from package 2023-05-30 17:58:48 -07:00
William Casarin
a1753b2c24 video-player: add tap gesture to prevent nav 2023-05-30 17:58:48 -07:00
William Casarin
80fac1903e carousel: switch to media carousel and include video 2023-05-30 09:36:39 -07:00
William Casarin
6214ab8d8f video: add DamusVideoPlayer view 2023-05-29 17:11:14 -07:00
William Casarin
85cd1bea19 urls: combine url classification 2023-05-29 17:11:13 -07:00
William Casarin
4d95d36a1e Add GSPlayer + VideoPlayer 2023-05-29 17:10:14 -07:00
William Casarin
185fba150f carousel: fix scroll-up bug 2023-05-29 16:09:16 -07:00
Ben Weeks
06ba0f7387 Add ability to show multiple posts per user in Universe
ChangeLog-Added: Add ability to show multiple posts per user in Universe
Closes: #1198
Fixes: #1189
2023-05-29 15:35:29 -07:00
William Casarin
51c4fa1e32 Initial redesign
Changelog-Changed: Redesign phase 1 (text, icons)
2023-05-29 15:31:07 -07:00
Ben Weeks
ed4ef0e215 Tweaked action bar icon sizes. 2023-05-29 14:47:10 -07:00
Ben Weeks
973e9fe714 Custom iconography added for other areas of the app.
Changelog-Added: Custom iconography added for other areas of the app.
2023-05-29 14:47:05 -07:00
Ben Weeks
d12281fcc5 Custom iconography for the left navigation.
ChangeLog-Added: Custom iconography for the left navigation.
2023-05-29 14:46:59 -07:00
Ben Weeks
156d885e6e Custom iconography for the tab buttons.
ChangeLog-Added: Custom iconography for the tab buttons.
2023-05-29 14:46:52 -07:00
ericholguin
bf01d08ea0 setupview: remove damus white button implementation 2023-05-29 14:38:24 -07:00
ericholguin
548d8e49ec createaccount: ui: modify text field look 2023-05-29 14:38:24 -07:00
ericholguin
0fc38e5c05 createaccount: ui: change color of copy icon 2023-05-29 14:38:24 -07:00
ericholguin
028cab9cf6 createaccount: ui: replace damus white buttons with gradient style buttons 2023-05-29 14:38:24 -07:00
ericholguin
29068a40c8 createaccount: ui: remove damus gradient and white font color add background 2023-05-29 14:38:24 -07:00
ericholguin
ff06cfaf0c createaccount: ui: refactor signup form 2023-05-29 14:38:24 -07:00
ericholguin
eb72fb481c createaccount: remove username from the form 2023-05-29 14:38:24 -07:00
ericholguin
5b7339a0de createaccount: ui: move key text and profile picture selection into frame 2023-05-29 14:38:24 -07:00
ericholguin
06ba72a23d createaccount: ui: remove create account text 2023-05-29 14:38:24 -07:00
ericholguin
47d594af00 createaccount: ui: center pubkey text and add gradient style 2023-05-29 14:38:24 -07:00
ericholguin
dd022a953c createaccount: ui: add navigation title and use general padding 2023-05-29 14:38:24 -07:00
ericholguin
a4cbf6a12a createaccount: ui: include login prompt and add padding 2023-05-29 14:38:24 -07:00
ericholguin
62dfc24e58 createaccount: ui: change the look of the form label 2023-05-29 14:38:24 -07:00
ericholguin
cf15bd3463 createaccount: ui: change the look of the form text field 2023-05-29 14:38:24 -07:00
ericholguin
fd44a56f9b createaccount: ui: remove fixed color from back nav 2023-05-29 14:38:24 -07:00
ericholguin
9a9fb28a48 createaccount: ui: add login prompt view struct 2023-05-29 14:38:24 -07:00
ericholguin
ba7f675300 createaccount: ui: remove damus white button and use gradient style button 2023-05-29 14:38:24 -07:00
ericholguin
8e84b446a5 createaccount: ui: remove damus gradient 2023-05-29 14:38:24 -07:00
ericholguin
8dbe2c728f loginview: ui: update login preview 2023-05-29 14:38:24 -07:00
ericholguin
f975723c0f loginview: ui: include create account prompt view 2023-05-29 14:38:24 -07:00
ericholguin
8ed04f0b0e loginview: ui: add orange color and bold font to pubkey message 2023-05-29 14:38:24 -07:00
ericholguin
e33cb3b1c3 loginview: ui: replace damus white button with gradient style button 2023-05-29 14:38:24 -07:00
ericholguin
f171cfffe7 loginview: functionality: removed the toggle for hex npub - NEEDS UPDATING 2023-05-29 14:38:24 -07:00
ericholguin
46556c8bdc loginview: ui: replace existing views with new sign in header and entry views 2023-05-29 14:38:24 -07:00
ericholguin
10fec3cbf8 loginview: add create account prompt view struct 2023-05-29 14:38:24 -07:00
ericholguin
7250cf0d8f loginview: add sign in entry view struct 2023-05-29 14:38:24 -07:00
ericholguin
2bddd5ce92 loginview: add sign in header view struct 2023-05-29 14:38:24 -07:00
ericholguin
027b39caed loginview: ui: fix up key input textfield appearance 2023-05-29 14:38:24 -07:00
ericholguin
122d0e451e loginview: ui: replace damus gradient with new login background 2023-05-29 14:38:24 -07:00
ericholguin
f99e311e58 eulaview: ui: use new eula background 2023-05-29 14:38:24 -07:00
ericholguin
3fbf3cc12e eulaview: ui: replace damus white buttons with new gradient style buttons 2023-05-29 14:38:24 -07:00
ericholguin
6682f792d8 eulaview: fix up formatting and use new eula variable 2023-05-29 14:38:24 -07:00
ericholguin
2e53ce3905 eulaview: create eula variable and update headers to bold 2023-05-29 14:38:24 -07:00
ericholguin
c238b6e28f setupview: ui: remove old title, buttons, carousel and use new welcome, views, and lets get started button 2023-05-29 14:38:24 -07:00
ericholguin
e99142a5b8 setupview: remove damus gradient and use new login background 2023-05-29 14:38:24 -07:00
ericholguin
5716578c20 setupview: add why we need nostr view 2023-05-29 14:38:24 -07:00
ericholguin
ec35a413fe setupview: add what is nostr view 2023-05-29 14:38:24 -07:00
ericholguin
724773cb45 setupview: add learn about nostr link view 2023-05-29 14:38:24 -07:00
ericholguin
15acdef912 navigation: remove SetupState and references and update navigation links for onboarding flow 2023-05-29 14:38:24 -07:00
ericholguin
72cc4c1fd7 assets: added nostr logo image used in setup view 2023-05-29 14:38:24 -07:00
ericholguin
65f4227e9b assets: added lightbulb image used in setup view 2023-05-29 14:38:24 -07:00
ericholguin
f0be5a5ad8 assets: added login header background 2023-05-29 14:38:24 -07:00
ericholguin
48855d5d41 assets: added background for the EULA 2023-05-29 14:38:24 -07:00
ericholguin
90c22fdabd components: added reusable gradient button style 2023-05-29 14:38:24 -07:00
ericholguin
dfd1032cd8 gradients: add pink gradient 2023-05-29 14:38:24 -07:00
ericholguin
a0e1e16f17 gradients: add damus logo gradient 2023-05-29 14:38:24 -07:00
Ben Weeks
020a00bf7e Updated UI to use custom font
Changelog-Changed: Updated UI to use custom font
2023-05-29 14:38:24 -07:00
William Casarin
297aaf86c6 carousel: only show blurhash when there is one images
Blurhash interacts strangely with carousel
2023-05-29 14:31:54 -07:00
William Casarin
f6dd060580 fixup! Add new image carousel 2023-05-29 14:31:16 -07:00
William Casarin
12428d01ad preloader: only preload non-animated images to test animation bug fix 2023-05-29 14:22:54 -07:00
Ben Weeks
d091543448 Add new image carousel
Changelog-Added: Added dots under image carousel
Changelof-Fixed: Fixed carousel issues with multiple images of different aspect ratios
Closes: #1004
2023-05-29 14:22:50 -07:00
Ben Weeks
2e596a47a1 Fix event menu capitalization
Closes: #1191
2023-05-29 13:23:24 -07:00
OlegAba
ff15156297 Fix side menu offset
Changelog-Fixed: Fix side menu bug in landscape
Closes: #560
2023-05-29 13:17:05 -07:00
Ben Weeks
0a9fbf5031 Removed hex key to RGB functionality. 2023-05-29 12:42:58 -07:00
Ben Weeks
8eebc2abe5 Minor changes to profile ready for rebrand Key removal from nPub in profile 2023-05-29 12:42:58 -07:00
Ben Weeks
c22199165a Use "Follow me on nostr" text when looking at someone else's QR code
Fixes: #1069
Closes: #1199
Changelog-Fixed: Use "Follow me on nostr" text when looking at someone else's QR code
2023-05-29 12:27:07 -07:00
gladiusKatana
f7a0370824 Add .frame & .position modifiers to TextEntry using ScrollView geometry
Closes: #1201
Changelog-Fixed: Fix issue where cursor dissapears when typing long message
2023-05-29 12:22:44 -07:00
Bryan Montz
fe4277e817 simplified call site usage of NostrFilter 2023-05-29 12:19:27 -07:00
William Casarin
6804fbb607 Attempt fix for randomly broken animated GIFs
Changelog-Fixed: Attempt fix for randomly broken animated gifs
2023-05-29 10:18:52 -07:00
William Casarin
05503024cc Profile Caching
Changelog-Added: Add profile caching
2023-05-26 12:11:43 -07:00
gladius
e4e477a2ac Fix cursor jumping when pressing return
Changelog-Fixed: Fix cursor jumping when pressing return
Closes: #775
2023-05-26 11:20:40 -07:00
59e7a42b5f Fix side menu label size so that translations in longer languages fit without wrapping
Changelog-Fixed: Fix side menu label size so that translations in longer languages fit without wrapping
Closes: #1175
2023-05-26 10:35:25 -07:00
0552c24108 Add mention parsing and fine-grained text selection on description in ProfileView
Changelog-Added: Add mention parsing and fine-grained text selection on description in ProfileView
Closes: #1172
2023-05-26 10:35:18 -07:00
Bryan Montz
61303f49ad fix zap test 2023-05-26 07:32:18 -05:00
Bryan Montz
e10dc93233 add damus_donation to profile data model and update tests 2023-05-26 07:02:14 -05:00
Bryan Montz
ea73c5252d Merge branch 'master' into user-cache 2023-05-26 06:46:47 -05:00
Bryan Montz
7e963c9025 synchronize access to network_pull_date_cache with a queue, writes with barrier flag 2023-05-26 06:38:20 -05:00
Bryan Montz
61ff7da2ae make database write async at the call site and update tests 2023-05-25 09:09:50 -05:00
Bryan Montz
7259641e26 speed optimizations: cache network_pull_date in memory and ensure writes on background queue 2023-05-25 08:20:41 -05:00
gladiusKatana
f9a572faa2 dynamically set .isScrollEnabled in TextViewWrapper (true if UserSearch is present) 2023-05-24 20:41:03 -07:00
gladiusKatana
0f805d7ea7 override .isScrollEnabled in TextViewWrapper (ie, set to false at UITextView creation) 2023-05-24 20:41:03 -07:00
William Casarin
52ca33ef6a script: fetch popular users 2023-05-24 18:26:18 -07:00
1769b08147 Fix reaction notification title to be consistent with ReactionView
Changelog-Fixed: Fix reaction notification title to be consistent with ReactionView
Closes: #1137
2023-05-24 15:20:02 -07:00
Bryan Montz
812213ff2b Add Damus splash screen
Changelog-Updated: Add Damus splash screen
2023-05-24 15:17:08 -07:00
transifex-integration[bot]
d6ecf14b55 Apply translations
Closes: #1134
2023-05-24 15:16:45 -07:00
William Casarin
47a74257c8 nwc debugging 2023-05-24 15:16:45 -07:00
William Casarin
1b161fefd0 nwc: make sure to support nostr+walletconnect scheme
not sure why we have 2 schemes
2023-05-15 12:54:42 -07:00
William Casarin
0b9a274e67 postbox: change initial retry_after from 2 to 10 seconds 2023-05-15 12:54:09 -07:00
William Casarin
2bbbb5db65 Fix a few bugs with donations 2023-05-15 12:53:36 -07:00
William Casarin
bffa42a13a Supporter Badges 2023-05-15 11:57:37 -07:00
William Casarin
8097cfdfb8 Include donation_amount on profile 2023-05-15 09:59:51 -07:00
William Casarin
af912b1a0e v1.5-1 2023-05-15 09:59:22 -07:00
William Casarin
51cd34c9c2 c: move parse_digit to remove warning 2023-05-15 09:59:10 -07:00
William Casarin
a6745af519 Implement damus zap split donations using NWC 2023-05-15 09:41:26 -07:00
Bryan Montz
91113fbc6d allow models to fetch profiles when they get stale 2023-05-15 08:33:35 -05:00
Bryan Montz
d58a1e0ba3 add ability to check the freshness of a PersistedProfile 2023-05-15 08:31:49 -05:00
Bryan Montz
3f7b0a4d6e add network pull date to PersistedProfile model for staleness checking 2023-05-15 08:29:06 -05:00
Bryan Montz
bc315dd571 remove identical function 2023-05-15 07:33:49 -05:00
William Casarin
631220fdcb ui: add support damus ui in WalletView
This appears after you've connected your wallet
2023-05-14 22:24:12 -07:00
William Casarin
5aa0d6c3e1 settings: add donation_percent to settings
This will be used in damus donations splits
2023-05-14 22:24:12 -07:00
f9982e992a Migrate away from sticky deprecated non-pubkey-scoped settings
Changelog-Fixed: Migrate away from sticky deprecated non-pubkey-scoped settings
Closes: #1124
2023-05-14 21:08:56 -07:00
transifex-integration[bot]
0eaebb80f1 Apply translations
in:

- nl
- de
- cs
- hu_HU
- sv_SE
- ar
- fa
- pl_PL
- ja

Closes: #1122
2023-05-14 21:06:20 -07:00
6f23b69f2c Export strings for translation 2023-05-14 20:54:13 -07:00
William Casarin
ec50c75062 ui: expose raw LinearGradient in DamusGradient
This will be used in background-fill applications
2023-05-14 20:47:53 -07:00
William Casarin
0293b61d7a Rename 'Connect to Alby' to 'Attach Alby Wallet' 2023-05-14 14:07:04 -07:00
50e4452016 Fix nostr URL scheme to open properly even if there's already a different view open
Closes: #1130
Changelog-Fixed: Fix nostr URL scheme to open properly even if there's already a different view open
2023-05-14 11:36:46 -07:00
William Casarin
a30a79b1fc Fix tests 2023-05-14 11:20:28 -07:00
William Casarin
60260ae53b nwc: make delay 5 seconds instead of 3 2023-05-14 11:11:27 -07:00
William Casarin
1fff0abce5 Make it easier to tap zap button
Right now the tap target only covered the bolt, now it's bolt+amount
2023-05-14 11:04:56 -07:00
William Casarin
b1fee253b4 nwc: fix bug where private nwc zaps weren't getting tracked properly
It was using the wrapper zap request id instead of the inner id. Fix
this type error by creating a ZapRequestId wrapper that makes sure it
uses the proper request id.
2023-05-14 10:52:37 -07:00
William Casarin
e472e559a5 nwc: don't use yellow on the Zap Button for pending zaps
I just find this stressful
2023-05-14 10:49:54 -07:00
William Casarin
0091df8f77 nwc: fix broken test 2023-05-14 10:49:54 -07:00
William Casarin
d0c67237dd nwc: remove requests from postbox
Since these are ephemeral events, there will never be command results,
so we need to remove them manually on NWC responses or else it will keep
trying to send them.

We should probably handle this for all ephemeral events in the postbox
somehow. We probably shouldn't use the postbox for ephemeral events
without response events.
2023-05-14 10:49:54 -07:00
William Casarin
1313880574 Add release Damus build scheme 2023-05-14 10:49:54 -07:00
William Casarin
122b528407 Add rigid haptic feedback when you zap cancel fails
This feels different than the soft haptic feedback so it should let
people know that cancelling is no longer possible
2023-05-14 10:49:54 -07:00
William Casarin
02d99f7340 postbox: try flushing events every second
relying on network activity for flushing is not reliable and is causing
delays in zapping
2023-05-14 10:49:54 -07:00
William Casarin
8fb5b4f49c misc logs 2023-05-14 00:03:51 -07:00
William Casarin
ae4d9ab8ba nwc: make delay 3 seconds instead of 5 2023-05-14 00:03:51 -07:00
William Casarin
85262e1a4e nwc: fix response parsing 2023-05-14 00:03:51 -07:00
William Casarin
64a224135a nwc: always allow long press zap 2023-05-13 23:54:02 -07:00
William Casarin
69fc6694f1 nwc: turn pending zap orange when we have a NWC success
Orange means payment successful now, not just presence of zap

This introduces a paid pending state, which shows up as an orange timer
thing in the zaps view. This can be useful if the zap is never sent. We
don't want the user to think the payment didn't go through.
2023-05-13 23:30:03 -07:00
William Casarin
03691d0369 Pending Zaps
A fairly large change that replaces Zaps in the codebase with "Zapping"
which is a tagged union consisting of a resolved Zap and a Pending Zap.
These are both counted as Zaps everywhere in Damus, except pending zaps
can be cancelled (most of the time).
2023-05-13 21:33:34 -07:00
William Casarin
1518a0a16c zaps: ensure returned bolt11 is the correct amount 2023-05-13 19:51:06 -07:00
Bryan Montz
32431096f5 add tests for ProfileDatabase 2023-05-13 09:20:01 -05:00
Bryan Montz
6172347455 add ability to remove all cached Profiles in ProfileDatabase 2023-05-13 09:18:47 -05:00
Bryan Montz
31d327a085 add ability to retrieve count of cached Profiles 2023-05-13 09:18:23 -05:00
Bryan Montz
b5ae7df795 add ability to change ProfileDatabase's storage URL 2023-05-13 09:17:41 -05:00
Bryan Montz
3b0bb48dd4 integrate ProfileDatabase with existing Profiles caching class 2023-05-12 07:21:59 -05:00
Bryan Montz
4646f0e23c add ProfileDatabase class to read and write profiles to disk 2023-05-12 07:21:25 -05:00
Bryan Montz
7027b7016c add two-way translation between existing Profile class and new PersistedProfile CoreData class 2023-05-12 07:19:43 -05:00
Bryan Montz
76c57af548 add managed object class to match new Profile CoreData model 2023-05-12 07:18:12 -05:00
Bryan Montz
7983157c38 add CoreData model for Profile 2023-05-12 07:15:30 -05:00
William Casarin
dafa1ba4de test: add nwc and ephemeral relay test
This ensures that when paying with nwc, we get an ephemeral relay added
and a request queued in the postbox.
2023-05-10 16:24:02 -07:00
William Casarin
9093bdec2d home: add some more helper functions 2023-05-10 14:07:24 -07:00
William Casarin
bb32d72903 nwc: clear the zapper cache for our pubkey when we attach a new wallet 2023-05-10 14:07:24 -07:00
William Casarin
f77a7bcb29 ui: show lud16 in attach wallet ui 2023-05-10 14:07:24 -07:00
William Casarin
5cce18c8b6 nwc: attach lud16 to profile when attaching wallet 2023-05-10 14:07:24 -07:00
William Casarin
a5726d4650 nwc: add lud16 parameter
This will be used for auto-setting up the lightning wallet

See https://github.com/nostr-protocol/nips/pull/513
2023-05-10 14:07:24 -07:00
William Casarin
370a5feb4e ui: add Nostr Wallet Connect views 2023-05-10 14:07:24 -07:00
William Casarin
fe3d976cdb nwc: pay with nwc if we have it configured 2023-05-10 14:07:24 -07:00
William Casarin
996312cf1c settings: Add nostr_wallet_connect setting
Stored in the keychain for security
2023-05-10 14:07:24 -07:00
William Casarin
d0216bbce6 nwc: Add WalletModel
This model will be used for controlling the logic in the Wallet views
2023-05-10 14:07:24 -07:00
William Casarin
4d2b79057d nwc: add Nostr Wallet Connect logic
- WalletConnectURL parses nostrwalletconnect:// urls
- Add support for parsing and creating NWC requests
2023-05-10 14:07:24 -07:00
William Casarin
ca2bf20eb7 info: add nostrwalletconnect uri handlers
We will need this to handle nostrwalletconnect:// links
2023-05-10 14:07:24 -07:00
William Casarin
baed6adf49 refactor: ensure make_metadata_event has full keypair 2023-05-10 14:07:23 -07:00
William Casarin
f068833c5e colors: add adaptableBlack
Used in template icons
2023-05-10 14:07:23 -07:00
William Casarin
c3808cd21f icons: convert to template images 2023-05-10 14:07:23 -07:00
William Casarin
acbd09bf6f ------ ephemeral relays -------
Add docs
2023-05-10 13:31:53 -07:00
William Casarin
1fe54380b8 relay: make RelayInfo encoding more flexible
So that we don't fail relay list decoding as easy
2023-05-10 13:25:46 -07:00
William Casarin
fe6d7e5118 relay: split descriptors to {our,all}_descriptors
Now that we have ephemeral relays, we don't want them used everywhere
2023-05-10 13:25:40 -07:00
William Casarin
1367be0d10 relay: handle ephemeral relays in PostBox
We need to make sure ephemeral relay events (not ephemeral events) are
handled properly in the postbox. Make sure we pass the proper
skip_ephemeral flag to the relay pool if we add something like a NWC
event to the PostBox. Events are not sent to ephemeral relays by
default.
2023-05-10 12:01:26 -07:00
William Casarin
32a1a24e39 pool: skip ephemeral relays by default
Also filter relays by read/write once we introduce that
2023-05-10 12:01:26 -07:00
William Casarin
7267662330 relay: introduce ephemeral relays
Epehmeral relays are relays that are connected in your relay pool but
not a part of your official relay list. This will be used by
nostr-wallet-connect to communicate with an NWC relay to pay invoices.
2023-05-10 12:01:26 -07:00
William Casarin
1da0a8ee52 nostr: add is_{read,write} helpers on requests
This will be handy in the future when we properly filter relay lists by
RelayInfo
2023-05-10 12:01:26 -07:00
William Casarin
23aab6710a Fix DM sorting test 2023-05-10 11:01:40 -07:00
Bryan Montz
ce599badee fix crash related to preloading events
Changelog-Fixed: fix crash related to preloading events
2023-05-09 23:39:41 -05:00
William Casarin
221fffe523 Fix tests
This reverts commit dff5987d3c.
2023-05-09 20:23:08 -07:00
William Casarin
5d72b4d007 dms: generalize create_dm into create_encrypted_event
We will need this for encrypting notes other than DMs (NWC)
2023-05-09 18:57:04 -07:00
William Casarin
dff5987d3c settings: mark UserSettings as changed in KeychainStorage properties
Maybe this isn't strictly needed at the moment, but to remain consistent
with the Settings and StringSettings property wrapper we will do this.
2023-05-09 18:57:04 -07:00
William Casarin
bfffd63dab ui: use darker border colors in BigButton
Might need to update the other buttons as well in the share sheet
2023-05-09 18:57:04 -07:00
William Casarin
1db425fd69 ui: add AlbyButton
This will be used for alby's nostr wallet connect implementation
2023-05-09 18:57:04 -07:00
William Casarin
27caffd91f ui: add alby logo for the AlbyButton 2023-05-09 18:57:04 -07:00
William Casarin
a13efb7832 ui: move gradient components to their own group 2023-05-09 18:57:04 -07:00
William Casarin
e3b3c9dedd ui: add QR CodeScanner helpers 2023-05-09 18:57:04 -07:00
William Casarin
904fe2bc0a pool: ocd change
I'm not a fan of $0, etc
2023-05-09 18:57:04 -07:00
William Casarin
ccd76066d1 switch to v1.5 2023-05-08 12:38:08 -07:00
William Casarin
4ccc763072 Fix changelog 2023-05-08 11:55:44 -07:00
William Casarin
484ebd655b Merge remote-tracking branch 'github/master' 2023-05-08 11:53:21 -07:00
William Casarin
1582eb2e2f v1.4.3 changelog 2023-05-08 11:52:05 -07:00
William Casarin
f95498a6fa v1.4.3 - AppStore release 2023-05-08 11:47:19 -07:00
Joshua Jiang
94a29e2c2f Add unmute option in profile view
Changelog-Added: Add unmute option in profile view
Closes: #1050
2023-05-08 11:16:21 -07:00
William Casarin
5f64f54ef5 Fix previews in DMs
TODO: maybe we need to just add this to NoteContentView?

I don't want to do this just yet though because I'm about to cut a
release and I don't want to introduce new bugs.
2023-05-08 11:14:56 -07:00
b377a0553f Translations (#1103)
* Apply translations in ja

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.

* Apply translations in cs

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'cs' language.

---------

Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2023-05-08 11:11:15 -07:00
ericholguin
0492a25633 Changed look of Repost and Quote buttons
Changelog-Changed: Changed look of Repost and Quote buttons
Closes: #1104
2023-05-08 11:05:14 -07:00
Bryan Montz
43017828e2 fix user notifications from old events immediately shown on install and login
Changelog-Fixed: Fix user notifications from old events immediately shown on install and login
Closes: #1106
2023-05-08 11:02:12 -07:00
Bryan Montz
9847f12c95 Remove unused code
Closes: #1105
2023-05-08 11:01:04 -07:00
William Casarin
0da10eb716 build 23 2023-05-08 10:56:35 -07:00
William Casarin
9b99e00804 Reconnect on failed ping and remove reconnect timer
I think this does it
2023-05-07 12:00:37 -07:00
William Casarin
a4d4ad72e6 build 22 2023-05-07 11:28:33 -07:00
William Casarin
8c55f23ea8 Don't put reconnect logic in ping
It seems to be very bad
2023-05-07 11:28:33 -07:00
William Casarin
b43aca8abb build 21 changelog 2023-05-07 10:39:26 -07:00
William Casarin
86687b6289 v1.4.3-21 2023-05-07 10:38:21 -07:00
William Casarin
84174ef9ad Ping relays on resume, if there's an error then try to reconnect
This is an attempt to fix the fail-to-reconnect issues. Let's see if it works.
2023-05-07 10:28:36 -07:00
Bryan Montz
f78eeb1f22 Fix npub search fails on the first try
Co-authored-by: William Casarin <jb55@jb55.com>
Changelog-Fixed: Fix npub search fails on the first try
Closes: #1044
Closes: #1100
2023-05-07 09:50:49 -07:00
William Casarin
a007e18add Dismiss bookmarks view when switching tabs
Changelog-Fixed: Dismiss bookmarks view when switching tabs
2023-05-07 09:30:05 -07:00
Bryan Montz
7a8bfffc29 Fix posts with no uploadedURLs always get two blank spaces at the end
Changelog-Fixed: Fix posts with no uploadedURLs always get two blank spaces at the end
Closes: #1101
2023-05-07 09:24:05 -07:00
Swift
c35331ceda Fix bug where you could only mention users at the end of a post
Changelog-Fixed: Fix bug where you could only mention users at the end of a post
Closes: #1102
2023-05-07 09:22:58 -07:00
transifex-integration[bot]
88ddb70ca8 Apply translations
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.

Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

Apply translations in cs

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.

Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

Apply translations in nl

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.

Apply translations in zh_HK

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.

Apply translations in hu_HU

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.

Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

Apply translations in sv_SE

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.

Apply translations in pl_PL

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.

Apply translations in pl_PL

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'pl_PL' language.
2023-05-07 09:14:11 -07:00
9be39a5964 Export strings for translation 2023-05-06 00:37:03 -04:00
William Casarin
0f5e1dfb81 Properly scroll DM view when keyboard is open
Less DM jank!

Changelog-Fixed: Properly scroll DM view when keyboard is open
2023-05-05 16:13:17 -07:00
William Casarin
a5cb10ddaa HomeView: refactor
Trying to clean this view up a bit
2023-05-05 14:24:24 -07:00
William Casarin
4402d4bdf5 dms: use lazyvstack
It gets too poppy otherwise

Changelog-Fixed: Made DMs less poppy
2023-05-05 14:24:11 -07:00
ericholguin
28e67f4a7c Fix zap type selection on smaller phones
Closes: #1018
Changelog-Fixed: Zap type selection on smaller phones
2023-05-05 11:24:50 -07:00
Joshua Jiang
c439100a86 Fix parse mention without space in content
Changelog-Fixed: Fix parse mention without space in content
Closes: #936
Fixes: #992
2023-05-05 11:20:20 -07:00
transifex-integration[bot]
fc3a86027f Apply translations
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'nl' language.

Apply translations in ko

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'ko' language.

Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'el_GR' language.

Apply translations in et

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'et' language.

Apply translations in ja

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.

Apply translations in sv_SE

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.

Apply translations in ar

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'ar' language.

Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'zh_CN' language.

Apply translations in zh_HK

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'zh_HK' language.

Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'zh_TW' language.

Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

Apply translations in hu_HU

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.

Apply translations in cs

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.

Apply translations in ja

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.

Apply translations in ar

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ar' language.

Apply translations in nl

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.

Apply translations in sv_SE

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.

Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

Apply translations in zh_HK

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.

Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

Apply translations in de

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'de' language.

Apply translations in pl_PL

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.

Apply translations in es_419

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'es_419' language.

Apply translations in lv_LV

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'lv_LV' language.

Apply translations in de

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.

Apply translations in hu_HU

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.

Apply translations in nl

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.

Apply translations in cs

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.

Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

Apply translations in zh_HK

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.

Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-05-05 09:01:06 -07:00
440ef02eaa Update reaction notification title and miscellaneous localization fixes 2023-05-05 09:01:05 -07:00
9a0ad7bcab Export strings for translation 2023-05-05 09:01:05 -07:00
136186e664 Fix quotations in Localizable.stringsdict 2023-05-05 09:00:03 -07:00
36364f4f70 Export strings for translation 2023-05-05 09:00:03 -07:00
45a78fa14f Rename 'Liked by' to 'Reacted by' 2023-05-05 09:00:03 -07:00
34970b38bb Fix plurality on sats 2023-05-05 09:00:02 -07:00
William Casarin
0f89d98513 Revert "Added new icons for hashtags and updated the current ones to use a proper ratio."
This breaks the look of some hashtags

This reverts commit c7129531c2.
2023-05-05 08:53:57 -07:00
William Casarin
21be1416f7 Don't preload pfps, it's not thread safe? 2023-05-05 08:38:03 -07:00
William Casarin
9efdda43f2 Ensure we have proper sizes on iconography 2023-05-05 08:31:47 -07:00
Roberto Agreda
e4e5d87e7c Changelog-Added: new iconography 2023-05-04 23:42:19 -06:00
Roberto Agreda
c7129531c2 Added new icons for hashtags and updated the current ones to use a proper ratio. 2023-05-04 21:03:03 -06:00
Bryan Montz
e4860f3ba8 Replace Vault dependency with @KeychainStorage property wrapper
Changelog-Changed: replace Vault dependency with @KeychainStorage property wrapper
Closes: #1076
2023-05-04 15:57:02 -07:00
William Casarin
27fb4e797d v1.4.3-20 changelog 2023-05-04 09:08:40 -07:00
William Casarin
e6b4b2a437 v1.4.3-20 2023-05-04 09:05:59 -07:00
William Casarin
add1e6104e Add webp image support
Kingfisher already supports this... wtf we doing

Changelog-Added: Add webp image support
2023-05-03 17:29:26 -07:00
William Casarin
5c557bc87d Don't process blurhash if we already have image cached
Changelog-Fixed: Don't process blurhash if we already have image cached
2023-05-03 17:29:26 -07:00
William Casarin
af407f7eea Home now dismisses reactions view
Changelog-Fixed: Home now dismisses reactions view
2023-05-03 17:29:26 -07:00
William Casarin
ac2e7d108d refactor sidemenu items 2023-05-03 17:29:26 -07:00
b85be50cc4 Fix auto-translations bug where languages in preferred language still gets translated
Changelog-Fixed: Fix auto-translations bug where languages in preferred language still gets translated
Closes: #1066
2023-05-03 17:29:22 -07:00
William Casarin
39a324fd1e Optimize json processing and preloading
- Preload events when added to the EventHolder queue
- Remove relative time formatting from preloader. Just do it when event appears
- Process incoming json in a background queue by default

Changelog-Fixed: Fix wrong relative times on events
Changelog-Changed: Preload events when they are queued
2023-05-03 10:36:10 -07:00
William Casarin
3b541f2ec1 Fix small bug in like counters 2023-05-03 06:36:42 -07:00
William Casarin
80ea37a102 Don't spam reconnects on error 2023-05-03 06:36:33 -07:00
William Casarin
91fc0039eb build 19 2023-05-02 08:23:58 -07:00
William Casarin
8eb013f1f7 Search hashtags automatically
Changelog-Changed: Search hashtags automatically
2023-05-02 08:22:36 -07:00
William Casarin
4f459d128a Load profiles in hashtag searches
Changelog-Fixed: Load profiles in hashtag searched
2023-05-02 07:53:06 -07:00
William Casarin
58e53631c6 Use cached note language in search model
We should never call event.note_language on the main thread
2023-05-02 07:53:06 -07:00
William Casarin
7b2e178f5b Fix warning 2023-05-02 07:53:06 -07:00
William Casarin
da99130b78 build 18 2023-05-02 07:51:29 -07:00
William Casarin
b79d361016 Preload profile pictures while scrolling
Changelog-Added: Preload profile pictures while scrolling
2023-05-02 07:33:54 -07:00
William Casarin
4889c0a7d9 Fix weird #\[0] artifacts appearing in posts and translated from english bugs
This changes the preloader to load things right away and fixes a bunch
of bugs

Changelog-Fixed: Fix weird #\[0] artifacts appearing in posts
Changelog-Fixed: Fix "translated from english" bugs
2023-05-02 06:48:02 -07:00
William Casarin
61c9732acd Fix crash when loading DMs in the background
Changelog-Fixed: Fix crash when loading DMs in the background
2023-05-02 06:48:02 -07:00
William Casarin
ee6c080af8 Fix blurhash appearing behind loaded images when swiping on carousel
Changelog-Fixed: Fixed blurhash appearing behind loaded images when swiping on carousel
2023-05-02 06:48:02 -07:00
William Casarin
a18ba86157 refactor: remove redundant rectangle in ImageCarousel 2023-05-02 06:48:02 -07:00
Bryan Montz
03931ef70e Save keys when logging in and when creating new keypair
Changelog-Added: Save keys when logging in and when creating new keypair
Closes: #1042
2023-05-02 06:47:29 -07:00
Swift
3284832eb0 Fix camera not dismissing
Changelog-Fixed: Fix camera not dismissing
Closes: #964
2023-05-01 15:39:09 -07:00
Bryan Montz
c679be9644 Top-level tab state restoration
Changelog-Added: Top-level tab state restoration
Closes: #634
2023-05-01 15:22:54 -07:00
9f701a7d44 Fix bug with reaction notifications referencing the wrong event
Changelog-Fixed: Fix bug with reaction notifications referencing the wrong event
Closes: #1047
2023-05-01 15:21:01 -07:00
Bryan Montz
cb11087034 Fix Copy Link action does not dismiss ShareAction view
Changelog-Fixed: Fix Copy Link action does not dismiss ShareAction view
Closes: #1049
2023-05-01 15:20:10 -07:00
Ben Weeks
49b7aee74e Save Jack's soul
Very minor amendment to stop the bouncing of the bolt symbol as you click it.

Changelog-Fixed: Saved Jack's soul.
Closes: #1060
2023-05-01 15:19:26 -07:00
William Casarin
5b97906138 build 17 2023-04-30 22:30:25 -07:00
William Casarin
c74d3e4938 fix some translation bugs 2023-04-30 22:04:33 -07:00
William Casarin
df6911f9cb cache note language 2023-04-30 21:40:11 -07:00
William Casarin
1ca0519e25 Event Preloading
Changelog-Added: Added event preloading when scrolling
Changelog-Added: Preload images so they don't pop in
Changelog-Fixed: Fixed preview elements popping in
Changelog-Changed: Cached various UI elements so its not as laggy
Changelog-Fixed: Fixed glitchy preview
2023-04-30 20:06:38 -07:00
William Casarin
c87f19b479 v1.4.3-15 changelog 2023-04-29 08:46:43 -07:00
William Casarin
68ed3d7796 Fix nip10 thread incompatibility for clients that add more than one reply tag
Changelog-Fixed: Fix thread incompatibility for clients that add more than one reply tag
2023-04-29 07:49:10 -07:00
Swift
5c885b0fd4 Fix sats plurality
Closes: #1034
2023-04-29 06:01:10 -07:00
8589fe9aee Translations (#1020)
* Apply translations in sv_SE

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.

* Export strings for translation

* Apply translations in nl

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.

* Apply translations in cs

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.

* Apply translations in ja

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in hu_HU

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_HK

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in sv_SE

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.

---------

Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2023-04-29 06:00:56 -07:00
William Casarin
2aee84c65f Add q tag to quote renotes
Changelog-Added: Add q tag to quoted renotes
2023-04-28 17:54:44 -07:00
William Casarin
76c6ac0f0b Add referencedid helpers 2023-04-28 17:54:44 -07:00
William Casarin
be08083b88 Load zaps instantly on events
Refactor our event cache a bit and add zap caching

Changelog-Changed: Load zaps instantly on events
2023-04-28 17:25:31 -07:00
William Casarin
c2325a5e39 always process events 2023-04-28 13:03:26 -07:00
William Casarin
3eb544e40d build 13 2023-04-28 13:00:44 -07:00
William Casarin
9d209f485c Preserve order of bookmarks when saving
Changelog-Fixed: Preserve order of bookmarks when saving
2023-04-27 13:04:46 -07:00
Swift
1394122542 Add confirmation alert when clearing all bookmarks
Changelog-Added: Add confirmation alert when clearing all bookmarks
Closes: #1016
2023-04-27 10:31:55 -07:00
William Casarin
e89c025d9d Remove blurhash opacity 2023-04-27 10:30:31 -07:00
William Casarin
0970c364b6 Tweak fade speed and opacity on blurhash placeholders 2023-04-26 15:41:30 -07:00
William Casarin
d16192e845 Show blurhash placeholders from image metadata
Changelog-Added: Show blurhash placeholders from image metadata
2023-04-26 15:21:12 -07:00
William Casarin
3b50f82094 Add image metadata to image uploads
Adds blurhash and image dimensions. This is an alternative and backwards
compatible version of NIP94 for images in kind1 notes.

Changelog-Added: Add image metadata to image uploads
2023-04-26 10:53:13 -07:00
William Casarin
46b53e1326 Add BinaryParser
Didn't end up using this, but might be useful in the future
2023-04-26 10:53:13 -07:00
William Casarin
225a028f3e build 12 2023-04-25 15:21:16 -07:00
William Casarin
d074d092a2 Fix crash when you have invalid relays in your relay list
Changelog-Fixed: Fix crash when you have invalid relays in your relay list
2023-04-25 15:06:09 -07:00
William Casarin
633fcd69a8 build 11 2023-04-25 14:31:13 -07:00
William Casarin
67869394cb Fix permanent OnlyZaps (likes broken lol) 2023-04-25 12:43:02 -07:00
William Casarin
22876b5c28 v1.4.3-10 changelog 2023-04-25 09:43:49 -07:00
William Casarin
6f7d6d1933 build 10 2023-04-25 08:57:45 -07:00
William Casarin
fddd86b207 Revert "Remove unneeded periodic reconnect timer"
This reverts commit ed058afc3b.
2023-04-25 08:57:45 -07:00
alltheseas
95f1127b74 Readme.MD: add privacy section, and link to issues
Added:
1. Damus implications on user privacy (IP address)
2. Added direct link to Damus github issues for interested contributors
3. Added statement of relation between IP address and public key

Co-authored-by: Max Hillebrand <30683012+MaxHillebrand@users.noreply.github.com>
2023-04-25 08:57:45 -07:00
William Casarin
4c82176466 Merge remote-tracking branch 'github/translations' 2023-04-25 08:57:45 -07:00
transifex-integration[bot]
e2d55ddae4 Apply translations in hu_HU
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.
2023-04-25 10:18:10 +00:00
transifex-integration[bot]
8fa80b7921 Apply translations in zh_TW
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-04-25 08:50:45 +00:00
transifex-integration[bot]
732b484faf Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-25 08:48:39 +00:00
transifex-integration[bot]
cd9c705221 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-25 08:43:59 +00:00
transifex-integration[bot]
ba5a062829 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-25 05:29:16 +00:00
transifex-integration[bot]
687d1c9a3e Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-25 05:26:56 +00:00
transifex-integration[bot]
adef207018 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:58:29 +00:00
transifex-integration[bot]
a050a5b729 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:49:06 +00:00
transifex-integration[bot]
6bced24430 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:48:56 +00:00
transifex-integration[bot]
60cddf2a15 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:48:29 +00:00
transifex-integration[bot]
c9568fe7ac Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:46:59 +00:00
transifex-integration[bot]
5c0e4599ad Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:46:49 +00:00
transifex-integration[bot]
e3519c51a5 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:46:46 +00:00
transifex-integration[bot]
ed1aa246c4 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:46:26 +00:00
transifex-integration[bot]
532647d273 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:46:03 +00:00
transifex-integration[bot]
dab8f7ca61 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:45:52 +00:00
transifex-integration[bot]
390eb342f7 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-25 03:26:11 +00:00
Suhail Saqan
f1a7c0eded Add paste button to login
Changelog-Added: Add paste button to login
Closes: #927
2023-04-24 18:30:25 -07:00
William Casarin
ed058afc3b Remove unneeded periodic reconnect timer 2023-04-24 18:21:12 -07:00
Bryan Montz
0e94c48e26 Replace Starscream with URLSessionWebSocketTask
Changelog-Fixed: Fix slow reconnection issues
2023-04-24 18:11:07 -07:00
symbsrcool
6ac68b5a73 Add nokyctranslate translation option
Changelog-Added: Add nokyctranslate translation option
Closes: #946
2023-04-24 18:07:03 -07:00
Swift
2048e68d67 Fix issue where uploaded images were from someone else
Changelog-Fixed: Fix issue where uploaded images were from someone else
2023-04-24 17:53:28 -07:00
William Casarin
624d9662d7 Merge remote-tracking branch 'github/translations' 2023-04-24 16:20:19 -07:00
William Casarin
88db9de4ea Fix reposts on macos 2023-04-24 15:38:11 -07:00
William Casarin
d667a9d8f7 Fix custom zap button hitboxes
Suggested-by: eric
2023-04-24 10:51:47 -07:00
transifex-integration[bot]
65f3c76eca Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-24 17:13:45 +00:00
transifex-integration[bot]
aed1e543d3 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-24 17:11:27 +00:00
transifex-integration[bot]
65576424fd Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-24 17:11:17 +00:00
transifex-integration[bot]
f99ad8fffa Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-24 17:10:28 +00:00
transifex-integration[bot]
987d173529 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-24 17:09:38 +00:00
transifex-integration[bot]
eab7a91f01 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-24 13:35:13 +00:00
transifex-integration[bot]
2d045f4dfb Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-24 11:13:59 +00:00
transifex-integration[bot]
835e5a438f Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ar' language.
2023-04-24 08:13:36 +00:00
transifex-integration[bot]
ca4e91564a Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ar' language.
2023-04-24 08:10:57 +00:00
8733cbd42c Fix localization issues and export strings for translation 2023-04-24 01:25:07 +02:00
William Casarin
f5cdd4a159 You can now change the default zap type
Changelog-Added: You can now change the default zap type
2023-04-23 10:31:51 -07:00
William Casarin
c4f41220e5 refactor: extract ZapTypePicker into its own file 2023-04-23 09:54:38 -07:00
William Casarin
0f119d34e6 Change 500 custom zap amount to 420🌿
Suggested-by: Terry
Changelog-Changed: Change 500 custom zap to 420
2023-04-23 08:54:13 -07:00
William Casarin
ea90fb0429 Make custom zap amounts into a grid 2023-04-23 08:40:33 -07:00
ericholguin
8227be1873 Updated custom zap view
Changelog-Changed: New looks to the custom zaps view
2023-04-23 08:40:22 -07:00
William Casarin
cbd92539a6 Merge remote-tracking branch 'github/translations' 2023-04-23 04:36:16 -07:00
William Casarin
7940e6fd32 Fix tests 2023-04-23 04:36:16 -07:00
Swift
07f8ad75dc Adjust attachment images placement when posting
Changelog-Changed: Adjust attachment images placement when posting
Closes: #979
2023-04-23 04:36:13 -07:00
transifex-integration[bot]
018bb4c33b Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ar' language.
2023-04-23 06:22:51 +00:00
transifex-integration[bot]
c81b403817 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-23 01:57:25 +00:00
transifex-integration[bot]
e54ce88a3b Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-23 01:57:22 +00:00
transifex-integration[bot]
84f4f1c71c Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_ES' language.
2023-04-22 20:10:01 +00:00
e934c2bb11 Fix crash with LibreTranslate server setting selection and remove delisted vern server
Broken after the settings refactor

Changelog-Fixed: Fix crash with LibreTranslate server setting selection and remove delisted vern server
Closes: #998
2023-04-22 12:33:11 -07:00
William Casarin
fd8ad494e9 Add partial support for different repost variants
Changelog-Added: Add partial support for different repost variants
2023-04-22 12:11:45 -07:00
William Casarin
f14ba7cce4 Fix potentially buggy media uploader setting 2023-04-22 12:11:45 -07:00
William Casarin
055b13c1cd Fix buggy zap amounts and wallet selector settings
Changelog-Fixed: Fix buggy zap amounts and wallet selector settings
2023-04-22 12:10:10 -07:00
William Casarin
357e8adf86 Refactor disable_animation setting
Pass it down from the top instead of using a function which goes around
our settings store
2023-04-22 12:08:24 -07:00
transifex-integration[bot]
a82a78c7df Apply translations in vi
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'vi' language.
2023-04-22 18:45:04 +00:00
William Casarin
084c86eb0e Only show friends, not friend-of-friend in friend filter
Changelog-Changed: Only show friends, not friend-of-friend in friend filter
2023-04-22 11:15:45 -07:00
transifex-integration[bot]
10d9d23b7b Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-22 15:30:37 +00:00
transifex-integration[bot]
50ecff0ec6 Apply translations in zh_TW
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-04-22 13:37:58 +00:00
transifex-integration[bot]
5ae96ec80a Apply translations in zh_TW
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-04-22 13:37:48 +00:00
transifex-integration[bot]
abfd48ca20 Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-22 13:37:32 +00:00
transifex-integration[bot]
67326e2003 Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-22 13:37:22 +00:00
transifex-integration[bot]
306c3fe75c Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-22 13:36:57 +00:00
transifex-integration[bot]
08c2056290 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-22 13:36:11 +00:00
transifex-integration[bot]
bc5ee7cd51 Apply translations in zh_TW
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-04-22 13:17:58 +00:00
transifex-integration[bot]
b2d1ad2537 Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-22 13:16:17 +00:00
transifex-integration[bot]
b9f37697d7 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-22 13:06:28 +00:00
transifex-integration[bot]
58e88262b0 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-22 12:49:50 +00:00
transifex-integration[bot]
26e28dd3dd Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'el_GR' language.
2023-04-22 12:46:13 +00:00
transifex-integration[bot]
6ac6ea3cd7 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'el_GR' language.
2023-04-22 12:45:53 +00:00
transifex-integration[bot]
2de75968fb Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'el_GR' language.
2023-04-22 12:44:46 +00:00
transifex-integration[bot]
37b99983d3 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:42:33 +00:00
transifex-integration[bot]
f62dc9348a Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:42:11 +00:00
transifex-integration[bot]
6aab705399 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:41:41 +00:00
transifex-integration[bot]
f7da481c68 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:36:14 +00:00
transifex-integration[bot]
e5b629742a Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:35:55 +00:00
transifex-integration[bot]
a0e6aa060b Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:35:52 +00:00
transifex-integration[bot]
6394f96ac0 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:35:38 +00:00
transifex-integration[bot]
b6d6af12b8 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:35:29 +00:00
transifex-integration[bot]
df84c4a64b Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:33:40 +00:00
transifex-integration[bot]
71b333a18a Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:33:30 +00:00
transifex-integration[bot]
29936f7b06 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:33:21 +00:00
transifex-integration[bot]
1cc1bfbbef Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:33:08 +00:00
transifex-integration[bot]
2aa39e775e Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:32:58 +00:00
transifex-integration[bot]
8a33243c98 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:32:04 +00:00
transifex-integration[bot]
d198e69dc9 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:31:38 +00:00
transifex-integration[bot]
c26b30f3c0 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:31:24 +00:00
transifex-integration[bot]
c2479df213 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-22 10:30:36 +00:00
transifex-integration[bot]
30d045b1c5 Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-22 11:27:02 +02:00
transifex-integration[bot]
d76f7564ef Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-22 11:27:02 +02:00
transifex-integration[bot]
bab72b215d Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ar' language.
2023-04-22 11:27:02 +02:00
transifex-integration[bot]
d8cd81deb8 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-22 11:27:02 +02:00
transifex-integration[bot]
92dfdacf97 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-22 11:27:02 +02:00
transifex-integration[bot]
ead6e96613 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-22 11:27:02 +02:00
transifex-integration[bot]
7312ee3884 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-22 11:27:02 +02:00
transifex-integration[bot]
45099c59db Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-22 11:27:02 +02:00
3440c828e3 Export strings for translation 2023-04-22 11:27:01 +02:00
William Casarin
00aa897f05 build 8 2023-04-21 17:48:34 -07:00
William Casarin
71a1a6f0a3 Add some default height to images 2023-04-21 17:45:58 -07:00
William Casarin
9d22f40a53 Remove some cruft 2023-04-21 17:15:23 -07:00
William Casarin
0bd40c0018 Add Friends filter to DMs
Changelog-Added: Add friends filter to DMs
2023-04-21 16:55:59 -07:00
William Casarin
ec75769a0f Refactor notification state filter saving and loading 2023-04-21 16:39:12 -07:00
William Casarin
47e349558c rename FineNotificationFilter to FriendFilter 2023-04-21 16:25:18 -07:00
William Casarin
aa559b2916 Refactor and Scope user settings to pubkey 2023-04-21 16:21:01 -07:00
William Casarin
9bf8349db6 Friends filter for notifications
Changelog-Added: Friends filter for notifications
2023-04-21 14:17:37 -07:00
William Casarin
4c44de9276 Merge remote-tracking branch 'github/translations' 2023-04-21 11:27:35 -07:00
William Casarin
aa5f8d19f7 build 7 2023-04-21 11:26:49 -07:00
William Casarin
040e452132 Fix having to set onlyzaps mode every time on restart
Changelog-Fixed: Fix having to set onlyzaps mode every time on restart
2023-04-21 10:01:32 -07:00
William Casarin
ff41bb1b35 Update OnlyZaps wording: others can still pointlessly send you likes 2023-04-21 09:54:29 -07:00
transifex-integration[bot]
efe231c122 Apply translations in nl [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'nl' language.
2023-04-21 16:52:37 +00:00
transifex-integration[bot]
0305712f65 Apply translations in es_419 [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'es_419' language.
2023-04-21 16:46:29 +00:00
William Casarin
ba844aec97 Enable like button on OnlyZaps profiles for people who don't have OnlyZaps mode on
It seems like people still want to like posts even if the receiver isn't
going to see it.

Changelog-Changed: Enable like button on OnlyZaps profiles for people who don't have OnlyZaps mode on
2023-04-21 09:43:18 -07:00
transifex-integration[bot]
62eac0032f Apply translations in ja [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-21 16:43:06 +00:00
transifex-integration[bot]
b673e9b43b Apply translations in cs [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-21 16:43:03 +00:00
transifex-integration[bot]
1dd274e07f Apply translations in pt_PT [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'pt_PT' language.
2023-04-21 16:43:00 +00:00
transifex-integration[bot]
e8aa52efea Apply translations in sv_SE [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'sv_SE' language.
2023-04-21 16:42:59 +00:00
transifex-integration[bot]
c7f6db84dd Apply translations in pl_PL [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'pl_PL' language.
2023-04-21 16:42:57 +00:00
transifex-integration[bot]
4a28ddefab Apply translations in el_GR [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'el_GR' language.
2023-04-21 16:42:53 +00:00
transifex-integration[bot]
3f4e37f1f8 Apply translations in zh_HK [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'zh_HK' language.
2023-04-21 16:42:49 +00:00
transifex-integration[bot]
9dc304aa04 Apply translations in zh_CN [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'zh_CN' language.
2023-04-21 16:42:45 +00:00
transifex-integration[bot]
d3dd4faa42 Apply translations in vi [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'vi' language.
2023-04-21 16:42:42 +00:00
transifex-integration[bot]
b40ee38895 Apply translations in ru [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ru' language.
2023-04-21 16:42:36 +00:00
transifex-integration[bot]
fb9d1db6e6 Apply translations in ja [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ja' language.
2023-04-21 16:42:26 +00:00
transifex-integration[bot]
591cdd478e Apply translations in fr [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'fr' language.
2023-04-21 16:42:23 +00:00
transifex-integration[bot]
b97204400f Apply translations in cs [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'cs' language.
2023-04-21 16:42:19 +00:00
transifex-integration[bot]
ebfe00362c Apply translations in zh_TW [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'zh_TW' language.
2023-04-21 16:37:37 +00:00
transifex-integration[bot]
accafb4cb2 Apply translations in zh_CN [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'zh_CN' language.
2023-04-21 16:37:34 +00:00
transifex-integration[bot]
20b124aa59 Apply translations in pt_BR [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'pt_BR' language.
2023-04-21 16:37:30 +00:00
transifex-integration[bot]
057bb2add5 Apply translations in de [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'de' language.
2023-04-21 16:37:24 +00:00
transifex-integration[bot]
c1b31a9938 Apply translations in sv_SE [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-21 16:37:16 +00:00
transifex-integration[bot]
1e532f9e63 Apply translations in el_GR [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-21 16:37:12 +00:00
transifex-integration[bot]
16a7d5dedf Apply translations in pl_PL [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-21 16:37:08 +00:00
transifex-integration[bot]
8898bffbed Apply translations in hu_HU [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.
2023-04-21 16:37:04 +00:00
transifex-integration[bot]
7583346b06 Apply translations in zh_TW [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-04-21 16:37:00 +00:00
transifex-integration[bot]
8fbc71a2c2 Apply translations in zh_CN [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-21 16:36:56 +00:00
transifex-integration[bot]
e100f8c313 Apply translations in ru [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ru' language.
2023-04-21 16:36:53 +00:00
transifex-integration[bot]
676c6f2afb Apply translations in pt_BR [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-21 16:36:49 +00:00
transifex-integration[bot]
e7c66156d3 Apply translations in nl [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-21 16:36:45 +00:00
transifex-integration[bot]
99816695ae Apply translations in de [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-21 16:36:41 +00:00
transifex-integration[bot]
8e984ffa98 Apply translations in ar [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ar' language.
2023-04-21 16:36:37 +00:00
transifex-integration[bot]
61e4359164 Apply translations in zh_TW [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'zh_TW' language.
2023-04-21 16:36:33 +00:00
transifex-integration[bot]
71940aaca0 Apply translations in hu_HU [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'hu_HU' language.
2023-04-21 16:36:22 +00:00
transifex-integration[bot]
042237ace7 Apply translations in es_ES [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'es_ES' language.
2023-04-21 16:36:17 +00:00
transifex-integration[bot]
b9c10d1eb1 Apply translations in pt_BR [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'pt_BR' language.
2023-04-21 16:35:59 +00:00
transifex-integration[bot]
638b98624e Apply translations in ko [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ko' language.
2023-04-21 16:32:28 +00:00
transifex-integration[bot]
c8224f841d Apply translations in de [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'de' language.
2023-04-21 16:32:25 +00:00
transifex-integration[bot]
18439bbdf9 Apply translations in ar [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ar' language.
2023-04-21 16:32:21 +00:00
transifex-integration[bot]
1fd7b759b1 Apply translations in zh_HK [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'zh_HK' language.
2023-04-21 16:32:12 +00:00
transifex-integration[bot]
0642abe064 Apply translations in zh_HK [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-21 16:32:06 +00:00
transifex-integration[bot]
080efda25e Apply translations in vi [Manual Sync]
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'vi' language.
2023-04-21 16:32:04 +00:00
William Casarin
bbfe5380e0 Add onlyzap badges to usernames 2023-04-20 14:40:39 -07:00
William Casarin
8a20b7e4a7 Add #zaps and #onlyzaps to custom hashtags
Changelog-Added: Add #zaps and #onlyzaps to custom hashtags
2023-04-20 14:40:16 -07:00
William Casarin
191950a5aa Colorize friend icons
No reason why nip05 badges should have all the fun

Changelog-Added: Colorize friend icons
2023-04-20 14:30:27 -07:00
William Casarin
ac82f1bc09 Add OnlyZaps Mode
Changelog-Added: Add OnlyZaps mode: disable reactions, only zaps!
2023-04-20 13:41:05 -07:00
William Casarin
209f3e8759 onlyzaps: Clean up reaction filter logic a bit 2023-04-20 11:23:58 -07:00
William Casarin
897621b5ed Don't fetch delete events 2023-04-20 08:23:56 -07:00
66641fc9ae Add setting to hide reactions
Changelog-Added: Add setting to hide reactions
2023-04-20 08:20:50 -07:00
681e0f0be9 Translations (#976)
* Apply translations in pt_PT

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'pt_PT' language.

* Apply translations in sv_SE

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.

* Apply translations in ja

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.

* Apply translations in ja

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'el_GR' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in el_GR

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.

* Apply translations in hu_HU

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.

* Apply translations in es_419

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.

* Export strings for translation

* Apply translations in nl

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.

* Apply translations in sv_SE

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.

* Apply translations in ja

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.

* Apply translations in hu_HU

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.

* Apply translations in pl_PL

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_CN

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.

* Apply translations in zh_HK

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

* Apply translations in zh_TW

100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.

---------

Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2023-04-20 08:16:23 -07:00
William Casarin
2ff12823f2 Don't nest embedded notes 2023-04-18 12:43:26 -07:00
William Casarin
d6d996e84b Don't create spiral hellthreads 2023-04-18 12:38:16 -07:00
William Casarin
d1fce5054d Implement quote reposting 2023-04-18 12:16:11 -07:00
William Casarin
300cd87fc2 Remove EmbeddedEventView
All embedded events are now just regular event views
2023-04-18 10:42:56 -07:00
bff3c0dd52 Improve sats numeric entry for zaps
Changelog-Changed: Add number formatting for sats entry and use selected zaps amount from picker as placeholder
Changelog-Fixed: Do not allow non-numeric characters for sats amount and fix numeric entry for other number systems for all locales
2023-04-17 15:20:14 -07:00
William Casarin
ddd027141a no banner uploads yet :( 2023-04-17 15:18:57 -07:00
William Casarin
9b3e25dd6d v1.4.3-2 changelog 2023-04-17 14:58:44 -07:00
William Casarin
1ae6a3d871 v1.4.3-2 2023-04-17 14:29:50 -07:00
William Casarin
4821ba61a5 reply_p_tags: Use uniq instead of Set to preserve order 2023-04-17 14:29:32 -07:00
Swift
15849e290e Fixed repost turning green too early and not reposting sometimes
Changelog-Fixed: Fixed repost turning green too early and not reposting sometimes
2023-04-17 12:55:52 -07:00
Joshua Jiang
6ed562ed24 Fix shuffling when choosing users to reply to
Changelog-Fixed: Fix shuffling when choosing users to reply to
Co-authored-by: William Casarin <jb55@jb55.com>
Closes: #937
2023-04-17 12:55:22 -07:00
93580e5296 Do not translate own notes if logged in with private key
If you're not the private key user, it's possible you're just lurking on
somebody's account and you might not speak their language, so you might
need translations.

Changelog-Fixed: Do not translate own notes if logged in with private key
Closes: #943
2023-04-17 11:06:50 -07:00
Swift
a5c33e4431 Fix reply image previews appearing on new posts
Closes: #954
2023-04-17 11:00:51 -07:00
ad7a79c2bb Fix typo on ParticipantsView.swift file name
Closes: #945
2023-04-17 10:27:47 -07:00
William Casarin
eaec3ae011 Merge remote-tracking branch 'github/translations' 2023-04-17 10:26:35 -07:00
William Casarin
5a1b966191 Only check inner_events on boosts 2023-04-17 10:19:47 -07:00
Gísli Kristjánsson
a320fae2bc Load missing profiles from boosts on home view
Changelog-Fixed: Load missing profiles from boosts on home view
Closes: #947
2023-04-17 10:19:29 -07:00
Gísli Kristjánsson
8e0136a13a Load profiles for profile model
Changelog-Fixed: Load missing profiles from boosts on profile view
2023-04-17 10:17:59 -07:00
Gísli Kristjánsson
8f767b03ae fix: find inner_event profiles from events 2023-04-17 10:10:59 -07:00
Swift
209b23674d Add ability to copy url from post media previews 2023-04-17 10:10:41 -07:00
transifex-integration[bot]
86917dbd69 Apply translations in zh_TW
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-04-17 08:56:51 +00:00
transifex-integration[bot]
59daf555cd Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-17 08:56:06 +00:00
transifex-integration[bot]
916c7885f8 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-17 08:55:54 +00:00
transifex-integration[bot]
252763ea77 Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-17 08:55:31 +00:00
transifex-integration[bot]
aa610c18b2 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-17 08:34:09 +00:00
transifex-integration[bot]
1de96a9dc5 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-17 05:07:03 +00:00
transifex-integration[bot]
746a4093de Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-16 19:27:10 +00:00
transifex-integration[bot]
5cc9288759 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'el_GR' language.
2023-04-16 19:12:53 +00:00
transifex-integration[bot]
3bedc83764 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'el_GR' language.
2023-04-16 19:12:32 +00:00
transifex-integration[bot]
eb17e07478 Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-16 17:42:10 +00:00
transifex-integration[bot]
b96ae84068 Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ar' language.
2023-04-16 17:35:54 +00:00
transifex-integration[bot]
af7d4d2c53 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-16 17:21:08 +00:00
d93a0600f3 Fix localization issues 2023-04-16 19:07:57 +02:00
transifex-integration[bot]
e9e5756c94 Apply translations in zh_TW
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-04-16 17:01:24 +02:00
transifex-integration[bot]
0b3cc2092f Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-16 17:01:24 +02:00
transifex-integration[bot]
285ab11324 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-16 17:01:24 +02:00
transifex-integration[bot]
3610a76c55 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-16 17:01:23 +02:00
transifex-integration[bot]
4644c57bf3 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-16 17:01:23 +02:00
transifex-integration[bot]
33887982b0 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-16 17:01:23 +02:00
transifex-integration[bot]
c3d3db352e Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-16 17:01:23 +02:00
transifex-integration[bot]
8f08e5c4c8 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-16 17:01:23 +02:00
transifex-integration[bot]
e00e89c16b Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-16 17:01:23 +02:00
transifex-integration[bot]
9151ef02a0 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-16 17:01:23 +02:00
transifex-integration[bot]
709a707942 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-16 17:01:23 +02:00
transifex-integration[bot]
343b7a2bcc Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-16 17:01:23 +02:00
transifex-integration[bot]
6534ba3bde Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-16 17:01:22 +02:00
William Casarin
02fc065005 Always check signatures on profile events
These contain sensitive data (lightning addresses) and it would be
really bad if these were forged.

Changelog-Changed: Always check signatures of profile events
2023-04-15 16:01:00 -07:00
Bartholomew Joyce
668b0a94df cleanup nostr bech32 entity parsing
Closes: #911
2023-04-15 15:04:13 -07:00
William Casarin
ebba9d3004 Fix broken notifications 2023-04-15 13:42:10 -07:00
William Casarin
8733a34933 v1.4.3-1 changelog 2023-04-15 12:57:42 -07:00
William Casarin
0de6cfe344 Merge remote-tracking branch 'github/translations' 2023-04-15 12:54:34 -07:00
William Casarin
a4d40dbfa6 Revert "Changelog-Added: Banner Image Upload"
I didn't mean to commit this yet

This reverts commit 95041600dc.
2023-04-15 12:43:44 -07:00
Swift
05d332eac3 Add deep links for local notifications
Allow notifications to be clickable

Changelog-Added: Add deep links for local notifications
Co-authored-by: William Casarin <jb55@jb55.com>
Closes: #880
2023-04-15 12:41:49 -07:00
William Casarin
b5a3697d78 Refactor direct messages model
We can track the pubkey in the DirectMessageModel instead of having a
janky tuple.
2023-04-15 12:41:00 -07:00
William Casarin
247270f3d3 Introduce LocalNotification
This will be used for local notification data
2023-04-15 12:40:00 -07:00
William Casarin
9327068264 ContentView: open thread helper 2023-04-15 12:38:05 -07:00
transifex-integration[bot]
c277c14bcd Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-15 18:48:00 +00:00
transifex-integration[bot]
e688a691fc Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-15 18:47:38 +00:00
transifex-integration[bot]
b470af8f1d Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-15 18:47:29 +00:00
transifex-integration[bot]
efd1168217 Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-15 18:46:02 +00:00
transifex-integration[bot]
f7a3f9ab76 Apply translations in hu_HU
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.
2023-04-15 17:55:34 +00:00
Joel Klabo
95041600dc Changelog-Added: Banner Image Upload 2023-04-15 10:28:17 -07:00
William Casarin
8a8d2ebbc3 PostView: change wording on upload confirmation 2023-04-15 10:26:36 -07:00
William Casarin
fad0a6b783 PostView: remove ! unwrap for mediaToUpload 2023-04-15 10:22:05 -07:00
Swift
f5d7465368 Ask permission before uploading media
Changelog-Changed: Ask permission before uploading media
Closes: #886
2023-04-15 10:19:53 -07:00
OlegAba
8a785559c6 Fix tap area when mentioning users
Changelog-Fixed: Fix tap area when mentioning users
Closes: #895
2023-04-15 10:16:40 -07:00
William Casarin
d4c8c15cc3 Revert "Revert "Fix tap area when mentioning users""
This reverts commit 735376b00f.
2023-04-15 09:59:55 -07:00
Ryan Calder
41a462871c Enable Mac Catalyst
Closes: #926
2023-04-15 09:47:21 -07:00
William Casarin
76a669acc2 Show DM message in local notification
Changelog-Changed: Show DM message in local notification
2023-04-15 09:46:13 -07:00
William Casarin
39236dc094 remove verbose logs 2023-04-15 09:44:17 -07:00
transifex-integration[bot]
5860125802 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-15 10:29:15 +00:00
transifex-integration[bot]
ae96c3b707 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-15 09:50:43 +00:00
transifex-integration[bot]
136f6f37e8 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-15 09:49:12 +00:00
transifex-integration[bot]
21f84f722b Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-15 09:49:04 +00:00
transifex-integration[bot]
47747379ee Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-15 09:48:02 +00:00
transifex-integration[bot]
a1b95d40e6 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-15 09:43:47 +00:00
transifex-integration[bot]
0fc69d862a Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-15 09:36:45 +00:00
fb0330476d Export strings for translation 2023-04-15 01:32:07 +02:00
transifex-integration[bot]
4b978594fa Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-15 01:31:27 +02:00
William Casarin
f0bbba7a33 Fix invalid DM author notifications
Changelog-Fixed: Fix invalid DM author notifications
2023-04-14 11:46:55 -07:00
William Casarin
b5faae9d1c Make reposts use postbox 2023-04-14 11:46:55 -07:00
William Casarin
a4d4954abd Fix relay signal indicator, properly show how many relays you are connected to
Changelog-Fixed: Fix relay signal indicator, properly show how many relays you are connected to
2023-04-14 11:46:55 -07:00
William Casarin
735376b00f Revert "Fix tap area when mentioning users"
This reverts commit a2cd51b6e7.
2023-04-14 11:36:45 -07:00
William Casarin
042e02d2e4 regression: unbreak dms 2023-04-14 10:33:50 -07:00
William Casarin
40468b1603 refactor: dms view init logic 2023-04-14 10:33:20 -07:00
William Casarin
8c19ec1532 small refactor to include_event 2023-04-14 09:54:54 -07:00
1ac9620242 Add thread muting
Changelog-Added: Add thread muting
Closes: #893
2023-04-14 09:43:36 -07:00
Swift
d5ecc9bce4 Preview media uploads when posting
Changelog-Added: Preview media uploads when posting
Closes: #894
2023-04-14 09:32:27 -07:00
William Casarin
d82b69aac5 Merge remote-tracking branch 'github/translations' 2023-04-14 09:24:59 -07:00
William Casarin
bad6ba3643 qrcode: don't default pubkey to "" 2023-04-14 09:23:14 -07:00
ericholguin
5c131e62d7 Add QR Code in profiles
Changelog-Added: Add QR Code in profiles
Closes: #918
2023-04-14 09:20:10 -07:00
William Casarin
29ab48287f start v1.4.3-1 build train 2023-04-14 09:20:10 -07:00
transifex-integration[bot]
5c854519db Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-14 14:15:46 +00:00
transifex-integration[bot]
2cc04e24a3 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-14 11:51:53 +00:00
transifex-integration[bot]
d24bea366d Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ar' language.
2023-04-14 03:20:41 +00:00
transifex-integration[bot]
85ce8cb93c Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-13 18:44:01 +00:00
32bb8c365d Export strings for translation 2023-04-13 18:37:58 +02:00
transifex-integration[bot]
d9285ab3ca Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-13 18:33:59 +02:00
3cba771655 Export strings for translation 2023-04-13 18:33:58 +02:00
f6f2517fda Merge French variant translations into general French translations 2023-04-13 18:33:58 +02:00
transifex-integration[bot]
047325e6b2 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-13 18:33:58 +02:00
transifex-integration[bot]
ba2108d659 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'cs' language.
2023-04-13 18:33:58 +02:00
transifex-integration[bot]
863c7baa8b Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'cs' language.
2023-04-13 18:33:58 +02:00
transifex-integration[bot]
8a5e95e47a Apply translations in fr
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'fr' language.
2023-04-13 18:33:58 +02:00
transifex-integration[bot]
de0997216d Apply translations in fr
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'fr' language.
2023-04-13 18:33:58 +02:00
transifex-integration[bot]
cc64c82ec4 Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'sv_SE' language.
2023-04-13 18:33:57 +02:00
transifex-integration[bot]
e2ca02399b Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-13 18:33:57 +02:00
transifex-integration[bot]
5418f55cee Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-13 18:33:57 +02:00
transifex-integration[bot]
eb65d473cd Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-13 18:33:57 +02:00
transifex-integration[bot]
dd337c4805 Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-13 18:33:57 +02:00
transifex-integration[bot]
2f6ed72f6d Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-13 18:33:57 +02:00
transifex-integration[bot]
d71bb33408 Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-13 18:33:57 +02:00
transifex-integration[bot]
72cfb2b071 Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-13 18:33:57 +02:00
transifex-integration[bot]
a67cb2df90 Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-13 18:33:56 +02:00
William Casarin
23e9ce1455 v1.4.2 changelog 2023-04-13 09:27:57 -07:00
William Casarin
5f1132cbc8 v1.4.2-2 2023-04-12 20:11:08 -07:00
William Casarin
806c6257df A few more performance tweaks 2023-04-12 20:09:51 -07:00
William Casarin
18aafb086e Revert "Make tabs easier to click"
This reverts commit 2a2af056eb.
2023-04-12 19:49:52 -07:00
William Casarin
fc534ea42d Avoid slow string byte counting functions 2023-04-12 19:26:28 -07:00
William Casarin
54c8958250 Fix a few more hitches 2023-04-12 18:22:16 -07:00
William Casarin
e9f71ed07c Load images asyncronously from disk
Changelog-Fixed: Fix hitches caused by syncronous loading of cached images
2023-04-12 13:34:21 -07:00
William Casarin
c719058487 Revert "Remove duplicate share sheet action"
This reverts commit 2b34e88a47.
2023-04-12 11:26:41 -07:00
Luis Cabrera
ab853c406c Display follows in most recent to oldest
Changelog-Changed: Display follows in most recent to oldest
2023-04-11 15:30:32 -07:00
William Casarin
8a88824677 Merge remote-tracking branch 'github/translations' 2023-04-11 15:22:26 -07:00
William Casarin
0b3918710a Include #btc in custom #bitcoin hashtag
Changelog-Added: Include #btc in custom #bitcoin hashtag
2023-04-11 15:16:57 -07:00
William Casarin
1320ff6bec Fix tabs sometimes not switching
This is the dumbest code I've ever written

Changelog-Fixed: Fix tabs sometimes not switching
2023-04-11 15:05:03 -07:00
William Casarin
10cab37270 remove unneeded id thingies 2023-04-11 14:54:33 -07:00
William Casarin
179da97090 cleanup some dubious code 2023-04-11 14:21:48 -07:00
William Casarin
2b2d124495 Configurable notification dots
Changelog-Added: Make notification dots configurable
2023-04-11 13:58:04 -07:00
William Casarin
2a2af056eb Make tabs easier to click
Changelog-Changed: Make tabs easier to click
2023-04-11 13:58:04 -07:00
William Casarin
f56edd5547 switch to v1.4.2 train 2023-04-11 13:00:03 -07:00
William Casarin
b30d0c01db nip19: allow empty relays in nprofile and nevent 2023-04-11 12:45:45 -07:00
William Casarin
e8d63768c1 Fix note mention test 2023-04-11 10:27:11 -07:00
William Casarin
1f648057d5 Add another bech32 test 2023-04-11 10:23:34 -07:00
Bartholomew Joyce
ea14099b62 Improved parsing of bech32 entities 2023-04-11 10:23:34 -07:00
William Casarin
f5942f5123 build 9 2023-04-11 10:23:34 -07:00
William Casarin
cb8585e4f8 Fix naddr crash 2023-04-11 10:03:48 -07:00
transifex-integration[bot]
526689c742 Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:41:40 +00:00
transifex-integration[bot]
32a9856e2a Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:41:37 +00:00
transifex-integration[bot]
6082a2829f Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:41:16 +00:00
transifex-integration[bot]
b3f6b451bf Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:41:14 +00:00
transifex-integration[bot]
91d51c5e76 Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:41:02 +00:00
transifex-integration[bot]
3262fe806a Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:40:53 +00:00
transifex-integration[bot]
d04e9c9b5f Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:40:42 +00:00
transifex-integration[bot]
015eb5f9fe Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:40:36 +00:00
transifex-integration[bot]
4a525a7581 Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:40:27 +00:00
transifex-integration[bot]
72e14fc3a8 Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:33:08 +00:00
transifex-integration[bot]
af275965ee Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:32:42 +00:00
transifex-integration[bot]
9f5913828a Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-11 12:32:30 +00:00
transifex-integration[bot]
c7c21cdee7 Apply translations in hu_HU
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'hu_HU' language.
2023-04-11 09:01:19 +00:00
William Casarin
44a2c4ba7b v1.4.1-8 changelog 2023-04-10 16:13:43 -07:00
William Casarin
a74aea9d12 v1.4.1-8 2023-04-10 16:12:26 -07:00
William Casarin
0866c70346 Fix tests 2023-04-10 16:09:43 -07:00
William Casarin
2b34e88a47 Remove duplicate share sheet action 2023-04-10 10:02:20 -07:00
William Casarin
2aa8d527b9 Don't leak mentions in DMs
Changelog-Fixed: Don't leak mentions in DMs
2023-04-10 09:31:26 -07:00
transifex-integration[bot]
88cbb55953 Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-10 15:26:20 +00:00
transifex-integration[bot]
e738c6c1ca Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-10 15:26:08 +00:00
transifex-integration[bot]
f4e0c8df5c Apply translations in ko
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'ko' language.
2023-04-10 15:17:52 +00:00
transifex-integration[bot]
269269d056 Apply translations in ko
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ko' language.
2023-04-10 15:14:51 +00:00
transifex-integration[bot]
fd49539615 Apply translations in ko
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ko' language.
2023-04-10 15:14:36 +00:00
transifex-integration[bot]
dbb5c19002 Apply translations in ko
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ko' language.
2023-04-10 15:14:28 +00:00
transifex-integration[bot]
6961113734 Apply translations in ko
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ko' language.
2023-04-10 15:14:11 +00:00
transifex-integration[bot]
4642656ce2 Apply translations in ko
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ko' language.
2023-04-10 14:24:40 +00:00
transifex-integration[bot]
0c2132b122 Apply translations in ko
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ko' language.
2023-04-10 14:24:14 +00:00
transifex-integration[bot]
a1311a940a Apply translations in ko
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ko' language.
2023-04-10 14:22:27 +00:00
transifex-integration[bot]
af18975240 Apply translations in ko
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ko' language.
2023-04-10 14:22:15 +00:00
William Casarin
f500da03e8 nip27: handle nrelay a bit better 2023-04-09 22:45:38 -07:00
William Casarin
8a230861bf remove broken test 2023-04-09 22:45:21 -07:00
William Casarin
13354b0eb5 Refactor NIP19 implementation and add tests
Closes: #837
2023-04-09 22:03:51 -07:00
Bartholomew Joyce
c6f4643b5a Add support for nostr: bech32 urls in posts and DMs (NIP19)
Changelog-Added: Add support for nostr: bech32 urls in posts and DMs (NIP19)
2023-04-09 22:03:27 -07:00
transifex-integration[bot]
ee34b1c0a3 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-10 01:12:21 +00:00
OlegAba
a2cd51b6e7 Fix tap area when mentioning users
Changelog-Fixed: Fix tap area when mentioning users
Closes: #895
2023-04-09 16:17:57 -07:00
transifex-integration[bot]
831a409fe6 Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'pt_BR' language.
2023-04-09 14:48:54 +00:00
transifex-integration[bot]
11e22628bb Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'pt_BR' language.
2023-04-09 14:47:54 +00:00
transifex-integration[bot]
6598b5b4bb Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:16 -04:00
transifex-integration[bot]
ca293ef29b Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:16 -04:00
transifex-integration[bot]
8051324d3e Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:15 -04:00
transifex-integration[bot]
a11cf66088 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:15 -04:00
transifex-integration[bot]
a10142d3b9 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:15 -04:00
transifex-integration[bot]
83fcd8600a Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:15 -04:00
transifex-integration[bot]
6283157ef4 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:15 -04:00
transifex-integration[bot]
8b2f45da41 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:15 -04:00
transifex-integration[bot]
ed467a2f79 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:15 -04:00
transifex-integration[bot]
feace9b70d Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:15 -04:00
transifex-integration[bot]
62bccd6b60 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_419' language.
2023-04-08 20:05:15 -04:00
transifex-integration[bot]
6f4d12cab4 Apply translations in zh_TW
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-04-08 20:05:14 -04:00
transifex-integration[bot]
436fe830c7 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-08 20:05:14 -04:00
transifex-integration[bot]
69b6d54b0e Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-08 20:05:14 -04:00
transifex-integration[bot]
13522028ba Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-08 20:05:14 -04:00
transifex-integration[bot]
1459581ec9 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-08 20:05:14 -04:00
transifex-integration[bot]
31aedd2a6e Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-08 20:05:14 -04:00
transifex-integration[bot]
bb1dff13ce Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-08 20:05:14 -04:00
transifex-integration[bot]
3b8c884b30 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-08 20:05:14 -04:00
transifex-integration[bot]
30299fafed Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-08 20:05:13 -04:00
William Casarin
46c208c9a5 v1.4.1-7 changelog 2023-04-07 12:15:34 -07:00
William Casarin
8e78bf9e1a v1.4.1-7 2023-04-07 12:14:57 -07:00
William Casarin
82fff4591c Add #zap and #zapathon custom hashtags
Changelog-Added: Add #zap and #zapathon custom hashtags
2023-04-07 12:05:54 -07:00
OlegAba
b8226d674d Fix post view padding
Changelog-Fixed: Fix padding in post view
Closes: #879
2023-04-07 11:33:52 -07:00
3f3892ba1d Add validation to prevent whitespaces be inputted on NIP-05 input field
Changelog-Changed: Add validation to prevent whitespaces be inputted on NIP-05 input field
Closes: #793
2023-04-07 11:22:38 -07:00
Bryan Montz
1b6224e665 Show most recently bookmarked notes at the top
Changelog-Fixed: Show most recently bookmarked notes at the top
Closes: #854
2023-04-07 11:21:42 -07:00
William Casarin
782f8d6a69 Change reply color from blue to purple. Blue is banned from Damus.
Changelog-Changed: Change reply color from blue to purple. Blue is banned from Damus.
2023-04-07 10:49:33 -07:00
Joel Klabo
9ad6af0e4f Fix Edit Profile Background Colors 2023-04-07 10:37:59 -07:00
William Casarin
e16ea0f4dc Merge remote-tracking branch 'github/translations' 2023-04-07 10:15:53 -07:00
William Casarin
5b1808d8e7 Add custom #plebchain icon
Changelog-Added: Add custom #plebchain icon
2023-04-07 10:10:13 -07:00
transifex-integration[bot]
d50b2deb26 Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-07 07:09:24 +00:00
transifex-integration[bot]
9de4730e17 Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-07 06:14:30 +00:00
transifex-integration[bot]
382265dd39 Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-07 06:13:13 +00:00
6c7f8cdbe5 Fix localization issues and export strings for translation 2023-04-06 21:05:53 -04:00
William Casarin
36a92b3795 v1.4.1-6 changelog 2023-04-06 17:41:34 -07:00
William Casarin
6d4d218c28 v1.4.1-6 2023-04-06 17:39:41 -07:00
transifex-integration[bot]
8679da1275 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 20:38:48 -04:00
transifex-integration[bot]
59dcbc130c Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 20:38:48 -04:00
transifex-integration[bot]
badd3210e5 Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-06 20:38:48 -04:00
transifex-integration[bot]
dd6cc3cf4f Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-06 20:38:48 -04:00
transifex-integration[bot]
36a0ca9c80 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-06 20:38:48 -04:00
transifex-integration[bot]
a7d3b19665 Apply translations in vi
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'vi' language.
2023-04-06 20:38:48 -04:00
transifex-integration[bot]
226e567987 Apply translations in vi
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'vi' language.
2023-04-06 20:38:48 -04:00
transifex-integration[bot]
898ffc0186 Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_ES' language.
2023-04-06 20:38:48 -04:00
transifex-integration[bot]
4d0f7b576b Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_ES' language.
2023-04-06 20:38:48 -04:00
transifex-integration[bot]
230d049384 Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_ES' language.
2023-04-06 20:38:47 -04:00
transifex-integration[bot]
774a4173b0 Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_ES' language.
2023-04-06 20:38:47 -04:00
transifex-integration[bot]
f8b5d91720 Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_ES' language.
2023-04-06 20:38:47 -04:00
transifex-integration[bot]
0832c82ee8 Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_ES' language.
2023-04-06 20:38:46 -04:00
William Casarin
4786c6f0cb Don't show Translating... if we're not actually translating
Changelog-Fixed: Don't show Translating... if we're not actually translating
2023-04-06 17:33:01 -07:00
William Casarin
8d0aea22fd Custom hashtag offsets
This allows you to tweak the positioning a bit
2023-04-06 17:28:43 -07:00
William Casarin
3d27e49e70 Add custom #nostr and #coffeechain hashtags
Changelog-Added: Custom hashtags for #nostr and #coffeechain
2023-04-06 17:09:50 -07:00
William Casarin
e9be227009 Add bitcoin icon to bitcoin hashtags
Changelog-Added: Add bitcoin icon to bitcoin hashtags
2023-04-06 16:04:16 -07:00
William Casarin
2e640db012 Make bitcoin hashtag orange 2023-04-06 12:10:39 -07:00
William Casarin
eed16449fe oops, we're on build 5 2023-04-06 12:10:31 -07:00
William Casarin
3661d64450 regression: remove action bar from DM view 2023-04-06 12:10:17 -07:00
William Casarin
24c82293b3 Disable translations in DMs by default
There is an option to enable it now.

Changelog-Changed: Disable translations in DMs by default
2023-04-06 12:07:01 -07:00
William Casarin
7fb1bc48c4 rename NostrBuild to nostr.build
Closes: #883
2023-04-06 11:05:51 -07:00
William Casarin
2ae4a156da Make sure we only update translation cache on main thread 2023-04-06 10:39:01 -07:00
William Casarin
f700dd799f v1.4.1-4 changelog 2023-04-06 10:31:52 -07:00
William Casarin
00548adc1f v1.4.1-4 2023-04-06 10:31:20 -07:00
William Casarin
7c08d4af45 perf: cache note artifacts 2023-04-06 10:27:15 -07:00
William Casarin
c7bf1da797 perf: cache lnurl to avoid bech32 encoding on the main thread 2023-04-06 10:26:51 -07:00
William Casarin
c5341ba337 Cache translations, fix translation popping
Completely refactor Translate View. Simplify bool logic into a state enum.

Changelog-Fixed: Fix translation text popping
Changelog-Added: Cache translations
2023-04-06 10:16:53 -07:00
William Casarin
95fb7bccf8 Merge remote-tracking branch 'github/translations' 2023-04-06 08:35:24 -07:00
William Casarin
6499738994 Fix auto-translations
Changelog-Fixed: Fix broken auto-translations
2023-04-06 08:27:27 -07:00
William Casarin
532eaa35bf pointless refactors 2023-04-06 08:27:27 -07:00
9c1bb30f5f Localization fix and export translations 2023-04-06 10:47:51 -04:00
transifex-integration[bot]
4683b417b9 Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pl_PL' language.
2023-04-06 10:42:42 -04:00
transifex-integration[bot]
2176b58215 Apply translations in zh_TW
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_TW' language.
2023-04-06 10:42:42 -04:00
transifex-integration[bot]
3c7627bb9a Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_HK' language.
2023-04-06 10:42:41 -04:00
transifex-integration[bot]
463ca5ce7b Apply translations in fr_FR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'fr_FR' language.
2023-04-06 10:42:41 -04:00
transifex-integration[bot]
b6a0626890 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-06 10:42:41 -04:00
transifex-integration[bot]
dbfad189cb Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-06 10:42:41 -04:00
transifex-integration[bot]
8159213ef0 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'zh_CN' language.
2023-04-06 10:42:41 -04:00
transifex-integration[bot]
684841c03a Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-06 10:42:41 -04:00
transifex-integration[bot]
e429bd7df9 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-04-06 10:42:41 -04:00
transifex-integration[bot]
45ebcf565a Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 10:42:41 -04:00
transifex-integration[bot]
c031b08c9a Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 10:42:41 -04:00
transifex-integration[bot]
d98503732e Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'de' language.
2023-04-06 10:42:40 -04:00
transifex-integration[bot]
bfe0a39370 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'de' language.
2023-04-06 10:42:40 -04:00
transifex-integration[bot]
36de599326 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'de' language.
2023-04-06 10:42:40 -04:00
transifex-integration[bot]
3cbdfb7ddf Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'de' language.
2023-04-06 10:42:40 -04:00
transifex-integration[bot]
ddd309634f Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'de' language.
2023-04-06 10:42:40 -04:00
transifex-integration[bot]
6bbf56f80c Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'de' language.
2023-04-06 10:42:40 -04:00
transifex-integration[bot]
de1332d6ea Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'de' language.
2023-04-06 10:42:40 -04:00
transifex-integration[bot]
648f25ea7a Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 10:42:40 -04:00
transifex-integration[bot]
b46dc04ae8 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 10:42:40 -04:00
transifex-integration[bot]
8cabfaf90e Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 10:42:39 -04:00
transifex-integration[bot]
0b02956bb7 Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-06 10:42:39 -04:00
transifex-integration[bot]
4abea02d6e Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'pt_BR' language.
2023-04-06 10:42:39 -04:00
transifex-integration[bot]
5d20c49f7d Apply translations in pt_BR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'pt_BR' language.
2023-04-06 10:42:39 -04:00
transifex-integration[bot]
c11e0fa919 Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'sv_SE' language.
2023-04-06 10:42:39 -04:00
transifex-integration[bot]
54bfeb04da Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-06 10:42:39 -04:00
transifex-integration[bot]
214eec9cb6 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-06 10:42:39 -04:00
transifex-integration[bot]
b48de9525e Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-06 10:42:39 -04:00
transifex-integration[bot]
690f3ec740 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-06 10:42:39 -04:00
6df4ffc1f0 Export translations 2023-04-06 10:42:38 -04:00
transifex-integration[bot]
83cead1fbb Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ja' language.
2023-04-06 10:42:38 -04:00
transifex-integration[bot]
478600cf0e Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 10:42:38 -04:00
transifex-integration[bot]
75002802fa Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 10:42:38 -04:00
transifex-integration[bot]
faf072d432 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'de' language.
2023-04-06 10:42:38 -04:00
transifex-integration[bot]
e888da26a7 Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'nl' language.
2023-04-06 10:42:38 -04:00
William Casarin
b532dc48e1 Also trim whitespace before single note refs 2023-04-05 13:30:05 -07:00
William Casarin
7bf18336d0 Fix extraneous padding on some image posts
Changelog-Fixed: Fix extraneous padding on some image posts
2023-04-05 13:12:56 -07:00
William Casarin
b131c74ee3 Add prefix and suffix string trimming functions
This is needed to fix extraneous whitespace issues in image posts
2023-04-05 12:48:03 -07:00
William Casarin
b9fed6e4eb Fix crash in relay list view
Changelog-Fixed: Fix crash in relay list view
2023-04-05 12:33:08 -07:00
William Casarin
6910e84fd8 regression: fix show nsec button 2023-04-05 11:26:27 -07:00
William Casarin
5f0c1a59e6 v1.4.1-3 changelog 2023-04-05 11:16:30 -07:00
William Casarin
d8a9efc6e2 v1.4.1-3 2023-04-05 11:15:51 -07:00
William Casarin
185732a633 Change reply color from red to blue 2023-04-05 11:15:19 -07:00
Joel Klabo
b585e8c21c Add Padding to Attachment Icons 2023-04-05 10:42:10 -07:00
mainvolume
b14858b4b1 Improve display logic for images
Changelog-Fixed: Reduce chopping of images
Closes: #869
2023-04-05 10:39:59 -07:00
William Casarin
f236ea52e1 Implement additional text truncation settings
Changelog-Added: Added text truncation settings
2023-04-05 10:32:32 -07:00
William Casarin
9c8391b33b Refactor settings into subsections 2023-04-05 10:23:07 -07:00
William Casarin
89b2382ad7 Rename block to mute
Changelog-Changed: Rename block to mute
2023-04-05 08:53:21 -07:00
William Casarin
2ce0a771ea refactor: move notification settings to its own file 2023-04-05 08:49:15 -07:00
William Casarin
0436c68ec5 Fix some notification settings not saving
Changelog-Fixed: Fix some notification settings not saving
2023-04-05 08:43:52 -07:00
Joel Klabo
88740a2bc7 Fix Camera Uploads Again
Changelog-Fixed: Fix broken camera uploads (again)
2023-04-05 08:35:34 -07:00
William Casarin
e3f578e48a changelog: include improved square image display entry 2023-04-04 20:16:23 -07:00
William Casarin
39788bd590 v1.4.1-2 changelog 2023-04-04 20:11:35 -07:00
William Casarin
8c2c8e283f v1.4.1-2 2023-04-04 20:11:35 -07:00
William Casarin
8a473885c7 Don't add https:// prefix to empty website urls 2023-04-04 20:11:35 -07:00
William Casarin
ba1c2cd2b9 Fix broken website links that have missing https:// prefixes
Changelog-Fixed: Fix broken website links that have missing https:// prefixes
2023-04-04 14:20:27 -07:00
William Casarin
bedf7e0648 Add reply counts
Changelog-Added: Reply counts
2023-04-04 12:03:56 -07:00
William Casarin
14802e334d Fix crash in image carousel 2023-04-04 12:03:56 -07:00
William Casarin
98d11fb71e Show full bleed images on selected events in threads
Changelog-Changed: Show full bleed images on selected events in threads
2023-04-04 10:58:16 -07:00
William Casarin
9ca959d8d3 Allow image size to adjust even if we have it cached 2023-04-04 10:45:05 -07:00
Bryan Montz
584a20ade1 Don't show NIP-05 validation error message when field is empty
Closes: #852
2023-04-04 10:32:30 -07:00
William Casarin
67041b22f4 refactor: simplify calculate_image_fill argument 2023-04-04 10:25:56 -07:00
mainvolume
825a2f944f Improvement to square image displaying.
Closes: #864
2023-04-04 10:25:45 -07:00
William Casarin
1aa70efee0 Merge remote-tracking branch 'github/translations' 2023-04-04 10:23:29 -07:00
Swift
e2812a9aa1 Add option to only show notification from people you follow
Changelog-Added: Add option to only show notification from people you follow
Closes: #866
2023-04-04 10:22:41 -07:00
William Casarin
679779ab3e Get around CCP bootstrap relay banning by caching user's relays as their bootstrap relays
Changelog-Fixed: Get around CCP bootstrap relay banning by caching user's relays as their bootstrap relays
2023-04-04 10:12:29 -07:00
transifex-integration[bot]
98a630248e Apply translations in vi
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'vi' language.
2023-04-04 15:16:56 +00:00
2f4e33fc9f Fix localization issues and export strings for translation 2023-04-04 10:26:02 -04:00
transifex-integration[bot]
ddf60e78b9 Apply translations in hu_HU
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'hu_HU' language.
2023-04-04 12:36:37 +00:00
transifex-integration[bot]
08badfc746 Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'ar' language.
2023-04-04 00:29:32 -04:00
transifex-integration[bot]
6dfc39e1ed Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ar' language.
2023-04-04 00:29:31 -04:00
transifex-integration[bot]
6655b6ac9d Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ar' language.
2023-04-04 00:29:31 -04:00
transifex-integration[bot]
c81c14a761 Apply translations in ar
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'ar' language.
2023-04-04 00:29:30 -04:00
William Casarin
3da12e708f Only show translate button if autotranslate is off 2023-04-03 17:44:08 -07:00
William Casarin
3d97dc593e Simplify notification settings 2023-04-03 17:21:49 -07:00
William Casarin
c6e5193111 Don't show translation status
It's too poppy
2023-04-03 17:12:10 -07:00
Swift
61ef709d91 Local notifications for other events
Changelog-Added: Added local notifications for other events
2023-04-03 16:38:39 -07:00
William Casarin
f6133814e8 Merge remote-tracking branch 'github/translations' 2023-04-03 16:28:23 -07:00
ericholguin
1701dbdfb9 Add an empty view when a tagged user isnt found
Changelog-Added: Show a custom view when tagged user isn't found
2023-04-03 16:23:04 -07:00
William Casarin
8fe8611527 Add missing padding on notifications view 2023-04-03 15:43:14 -07:00
William Casarin
41f692a0c4 Cache fit/fill as well as height 2023-04-03 15:07:32 -07:00
William Casarin
e0d4841147 Cache image heights to reduce popping 2023-04-03 15:02:35 -07:00
William Casarin
1bf171a09e Show referenced notes in DMs
Changelog-Added: Show referenced notes in DMs
2023-04-03 14:57:20 -07:00
William Casarin
c5f3a8e509 v1.4.1 + changelog 2023-04-03 14:02:09 -07:00
William Casarin
02c973fbb2 Replace Divider with ThiccDivider 2023-04-03 13:57:57 -07:00
William Casarin
4996272942 Only truncate timeline text if enabled in settings
Changelog-Changed: Only truncate timeline text if enabled in settings
2023-04-03 11:30:05 -07:00
William Casarin
094f63bcff Make mentions wide in notifications like in timeline
Changelog-Changed: Make mentions wide in notifications like in timeline
2023-04-03 11:22:32 -07:00
William Casarin
f9339440f2 Truncate long text in notification items
Changelog-Fixed: Truncate long text in notification items
2023-04-03 11:21:52 -07:00
William Casarin
997bc38885 Remove padding at top of divider on reply attachment bar 2023-04-03 11:11:51 -07:00
William Casarin
b9d62e300b Restore missing reply description on selected events
Changelog-Fixed: Restore missing reply description on selected events
2023-04-03 10:21:11 -07:00
transifex-integration[bot]
1282b8f5f6 Apply translations in pl_PL
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'pl_PL' language.
2023-04-03 16:58:12 +00:00
William Casarin
127f1e07e3 Broadcast events you are replying to
Changelog-Changed: Broadcast events you are replying to
2023-04-03 09:54:56 -07:00
William Casarin
cc190c3618 Also broadcast event's user profile
This should help propagation of user profiles

Changelog-Changed: Broadcast now also broadcasts event user's profile
2023-04-03 09:47:15 -07:00
Joel Klabo
c9c51c6d4a Profile Picture Upload
Changelog-Added: Profile Picture Upload
Closes: #849
2023-04-03 09:37:10 -07:00
William Casarin
b63159a29f Fix another crash in dynamic height calculation 2023-04-03 09:37:10 -07:00
William Casarin
647c6f8428 Refactor dynamic image height and fix crashing 2023-04-03 09:22:48 -07:00
transifex-integration[bot]
c8f5a2cffc Apply translations in sv_SE
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'sv_SE' language.
2023-04-03 11:40:52 +00:00
transifex-integration[bot]
65e22ea0dc Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'el_GR' language.
2023-04-02 18:27:14 -04:00
transifex-integration[bot]
e6ce0ef8a3 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'el_GR' language.
2023-04-02 18:27:14 -04:00
transifex-integration[bot]
5c949ea0c2 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'el_GR' language.
2023-04-02 18:27:14 -04:00
transifex-integration[bot]
4881d41831 Apply translations in el_GR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'el_GR' language.
2023-04-02 18:27:13 -04:00
transifex-integration[bot]
af7177c436 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ja' language.
2023-04-02 18:27:13 -04:00
transifex-integration[bot]
26cf0380c0 Apply translations in ja
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ja' language.
2023-04-02 18:27:13 -04:00
transifex-integration[bot]
499e3f6fd4 Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'de' language.
2023-04-02 18:27:13 -04:00
transifex-integration[bot]
82b237754a Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'de' language.
2023-04-02 18:27:13 -04:00
mainvolume
0608222cb0 Dynamic Image View
A dynamic image modifier to adjust height from image format and ratio
2023-04-02 14:12:25 -07:00
William Casarin
b83204898b add .rgignore 2023-04-02 09:07:20 -07:00
ericholguin
0dd74fde7f Improve reply view
Changelog-Changed: Improved look of reply view
2023-04-02 08:30:38 -07:00
Joel Klabo
7a55ea13e3 Save Camera Images Locally Then Upload
Closes: #847
2023-04-02 08:23:12 -07:00
William Casarin
2815827b9f Show sent DMs immediately
Now that we have a postbox abstraction, we can show DMs immediately. We
probably need an indicator on if it was delivered or not.

Changelog-Fixed: Show sent DMs immediately
2023-03-31 15:25:19 -07:00
William Casarin
4ac3e71039 Fix OK decoding 2023-03-31 15:22:11 -07:00
William Casarin
2596542cb6 Enable offline posting
You can now post, like, repost, reply offline

Changelog-Added: Enable offline posting
2023-03-31 15:14:55 -07:00
William Casarin
915f3901a7 Merge remote-tracking branch 'github/translations' 2023-03-31 10:30:02 -07:00
ericholguin
39f39c7382 Remove gradient in some places for visibility
Changelog-Changed: Remove gradient in some places for visibility
2023-03-31 10:12:11 -07:00
William Casarin
f2ce146e98 Revert "Refactor auto-translations and add caching"
There are quite a few issues with this and is causing crashing

This reverts commit ae82114a33.
2023-03-31 10:01:31 -07:00
William Casarin
9ba3543d91 Fixed size of translated text
Changelog-Fixed: Fixed size of translated text
2023-03-31 09:26:39 -07:00
transifex-integration[bot]
dec5de83b9 Apply translations in zh_HK
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'zh_HK' language.
2023-03-31 16:17:44 +00:00
transifex-integration[bot]
ab6ec18e35 Apply translations in zh_TW
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'zh_TW' language.
2023-03-31 16:13:58 +00:00
35ee2f5744 Replace deprecated UNNotificationPresentationOptions.alert with .banner and .list
Closes: #844
2023-03-31 09:07:51 -07:00
William Casarin
42e6281e9b Fix crash when reposting
Changelog-Fixed: Fix crash when reposting
2023-03-31 09:07:51 -07:00
ae82114a33 Refactor auto-translations and add caching
Changelog-Added: Add auto-translation caching to ruduce api usage
Closes: #843
2023-03-31 09:07:15 -07:00
transifex-integration[bot]
87d1cd9095 Apply translations in zh_CN
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'zh_CN' language.
2023-03-31 16:06:38 +00:00
transifex-integration[bot]
2d679bf087 Apply translations in vi
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'vi' language.
2023-03-31 15:57:28 +00:00
transifex-integration[bot]
aaa6eb013a Apply translations in vi
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'vi' language.
2023-03-31 15:56:37 +00:00
transifex-integration[bot]
fce689f0ef Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'cs' language.
2023-03-31 15:54:10 +00:00
transifex-integration[bot]
89f33be4cf Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'cs' language.
2023-03-31 15:51:19 +00:00
transifex-integration[bot]
96b6929235 Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'es_ES' language.
2023-03-31 15:48:00 +00:00
transifex-integration[bot]
a811a12da3 Apply translations in cs
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'cs' language.
2023-03-31 15:46:59 +00:00
transifex-integration[bot]
8edb1f289d Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.stringsdict'
on the 'es_ES' language.
2023-03-31 15:43:48 +00:00
transifex-integration[bot]
cdbd8f2722 Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_ES' language.
2023-03-31 15:39:10 +00:00
transifex-integration[bot]
069a8f52ca Apply translations in es_ES
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/Localizable.strings'
on the 'es_ES' language.
2023-03-31 15:38:42 +00:00
transifex-integration[bot]
7664985768 Apply translations in fr_FR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'fr_FR' language.
2023-03-31 15:25:22 +00:00
transifex-integration[bot]
a77b0e1bbc Apply translations in fr_FR
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'fr_FR' language.
2023-03-31 15:25:15 +00:00
transifex-integration[bot]
d8e516841e Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'de' language.
2023-03-31 14:39:49 +00:00
transifex-integration[bot]
dc33ad962d Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'de' language.
2023-03-31 14:39:41 +00:00
transifex-integration[bot]
f7eae9275f Apply translations in ru
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ru' language.
2023-03-31 14:38:48 +00:00
transifex-integration[bot]
e5adbb2fee Apply translations in ru
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'ru' language.
2023-03-31 14:37:49 +00:00
transifex-integration[bot]
88d26dc4c2 Apply translations in fr_CA
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'fr_CA' language.
2023-03-31 14:34:06 +00:00
transifex-integration[bot]
4d71297941 Apply translations in nl
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'nl' language.
2023-03-31 14:21:30 +00:00
transifex-integration[bot]
21ba936c72 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'es_419' language.
2023-03-31 14:19:37 +00:00
transifex-integration[bot]
04fa8f1805 Apply translations in es_419
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'es_419' language.
2023-03-31 14:19:29 +00:00
transifex-integration[bot]
3076e6ee7f Apply translations in de
100% translated for the source file 'damus/en-US.xcloc/Source Contents/damus/en-US.lproj/InfoPlist.strings'
on the 'de' language.
2023-03-31 14:18:05 +00:00
08b7e50bd8 Fix localization issues and import translations 2023-03-31 10:10:26 -04:00
Swift
5a238502cb Support gif uploads!
Changelog-Added: Added support for gif uploads
Closes: #827
2023-03-30 12:51:07 -04:00
OlegAba
b0aac1fc42 Fix unclickable image dismiss button
Changelog-Fixed: Fix unclickable image dismiss button
Closes: #833
2023-03-30 12:39:30 -04:00
OlegAba
72b51a81de Move and rename pfp image view 2023-03-30 12:37:33 -04:00
Joel Klabo
8ec1fa29b1 Add a Divider in the Follows List for Large Screens
Changelog-Added: Add a Divider in the Follows List for Large Screens
Closes: #838
2023-03-30 12:36:39 -04:00
Joel Klabo
81683f980a Allow Uploading Photos and Videos from Camera
Changelog-Added: Upload Photos and Videos from Camera
Closes: #840
2023-03-30 12:34:57 -04:00
William Casarin
b9fc3f90d1 Fix unfollow button color 2023-03-30 12:28:54 -04:00
William Casarin
695699aa10 Fix broken npub searching 2023-03-30 12:26:06 -04:00
William Casarin
0a4e75bfec Add nip05 search
Changelog-Added: Added ability to lookup users by nip05 identifiers
2023-03-29 19:24:06 -04:00
William Casarin
9fef2f071a v1.4.0 2023-03-27 17:48:40 -04:00
William Casarin
c03b4cac11 Zap Notifications: Include who it's from and message 2023-03-27 17:48:40 -04:00
Swift
b773df1204 Local Zap Notifications
Changelog-Added: Local zap notifications
2023-03-27 15:50:00 -04:00
William Casarin
c7a34379dd Merge remote-tracking branch 'github/translations' 2023-03-27 12:42:59 -04:00
William Casarin
eabf37e35c Refactor damus color references 2023-03-27 12:39:38 -04:00
Bryan Montz
e11147b217 Simplify grey colors with an adaptable color in xcassets
Closes: #805
2023-03-27 12:39:13 -04:00
William Casarin
7674f42596 Damus Colors Helper 2023-03-27 12:26:30 -04:00
William Casarin
8c37c8f008 Add some padding to the ReplyView 2023-03-27 12:16:39 -04:00
William Casarin
74dbbcf1a2 Fix image uploading 2023-03-27 12:15:24 -04:00
William Casarin
e3283fc8f8 Merge remote-tracking branch 'eric/relay-config-changes' 2023-03-27 11:47:23 -04:00
William Casarin
54fdcd1c84 Small refactor for video uploader 2023-03-27 11:31:10 -04:00
Swift
5e0ff1a6a0 Video Uploads
Changelog-Added: Add support for video uploads
2023-03-27 11:30:58 -04:00
6517dcba3f Fixed small notification hit boxes
Changelog-Fixed: Fixed small notification hit boxes
2023-03-27 11:14:04 -04:00
William Casarin
63e28d4d79 Enable auto-translate by default 2023-03-27 10:44:19 -04:00
e5c0400b54 Merge remote-tracking branch 'terry/tyiu/filter-language'
Changelog-Added: Auto Translation
2023-03-27 10:43:40 -04:00
William Casarin
c6c47e824a reduce code duplication in nip05 gradients 2023-03-27 10:39:07 -04:00
866e93d338 Add auto-translate setting 2023-03-27 10:31:58 -04:00
f75fc7eebe Add optional language filter on Universe feed 2023-03-27 10:26:18 -04:00
William Casarin
d19596c17e Merge remote-tracking branch 'eric/gradient-all-the-things' 2023-03-27 10:22:01 -04:00
William Casarin
0b40cd127c Revert "Revert "Don't make previews full bleed""
This reverts commit 57006b928b.
2023-03-26 09:36:02 -06:00
William Casarin
754ee254e9 Revert "Revert "New Timeline""
This reverts commit f5ed9cd5d4.
2023-03-26 09:35:53 -06:00
William Casarin
963cb37762 Revert "Increase image size"
This reverts commit b6d5b6f45e.
2023-03-26 09:35:07 -06:00
ericholguin
00da97307e remove unused nip05 color function 2023-03-25 14:34:48 -06:00
ericholguin
312c798bb5 use gradient on alert circle 2023-03-25 14:34:29 -06:00
ericholguin
7110650267 use gradient on cancel button 2023-03-25 14:34:04 -06:00
ericholguin
242c1011d9 use gradient on shaka 2023-03-25 14:33:06 -06:00
ericholguin
e203eece85 use gradient on website link 2023-03-25 14:32:04 -06:00
ericholguin
1b60524070 use gradient on nip05 badge 2023-03-25 14:31:28 -06:00
ericholguin
d15a2f0401 update icons 2023-03-25 08:22:19 -06:00
William Casarin
159d0fa2b5 Don't render @note link if there is only one 2023-03-25 07:54:04 -06:00
William Casarin
61fddf800e Reduced padding for more information density
Changelog-Changed: Reduced padding for more information density
2023-03-25 06:51:56 -06:00
William Casarin
b6d5b6f45e Increase image size 2023-03-25 06:38:06 -06:00
William Casarin
f5ed9cd5d4 Revert "New Timeline"
This reverts commit f84d4516db.
2023-03-25 06:31:24 -06:00
William Casarin
57006b928b Revert "Don't make previews full bleed"
This reverts commit 98f0b2f2d2.
2023-03-25 06:31:18 -06:00
fd596241a2 Fix localization issues, import translations, and add Spanish (Spain), Vietnamese, and Portuguese (Brazil) 2023-03-24 22:31:20 -06:00
ericholguin
b2ee924692 add button to make relay adds more obvious 2023-03-23 23:56:31 -06:00
ericholguin
6fc70748fe connect or disconnect from relay detail view 2023-03-23 23:56:04 -06:00
ericholguin
5e972dbf2d Use more recognized icons 2023-03-23 23:55:40 -06:00
ericholguin
4ebdd01b6c use bitcoin logo instead of dirty fiat 2023-03-23 23:55:14 -06:00
ericholguin
13c0c0d679 made relay addition more obvious 2023-03-23 23:54:42 -06:00
ericholguin
8297859f18 made relay removal more obvious 2023-03-23 23:54:22 -06:00
ericholguin
e996d5703b buttons moved to relay config view to be outside of form 2023-03-23 23:53:35 -06:00
ericholguin
dfc397337b view changes, added more obvious buttons, add relay in same view 2023-03-23 23:52:47 -06:00
1130 changed files with 31031 additions and 6886 deletions

2
.envrc
View File

@@ -1,4 +1,4 @@
use nix
#use nix
export TODO_FILE=$PWD/TODO

2
.rgignore Normal file
View File

@@ -0,0 +1,2 @@
translations/
*.lproj/

View File

@@ -1,3 +1,457 @@
## [1.5-5] - 2023-06-24
### Fixed
- Remove note zaps to fit apples appstore guidelines
- Fix zap sheet popping (William Casarin)
- Fix CustomizeZapView from randomly disappearing (William Casarin)
- Fix "zapped your profile" strings to say "zapped you" (Terry Yiu)
- Fix reconnect loop issues on iOS17 (William Casarin)
- Fix some more thread jankiness (William Casarin)
- Fix spelling of Nostr to use Titlecase instead of lowercase (Terry Yiu)
- Rename all usages of the term Post as a noun to Note to conform to the Nostr spec (Terry Yiu)
- Fix text cutoff on login with npub (gladiusKatana)
- Fix hangs due to video player (William Casarin)
[1.5-5]: https://github.com/damus-io/damus/releases/tag/v1.5-5
## [1.5-2] - 2023-05-30
### Added
- Add new full-bleed video player (William Casarin)
- Add ability to show multiple posts per user in Universe (Ben Weeks)
- Custom iconography added for other areas of the app. (Ben Weeks)
- Custom iconography for the left navigation. (Ben Weeks)
- Custom iconography for the tab buttons. (Ben Weeks)
- Added dots under image carousel (Ben Weeks)
- Add profile caching (Bryan Montz)
- Add mention parsing and fine-grained text selection on description in ProfileView (Terry Yiu)
### Changed
- Redesign phase 1 (text, icons)
- Updated UI to use custom font (Ben Weeks)
### Fixed
- Fix side menu bug in landscape (OlegAba)
- Use "Follow me on nostr" text when looking at someone else's QR code (Ben Weeks)
- Fix issue where cursor dissapears when typing long message (gladiusKatana)
- Attempt fix for randomly broken animated gifs (William Casarin)
- Fix cursor jumping when pressing return (gladius)
- Fix side menu label size so that translations in longer languages fit without wrapping (Terry Yiu)
- Fix reaction notification title to be consistent with ReactionView (Terry Yiu)
- Fix nostr URL scheme to open properly even if there's already a different view open (Terry Yiu)
- Fix crash related to preloading events (Bryan Montz)
## v1.4.3 - 2023-05-08
### Added
- Add #zaps and #onlyzaps to custom hashtags (William Casarin)
- Add OnlyZaps mode: disable reactions, only zaps! (William Casarin)
- Add QR Code in profiles (ericholguin)
- Add confirmation alert when clearing all bookmarks (Swift)
- Add deep links for local notifications (Swift)
- Add friends filter to DMs (William Casarin)
- Add image metadata to image uploads (William Casarin)
- Add nokyctranslate translation option (symbsrcool)
- Add partial support for different repost variants (William Casarin)
- Add paste button to login (Suhail Saqan)
- Add q tag to quoted renotes (William Casarin)
- Add setting to hide reactions (Terry Yiu)
- Add thread muting (Terry Yiu)
- Add unmute option in profile view (Joshua Jiang)
- Add webp image support (William Casarin)
- Added event preloading when scrolling (William Casarin)
- Colorize friend icons (William Casarin)
- Friends filter for notifications (William Casarin)
- Preload images so they don't pop in (William Casarin)
- Preload profile pictures while scrolling (William Casarin)
- Preview media uploads when posting (Swift)
- Save keys when logging in and when creating new keypair (Bryan Montz)
- Show blurhash placeholders from image metadata (William Casarin)
- Top-level tab state restoration (Bryan Montz)
- You can now change the default zap type (William Casarin)
- new iconography (Roberto Agreda)
### Changed
- Add number formatting for sats entry and use selected zaps amount from picker as placeholder (Terry Yiu)
- Adjust attachment images placement when posting (Swift)
- Always check signatures of profile events (William Casarin)
- Ask permission before uploading media (Swift)
- Cached various UI elements so its not as laggy (William Casarin)
- Change 500 custom zap to 420 (William Casarin)
- Changed look of Repost and Quote buttons (ericholguin)
- Enable like button on OnlyZaps profiles for people who don't have OnlyZaps mode on (William Casarin)
- Load zaps instantly on events (William Casarin)
- New looks to the custom zaps view (ericholguin)
- Only show friends, not friend-of-friend in friend filter (William Casarin)
- Preload events when they are queued (William Casarin)
- Search hashtags automatically (William Casarin)
- Show DM message in local notification (William Casarin)
- replace Vault dependency with @KeychainStorage property wrapper (Bryan Montz)
### Fixed
- Dismiss bookmarks view when switching tabs (William Casarin)
- Do not allow non-numeric characters for sats amount and fix numeric entry for other number systems for all locales (Terry Yiu)
- Do not translate own notes if logged in with private key (Terry Yiu)
- Don't process blurhash if we already have image cached (William Casarin)
- Fix "translated from english" bugs (William Casarin)
- Fix Copy Link action does not dismiss ShareAction view (Bryan Montz)
- Fix auto-translations bug where languages in preferred language still gets translated (Terry Yiu)
- Fix bug where you could only mention users at the end of a post (Swift)
- Fix bug with reaction notifications referencing the wrong event (Terry Yiu)
- Fix buggy zap amounts and wallet selector settings (William Casarin)
- Fix camera not dismissing (Swift)
- Fix crash when loading DMs in the background (William Casarin)
- Fix crash when you have invalid relays in your relay list (William Casarin)
- Fix crash with LibreTranslate server setting selection and remove delisted vern server (Terry Yiu)
- Fix having to set onlyzaps mode every time on restart (William Casarin)
- Fix invalid DM author notifications (William Casarin)
- Fix issue where uploaded images were from someone else (Swift)
- Fix npub search fails on the first try (Bryan Montz)
- Fix parse mention without space in content (Joshua Jiang)
- Fix posts with no uploadedURLs always get two blank spaces at the end (Bryan Montz)
- Fix relay signal indicator, properly show how many relays you are connected to (William Casarin)
- Fix shuffling when choosing users to reply to (Joshua Jiang)
- Fix slow reconnection issues (Bryan Montz)
- Fix tap area when mentioning users (OlegAba)
- Fix thread incompatibility for clients that add more than one reply tag (William Casarin)
- Fix user notifications from old events immediately shown on install and login (Bryan Montz)
- Fix weird #\[0] artifacts appearing in posts (William Casarin)
- Fix wrong relative times on events (William Casarin)
- Fixed blurhash appearing behind loaded images when swiping on carousel (William Casarin)
- Fixed glitchy preview (William Casarin)
- Fixed preview elements popping in (William Casarin)
- Fixed repost turning green too early and not reposting sometimes (Swift)
- Home now dismisses reactions view (William Casarin)
- Load missing profiles from boosts on home view (Gísli Kristjánsson)
- Load missing profiles from boosts on profile view (Gísli Kristjánsson)
- Load profiles in hashtag searched (William Casarin)
- Made DMs less poppy (William Casarin)
- Preserve order of bookmarks when saving (William Casarin)
- Properly scroll DM view when keyboard is open (William Casarin)
- Saved Jack's soul. (Ben Weeks)
- Zap type selection on smaller phones (ericholguin)
[1.4.3-21]: https://github.com/damus-io/damus/releases/tag/v1.4.3-21
## [1.4.3-20] - 2023-05-04
### Added
- Add webp image support (William Casarin)
- Preload profile pictures while scrolling (William Casarin)
- Save keys when logging in and when creating new keypair (Bryan Montz)
- Top-level tab state restoration (Bryan Montz)
- Added event preloading when scrolling (William Casarin)
- Preload images so they don't pop in (William Casarin)
### Changed
- Preload events when they are queued (William Casarin)
- Search hashtags automatically (William Casarin)
- Cached various UI elements so its not as laggy (William Casarin)
### Fixed
- Don't process blurhash if we already have image cached (William Casarin)
- Home now dismisses reactions view (William Casarin)
- Fix auto-translations bug where languages in preferred language still gets translated (Terry Yiu)
- Fix wrong relative times on events (William Casarin)
- Load profiles in hashtag searched (William Casarin)
- Fix weird #\[0] artifacts appearing in posts (William Casarin)
- Fix "translated from english" bugs (Terry)
- Fix crash when loading DMs in the background (William Casarin)
- Fixed blurhash appearing behind loaded images when swiping on carousel (William Casarin)
- Fix camera not dismissing (Swift)
- Fix bug with reaction notifications referencing the wrong event (Terry Yiu)
- Fix Copy Link action does not dismiss ShareAction view (Bryan Montz)
- Saved Jack's soul. (Ben Weeks)
- Fixed preview elements popping in (William Casarin)
- Fixed glitchy preview (William Casarin)
[1.4.3-20]: https://github.com/damus-io/damus/releases/tag/v1.4.3-20
## [1.4.3-15] - 2023-04-29
### Added
- Add q tag to quoted renotes (William Casarin)
- Add confirmation alert when clearing all bookmarks (Swift)
- Show blurhash placeholders from image metadata (William Casarin)
- Add image metadata to image uploads (William Casarin)
### Changed
- Load zaps instantly on events (William Casarin)
### Fixed
- Fix thread incompatibility for clients that add more than one reply tag (amethyst, plebstr)
- Preserve order of bookmarks when saving (William Casarin)
- Fix crash when you have invalid relays in your relay list (William Casarin)
[1.4.3-14]: https://github.com/damus-io/damus/releases/tag/v1.4.3-14
## [1.4.3-10] - 2023-04-25
### Added
- Add paste button to login (Suhail Saqan)
- Add nokyctranslate translation option (symbsrcool)
- You can now change the default zap type (William Casarin)
- Add partial support for different repost variants (William Casarin)
### Changed
- Change 500 custom zap to 420 (William Casarin)
- New looks to the custom zaps view (ericholguin)
- Adjust attachment images placement when posting (Swift)
- Only show friends, not friend-of-friend in friend filter (William Casarin)
### Fixed
- Fix reposts on macos and ipad (William Casarin)
- Fix slow reconnection issues (Bryan Montz)
- Fix issue where uploaded images were from someone else (Swift)
- Fix crash with LibreTranslate server setting selection and remove delisted vern server (Terry Yiu)
- Fix buggy zap amounts and wallet selector settings (William Casarin)
[1.4.3-10]: https://github.com/damus-io/damus/releases/tag/v1.4.3-10
## [1.4.3-2] - 2023-04-17
### Added
- Add deep links for local notifications (Swift)
- Add thread muting (Terry Yiu)
- Preview media uploads when posting (Swift)
- Add QR Code in profiles (ericholguin)
### Changed
- Always check signatures of profile events (William Casarin)
- Ask permission before uploading media (Swift)
- Show DM message in local notification (William Casarin)
### Fixed
- Fixed repost turning green too early and not reposting sometimes (Swift)
- Fix shuffling when choosing users to reply to (Joshua Jiang)
- Do not translate own notes if logged in with private key (Terry Yiu)
- Load missing profiles from boosts on home view (Gísli Kristjánsson)
- Load missing profiles from boosts on profile view (Gísli Kristjánsson)
- Fix tap area when mentioning users (OlegAba)
- Fix invalid DM author notifications (William Casarin)
- Fix relay signal indicator, properly show how many relays you are connected to (William Casarin)
[1.4.3-2]: https://github.com/damus-io/damus/releases/tag/v1.4.3-2
## [1.4.2-2] - 2023-04-12
### Added
- Include #btc in custom #bitcoin hashtag (William Casarin)
- Make notification dots configurable (William Casarin)
### Changed
- Display follows in most recent to oldest (Luis Cabrera)
### Fixed
- Fix hitches caused by syncronous loading of cached images (William Casarin)
- Fix tabs sometimes not switching (William Casarin)
[1.4.2-2]: https://github.com/damus-io/damus/releases/tag/v1.4.2-2
## [1.4.1-8] - 2023-04-10
### Added
- Add support for nostr: bech32 urls in posts and DMs (NIP19) (Bartholomew Joyce)
### Fixed
- Don't leak mentions in DMs (William Casarin)
- Fix tap area when mentioning users (OlegAba)
[1.4.1-8]: https://github.com/damus-io/damus/releases/tag/v1.4.1-8
## [1.4.1-7] - 2023-04-07
### Added
- Add #zap and #zapathon custom hashtags (William Casarin)
- Add custom #plebchain icon (William Casarin)
### Changed
- Add validation to prevent whitespaces be inputted on NIP-05 input field (Terry Yiu)
- Change reply color from blue to purple. Blue is banned from Damus. (William Casarin)
### Fixed
- Fix padding in post view (OlegAba)
- Show most recently bookmarked notes at the top (Bryan Montz)
[1.4.1-7]: https://github.com/damus-io/damus/releases/tag/v1.4.1-7
## [1.4.1-6] - 2023-04-06
### Added
- Custom hashtags for #bitcoin, #nostr and #coffeechain (William Casarin)
### Changed
- Disable translations in DMs by default (William Casarin)
### Fixed
- Don't show Translating... if we're not actually translating (William Casarin)
[1.4.1-6]: https://github.com/damus-io/damus/releases/tag/v1.4.1-6
## [1.4.1-4] - 2023-04-06
### Added
- Cache translations (William Casarin)
### Fixed
- Fix translation text popping (William Casarin)
- Fix broken auto-translations (William Casarin)
- Fix extraneous padding on some image posts (William Casarin)
- Fix crash in relay list view (William Casarin)
[1.4.1-4]: https://github.com/damus-io/damus/releases/tag/v1.4.1-4
## [1.4.1-3] - 2023-04-05
### Added
- Added text truncation settings (William Casarin)
### Changed
- Rename block to mute (William Casarin)
### Fixed
- Reduce chopping of images (mainvolume)
- Fix some notification settings not saving (William Casarin)
- Fix broken camera uploads (again) (Joel Klabo)
[1.4.1-3]: https://github.com/damus-io/damus/releases/tag/v1.4.1-3
## [1.4.1-2] - 2023-04-04
### Added
- Reply counts (William Casarin)
- Add option to only show notification from people you follow (Swift)
- Added local notifications for other events (Swift)
- Show a custom view when tagged user isn't found (ericholguin)
- Show referenced notes in DMs (William Casarin)
### Changed
- Show full bleed images on selected events in threads (William Casarin)
- Improvement to square image displaying (mainvolume)
### Fixed
- Fix broken website links that have missing https:// prefixes (William Casarin)
- Get around CCP bootstrap relay banning by caching user's relays as their bootstrap relays (William Casarin)
[1.4.1-2]: https://github.com/damus-io/damus/releases/tag/v1.4.1-2
## [1.4.1] - 2023-04-03
### Added
- Profile Picture Upload (Joel Klabo)
- Enable offline posting (William Casarin)
- Add auto-translation caching to ruduce api usage (Terry Yiu)
- Added support for gif uploads (Swift)
- Add a Divider in the Follows List for Large Screens (Joel Klabo)
- Upload Photos and Videos from Camera (Joel Klabo)
- Added ability to lookup users by nip05 identifiers (William Casarin)
### Changed
- Only truncate timeline text if enabled in settings (William Casarin)
- Make mentions wide in notifications like in timeline (William Casarin)
- Broadcast events you are replying to (William Casarin)
- Broadcast now also broadcasts event user's profile (William Casarin)
- Improved look of reply view (ericholguin)
- Remove gradient in some places for visibility (ericholguin)
### Fixed
- Fix cropped images (mainvolume)
- Truncate long text in notification items (William Casarin)
- Restore missing reply description on selected events (William Casarin)
- Show sent DMs immediately (William Casarin)
- Fixed size of translated text (William Casarin)
- Fix crash when reposting (William Casarin)
- Fix unclickable image dismiss button (OlegAba)
[1.4.1]: https://github.com/damus-io/damus/releases/tag/v1.4.1
## [1.4.0] - 2023-03-27
### Added
- Local zap notifications (Swift)
- Add support for video uploads (Swift)
- Auto Translation (Terry Yiu)
- Portuguese (Brazil) translations (Andressa Munturo)
- Spanish (Spain) translations (Max Pleb)
- Vietnamese translations (ShiryoRyo)
### Fixed
- Fixed small notification hit boxes (Terry Yiu)
[1.4.0]: https://github.com/damus-io/damus/releases/tag/v1.4.0
## [1.3.0-7] - 2023-03-24
- New experimental timeline view
@@ -57,6 +511,10 @@
- Add image uploader (Swift)
- Add option to always show images (never blur) (William Casarin)
- Canadian French (Pierre - synoptic_okubo)
- Hungarian translations (Zoltan)
- Korean translations (sogoagain)
- Swedish translations (Pextar)
### Changed
@@ -79,6 +537,9 @@
- Extend user tagging search to all local profiles (William Casarin)
- Vibrate when a zap is received (Swift)
- New and Improved Share sheet (ericholguin)
- Bulgarian translations (elsat)
- Persian translations (Mahdi Taghizadeh)
- Ukrainian translations (Valeriia Khudiakova, Tony B)
### Changed
@@ -177,6 +638,8 @@
- Customized zaps (William Casarin)
- Add new Notifications View (William Casarin)
- Bookmarking (Joel Klabo)
- Chinese, Traditional (Hong Kong) translations (rasputin)
- Chinese, Traditional (Taiwan) translations (rasputin)
### Changed
@@ -202,6 +665,9 @@
- Added the ability to select text on posts (OlegAba)
- Added Posts or Post & Replies selector to Profile (ericholguin)
- Improved profile navbar (OlegAba)
- Czech translations (Martin Gabrhel)
- Indonesian translations (johnybergzy)
- Russian translations (Tony B)
### Changed
@@ -250,7 +716,6 @@
### Added
- Relay Filtering (William Casarin)
- Japanese translations (Terry Yiu)
- Add password autofill on account login and creation (Terry Yiu)
- Show if relay is paid (William Casarin)
- Add "Follows You" indicator on profile (William Casarin)
@@ -263,6 +728,10 @@
- Copy invoice button (Joel Klabo)
- Receive Lightning Zaps (William Casarin)
- Allow text selection in bio (Suhail Saqan)
- Chinese, Simplified (China mainland) translations (haolong, rasputin)
- Dutch translations (Heimen Stoffels - Vistaus)
- Greek translations (milicode)
- Japanese translations (akiomik, foxytanuki, Guetsu Ren - Nighthaven, h3y6e, middlingphys)
### Changed
@@ -297,6 +766,7 @@
- LibreTranslate note translations (Terry Yiu)
- Added support for account deletion (William Casarin)
- User tagging and autocompletion in posts (Swift)
- Polish translations (pysiak)
### Changed
@@ -319,7 +789,8 @@
### Added
- Added Arabic and Portuguese translations (Barodane, Antonio Chagas)
- Arabic translations (Barodane)
- Portuguese translations (Antonio Chagas)
- Add QRCode view for sharing your pubkey (ericholguin)
- Added nostr: uri handling (William Casarin)
@@ -346,7 +817,8 @@
### Added
- Reposts view (Terry Yiu)
- Translations for it_IT, it_CH, fr_FR, de_DE, de_AT and lv_LV (Nicolò Carcagnì, Solobalbo, Gregor, Peter Gerstbach, SYX)
- Italian translations (Nicolò Carcagnì)
- Latvian translations (SYX)
- Added ability to block users (William Casarin)
- Added a way to report content (William Casarin)
- Stretchable profile cover header (Swift)
@@ -373,7 +845,9 @@
- Show website on profiles (William Casarin)
- Add the ability to choose participants when replying (Joel Klabo)
- Translations for de_AT, de_DE, tr_TR, fr_FR (Gregor, Peter Gerstbach, Taylan Benli, Solobalbo)
- German translations (Gregor, Peter Gerstbach)
- Turkish translations (Taylan Benli)
- French (France) translations (Solobalbo)
- Add DM Message Requests (William Casarin)

View File

@@ -1,4 +1,3 @@
dependencies: [
.Package(url: "https://github.com/daltoniam/Starscream.git", majorVersion: 4),
.Package(url: "https://github.com/jb55/secp256k1.swift.git", branch: "main")
]

View File

@@ -92,7 +92,7 @@ damus implements the following [Nostr Implementation Possibilities][nips]
## Contributing
Contributors welcome!
Contributors welcome! Start by examining known issues: https://github.com/damus-io/damus/issues.
### Code
@@ -100,6 +100,11 @@ Contributors welcome!
[git-send-email]: http://git-send-email.io
### Privacy
Your internet protocol (IP) address is exposed to the relays you connect to, and third party media hosters (e.g. nostr.build, imgur.com, giphy.com, youtube.com etc.) that render on Damus. If you want to improve your privacy, consider utilizing a service that masks your IP address (e.g. a VPN) from trackers online.
The relay also learns which public keys you are requesting, meaning your public key will be tied to your IP address.
### Translations
Translators welcome! Join the [Transifex][transifex] project.

View File

@@ -91,13 +91,12 @@ int bech32_encode(char *output, const char *hrp, const uint8_t *data, size_t dat
return 1;
}
bech32_encoding bech32_decode(char* hrp, uint8_t *data, size_t *data_len, const char *input, size_t max_input_len) {
bech32_encoding bech32_decode_len(char* hrp, uint8_t *data, size_t *data_len, const char *input, size_t input_len) {
uint32_t chk = 1;
size_t i;
size_t input_len = strlen(input);
size_t hrp_len;
int have_lower = 0, have_upper = 0;
if (input_len < 8 || input_len > max_input_len) {
if (input_len < 8) {
return BECH32_ENCODING_NONE;
}
*data_len = 0;
@@ -154,6 +153,14 @@ bech32_encoding bech32_decode(char* hrp, uint8_t *data, size_t *data_len, const
}
}
bech32_encoding bech32_decode(char* hrp, uint8_t *data, size_t *data_len, const char *input, size_t max_input_len) {
size_t len = strlen(input);
if (len > max_input_len) {
return BECH32_ENCODING_NONE;
}
return bech32_decode_len(hrp, data, data_len, input, len);
}
int bech32_convert_bits(uint8_t* out, size_t* outlen, int outbits, const uint8_t* in, size_t inlen, int inbits, int pad) {
uint32_t val = 0;
int bits = 0;

View File

@@ -118,6 +118,14 @@ bech32_encoding bech32_decode(
size_t max_input_len
);
bech32_encoding bech32_decode_len(
char *hrp,
uint8_t *data,
size_t *data_len,
const char *input,
size_t input_len
);
/* Helper from bech32: translates inbits-bit bytes to outbits-bit bytes.
* @outlen is incremented as bytes are added.
* @pad is true if we're to pad, otherwise truncate last byte if necessary

56
damus-c/block.h Normal file
View File

@@ -0,0 +1,56 @@
//
// block.h
// damus
//
// Created by William Casarin on 2023-04-09.
//
#ifndef block_h
#define block_h
#include "nostr_bech32.h"
#include "str_block.h"
#define MAX_BLOCKS 1024
enum block_type {
BLOCK_HASHTAG = 1,
BLOCK_TEXT = 2,
BLOCK_MENTION_INDEX = 3,
BLOCK_MENTION_BECH32 = 4,
BLOCK_URL = 5,
BLOCK_INVOICE = 6,
};
typedef struct invoice_block {
struct str_block invstr;
union {
struct bolt11 *bolt11;
};
} invoice_block_t;
typedef struct mention_bech32_block {
struct str_block str;
struct nostr_bech32 bech32;
} mention_bech32_block_t;
typedef struct block {
enum block_type type;
union {
struct str_block str;
struct invoice_block invoice;
struct mention_bech32_block mention_bech32;
int mention_index;
} block;
} block_t;
typedef struct blocks {
int num_blocks;
struct block *blocks;
} blocks_t;
void blocks_init(struct blocks *blocks);
void blocks_free(struct blocks *blocks);
#endif /* block_h */

156
damus-c/cursor.h Normal file
View File

@@ -0,0 +1,156 @@
//
// cursor.h
// damus
//
// Created by William Casarin on 2023-04-09.
//
#ifndef cursor_h
#define cursor_h
#include <ctype.h>
#include <string.h>
typedef unsigned char u8;
struct cursor {
const u8 *p;
const u8 *start;
const u8 *end;
};
static inline int is_whitespace(char c) {
return c == ' ' || c == '\t' || c == '\n' || c == '\v' || c == '\f' || c == '\r';
}
static inline int is_boundary(char c) {
return !isalnum(c);
}
static inline int is_invalid_url_ending(char c) {
return c == '!' || c == '?' || c == ')' || c == '.' || c == ',' || c == ';';
}
static inline int is_alphanumeric(char c) {
return (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9');
}
static inline void make_cursor(struct cursor *c, const u8 *content, size_t len)
{
c->start = content;
c->end = content + len;
c->p = content;
}
static inline int consume_until_boundary(struct cursor *cur) {
char c;
while (cur->p < cur->end) {
c = *cur->p;
if (is_boundary(c))
return 1;
cur->p++;
}
return 1;
}
static inline int consume_until_whitespace(struct cursor *cur, int or_end) {
char c;
int consumedAtLeastOne = 0;
while (cur->p < cur->end) {
c = *cur->p;
if (is_whitespace(c))
return consumedAtLeastOne;
cur->p++;
consumedAtLeastOne = 1;
}
return or_end;
}
static inline int consume_until_non_alphanumeric(struct cursor *cur, int or_end) {
char c;
int consumedAtLeastOne = 0;
while (cur->p < cur->end) {
c = *cur->p;
if (!is_alphanumeric(c))
return consumedAtLeastOne;
cur->p++;
consumedAtLeastOne = 1;
}
return or_end;
}
static inline int parse_char(struct cursor *cur, char c) {
if (cur->p >= cur->end)
return 0;
if (*cur->p == c) {
cur->p++;
return 1;
}
return 0;
}
static inline int peek_char(struct cursor *cur, int ind) {
if ((cur->p + ind < cur->start) || (cur->p + ind >= cur->end))
return -1;
return *(cur->p + ind);
}
static inline int pull_byte(struct cursor *cur, u8 *byte) {
if (cur->p >= cur->end)
return 0;
*byte = *cur->p;
cur->p++;
return 1;
}
static inline int pull_bytes(struct cursor *cur, int count, const u8 **bytes) {
if (cur->p + count > cur->end)
return 0;
*bytes = cur->p;
cur->p += count;
return 1;
}
static inline int parse_str(struct cursor *cur, const char *str) {
int i;
char c, cs;
unsigned long len;
len = strlen(str);
if (cur->p + len >= cur->end)
return 0;
for (i = 0; i < len; i++) {
c = tolower(cur->p[i]);
cs = tolower(str[i]);
if (c != cs)
return 0;
}
cur->p += len;
return 1;
}
#endif /* cursor_h */

View File

@@ -6,88 +6,12 @@
//
#include "damus.h"
#include "cursor.h"
#include "bolt11.h"
#include "bech32.h"
#include <stdlib.h>
#include <string.h>
typedef unsigned char u8;
struct cursor {
const u8 *p;
const u8 *start;
const u8 *end;
};
static inline int is_whitespace(char c) {
return c == ' ' || c == '\t' || c == '\n' || c == '\v' || c == '\f' || c == '\r';
}
static inline int is_boundary(char c) {
return !isalnum(c);
}
static inline int is_invalid_url_ending(char c) {
return c == '!' || c == '?' || c == ')' || c == '.' || c == ',' || c == ';';
}
static void make_cursor(struct cursor *c, const u8 *content, size_t len)
{
c->start = content;
c->end = content + len;
c->p = content;
}
static int consume_until_boundary(struct cursor *cur) {
char c;
while (cur->p < cur->end) {
c = *cur->p;
if (is_boundary(c))
return 1;
cur->p++;
}
return 1;
}
static int consume_until_whitespace(struct cursor *cur, int or_end) {
char c;
bool consumedAtLeastOne = false;
while (cur->p < cur->end) {
c = *cur->p;
if (is_whitespace(c))
return consumedAtLeastOne;
cur->p++;
consumedAtLeastOne = true;
}
return or_end;
}
static int parse_char(struct cursor *cur, char c) {
if (cur->p >= cur->end)
return 0;
if (*cur->p == c) {
cur->p++;
return 1;
}
return 0;
}
static inline int peek_char(struct cursor *cur, int ind) {
if ((cur->p + ind < cur->start) || (cur->p + ind >= cur->end))
return -1;
return *(cur->p + ind);
}
static int parse_digit(struct cursor *cur, int *digit) {
int c;
if ((c = peek_char(cur, 0)) == -1)
@@ -103,30 +27,8 @@ static int parse_digit(struct cursor *cur, int *digit) {
return 0;
}
static int parse_str(struct cursor *cur, const char *str) {
int i;
char c, cs;
unsigned long len;
len = strlen(str);
if (cur->p + len >= cur->end)
return 0;
for (i = 0; i < len; i++) {
c = tolower(cur->p[i]);
cs = tolower(str[i]);
if (c != cs)
return 0;
}
cur->p += len;
return 1;
}
static int parse_mention(struct cursor *cur, struct block *block) {
static int parse_mention_index(struct cursor *cur, struct block *block) {
int d1, d2, d3, ind;
const u8 *start = cur->p;
@@ -151,8 +53,8 @@ static int parse_mention(struct cursor *cur, struct block *block) {
return 0;
}
block->type = BLOCK_MENTION;
block->block.mention = ind;
block->type = BLOCK_MENTION_INDEX;
block->block.mention_index = ind;
return 1;
}
@@ -274,6 +176,27 @@ static int parse_invoice(struct cursor *cur, struct block *block) {
return 1;
}
static int parse_mention_bech32(struct cursor *cur, struct block *block) {
const u8 *start = cur->p;
if (!parse_str(cur, "nostr:"))
return 0;
block->block.str.start = (const char *)cur->p;
if (!parse_nostr_bech32(cur, &block->block.mention_bech32.bech32)) {
cur->p = start;
return 0;
}
block->block.str.end = (const char *)cur->p;
block->type = BLOCK_MENTION_BECH32;
return 1;
}
static int add_text_then_block(struct cursor *cur, struct blocks *blocks, struct block block, const u8 **start, const u8 *pre_mention)
{
if (!add_text_block(blocks, *start, pre_mention))
@@ -302,8 +225,8 @@ int damus_parse_content(struct blocks *blocks, const char *content) {
c = peek_char(&cur, 0);
pre_mention = cur.p;
if (cp == -1 || is_whitespace(cp)) {
if (c == '#' && (parse_mention(&cur, &block) || parse_hashtag(&cur, &block))) {
if (cp == -1 || is_whitespace(cp) || c == '#') {
if (c == '#' && (parse_mention_index(&cur, &block) || parse_hashtag(&cur, &block))) {
if (!add_text_then_block(&cur, blocks, block, &start, pre_mention))
return 0;
continue;
@@ -315,6 +238,10 @@ int damus_parse_content(struct blocks *blocks, const char *content) {
if (!add_text_then_block(&cur, blocks, block, &start, pre_mention))
return 0;
continue;
} else if (c == 'n' && parse_mention_bech32(&cur, &block)) {
if (!add_text_then_block(&cur, blocks, block, &start, pre_mention))
return 0;
continue;
}
}
@@ -335,8 +262,17 @@ void blocks_init(struct blocks *blocks) {
}
void blocks_free(struct blocks *blocks) {
if (blocks->blocks) {
free(blocks->blocks);
blocks->num_blocks = 0;
if (!blocks->blocks) {
return;
}
for (int i = 0; i < blocks->num_blocks; ++i) {
if (blocks->blocks[i].type == BLOCK_MENTION_BECH32) {
free(blocks->blocks[i].block.mention_bech32.bech32.buffer);
blocks->blocks[i].block.mention_bech32.bech32.buffer = NULL;
}
}
free(blocks->blocks);
blocks->num_blocks = 0;
}

View File

@@ -9,45 +9,10 @@
#define damus_h
#include <stdio.h>
#include "nostr_bech32.h"
#include "block.h"
typedef unsigned char u8;
#define MAX_BLOCKS 1024
enum block_type {
BLOCK_HASHTAG = 1,
BLOCK_TEXT = 2,
BLOCK_MENTION = 3,
BLOCK_URL = 4,
BLOCK_INVOICE = 5,
};
typedef struct str_block {
const char *start;
const char *end;
} str_block_t;
typedef struct invoice_block {
struct str_block invstr;
union {
struct bolt11 *bolt11;
};
} invoice_block_t;
typedef struct block {
enum block_type type;
union {
struct str_block str;
struct invoice_block invoice;
int mention;
} block;
} block_t;
typedef struct blocks {
int num_blocks;
struct block *blocks;
} blocks_t;
void blocks_init(struct blocks *blocks);
void blocks_free(struct blocks *blocks);
int damus_parse_content(struct blocks *blocks, const char *content);
#endif /* damus_h */

View File

@@ -26,7 +26,7 @@ bool hex_decode(const char *str, size_t slen, void *buf, size_t bufsize);
/**
* hex_encode - Create a nul-terminated hex string
* @buf: the buffer to read the data from
* @bufsize: the length of @buf
* @bufsize: the length of buf
* @dest: the string to fill
* @destsize: the max size of the string
*

295
damus-c/nostr_bech32.c Normal file
View File

@@ -0,0 +1,295 @@
//
// nostr_bech32.c
// damus
//
// Created by William Casarin on 2023-04-09.
//
#include "nostr_bech32.h"
#include <stdlib.h>
#include "cursor.h"
#include "bech32.h"
#define MAX_TLVS 16
#define TLV_SPECIAL 0
#define TLV_RELAY 1
#define TLV_AUTHOR 2
#define TLV_KIND 3
#define TLV_KNOWN_TLVS 4
struct nostr_tlv {
u8 type;
u8 len;
const u8 *value;
};
struct nostr_tlvs {
struct nostr_tlv tlvs[MAX_TLVS];
int num_tlvs;
};
static int parse_nostr_tlv(struct cursor *cur, struct nostr_tlv *tlv) {
// get the tlv tag
if (!pull_byte(cur, &tlv->type))
return 0;
// unknown, fail!
if (tlv->type >= TLV_KNOWN_TLVS)
return 0;
// get the length
if (!pull_byte(cur, &tlv->len))
return 0;
// is the reported length greater then our buffer? if so fail
if (cur->p + tlv->len > cur->end)
return 0;
tlv->value = cur->p;
cur->p += tlv->len;
return 1;
}
static int parse_nostr_tlvs(struct cursor *cur, struct nostr_tlvs *tlvs) {
int i;
tlvs->num_tlvs = 0;
for (i = 0; i < MAX_TLVS; i++) {
if (parse_nostr_tlv(cur, &tlvs->tlvs[i])) {
tlvs->num_tlvs++;
} else {
break;
}
}
if (tlvs->num_tlvs == 0)
return 0;
return 1;
}
static int find_tlv(struct nostr_tlvs *tlvs, u8 type, struct nostr_tlv **tlv) {
*tlv = NULL;
for (int i = 0; i < tlvs->num_tlvs; i++) {
if (tlvs->tlvs[i].type == type) {
*tlv = &tlvs->tlvs[i];
return 1;
}
}
return 0;
}
static int parse_nostr_bech32_type(const char *prefix, enum nostr_bech32_type *type) {
// Parse type
if (strcmp(prefix, "note") == 0) {
*type = NOSTR_BECH32_NOTE;
return 1;
} else if (strcmp(prefix, "npub") == 0) {
*type = NOSTR_BECH32_NPUB;
return 1;
} else if (strcmp(prefix, "nprofile") == 0) {
*type = NOSTR_BECH32_NPROFILE;
return 1;
} else if (strcmp(prefix, "nevent") == 0) {
*type = NOSTR_BECH32_NEVENT;
return 1;
} else if (strcmp(prefix, "nrelay") == 0) {
*type = NOSTR_BECH32_NRELAY;
return 1;
} else if (strcmp(prefix, "naddr") == 0) {
*type = NOSTR_BECH32_NADDR;
return 1;
}
return 0;
}
static int parse_nostr_bech32_note(struct cursor *cur, struct bech32_note *note) {
return pull_bytes(cur, 32, &note->event_id);
}
static int parse_nostr_bech32_npub(struct cursor *cur, struct bech32_npub *npub) {
return pull_bytes(cur, 32, &npub->pubkey);
}
static int tlvs_to_relays(struct nostr_tlvs *tlvs, struct relays *relays) {
struct nostr_tlv *tlv;
struct str_block *str;
relays->num_relays = 0;
for (int i = 0; i < tlvs->num_tlvs; i++) {
tlv = &tlvs->tlvs[i];
if (tlv->type != TLV_RELAY)
continue;
if (relays->num_relays + 1 > MAX_RELAYS)
break;
str = &relays->relays[relays->num_relays++];
str->start = (const char*)tlv->value;
str->end = (const char*)(tlv->value + tlv->len);
}
return 1;
}
static int parse_nostr_bech32_nevent(struct cursor *cur, struct bech32_nevent *nevent) {
struct nostr_tlvs tlvs;
struct nostr_tlv *tlv;
if (!parse_nostr_tlvs(cur, &tlvs))
return 0;
if (!find_tlv(&tlvs, TLV_SPECIAL, &tlv))
return 0;
if (tlv->len != 32)
return 0;
nevent->event_id = tlv->value;
if (find_tlv(&tlvs, TLV_AUTHOR, &tlv)) {
nevent->pubkey = tlv->value;
} else {
nevent->pubkey = NULL;
}
return tlvs_to_relays(&tlvs, &nevent->relays);
}
static int parse_nostr_bech32_naddr(struct cursor *cur, struct bech32_naddr *naddr) {
struct nostr_tlvs tlvs;
struct nostr_tlv *tlv;
if (!parse_nostr_tlvs(cur, &tlvs))
return 0;
if (!find_tlv(&tlvs, TLV_SPECIAL, &tlv))
return 0;
naddr->identifier.start = (const char*)tlv->value;
naddr->identifier.end = (const char*)tlv->value + tlv->len;
if (!find_tlv(&tlvs, TLV_AUTHOR, &tlv))
return 0;
naddr->pubkey = tlv->value;
return tlvs_to_relays(&tlvs, &naddr->relays);
}
static int parse_nostr_bech32_nprofile(struct cursor *cur, struct bech32_nprofile *nprofile) {
struct nostr_tlvs tlvs;
struct nostr_tlv *tlv;
if (!parse_nostr_tlvs(cur, &tlvs))
return 0;
if (!find_tlv(&tlvs, TLV_SPECIAL, &tlv))
return 0;
if (tlv->len != 32)
return 0;
nprofile->pubkey = tlv->value;
return tlvs_to_relays(&tlvs, &nprofile->relays);
}
static int parse_nostr_bech32_nrelay(struct cursor *cur, struct bech32_nrelay *nrelay) {
struct nostr_tlvs tlvs;
struct nostr_tlv *tlv;
if (!parse_nostr_tlvs(cur, &tlvs))
return 0;
if (!find_tlv(&tlvs, TLV_SPECIAL, &tlv))
return 0;
nrelay->relay.start = (const char*)tlv->value;
nrelay->relay.end = (const char*)tlv->value + tlv->len;
return 1;
}
int parse_nostr_bech32(struct cursor *cur, struct nostr_bech32 *obj) {
const u8 *start, *end;
start = cur->p;
if (!consume_until_non_alphanumeric(cur, 1)) {
cur->p = start;
return 0;
}
end = cur->p;
size_t data_len;
size_t input_len = end - start;
if (input_len < 10 || input_len > 10000) {
return 0;
}
obj->buffer = malloc(input_len * 2);
if (!obj->buffer)
return 0;
u8 data[input_len];
char prefix[input_len];
if (bech32_decode_len(prefix, data, &data_len, (const char*)start, input_len) == BECH32_ENCODING_NONE) {
cur->p = start;
return 0;
}
obj->buflen = 0;
if (!bech32_convert_bits(obj->buffer, &obj->buflen, 8, data, data_len, 5, 0)) {
goto fail;
}
if (!parse_nostr_bech32_type(prefix, &obj->type)) {
goto fail;
}
struct cursor bcur;
make_cursor(&bcur, obj->buffer, obj->buflen);
switch (obj->type) {
case NOSTR_BECH32_NOTE:
if (!parse_nostr_bech32_note(&bcur, &obj->data.note))
goto fail;
break;
case NOSTR_BECH32_NPUB:
if (!parse_nostr_bech32_npub(&bcur, &obj->data.npub))
goto fail;
break;
case NOSTR_BECH32_NEVENT:
if (!parse_nostr_bech32_nevent(&bcur, &obj->data.nevent))
goto fail;
break;
case NOSTR_BECH32_NADDR:
if (!parse_nostr_bech32_naddr(&bcur, &obj->data.naddr))
goto fail;
break;
case NOSTR_BECH32_NPROFILE:
if (!parse_nostr_bech32_nprofile(&bcur, &obj->data.nprofile))
goto fail;
break;
case NOSTR_BECH32_NRELAY:
if (!parse_nostr_bech32_nrelay(&bcur, &obj->data.nrelay))
goto fail;
break;
}
return 1;
fail:
free(obj->buffer);
cur->p = start;
return 0;
}

78
damus-c/nostr_bech32.h Normal file
View File

@@ -0,0 +1,78 @@
//
// nostr_bech32.h
// damus
//
// Created by William Casarin on 2023-04-09.
//
#ifndef nostr_bech32_h
#define nostr_bech32_h
#include <stdio.h>
#include "str_block.h"
#include "cursor.h"
typedef unsigned char u8;
#define MAX_RELAYS 10
struct relays {
struct str_block relays[MAX_RELAYS];
int num_relays;
};
enum nostr_bech32_type {
NOSTR_BECH32_NOTE = 1,
NOSTR_BECH32_NPUB = 2,
NOSTR_BECH32_NPROFILE = 3,
NOSTR_BECH32_NEVENT = 4,
NOSTR_BECH32_NRELAY = 5,
NOSTR_BECH32_NADDR = 6,
};
struct bech32_note {
const u8 *event_id;
};
struct bech32_npub {
const u8 *pubkey;
};
struct bech32_nevent {
struct relays relays;
const u8 *event_id;
const u8 *pubkey; // optional
};
struct bech32_nprofile {
struct relays relays;
const u8 *pubkey;
};
struct bech32_naddr {
struct relays relays;
struct str_block identifier;
const u8 *pubkey;
};
struct bech32_nrelay {
struct str_block relay;
};
typedef struct nostr_bech32 {
enum nostr_bech32_type type;
u8 *buffer; // holds strings and tlv stuff
size_t buflen;
union {
struct bech32_note note;
struct bech32_npub npub;
struct bech32_nevent nevent;
struct bech32_nprofile nprofile;
struct bech32_naddr naddr;
struct bech32_nrelay nrelay;
} data;
} nostr_bech32_t;
int parse_nostr_bech32(struct cursor *cur, struct nostr_bech32 *obj);
#endif /* nostr_bech32_h */

16
damus-c/str_block.h Normal file
View File

@@ -0,0 +1,16 @@
//
// str_block.h
// damus
//
// Created by William Casarin on 2023-04-09.
//
#ifndef str_block_h
#define str_block_h
typedef struct str_block {
const char *start;
const char *end;
} str_block_t;
#endif /* str_block_h */

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,14 @@
{
"pins" : [
{
"identity" : "gsplayer",
"kind" : "remoteSourceControl",
"location" : "https://github.com/wxxsw/GSPlayer",
"state" : {
"revision" : "aa6dad7943d52f5207f7fcc2ad3e4274583443b8",
"version" : "0.2.26"
}
},
{
"identity" : "kingfisher",
"kind" : "remoteSourceControl",
@@ -16,24 +25,6 @@
"state" : {
"revision" : "40b4b38b3b1c83f7088c76189a742870e0ca06a9"
}
},
{
"identity" : "starscream",
"kind" : "remoteSourceControl",
"location" : "https://github.com/daltoniam/Starscream",
"state" : {
"revision" : "df8d82047f6654d8e4b655d1b1525c64e1059d21",
"version" : "4.0.4"
}
},
{
"identity" : "vault",
"kind" : "remoteSourceControl",
"location" : "https://github.com/SparrowTek/Vault",
"state" : {
"revision" : "87db56c3c8b6421c65b0745f73e08b0dc56f79d4",
"version" : "1.0.3"
}
}
],
"version" : 2

View File

@@ -0,0 +1,98 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1420"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4CE6DEE227F7A08100C66700"
BuildableName = "damus.app"
BlueprintName = "damus"
ReferencedContainer = "container:damus.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4CE6DEF227F7A08200C66700"
BuildableName = "damusTests.xctest"
BlueprintName = "damusTests"
ReferencedContainer = "container:damus.xcodeproj">
</BuildableReference>
</TestableReference>
<TestableReference
skipped = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4CE6DEFC27F7A08200C66700"
BuildableName = "damusUITests.xctest"
BlueprintName = "damusUITests"
ReferencedContainer = "container:damus.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Release"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4CE6DEE227F7A08100C66700"
BuildableName = "damus.app"
BlueprintName = "damus"
ReferencedContainer = "container:damus.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "4CE6DEE227F7A08100C66700"
BuildableName = "damus.app"
BlueprintName = "damus"
ReferencedContainer = "container:damus.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@@ -0,0 +1,38 @@
{
"colors" : [
{
"color" : {
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0x00",
"green" : "0x00",
"red" : "0x00"
}
},
"idiom" : "universal"
},
{
"appearances" : [
{
"appearance" : "luminosity",
"value" : "dark"
}
],
"color" : {
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0xFF",
"green" : "0xFF",
"red" : "0xFF"
}
},
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,38 @@
{
"colors" : [
{
"color" : {
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0xF4",
"green" : "0xEE",
"red" : "0xEE"
}
},
"idiom" : "universal"
},
{
"appearances" : [
{
"appearance" : "luminosity",
"value" : "dark"
}
],
"color" : {
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0x1E",
"green" : "0x1C",
"red" : "0x1C"
}
},
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,20 @@
{
"colors" : [
{
"color" : {
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"red" : "0xBE",
"green" : "0x5F",
"blue" : "0x00"
}
},
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,20 @@
{
"colors" : [
{
"color" : {
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0xED",
"green" : "0x26",
"red" : "0xBF"
}
},
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,20 @@
{
"colors" : [
{
"color" : {
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0x05",
"green" : "0xDF",
"red" : "0xFA"
}
},
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,6 @@
{
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,23 @@
{
"images" : [
{
"filename" : "bitcoin-hashtag.svg",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "bitcoin-hashtag.svg",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "bitcoin-hashtag.svg",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="12.843903"
height="17"
viewBox="0 0 12.843902 16.999999"
version="1.1"
id="svg2"
sodipodi:docname="bitcoin-hashtag.svg"
inkscape:version="1.3-dev (77bc73e, 2022-05-18)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs2" />
<sodipodi:namedview
id="namedview2"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="31.12"
inkscape:cx="4.2577121"
inkscape:cy="7.535347"
inkscape:window-width="1526"
inkscape:window-height="957"
inkscape:window-x="1637"
inkscape:window-y="10"
inkscape:window-maximized="0"
inkscape:current-layer="svg2" />
<g
id="surface1"
transform="matrix(0.94507527,0,0,0.94507527,-4.5943665,-3.2875042)">
<path
style="fill:#f59119;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.40637"
d="M 18.388175,10.742602 C 18.668352,8.874761 17.240002,7.8694225 15.295251,7.193703 L 15.927019,4.6611305 14.383304,4.2765743 13.768015,6.7432244 C 13.361486,6.644338 12.943967,6.545453 12.531944,6.4520613 L 13.152726,3.9689298 11.609011,3.584375 10.977241,6.1169476 C 10.642129,6.0400371 10.312509,5.9686201 9.988384,5.886215 L 9.993834,5.880715 7.8623408,5.3478364 7.4558114,6.9959316 c 0,0 1.1426793,0.2636953 1.1207046,0.2801765 0.6207823,0.1538223 0.7361485,0.5658464 0.714174,0.8954659 l -0.7196673,2.889659 c 0.043949,0.01099 0.098885,0.02747 0.1648089,0.04944 L 8.5710227,11.072223 7.5601911,15.11555 c -0.076912,0.192277 -0.26919,0.477948 -0.7031873,0.368073 0.010984,0.02198 -1.1261994,-0.280174 -1.1261994,-0.280174 l -0.7636164,1.76346 2.0106754,0.505417 c 0.3735682,0.0934 0.7361485,0.186784 1.0987301,0.280176 l -0.6427568,2.565534 1.5437155,0.384556 0.6317701,-2.538067 c 0.4230107,0.115364 0.8295407,0.219746 1.2305777,0.318632 l -0.63177,2.527079 1.543716,0.384557 0.637263,-2.560042 c 2.631459,0.499922 4.614667,0.296656 5.444208,-2.082094 0.670226,-1.917284 -0.03296,-3.021507 -1.417363,-3.741176 1.010832,-0.236227 1.768957,-0.895465 1.972221,-2.268877 z m -3.526922,4.944286 c -0.477949,1.917283 -3.702721,0.884477 -4.752008,0.620782 l 0.851514,-3.395075 c 1.043795,0.2582 4.394922,0.774604 3.900494,2.774293 z M 15.3392,10.715134 c -0.433999,1.74698 -3.120394,0.857008 -3.993884,0.642757 l 0.769111,-3.081939 c 0.87349,0.219746 3.675252,0.620784 3.224773,2.439182 z m 0,0"
id="path2" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@@ -0,0 +1,23 @@
{
"images" : [
{
"filename" : "coffee.svg",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "coffee.svg",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "coffee.svg",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->
<svg
version="1.1"
x="0px"
y="0px"
viewBox="0 0 13.999999 18"
enable-background="new 0 0 1000 1000"
xml:space="preserve"
id="svg4"
sodipodi:docname="coffee.svg"
width="14"
height="18"
inkscape:version="1.3-dev (77bc73e, 2022-05-18)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs4" /><sodipodi:namedview
id="namedview4"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="10.680141"
inkscape:cx="-17.181421"
inkscape:cy="4.07298"
inkscape:window-width="1368"
inkscape:window-height="947"
inkscape:window-x="1764"
inkscape:window-y="58"
inkscape:window-maximized="0"
inkscape:current-layer="svg4" />
<metadata
id="metadata1"> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>
<g
id="g4"
transform="matrix(0.01779387,0,0,0.01779387,-1.8340539,0.04465199)"><g
transform="matrix(0.1,0,0,-0.1,0,511)"
id="g3"><path
d="m 4302.6,4870.6 c 149.5,-177.8 240.5,-319.3 347.6,-545.6 119.2,-254.6 169.7,-448.6 183.9,-699.2 22.2,-462.7 -137.4,-778 -539.5,-1060.9 -474.9,-335.4 -685,-739.6 -687,-1315.5 0,-260.7 38.4,-501.1 115.2,-739.6 50.5,-149.5 56.6,-159.6 60.6,-97 18.2,234.4 56.6,476.9 101,626.4 121.2,422.3 305.1,622.4 885.1,959.8 424.3,248.5 575.9,487 575.9,905.3 -2,501.1 -359.7,1295.3 -798.2,1768.1 -82.8,88.9 -198,202.1 -256.6,250.6 l -105.1,86.9 z"
id="path1"
style="fill:#be5f00;fill-opacity:1" /><path
d="m 5981.8,3577.3 c 272.8,-369.8 309.2,-846.7 90.9,-1192.2 -147.5,-232.4 -373.8,-406.2 -822.4,-638.5 -592,-303.1 -854.7,-683 -854.7,-1232.6 0,-276.8 14.2,-343.5 72.7,-343.5 38.4,0 48.5,16.2 68.7,111.1 34.4,167.7 135.4,349.6 262.7,476.9 147.5,145.5 349.6,244.5 838.6,412.2 503.2,171.8 725.4,280.9 846.7,416.3 210.1,232.4 276.8,535.5 202.1,903.2 -76.8,373.8 -216.2,618.3 -537.5,943.7 -155.7,155.6 -214.3,206.1 -167.8,143.4 z"
id="path2"
style="fill:#be5f00;fill-opacity:1" /><path
d="M 2748.7,592.8 C 2158.7,507.9 1732.3,352.3 1542.4,156.3 1415.1,25 1409,-11.4 1427.2,-445.8 c 34.3,-832.5 181.9,-1729.7 462.7,-2829 153.6,-600.1 309.2,-1113.4 351.6,-1159.9 56.6,-62.6 272.8,-157.6 476.9,-210.1 668.8,-173.8 2172.2,-196 2960.3,-42.4 357.7,68.7 604.2,163.7 731.5,278.9 68.7,60.6 84.9,92.9 107.1,198 64.7,335.4 56.6,319.3 131.3,319.3 107.1,0 438.5,92.9 602.2,167.7 220.3,103.1 363.7,202.1 567.8,398.1 470.8,452.6 759.8,1149.8 761.8,1840.8 0,398.1 -72.7,614.3 -274.8,818.4 -220.3,222.3 -466.8,309.2 -937.6,325.4 l -309.2,12.1 14.2,218.2 14.2,218.2 -56.6,52.5 C 6866.9,314 6274.9,499.9 5696.9,582.7 L 5614,594.8 5533.2,457.4 5450.4,322 5565.6,305.8 c 588,-84.9 868.9,-159.6 978,-256.6 56.6,-50.5 60.6,-62.6 44.5,-113.2 -80.8,-226.3 -1000.2,-371.8 -2329.8,-371.8 -1220.5,0 -2097.5,123.3 -2295.5,321.3 -52.5,54.5 -56.6,66.7 -36.4,111.1 48.5,107.1 341.5,206.1 822.4,276.8 143.5,20.2 301.1,38.4 349.6,38.4 46.5,0 84.9,4 84.9,8.1 0,8.1 -175.8,295 -185.9,305.1 -4.2,2.1 -115.3,-12 -248.7,-32.2 z m 4797.1,-1614.5 c 153.6,-26.3 272.8,-82.8 317.2,-153.6 56.6,-84.9 60.6,-400.1 8.1,-652.7 -111.1,-545.6 -404.1,-996.2 -788.1,-1220.5 -139.4,-80.8 -333.4,-151.5 -355.6,-129.3 -8.1,8.1 18.2,216.2 58.6,462.7 78.8,482.9 159.6,1073 202.1,1450.8 l 24.2,232.4 70.7,12.1 c 115.3,20.3 325.4,20.3 462.8,-1.9 z"
id="path3"
style="fill:#be5f00;fill-opacity:1" /></g></g>
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@@ -0,0 +1,23 @@
{
"images" : [
{
"filename" : "nostr-hashtag.svg",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "nostr-hashtag.svg",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "nostr-hashtag.svg",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.0"
width="18pt"
height="18.199053pt"
viewBox="0 0 18 18.199053"
preserveAspectRatio="xMidYMid"
id="svg1"
sodipodi:docname="nostr-hashtag.svg"
inkscape:version="1.3-dev (77bc73e, 2022-05-18)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs1" />
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="pt"
showgrid="false"
inkscape:zoom="5.4017383"
inkscape:cx="50.354161"
inkscape:cy="-13.514168"
inkscape:window-width="1497"
inkscape:window-height="866"
inkscape:window-x="1747"
inkscape:window-y="96"
inkscape:window-maximized="0"
inkscape:current-layer="svg1" />
<metadata
id="metadata1">
Created by potrace 1.15, written by Peter Selinger 2001-2017
</metadata>
<g
transform="matrix(0.00138509,0,0,-0.00138509,0.3,17.927982)"
fill="#000000"
stroke="none"
id="g1">
<path
d="m 11315,12756 c -49,-23 -135,-71 -190,-106 -128,-81 -170,-100 -222,-100 -37,0 -43,-3 -43,-22 0,-11 12,-36 26,-55 l 26,-34 -20,-37 c -128,-248 -171,-359 -212,-547 -56,-262 -43,-645 36,-1045 48,-244 104,-451 234,-865 158,-503 280,-942 320,-1145 27,-140 60,-448 60,-559 0,-164 -39,-366 -92,-478 -57,-123 -176,-222 -286,-239 -49,-8 -50,-23 -5,-38 18,-6 34,-14 38,-18 13,-13 -25,-66 -97,-134 -121,-115 -267,-174 -432,-174 -200,0 -327,87 -732,507 -233,240 -541,529 -604,567 -31,18 -32,18 -27,0 3,-11 9,-36 13,-56 8,-49 -5,-49 -65,1 -75,62 -168,118 -250,150 -134,51 -214,63 -481,70 l -245,6 -65,41 c -100,63 -125,68 -295,66 -186,-3 -262,7 -484,64 -279,71 -341,67 -780,-61 -334,-97 -442,-118 -761,-150 -200,-19 -365,-19 -496,1 -58,9 -107,14 -111,11 -3,-4 6,-22 21,-41 l 27,-35 -23,-5 c -13,-3 -61,-8 -106,-11 -113,-9 -157,-26 -219,-87 -50,-49 -54,-51 -140,-64 -60,-10 -108,-25 -153,-48 -304,-157 -331,-166 -471,-166 -48,0 -120,7 -160,15 -40,9 -74,13 -78,10 -3,-3 0,-20 7,-37 6,-18 10,-34 7,-36 -2,-3 -24,0 -47,7 -24,6 -103,16 -176,23 -163,15 -350,1 -521,-40 l -114,-26 51,-23 c 53,-23 76,-50 66,-77 -3,-8 -51,-38 -105,-66 -251,-129 -515,-384 -727,-703 -110,-166 -208,-325 -217,-355 -6,-21 -5,-22 34,-16 36,6 41,4 41,-12 0,-11 -15,-45 -34,-76 -46,-75 -76,-161 -127,-359 -78,-307 -137,-444 -243,-569 -38,-44 -51,-67 -43,-72 7,-4 40,-8 75,-8 37,0 62,-4 62,-11 0,-6 -12,-26 -27,-45 -32,-43 -24,-53 48,-60 108,-11 103,-6 95,-82 -4,-37 -11,-128 -15,-202 -5,-74 -16,-164 -26,-200 -22,-85 -75,-190 -136,-269 -27,-35 -49,-67 -49,-72 0,-4 17,-11 38,-14 20,-3 49,-8 64,-10 64,-10 285,31 408,76 101,37 249,117 348,188 54,38 110,75 126,80 15,6 70,11 123,11 267,0 582,98 766,239 34,26 72,53 83,59 25,13 31,8 58,-46 21,-40 38,-32 57,26 30,93 97,200 141,223 25,14 38,3 98,-86 27,-38 73,-95 104,-125 31,-30 56,-63 56,-75 0,-11 -20,-60 -45,-110 -42,-84 -81,-202 -70,-213 3,-3 27,16 54,41 50,47 81,59 81,34 0,-8 -10,-49 -21,-93 -26,-97 -32,-275 -10,-313 l 14,-25 36,41 c 42,48 118,88 251,131 102,33 185,47 345,57 55,4 159,13 230,21 292,34 285,35 368,-56 66,-72 122,-115 170,-130 20,-6 37,-15 37,-19 0,-12 -22,-35 -75,-77 -27,-21 -151,-133 -275,-248 -424,-394 -462,-415 -864,-486 -65,-12 -145,-29 -177,-39 -191,-60 -348,-213 -554,-541 -103,-165 -162,-241 -292,-383 -176,-190 -332,-333 -778,-711 -497,-422 -750,-737 -895,-1113 -64,-165 -104,-203 -216,-203 -38,0 -94,7 -124,15 -74,20 -244,20 -301,0 -27,-10 -61,-33 -87,-62 -41,-45 -43,-46 -89,-39 -25,3 -67,18 -92,33 C 457,781 369,812 175,813 49,814 0,786 0,713 0,669 31,628 122,557 204,491 254,434 469,153 527,77 549,57 597,33 652,7 662,5 780,6 c 69,0 150,6 180,14 30,7 132,32 225,56 281,72 308,76 511,84 181,6 195,8 247,34 76,37 137,107 231,267 230,392 287,481 394,626 219,293 469,581 756,869 284,284 368,342 641,439 164,59 295,123 410,199 101,68 257,219 295,286 14,24 56,76 93,116 100,106 177,142 437,203 165,40 229,62 390,133 191,85 220,94 460,143 118,24 239,49 267,56 29,7 56,10 59,6 4,-3 15,-50 26,-104 14,-73 21,-159 25,-331 6,-265 -3,-385 -47,-605 -50,-247 -105,-393 -222,-592 -59,-98 -74,-167 -58,-256 23,-126 61,-177 174,-232 95,-47 169,-52 357,-28 125,16 244,22 505,26 667,12 1011,-35 1799,-241 277,-73 308,-86 376,-161 72,-79 113,-170 175,-388 19,-66 42,-130 50,-143 42,-63 155,-112 261,-112 109,0 124,57 54,206 -48,102 -53,149 -17,165 31,15 73,-5 102,-48 12,-18 45,-87 75,-153 57,-132 106,-197 173,-233 35,-18 56,-21 136,-20 73,2 110,-3 159,-19 89,-29 333,-32 403,-5 114,44 140,145 60,231 -23,24 -112,72 -272,143 -71,32 -199,124 -250,179 -71,78 -111,140 -224,343 -132,236 -172,297 -262,391 -58,61 -94,89 -148,115 -113,56 -85,53 -866,85 -223,9 -616,36 -656,45 -11,2 -86,12 -165,20 -179,20 -595,95 -712,130 -145,42 -319,139 -371,208 -32,42 -53,102 -67,187 -22,144 48,316 261,640 125,190 193,317 230,428 31,95 60,282 60,392 0,76 4,102 16,114 20,20 25,18 192,-102 73,-52 168,-114 210,-137 83,-47 132,-82 132,-95 0,-4 -14,-17 -32,-28 l -32,-21 29,-11 c 108,-41 305,-52 707,-39 186,6 345,9 353,5 8,-3 15,-15 15,-27 0,-20 3,-21 54,-15 110,13 266,81 426,187 89,58 99,63 170,69 161,14 229,78 523,495 88,124 143,185 169,185 2,0 2,-27 0,-60 -2,-33 0,-60 5,-60 23,0 140,145 212,263 117,192 165,317 271,712 106,394 111,410 135,410 15,0 22,-10 29,-40 13,-53 12,-52 42,-24 40,36 103,133 154,234 25,50 50,90 55,90 6,0 11,-17 13,-37 2,-21 7,-38 12,-38 19,0 93,101 139,190 29,56 87,206 140,363 50,147 114,318 142,380 132,288 199,526 246,867 25,190 25,756 0,975 -23,195 -53,379 -78,485 -46,194 -152,515 -233,706 -130,306 -218,564 -260,764 -48,228 -48,572 1,770 31,128 82,204 166,246 64,33 118,83 187,174 120,158 184,199 503,321 250,96 347,153 347,204 0,41 -42,57 -174,68 -112,9 -385,70 -439,99 -10,5 -27,29 -37,54 -23,53 -99,137 -159,176 -56,35 -72,36 -40,1 24,-26 23,-26 -13,3 -21,16 -42,41 -47,56 -9,26 -14,28 -60,28 -50,0 -101,16 -101,32 0,4 -42,8 -92,7 -88,0 -98,-3 -183,-43 z m 550,-126 c 10,-11 16,-20 13,-20 -3,0 -13,9 -23,20 -10,11 -16,20 -13,20 3,0 13,-9 23,-20 z"
id="path1"
style="fill:#cc43c5;fill-opacity:1" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@@ -0,0 +1,23 @@
{
"images" : [
{
"filename" : "plebchain.svg",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "plebchain.svg",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "plebchain.svg",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 21.315096 18"
width="21.315096"
height="18"
version="1.1"
id="svg21"
sodipodi:docname="plebchain.svg"
inkscape:version="1.3-dev (77bc73e, 2022-05-18)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs21" />
<sodipodi:namedview
id="namedview21"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
showgrid="false"
inkscape:zoom="19.666667"
inkscape:cx="12.762712"
inkscape:cy="12.991525"
inkscape:window-width="1418"
inkscape:window-height="883"
inkscape:window-x="1745"
inkscape:window-y="10"
inkscape:window-maximized="0"
inkscape:current-layer="svg21" />
<path
d="M 18.625339,11.886754 C 17.668676,9.87076 15.553749,8.748431 12.298294,7.531368 12.258627,7.5164347 11.514296,7.2747022 10.649566,6.9942364 9.6532356,6.6713042 8.5682391,6.7520372 7.6316422,7.220569 L 5.7999816,8.136166 13.616623,17.9338 h 4.316652 l 0.703264,-1.662727 c 0.593598,-1.401862 0.641198,-3.009057 -0.0112,-4.384319 z"
id="path5"
style="fill:#bf26ed;fill-opacity:1;stroke-width:0.466665" />
<path
d="M 16.627546,5.1089093 C 16.710146,4.5484447 16.797412,3.95578 16.838479,3.6790475 17.083011,2.0219197 15.937348,0.48005806 14.28022,0.23552546 12.623092,-0.00900704 11.081231,1.1366559 10.836698,2.7937838 c -0.0406,0.2762657 -0.128333,0.8689305 -0.210932,1.4298619 -0.282799,0.058333 -0.513332,0.2851324 -0.558132,0.5870648 -0.0658,0.441465 0.084,1.0145298 0.370999,1.2072625 0.09707,1.4303286 1.118596,2.778524 2.547992,2.989457 1.429395,0.210933 2.796257,-0.785398 3.302589,-2.1265932 0.330399,-0.1021996 0.639331,-0.6071313 0.703731,-1.0490632 0.0434,-0.302399 -0.111533,-0.5856647 -0.365399,-0.7228643 z"
id="path10"
style="fill:#bf26ed;fill-opacity:1;stroke-width:0.466665" />
<path
d="m 21.193864,14.872477 c -0.0392,-0.501665 -0.310799,-0.956663 -0.684131,-1.294529 l -1.900727,-1.723394 c 0,0 0.172666,0.346732 0.332732,1.276796 L 15.53415,11.550288 c -0.878731,-0.405999 -1.835861,-0.616465 -2.804191,-0.616465 h -0.807331 c -0.87733,0 -1.681394,-0.553464 -1.9338602,-1.393928 C 9.8926348,9.220696 9.819835,8.832897 9.7904351,8.363432 V 8.362965 C 10.503966,7.7651672 10.944031,6.8285703 10.968765,5.8700401 11.247364,5.6651742 11.372897,5.0865094 11.28843,4.648311 11.230564,4.3482453 10.990698,4.1317127 10.706032,4.0850462 10.599632,3.5283147 10.487633,2.93985 10.435366,2.6654509 10.121301,1.0199896 8.5327726,-0.05940684 6.8873113,0.25419216 5.2418501,0.56779106 4.1624536,2.1567859 4.4760526,3.8022471 4.5283191,4.0766462 4.6407854,4.665111 4.7467184,5.2218423 4.4989192,5.3697751 4.355653,5.6595742 4.4125861,5.9596399 4.4956525,6.3983051 4.8255848,6.8901701 5.159717,6.9779032 5.2950499,7.2952355 5.4798493,7.5892345 5.7015152,7.8510336 L 5.7999816,8.136166 5.2171168,11.699621 3.2925898,12.11822 C 3.041524,12.177953 2.8109914,12.278752 2.6061254,12.411752 1.8342613,12.912484 1.5458622,13.865414 1.7731282,14.725478 1.8309946,14.943877 2.8833245,17.9338 2.8833245,17.9338 H 15.133284 l 0.408332,-1.691661 3.480855,0.605265 c 1.184397,0.211399 2.267993,-0.748064 2.171393,-1.974927 z"
id="path16"
style="fill:#f59119;fill-opacity:1;stroke-width:0.466665" />
<path
d="m 12.589026,15.06801 -2.251659,-0.776531 c 0,0 0.96693,-0.1106 0.95853,-0.625798 -4.67e-4,-0.03687 -0.01213,-0.240332 -0.307999,-0.210932 -0.0812,0.0079 -0.734064,0.07327 -1.1927962,0.118999 -0.3028657,0.03033 -0.6015314,0.09007 -0.8927304,0.178733 l -0.1591328,0.04853 -3.5256551,-2.101393 c 0,0 0,0 0.3495322,-0.763464 C 6.1779803,9.600561 5.8004482,8.136166 5.8004482,8.136166 L 1.324663,10.373825 C 0.63539857,10.718224 0.2,11.422889 0.2,12.193819 c 0,0.939397 0.64306455,1.756528 1.5558615,1.977727 l 6.4357789,1.371062 2.5834586,0.955731 c 0.167999,0.0532 0.329932,0.0602 0.517065,0.0033 0.187599,-0.05693 0.246399,-0.09847 0.337398,-0.165199 0.2464,-0.180133 0.706065,-0.536665 1.037864,-0.795664 0.170799,-0.133933 0.125533,-0.402266 -0.0784,-0.472732 z"
id="path21"
style="fill:#bf26ed;fill-opacity:1;stroke-width:0.466665" />
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,23 @@
{
"images" : [
{
"filename" : "zapathon.svg",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "zapathon.svg",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "zapathon.svg",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="11.106925"
height="18"
viewBox="0 0 2.9387073 4.7624999"
version="1.1"
id="svg1"
inkscape:version="1.3-dev (77bc73e, 2022-05-18)"
sodipodi:docname="zapathon.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
showgrid="false"
inkscape:zoom="16"
inkscape:cx="16.96875"
inkscape:cy="9.96875"
inkscape:window-width="1406"
inkscape:window-height="767"
inkscape:window-x="1741"
inkscape:window-y="214"
inkscape:window-maximized="0"
inkscape:current-layer="layer1" />
<defs
id="defs1" />
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-10.993855,-8.058313)">
<g
transform="matrix(0.01604881,0,0,-0.01604881,10.573102,13.422443)"
id="g10"
inkscape:label="Bolt"
style="display:inline">
<path
id="path14"
style="fill:#c98f19;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.1"
d="m 94.833712,155.13322 -8.129016,18.00903 -55.167069,-3.59001 18.868958,-24.19503 44.825648,2.77303 z m 83.691438,80.98476 -8.89814,-11.93085 -11.755,-16.519 -1.505,-2.114 -43.191,-60.691 L 63.081111,74.14633 79.705774,38.853232 C 121.34411,95.870625 162.2814,153.39008 203.27601,210.87013 Z m -22.57414,11.14115 12.32197,61.15287 -21.22997,22.33399 -17.432,-69.53486 -7.0256,-30.70796 27.52164,-9.9823 5.84396,26.73826"
sodipodi:nodetypes="cccccccccccccccccccccc" />
<path
id="path16"
style="fill:#fadf05;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.1"
d="m 178.78514,236.43412 -5.679,-0.377 -8.065,-0.533 -5.9,-0.389 -33.394,-2.212 6.162,29.388 6.223,29.667 8.95029,38.92409 -54.426393,-75.90909 -61.5969,-86.55 44.1332,2.921 8.9137,0.589 -6.1723,-29.396 -0.9867,-4.71 -1.5106,-7.209 -11.7273,-55.917704 16.3074,22.9175 37.169603,52.234204 43.189,60.693 1.505,2.113 16.907,23.756 h -0.002"
sodipodi:nodetypes="cccccccccccccccccccccc" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,23 @@
{
"images": [
{
"filename": "alby.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "alby.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "alby.svg"
}
],
"info": {
"author": "xcode",
"version": 1
}
}

View File

@@ -0,0 +1,11 @@
<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="3.59995" cy="3.59995" r="3.59995" transform="matrix(-1 0 0 1 13.832 9.96094)" fill="black"/>
<path d="M9.63215 13.0205L16.3521 19.7404" stroke="black" stroke-width="1.79997"/>
<circle cx="39.6317" cy="13.5609" r="3.59995" fill="black"/>
<path d="M40.2917 13.0205L33.5718 19.7404" stroke="black" stroke-width="1.79997"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.2538 35.0429C9.31357 34.1193 8.18436 32.045 8.56261 29.9297C10.1861 20.8506 16.9519 14.041 25.0517 14.041C33.1712 14.041 39.9502 20.8836 41.5526 29.9957C41.9253 32.1149 40.7869 34.1881 38.84 35.1043C34.6741 37.0648 30.0209 38.1606 25.1117 38.1606C20.1516 38.1606 15.4528 37.0419 11.2538 35.0429Z" fill="#FFDF6F"/>
<path d="M41.5526 29.9957L42.439 29.8398L41.5526 29.9957ZM38.84 35.1043L38.4568 34.29L38.84 35.1043ZM9.44855 30.0881C11.0173 21.3153 17.5017 14.941 25.0517 14.941V13.141C16.402 13.141 9.35492 20.3859 7.67668 29.7713L9.44855 30.0881ZM25.0517 14.941C32.62 14.941 39.1178 21.3464 40.6662 30.1516L42.439 29.8398C40.7826 20.4209 33.7225 13.141 25.0517 13.141V14.941ZM38.4568 34.29C34.4082 36.1952 29.8856 37.2607 25.1117 37.2607V39.0606C30.1561 39.0606 34.9399 37.9343 39.2232 35.9187L38.4568 34.29ZM25.1117 37.2607C20.2883 37.2607 15.7213 36.173 11.6407 34.2303L10.867 35.8556C15.1842 37.9108 20.015 39.0606 25.1117 39.0606V37.2607ZM40.6662 30.1516C40.965 31.8506 40.0553 33.5378 38.4568 34.29L39.2232 35.9187C41.5185 34.8385 42.8855 32.3791 42.439 29.8398L40.6662 30.1516ZM7.67668 29.7713C7.22342 32.306 8.57956 34.7666 10.867 35.8556L11.6407 34.2303C10.0476 33.4719 9.14529 31.784 9.44855 30.0881L7.67668 29.7713Z" fill="black"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M14.7154 32.7862C13.1536 32.1501 12.2272 30.4884 12.7684 28.8913C14.4373 23.9658 19.3057 20.4014 25.0515 20.4014C30.7973 20.4014 35.6657 23.9658 37.3346 28.8913C37.8758 30.4884 36.9494 32.1501 35.3876 32.7862C32.1977 34.0853 28.7082 34.8012 25.0515 34.8012C21.3948 34.8012 17.9053 34.0853 14.7154 32.7862Z" fill="black"/>
<ellipse cx="29.1918" cy="28.0806" rx="2.99995" ry="2.39996" fill="white"/>
<ellipse cx="20.6037" cy="28.0816" rx="2.99995" ry="2.39996" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -0,0 +1,21 @@
{
"images" : [
{
"filename" : "bitcoin-logo.svg",
"idiom" : "universal",
"scale" : "1x"
},
{
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="20px" height="20px" viewBox="0 0 20 20" version="1.1">
<g id="surface1">
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(96.862745%,57.647059%,10.196078%);fill-opacity:1;" d="M 19.699219 12.417969 C 18.363281 17.777344 12.9375 21.035156 7.582031 19.699219 C 2.226562 18.363281 -1.035156 12.9375 0.300781 7.582031 C 1.636719 2.222656 7.0625 -1.035156 12.417969 0.300781 C 17.773438 1.632812 21.035156 7.0625 19.699219 12.417969 Z M 19.699219 12.417969 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,100%,100%);fill-opacity:1;" d="M 14.410156 8.574219 C 14.609375 7.246094 13.59375 6.53125 12.210938 6.050781 L 12.660156 4.25 L 11.5625 3.976562 L 11.125 5.730469 C 10.835938 5.660156 10.539062 5.589844 10.246094 5.523438 L 10.6875 3.757812 L 9.589844 3.484375 L 9.140625 5.285156 C 8.902344 5.230469 8.667969 5.179688 8.4375 5.121094 L 8.441406 5.117188 L 6.925781 4.738281 L 6.636719 5.910156 C 6.636719 5.910156 7.449219 6.097656 7.433594 6.109375 C 7.875 6.21875 7.957031 6.511719 7.941406 6.746094 L 7.429688 8.800781 C 7.460938 8.808594 7.5 8.820312 7.546875 8.835938 L 7.429688 8.808594 L 6.710938 11.683594 C 6.65625 11.820312 6.519531 12.023438 6.210938 11.945312 C 6.21875 11.960938 5.410156 11.746094 5.410156 11.746094 L 4.867188 13 L 6.296875 13.359375 C 6.5625 13.425781 6.820312 13.492188 7.078125 13.558594 L 6.621094 15.382812 L 7.71875 15.65625 L 8.167969 13.851562 C 8.46875 13.933594 8.757812 14.007812 9.042969 14.078125 L 8.59375 15.875 L 9.691406 16.148438 L 10.144531 14.328125 C 12.015625 14.683594 13.425781 14.539062 14.015625 12.847656 C 14.492188 11.484375 13.992188 10.699219 13.007812 10.1875 C 13.726562 10.019531 14.265625 9.550781 14.410156 8.574219 Z M 11.902344 12.089844 C 11.5625 13.453125 9.269531 12.71875 8.523438 12.53125 L 9.128906 10.117188 C 9.871094 10.300781 12.253906 10.667969 11.902344 12.089844 Z M 12.242188 8.554688 C 11.933594 9.796875 10.023438 9.164062 9.402344 9.011719 L 9.949219 6.820312 C 10.570312 6.976562 12.5625 7.261719 12.242188 8.554688 Z M 12.242188 8.554688 "/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -1,15 +1,12 @@
{
"images" : [
{
"filename" : "shaka-full.pdf",
"filename" : "eula-bg.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
},
"properties" : {
"template-rendering-intent" : "template"
}
}

View File

@@ -0,0 +1,28 @@
<svg width="430" height="813" viewBox="0 0 430 813" fill="none" xmlns="http://www.w3.org/2000/svg">
<g filter="url(#filter0_f_1069_29012)">
<path d="M44.0811 256.851L186.315 111L276.203 223.574L244.02 388.295L69.9751 697.084L100.678 498.338L44.0811 256.851Z" fill="url(#paint0_linear_1069_29012)"/>
</g>
<g filter="url(#filter1_f_1069_29012)">
<path d="M116.509 587.348L206.677 479.401L230.746 273.265L266.666 231.183L367.424 396.975L281.292 659.008L266.665 801.413L66.889 763.694L116.509 587.348Z" fill="url(#paint1_linear_1069_29012)"/>
</g>
<defs>
<filter id="filter0_f_1069_29012" x="-66.6248" y="0.294121" width="453.534" height="807.496" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="55.3529" result="effect1_foregroundBlur_1069_29012"/>
</filter>
<filter id="filter1_f_1069_29012" x="-43.8172" y="120.477" width="521.947" height="791.642" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feGaussianBlur stdDeviation="55.3529" result="effect1_foregroundBlur_1069_29012"/>
</filter>
<linearGradient id="paint0_linear_1069_29012" x1="230.179" y1="166.577" x2="-67.7956" y2="310.108" gradientUnits="userSpaceOnUse">
<stop stop-color="#D34CD9"/>
<stop offset="1" stop-color="#4E4DF4"/>
</linearGradient>
<linearGradient id="paint1_linear_1069_29012" x1="139.483" y1="462.902" x2="377.854" y2="565.47" gradientUnits="userSpaceOnUse">
<stop stop-color="#0DE8FF"/>
<stop offset="1" stop-color="#641AAE"/>
</linearGradient>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -1,15 +1,12 @@
{
"images" : [
{
"filename" : "shaka-line.pdf",
"filename" : "gradient.jpg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
},
"properties" : {
"template-rendering-intent" : "template"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 118 KiB

View File

@@ -0,0 +1,6 @@
{
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "Fundrise.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "Fundrise.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "Fundrise.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13.3111 8.87301C12.8205 9.2228 12.2201 9.42856 11.5716 9.42856C9.91471 9.42856 8.57157 8.08541 8.57157 6.42856C8.57157 4.7717 9.91471 3.42856 11.5716 3.42856C12.6456 3.42856 13.5877 3.99292 14.1177 4.84125M6.85728 18.9319H9.09467C9.38639 18.9319 9.67632 18.9666 9.95912 19.0359L12.3232 19.6105C12.8361 19.7354 13.3705 19.7475 13.8889 19.6469L16.5027 19.1384C17.1931 19.0039 17.8284 18.6732 18.3261 18.189L20.1755 16.39C20.7036 15.8772 20.7036 15.0449 20.1755 14.5312C19.7 14.0686 18.947 14.0166 18.4091 14.4088L16.2538 15.9813C15.9451 16.2069 15.5695 16.3284 15.1833 16.3284H13.102H14.4268C15.1735 16.3284 15.7783 15.74 15.7783 15.0136V14.7506C15.7783 14.1476 15.3564 13.6217 14.7551 13.4759L12.7104 12.9786C12.3776 12.8979 12.0368 12.8571 11.6942 12.8571C10.8673 12.8571 9.37033 13.5418 9.37033 13.5418L6.85728 14.5928M18.8573 7.2857C18.8573 8.94256 17.5141 10.2857 15.8573 10.2857C14.2004 10.2857 12.8573 8.94256 12.8573 7.2857C12.8573 5.62884 14.2004 4.2857 15.8573 4.2857C17.5141 4.2857 18.8573 5.62884 18.8573 7.2857ZM3.42871 14.2286V19.2C3.42871 19.6801 3.42871 19.9201 3.52213 20.1034C3.60431 20.2647 3.73544 20.3958 3.89672 20.478C4.08007 20.5714 4.3201 20.5714 4.80014 20.5714H5.48585C5.9659 20.5714 6.20592 20.5714 6.38927 20.478C6.55055 20.3958 6.68168 20.2647 6.76386 20.1034C6.85728 19.9201 6.85728 19.6801 6.85728 19.2V14.2286C6.85728 13.7485 6.85728 13.5085 6.76386 13.3251C6.68168 13.1638 6.55055 13.0328 6.38927 12.9506C6.20592 12.8571 5.9659 12.8571 5.48585 12.8571H4.80014C4.3201 12.8571 4.08007 12.8571 3.89672 12.9506C3.73544 13.0328 3.60431 13.1638 3.52213 13.3251C3.42871 13.5085 3.42871 13.7485 3.42871 14.2286Z" stroke="black" stroke-width="1.71429" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "GIF.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "GIF.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "GIF.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M5.14272 5.99999H18.857C19.3304 5.99999 19.7141 6.38375 19.7141 6.85713V17.1428C19.7141 17.6162 19.3304 18 18.857 18H5.14272C4.66933 18 4.28557 17.6162 4.28557 17.1428V6.85714C4.28557 6.38375 4.66933 5.99999 5.14272 5.99999ZM2.57129 6.85714C2.57129 5.43698 3.72256 4.28571 5.14272 4.28571H18.857C20.2772 4.28571 21.4284 5.43697 21.4284 6.85713V17.1428C21.4284 18.563 20.2772 19.7143 18.857 19.7143H5.14272C3.72256 19.7143 2.57129 18.563 2.57129 17.1428V6.85714ZM9.22631 11.2305C9.2052 11.1445 9.17192 11.069 9.12647 11.0041C9.08102 10.9375 9.0242 10.8815 8.95602 10.8361C8.88946 10.789 8.81153 10.7541 8.72225 10.7313C8.63459 10.707 8.538 10.6948 8.43248 10.6948C8.2052 10.6948 8.01121 10.7492 7.8505 10.858C7.69141 10.9667 7.56965 11.1234 7.48524 11.3279C7.40244 11.5325 7.36105 11.7792 7.36105 12.0682C7.36105 12.3604 7.40082 12.6104 7.48037 12.8182C7.55991 13.026 7.67842 13.1851 7.83589 13.2955C7.99335 13.4059 8.18897 13.4611 8.42274 13.4611C8.62891 13.4611 8.80017 13.431 8.93653 13.371C9.07452 13.3109 9.17761 13.2257 9.24579 13.1153C9.31024 13.0109 9.34423 12.8892 9.34775 12.75H8.44222V11.7857H10.6533V12.4773C10.6533 12.9318 10.5567 13.3206 10.3635 13.6437C10.1719 13.9651 9.90731 14.2119 9.56965 14.3839C9.23361 14.5544 8.84806 14.6396 8.413 14.6396C7.92761 14.6396 7.50147 14.5365 7.13459 14.3304C6.7677 14.1242 6.48118 13.8304 6.27501 13.4489C6.07046 13.0674 5.96819 12.6137 5.96819 12.0877C5.96819 11.6753 6.03069 11.3101 6.15569 10.9919C6.28231 10.6737 6.45764 10.4051 6.68166 10.1859C6.90569 9.96512 7.16462 9.79872 7.45845 9.68671C7.75228 9.57307 8.06722 9.51625 8.40326 9.51625C8.69871 9.51625 8.97306 9.55846 9.22631 9.64288C9.48118 9.72567 9.70602 9.84417 9.90082 9.99839C10.0972 10.151 10.2555 10.332 10.3757 10.5414C10.4958 10.7508 10.5688 10.9805 10.5948 11.2305H9.22631ZM13.3242 9.58443V14.5714H11.9703V9.58443H13.3242ZM14.6515 9.58443V14.5714H16.0054V12.6234H17.9437V11.5325H16.0054V10.6753H18.158V9.58443H14.6515Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "Key.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "Key.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "Key.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,4 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.5001 8.99999C17.3285 8.99999 18.0001 8.32841 18.0001 7.49997C18.0001 6.67154 17.3285 5.99996 16.5001 5.99996C15.6717 5.99996 15.0001 6.67154 15.0001 7.49997C15.0001 8.32841 15.6717 8.99999 16.5001 8.99999Z" fill="black"/>
<path d="M11.2501 18.0001V17.2501H12.7501C13.1643 17.2501 13.5001 16.9143 13.5001 16.5V15H15.0001C18.3138 15 21.0001 12.3137 21.0001 8.99999C21.0001 5.68625 18.3138 2.99994 15.0001 2.99994C11.6864 2.99994 9.00005 5.68625 9.00005 8.99999C9.00005 9.58815 9.0849 10.1576 9.24333 10.6961L3.43934 16.5C3.15804 16.7814 3 17.1629 3 17.5607V19.5001C3 20.3285 3.67158 21.0001 4.50001 21.0001H7.50004C8.32847 21.0001 9.00005 20.3285 9.00005 19.5001V18.7501H10.5001C10.9143 18.7501 11.2501 18.4143 11.2501 18.0001ZM10.5001 8.99999C10.5001 6.51469 12.5148 4.49995 15.0001 4.49995C17.4854 4.49995 19.5001 6.51469 19.5001 8.99999C19.5001 11.4853 17.4854 13.5 15.0001 13.5H12.7501C12.3359 13.5 12.0001 13.8358 12.0001 14.25V15.75H10.5001C10.0858 15.75 9.75005 16.0858 9.75005 16.5V17.2501H8.25004C7.83582 17.2501 7.50004 17.5858 7.50004 18.0001V19.5001H4.50001V17.5607L10.6335 11.4272C10.8436 11.2171 10.9099 10.9028 10.8025 10.6258C10.6074 10.1225 10.5001 9.57468 10.5001 8.99999Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "NFC.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "NFC.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "NFC.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.28787 16.8167C9.51778 17.0243 9.85483 17.0578 10.1227 16.9038C11.8035 15.9306 12.9285 14.0712 12.9285 11.9998C12.9285 9.9284 11.8057 8.06904 10.1227 7.09583C9.78117 6.89941 9.34367 7.01548 9.14725 7.35699C8.95082 7.69851 9.06689 8.136 9.4084 8.33243C10.6539 9.0534 11.4999 10.4462 11.4999 11.9998C11.4999 13.3703 10.8414 14.6158 9.83028 15.3859L6.26335 12.1828C5.96871 11.9194 5.51782 11.944 5.25443 12.2364C4.99104 12.5288 5.01559 12.9819 5.308 13.2453L9.28787 16.8167ZM5.14059 7.18289C4.91068 6.9753 4.57363 6.94182 4.30578 7.09583C2.62276 8.06904 1.5 9.9284 1.5 11.9998C1.5 14.0712 2.62276 15.9306 4.30578 16.9038C4.64729 17.1002 5.08479 16.9841 5.28121 16.6426C5.47764 16.3011 5.36157 15.8636 5.02005 15.6672C3.77453 14.9462 2.92856 13.5556 2.92856 11.9998C2.92856 10.6293 3.58703 9.38376 4.59818 8.61368L8.16511 11.8168C8.45975 12.0802 8.91064 12.0556 9.17403 11.7632C9.43742 11.4708 9.41287 11.0177 9.12046 10.7543L5.14059 7.18289Z" fill="black"/>
<path d="M18.6611 3.29748C19.0684 2.87729 19.7029 2.9049 20.0765 3.36339C23.9746 8.12351 23.9746 15.8766 20.0761 20.6367C19.8785 20.8784 19.6085 21 19.3386 21C19.0968 21 18.8508 20.9016 18.6611 20.703C18.2543 20.2825 18.2275 19.5705 18.6018 19.1135C21.8136 15.1901 21.8136 8.80995 18.6018 4.887C18.2275 4.42997 18.2543 3.7179 18.6611 3.29748Z" fill="black"/>
<path d="M15.2492 8.57679C14.8839 8.10992 14.9251 7.3993 15.3405 6.98915C15.7574 6.61884 16.3869 6.66571 16.7538 7.09007C18.8521 9.77599 18.8521 14.1424 16.7538 16.8259C16.5562 17.0794 16.2792 17.2083 16.0008 17.2083C15.7661 17.2083 15.5309 17.0738 15.3405 16.9285C14.9251 16.5183 14.884 15.8081 15.2492 15.3408C16.7071 13.4752 16.7071 10.4415 15.2492 8.57679Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "activity.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "activity.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "activity.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2 11.9999H5.26711C5.70339 11.9999 6.08932 11.717 6.2207 11.301L8.7616 3.2548C8.83517 3.02184 9.16483 3.02184 9.2384 3.2548L14.7616 20.745C14.8352 20.9779 15.1648 20.9779 15.2384 20.745L17.7793 12.6987C17.9107 12.2827 18.2966 11.9999 18.7329 11.9999H22" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 447 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "add-bookmark.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "add-bookmark.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "add-bookmark.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13 7C13 6.44772 12.5523 6 12 6C11.4477 6 11 6.44772 11 7H13ZM11 13C11 13.5523 11.4477 14 12 14C12.5523 14 13 13.5523 13 13H11ZM15 11C15.5523 11 16 10.5523 16 10C16 9.44772 15.5523 9 15 9L15 11ZM9 9C8.44772 9 8 9.44771 8 10C8 10.5523 8.44772 11 9 11L9 9ZM16.47 20.1929L15.8888 21.0066L15.8888 21.0066L16.47 20.1929ZM12.93 17.6643L13.5112 16.8505L13.5112 16.8505L12.93 17.6643ZM11.07 17.6643L10.4888 16.8505L10.4888 16.8505L11.07 17.6643ZM7.52998 20.1929L6.94874 19.3791L6.94874 19.3791L7.52998 20.1929ZM12.2456 17.2595L12.4911 16.2901L12.4911 16.2901L12.2456 17.2595ZM11.7544 17.2595L11.5089 16.2901L11.5089 16.2901L11.7544 17.2595ZM5.20836 20.6678L6 20.0568L6 20.0568L5.20836 20.6678ZM5.96294 21.0561L5.92589 22.0554L5.92589 22.0554L5.96294 21.0561ZM18.7916 20.6678L18 20.0568L18 20.0568L18.7916 20.6678ZM18.0371 21.0561L18.0741 22.0554L18.0741 22.0554L18.0371 21.0561ZM18.891 3.54601L18 4L18 4L18.891 3.54601ZM18.454 3.10899L18.908 2.21799L18.908 2.21799L18.454 3.10899ZM5.10899 3.54601L4.21799 3.09202L4.21799 3.09202L5.10899 3.54601ZM5.54601 3.10899L5.09202 2.21799L5.09202 2.21799L5.54601 3.10899ZM11 7V13H13V7H11ZM15 9L9 9L9 11L15 11L15 9ZM18 4.6V18.8909H20V4.6H18ZM6 18.8909V4.6H4V18.8909H6ZM6.6 4H17.4V2H6.6V4ZM17.0513 19.3791L13.5112 16.8505L12.3487 18.478L15.8888 21.0066L17.0513 19.3791ZM10.4888 16.8505L6.94874 19.3791L8.11122 21.0066L11.6513 18.478L10.4888 16.8505ZM13.5112 16.8505C13.2454 16.6606 12.9003 16.3938 12.4911 16.2901L12 18.2289C11.956 18.2178 11.9466 18.2043 12.0065 18.2412C12.0771 18.2846 12.1705 18.3507 12.3487 18.478L13.5112 16.8505ZM11.6513 18.478C11.8295 18.3507 11.9229 18.2846 11.9935 18.2412C12.0534 18.2043 12.044 18.2178 12 18.2289L11.5089 16.2901C11.0997 16.3938 10.7546 16.6606 10.4888 16.8505L11.6513 18.478ZM12.4911 16.2901C12.1688 16.2085 11.8312 16.2085 11.5089 16.2901L12 18.2289H12L12.4911 16.2901ZM4 18.8909C4 19.3733 3.999 19.8046 4.0302 20.1459C4.06022 20.4742 4.1313 20.909 4.41673 21.2788L6 20.0568C6.07706 20.1567 6.04397 20.2053 6.02189 19.9638C6.001 19.7353 6 19.4131 6 18.8909H4ZM6.94874 19.3791C6.52379 19.6827 6.26104 19.8691 6.06296 19.9849C5.85365 20.1073 5.87396 20.0521 6 20.0568L5.92589 22.0554C6.39272 22.0727 6.7878 21.8779 7.07244 21.7115C7.3683 21.5385 7.71867 21.287 8.11122 21.0066L6.94874 19.3791ZM4.41673 21.2788C4.77954 21.7489 5.33249 22.0334 5.92589 22.0554L6 20.0568L6 20.0568L4.41673 21.2788ZM18 18.8909C18 19.4131 17.999 19.7353 17.9781 19.9638C17.956 20.2053 17.9229 20.1567 18 20.0568L19.5833 21.2788C19.8687 20.909 19.9398 20.4742 19.9698 20.1459C20.001 19.8046 20 19.3733 20 18.8909H18ZM15.8888 21.0066C16.2813 21.287 16.6317 21.5385 16.9276 21.7115C17.2122 21.8779 17.6073 22.0727 18.0741 22.0554L18 20.0568C18.126 20.0521 18.1463 20.1073 17.937 19.9849C17.739 19.8691 17.4762 19.6827 17.0513 19.3791L15.8888 21.0066ZM18 20.0568L18 20.0568L18.0741 22.0554C18.6675 22.0334 19.2205 21.7489 19.5833 21.2788L18 20.0568ZM20 4.6C20 4.33647 20.0008 4.07869 19.9831 3.86177C19.9644 3.63318 19.9203 3.36344 19.782 3.09202L18 4C17.9707 3.94249 17.9811 3.91972 17.9897 4.02463C17.9992 4.14122 18 4.30347 18 4.6H20ZM17.4 4C17.6965 4 17.8588 4.00078 17.9754 4.0103C18.0803 4.01887 18.0575 4.0293 18 4L18.908 2.21799C18.6366 2.07969 18.3668 2.03562 18.1382 2.01695C17.9213 1.99922 17.6635 2 17.4 2V4ZM19.782 3.09202C19.5903 2.71569 19.2843 2.40973 18.908 2.21799L18 4L18 4L19.782 3.09202ZM6 4.6C6 4.30347 6.00078 4.14122 6.0103 4.02463C6.01887 3.91972 6.0293 3.94249 6 4L4.21799 3.09202C4.07969 3.36344 4.03562 3.63318 4.01695 3.86177C3.99922 4.07869 4 4.33648 4 4.6H6ZM6.6 2C6.33647 2 6.07869 1.99922 5.86177 2.01695C5.63318 2.03562 5.36344 2.07969 5.09202 2.21799L6 4C5.94249 4.0293 5.91972 4.01887 6.02463 4.0103C6.14122 4.00078 6.30347 4 6.6 4V2ZM6 4L6 4L5.09202 2.21799C4.71569 2.40973 4.40973 2.71569 4.21799 3.09202L6 4Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "add-reaction.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "add-reaction.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "add-reaction.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.4986 9.5C10.4986 10.3284 9.939 11 9.24864 11C8.55828 11 7.99864 10.3284 7.99864 9.5C7.99864 8.67157 8.55828 8 9.24864 8C9.939 8 10.4986 8.67157 10.4986 9.5Z" fill="black"/>
<path d="M15.9986 9.5C15.9986 10.3284 15.439 11 14.7486 11C14.0583 11 13.4986 10.3284 13.4986 9.5C13.4986 8.67157 14.0583 8 14.7486 8C15.439 8 15.9986 8.67157 15.9986 9.5Z" fill="black"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M18.9986 1C19.5509 1 19.9986 1.44772 19.9986 2V4H21.9986C22.5509 4 22.9986 4.44772 22.9986 5C22.9986 5.55228 22.5509 6 21.9986 6H19.9986V8C19.9986 8.55228 19.5509 9 18.9986 9C18.4464 9 17.9986 8.55228 17.9986 8V6H15.9986C15.4464 6 14.9986 5.55228 14.9986 5C14.9986 4.44772 15.4464 4 15.9986 4H17.9986V2C17.9986 1.44772 18.4464 1 18.9986 1ZM11.9926 2.94507C12.0533 3.494 11.6576 3.98826 11.1087 4.04902C7.11036 4.49161 4 7.88325 4 12C3.99999 16.4183 7.5817 20 12 20C16.1171 20 19.509 16.889 19.9511 12.8901C20.0118 12.3412 20.506 11.9454 21.0549 12.0061C21.6039 12.0667 21.9997 12.5609 21.939 13.1099C21.3862 18.1109 17.1479 22 12 22C6.47714 22 1.99998 17.5228 2 12C2 6.85256 5.88834 2.61466 10.8886 2.06116C11.4375 2.0004 11.9318 2.39614 11.9926 2.94507ZM8.46341 14.1213C8.85393 13.7308 9.4871 13.7308 9.87762 14.1213C11.0492 15.2929 12.9487 15.2929 14.1203 14.1213C14.5108 13.7308 15.1439 13.7308 15.5345 14.1213C15.925 14.5118 15.925 15.145 15.5345 15.5355C13.5818 17.4882 10.416 17.4882 8.46341 15.5355C8.07288 15.145 8.07288 14.5118 8.46341 14.1213Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "added-bookmark.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "added-bookmark.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "added-bookmark.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.47 20.1929L15.8888 21.0066L15.8888 21.0066L16.47 20.1929ZM12.93 17.6643L13.5112 16.8505L13.5112 16.8505L12.93 17.6643ZM11.07 17.6643L10.4888 16.8505L10.4888 16.8505L11.07 17.6643ZM7.52998 20.1929L6.94874 19.3791L6.94874 19.3791L7.52998 20.1929ZM12.2456 17.2595L12.4911 16.2901L12.4911 16.2901L12.2456 17.2595ZM11.7544 17.2595L11.5089 16.2901L11.5089 16.2901L11.7544 17.2595ZM5.20836 20.6678L6 20.0568L6 20.0568L5.20836 20.6678ZM5.96294 21.0561L5.92589 22.0554L5.92589 22.0554L5.96294 21.0561ZM18.7916 20.6678L18 20.0568L18 20.0568L18.7916 20.6678ZM18.0371 21.0561L18.0741 22.0554L18.0741 22.0554L18.0371 21.0561ZM18.891 3.54601L18 4L18 4L18.891 3.54601ZM18.454 3.10899L18.908 2.21799L18.908 2.21799L18.454 3.10899ZM5.10899 3.54601L4.21799 3.09202L4.21799 3.09202L5.10899 3.54601ZM5.54601 3.10899L5.09202 2.21799L5.09202 2.21799L5.54601 3.10899ZM10.2071 9.54289C9.81658 9.15237 9.18342 9.15237 8.79289 9.54289C8.40237 9.93342 8.40237 10.5666 8.79289 10.9571L10.2071 9.54289ZM11 11.75L10.2929 12.4571C10.6834 12.8476 11.3166 12.8476 11.7071 12.4571L11 11.75ZM15.2071 8.95711C15.5976 8.56658 15.5976 7.93342 15.2071 7.54289C14.8166 7.15237 14.1834 7.15237 13.7929 7.54289L15.2071 8.95711ZM18 4.6V18.8909H20V4.6H18ZM6 18.8909V4.6H4V18.8909H6ZM6.6 4H17.4V2H6.6V4ZM17.0513 19.3791L13.5112 16.8505L12.3487 18.478L15.8888 21.0066L17.0513 19.3791ZM10.4888 16.8505L6.94874 19.3791L8.11122 21.0066L11.6513 18.478L10.4888 16.8505ZM13.5112 16.8505C13.2454 16.6606 12.9003 16.3938 12.4911 16.2901L12 18.2289C11.956 18.2178 11.9466 18.2043 12.0065 18.2412C12.0771 18.2846 12.1705 18.3507 12.3487 18.478L13.5112 16.8505ZM11.6513 18.478C11.8295 18.3507 11.9229 18.2846 11.9935 18.2412C12.0534 18.2043 12.044 18.2178 12 18.2289L11.5089 16.2901C11.0997 16.3938 10.7546 16.6606 10.4888 16.8505L11.6513 18.478ZM12.4911 16.2901C12.1688 16.2085 11.8312 16.2085 11.5089 16.2901L12 18.2289H12L12.4911 16.2901ZM4 18.8909C4 19.3733 3.999 19.8046 4.0302 20.1459C4.06022 20.4742 4.1313 20.909 4.41673 21.2788L6 20.0568C6.07706 20.1567 6.04397 20.2053 6.02189 19.9638C6.001 19.7353 6 19.4131 6 18.8909H4ZM6.94874 19.3791C6.52379 19.6827 6.26104 19.8691 6.06296 19.9849C5.85365 20.1073 5.87396 20.0521 6 20.0568L5.92589 22.0554C6.39272 22.0727 6.7878 21.8779 7.07244 21.7115C7.3683 21.5385 7.71867 21.287 8.11122 21.0066L6.94874 19.3791ZM4.41673 21.2788C4.77954 21.7489 5.33249 22.0334 5.92589 22.0554L6 20.0568L6 20.0568L4.41673 21.2788ZM18 18.8909C18 19.4131 17.999 19.7353 17.9781 19.9638C17.956 20.2053 17.9229 20.1567 18 20.0568L19.5833 21.2788C19.8687 20.909 19.9398 20.4742 19.9698 20.1459C20.001 19.8046 20 19.3733 20 18.8909H18ZM15.8888 21.0066C16.2813 21.287 16.6317 21.5385 16.9276 21.7115C17.2122 21.8779 17.6073 22.0727 18.0741 22.0554L18 20.0568C18.126 20.0521 18.1463 20.1073 17.937 19.9849C17.739 19.8691 17.4762 19.6827 17.0513 19.3791L15.8888 21.0066ZM18 20.0568L18 20.0568L18.0741 22.0554C18.6675 22.0334 19.2205 21.7489 19.5833 21.2788L18 20.0568ZM20 4.6C20 4.33647 20.0008 4.07869 19.9831 3.86177C19.9644 3.63318 19.9203 3.36344 19.782 3.09202L18 4C17.9707 3.94249 17.9811 3.91972 17.9897 4.02463C17.9992 4.14122 18 4.30347 18 4.6H20ZM17.4 4C17.6965 4 17.8588 4.00078 17.9754 4.0103C18.0803 4.01887 18.0575 4.0293 18 4L18.908 2.21799C18.6366 2.07969 18.3668 2.03562 18.1382 2.01695C17.9213 1.99922 17.6635 2 17.4 2V4ZM19.782 3.09202C19.5903 2.71569 19.2843 2.40973 18.908 2.21799L18 4L18 4L19.782 3.09202ZM6 4.6C6 4.30347 6.00078 4.14122 6.0103 4.02463C6.01887 3.91972 6.0293 3.94249 6 4L4.21799 3.09202C4.07969 3.36344 4.03562 3.63318 4.01695 3.86177C3.99922 4.07869 4 4.33648 4 4.6H6ZM6.6 2C6.33647 2 6.07869 1.99922 5.86177 2.01695C5.63318 2.03562 5.36344 2.07969 5.09202 2.21799L6 4C5.94249 4.0293 5.91972 4.01887 6.02463 4.0103C6.14122 4.00078 6.30347 4 6.6 4V2ZM6 4L6 4L5.09202 2.21799C4.71569 2.40973 4.40973 2.71569 4.21799 3.09202L6 4ZM8.79289 10.9571L10.2929 12.4571L11.7071 11.0429L10.2071 9.54289L8.79289 10.9571ZM11.7071 12.4571L15.2071 8.95711L13.7929 7.54289L10.2929 11.0429L11.7071 12.4571Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-2-stars.fill.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-2-stars.fill.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-2-stars.fill.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,4 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16 8C16 7.44772 15.5523 7 15 7C14.4477 7 14 7.44772 14 8C14 10.3085 13.4892 11.7424 12.6158 12.6158C11.7424 13.4892 10.3085 14 8 14C7.44772 14 7 14.4477 7 15C7 15.5523 7.44772 16 8 16C10.3085 16 11.7424 16.5108 12.6158 17.3842C13.4892 18.2576 14 19.6915 14 22C14 22.5523 14.4477 23 15 23C15.5523 23 16 22.5523 16 22C16 19.6915 16.5108 18.2576 17.3842 17.3842C18.2576 16.5108 19.6915 16 22 16C22.5523 16 23 15.5523 23 15C23 14.4477 22.5523 14 22 14C19.6915 14 18.2576 13.4892 17.3842 12.6158C16.5108 11.7424 16 10.3085 16 8Z" fill="black"/>
<path d="M7.5 2C7.5 1.44772 7.05228 1 6.5 1C5.94772 1 5.5 1.44772 5.5 2C5.5 3.44043 5.18016 4.24938 4.71477 4.71477C4.24938 5.18016 3.44043 5.5 2 5.5C1.44772 5.5 1 5.94772 1 6.5C1 7.05228 1.44772 7.5 2 7.5C3.44043 7.5 4.24938 7.81984 4.71477 8.28523C5.18016 8.75062 5.5 9.55957 5.5 11C5.5 11.5523 5.94772 12 6.5 12C7.05228 12 7.5 11.5523 7.5 11C7.5 9.55957 7.81984 8.75062 8.28523 8.28523C8.75062 7.81984 9.55957 7.5 11 7.5C11.5523 7.5 12 7.05228 12 6.5C12 5.94772 11.5523 5.5 11 5.5C9.55957 5.5 8.75062 5.18016 8.28523 4.71477C7.81984 4.24938 7.5 3.44043 7.5 2Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-2-stars.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-2-stars.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-2-stars.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,4 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 15C17.1389 15 15 17.1389 15 22C15 17.1389 12.8611 15 8 15C12.8611 15 15 12.8611 15 8C15 12.8611 17.1389 15 22 15Z" stroke="black" stroke-width="2" stroke-linejoin="round"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M11 6.5C7.875 6.5 6.5 7.875 6.5 11C6.5 7.875 5.125 6.5 2 6.5C5.125 6.5 6.5 5.125 6.5 2C6.5 5.125 7.875 6.5 11 6.5Z" stroke="black" stroke-width="2" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 552 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-3-stars.fill.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-3-stars.fill.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-3-stars.fill.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14 8C14 7.44772 13.5523 7 13 7C12.4477 7 12 7.44772 12 8C12 10.3085 11.4892 11.7424 10.6158 12.6158C9.74243 13.4892 8.30848 14 6 14C5.44772 14 5 14.4477 5 15C5 15.5523 5.44772 16 6 16C8.30848 16 9.74243 16.5108 10.6158 17.3842C11.4892 18.2576 12 19.6915 12 22C12 22.5523 12.4477 23 13 23C13.5523 23 14 22.5523 14 22C14 19.6915 14.5108 18.2576 15.3842 17.3842C16.2576 16.5108 17.6915 16 20 16C20.5523 16 21 15.5523 21 15C21 14.4477 20.5523 14 20 14C17.6915 14 16.2576 13.4892 15.3842 12.6158C14.5108 11.7424 14 10.3085 14 8Z" fill="black"/>
<path d="M6 5.5C6 5.22386 5.77614 5 5.5 5C5.22386 5 5 5.22386 5 5.5C5 6.48063 4.78279 7.0726 4.4277 7.4277C4.0726 7.78279 3.48063 8 2.5 8C2.22386 8 2 8.22386 2 8.5C2 8.77614 2.22386 9 2.5 9C3.48063 9 4.0726 9.21721 4.4277 9.5723C4.78279 9.9274 5 10.5194 5 11.5C5 11.7761 5.22386 12 5.5 12C5.77614 12 6 11.7761 6 11.5C6 10.5194 6.21721 9.9274 6.5723 9.5723C6.9274 9.21721 7.51937 9 8.5 9C8.77614 9 9 8.77614 9 8.5C9 8.22386 8.77614 8 8.5 8C7.51937 8 6.9274 7.78279 6.5723 7.4277C6.21721 7.0726 6 6.48063 6 5.5Z" fill="black"/>
<path d="M11 1.5C11 1.22386 10.7761 1 10.5 1C10.2239 1 10 1.22386 10 1.5C10 2.13341 9.85918 2.47538 9.66728 2.66728C9.47538 2.85918 9.13341 3 8.5 3C8.22386 3 8 3.22386 8 3.5C8 3.77614 8.22386 4 8.5 4C9.13341 4 9.47538 4.14082 9.66728 4.33272C9.85918 4.52462 10 4.86659 10 5.5C10 5.77614 10.2239 6 10.5 6C10.7761 6 11 5.77614 11 5.5C11 4.86659 11.1408 4.52462 11.3327 4.33272C11.5246 4.14082 11.8666 4 12.5 4C12.7761 4 13 3.77614 13 3.5C13 3.22386 12.7761 3 12.5 3C11.8666 3 11.5246 2.85918 11.3327 2.66728C11.1408 2.47538 11 2.13341 11 1.5Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-3-stars.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-3-stars.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-3-stars.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M13 7C13.5523 7 14 7.44772 14 8C14 10.3085 14.5108 11.7424 15.3842 12.6158C16.2576 13.4892 17.6915 14 20 14C20.5523 14 21 14.4477 21 15C21 15.5523 20.5523 16 20 16C17.6915 16 16.2576 16.5108 15.3842 17.3842C14.5108 18.2576 14 19.6915 14 22C14 22.5523 13.5523 23 13 23C12.4477 23 12 22.5523 12 22C12 19.6915 11.4892 18.2576 10.6158 17.3842C9.74243 16.5108 8.30848 16 6 16C5.44772 16 5 15.5523 5 15C5 14.4477 5.44772 14 6 14C8.30848 14 9.74243 13.4892 10.6158 12.6158C11.4892 11.7424 12 10.3085 12 8C12 7.44772 12.4477 7 13 7ZM13 12.7334C12.7361 13.212 12.4147 13.6453 12.03 14.03C11.6453 14.4147 11.212 14.7361 10.7334 15C11.212 15.2639 11.6453 15.5853 12.03 15.97C12.4147 16.3547 12.7361 16.788 13 17.2666C13.2639 16.788 13.5853 16.3547 13.97 15.97C14.3547 15.5853 14.788 15.2639 15.2666 15C14.788 14.7361 14.3547 14.4147 13.97 14.03C13.5853 13.6453 13.2639 13.212 13 12.7334Z" fill="black"/>
<path d="M6 5.5C6 5.22386 5.77614 5 5.5 5C5.22386 5 5 5.22386 5 5.5C5 6.48063 4.78279 7.0726 4.4277 7.4277C4.0726 7.78279 3.48063 8 2.5 8C2.22386 8 2 8.22386 2 8.5C2 8.77614 2.22386 9 2.5 9C3.48063 9 4.0726 9.21721 4.4277 9.5723C4.78279 9.9274 5 10.5194 5 11.5C5 11.7761 5.22386 12 5.5 12C5.77614 12 6 11.7761 6 11.5C6 10.5194 6.21721 9.9274 6.5723 9.5723C6.9274 9.21721 7.51937 9 8.5 9C8.77614 9 9 8.77614 9 8.5C9 8.22386 8.77614 8 8.5 8C7.51937 8 6.9274 7.78279 6.5723 7.4277C6.21721 7.0726 6 6.48063 6 5.5Z" fill="black"/>
<path d="M11 1.5C11 1.22386 10.7761 1 10.5 1C10.2239 1 10 1.22386 10 1.5C10 2.13341 9.85918 2.47538 9.66728 2.66728C9.47538 2.85918 9.13341 3 8.5 3C8.22386 3 8 3.22386 8 3.5C8 3.77614 8.22386 4 8.5 4C9.13341 4 9.47538 4.14082 9.66728 4.33272C9.85918 4.52462 10 4.86659 10 5.5C10 5.77614 10.2239 6 10.5 6C10.7761 6 11 5.77614 11 5.5C11 4.86659 11.1408 4.52462 11.3327 4.33272C11.5246 4.14082 11.8666 4 12.5 4C12.7761 4 13 3.77614 13 3.5C13 3.22386 12.7761 3 12.5 3C11.8666 3 11.5246 2.85918 11.3327 2.66728C11.1408 2.47538 11 2.13341 11 1.5Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-avatar.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-avatar.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-avatar.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,4 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M3 5.00013C3 3.89556 3.89543 3.00013 5 3.00013H11C11.5523 3.00013 12 3.44785 12 4.00013C12 4.55241 11.5523 5.00013 11 5.00013H5V19.0001H7.10002C7.56329 16.7179 9.58104 15.0001 12 15.0001C14.419 15.0001 16.4367 16.7179 16.9 19.0001H19V13.0001C19 12.4478 19.4477 12.0001 20 12.0001C20.5523 12.0001 21 12.4478 21 13.0001V19.0001C21 20.1047 20.1046 21.0001 19 21.0001H5C3.89543 21.0001 3 20.1047 3 19.0001V5.00013ZM9.17071 19.0001H14.8293C14.4175 17.8349 13.3062 17.0001 12 17.0001C10.6938 17.0001 9.58254 17.8349 9.17071 19.0001ZM12 9.00013C11.1716 9.00013 10.5 9.6717 10.5 10.5001C10.5 11.3286 11.1716 12.0001 12 12.0001C12.8284 12.0001 13.5 11.3286 13.5 10.5001C13.5 9.6717 12.8284 9.00013 12 9.00013ZM8.5 10.5001C8.5 8.56713 10.067 7.00013 12 7.00013C13.933 7.00013 15.5 8.56713 15.5 10.5001C15.5 12.4331 13.933 14.0001 12 14.0001C10.067 14.0001 8.5 12.4331 8.5 10.5001Z" fill="black"/>
<path d="M18.9472 1.89456C18.763 1.52603 18.237 1.52603 18.0528 1.89456L17.0745 3.85106C17.0262 3.94782 16.9477 4.02628 16.8509 4.07467L14.8944 5.05292C14.5259 5.23718 14.5259 5.76308 14.8944 5.94734L16.8509 6.9256C16.9477 6.97398 17.0262 7.05244 17.0745 7.1492L18.0528 9.1057C18.237 9.47423 18.763 9.47423 18.9472 9.1057L19.9255 7.1492C19.9738 7.05244 20.0523 6.97398 20.1491 6.9256L22.1056 5.94734C22.4741 5.76308 22.4741 5.23718 22.1056 5.05292L20.1491 4.07467C20.0523 4.02628 19.9738 3.94782 19.9255 3.85106L18.9472 1.89456Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-image.fill.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-image.fill.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-image.fill.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,4 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M3 5C3 3.89543 3.89543 3 5 3H19C20.1046 3 21 3.89543 21 5V19C21 20.1046 20.1046 21 19 21H5C3.89543 21 3 20.1046 3 19V5ZM16.4142 19L9.41421 12C8.63317 11.219 7.36684 11.2189 6.58579 12L5 13.5858V5H19V19H16.4142Z" fill="black"/>
<path d="M13.5745 8.35093L14.0528 7.39443C14.237 7.0259 14.763 7.0259 14.9472 7.39443L15.4255 8.35093C15.4738 8.44769 15.5523 8.52615 15.6491 8.57454L16.6056 9.05279C16.9741 9.23705 16.9741 9.76295 16.6056 9.94721L15.6491 10.4255C15.5523 10.4738 15.4738 10.5523 15.4255 10.6491L14.9472 11.6056C14.763 11.9741 14.237 11.9741 14.0528 11.6056L13.5745 10.6491C13.5262 10.5523 13.4477 10.4738 13.3509 10.4255L12.3944 9.94721C12.0259 9.76295 12.0259 9.23705 12.3944 9.05279L13.3509 8.57454C13.4477 8.52615 13.5262 8.44769 13.5745 8.35093Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 928 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-image.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-image.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-image.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,4 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M3 5C3 3.89543 3.89543 3 5 3H19C20.1046 3 21 3.89543 21 5V19C21 20.1046 20.1046 21 19 21H5C3.89543 21 3 20.1046 3 19V5ZM19 5H5V13.5858L6.58579 12C7.36684 11.2189 8.63317 11.219 9.41421 12L16.4142 19H19V5ZM13.5858 19L8 13.4142L5 16.4142V19H13.5858Z" fill="black"/>
<path d="M13.5745 8.35093L14.0528 7.39443C14.237 7.0259 14.763 7.0259 14.9472 7.39443L15.4255 8.35093C15.4738 8.44769 15.5523 8.52615 15.6491 8.57454L16.6056 9.05279C16.9741 9.23705 16.9741 9.76295 16.6056 9.94721L15.6491 10.4255C15.5523 10.4738 15.4738 10.5523 15.4255 10.6491L14.9472 11.6056C14.763 11.9741 14.237 11.9741 14.0528 11.6056L13.5745 10.6491C13.5262 10.5523 13.4477 10.4738 13.3509 10.4255L12.3944 9.94721C12.0259 9.76295 12.0259 9.23705 12.3944 9.05279L13.3509 8.57454C13.4477 8.52615 13.5262 8.44769 13.5745 8.35093Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 965 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-star.fill.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-star.fill.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-star.fill.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13 3C13 2.44772 12.5523 2 12 2C11.4477 2 11 2.44772 11 3C11 6.18838 10.331 8.25562 9.1178 9.53621C7.91616 10.8046 5.98995 11.5 3 11.5C2.44772 11.5 2 11.9477 2 12.5C2 13.0523 2.44772 13.5 3 13.5C5.98995 13.5 7.91616 14.1954 9.1178 15.4638C10.331 16.7444 11 18.8116 11 22C11 22.5523 11.4477 23 12 23C12.5523 23 13 22.5523 13 22C13 18.8116 13.669 16.7444 14.8822 15.4638C16.0838 14.1954 18.01 13.5 21 13.5C21.5523 13.5 22 13.0523 22 12.5C22 11.9477 21.5523 11.5 21 11.5C18.01 11.5 16.0838 10.8046 14.8822 9.53621C13.669 8.25562 13 6.18838 13 3Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 671 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-star.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-star.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-star.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M21 12.5C14.75 12.5 12 15.4028 12 22C12 15.4028 9.25 12.5 3 12.5C9.25 12.5 12 9.59722 12 3C12 9.59722 14.75 12.5 21 12.5Z" stroke="black" stroke-width="2" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 333 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-star2.fill.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-star2.fill.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-star2.fill.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12.9578 2.71265C12.8309 2.28967 12.4416 2 12 2C11.5584 2 11.1691 2.28967 11.0422 2.71265C10.3228 5.11046 9.39036 6.82042 8.10539 8.10539C6.82042 9.39036 5.11046 10.3228 2.71265 11.0422C2.28967 11.1691 2 11.5584 2 12C2 12.4416 2.28967 12.8309 2.71265 12.9578C5.11046 13.6772 6.82042 14.6096 8.10539 15.8946C9.39036 17.1796 10.3228 18.8895 11.0422 21.2873C11.1691 21.7103 11.5584 22 12 22C12.4416 22 12.8309 21.7103 12.9578 21.2873C13.6772 18.8895 14.6096 17.1796 15.8946 15.8946C17.1796 14.6096 18.8895 13.6772 21.2873 12.9578C21.7103 12.8309 22 12.4416 22 12C22 11.5584 21.7103 11.1691 21.2873 11.0422C18.8895 10.3228 17.1796 9.39036 15.8946 8.10539C14.6096 6.82042 13.6772 5.11046 12.9578 2.71265Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 828 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-star2.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-star2.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-star2.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3 12C8 10.5 10.5 8 12 3C13.5 8 16 10.5 21 12C16 13.5 13.5 16 12 21C10.5 16 8 13.5 3 12Z" stroke="black" stroke-width="2" stroke-linecap="square" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 284 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-text.fill.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-text.fill.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-text.fill.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,6 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4 5C3.44772 5 3 5.44772 3 6C3 6.55228 3.44772 7 4 7H20C20.5523 7 21 6.55228 21 6C21 5.44772 20.5523 5 20 5H4Z" fill="black"/>
<path d="M17.9191 9.60608C17.7616 9.2384 17.4 9 17 9C16.6 9 16.2384 9.2384 16.0809 9.60608L14.7384 12.7384L11.6061 14.0809C11.2384 14.2384 11 14.6 11 15C11 15.4 11.2384 15.7616 11.6061 15.9191L14.7384 17.2616L16.0809 20.3939C16.2384 20.7616 16.6 21 17 21C17.4 21 17.7616 20.7616 17.9191 20.3939L19.2616 17.2616L22.3939 15.9191C22.7616 15.7616 23 15.4 23 15C23 14.6 22.7616 14.2384 22.3939 14.0809L19.2616 12.7384L17.9191 9.60608Z" fill="black"/>
<path d="M4 11C3.44772 11 3 11.4477 3 12C3 12.5523 3.44772 13 4 13H9C9.55228 13 10 12.5523 10 12C10 11.4477 9.55228 11 9 11H4Z" fill="black"/>
<path d="M4 17C3.44772 17 3 17.4477 3 18C3 18.5523 3.44772 19 4 19H7C7.55228 19 8 18.5523 8 18C8 17.4477 7.55228 17 7 17H4Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 968 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "ai-text.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "ai-text.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "ai-text.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4 18H7M4 12H9M4 6H20M17 10L18.5 13.5L22 15L18.5 16.5L17 20L15.5 16.5L12 15L15.5 13.5L17 10Z" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 287 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "airplay.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "airplay.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "airplay.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.5 18C6.05228 18 6.5 17.5523 6.5 17C6.5 16.4477 6.05228 16 5.5 16V18ZM18.5 16C17.9477 16 17.5 16.4477 17.5 17C17.5 17.5523 17.9477 18 18.5 18V16ZM20.891 16.454L20 16L20 16L20.891 16.454ZM20.454 16.891L20.908 17.782L20.908 17.782L20.454 16.891ZM20.454 4.10899L20.908 3.21799L20.908 3.21799L20.454 4.10899ZM20.891 4.54601L20 5L20 5L20.891 4.54601ZM3.10899 4.54601L2.21799 4.09202L2.21799 4.09202L3.10899 4.54601ZM3.54601 4.10899L3.09202 3.21799L3.09202 3.21799L3.54601 4.10899ZM3.54601 16.891L4 16L4 16L3.54601 16.891ZM3.10899 16.454L2.21799 16.908L2.21799 16.908L3.10899 16.454ZM12 15L12.7809 14.3753C12.5911 14.1381 12.3038 14 12 14C11.6962 14 11.4089 14.1381 11.2191 14.3753L12 15ZM8 20L7.21913 19.3753C6.979 19.6755 6.93218 20.0867 7.0987 20.4332C7.26522 20.7797 7.61559 21 8 21V20ZM16 20V21C16.3844 21 16.7348 20.7797 16.9013 20.4332C17.0678 20.0867 17.021 19.6755 16.7809 19.3753L16 20ZM4.6 18H5.5V16H4.6V18ZM4 15.4V5.6H2V15.4H4ZM4.6 5H19.4V3H4.6V5ZM20 5.6V15.4H22V5.6H20ZM19.4 16H18.5V18H19.4V16ZM20 15.4C20 15.6965 19.9992 15.8588 19.9897 15.9754C19.9811 16.0803 19.9707 16.0575 20 16L21.782 16.908C21.9203 16.6366 21.9644 16.3668 21.9831 16.1382C22.0008 15.9213 22 15.6635 22 15.4H20ZM19.4 18C19.6635 18 19.9213 18.0008 20.1382 17.9831C20.3668 17.9644 20.6366 17.9203 20.908 17.782L20 16C20.0575 15.9707 20.0803 15.9811 19.9754 15.9897C19.8588 15.9992 19.6965 16 19.4 16V18ZM20 16L20 16L20.908 17.782C21.2843 17.5903 21.5903 17.2843 21.782 16.908L20 16ZM19.4 5C19.6965 5 19.8588 5.00078 19.9754 5.0103C20.0803 5.01887 20.0575 5.0293 20 5L20.908 3.21799C20.6366 3.07969 20.3668 3.03562 20.1382 3.01695C19.9213 2.99922 19.6635 3 19.4 3V5ZM22 5.6C22 5.33647 22.0008 5.07869 21.9831 4.86177C21.9644 4.63318 21.9203 4.36344 21.782 4.09202L20 5C19.9707 4.94249 19.9811 4.91972 19.9897 5.02463C19.9992 5.14122 20 5.30347 20 5.6H22ZM20 5L20 5L21.782 4.09202C21.5903 3.71569 21.2843 3.40973 20.908 3.21799L20 5ZM4 5.6C4 5.30347 4.00078 5.14122 4.0103 5.02463C4.01887 4.91972 4.0293 4.94249 4 5L2.21799 4.09202C2.07969 4.36344 2.03562 4.63318 2.01695 4.86177C1.99922 5.07869 2 5.33648 2 5.6H4ZM4.6 3C4.33647 3 4.07869 2.99922 3.86177 3.01695C3.63318 3.03562 3.36344 3.07969 3.09202 3.21799L4 5C3.94249 5.0293 3.91972 5.01887 4.02463 5.0103C4.14122 5.00078 4.30347 5 4.6 5V3ZM4 5L4 5L3.09202 3.21799C2.71569 3.40973 2.40973 3.71569 2.21799 4.09202L4 5ZM4.6 16C4.30347 16 4.14122 15.9992 4.02463 15.9897C3.91972 15.9811 3.94249 15.9707 4 16L3.09202 17.782C3.36344 17.9203 3.63318 17.9644 3.86177 17.9831C4.07869 18.0008 4.33647 18 4.6 18V16ZM2 15.4C2 15.6635 1.99922 15.9213 2.01695 16.1382C2.03562 16.3668 2.07969 16.6366 2.21799 16.908L4 16C4.0293 16.0575 4.01887 16.0803 4.0103 15.9754C4.00078 15.8588 4 15.6965 4 15.4H2ZM4 16L4 16L2.21799 16.908C2.40973 17.2843 2.71569 17.5903 3.09202 17.782L4 16ZM11.2191 14.3753L7.21913 19.3753L8.78087 20.6247L12.7809 15.6247L11.2191 14.3753ZM8 21H16V19H8V21ZM16.7809 19.3753L12.7809 14.3753L11.2191 15.6247L15.2191 20.6247L16.7809 19.3753Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "albums.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "albums.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "albums.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4 6.00019V18.0002M8 5.00019V19.0002M12 4.99258V19.0078C12 19.6462 12.5901 20.1211 13.2137 19.9847L19.2137 18.6722C19.6728 18.5718 20 18.1652 20 17.6953V6.30508C20 5.83514 19.6728 5.42861 19.2137 5.32818L13.2137 4.01568C12.5901 3.87926 12 4.35419 12 4.99258Z" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 453 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "anchor.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "anchor.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "anchor.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 8C13.3807 8 14.5 6.88071 14.5 5.5C14.5 4.11929 13.3807 3 12 3C10.6193 3 9.5 4.11929 9.5 5.5C9.5 6.88071 10.6193 8 12 8ZM12 8V21M18 12H21V12.5C21 17.1944 17.1944 21 12.5 21H12M6 12H3V12.5C3 17.1944 6.80558 21 11.5 21H12" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 417 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "archive-folder.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "archive-folder.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "archive-folder.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.54601 19.891L5 19L5 19L4.54601 19.891ZM4.10899 19.454L3.21799 19.908L3.21799 19.908L4.10899 19.454ZM19.891 19.454L19 19L19 19L19.891 19.454ZM19.454 19.891L19 19L19 19L19.454 19.891ZM19.891 9.54601L19 10L19 10L19.891 9.54601ZM19.454 9.10899L19.908 8.21799L19.908 8.21799L19.454 9.10899ZM4.10899 9.54601L3.21799 9.09202L3.21799 9.09202L4.10899 9.54601ZM4.54601 9.10899L4.09202 8.21799L4.09202 8.21799L4.54601 9.10899ZM5 8C5 8.55228 5.44772 9 6 9C6.55228 9 7 8.55228 7 8H5ZM10.7929 3.29289L11.5 2.58579L11.5 2.58579L10.7929 3.29289ZM12.2071 4.70711L12.9142 4L12.9142 4L12.2071 4.70711ZM17 8C17 8.55228 17.4477 9 18 9C18.5523 9 19 8.55228 19 8H17ZM8 12C7.44772 12 7 12.4477 7 13C7 13.5523 7.44772 14 8 14V12ZM12 14C12.5523 14 13 13.5523 13 13C13 12.4477 12.5523 12 12 12V14ZM19 10.6V18.4H21V10.6H19ZM18.4 19H5.6V21H18.4V19ZM5 18.4V10.6H3V18.4H5ZM5.6 10H18.4V8H5.6V10ZM5.6 19C5.30347 19 5.14122 18.9992 5.02463 18.9897C4.91972 18.9811 4.94249 18.9707 5 19L4.09202 20.782C4.36344 20.9203 4.63318 20.9644 4.86177 20.9831C5.07869 21.0008 5.33647 21 5.6 21V19ZM3 18.4C3 18.6635 2.99922 18.9213 3.01695 19.1382C3.03562 19.3668 3.07969 19.6366 3.21799 19.908L5 19C5.0293 19.0575 5.01887 19.0803 5.0103 18.9754C5.00078 18.8588 5 18.6965 5 18.4H3ZM5 19L5 19L3.21799 19.908C3.40973 20.2843 3.71569 20.5903 4.09202 20.782L5 19ZM19 18.4C19 18.6965 18.9992 18.8588 18.9897 18.9754C18.9811 19.0803 18.9707 19.0575 19 19L20.782 19.908C20.9203 19.6366 20.9644 19.3668 20.9831 19.1382C21.0008 18.9213 21 18.6635 21 18.4H19ZM18.4 21C18.6635 21 18.9213 21.0008 19.1382 20.9831C19.3668 20.9644 19.6366 20.9203 19.908 20.782L19 19C19.0575 18.9707 19.0803 18.9811 18.9754 18.9897C18.8588 18.9992 18.6965 19 18.4 19V21ZM19 19L19 19L19.908 20.782C20.2843 20.5903 20.5903 20.2843 20.782 19.908L19 19ZM21 10.6C21 10.3365 21.0008 10.0787 20.9831 9.86177C20.9644 9.63318 20.9203 9.36344 20.782 9.09202L19 10C18.9707 9.94249 18.9811 9.91972 18.9897 10.0246C18.9992 10.1412 19 10.3035 19 10.6H21ZM18.4 10C18.6965 10 18.8588 10.0008 18.9754 10.0103C19.0803 10.0189 19.0575 10.0293 19 10L19.908 8.21799C19.6366 8.07969 19.3668 8.03562 19.1382 8.01695C18.9213 7.99922 18.6635 8 18.4 8V10ZM20.782 9.09202C20.5903 8.71569 20.2843 8.40973 19.908 8.21799L19 10L19 10L20.782 9.09202ZM5 10.6C5 10.3035 5.00078 10.1412 5.0103 10.0246C5.01887 9.91972 5.0293 9.94249 5 10L3.21799 9.09202C3.07969 9.36344 3.03562 9.63318 3.01695 9.86177C2.99922 10.0787 3 10.3365 3 10.6H5ZM5.6 8C5.33647 8 5.07869 7.99922 4.86177 8.01695C4.63318 8.03562 4.36344 8.07969 4.09202 8.21799L5 10C4.94249 10.0293 4.91972 10.0189 5.02463 10.0103C5.14122 10.0008 5.30347 10 5.6 10V8ZM5 10L5 10L4.09202 8.21799C3.71569 8.40973 3.40973 8.71569 3.21799 9.09202L5 10ZM7 8V4H5V8H7ZM7 4H10.0858V2H7V4ZM10.0858 4L11.5 5.41421L12.9142 4L11.5 2.58579L10.0858 4ZM12.9142 6H17V4H12.9142V6ZM17 6V8H19V6H17ZM17 6H19C19 4.89543 18.1046 4 17 4V6ZM11.5 5.41421C11.8751 5.78929 12.3838 6 12.9142 6V4L12.9142 4L11.5 5.41421ZM10.0858 4L10.0858 4L11.5 2.58579C11.1249 2.21071 10.6162 2 10.0858 2V4ZM7 4V4V2C5.89543 2 5 2.89543 5 4H7ZM8 14H12V12H8V14Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "archive.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "archive.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "archive.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M20 8H21C21 7.44772 20.5523 7 20 7V8ZM4 8V7C3.44772 7 3 7.44772 3 8H4ZM4.54601 19.891L5 19L5 19L4.54601 19.891ZM4.10899 19.454L3.21799 19.908L3.21799 19.908L4.10899 19.454ZM19.891 19.454L19 19L19 19L19.891 19.454ZM19.454 19.891L19 19L19 19L19.454 19.891ZM3 4V3C2.44772 3 2 3.44772 2 4H3ZM21 4H22C22 3.44772 21.5523 3 21 3V4ZM21 8V9C21.5523 9 22 8.55228 22 8H21ZM3 8H2C2 8.55228 2.44772 9 3 9V8ZM10 11C9.44772 11 9 11.4477 9 12C9 12.5523 9.44772 13 10 13V11ZM14 13C14.5523 13 15 12.5523 15 12C15 11.4477 14.5523 11 14 11V13ZM19 8V18.4H21V8H19ZM18.4 19H5.6V21H18.4V19ZM5 18.4V8H3V18.4H5ZM4 9H20V7H4V9ZM5.6 19C5.30347 19 5.14122 18.9992 5.02463 18.9897C4.91972 18.9811 4.94249 18.9707 5 19L4.09202 20.782C4.36344 20.9203 4.63318 20.9644 4.86177 20.9831C5.07869 21.0008 5.33647 21 5.6 21V19ZM3 18.4C3 18.6635 2.99922 18.9213 3.01695 19.1382C3.03562 19.3668 3.07969 19.6366 3.21799 19.908L5 19C5.0293 19.0575 5.01887 19.0803 5.0103 18.9754C5.00078 18.8588 5 18.6965 5 18.4H3ZM5 19L5 19L3.21799 19.908C3.40973 20.2843 3.71569 20.5903 4.09202 20.782L5 19ZM19 18.4C19 18.6965 18.9992 18.8588 18.9897 18.9754C18.9811 19.0803 18.9707 19.0575 19 19L20.782 19.908C20.9203 19.6366 20.9644 19.3668 20.9831 19.1382C21.0008 18.9213 21 18.6635 21 18.4H19ZM18.4 21C18.6635 21 18.9213 21.0008 19.1382 20.9831C19.3668 20.9644 19.6366 20.9203 19.908 20.782L19 19C19.0575 18.9707 19.0803 18.9811 18.9754 18.9897C18.8588 18.9992 18.6965 19 18.4 19V21ZM19 19L19 19L19.908 20.782C20.2843 20.5903 20.5903 20.2843 20.782 19.908L19 19ZM3 5H21V3H3V5ZM20 4V8H22V4H20ZM21 7H3V9H21V7ZM4 8V4H2V8H4ZM10 13H14V11H10V13Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "arrow-bottom-down.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "arrow-bottom-down.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "arrow-bottom-down.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.5 6.5L17.25 17.25M9 18H17C17.5523 18 18 17.5523 18 17V9" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 253 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "arrow-bottom-left.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "arrow-bottom-left.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "arrow-bottom-left.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M17.5 6.5L6.75 17.25M6 9L6 17C6 17.5523 6.44771 18 7 18L15 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 256 B

View File

@@ -0,0 +1,26 @@
{
"images": [
{
"filename": "arrow-down-circle.svg",
"idiom": "universal",
"scale": "1x"
},
{
"idiom": "universal",
"scale": "2x",
"filename": "arrow-down-circle.svg"
},
{
"idiom": "universal",
"scale": "3x",
"filename": "arrow-down-circle.svg"
}
],
"info": {
"author": "xcode",
"version": 1
},
"properties": {
"template-rendering-intent": "template"
}
}

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