diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 75a27a72e5..0f470446ff 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -17522,6 +17522,9 @@ importers: '@hcengineering/text-markdown': specifier: workspace:^0.7.20 version: link:../../foundations/core/packages/text-markdown + '@hcengineering/time': + specifier: workspace:^0.7.0 + version: link:../time '@hcengineering/ui': specifier: workspace:^0.7.0 version: link:../../packages/ui @@ -61380,7 +61383,7 @@ snapshots: node-loader@2.0.0(webpack@5.102.1): dependencies: loader-utils: 2.0.4 - webpack: 5.102.1(esbuild@0.25.12)(webpack-cli@5.1.4) + webpack: 5.102.1 node-localstorage@2.2.1: dependencies: diff --git a/models/card/src/index.ts b/models/card/src/index.ts index f301c795a7..d2233ca7be 100644 --- a/models/card/src/index.ts +++ b/models/card/src/index.ts @@ -568,6 +568,21 @@ export function createModel (builder: Builder): void { locationDataResolver: card.resolver.LocationData, navigatorModel: { specials: [ + { + id: 'my-cards', + label: card.string.MyCards, + icon: card.icon.Card, + component: card.component.MyCards, + componentProps: { + icon: card.icon.Card, + config: [ + ['assigned', view.string.Assigned, {}], + ['created', view.string.Created, {}], + ['subscribed', view.string.Subscribed, {}] + ] + }, + position: 'top' + }, { id: 'all', label: card.string.AllCards, diff --git a/plugins/card-assets/lang/cs.json b/plugins/card-assets/lang/cs.json index 51c4d78f81..52a692c039 100644 --- a/plugins/card-assets/lang/cs.json +++ b/plugins/card-assets/lang/cs.json @@ -72,6 +72,8 @@ "Import": "Importovat", "Export": "Exportovat", "CardUpdated": "Karta aktualizována", - "CardCreated": "Karta vytvořena" + "CardCreated": "Karta vytvořena", + "MyCards": "Moje karty", + "GotoMyCards": "Přejít na moje karty" } } diff --git a/plugins/card-assets/lang/de.json b/plugins/card-assets/lang/de.json index 902126e967..a486d132f1 100644 --- a/plugins/card-assets/lang/de.json +++ b/plugins/card-assets/lang/de.json @@ -72,6 +72,8 @@ "Import": "Importieren", "Export": "Exportieren", "CardUpdated": "Karte aktualisiert", - "CardCreated": "Karte erstellt" + "CardCreated": "Karte erstellt", + "MyCards": "Meine Karten", + "GotoMyCards": "Zu meinen Karten" } } diff --git a/plugins/card-assets/lang/en.json b/plugins/card-assets/lang/en.json index 0b9023c487..663cb7d3a5 100644 --- a/plugins/card-assets/lang/en.json +++ b/plugins/card-assets/lang/en.json @@ -72,6 +72,8 @@ "Import": "Import", "Export": "Export", "CardUpdated": "Card updated", - "CardCreated": "Card created" + "CardCreated": "Card created", + "MyCards": "My cards", + "GotoMyCards": "Go to my cards" } } diff --git a/plugins/card-assets/lang/es.json b/plugins/card-assets/lang/es.json index 8205357c9f..a2cca09825 100644 --- a/plugins/card-assets/lang/es.json +++ b/plugins/card-assets/lang/es.json @@ -72,6 +72,8 @@ "Import": "Importar", "Export": "Exportar", "CardUpdated": "Tarjeta actualizada", - "CardCreated": "Tarjeta creada" + "CardCreated": "Tarjeta creada", + "MyCards": "Mis tarjetas", + "GotoMyCards": "Ir a mis tarjetas" } } diff --git a/plugins/card-assets/lang/fr.json b/plugins/card-assets/lang/fr.json index 2657f7634c..f3b45f02cd 100644 --- a/plugins/card-assets/lang/fr.json +++ b/plugins/card-assets/lang/fr.json @@ -72,6 +72,8 @@ "Import": "Importer", "Export": "Exporter", "CardUpdated": "Carte mise à jour", - "CardCreated": "Carte créée" + "CardCreated": "Carte créée", + "MyCards": "Mes cartes", + "GotoMyCards": "Aller à mes cartes" } } diff --git a/plugins/card-assets/lang/it.json b/plugins/card-assets/lang/it.json index ba7f95d464..0c8ceb0e10 100644 --- a/plugins/card-assets/lang/it.json +++ b/plugins/card-assets/lang/it.json @@ -72,6 +72,8 @@ "Import": "Importa", "Export": "Esporta", "CardUpdated": "Scheda aggiornata", - "CardCreated": "Scheda creata" + "CardCreated": "Scheda creata", + "MyCards": "Le mie carte", + "GotoMyCards": "Vai alle mie carte" } } diff --git a/plugins/card-assets/lang/ja.json b/plugins/card-assets/lang/ja.json index c589cf68d3..846aea77bf 100644 --- a/plugins/card-assets/lang/ja.json +++ b/plugins/card-assets/lang/ja.json @@ -72,6 +72,8 @@ "Import": "インポート", "Export": "エクスポート", "CardUpdated": "カードが更新されました", - "CardCreated": "カードが作成されました" + "CardCreated": "カードが作成されました", + "MyCards": "マイカード", + "GotoMyCards": "マイカードへ移動" } } diff --git a/plugins/card-assets/lang/pt-br.json b/plugins/card-assets/lang/pt-br.json index 304615abac..804dd3b6c6 100644 --- a/plugins/card-assets/lang/pt-br.json +++ b/plugins/card-assets/lang/pt-br.json @@ -72,6 +72,8 @@ "Import": "Importar", "Export": "Exportar", "CardUpdated": "Cartão atualizado", - "CardCreated": "Cartão criado" + "CardCreated": "Cartão criado", + "MyCards": "Meus cartões", + "GotoMyCards": "Ir para meus cartões" } } diff --git a/plugins/card-assets/lang/pt.json b/plugins/card-assets/lang/pt.json index e5eb7e1ae9..b82442690d 100644 --- a/plugins/card-assets/lang/pt.json +++ b/plugins/card-assets/lang/pt.json @@ -72,6 +72,8 @@ "Import": "Importar", "Export": "Exportar", "CardUpdated": "Cartão atualizado", - "CardCreated": "Cartão criado" + "CardCreated": "Cartão criado", + "MyCards": "Meus cartões", + "GotoMyCards": "Ir para meus cartões" } } diff --git a/plugins/card-assets/lang/ru.json b/plugins/card-assets/lang/ru.json index cfe4838c57..7ccad505a7 100644 --- a/plugins/card-assets/lang/ru.json +++ b/plugins/card-assets/lang/ru.json @@ -72,6 +72,8 @@ "Import": "Импортировать", "Export": "Экспортировать", "CardUpdated": "Карточка обновлена", - "CardCreated": "Карточка создана" + "CardCreated": "Карточка создана", + "MyCards": "Мои карты", + "GotoMyCards": "Перейти к моим картам" } } diff --git a/plugins/card-assets/lang/tr.json b/plugins/card-assets/lang/tr.json index 42629f235a..6f176882c4 100644 --- a/plugins/card-assets/lang/tr.json +++ b/plugins/card-assets/lang/tr.json @@ -72,6 +72,8 @@ "Import": "İçe aktar", "Export": "Dışa aktar", "CardUpdated": "Kart güncellendi", - "CardCreated": "Kart oluşturuldu" + "CardCreated": "Kart oluşturuldu", + "MyCards": "Benim kartlarım", + "GotoMyCards": "Benim kartlarıma git" } } diff --git a/plugins/card-assets/lang/zh.json b/plugins/card-assets/lang/zh.json index f16cc1e542..609480aaa8 100644 --- a/plugins/card-assets/lang/zh.json +++ b/plugins/card-assets/lang/zh.json @@ -72,6 +72,8 @@ "Import": "导入", "Export": "导出", "CardUpdated": "卡片已更新", - "CardCreated": "卡片已创建" + "CardCreated": "卡片已创建", + "MyCards": "我的卡片", + "GotoMyCards": "转到我的卡片" } } diff --git a/plugins/card-resources/package.json b/plugins/card-resources/package.json index d0a696dcfb..35e41c3890 100644 --- a/plugins/card-resources/package.json +++ b/plugins/card-resources/package.json @@ -70,6 +70,7 @@ "@hcengineering/converter": "workspace:^0.7.0", "@hcengineering/converter-resources": "workspace:^0.7.0", "@hcengineering/notification": "workspace:^0.7.0", + "@hcengineering/time": "workspace:^0.7.0", "@hcengineering/contact": "workspace:^0.7.0", "@hcengineering/workbench": "workspace:^0.7.0", "@tiptap/core": "^2.11.7", diff --git a/plugins/card-resources/src/components/navigator/MyCards.svelte b/plugins/card-resources/src/components/navigator/MyCards.svelte new file mode 100644 index 0000000000..146a966a1f --- /dev/null +++ b/plugins/card-resources/src/components/navigator/MyCards.svelte @@ -0,0 +1,102 @@ + + + +{#if query !== undefined && modeSelectorProps !== undefined} + +{/if} diff --git a/plugins/card-resources/src/index.ts b/plugins/card-resources/src/index.ts index d2c77a033f..b2aa2548f2 100644 --- a/plugins/card-resources/src/index.ts +++ b/plugins/card-resources/src/index.ts @@ -64,6 +64,7 @@ import CreateRolePopup from './components/settings/CreateRolePopup.svelte' import CardWidget from './components/CardWidget.svelte' import CreateSpace from './components/navigator/CreateSpace.svelte' import CardHeaderButton from './components/navigator/CardHeaderButton.svelte' +import MyCards from './components/navigator/MyCards.svelte' // Card Sections import AttachmentsCardSection from './components/sections/AttachmentsSection.svelte' @@ -134,7 +135,8 @@ export default async (): Promise => ({ CardFeedView, CreateSpace, CardHeaderButton, - CreateRolePopup + CreateRolePopup, + MyCards }, sectionComponent: { AttachmentsSection: AttachmentsCardSection, diff --git a/plugins/card-resources/src/plugin.ts b/plugins/card-resources/src/plugin.ts index 215ee5ce4e..64d0bfe8b4 100644 --- a/plugins/card-resources/src/plugin.ts +++ b/plugins/card-resources/src/plugin.ts @@ -55,7 +55,8 @@ export default mergeIds(cardId, card, { CardWidgetTab: '' as AnyComponent, CreateCard: '' as AnyComponent, CardHeaderButton: '' as AnyComponent, - CreateRolePopup: '' as AnyComponent + CreateRolePopup: '' as AnyComponent, + MyCards: '' as AnyComponent }, function: { CardFactory: '' as Resource<(props?: Record) => Promise | undefined>>, @@ -161,6 +162,8 @@ export default mergeIds(cardId, card, { ForbidAddTagPermission: '' as IntlString, ForbidRemoveTag: '' as IntlString, CardUpdated: '' as IntlString, - CardCreated: '' as IntlString + CardCreated: '' as IntlString, + MyCards: '' as IntlString, + GotoMyCards: '' as IntlString } })