AppFlowy/frontend/rust-lib/Cargo.toml
Mathias Mogensen 4708c0f779
feat: plan+billing (#5518)
* feat: billing client

* feat: subscribe workspace default impl

* feat: added create subscription

* feat: add get workspace subs

* feat: added subscription cancellation

* feat: add workspace limits api

* fix: update client api

* feat: user billing portal

* feat: billing UI (#5455)

* feat: plan ui

* feat: billing ui

* feat: settings plan comparison dialog

* feat: complete plan+billing ui

* feat: backend integration

* chore: cleaning

* chore: fixes after merge

* fix: dependency issue

* feat: added subscription plan cancellation information

* feat: subscription callback + canceled date

* feat: put behind feature flag

* feat: downgrade/upgrade dialogs

* feat: update limit error codes

* fix: billing refresh + downgrade dialog

* fix: some minor improvements to settings

* chore: use patch for client-api in tauri

* fix: add shared-entity to patch

* fix: compile

* ci: try to add back maximize build space step

* test: increase timeout in failing test

---------

Co-authored-by: Zack Fu Zi Xiang <speed2exe@live.com.sg>
2024-06-12 17:08:55 +02:00

146 lines
6 KiB
TOML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[workspace]
members = [
"lib-dispatch",
"lib-log",
"flowy-core",
"dart-ffi",
"flowy-user",
"flowy-user-pub",
"event-integration-test",
"flowy-sqlite",
"flowy-folder",
"flowy-folder-pub",
"flowy-notification",
"flowy-document",
"flowy-document-pub",
"flowy-error",
"flowy-database2",
"flowy-database-pub",
"flowy-server",
"flowy-server-pub",
"flowy-config",
"flowy-encrypt",
"flowy-storage",
"collab-integrate",
"flowy-date",
"flowy-search",
"lib-infra",
"build-tool/flowy-ast",
"build-tool/flowy-codegen",
"build-tool/flowy-derive",
"flowy-search-pub",
"flowy-chat",
"flowy-chat-pub",
]
resolver = "2"
[workspace.dependencies]
lib-dispatch = { workspace = true, path = "lib-dispatch" }
lib-log = { workspace = true, path = "lib-log" }
lib-infra = { workspace = true, path = "lib-infra" }
flowy-ast = { workspace = true, path = "build-tool/flowy-ast" }
flowy-codegen = { workspace = true, path = "build-tool/flowy-codegen" }
flowy-derive = { workspace = true, path = "build-tool/flowy-derive" }
flowy-core = { workspace = true, path = "flowy-core" }
dart-ffi = { workspace = true, path = "dart-ffi" }
flowy-user = { workspace = true, path = "flowy-user" }
flowy-user-pub = { workspace = true, path = "flowy-user-pub" }
flowy-sqlite = { workspace = true, path = "flowy-sqlite" }
flowy-folder = { workspace = true, path = "flowy-folder" }
flowy-folder-pub = { workspace = true, path = "flowy-folder-pub" }
flowy-notification = { workspace = true, path = "flowy-notification" }
flowy-document = { workspace = true, path = "flowy-document" }
flowy-document-pub = { workspace = true, path = "flowy-document-pub" }
flowy-error = { workspace = true, path = "flowy-error" }
flowy-database2 = { workspace = true, path = "flowy-database2" }
flowy-database-pub = { workspace = true, path = "flowy-database-pub" }
flowy-server = { workspace = true, path = "flowy-server" }
flowy-server-pub = { workspace = true, path = "flowy-server-pub" }
flowy-config = { workspace = true, path = "flowy-config" }
flowy-encrypt = { workspace = true, path = "flowy-encrypt" }
flowy-storage = { workspace = true, path = "flowy-storage" }
flowy-search = { workspace = true, path = "flowy-search" }
flowy-search-pub = { workspace = true, path = "flowy-search-pub" }
collab-integrate = { workspace = true, path = "collab-integrate" }
flowy-date = { workspace = true, path = "flowy-date" }
flowy-chat = { workspace = true, path = "flowy-chat" }
flowy-chat-pub = { workspace = true, path = "flowy-chat-pub" }
anyhow = "1.0"
tracing = "0.1.40"
bytes = "1.5.0"
serde_json = "1.0.108"
serde = "1.0.194"
protobuf = { version = "2.28.0" }
diesel = { version = "2.1.0", features = ["sqlite", "chrono", "r2d2", "serde_json"] }
uuid = { version = "1.5.0", features = ["serde", "v4", "v5"] }
serde_repr = "0.1"
parking_lot = "0.12"
futures = "0.3.29"
tokio = "1.38.0"
tokio-stream = "0.1.14"
async-trait = "0.1.74"
chrono = { version = "0.4.31", default-features = false, features = ["clock"] }
collab = { version = "0.2" }
collab-entity = { version = "0.2" }
collab-folder = { version = "0.2" }
collab-document = { version = "0.2" }
collab-database = { version = "0.2" }
collab-plugins = { version = "0.2" }
collab-user = { version = "0.2" }
yrs = "0.18.8"
# Please using the following command to update the revision id
# Current directory: frontend
# Run the script.add_workspace_members:
# scripts/tool/update_client_api_rev.sh new_rev_id
# ⚠️⚠️⚠️️
client-api = { version = "0.2" }
appflowy-cloud-billing-client = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud-Billing-Client", rev = "9f9c2d1ad180987a31d18c6c067a56a5fa1f6da6" }
[profile.dev]
opt-level = 1
lto = false
codegen-units = 16
debug = true
[profile.release]
lto = true
opt-level = 3
codegen-units = 1
[profile.profiling]
inherits = "release"
debug = true
codegen-units = 16
lto = false
## debuginfoit makes ./target much bigger, which again harms caching. Depending on your preferred workflow,
## you might consider disabling debuginfo unconditionally, this brings some benefits for local builds as well.
#strip = "debuginfo"
## For from-scratch builds, incremental adds an extra dependency-tracking overhead. It also significantly increases
## the amount of IO and the size of ./target, which make caching less effective.
incremental = false
[patch.crates-io]
client-api = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "ff4384fbd07a4b7394a9af8c9159cd65715d3471" }
shared-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Cloud", rev = "ff4384fbd07a4b7394a9af8c9159cd65715d3471" }
# TODO(Lucas.Xu) Upgrade to the latest version of RocksDB once PR(https://github.com/rust-rocksdb/rust-rocksdb/pull/869) is merged.
# Currently, using the following revision id. This commit is patched to fix the 32-bit build issue and it's checked out from 0.21.0, not 0.22.0.
rocksdb = { git = "https://github.com/LucasXu0/rust-rocksdb", rev = "21cf4a23ec131b9d82dc94e178fe8efc0c147b09" }
# Please use the following script to update collab.
# Working directory: frontend
#
# To update the commit ID, run:
# scripts/tool/update_collab_rev.sh new_rev_id
#
# To switch to the local path, run:
# scripts/tool/update_collab_source.sh
# ⚠️⚠️⚠️️
collab = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "3a58d95" }
collab-entity = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "3a58d95" }
collab-folder = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "3a58d95" }
collab-document = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "3a58d95" }
collab-database = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "3a58d95" }
collab-plugins = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "3a58d95" }
collab-user = { version = "0.2", git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "3a58d95" }