diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index c629f575da..43aef6ddff 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -35,26 +35,26 @@ importers: specifier: ^8.4.1 version: 8.4.1 '@hcengineering/communication-client-query': - specifier: 0.1.155 - version: 0.1.155(typescript@5.3.3) + specifier: 0.1.166 + version: 0.1.166(typescript@5.3.3) '@hcengineering/communication-rest-client': - specifier: 0.1.155 - version: 0.1.155(typescript@5.3.3) + specifier: 0.1.166 + version: 0.1.166(typescript@5.3.3) '@hcengineering/communication-sdk-types': - specifier: 0.1.155 - version: 0.1.155(typescript@5.3.3) + specifier: 0.1.166 + version: 0.1.166(typescript@5.3.3) '@hcengineering/communication-server': - specifier: 0.1.155 - version: 0.1.155(typescript@5.3.3) + specifier: 0.1.166 + version: 0.1.166(typescript@5.3.3) '@hcengineering/communication-shared': - specifier: 0.1.155 - version: 0.1.155(typescript@5.3.3) + specifier: 0.1.166 + version: 0.1.166(typescript@5.3.3) '@hcengineering/communication-types': - specifier: 0.1.155 - version: 0.1.155(typescript@5.3.3) + specifier: 0.1.166 + version: 0.1.166(typescript@5.3.3) '@hcengineering/communication-yaml': - specifier: 0.1.155 - version: 0.1.155(typescript@5.3.3) + specifier: 0.1.166 + version: 0.1.166(typescript@5.3.3) '@hocuspocus/provider': specifier: ^2.15.2 version: 2.15.2(bufferutil@4.0.8)(utf-8-validate@6.0.4)(y-protocols@1.0.6(yjs@13.6.23))(yjs@13.6.23) @@ -777,7 +777,7 @@ importers: version: file:projects/pod-telegram.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(bufferutil@4.0.8)(gcp-metadata@5.3.0(encoding@0.1.13))(snappy@7.2.2)(socks@2.8.3)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))(utf-8-validate@6.0.4) '@rush-temp/pod-telegram-bot': specifier: file:./projects/pod-telegram-bot.tgz - version: file:projects/pod-telegram-bot.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(bufferutil@4.0.8)(encoding@0.1.13)(gcp-metadata@5.3.0(encoding@0.1.13))(snappy@7.2.2)(socks@2.8.3)(utf-8-validate@6.0.4) + version: file:projects/pod-telegram-bot.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(encoding@0.1.13)(gcp-metadata@5.3.0(encoding@0.1.13))(snappy@7.2.2)(socks@2.8.3) '@rush-temp/pod-workspace': specifier: file:./projects/pod-workspace.tgz version: file:projects/pod-workspace.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(gcp-metadata@5.3.0(encoding@0.1.13))(snappy@7.2.2)(socks@2.8.3) @@ -2939,48 +2939,48 @@ packages: '@hcengineering/card@0.7.28': resolution: {integrity: sha512-1d3allyx9jTpE/gr9kk/g5qo5848i4FKsRiHgCpJqzNEdRW7TAednoHAr2hKRU5DZC/i3Br56axSkUQzV2Idhg==, tarball: https://npm.pkg.github.com/download/@hcengineering/card/0.7.28/5348996f5b7b4a34517780a5bf324122cbddfbad} - '@hcengineering/communication-client-query@0.1.155': - resolution: {integrity: sha512-KvOi/WSG0E68bwk9jvXIKiE1Wx4sCgJgz9a94eiRMI5UCGjNPCTT+2ZoKu1wTbIw0+VpwwV5MyVHzrgVRbayHQ==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-client-query/0.1.155/4065a15451791a99fe8b0ca3d2c3fe085def10d4} + '@hcengineering/communication-client-query@0.1.166': + resolution: {integrity: sha512-OOPEhug8/7UWifKDAf/JxIfO9aDCPncxq5hkhSZ/23Akf1rfVWH1JdXQLTSTQuiSq9MdZrrK9RRqrGDFRwx4DQ==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-client-query/0.1.166/44ed3a3fbf86cc64bea5048235a1cf3e1c260dd0} peerDependencies: typescript: ^5.6.3 - '@hcengineering/communication-cockroach@0.1.155': - resolution: {integrity: sha512-bqXr4IKtKi+hgPW6u3E4XCdVnz2KRFt8ef5BkL5lhVGhpdnMyHVshIgEWZmNkaxc7e+Pu7gAzQPiPXPJiVaiZg==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-cockroach/0.1.155/c6e489830b7d355c5445bd314ab76848b5bf73bd} + '@hcengineering/communication-cockroach@0.1.166': + resolution: {integrity: sha512-2brzc8iJ9cd4zCSby3QSg0NM4CK4a1HkEWcmq53ZU/JORlRIy5JljzdwIHZxUsXxHJyCBK80L8OOeUbK2eO1gg==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-cockroach/0.1.166/42e329d0c8bc392dcaf7bda8f101859dc6d829d4} peerDependencies: typescript: ^5.6.3 - '@hcengineering/communication-query@0.1.155': - resolution: {integrity: sha512-gXvSeqryFJd/TKIFf8HOuaUwFAhNwzLPK+MUWqk/KHgz03dqhdxo0C4iiCiCP87vhAndmCNwfk8R9m4AEW7wcw==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-query/0.1.155/bed985bb4f2f5dfb4dd61ccdb2f3c4127dc90cdf} + '@hcengineering/communication-query@0.1.166': + resolution: {integrity: sha512-SS/nYq/P8HUhtYQPAWjXc5D+UrwYR+BWnCxhaPjReD5lBfpfxOhXLoMGo3W5VZSiiRdlOysrB4lMLjMvlavNCA==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-query/0.1.166/7af91ec3a927cb4fe21e1f2e541b9f4f2847afdc} peerDependencies: typescript: ^5.6.3 - '@hcengineering/communication-rest-client@0.1.155': - resolution: {integrity: sha512-rFY8zLe+mToOK7ZYI4C8fBV6q8XgxtTGO0QER8evJ/rVw0Vi6X/13HbojtQiIdp1K24Owx3oOaFgbLYvWq0xEw==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-rest-client/0.1.155/013880ba6543b8a54c1e33f84bf83906e82603ba} + '@hcengineering/communication-rest-client@0.1.166': + resolution: {integrity: sha512-xRVqwu0knJushvql/A/B0MexobLkfuRkfkRaNgHA8chNmiltqdA/nN1RdLPD8pb8d4CGyAKYT4YeLQAgcHBOFA==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-rest-client/0.1.166/5f7db54d17d061caea6894824b749100ea5ff035} peerDependencies: typescript: ^5.6.3 - '@hcengineering/communication-sdk-types@0.1.155': - resolution: {integrity: sha512-JxfmIU7pwx/BGKn8bcmhLEqxzkw70rZRD9TtDzGy59Y3HmPm0NpsrYJKgUTL6VcwpfMueSQYnBqgrvvVnVrU7A==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-sdk-types/0.1.155/9f7adc02b307d46d47de15685f4886c6db90105d} + '@hcengineering/communication-sdk-types@0.1.166': + resolution: {integrity: sha512-6cyD/XT89smmdKUEpYGdFz4c9LerWr9Yz2Q4GnD0zFJd3P4Bwa9eGkRrvGvym/xlcnXI6aA08nAISJmc9OZhMg==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-sdk-types/0.1.166/57461067d0f1bf8f6508590437260d0e1e2e2aec} peerDependencies: typescript: ^5.6.3 - '@hcengineering/communication-server@0.1.155': - resolution: {integrity: sha512-Bm6CMTmBNU0RAiQ9J15gXbWpUCDJLZ/5tywauMR7Xp6LQ0dOBNnkwx/zsmDV6ar9/GXbI4QfalhXlFOMfEU66w==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-server/0.1.155/725578ec4bc79d6d57daaec3433cf3866d6c471d} + '@hcengineering/communication-server@0.1.166': + resolution: {integrity: sha512-wFr089NDQzEpsQ1/F8NViFVQg4Sqhql4vjmVEE4spQNx3Ujc+gV+s3PNvT5vImHtqvbukSyiDlw90ot7FpfCBg==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-server/0.1.166/8429ee835df67566e8111bea27791020fa9c420d} peerDependencies: typescript: ^5.6.3 - '@hcengineering/communication-shared@0.1.155': - resolution: {integrity: sha512-87lJ2x7NMVl1LZk0+1Ah8r4BkOl+72uTSaZhD5/BcEwtHY9UlqnRpaU0cNjmuuc0HEbGpa22L+lsx4+NwmGOCw==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-shared/0.1.155/38652c728ff36c7b972518e10b1b91cf85840bd1} + '@hcengineering/communication-shared@0.1.166': + resolution: {integrity: sha512-nJHFqC43llHRGNSkk/U6XjoMhZ9tvNg24OJnAZ+7+REMSCNB7b9A/EU4wHIpHGKo6Vkw+OULyS/ZmEM7Ndv2uA==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-shared/0.1.166/9e856987f8b3a4032003a45458e6e976f7aae777} peerDependencies: typescript: ^5.6.3 - '@hcengineering/communication-types@0.1.155': - resolution: {integrity: sha512-hIiEDiDAfibAaxm/JZhE3KPd+R3FtESxaLeLG05FBkQhXNfTh4Yk+xpaLuVEvkWPhEnmnHfz7HrI+gYEaazSDQ==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-types/0.1.155/5b497e02dc9c19cd246654597e13b1de83b019b1} + '@hcengineering/communication-types@0.1.166': + resolution: {integrity: sha512-TyqwVZ8Pro4HCA+NIFXPYaXlXabhStC7fiXyWZ5ziJq6IwdCY/WTg/1jMxkiRx5ZEg6Mmgf6+5ioimP8j7kliQ==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-types/0.1.166/26635b69a2ea2f7f92333b9be42d777a2e935652} peerDependencies: typescript: ^5.6.3 - '@hcengineering/communication-yaml@0.1.155': - resolution: {integrity: sha512-x6sViToPXvfpOYED07lf78x5jTRk+yxrp7tzPP2olk3XGhM9aCX50kE7mYAGMZt88Jz/YT9815k+8MlOYIjZOg==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-yaml/0.1.155/5635170d7399c8449ce8651f8efb5dd55878ba2d} + '@hcengineering/communication-yaml@0.1.166': + resolution: {integrity: sha512-tvZRtQlcx4/R9psUJZu1NtUOp9c6Zm1Rn30FVP+8hc0cXJVRWfb/qUhbdpjbbR09RxknEG9X+Sk1xasZt/l6ww==, tarball: https://npm.pkg.github.com/download/@hcengineering/communication-yaml/0.1.166/6d2fa66382e83d8cd70889aeed6d229411f9be61} peerDependencies: typescript: ^5.6.3 @@ -2990,15 +2990,24 @@ packages: '@hcengineering/platform@0.7.28': resolution: {integrity: sha512-0zEifwsLdOs/M6TZ9xnPrQTTlhwW28sooiyL4ZfQsiC2AJUy05vLP5/W8V9eDLta+EiR5bjtlulGsg1GfPjUoQ==, tarball: https://npm.pkg.github.com/download/@hcengineering/platform/0.7.28/2126ff97284b679ceab3c86f24febd73a3a28712} + '@hcengineering/preference@0.7.28': + resolution: {integrity: sha512-WwwOfjZ1TLdTfPhQGvSjo8dS63HyuE7BDVhfstxP8D+H4BI5UKYoev/6vlwQf/3d+jI1S4f2ivO//IDJAD7sGg==, tarball: https://npm.pkg.github.com/download/@hcengineering/preference/0.7.28/f1739991cc012d194fa18f99565ae5bd64f0ad07} + '@hcengineering/server-token@0.7.28': resolution: {integrity: sha512-TaHwzxuoFKN6jnWHIZk0UcRmB+UQ1QE1HZzUh5doPSFUYOAtTrSb32iJDA8e8oEADcJpOp9RGIUP/EP/VED7BQ==, tarball: https://npm.pkg.github.com/download/@hcengineering/server-token/0.7.28/b1cffcb628aa0c6ac73171ef340c8ccf0f85ab07} + '@hcengineering/tags@0.7.28': + resolution: {integrity: sha512-2KCVUu5N/GAkDsDRbdUi7gnBq4ze1Z3eCLoc8nz2G/zeAjAga8gmWkZEbXqAC8rNVqBQv72EKeJFGJyqnev6Xw==, tarball: https://npm.pkg.github.com/download/@hcengineering/tags/0.7.28/42545cc43e3c61e32ce96be87c245fa929f5cbb6} + '@hcengineering/theme@0.7.28': resolution: {integrity: sha512-Hv3wQKHr327TC7wMHCBiG4bMtg8vSlb7+UFwdKI8ztEs3359meqkXu+exqi7Nl5334voXIz5ZFxjwZwOMzNSFA==, tarball: https://npm.pkg.github.com/download/@hcengineering/theme/0.7.28/557640a7ba2ffaa4d6e5411a54577f60dc528300} '@hcengineering/ui@0.7.28': resolution: {integrity: sha512-QsUpO0+Idu1n2dC6KtorPJ6SSp30It8FHSuG3Y+Awv4td/ftVocOSFqhskbk+us9Yw9KqOYgkqhGYEHbfRfw4Q==, tarball: https://npm.pkg.github.com/download/@hcengineering/ui/0.7.28/82025fc775702ea8c8569611356662bfbf28eb74} + '@hcengineering/view@0.7.28': + resolution: {integrity: sha512-cG0isakqIxuiAG7T2KyRnztfOp3falr+oG77Qod915EeBKNEDqXfNrD29Dp04Wwf5TowifDT9smLzAyH8l6kgg==, tarball: https://npm.pkg.github.com/download/@hcengineering/view/0.7.28/8aad5b07d3750463a78aae1b9482361f2ff9f45e} + '@hocuspocus/common@2.15.2': resolution: {integrity: sha512-wU1wxXNnQQMXyeL3mdSDYiQsm/r/QyJVjjQhF7sUBrLnjdsN7bA1cvfcSvJBr1ymrMSeYRmUL3UlQmEHEOaP7w==} @@ -3878,7 +3887,7 @@ packages: version: 0.0.0 '@rush-temp/activity-resources@file:projects/activity-resources.tgz': - resolution: {integrity: sha512-D6UYr/v/r2qS6RDtL/cv4iJJmknqe7TdyVb0+xUQYqxEskOG0wi7IWVvZ7WVWXiwdFLYuMXs6u0p3QlOEQ58NQ==, tarball: file:projects/activity-resources.tgz} + resolution: {integrity: sha512-OvJJHyL3zLcFr9Pqis21n4A7UH/bkGycznxcjZRdsHxw38hB5GXfO8aEu1OUj/y80ffw8sRfmmAXgBDHUIxcOQ==, tarball: file:projects/activity-resources.tgz} version: 0.0.0 '@rush-temp/activity@file:projects/activity.tgz': @@ -3982,7 +3991,7 @@ packages: version: 0.0.0 '@rush-temp/card-resources@file:projects/card-resources.tgz': - resolution: {integrity: sha512-d9CGfKcFvAy2/zUDMznurA+XpO61NiJAQyFK4D+h25nOdOYVEv/BBlRqdfzinKtSoks2g1bhxdhK5ARBXwE13g==, tarball: file:projects/card-resources.tgz} + resolution: {integrity: sha512-MdfCNlQvgnkZ/6d0u6F48qApjtmPPwpQML7IpWD0eQa8Ti+wG89P2gyoMa7lGrx0mCpPgtuSrnOWemuiC4qPlw==, tarball: file:projects/card-resources.tgz} version: 0.0.0 '@rush-temp/card@file:projects/card.tgz': @@ -3994,7 +4003,7 @@ packages: version: 0.0.0 '@rush-temp/chat-resources@file:projects/chat-resources.tgz': - resolution: {integrity: sha512-2xYGOUqRai/u7lojXVArKSCo0lwhDSxvqSpLySJvWd7urNcTSTV/+NztO6Ibn3mxP0pxZ6HKyOVj2ThJRy9OBw==, tarball: file:projects/chat-resources.tgz} + resolution: {integrity: sha512-TMFXxDl8fvH2YS+Z18SceXsOvldlJyQsw0WMD8xUOsjAGaF9tLmKqU0XozzRYHCC/XnH4hIDPtkecd4yWqpuNg==, tarball: file:projects/chat-resources.tgz} version: 0.0.0 '@rush-temp/chat@file:projects/chat.tgz': @@ -4014,7 +4023,7 @@ packages: version: 0.0.0 '@rush-temp/client-resources@file:projects/client-resources.tgz': - resolution: {integrity: sha512-Vtk4uTUAf42RMfVpeS72qEbhH4kksVI3M/85/YG6wdJdqJuxtZJWn1QWsOBof3Mjt5947lqLzLoNBvoYBVcXXA==, tarball: file:projects/client-resources.tgz} + resolution: {integrity: sha512-88QI51aOEnOUxYm/tHugsrR/d+mggv8/3oUy/6PPCmGFZ0brxrWtjZWlFca4mgWzGzpyzHV/EOaf6WMS8CWq3g==, tarball: file:projects/client-resources.tgz} version: 0.0.0 '@rush-temp/client@file:projects/client.tgz': @@ -4222,7 +4231,7 @@ packages: version: 0.0.0 '@rush-temp/inbox-resources@file:projects/inbox-resources.tgz': - resolution: {integrity: sha512-b2jq7t3TguFZiWBWV9OjZ1lz8p9ppsJCawsfY1Zw2R0Hx7TGCbDn8vUuAC18lEpo0QVvDtp6B6MoRmur8cir7Q==, tarball: file:projects/inbox-resources.tgz} + resolution: {integrity: sha512-LaTq7qobh5pZUUoJsaiqIfvEl4bDpVC5NHmJi+S8nHrdt5A6bixUewrIpEvg0Uq5Dbs2qOppaPcHwVzZRkDBRw==, tarball: file:projects/inbox-resources.tgz} version: 0.0.0 '@rush-temp/inbox@file:projects/inbox.tgz': @@ -4338,7 +4347,7 @@ packages: version: 0.0.0 '@rush-temp/model-card@file:projects/model-card.tgz': - resolution: {integrity: sha512-diGAGkQiQNXD27/ln6i6al/sr7X2dOUdiTx6114JOahvZngprIhzdJLdXuW44BnQHTugr4j0Sp1zOwQXKcTBVA==, tarball: file:projects/model-card.tgz} + resolution: {integrity: sha512-v8A/V7Z8m4FLppT6GqKe0cdNtHEXqO+h5yZrNUB8rqQDXo/dK2tMjv2CDGUnON4e+JsQ7CWF5TZfx2D+x1Kixw==, tarball: file:projects/model-card.tgz} version: 0.0.0 '@rush-temp/model-chat@file:projects/model-chat.tgz': @@ -4434,7 +4443,7 @@ packages: version: 0.0.0 '@rush-temp/model-process@file:projects/model-process.tgz': - resolution: {integrity: sha512-6kPxJqCYNcG1l1eHYYCxRGV2BGNFEob8nrSjlJXYPbpq3ZOkRSx5am1LyqmdF2I+Flq/HOBSLHyel0gFkIk8ZQ==, tarball: file:projects/model-process.tgz} + resolution: {integrity: sha512-Zjg79EdCaONRPG2dzAki/Z24tgKWqVhNXLAi9ce04ysX3elfAJwX7wCzTGxF7J6j0QODddKJ1dQJC/yU2xd8mA==, tarball: file:projects/model-process.tgz} version: 0.0.0 '@rush-temp/model-products@file:projects/model-products.tgz': @@ -4742,7 +4751,7 @@ packages: version: 0.0.0 '@rush-temp/pod-inbound-mail@file:projects/pod-inbound-mail.tgz': - resolution: {integrity: sha512-h0wMnPIe5h5vSlDCKhH0OeuaxQ7UvRfMyJ0UgdxhIwSPfEYr/LN8Ci7emb45H7gGNpnu9xQUpZxewXRTDqmVSg==, tarball: file:projects/pod-inbound-mail.tgz} + resolution: {integrity: sha512-RmykZ+7HWXVWv51XE3MWKPNEFwBhKgwZbP06be7+brmVyaWS2fXg48YXDf5bnJBRIHf71w/DZ8ucm5C9w7hkUw==, tarball: file:projects/pod-inbound-mail.tgz} version: 0.0.0 '@rush-temp/pod-love@file:projects/pod-love.tgz': @@ -4754,7 +4763,7 @@ packages: version: 0.0.0 '@rush-temp/pod-msg2file@file:projects/pod-msg2file.tgz': - resolution: {integrity: sha512-AL6yQR8ErYCd/Klf2kNw0+IQxDYOzCP3Do74FkozQ7anlmAOVbj5aO3V8lMP4QHFoaDNHCzNGQjVza/udIjLeg==, tarball: file:projects/pod-msg2file.tgz} + resolution: {integrity: sha512-+812OFMmR98NeYONFmfqHQGGhjDOnydmVofkrBMqBY/WnrPaupVATf1uxxgTd/SISd50Yfed7kKSRmlfn1i+xw==, tarball: file:projects/pod-msg2file.tgz} version: 0.0.0 '@rush-temp/pod-print@file:projects/pod-print.tgz': @@ -4762,7 +4771,7 @@ packages: version: 0.0.0 '@rush-temp/pod-server@file:projects/pod-server.tgz': - resolution: {integrity: sha512-l+tUCr3Bga9Vx4xE/JfjdJEBrmxQfiUdMLgyZQAjlvFbgdpQ245izHvRIj+lLMUMc6jKZhNv+QfhThD6Fq2EFQ==, tarball: file:projects/pod-server.tgz} + resolution: {integrity: sha512-hNT1YYpCffpDPRybL7Ymdeu3yGCZSJY5/tzE+PaLiJupezwsI2+Sz3sihtbQ7fye7QpRybQYCXa2eirGLigjxQ==, tarball: file:projects/pod-server.tgz} version: 0.0.0 '@rush-temp/pod-ses@file:projects/pod-ses.tgz': @@ -4778,7 +4787,7 @@ packages: version: 0.0.0 '@rush-temp/pod-telegram-bot@file:projects/pod-telegram-bot.tgz': - resolution: {integrity: sha512-j08OCWsLAcBq3aElbkz0CbG2Ib0/CgHHHimwLZ7zpU7Php3ddqkAgaZFKoghv+zag8aSXG/eH34AMSSnraZ5HQ==, tarball: file:projects/pod-telegram-bot.tgz} + resolution: {integrity: sha512-gkEcCRMauPhMtApHrhFcKtBXk/fw6dvbCRbGO4NzoHUxDqi37zeZktowolM89Mpcui5MyP5A/G1NVM3vbKXMUw==, tarball: file:projects/pod-telegram-bot.tgz} version: 0.0.0 '@rush-temp/pod-telegram@file:projects/pod-telegram.tgz': @@ -4810,7 +4819,7 @@ packages: version: 0.0.0 '@rush-temp/presentation@file:projects/presentation.tgz': - resolution: {integrity: sha512-uqdhLEaGlVbYrGbmKFfX96qfCt1Wkx9TuzbsmpweWRGn+mMOBW89Tljjj5Mr2sfFV3QSU0pHYIohW6DA0jPYeQ==, tarball: file:projects/presentation.tgz} + resolution: {integrity: sha512-7LCHjNecBk2nsbpZRnn7pbh4LEa2z9pgi5Sm1gIezui/5r5YfSI1hKiUgRmyBHNvvpQ/PYoW1jLSEDlzIi6YQg==, tarball: file:projects/presentation.tgz} version: 0.0.0 '@rush-temp/print-assets@file:projects/print-assets.tgz': @@ -4938,7 +4947,7 @@ packages: version: 0.0.0 '@rush-temp/server-activity-resources@file:projects/server-activity-resources.tgz': - resolution: {integrity: sha512-ZZBLEF0XyIXqNrmVFUQnBOb3EXrRkeD1YvksEFZu1oha6P39Gupx4u8WSKB4JKF7FfpTj0gFJvO8UX7FyGYsZg==, tarball: file:projects/server-activity-resources.tgz} + resolution: {integrity: sha512-Nae4js49M9UgFyJxgS8RdIvESGPWPxtNpdLqO4nan5mOVvJrawvOl/izs2NbOeoSYMj3+nkwFzMVYWEorv20Lg==, tarball: file:projects/server-activity-resources.tgz} version: 0.0.0 '@rush-temp/server-activity@file:projects/server-activity.tgz': @@ -4982,7 +4991,7 @@ packages: version: 0.0.0 '@rush-temp/server-card-resources@file:projects/server-card-resources.tgz': - resolution: {integrity: sha512-gHBs/xlAznxycVMu1H+s9Cars830WCPBgMXgPve8djHli7blxAYpPxfsGUoimZ3ZNTRV9k+QcnX22gCnkCPuyg==, tarball: file:projects/server-card-resources.tgz} + resolution: {integrity: sha512-HIlqRqtu3HXfW8QCiTnjWARLtG9cICwUU6mq6LG8S+04/hKrqbhhtYStfz5bIb+8ni8qjSrrOJBQGHnVGT7tig==, tarball: file:projects/server-card-resources.tgz} version: 0.0.0 '@rush-temp/server-card@file:projects/server-card.tgz': @@ -5026,7 +5035,7 @@ packages: version: 0.0.0 '@rush-temp/server-core@file:projects/server-core.tgz': - resolution: {integrity: sha512-4L+B4CC6B2QkZMGqvKn7zI7Y0rPFZwvW3bk//qWwzV4sl/0/PiD1yjQf+LEBdX7Evw2s47GRI2TtEbJAo83GTA==, tarball: file:projects/server-core.tgz} + resolution: {integrity: sha512-oGthLHFZXXEU/JUWsSWtwDyG+ck3ipt4QzNAvBSIcp2aRcZvDnRGQQ1uCttJ4CrPII1mAhSUc8f58OyWJQ4OoA==, tarball: file:projects/server-core.tgz} version: 0.0.0 '@rush-temp/server-document-resources@file:projects/server-document-resources.tgz': @@ -5230,7 +5239,7 @@ packages: version: 0.0.0 '@rush-temp/server@file:projects/server.tgz': - resolution: {integrity: sha512-/3M5TuAXCGw00SQLcc4TqX2rlDhYNDSsv0mYxa6Sizsu+CVTRDat0+MaL9beS3U2HTxyyWz9sT5G+j3FwSGjPQ==, tarball: file:projects/server.tgz} + resolution: {integrity: sha512-z19ZDERGk9KL4mkXv5rX6B6jePrbLdR3dFbmDHz+QRT+Wt/lZf9o+SyqpJeUbrxTKtsIhsDm2IAIVIge+UqheA==, tarball: file:projects/server.tgz} version: 0.0.0 '@rush-temp/setting-assets@file:projects/setting-assets.tgz': @@ -5338,7 +5347,7 @@ packages: version: 0.0.0 '@rush-temp/tests-sanity@file:projects/tests-sanity.tgz': - resolution: {integrity: sha512-ATV1zKsky52Z+foUCIrGJZX7jLhBEeVQ+TDpcszuFXTQXJafT0/3iv27dKaiVWP+QohHIqtatRJ57vtspy4wxA==, tarball: file:projects/tests-sanity.tgz} + resolution: {integrity: sha512-+GqFouz7C0DH1XELz+ao/caxoc1Wcu3xYqZcRxdxV5wuqwco9FMf+7SnXWb37xsEWddeqPnWhIVT7BHuSSWGKg==, tarball: file:projects/tests-sanity.tgz} version: 0.0.0 '@rush-temp/tests-ws-sanity@file:projects/tests-ws-sanity.tgz': @@ -5422,7 +5431,7 @@ packages: version: 0.0.0 '@rush-temp/ui-next@file:projects/ui-next.tgz': - resolution: {integrity: sha512-oQCW5uUh89CQLOu8qv/M5srdHk4vOj95tTVSwUPzXo2rk4COeLtpwdV67lVYm+nQzadhiWdxUdmg85ckOMD7Xg==, tarball: file:projects/ui-next.tgz} + resolution: {integrity: sha512-9264HEAycfl7I6p179e4Zdx7aC3t3RfnWX2tNDIV/JoFsqeu/6wsbZq8YPCyqshTpU9S7l3mRnY9dxJq6vlTTg==, tarball: file:projects/ui-next.tgz} version: 0.0.0 '@rush-temp/ui@file:projects/ui.tgz': @@ -14666,106 +14675,115 @@ snapshots: '@hcengineering/platform': 0.7.28 '@hcengineering/ui': 0.7.28 - '@hcengineering/communication-client-query@0.1.155(typescript@5.3.3)': + '@hcengineering/communication-client-query@0.1.166(typescript@5.3.3)': dependencies: - '@hcengineering/communication-query': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-query': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) fast-equals: 5.2.2 typescript: 5.3.3 - '@hcengineering/communication-cockroach@0.1.155(typescript@5.3.3)': + '@hcengineering/communication-cockroach@0.1.166(typescript@5.3.3)': dependencies: - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-shared': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-shared': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) postgres: 3.4.5 typescript: 5.3.3 uuid: 11.0.5 - '@hcengineering/communication-query@0.1.155(typescript@5.3.3)': + '@hcengineering/communication-query@0.1.166(typescript@5.3.3)': dependencies: - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-shared': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-yaml': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-shared': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-yaml': 0.1.166(typescript@5.3.3) fast-equals: 5.2.2 typescript: 5.3.3 - '@hcengineering/communication-rest-client@0.1.155(typescript@5.3.3)': + '@hcengineering/communication-rest-client@0.1.166(typescript@5.3.3)': dependencies: - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-shared': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-shared': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) '@hcengineering/core': 0.7.28 snappyjs: 0.7.0 typescript: 5.3.3 - '@hcengineering/communication-rest-client@0.1.155(typescript@5.7.3)': + '@hcengineering/communication-rest-client@0.1.166(typescript@5.7.3)': dependencies: - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.7.3) - '@hcengineering/communication-shared': 0.1.155(typescript@5.7.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.7.3) + '@hcengineering/communication-shared': 0.1.166(typescript@5.7.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.7.3) '@hcengineering/core': 0.7.28 snappyjs: 0.7.0 typescript: 5.7.3 - '@hcengineering/communication-sdk-types@0.1.155(typescript@5.3.3)': + '@hcengineering/communication-sdk-types@0.1.166(typescript@5.3.3)': dependencies: - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) '@hcengineering/core': 0.7.28 typescript: 5.3.3 - '@hcengineering/communication-sdk-types@0.1.155(typescript@5.7.3)': + '@hcengineering/communication-sdk-types@0.1.166(typescript@5.7.3)': dependencies: - '@hcengineering/communication-types': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.7.3) '@hcengineering/core': 0.7.28 typescript: 5.7.3 - '@hcengineering/communication-server@0.1.155(typescript@5.3.3)': + '@hcengineering/communication-server@0.1.166(typescript@5.3.3)': dependencies: '@hcengineering/account-client': 0.7.28 - '@hcengineering/communication-cockroach': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-cockroach': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) '@hcengineering/core': 0.7.28 '@hcengineering/platform': 0.7.28 '@hcengineering/server-token': 0.7.28 typescript: 5.3.3 - '@hcengineering/communication-shared@0.1.155(typescript@5.3.3)': + '@hcengineering/communication-shared@0.1.166(typescript@5.3.3)': dependencies: - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) typescript: 5.3.3 - '@hcengineering/communication-shared@0.1.155(typescript@5.7.3)': + '@hcengineering/communication-shared@0.1.166(typescript@5.7.3)': dependencies: - '@hcengineering/communication-types': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.7.3) typescript: 5.7.3 - '@hcengineering/communication-types@0.1.155(typescript@5.3.3)': + '@hcengineering/communication-types@0.1.166(typescript@5.3.3)': dependencies: '@hcengineering/card': 0.7.28 '@hcengineering/core': 0.7.28 + '@hcengineering/tags': 0.7.28 typescript: 5.3.3 - '@hcengineering/communication-types@0.1.155(typescript@5.7.3)': + '@hcengineering/communication-types@0.1.166(typescript@5.6.2)': dependencies: '@hcengineering/card': 0.7.28 '@hcengineering/core': 0.7.28 + '@hcengineering/tags': 0.7.28 + typescript: 5.6.2 + + '@hcengineering/communication-types@0.1.166(typescript@5.7.3)': + dependencies: + '@hcengineering/card': 0.7.28 + '@hcengineering/core': 0.7.28 + '@hcengineering/tags': 0.7.28 typescript: 5.7.3 - '@hcengineering/communication-yaml@0.1.155(typescript@5.3.3)': + '@hcengineering/communication-yaml@0.1.166(typescript@5.3.3)': dependencies: - '@hcengineering/communication-shared': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-shared': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) js-yaml: 4.1.0 typescript: 5.3.3 - '@hcengineering/communication-yaml@0.1.155(typescript@5.7.3)': + '@hcengineering/communication-yaml@0.1.166(typescript@5.7.3)': dependencies: - '@hcengineering/communication-shared': 0.1.155(typescript@5.7.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-shared': 0.1.166(typescript@5.7.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.7.3) js-yaml: 4.1.0 typescript: 5.7.3 @@ -14779,12 +14797,25 @@ snapshots: dependencies: intl-messageformat: 10.7.14 + '@hcengineering/preference@0.7.28': + dependencies: + '@hcengineering/core': 0.7.28 + '@hcengineering/platform': 0.7.28 + '@hcengineering/ui': 0.7.28 + '@hcengineering/server-token@0.7.28': dependencies: '@hcengineering/core': 0.7.28 '@hcengineering/platform': 0.7.28 jwt-simple: 0.5.6 + '@hcengineering/tags@0.7.28': + dependencies: + '@hcengineering/core': 0.7.28 + '@hcengineering/platform': 0.7.28 + '@hcengineering/ui': 0.7.28 + '@hcengineering/view': 0.7.28 + '@hcengineering/theme@0.7.28': dependencies: '@hcengineering/analytics': 0.7.28 @@ -14807,6 +14838,13 @@ snapshots: plyr: 3.7.8 svelte: 4.2.19 + '@hcengineering/view@0.7.28': + dependencies: + '@hcengineering/core': 0.7.28 + '@hcengineering/platform': 0.7.28 + '@hcengineering/preference': 0.7.28 + '@hcengineering/ui': 0.7.28 + '@hocuspocus/common@2.15.2': dependencies: lib0: 0.2.99 @@ -16092,7 +16130,7 @@ snapshots: '@rush-temp/activity-resources@file:projects/activity-resources.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(@types/node@20.11.19)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(postcss-load-config@4.0.2(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3)))(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) '@types/jest': 29.5.12 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3))(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) @@ -16916,6 +16954,7 @@ snapshots: '@rush-temp/card-resources@file:projects/card-resources.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(@tiptap/pm@2.11.7)(@types/node@20.11.19)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(postcss-load-config@4.0.2(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3)))(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: + '@hcengineering/communication-types': 0.1.166(typescript@5.6.2) '@tiptap/core': 2.11.7(@tiptap/pm@2.11.7) '@types/html-to-text': 8.1.1 '@types/jest': 29.5.12 @@ -17010,7 +17049,7 @@ snapshots: '@rush-temp/chat-resources@file:projects/chat-resources.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(@types/node@20.11.19)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(postcss-load-config@4.0.2(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3)))(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-types': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.7.3) '@types/jest': 29.5.12 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3))(eslint@8.56.0)(typescript@5.7.3) '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.7.3) @@ -17170,8 +17209,8 @@ snapshots: '@rush-temp/client-resources@file:projects/client-resources.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(@types/node@20.11.19)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) '@types/jest': 29.5.12 '@types/snappyjs': 0.7.1 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3))(eslint@8.56.0)(typescript@5.3.3) @@ -18835,7 +18874,7 @@ snapshots: '@rush-temp/inbox-resources@file:projects/inbox-resources.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(@types/node@20.11.19)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(postcss-load-config@4.0.2(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3)))(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-types': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.7.3) '@types/jest': 29.5.12 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3))(eslint@8.56.0)(typescript@5.7.3) '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.7.3) @@ -21637,9 +21676,8 @@ snapshots: '@rush-temp/pod-inbound-mail@file:projects/pod-inbound-mail.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))': dependencies: - '@hcengineering/communication-rest-client': 0.1.155(typescript@5.7.3) - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.7.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-rest-client': 0.1.166(typescript@5.7.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.7.3) '@tsconfig/node16': 1.0.4 '@types/cors': 2.8.17 '@types/express': 4.17.21 @@ -21763,11 +21801,11 @@ snapshots: '@rush-temp/pod-msg2file@file:projects/pod-msg2file.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))': dependencies: - '@hcengineering/communication-rest-client': 0.1.155(typescript@5.7.3) - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.7.3) - '@hcengineering/communication-shared': 0.1.155(typescript@5.7.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.7.3) - '@hcengineering/communication-yaml': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-rest-client': 0.1.166(typescript@5.7.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.7.3) + '@hcengineering/communication-shared': 0.1.166(typescript@5.7.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.7.3) + '@hcengineering/communication-yaml': 0.1.166(typescript@5.7.3) '@tsconfig/node16': 1.0.4 '@types/cors': 2.8.17 '@types/express': 4.17.21 @@ -21849,7 +21887,7 @@ snapshots: '@rush-temp/pod-server@file:projects/pod-server.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(utf-8-validate@6.0.4)': dependencies: - '@hcengineering/communication-server': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-server': 0.1.166(typescript@5.3.3) '@types/body-parser': 1.19.5 '@types/cors': 2.8.17 '@types/express': 4.17.21 @@ -22016,7 +22054,7 @@ snapshots: - node-notifier - supports-color - '@rush-temp/pod-telegram-bot@file:projects/pod-telegram-bot.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(bufferutil@4.0.8)(encoding@0.1.13)(gcp-metadata@5.3.0(encoding@0.1.13))(snappy@7.2.2)(socks@2.8.3)(utf-8-validate@6.0.4)': + '@rush-temp/pod-telegram-bot@file:projects/pod-telegram-bot.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(encoding@0.1.13)(gcp-metadata@5.3.0(encoding@0.1.13))(snappy@7.2.2)(socks@2.8.3)': dependencies: '@telegraf/entity': 0.5.0 '@tsconfig/node16': 1.0.4 @@ -22048,7 +22086,6 @@ snapshots: ts-jest: 29.1.2(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(jest@29.7.0(@types/node@20.11.19)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3)))(typescript@5.3.3) ts-node: 10.9.2(@types/node@20.11.19)(typescript@5.3.3) typescript: 5.3.3 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.4) transitivePeerDependencies: - '@aws-sdk/credential-providers' - '@babel/core' @@ -22058,7 +22095,6 @@ snapshots: - '@swc/wasm' - babel-jest - babel-plugin-macros - - bufferutil - encoding - gcp-metadata - kerberos @@ -22067,7 +22103,6 @@ snapshots: - snappy - socks - supports-color - - utf-8-validate '@rush-temp/pod-telegram@file:projects/pod-telegram.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(bufferutil@4.0.8)(gcp-metadata@5.3.0(encoding@0.1.13))(snappy@7.2.2)(socks@2.8.3)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))(utf-8-validate@6.0.4)': dependencies: @@ -22305,9 +22340,9 @@ snapshots: '@rush-temp/presentation@file:projects/presentation.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(@types/node@20.11.19)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(postcss-load-config@4.0.2(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3)))(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-client-query': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-client-query': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) '@types/jest': 29.5.12 '@types/png-chunks-extract': 1.0.2 '@types/uuid': 8.3.4 @@ -23314,8 +23349,8 @@ snapshots: '@rush-temp/server-activity-resources@file:projects/server-activity-resources.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(@types/node@20.11.19)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) '@types/jest': 29.5.12 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3))(eslint@8.56.0)(typescript@5.3.3) '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3) @@ -23594,7 +23629,7 @@ snapshots: '@rush-temp/server-card-resources@file:projects/server-card-resources.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(@types/node@20.11.19)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.7.3) '@types/jest': 29.5.12 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3))(eslint@8.56.0)(typescript@5.7.3) '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.7.3) @@ -23877,8 +23912,8 @@ snapshots: '@rush-temp/server-core@file:projects/server-core.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) '@types/jest': 29.5.12 '@types/node': 20.11.19 '@types/uuid': 8.3.4 @@ -25182,8 +25217,8 @@ snapshots: '@rush-temp/server@file:projects/server.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-sdk-types': 0.1.155(typescript@5.3.3) - '@hcengineering/communication-types': 0.1.155(typescript@5.3.3) + '@hcengineering/communication-sdk-types': 0.1.166(typescript@5.3.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.3.3) '@types/jest': 29.5.12 '@types/node': 20.11.19 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3))(eslint@8.56.0)(typescript@5.3.3) @@ -26722,7 +26757,7 @@ snapshots: '@rush-temp/ui-next@file:projects/ui-next.tgz(@babel/core@7.23.9)(@jest/types@29.6.3)(@types/node@20.11.19)(babel-jest@29.7.0(@babel/core@7.23.9))(esbuild@0.24.2)(postcss-load-config@4.0.2(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3)))(postcss@8.4.35)(ts-node@10.9.2(@types/node@20.11.19)(typescript@5.3.3))': dependencies: - '@hcengineering/communication-types': 0.1.155(typescript@5.7.3) + '@hcengineering/communication-types': 0.1.166(typescript@5.7.3) '@tiptap/core': 2.11.7(@tiptap/pm@2.11.7) '@tiptap/pm': 2.11.7 '@types/dompurify': 3.0.5 diff --git a/models/card/package.json b/models/card/package.json index 2e5e34f2cf..4e2ec4986c 100644 --- a/models/card/package.json +++ b/models/card/package.json @@ -45,6 +45,7 @@ "@hcengineering/workbench": "^0.6.16", "@hcengineering/model-workbench": "^0.6.1", "@hcengineering/card-resources": "^0.6.0", - "@hcengineering/view": "^0.6.13" + "@hcengineering/view": "^0.6.13", + "@hcengineering/tags": "^0.6.16" } } diff --git a/models/card/src/index.ts b/models/card/src/index.ts index b6ded81bc9..5814ab4693 100644 --- a/models/card/src/index.ts +++ b/models/card/src/index.ts @@ -128,6 +128,13 @@ const listConfig: (BuildModelKey | string)[] = [ props: { fullSize: true }, displayProps: { key: 'tags', fixed: 'right' } }, + { + key: '', + presenter: card.component.LabelsPresenter, + label: card.string.Labels, + props: { fullSize: true }, + displayProps: { fixed: 'right', key: 'labels' } + }, { key: 'modifiedOn', displayProps: { fixed: 'right', dividerBefore: true } @@ -168,6 +175,12 @@ export function createSystemType ( '', '_class', { key: '', presenter: view.component.RolePresenter, label: card.string.Tags, props: { fullSize: true } }, + { + key: '', + presenter: card.component.LabelsPresenter, + label: card.string.Labels, + props: { fullSize: true } + }, 'modifiedOn' ] }) diff --git a/models/card/src/migration.ts b/models/card/src/migration.ts index 36fb941601..a2aaac2162 100644 --- a/models/card/src/migration.ts +++ b/models/card/src/migration.ts @@ -20,10 +20,12 @@ import { tryUpgrade, type MigrateOperation, type MigrationClient, - type MigrationUpgradeClient + type MigrationUpgradeClient, + createOrUpdate } from '@hcengineering/model' import view from '@hcengineering/view' import card from '.' +import tags from '@hcengineering/tags' export const cardOperation: MigrateOperation = { async migrate (client: MigrationClient, mode): Promise { @@ -56,6 +58,10 @@ export const cardOperation: MigrateOperation = { const tx = new TxOperations(client, core.account.System) await createDefaultProject(tx) } + }, + { + state: 'default-labels', + func: defaultLabels } ]) } @@ -172,3 +178,48 @@ async function createDefaultProject (tx: TxOperations): Promise { async function migrateSpaces (client: MigrationClient): Promise { await client.update(DOMAIN_CARD, { space: core.space.Workspace }, { space: card.space.Default }) } + +async function defaultLabels (client: Client): Promise { + const ops = new TxOperations(client, core.account.System) + await createOrUpdate( + ops, + tags.class.TagCategory, + core.space.Workspace, + { + icon: tags.icon.Tags, + label: 'Labels', + targetClass: card.class.Card, + tags: [], + default: true + }, + card.category.Labels + ) + + await createOrUpdate( + ops, + tags.class.TagElement, + core.space.Workspace, + { + title: 'Subscribed', + targetClass: card.class.Card, + description: '', + color: 17, // green + category: card.category.Labels + }, + card.label.Subscribed + ) + + await createOrUpdate( + ops, + tags.class.TagElement, + core.space.Workspace, + { + title: 'New messages', + targetClass: card.class.Card, + description: '', + color: 19, // orange + category: card.category.Labels + }, + card.label.NewMessages + ) +} diff --git a/models/card/src/plugin.ts b/models/card/src/plugin.ts index 15f41b6706..2ad28cbb61 100644 --- a/models/card/src/plugin.ts +++ b/models/card/src/plugin.ts @@ -21,6 +21,7 @@ import { mergeIds, type Resource } from '@hcengineering/platform' import { type Location, type ResolvedLocation } from '@hcengineering/ui/src/types' import { type LocationData } from '@hcengineering/workbench' import { type ActionCategory, type Action, type ViewAction } from '@hcengineering/view' +import { type TagCategory, type TagElement } from '@hcengineering/tags' export default mergeIds(cardId, card, { app: { @@ -36,7 +37,8 @@ export default mergeIds(cardId, card, { UnsetParent: '' as Ref> }, category: { - Card: '' as Ref + Card: '' as Ref, + Labels: '' as Ref }, ids: { MasterTags: '' as Ref, @@ -51,5 +53,9 @@ export default mergeIds(cardId, card, { CardTitleProvider: '' as Resource<(client: Client, ref: Ref, doc?: Doc) => Promise>, CardIdProvider: '' as Resource<(client: Client, ref: Ref, doc?: Doc) => Promise>, GetCardLink: '' as Resource<(doc: Doc, props: Record) => Promise> + }, + label: { + Subscribed: '' as Ref, + NewMessages: '' as Ref } }) diff --git a/packages/presentation/package.json b/packages/presentation/package.json index 55e40f8059..cd274a4155 100644 --- a/packages/presentation/package.json +++ b/packages/presentation/package.json @@ -43,9 +43,9 @@ "@hcengineering/analytics": "^0.6.0", "@hcengineering/client": "^0.6.18", "@hcengineering/collaborator-client": "^0.6.4", - "@hcengineering/communication-client-query": "0.1.155", - "@hcengineering/communication-sdk-types": "0.1.155", - "@hcengineering/communication-types": "0.1.155", + "@hcengineering/communication-client-query": "0.1.166", + "@hcengineering/communication-sdk-types": "0.1.166", + "@hcengineering/communication-types": "0.1.166", "@hcengineering/core": "^0.6.32", "@hcengineering/diffview": "^0.6.0", "@hcengineering/notification": "^0.6.23", diff --git a/packages/presentation/src/communication.ts b/packages/presentation/src/communication.ts index 242b735249..f957d40752 100644 --- a/packages/presentation/src/communication.ts +++ b/packages/presentation/src/communication.ts @@ -29,7 +29,10 @@ import { type NotificationContext, PatchType, type RichText, - type SocialID + type SocialID, + type CardType, + type Label, + type FindLabelsParams } from '@hcengineering/communication-types' import { type CreateFileEvent, @@ -42,9 +45,10 @@ import { type RemoveFileEvent, type RemoveReactionEvent, type RequestEvent, - RequestEventType, type ResponseEvent, - type UpdateNotificationContextEvent + type UpdateNotificationContextEvent, + MessageRequestEventType, + NotificationRequestEventType } from '@hcengineering/communication-sdk-types' import { type Client as PlatformClient, @@ -59,18 +63,20 @@ import { createMessagesQuery, createNotificationContextsQuery, createNotificationsQuery, + createLabelsQuery, initLiveQueries } from '@hcengineering/communication-client-query' import { getCurrentWorkspaceUuid, getFilesUrl } from './file' -export { createMessagesQuery, createNotificationsQuery, createNotificationContextsQuery } +export { createMessagesQuery, createNotificationsQuery, createNotificationContextsQuery, createLabelsQuery } interface Connection extends PlatformConnection { findMessages: (params: FindMessagesParams, queryId?: number) => Promise findMessagesGroups: (params: FindMessagesGroupsParams) => Promise findNotificationContexts: (params: FindNotificationContextParams, queryId?: number) => Promise findNotifications: (params: FindNotificationsParams, queryId?: number) => Promise + findLabels: (params: FindLabelsParams) => Promise sendEvent: (event: RequestEvent) => Promise unsubscribeQuery: (id: number) => Promise } @@ -115,7 +121,7 @@ class Client { async createThread (card: CardID, message: MessageID, thread: CardID): Promise { const event: CreateThreadEvent = { - type: RequestEventType.CreateThread, + type: MessageRequestEventType.CreateThread, card, message, thread @@ -124,11 +130,12 @@ class Client { await this.sendEvent(event) } - async createMessage (card: CardID, content: RichText): Promise { + async createMessage (card: CardID, cardType: CardType, content: RichText): Promise { const event: CreateMessageEvent = { - type: RequestEventType.CreateMessage, + type: MessageRequestEventType.CreateMessage, messageType: MessageType.Message, card, + cardType, content, creator: this.getSocialId() } @@ -138,7 +145,7 @@ class Client { async updateMessage (card: CardID, message: MessageID, content: RichText): Promise { const event: CreatePatchEvent = { - type: RequestEventType.CreatePatch, + type: MessageRequestEventType.CreatePatch, patchType: PatchType.update, card, message, @@ -150,7 +157,7 @@ class Client { async createReaction (card: CardID, message: MessageID, reaction: string): Promise { const event: CreateReactionEvent = { - type: RequestEventType.CreateReaction, + type: MessageRequestEventType.CreateReaction, card, message, reaction, @@ -161,7 +168,7 @@ class Client { async removeReaction (card: CardID, message: MessageID, reaction: string): Promise { const event: RemoveReactionEvent = { - type: RequestEventType.RemoveReaction, + type: MessageRequestEventType.RemoveReaction, card, message, reaction, @@ -179,7 +186,7 @@ class Client { size: number ): Promise { const event: CreateFileEvent = { - type: RequestEventType.CreateFile, + type: MessageRequestEventType.CreateFile, card, message, blobId, @@ -193,7 +200,7 @@ class Client { async removeFile (card: CardID, message: MessageID, blobId: BlobID): Promise { const event: RemoveFileEvent = { - type: RequestEventType.RemoveFile, + type: MessageRequestEventType.RemoveFile, card, message, blobId, @@ -204,7 +211,7 @@ class Client { async updateNotificationContext (context: ContextID, lastView?: Date): Promise { const event: UpdateNotificationContextEvent = { - type: RequestEventType.UpdateNotificationContext, + type: NotificationRequestEventType.UpdateNotificationContext, context, account: this.getAccount(), lastView @@ -231,6 +238,10 @@ class Client { return await this.connection.findNotifications(params, queryId) } + async findLabels (params: FindLabelsParams): Promise { + return await this.connection.findLabels(params) + } + async unsubscribeQuery (id: number): Promise { await this.connection.unsubscribeQuery(id) } diff --git a/packages/ui-next/package.json b/packages/ui-next/package.json index 57cde618a5..cb6bc701ae 100644 --- a/packages/ui-next/package.json +++ b/packages/ui-next/package.json @@ -42,7 +42,7 @@ "@hcengineering/analytics": "^0.6.0", "@hcengineering/attachment-resources": "^0.6.0", "@hcengineering/card": "^0.6.0", - "@hcengineering/communication-types": "0.1.155", + "@hcengineering/communication-types": "0.1.166", "@hcengineering/contact": "^0.6.24", "@hcengineering/contact-resources": "^0.6.0", "@hcengineering/core": "^0.6.32", diff --git a/packages/ui-next/src/components/message/MessageInput.svelte b/packages/ui-next/src/components/message/MessageInput.svelte index af67bcaa31..9cfcb232e8 100644 --- a/packages/ui-next/src/components/message/MessageInput.svelte +++ b/packages/ui-next/src/components/message/MessageInput.svelte @@ -18,7 +18,7 @@ import { Markup, RateLimiter } from '@hcengineering/core' import { tick, createEventDispatcher, onDestroy } from 'svelte' import { uploadFile, deleteFile, getCommunicationClient } from '@hcengineering/presentation' - import { MessageID, CardID } from '@hcengineering/communication-types' + import { MessageID, CardID, CardType } from '@hcengineering/communication-types' import { AttachmentPresenter } from '@hcengineering/attachment-resources' import TextInput from '../TextInput.svelte' @@ -28,6 +28,7 @@ import { type TextInputAction, UploadedFile } from '../../types' export let cardId: CardID | undefined = undefined + export let cardType: CardType | undefined = undefined export let messageId: MessageID | undefined = undefined export let content: Markup | undefined = undefined export let placeholder: IntlString | undefined = undefined @@ -66,8 +67,8 @@ } async function createMessage (markdown: string, files: UploadedFile[]): Promise { - if (cardId === undefined) return - const id = await communicationClient.createMessage(cardId, markdown) + if (cardId === undefined || cardType === undefined) return + const id = await communicationClient.createMessage(cardId, cardType, markdown) for (const file of files) { await communicationClient.createFile(cardId, id, file.blobId, file.type, file.filename, file.size) diff --git a/plugins/activity-resources/package.json b/plugins/activity-resources/package.json index ed4ca10a1f..4bf0e90544 100644 --- a/plugins/activity-resources/package.json +++ b/plugins/activity-resources/package.json @@ -51,7 +51,7 @@ "@hcengineering/ui-next": "^0.6.0", "@hcengineering/view": "^0.6.13", "@hcengineering/view-resources": "^0.6.0", - "@hcengineering/communication-types": "0.1.155", + "@hcengineering/communication-types": "0.1.166", "svelte": "^4.2.19" } } diff --git a/plugins/activity-resources/src/components/NewActivity.svelte b/plugins/activity-resources/src/components/NewActivity.svelte index 024dd89b3b..e3bd0a035c 100644 --- a/plugins/activity-resources/src/components/NewActivity.svelte +++ b/plugins/activity-resources/src/components/NewActivity.svelte @@ -96,7 +96,7 @@ {#if showInput}
- +
{/if} diff --git a/plugins/card-assets/lang/cs.json b/plugins/card-assets/lang/cs.json index eeaa09e130..901f0e40cf 100644 --- a/plugins/card-assets/lang/cs.json +++ b/plugins/card-assets/lang/cs.json @@ -35,6 +35,7 @@ "MasterDetailViews": "Zobrazení master-detail", "SelectType": "Vybrat typ", "CreateSpace": "Vytvořit prostor", - "NumberTypes": "{count, plural, one {# typ} few {# typy} other {# typů}}" + "NumberTypes": "{count, plural, one {# typ} few {# typy} other {# typů}}", + "Labels": "Štítky" } } \ No newline at end of file diff --git a/plugins/card-assets/lang/de.json b/plugins/card-assets/lang/de.json index bfcdf660d4..62b50b626f 100644 --- a/plugins/card-assets/lang/de.json +++ b/plugins/card-assets/lang/de.json @@ -35,6 +35,7 @@ "MasterDetailViews": "Master-Detail-Ansichten", "SelectType": "Typ auswählen", "CreateSpace": "Raum erstellen", - "NumberTypes": "{count, plural, one {# typ} other {# typen}}" + "NumberTypes": "{count, plural, one {# typ} other {# typen}}", + "Labels": "Labels" } } diff --git a/plugins/card-assets/lang/en.json b/plugins/card-assets/lang/en.json index 2b2c5eccfe..41509321da 100644 --- a/plugins/card-assets/lang/en.json +++ b/plugins/card-assets/lang/en.json @@ -35,6 +35,7 @@ "MasterDetailViews": "Master Detail Views", "SelectType": "Select Type", "CreateSpace": "Create space", - "NumberTypes": "{count, plural, one {# type} other {# types}}" + "NumberTypes": "{count, plural, one {# type} other {# types}}", + "Labels": "Labels" } } \ No newline at end of file diff --git a/plugins/card-assets/lang/es.json b/plugins/card-assets/lang/es.json index 2d50fb22dc..2e71ea7d30 100644 --- a/plugins/card-assets/lang/es.json +++ b/plugins/card-assets/lang/es.json @@ -35,6 +35,7 @@ "MasterDetailViews": "Vistas Maestro-Detalle", "SelectType": "Seleccionar tipo", "CreateSpace": "Crear espacio", - "NumberTypes": "{count, plural, one {# tipo} other {# tipos}}" + "NumberTypes": "{count, plural, one {# tipo} other {# tipos}}", + "Labels": "Etiquetas" } } \ No newline at end of file diff --git a/plugins/card-assets/lang/fr.json b/plugins/card-assets/lang/fr.json index 28e0750c98..d7930938e8 100644 --- a/plugins/card-assets/lang/fr.json +++ b/plugins/card-assets/lang/fr.json @@ -35,6 +35,7 @@ "MasterDetailViews": "Vues maître-détail", "SelectType": "Sélectionner le type", "CreateSpace": "Créer un espace", - "NumberTypes": "{count, plural, one {# type} other {# types}}" + "NumberTypes": "{count, plural, one {# type} other {# types}}", + "Labels": "Étiquettes" } } \ No newline at end of file diff --git a/plugins/card-assets/lang/it.json b/plugins/card-assets/lang/it.json index a7188903da..7f80b8b07c 100644 --- a/plugins/card-assets/lang/it.json +++ b/plugins/card-assets/lang/it.json @@ -34,6 +34,7 @@ "ChangeTypeWarning": "Avviso: Cambiare il tipo di un'scheda rimuoverà tutti i dati per qualsiasi attributo che non esistono nel tipo di destinazione. I dati precedenti dell'attributo possono essere ripristinati modificando nuovamente il carta in un tipo precedente. Il contenuto della scheda non sarà influenzato.", "MasterDetailViews": "Viste Master-Detail", "SelectType": "Seleziona il tipo", - "CreateSpace": "Crea spazio" + "CreateSpace": "Crea spazio", + "Labels": "Etichette" } } \ No newline at end of file diff --git a/plugins/card-assets/lang/pt.json b/plugins/card-assets/lang/pt.json index 9e760c4ec3..0e2819a7a6 100644 --- a/plugins/card-assets/lang/pt.json +++ b/plugins/card-assets/lang/pt.json @@ -35,6 +35,7 @@ "MasterDetailViews": "Visualizações Master-Detail", "SelectType": "Selecionar tipo", "CreateSpace": "Criar espaço", - "NumberTypes": "{count, plural, one {# tipo} other {# tipos}}" + "NumberTypes": "{count, plural, one {# tipo} other {# tipos}}", + "Labels": "Etiquetas" } } \ No newline at end of file diff --git a/plugins/card-assets/lang/ru.json b/plugins/card-assets/lang/ru.json index 92ada63c7e..0bb1a35588 100644 --- a/plugins/card-assets/lang/ru.json +++ b/plugins/card-assets/lang/ru.json @@ -35,6 +35,7 @@ "MasterDetailViews": "Представления мастер-деталь", "SelectType": "Выбрать тип", "CreateSpace": "Создать пространство", - "NumberTypes": "{count, plural, one {# тип} few {# типа} other {# типов}}" + "NumberTypes": "{count, plural, one {# тип} few {# типа} other {# типов}}", + "Labels": "Метки" } } \ No newline at end of file diff --git a/plugins/card-assets/lang/zh.json b/plugins/card-assets/lang/zh.json index 6036cc1edf..1aca44b0be 100644 --- a/plugins/card-assets/lang/zh.json +++ b/plugins/card-assets/lang/zh.json @@ -35,6 +35,7 @@ "MasterDetailViews": "主细节视图", "SelectType": "选择类型", "CreateSpace": "创建空间", - "NumberTypes": "{count, plural, one {# 类型} other {# 类型}}" + "NumberTypes": "{count, plural, one {# 类型} other {# 类型}}", + "Labels": "标签" } } \ No newline at end of file diff --git a/plugins/card-resources/package.json b/plugins/card-resources/package.json index 7290ce4cb4..2c47fe201d 100644 --- a/plugins/card-resources/package.json +++ b/plugins/card-resources/package.json @@ -40,6 +40,7 @@ }, "dependencies": { "@hcengineering/presentation": "^0.6.3", + "@hcengineering/communication-types": "0.1.166", "@hcengineering/core": "^0.6.32", "@hcengineering/ui": "^0.6.15", "@hcengineering/setting": "^0.6.17", @@ -52,6 +53,8 @@ "@hcengineering/text": "^0.6.5", "@hcengineering/panel": "^0.6.23", "@hcengineering/rank": "^0.6.4", + "@hcengineering/tags": "^0.6.16", + "@hcengineering/tags-resources": "^0.6.0", "@hcengineering/view": "^0.6.13", "@hcengineering/text-editor": "^0.6.0", "@hcengineering/text-editor-resources": "^0.6.0", diff --git a/plugins/card-resources/src/components/LabelsPresenter.svelte b/plugins/card-resources/src/components/LabelsPresenter.svelte new file mode 100644 index 0000000000..1645cf1d1a --- /dev/null +++ b/plugins/card-resources/src/components/LabelsPresenter.svelte @@ -0,0 +1,46 @@ + + + + +{#if tags.length > 0} +
+ {#each tags as tagElement (tagElement._id)} + + {/each} +
+{/if} diff --git a/plugins/card-resources/src/index.ts b/plugins/card-resources/src/index.ts index c60b6e803e..a458f572ab 100644 --- a/plugins/card-resources/src/index.ts +++ b/plugins/card-resources/src/index.ts @@ -46,6 +46,7 @@ import CreateCardButton from './components/CreateCardButton.svelte' import CardArrayEditor from './components/CardArrayEditor.svelte' import NewCardHeader from './components/navigator/NewCardHeader.svelte' import SpacePresenter from './components/navigator/SpacePresenter.svelte' +import LabelsPresenter from './components/LabelsPresenter.svelte' export { default as CardSelector } from './components/CardSelector.svelte' @@ -74,7 +75,8 @@ export default async (): Promise => ({ CreateCardButton, CardArrayEditor, NewCardHeader, - SpacePresenter + SpacePresenter, + LabelsPresenter }, completion: { CardQuery: queryCard diff --git a/plugins/card-resources/src/plugin.ts b/plugins/card-resources/src/plugin.ts index de01ee7f3e..e8df8e694a 100644 --- a/plugins/card-resources/src/plugin.ts +++ b/plugins/card-resources/src/plugin.ts @@ -45,7 +45,8 @@ export default mergeIds(cardId, card, { CreateCardButton: '' as AnyComponent, CardArrayEditor: '' as AnyComponent, NewCardHeader: '' as AnyComponent, - SpacePresenter: '' as AnyComponent + SpacePresenter: '' as AnyComponent, + LabelsPresenter: '' as AnyComponent }, completion: { CardQuery: '' as Resource, @@ -86,6 +87,7 @@ export default mergeIds(cardId, card, { MasterDetailViews: '' as IntlString, SelectType: '' as IntlString, CreateSpace: '' as IntlString, - NumberTypes: '' as IntlString + NumberTypes: '' as IntlString, + Labels: '' as IntlString } }) diff --git a/plugins/chat-resources/package.json b/plugins/chat-resources/package.json index 5322a16e1d..8111a6eeaa 100644 --- a/plugins/chat-resources/package.json +++ b/plugins/chat-resources/package.json @@ -41,7 +41,7 @@ "@hcengineering/analytics": "^0.6.0", "@hcengineering/card": "^0.6.0", "@hcengineering/chat": "^0.6.0", - "@hcengineering/communication-types": "0.1.155", + "@hcengineering/communication-types": "0.1.166", "@hcengineering/contact": "^0.6.24", "@hcengineering/contact-resources": "^0.6.0", "@hcengineering/core": "^0.6.32", diff --git a/plugins/chat-resources/src/components/ChatBody.svelte b/plugins/chat-resources/src/components/ChatBody.svelte index c90a30f580..f58c204312 100644 --- a/plugins/chat-resources/src/components/ChatBody.svelte +++ b/plugins/chat-resources/src/components/ChatBody.svelte @@ -213,8 +213,7 @@ readMessagesTimer = undefined } readMessagesTimer = setTimeout(async () => { - if (context == null) return - if (context.lastView && context.lastView > date) return + if (context == null || context.lastView >= date) return await communicationClient.updateNotificationContext(context.id, date) }, 500) } diff --git a/plugins/chat-resources/src/components/ChatInput.svelte b/plugins/chat-resources/src/components/ChatInput.svelte index e4554f8330..177d29736d 100644 --- a/plugins/chat-resources/src/components/ChatInput.svelte +++ b/plugins/chat-resources/src/components/ChatInput.svelte @@ -22,4 +22,9 @@ export let card: Card - + diff --git a/plugins/chat-resources/src/components/ChatNavigation.svelte b/plugins/chat-resources/src/components/ChatNavigation.svelte index 10eb6bff0d..aa1b0aebcd 100644 --- a/plugins/chat-resources/src/components/ChatNavigation.svelte +++ b/plugins/chat-resources/src/components/ChatNavigation.svelte @@ -19,10 +19,10 @@ import { NavigationList, NavigationSection } from '@hcengineering/ui-next' import { languageStore, Scroller } from '@hcengineering/ui' import { Ref, SortingOrder, Class } from '@hcengineering/core' - import { NotificationContext } from '@hcengineering/communication-types' + import { NotificationContext, SubscriptionLabelID, Label } from '@hcengineering/communication-types' import { SavedView } from '@hcengineering/workbench-resources' import { chatId } from '@hcengineering/chat' - import { createQuery, LiveQuery } from '@hcengineering/presentation' + import { createQuery, LiveQuery, createLabelsQuery, getClient } from '@hcengineering/presentation' import { cardsToChatSections, NavigatorState, navigatorStateStore, toggleSection } from '../navigator' @@ -32,34 +32,51 @@ const cardsLimit = 8 const dispatch = createEventDispatcher() + const client = getClient() + const hierarchy = client.getHierarchy() - const cardsQueryByType = new Map, { query: LiveQuery, limit: number }>() + const cardsQueryByType = new Map, { query: LiveQuery, ids: Ref[], limit: number }>() const typesQuery = createQuery() + const labelsQuery = createLabelsQuery() let cardsByType = new Map, { cards: Card[], total: number }>() let types: MasterTag[] = [] + let labels: Label[] = [] let sections: NavigationSection[] = [] - $: typesQuery.query(cardPlugin.class.MasterTag, {}, (result) => { + $: typesQuery.query(cardPlugin.class.MasterTag, { extends: cardPlugin.class.Card }, (result) => { types = result.filter((p) => p.removed !== true) }) - $: loadObjects(types) + $: loadObjects(types, labels) - function loadObjects (types: MasterTag[]): void { - if (types.length === 0) return + $: labelsQuery.query({ label: SubscriptionLabelID }, (res) => { + labels = res + }) + + function loadObjects (types: MasterTag[], labels: Label[]): void { + if (labels.length === 0) return for (const type of types) { - const { query, limit } = cardsQueryByType.get(type._id) ?? { - query: createQuery(), - limit: cardsLimit + const typeLabels = labels.filter((it) => it.cardType === type._id || hierarchy.isDerived(it.cardType, type._id)) + + if (typeLabels.length === 0) { + cardsQueryByType.get(type._id)?.query.unsubscribe() + cardsQueryByType.delete(type._id) + continue } - cardsQueryByType.set(type._id, { query, limit }) + const ids = typeLabels.map((it) => it.card) as Ref[] + const { query, limit } = cardsQueryByType.get(type._id) ?? { + query: createQuery(), + ids, + limit: cardsLimit + } + cardsQueryByType.set(type._id, { query, ids, limit }) query.query( type._id as Ref>, - {}, + { _id: { $in: ids } }, (res) => { if (res.length === 0) { cardsByType.delete(type._id) @@ -110,7 +127,7 @@ const query = cardsQueryByType.get(event.detail) if (query !== undefined) { query.limit += cardsLimit - loadObjects(types) + loadObjects(types, labels) } } diff --git a/plugins/chat-resources/src/components/ChatWidget.svelte b/plugins/chat-resources/src/components/ChatWidget.svelte index dd2371d872..0002ff0dac 100644 --- a/plugins/chat-resources/src/components/ChatWidget.svelte +++ b/plugins/chat-resources/src/components/ChatWidget.svelte @@ -127,7 +127,7 @@ } if (threadId != null) { - const id = await communicationClient.createMessage(threadId, markdown) + const id = await communicationClient.createMessage(threadId, chat.masterTag.Thread, markdown) for (const file of files) { await communicationClient.createFile(threadId, id, file.blobId, file.type, file.filename, file.size) } diff --git a/plugins/client-resources/package.json b/plugins/client-resources/package.json index bff90b2d89..cf5eea5ac1 100644 --- a/plugins/client-resources/package.json +++ b/plugins/client-resources/package.json @@ -40,8 +40,8 @@ "dependencies": { "@hcengineering/analytics": "^0.6.0", "@hcengineering/client": "^0.6.18", - "@hcengineering/communication-sdk-types": "0.1.155", - "@hcengineering/communication-types": "0.1.155", + "@hcengineering/communication-sdk-types": "0.1.166", + "@hcengineering/communication-types": "0.1.166", "@hcengineering/core": "^0.6.32", "@hcengineering/platform": "^0.6.11", "@hcengineering/rpc": "^0.6.5", diff --git a/plugins/client-resources/src/connection.ts b/plugins/client-resources/src/connection.ts index 1216a66ad1..e0475d6988 100644 --- a/plugins/client-resources/src/connection.ts +++ b/plugins/client-resources/src/connection.ts @@ -64,10 +64,12 @@ import { uncompress } from 'snappyjs' import { HelloRequest, HelloResponse, ReqId, type Response, RPCHandler } from '@hcengineering/rpc' import { EventResult } from '@hcengineering/communication-sdk-types' import { + FindLabelsParams, FindMessagesGroupsParams, FindMessagesParams, FindNotificationContextParams, FindNotificationsParams, + Label, Message, MessagesGroup, NotificationContext @@ -870,6 +872,10 @@ class Connection implements ClientConnection { return await this.sendRequest({ method: 'findMessages', params: [params, queryId] }) } + async findLabels (params: FindLabelsParams): Promise { + return await this.sendRequest({ method: 'findLabels', params: [params] }) + } + async findMessagesGroups (params: FindMessagesGroupsParams): Promise { return await this.sendRequest({ method: 'findMessagesGroups', params: [params] }) } diff --git a/plugins/inbox-resources/package.json b/plugins/inbox-resources/package.json index 339bb50cdf..12acf4f43f 100644 --- a/plugins/inbox-resources/package.json +++ b/plugins/inbox-resources/package.json @@ -40,7 +40,7 @@ "dependencies": { "@hcengineering/analytics": "^0.6.0", "@hcengineering/card": "^0.6.0", - "@hcengineering/communication-types": "0.1.155", + "@hcengineering/communication-types": "0.1.166", "@hcengineering/contact": "^0.6.24", "@hcengineering/contact-resources": "^0.6.0", "@hcengineering/core": "^0.6.32", diff --git a/plugins/tags-resources/src/index.ts b/plugins/tags-resources/src/index.ts index 799e4abc26..c38f8ba856 100644 --- a/plugins/tags-resources/src/index.ts +++ b/plugins/tags-resources/src/index.ts @@ -41,7 +41,7 @@ import DraftTagsEditor from './components/DraftTagsEditor.svelte' import TagsFilterPresenter from './components/TagsFilterPresenter.svelte' import DocTagsEditor from './components/DocTagsEditor.svelte' -export { WeightPopup, TagElement, selectedTagElements } +export { WeightPopup, TagElement, selectedTagElements, TagElementPresenter } export async function tagsInResult (filter: Filter, onUpdate: () => void): Promise> { const result = await getRefs(filter, onUpdate) return { $in: result } diff --git a/pods/server/package.json b/pods/server/package.json index a767074e99..547401c956 100644 --- a/pods/server/package.json +++ b/pods/server/package.json @@ -61,7 +61,7 @@ "dependencies": { "@hcengineering/analytics": "^0.6.0", "@hcengineering/analytics-service": "^0.6.0", - "@hcengineering/communication-server": "0.1.155", + "@hcengineering/communication-server": "0.1.166", "@hcengineering/contact": "^0.6.24", "@hcengineering/core": "^0.6.32", "@hcengineering/kafka": "^0.6.0", diff --git a/pods/server/src/server.ts b/pods/server/src/server.ts index 9fcb183d01..7066490811 100644 --- a/pods/server/src/server.ts +++ b/pods/server/src/server.ts @@ -130,6 +130,7 @@ export function start ( findMessagesGroups: async () => [], findNotificationContexts: async () => [], findNotifications: async () => [], + findLabels: async () => [], unsubscribeQuery: async () => {}, event: async () => { return {} diff --git a/server-plugins/activity-resources/package.json b/server-plugins/activity-resources/package.json index f61280ee0d..f25f84e244 100644 --- a/server-plugins/activity-resources/package.json +++ b/server-plugins/activity-resources/package.json @@ -48,7 +48,7 @@ "@hcengineering/server-core": "^0.6.1", "@hcengineering/server-notification-resources": "^0.6.0", "@hcengineering/text-core": "^0.6.0", - "@hcengineering/communication-sdk-types": "0.1.155", - "@hcengineering/communication-types": "0.1.155" + "@hcengineering/communication-sdk-types": "0.1.166", + "@hcengineering/communication-types": "0.1.166" } } diff --git a/server-plugins/activity-resources/src/newActivity.ts b/server-plugins/activity-resources/src/newActivity.ts index 2b69ad11a9..8964b818b9 100644 --- a/server-plugins/activity-resources/src/newActivity.ts +++ b/server-plugins/activity-resources/src/newActivity.ts @@ -3,7 +3,7 @@ import { Card } from '@hcengineering/card' import { TriggerControl } from '@hcengineering/server-core' import activity from '@hcengineering/activity' import { ActivityControl } from '@hcengineering/server-activity' -import { RequestEventType, ServerApi as CommunicationApi } from '@hcengineering/communication-sdk-types' +import { ServerApi as CommunicationApi, MessageRequestEventType } from '@hcengineering/communication-sdk-types' import { ActivityAttributeUpdate, ActivityMessageData, @@ -78,9 +78,10 @@ async function createMessages ( account: systemAccount }, { - type: RequestEventType.CreateMessage, + type: MessageRequestEventType.CreateMessage, messageType: MessageType.Activity, card: card._id, + cardType: card._class, content: await getActivityContent(control, data, card), creator: tx.modifiedBy, data diff --git a/server-plugins/card-resources/package.json b/server-plugins/card-resources/package.json index 7a050599dd..836eaff651 100644 --- a/server-plugins/card-resources/package.json +++ b/server-plugins/card-resources/package.json @@ -43,7 +43,7 @@ "@hcengineering/core": "^0.6.32", "@hcengineering/platform": "^0.6.11", "@hcengineering/server-core": "^0.6.1", - "@hcengineering/communication-sdk-types": "0.1.155", + "@hcengineering/communication-sdk-types": "0.1.166", "@hcengineering/server-contact": "^0.6.1", "@hcengineering/contact": "^0.6.24" } diff --git a/server-plugins/card-resources/src/index.ts b/server-plugins/card-resources/src/index.ts index 4770abe238..48f1deb794 100644 --- a/server-plugins/card-resources/src/index.ts +++ b/server-plugins/card-resources/src/index.ts @@ -35,7 +35,7 @@ import core, { import { TriggerControl } from '@hcengineering/server-core' import setting from '@hcengineering/setting' import view from '@hcengineering/view' -import { RequestEventType } from '@hcengineering/communication-sdk-types' +import { NotificationRequestEventType } from '@hcengineering/communication-sdk-types' import { getEmployee, getPersonSpaces } from '@hcengineering/server-contact' import contact from '@hcengineering/contact' @@ -412,8 +412,9 @@ async function updateCollaborators (control: TriggerControl, ctx: TxCreateDoc { + const result = await ctx.communicationApi.findLabels(this.getCommunicationCtx(), params) + await ctx.sendResponse(ctx.requestId, result) + } + async unsubscribeQuery (ctx: ClientSessionCtx, id: number): Promise { this.lastRequest = Date.now() await ctx.communicationApi.unsubscribeQuery(this.getCommunicationCtx(), id) diff --git a/server/server/src/sessionManager.ts b/server/server/src/sessionManager.ts index 737905a72e..a0608e3269 100644 --- a/server/server/src/sessionManager.ts +++ b/server/server/src/sessionManager.ts @@ -913,6 +913,7 @@ export class TSessionManager implements SessionManager { ticks: this.timeouts.reconnectTimeout * ticksPerSecond, operation: () => { this.reconnectIds.delete(sessionRef.session.sessionId) + void communicationApi.closeSession(sessionRef.session.sessionId) const user = sessionRef.session.getUser() if (workspace !== undefined) { const another = Array.from(workspace.sessions.values()).findIndex((p) => p.session.getUser() === user) diff --git a/services/mail/pod-inbound-mail/package.json b/services/mail/pod-inbound-mail/package.json index 571fe293d6..1f2bf02bf7 100644 --- a/services/mail/pod-inbound-mail/package.json +++ b/services/mail/pod-inbound-mail/package.json @@ -61,9 +61,8 @@ "@hcengineering/analytics-service": "^0.6.0", "@hcengineering/api-client": "^0.6.0", "@hcengineering/card": "^0.6.0", - "@hcengineering/communication-rest-client": "0.1.155", - "@hcengineering/communication-sdk-types": "0.1.155", - "@hcengineering/communication-types": "0.1.155", + "@hcengineering/communication-rest-client": "0.1.166", + "@hcengineering/communication-types": "0.1.166", "@hcengineering/contact": "^0.6.24", "@hcengineering/core": "^0.6.32", "@hcengineering/mail": "^0.6.0", diff --git a/services/mail/pod-inbound-mail/src/message.ts b/services/mail/pod-inbound-mail/src/message.ts index 25cd613797..b3a6bcf53e 100644 --- a/services/mail/pod-inbound-mail/src/message.ts +++ b/services/mail/pod-inbound-mail/src/message.ts @@ -19,7 +19,6 @@ import { type RestClient as CommunicationClient, createRestClient as getCommunicationClient } from '@hcengineering/communication-rest-client' -import { type CreateFileEvent, type CreateMessageEvent, RequestEventType } from '@hcengineering/communication-sdk-types' import { MessageType } from '@hcengineering/communication-types' import contact, { PersonSpace } from '@hcengineering/contact' import { @@ -267,28 +266,25 @@ async function saveMessageToSpaces ( ctx.info('Created new thread', { mailId, threadId, spaceId }) } - const msgEvent: CreateMessageEvent = { - type: RequestEventType.CreateMessage, - messageType: MessageType.Message, - card: threadId, + const messageId = await msgClient.createMessage( + threadId, + mail.class.MailThread, content, - creator: modifiedBy - } - const { id: messageId } = (await msgClient.event(msgEvent)) as any + modifiedBy, + MessageType.Message + ) ctx.info('Created message', { mailId, messageId, threadId }) for (const a of attachments) { - const fileEvent: CreateFileEvent = { - type: RequestEventType.CreateFile, - card: threadId, - message: messageId, - blobId: a.id as Ref, - fileType: a.contentType, - filename: a.name, - size: a.data.length, - creator: modifiedBy - } - await msgClient.event(fileEvent) + await msgClient.createFile( + threadId, + messageId, + a.id as Ref, + a.contentType, + a.name, + a.data.length, + modifiedBy + ) } await client.createDoc( diff --git a/services/msg2file/package.json b/services/msg2file/package.json index 5007c86eb1..977ecda461 100644 --- a/services/msg2file/package.json +++ b/services/msg2file/package.json @@ -57,11 +57,11 @@ "dependencies": { "@hcengineering/api-client": "^0.6.0", "@hcengineering/card": "^0.6.0", - "@hcengineering/communication-types": "0.1.155", - "@hcengineering/communication-shared": "0.1.155", - "@hcengineering/communication-yaml": "0.1.155", - "@hcengineering/communication-sdk-types": "0.1.155", - "@hcengineering/communication-rest-client": "0.1.155", + "@hcengineering/communication-types": "0.1.166", + "@hcengineering/communication-shared": "0.1.166", + "@hcengineering/communication-yaml": "0.1.166", + "@hcengineering/communication-sdk-types": "0.1.166", + "@hcengineering/communication-rest-client": "0.1.166", "@hcengineering/core": "^0.6.32", "@hcengineering/platform": "^0.6.11", "@hcengineering/server-client": "^0.6.0", diff --git a/services/msg2file/src/worker.ts b/services/msg2file/src/worker.ts index 95f57f5562..0793b85f3f 100644 --- a/services/msg2file/src/worker.ts +++ b/services/msg2file/src/worker.ts @@ -28,7 +28,7 @@ import { import cardPlugin, { type Card } from '@hcengineering/card' import yaml from 'js-yaml' import { v4 as uuid } from 'uuid' -import { RequestEventType } from '@hcengineering/communication-sdk-types' +import { MessageRequestEventType } from '@hcengineering/communication-sdk-types' import { retry } from '@hcengineering/communication-shared' import { StorageAdapter } from '@hcengineering/server-core' import { deserializeMessage } from '@hcengineering/communication-yaml' @@ -386,7 +386,7 @@ async function createGroup ( await retry( async () => await client.event({ - type: RequestEventType.CreateMessagesGroup, + type: MessageRequestEventType.CreateMessagesGroup, group: { card, blobId, @@ -403,7 +403,7 @@ async function removeGroup (client: CommunicationRestClient, card: CardID, blobI await retry( async () => await client.event({ - type: RequestEventType.RemoveMessagesGroup, + type: MessageRequestEventType.RemoveMessagesGroup, card, blobId }),