Commit Graph

45 Commits

Author SHA1 Message Date
neon443
be22370ec0 finally wrote a funcitonal good test!!!!
added undownloadedemojisbefore unused atm
using a withThrowingDiscardingTaskGroup with a task limit
    task limit: max tasks is cores-1
    every tiem a task is added taskcount+=1
    every tiem it finishes taskcount -= 1
    if active tasks> maxtasks wait until i > what it was before
        reduce activetasks by one

deleting images in pass 2
guard that it was downloaded before
basic async cos i cba atp
doThing wiht inout i to increment
    itll download the image and make sure its not already downloaded etc
2025-10-30 23:15:28 +00:00
neon443
ff123811a0 ultra parallelised download all in sticker vailidation performance Test
the issue is that the counter doesnt work, and that it does crash if the network request times out 😭
2025-10-30 22:30:54 +00:00
neon443
dd02d5ca80 added validat() to MSSticker via an extension
added a button to validate them
wrote sticker validation test
wrote sticker validation performance test
2025-10-30 21:55:22 +00:00
neon443
3bd0892d42 fix "alpha channel" 2025-10-30 20:26:30 +00:00
neon443
0e17a85b81 added imessage app icons 2025-10-30 20:11:14 +00:00
neon443
72382e1472 remove fatalerror 2025-10-30 19:55:31 +00:00
neon443
c974e8136b async let to parallelise stuff
fix crash when the fetched db doesnt exist
added loadremoteDB to asyncly fetch remotedb
fixed Tasks not running on background threads
remove expiration from slackresponse
emoji.uiid starts out as emoji.id
added filtering emojis test
hopefully optimised the display of images checking if its local
imessage extension ios 15+
remove the "hii!!" and "hello world" from the emojji picker
2025-10-30 19:44:59 +00:00
neon443
b738a06835 95% faster local image url getting
added localImageURL() test
2025-10-30 15:33:31 +00:00
neon443
780e66ce0d added resources folder 2025-10-30 15:32:25 +00:00
neon443
90a4b11c38 we have an icon 2025-10-30 14:30:21 +00:00
neon443
16b4086286 fix lag when expanding the picker 2025-10-29 22:52:42 +00:00
neon443
4ab2ee8b98 better performance in stickerbroswer
Emoji.sticker can return nil
added tests to measure .sticker perfomance
delete redundant stickerbrowserviewcontroller
2025-10-29 22:48:26 +00:00
neon443
495abb99b4 the emojipicker works!
added stickerbrowserdatasorce to give msstickerbrowserview stikcers
update messagesviewcontroller to add the msstickerbrowser
added Emoji.sticker to get MSSticker from Emoji
2025-10-29 22:19:57 +00:00
neon443
98df6d776b added filter categories 2025-10-29 20:16:21 +00:00
neon443
6d9638bf85 leading alignment, tiny shadow 2025-10-29 19:33:14 +00:00
neon443
a102edbd4e added a callback to refreshDB cos async returns instantly
- fixes the search not applying after a refresh sometimes
added animations to searching and stuff
remove setPrefix
2025-10-29 18:56:57 +00:00
neon443
e45d8417d1 refreshable contentview
auto retry if image load fails
added a refresh function
refresh on delete
2025-10-29 18:36:34 +00:00
neon443
3de0479fd0 fix:
the file extension not working thing
if "" is searched, returning empty
2025-10-29 16:36:27 +00:00
neon443
002fc21308 async loading of the remote emoji database
- load the local one first
 - async task to load the remote db and if it succeeds overwrite the local db and load the remote one

emoiji.localimageurl is now a computed propery
 - need to fix the fact that the file extension is not known 😭

fetchRemoteDB automatically stores the db lcoally after fetching
add storeDB(data: Data) to store the db from a data form
Emoji.uiID is generated automatically
fix hoarder.localEmojiDB path

