* core: member acceptance
* migration
* move hook
* core: support sending direct messages to members (#5680)
* fix compilation, todos
* fix test
* predicates
* comment
* extend hook
* wip
* wip
* wip
* wip
* fix test
* mute output
* schema
* better query
* plans
* fix test
* directory
* captcha
* captcha works
* remove column, add UI types and group status icon
* fix test
* query plans
* exclude messages of pending members from history
* commands for filter settings
* core: separately delete pending approval members; other apis validation (#5699)
* accepted status
* send captcha messages as replies
* fix blocked words
* simpler filter info
* info about /filter and /role after group registration
* update query plans
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* cli: remove multiple members
* accept all members joining via link as observers (do NOT release)
* blocked words
* blocked words
* XGrpLinkReject
* core: 6.3.0.6 (simplexmq 6.3.0.6)
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* core: member mentions, types and rfc
* update
* update rfc
* save/get mentions (WIP)
* markdown
* store received mentions and userMention flag
* sent mentions
* update message with mentions
* db queries
* CLI mentions, test passes
* use maps for mentions
* tests
* comment
* save mentions on sent messages
* postresql schema
* refactor
* M.empty
* include both displayName and localAlias into MentionedMemberInfo
* fix saving sent mentions
* include mentions in previews
* update plans
* core: support chat item TTL per chat
* ios: UI mockup
* core: chat time to live and group local alias support (#5533)
* functions and type placeholders
* simplify
* queries to make tests pass
* set chat queries
* fetch queries
* get local aliases for groups
* local alias support for groups
* simplify
* fix tests
* fix
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
* migration
* add test for expiration
* expireChatItems
* refactor queries, read objects inside the loop
* add groupId to query
* fix updateGroupAlias
* ios group alias
* ttl
* changes
* fixes and test
* new types for ttl
* chat and groups ttl in ios
* accurate alert
* label
* progress indicator, disable interactions while api running
* just call expire chat items
* android, desktop: add local alias to groups (#5544)
* android, desktop: add local alias to groups
* different placeholder for chats vs contacts
* improvements and fixes
* only expire chat items, not all items, when chat ttl changes
* refactor, fix conditions
* refactor
* refactor ChatTTLOption
* text
* fix
* make ttl state
* fix crash/remove warnings
* fix for current?
---------
Co-authored-by: Diogo <diogofncunha@gmail.com>
* core: api and protocol support for reporting messages to group moderators
* moderator role
* delete mode
* remove auto-accepting conditions for SimpleX Chat Ltd
* mark as deleted locally
* ui: delete mode type
* store msg_content_tag with chat items, support moderator option on receiving side
* report API
* send reports only to moderators that support them, fail if none support
* fix tests
* test
* remove comment
* revert version
* do not build ghc8107 in stable branch
* skip job
* fix condition
* remove condition
* condition
* exit
* update
* types and db
* migration module
* chat tag
* store method proposal
* profiles build
* update type
* update return type
* building
* working api
* update
* refactor
* attach tags to contact
* simplify
* attach chat tags to group info
* get chat tags with supplied user id
* get tags fix
* ios: chat tags poc (#5370)
* ios: chat tags poc
* updates to sheet
* temporary display for other option on swipe
* sheet height
* only show preset when it has matches
* changes
* worst emoji picker ever
* simplify tag casts and collapse
* open on create tag if no tags
* simple emoji text field
* nice emoji picker
* dismiss sheets on tag/untag
* semibold selection
* all preset tag and change collapsed icon on selection
* default selected tag (all)
* only apply tag filters on empty search
* + button when no custom lists
* reset selection of tag filter on profile changes
* edit tag (broken menu inside swiftui list)
* create list to end of list
* swipe changes
* remove context menu
* delete and edit on swipe actions
* tap unread filter deselects other filters
* remove delete tag if empty
* show tag creation sheet when + button pressed
* in memory tag edit
* color, size
* frame
* layout
* refactor
* remove code
* add unread to same unit
* fraction on long press
* nav fixes
* in memory list
* emoji picker improvements
* remove diff
* secondary plus
* stop flickering on chat tags load
* reuse string
* fix reset glitches
* delete destructive
* simplify?
* changes
* api updates
* fix styles on list via swipe
* fixed untag
* update schema
* move user tags loading to get users chat data
* move presets to model
* update preset tags when chats are updated
* style fixes and locate getPresetTags near tags model
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
* deleted contacts and card should not match contact preset
* fix update presets on chat remove
* update migration indices
* fix migration
* not used chat model
* disable button on repeated list name or emoji
* no chats message for search fix
* fix edits and trim
* error in footer, not in alert
* styling fixes due to wrong place to attach sheet
* update library
* remove log
* idea for dynamic sheet height
* max fraction 62%
* minor fixes
* disable save button when no changes and while saving
* disable preset filter if it is no longer shown
* remove comments from schema
* fix emoji
* remove apiChatTagsResponse
* always read chat tags
* fix
---------
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* core: preset servers and operators (WIP)
* usageConditionsToAdd
* simplify
* WIP
* database entity IDs
* preset operators and servers (compiles)
* update (most tests pass)
* remove imports
* fix
* update
* make preset servers lists potentially empty in some operators, as long as the combined list is not empty
* CLI API in progress, validateUserServers
* make servers of disabled operators "unknown", consider only enabled servers when switching profile links
* exclude disabled operators when receiving files
* fix TH in ghc 8.10.7
* add type for ghc 8.10.7
* pattern match for ghc 8.10.7
* ghc 8.10.7 fix attempt
* remove additional pattern, update servers
* do not strip title from conditions
* remove space
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* core: auto increment chat item ids (#5088)
* core: auto increment chat item ids
* file name
* down name
* update schema
* ignore down migration on schema dump test
* fix testDirectMessageDelete test
* fix testNotes test
* core: initial api support for items around a given item (#5092)
* core: initial api support for items around a given item
* implementation and tests for local messages
* pass entities down
* unused
* getAllChatItems implementation and tests
* pagination for getting chat and tests
* remove unused import
* group implementation and tests
* refactor
* order by created at for local and direct chats
* core: initial landing api for chat and gaps (#5104)
* initial work on initial param for loading chat
* support for initial
* controller parse
* fixed sqls
* refactor names
* fix ChatLandingSection serialized type
* total accuracy on landing section
* descriptive view message
* foldr
* refactor to make landingSection reusable
* refactor: use foldr everywhere
* propagate search
* Revert "propagate search"
This reverts commit 01611fd719.
* throw when search is sent for initial
* gap size wip (needs testing)
* final
* remove order by
* remove index
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
* core: fix initial api latest chat items ordering (#5151)
* core: fix one item missing from latest in initial and wrong check (#5153)
* core: fix one item missing from latest in initial and wrong check
* final fixes and tests
* clearer tests
* core: remove gaps and make sure page size is always the same (#5163)
* remove gaps
* consistent pagination size
* proper fix and around fix too
* optimize
* refactor
* core: simplify pagination
* core: first unread queries (#5174)
* core: pagination nav info (#5175)
* core: pagination nav info
* wip
* rework
* rework
* group, local
* fix
* rename
* fix tests
* just
---------
Co-authored-by: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com>
Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>