Commit Graph

362 Commits

Author SHA1 Message Date
Nathan.fooo 0b3949152b
feat: support chat with markdown (#718)
* chore: store metatdata

* chore: support markdown

* chore: update test
2024-08-08 13:19:19 +08:00
Nathan.fooo a371912c61
chore: enable chat with provided context (#713)
* chore: enable chat with provided context

* chore: rename

* chore: update create chat message api endpoint

* chore: use list context

* chore: use list context

* chore: fix test

* chore: update api endpoint

* chore: rename client api function

* chore: rename client api function

* chore: expose entity

* chore: update sqlx files

* chore: update test
2024-08-05 14:06:44 +08:00
Khor Shu Heng 3b389d7911
fix: impose character limits on comment (#712) 2024-08-01 12:00:59 +08:00
Khor Shu Heng ff7de66dfa feat: add can be deleted field to GlobalComment 2024-07-29 19:32:16 +08:00
khorshuheng 422683d717 fix: order reactions by reaction type first creation date 2024-07-29 16:02:03 +08:00
Khor Shu Heng b861f0a703 feat: endpoints for reactions on published view 2024-07-26 22:56:47 +08:00
Khor Shu Heng 122520e9f4 fix: order comments by recency 2024-07-26 16:28:35 +08:00
Zack Fu Zi Xiang fc62a079c0
chore: merge with main 2024-07-25 21:05:29 +08:00
Khor Shu Heng f535950643 feat: add database operations for publish comment crd 2024-07-25 13:32:43 +08:00
Khor Shu Heng 6eea93d774 feat: add create, retrieve, delete API for publish view global comment 2024-07-25 13:32:43 +08:00
Zack Fu Zi Xiang 11c1521b71
feat: improve workspace api 2024-07-25 04:19:40 +08:00
Bartosz Sypytkowski f5ca71e701 chore: remove pg advisory lock 2024-07-15 19:09:26 +02:00
Bartosz Sypytkowski 44406ccdae
chore: update yrs and appflowy-collab (#677)
* chore: update yrs and appflowy-collab

* chore: remove wasm compilation target

* chore: fixed number conversion in tests

* chore: remove wasm integration tests

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-07-10 10:10:07 +08:00
Zack Fu Zi Xiang 00238d11c4
chore: update len limit for workspace namespace 2024-07-02 09:50:42 +08:00
Zack Fu Zi Xiang 048e2645ba
chore: longer publish name limit 2024-07-01 16:57:48 +08:00
Zack Fu Zi Xiang 395486adc3
fix: fix various publish issues 2024-06-29 11:23:23 +08:00
Bartosz Sypytkowski a706c312b3 chore: making embeddings code compile 2024-06-28 05:40:41 +02:00
Nathan.fooo a6539dd963
chore: shorten default write interval (#661) 2024-06-28 10:06:09 +08:00
Bartosz Sypytkowski ef27a148b9 chore: rename workspace settings disable indexing to disable search indexing in database queries 2024-06-24 10:54:42 +02:00
Zack Fu Zi Xiang c4514a9b70
fix: error message 2024-06-24 15:31:56 +08:00
Zack Fu Zi Xiang 8d27f41607
chore: allow longer publish name 2024-06-24 15:29:50 +08:00
Nathan.fooo e33ef45d05
feat: Integrate workspace setting (#642)
* chore: update workspace setting

* chore: update workspace setting with changes

* chore: fix test
2024-06-23 15:36:32 +08:00
Nathan.fooo c0937bfbeb
feat: support switch model (#641)
* feat: support switch model
2024-06-22 15:01:33 +08:00
Zack Fu Zi Xiang 0bf6d3bd60
feat: change doc name to publish name 2024-06-21 11:18:44 +08:00
Zack Fu Zi Xiang b525e333f0
feat: batch unpublish 2024-06-20 12:05:12 +08:00
Zack Fu Zi Xiang 31f5c786a6
chore: merge with main 2024-06-20 11:20:16 +08:00
Zack Fu Zi Xiang d4dd350da1
feat: batch publish item with metadata 2024-06-20 11:15:08 +08:00
Nathan.fooo 30f87457f3
feat: support uploading file with multiple part (#625)
* refactor: replace crate

* chore: remove s3-rust crate

* chore: test multiple upload

* chore: client api

* chore: client api

* chore: v1 version upload,download

* chore: fix test

* chore: fix test

* chore: remove workspace test

* chore: fix wasm build

* chore: update path

* chore: update path

* chore: rename

* chore: expose file entity

* chore: introduce client-api-entity

* chore: fix build

* chore: new url

* chore: fix test

* chore: merge main

* chore: fix clippy
2024-06-19 13:06:58 +08:00
Zack Fu Zi Xiang 6c09839728
feat: batch metadata 2024-06-19 01:30:51 +08:00
Zack Fu Zi Xiang 09828c5eea
feat: add impl for get collab info 2024-06-18 19:07:48 +08:00
Zack Fu Zi Xiang 18e9d0abae
feat: use view id 2024-06-18 18:20:05 +08:00
Bartosz Sypytkowski d9354202cd chore: specify chunk size for search and index 2024-06-18 11:45:33 +02:00
Bartosz Sypytkowski 0e50650aa8 chore: use appflowy ai client for embeddings in search api 2024-06-18 10:51:11 +02:00
Zack Fu Zi Xiang 236a22ac97
fix: get workspace namespace 2024-06-18 12:32:01 +08:00
Zack Fu Zi Xiang 99fc95f33a
chore: refine api 2024-06-17 22:55:04 +08:00
Zack Fu Zi Xiang d2cb0d4486
chore: remove unneeded api 2024-06-17 21:33:36 +08:00
Zack Fu Zi Xiang 05b284f7e7
feat: client code for namespace changes 2024-06-16 14:06:04 +08:00
Zack Fu Zi Xiang 233b757698
feat: add published endpoints 2024-06-15 21:47:11 +08:00
Zack Fu Zi Xiang 2ab59e79a3
feat: get published collab meta data 2024-06-15 21:20:59 +08:00
Zack Fu Zi Xiang de413844dc
feat: put and get published collab data 2024-06-15 14:59:18 +08:00
Zack Fu Zi Xiang 94bd62869c
feat: delete publish collab 2024-06-15 11:51:05 +08:00
Zack Fu Zi Xiang 18da7b873b
feat: publish namespace and metadata 2024-06-14 21:35:39 +08:00
Bartosz Sypytkowski d02c7e4ea7 feat: add workspace label to search open ai token metrics 2024-06-12 08:27:37 +02:00
Bartosz Sypytkowski 0b93190cbd chore: let prometheus track open ai tokens used on search 2024-06-12 08:20:57 +02:00
Nathan.fooo d0467e7e2e
feat: Stream chat message (#610)
* chore: test stream

* chore: fix test

* chore: fix test

* chore: add log

* chore: fix parsing

* chore: fix parsing

* chore: fix parsing

* chore: create answer

* chore: create answer
2024-06-08 22:51:19 +08:00
Bartosz Sypytkowski b52369de7f
feat: add workspace settings with disable indexing option (#606)
* feat: add workspace settings with disable indexing option

* chore: added api workspace settings endpoint

* chore: add workspace settings read and write to client api

* chore: add tests for workspace settings client api

* fix: enforce authorization rules on workspace settings api

* chore: fix appflowy indexer test configuration

* chore: add dotenvy to appflowy indexer tests

* chore: override appflowy indexer env vars for tests

* chore: add appflowy indexer preindex env var
2024-06-06 09:26:21 +08:00
Nathan.fooo 6bb2a20888
fix: nginx ai test (#603)
* chore: add config for ai/chat

* chore: update config
2024-06-04 20:11:19 +08:00
Bartosz Sypytkowski 58e01f4e8d
fix: index documents with missing embeddings at service start (#597)
* feat: appflowy-indexer indexes documents with missing embeddings at start

* chore: add tests to check initial indexing of collabs

* chore: log user search requests and response

* fix: wrong appflowy openai api key env var name

* chore: fill openai keys for integration testing

* chore: silence flaky test
2024-06-04 16:50:06 +08:00
Nathan.fooo b36715dc24
chore: generate answer manually (#594)
* chore: generate answer manually

* chore: rename

* chore: return reply message id

* chore: save message

* chore: commit schema files
2024-06-03 08:06:23 +08:00
Mathias Mogensen 06272364b7
feat: get workspace member by user id (#588)
* feat: get workspace member by user id

* chore: remove unneccessary arg
2024-05-30 07:50:58 +08:00
Bartosz Sypytkowski c4702bbbdf
feat: Workspace token usage (#584)
* feat: register open ai token usage during indexing

* feat: register open ai token usage during search

* chore: fixed open ai token usage when searching for documents
2024-05-29 16:07:56 +08:00
Khor Shu Heng a6bcbd583f
chore: share library for authentication (#576)
* chore: share library for authentication

* fix: return error from requesting app data instead of unwrap

* fix: return internal server error when jwt secret is missing

* chore: remove argon dep from main crate

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-05-29 16:00:21 +08:00
Bartosz Sypytkowski d3e59fa801
feat: Appflowy-indexer service and /api/search endpoint (#582)
* feat: implement appflowy-indexer and search api endpoint

* chore: store embedding content type

* chore: more descriptive messages for open ai missing key

* chore: fix sqlx errors in tests

* chore: document watcher - change plain text rendering to use depth-first scan

* chore: added nested document blocks example
2024-05-28 21:09:29 +08:00
Khor Shu Heng 93b4a1516c
feat: add postgres listeners for collab service (#575) 2024-05-27 09:12:32 +08:00
Nathan.fooo 559d924cd1
feat: stream chat message (#577)
* chore: save author id

* chore: stream response

* chore: stream chat message
2024-05-26 22:44:08 +08:00
Nathan.fooo ae3e075475
chore: Integrate with client-api, update chat message (#574)
* chore: update

* chore: get chat message with next back option

* chore: update next back

* chore: return answer

* chore: return answer

* chore: return answer

* chore: update client api

* chore: fix ci
2024-05-24 15:04:50 +08:00
Nathan.fooo 05e7f1cda7
Integrate ai chat (#569)
* chore: fix compile

* chore: implement client api

* chore: implement client api

* chore: clippy
2024-05-22 11:18:07 +08:00
Khor Shu Heng 67d9fad7d7
chore: migrate collab storage to appflowy-collaborate (#566)
* chore: migrate collab storage to appflowy-collaborate

* fix: clippy error

* chore: remove handler

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-05-21 10:06:26 +08:00
Zack ec7eb54bfc
chore: Self host improvement (#561)
* fix: remove multiple ways to specify database name

* feat: resent email for already invited user

* feat: mailer address from smtp username

* feat: allow user defined smtp port
2024-05-18 08:33:08 +08:00
Khor Shu Heng fbdcbd6e08
chore: migrate collab actors to appflowy-collaborate (#556) 2024-05-17 12:22:43 +08:00
Khor Shu Heng c79267d42a
feat: migrate collab access control to collaboration service (#548)
* feat: migrate collab access control to collaborate service

* feat: migrate workspace access control to separate crate
2024-05-15 15:24:07 +08:00
Zack Fu Zi Xiang 40369e6915
fix: remove unneeded time verification 2024-05-13 09:53:04 +08:00
Nathan.fooo 4c00ddd593
chore: Chat history (#546)
* chore: imple sql curd

* chore: update chat

* chore: select messages

* chore: update test

* chore: update schema

* chore: update
2024-05-11 20:41:21 +08:00
Zack 348217a117
fix: check is new before creating user (#545) 2024-05-10 16:23:15 +08:00
Khor Shu Heng d9d874ab8a
feat: migrate collab cache to collaborate service (#524)
Co-authored-by: nathan <nathan@appflowy.io>
2024-05-09 23:12:13 +08:00
Nathan.fooo 388d38428b
chore: revamp post realtime endpoint (#536)
* chore: revamp  post realtime endpoint

* chore: fix clippy

* chore: fix fmt
2024-05-08 22:06:37 +08:00
Nathan.fooo 70262a1ac4
chore: try to not block actor mailbox (#534)
* chore: add test

* chore: spawn task to handle message

* chore: update error message
2024-05-08 16:54:05 +08:00
Nathan.fooo 3508262d1d
chore: using env to control mailbox size (#532)
* chore: using env to control mailbox size

* chore: update logs
2024-05-07 22:15:53 +08:00
nathan c30870516f chore: update mailbox size 2024-05-07 21:21:18 +08:00
Nathan.fooo 79bb510aaf
ci: run history test (#513)
* ci: run history test

* chore: fix ci
2024-05-01 16:28:07 +08:00
Zack Fu Zi Xiang 9adf3f883c
feat: improve email workspace invitations 2024-04-30 11:07:29 +08:00
Zack Fu Zi Xiang 781448442c
feat: make email sending async 2024-04-30 01:17:23 +08:00
Zack Fu Zi Xiang 6e74449ab1
feat: accept workspace invite email 2024-04-29 19:40:20 +08:00
Nathan.fooo 7b4b9d0c10
chore: folder data check (#496)
* chore: folder data check

* chore: stop observe remote change when specific type of collaboration object override with incorrect data

* chore: commit sqlx file
2024-04-26 13:20:06 +08:00
Nathan.fooo a0593b5502
chore: refactor return response with object id (#494)
* chore: refactor return response with object id

* chore: fix ci

* chore: fix ci
2024-04-24 12:07:54 +08:00
Nathan.fooo 5f970a625a
chore: use rust 1.77 (#493) 2024-04-24 10:47:18 +08:00
Nathan.fooo efbe9c4a93
chore: move collab rt crate (#489)
* chore: create appflowy collaborate crate

* chore: remove collab-rt

* chore: fmt

* chore: main
2024-04-22 12:14:41 +08:00
Nathan.fooo 9e1c06a5af
chore: update log (#480) 2024-04-20 10:53:35 +08:00
Nathan.fooo 970fbaed57
feat: using transaction to write multiple records (#477)
* chore: impl batch write

* chore: update test

* chore: using save point to optimize write

* chore: update docs

* chore: fix test

* chore: increase write speed

* chore: use redis sorted set

* chore: fallback to write to disk directly when fail to queue

* chore: fix test

* chore: fix test

* chore: update log

* chore: add metrics
2024-04-19 15:22:57 +08:00
Nathan.fooo 4168d72390
chore: using redis conn for each action (#476)
* chore: batch insert

* chore: opti redis conn

* chore: fix test
2024-04-17 11:41:50 +08:00
Nathan.fooo 8ab7815740
chore: reduce pool lock (#475)
* chore: reduce pool lock

* chore: clippy
2024-04-16 20:26:26 +08:00
Nathan.fooo 4d019728ba
refactor: insert encode collab object in redis (#469)
* chore: insert collab redis cache with timestamp

* chore: add test

* chore: update expire time

* chore: update

* chore: fix test
2024-04-13 22:31:36 +08:00
Nathan.fooo baeeb2c5ce
chore: do not wait insert to redis finish when calling get collab (#468) 2024-04-13 10:26:05 +08:00
Nathan.fooo ecbc935d4b
chore: using spawn blocking (#467) 2024-04-13 00:08:13 +08:00
Zack 9a5636caec
chore: get collab http (#463)
* chore: get collab http

* fix: use correct version

* fix: collab url

* feat: update collab access control middleware
2024-04-12 11:08:38 +08:00
nathan c1bbcbfdd5 chore: update mailbox size 2024-04-09 10:10:56 +08:00
Nathan.fooo e9097107e5
chore: Disable multi thread (#458)
* chore: disable multiple thread

* chore: clippy
2024-04-09 10:07:40 +08:00
Nathan.fooo b1c3d779ba
chore: reduce save collab db operations (#455)
* chore: reduce save collab db operations

* chore: clippy

* chore: add test

* chore: add test

* chore: add test
2024-04-08 14:50:51 +08:00
Nathan.fooo b1a6338527
refactor: actix-ws (#453)
* chore: deduplicate ws message

* chore: remove retry when sending client ws message

* chore: prepare client/server actor test
2024-04-07 12:43:29 +08:00
Nathan.fooo 428c3feef2
chore: create default workspace database (#454)
* chore: create default workspace database

* chore: fix clppy
2024-04-06 21:04:12 +08:00
Nathan.fooo 01f1af98f5
chore: wrapper for collab (#448)
* chore: wrapper for collab

* chore: add tests

* chore: fix audit

* chore: init sync

* chore: disable wasm user test

* chore: disable encode state when start

* chore: fix test
2024-04-05 11:30:00 +08:00
Zack 8e35b06698
Merge pull request #447 from AppFlowy-IO/workspace-invite-redirect
fix: redirect new users to login instead of home
2024-04-04 18:42:52 +08:00
Zack Fu Zi Xiang 1e3068f846
fix: redirect new users to login instead of home 2024-04-04 18:18:24 +08:00
Nathan.fooo 40f88a6231
fix: group might not be ready to receive message (#445) 2024-04-04 15:13:55 +08:00
nathan 632fbc6a7d chore: update logs 2024-04-03 20:40:58 +08:00
nathan d822391dbc chore: update logs for encoding collab 2024-04-03 15:02:11 +08:00
nathan 6137b6a9ab chore: update log & stop requeue snapshot when first trying is fail 2024-04-03 13:17:22 +08:00
Nathan.fooo 5a06cb3278
feat: get collab retry (#434)
* chore: retry when fetch collab doc state

* chore: fix test

* chore: disable log

* chore: fix client api build

* chore: log

* chore: try invite and acccept

* chore: add todo

* chore: update ci
2024-04-01 09:39:02 +08:00
Nathan.fooo 6c96d05e2f
feat: introduce custom function in casbin model that supports compari… (#433)
* feat: introduce custom function in casbin model that supports comparing role or level

* chore: update

* chore: log

* chore: log

* chore: remove cache
2024-03-31 19:54:41 +08:00
Nathan.fooo a6b1c93a84
chore: enable member to access the workspace member list (#431) 2024-03-30 18:29:00 +08:00
Khor Shu Heng ccd11f0b02
refactor: make access control a separate package (#422)
Co-authored-by: nathan <nathan@appflowy.io>
2024-03-30 11:06:49 +08:00
Nathan.fooo d77fb77a3a
feat: validate collab data before writing to disk (#425)
* chore: validate collab

* chore: update test

* chore: partition key

* chore: save collab

* chore: save collab
2024-03-29 14:55:51 +08:00
Nathan.fooo cd9fc34465
refactor: crate folder (#423)
* refactor: crate folder

* chore: update docs

* chore: clippy
2024-03-28 11:06:14 +08:00
Nathan.fooo d30cf93a1f
feat: sync protocol (#421)
* chore: send full update when it's first time to sync

* chore: update last sync at
2024-03-27 21:39:47 +08:00
Nathan.fooo 3e36dae50d
chore: remove collab ac cache (#420)
* chore: remove collab ac cache

* chore: update member write workspace role

* chore: fix test

* chore: clippy
2024-03-26 21:36:24 +08:00
Nathan.fooo 66a5033d16
chore: remove component folder (#419) 2024-03-26 14:16:03 +08:00
nathan 506ed640da chore: update project setting 2024-03-26 09:13:43 +08:00
Nathan.fooo d4e45efd6a
chore: bump collab commit (#417)
* chore: bump collab rev

* chore: bump collab commit

* chore: custome decode ack code
2024-03-25 16:14:49 +08:00
Nathan.fooo 4878d51c1b
chore: separate connect control (#413)
* chore: separate connect control

* chore: add tests

* chore: add tests
2024-03-24 07:30:21 +08:00
Nathan.fooo acc13414cf
feat: sync deduplicate (#412)
* chore: update logs

* chore: update logs

* chore: deduplicate messages

* chore: optimize sync interval

* chore: fmt

* ci: test

* chore: clippy

* chore: clippy
2024-03-24 07:30:05 +08:00
Nathan.fooo 47649efe18
chore: add connect at timestamp (#410)
* chore: add connect at timestamp

* chore: fix lock issue
2024-03-23 14:00:22 +08:00
Nathan.fooo 6af8ac0f37
chore: remove realtime user trait (#409)
* chore: remove realtime user trait

* chore: fix fmt

* chore: fix clippy
2024-03-23 11:01:50 +08:00
Nathan.fooo c015ee7c7e
fix: peer sync (#408) 2024-03-22 21:32:41 +08:00
Nathan.fooo c85383b21d
chore: project folder structture (#392)
* chore: docker build

* chore: update

* chore: update

* chore: test stream pubsub

* chore: fix wanrings

* chore: realtime crate

* chore: realtime crate

* chore: realtime crate

* chore: realtime crate

* chore: reanme crates

* chore: reanme crates

* chore: project structure

* chore: disable docker for collab hisotry
2024-03-22 11:24:28 +08:00
Zack Fu Zi Xiang 7547ecd998
chore: cargo clippy 2024-03-21 18:44:43 +08:00
Zack Fu Zi Xiang b43e8c4a61
feat: add fragment redirect for web home 2024-03-21 15:25:40 +08:00
Zack Fu Zi Xiang 528dd6ae5b
feat: email redirect to invite page 2024-03-21 14:01:48 +08:00
Zack Fu Zi Xiang 5f220ab0b0
feat: user leave workspace 2024-03-19 21:58:56 +08:00
Nathan.fooo a31c246b67
feat: Access control group (#395)
* chore: access control for group

* chore: access control for workspace

* chore: add test

* chore: enforce group

* chore: update docs
2024-03-19 12:57:08 +08:00
Zack ab693efd58
Merge pull request #393 from AppFlowy-IO/email-accept-invite
admin frontend invitation management
2024-03-18 19:37:34 +08:00
Nathan.fooo d1c82b7811
chore: enable access control by env (#394) 2024-03-18 19:34:44 +08:00
Zack Fu Zi Xiang 7e7ee7cc2a
feat: workspace invite admin frontend 2024-03-18 12:33:08 +08:00
Nathan.fooo c5112cc761
chore: use collab without gc (#391) 2024-03-17 17:03:05 +08:00
Zack Fu Zi Xiang 1dbffaf4f0
Merge branch 'main' into frontend-admin/user-usage 2024-03-14 17:52:20 +08:00
Zack Fu Zi Xiang 0048533914
feat: total document usage 2024-03-14 17:50:19 +08:00
Nathan.fooo 40fc18a499
feat: only enforce when permission change (#382)
* feat: only enforce when permission change

* chore: fix client api ci

* chore: fix test

* chore: fix test
2024-03-13 17:14:43 +08:00
Nathan.fooo 47e14d3b25
fix: potential duplicate init sync (#381)
* fix: potential duplicate init sync

* chore: clippy
2024-03-13 09:53:25 +08:00
Nathan.fooo ff80014c2f
feat: Multi connect test (#372)
* chore: test multiple connect attempt

* chore: eable hash

* chore: pair message

* chore: fmt
2024-03-07 09:21:08 +08:00
Zack Fu Zi Xiang c293929b11
feat: added tests for inviting member which has not signed up yet 2024-03-06 14:01:57 +08:00
Zack Fu Zi Xiang 9b28edb5bc
feat: use email for af workspace invitation table 2024-03-06 11:29:07 +08:00
Zack Fu Zi Xiang e9ee0d12fa
Merge branch 'main' into workspace-invite 2024-03-04 15:47:57 +08:00
Nathan.fooo 15c03e4f85
refactor: realtime dir (#363)
* refactor: realtime dir

* chore: fmt

* chore: fix test

* chore: fix test

* chore: fix test
2024-03-04 12:53:44 +08:00
Zack Fu Zi Xiang 1af1b877ef
Merge branch 'main' into workspace-invite 2024-03-04 12:40:48 +08:00
John Vandenberg 63527e3cae
fix: typos (#359)
* Fix typos

* chore: solve conflict

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-03-04 11:32:42 +08:00
Zack Fu Zi Xiang 5f4d53b15b
feat: added context when committing to invite workspace members 2024-03-04 11:02:39 +08:00
Zack Fu Zi Xiang 8d1d7943a2
chore: mark biz function as deprecated 2024-03-04 09:18:43 +08:00
Zack Fu Zi Xiang 65d69ef0fd
fix: owner invite permission 2024-03-04 00:59:11 +08:00
Zack Fu Zi Xiang 439a59ed2d
chore: save current progress 2024-03-03 19:06:24 +08:00
Zack Fu Zi Xiang bc3fccfcea
chore: merge with main 2024-03-03 14:37:50 +08:00
Zack Fu Zi Xiang f1e81d59c4
test: crud flow for workspace invites 2024-03-03 14:26:03 +08:00
Nathan.fooo 0e57de98d8
refactor: Access control (#361)
* refactor: access level

* refactor: access control

* refactor: enforce action

* refactor: collab cache

* chore: fix test

* chore: fix test

* chore: fix test

* chore: fix test

* chore: commit migration file

* chore: commit migration file
2024-03-03 12:55:12 +08:00
Zack Fu Zi Xiang e8328fd0a4
feat: workspace invitations 2024-03-03 02:48:01 +08:00
Nathan.fooo 2cf857bd00
feat: optimize websocket message (#351)
* chore: send multiple message

* refactor: message

* refactor: message

* fix: test

* fix: test

* fix: test

* chore: docs

* fix: test

* chore: support compress

* chore: interval retry

* chore: fix test

* chore: merge main

* chore: clippy

* chore: clippy

* ci: fix test

* chore: clippy

* chore: clippy
2024-03-02 02:53:14 +08:00
Zack 79a0dd43c6
feat: Create workspace (#357)
* feat: initialize collab for user after workspace creation

* fix: add permission before adding new collab for new workspace

* chore: simplify logic
2024-02-29 13:02:27 +08:00
Zack Fu Zi Xiang f8b9f623cf
feat: delete all files when workspace is deleted 2024-02-28 18:24:17 +08:00
Nathan.fooo 5ed6a14943
chore: reduce lock required (#353)
* chore: spawn local task

* chore: spawn local task

* chore: spawn local task

* chore: spawn local task

* chore: fix test

* chore: fix test

* chore: clippy

* chore: clippy

* chore: clippy

* chore: clippy
2024-02-27 18:50:44 +08:00
Zack Fu Zi Xiang 7abba9d7ef
feat: add workspace icon field 2024-02-27 11:26:31 +08:00
Nathan.fooo deffd074b9
chore: check collab before insert (#349)
* chore: check collab before insert

* chore: fix audit

* chore: speed test

* chore: add expirate duration for cache encode collab

* chore: fix test
2024-02-25 12:38:07 +08:00
nathan 8e9031c669 chore: add expire duration 2024-02-24 15:47:28 +08:00
Nathan.fooo 10fc8dd2fe
chore: use Redis cache for enforcer (#348)
* chore: use redis cache

* chore: use redis to cache enforce result

* fix: test

* fix: test

* fix: test

* fix: test
2024-02-24 15:45:53 +08:00