imessage extension scheme??
2025-10-29 16:29:35 +00:00
neon443
20e4e8a2c7 remove testData.json 2025-10-29 15:24:05 +00:00
neon443
9b6d91bf8f fixed massive performance issue!!!!
emoji.image is a computed property
made it not crash if it couldnt access cachet 😭
added search and a counter
removed emojipreview.image
2025-10-28 20:30:32 +00:00
neon443
31321865e9 added search
added emojipack, currently unused
using the cahcet id in emoji
2025-10-28 16:31:31 +00:00
neon443
51691c32f3 trying to add a only show x thing 2025-10-28 13:07:55 +00:00
neon443
f37b254e80 shared decoder and encoder 2025-10-28 11:42:08 +00:00
neon443
f4ab22a789 refactored to storeDB loadLocalDB and fetchRemoteDB for more readability
added more stuff to slackresponse cos cachets got some cool stuff
guards on toEmojis and it can take in and return nil
2025-10-27 20:30:26 +00:00
neon443
2ddcd49ad0 yay okay ui is state-ing
added swipe actions to delete local image
slow, but i think i can fix it??
switch to gh neon443/Haptics
2025-10-24 00:01:14 +02:00
neon443
bc0b46a6df added Emoji.isLocal to check if the emoji is stored 2025-10-23 21:12:40 +02:00
neon443
4ed5695f4a updated downloadImage()
- to use cached local version if available
 - now writes to disk if not already saved

rewrote toEmojis() just a simple map of ApiEmoji($0).toEmoji()
use the new toEmojis in emojiHoarder

now the emojiDB gets stored locally, need to make it fetch it if it can cos cache cant be valid forever yk

using neon443/Haptics for haptics lol
added a download button
on EmojiPreview, if downloaded a lil download icon shows up, and will show that one instead of AsyncImage
2025-10-23 09:46:53 +01:00
neon443
2841bc2109 add Emoji and old one is now ApiEmoji
added async code to Emoji to load image
added app groups to share files
2025-10-22 15:20:18 +01:00
neon443
95d377de30 minor changes 2025-10-21 22:33:49 +01:00
neon443
a10b7c37dd added sticker count to the corner
ps: finally got proof that ts project will work!!!!!
"The sticker browser presents the stickers provided by its dataSource property. The data source can dynamically change the list of stickers at runtime."
https://developer.apple.com/documentation/messages/msstickerbrowserview#:~:text=The%20data%20source%20can%20dynamically%20change%20the%20list%20of%20stickers%20at%20runtime.
2025-10-20 13:19:07 +01:00
neon443
a3b28a4414 added emojipreview to handle displaying images etc
next: animate when it spawns
revamped image display
remove the image param in Emoji
2025-10-19 17:49:47 +01:00
neon443
5b61f6ecf4 switched back to asynimage :cry 2025-10-19 14:13:51 +01:00
neon443
62ac3ea117 added imessage app, async is hardv2 2025-10-18 17:09:34 +01:00
neon443
409b09eb3e async is hard chat 2025-10-18 16:22:04 +01:00
neon443
7c798a8e55 switched to cachet.dunkirk.sh
had to prefix 10 or itd softlock 😭😭
2025-10-17 21:41:34 +01:00
neon443
fb254ecb9e uhh 2025-10-17 21:21:34 +01:00
neon443
f1fd056c60 tried to redo the image grabbing again to make it do it on init
add init from decoder, to ignore the uiimage property
add func enocde to ignore the uiimage property
2025-10-17 20:27:09 +01:00
neon443
f4e85f7c50 redid image loading, cos AsyncImage is hella buggy
moved emoji to a new file
2025-10-17 20:04:57 +01:00
neon443
244c4e0ba6 cleaned up code 😭 2025-10-16 21:31:58 +01:00
neon443
a9a047ca6e images for testdata, adding alias handling 2025-10-16 20:33:39 +01:00
neon443
c5afd89222 implement testdata!
got a list of emojis and urls
reanmed slackemojiresponse to emoji
2025-10-16 19:22:37 +01:00
neon443
8e36082490 added testdata 2025-10-16 17:59:41 +01:00
neon443
67468c778a added slackresponse, emojihoarder (empty rn), basic project structure 2025-10-15 23:17:56 +01:00
neon443
cf196bc5ec Initial Commit 2025-10-15 22:39:26 +01:00