Skip to content

Commit 0f76a65

Browse files
authored
Merge pull request #55 from meta-d/develop
v2.7.1
2 parents cd73702 + aba24d5 commit 0f76a65

File tree

24 files changed

+85
-37
lines changed

24 files changed

+85
-37
lines changed

apps/cloud/src/app/@core/services/toastr.service.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import { NgmConfirmSnackBar } from '@metad/ocap-angular/common'
1313
export class ToastrService {
1414
constructor(private readonly _snackBar: MatSnackBar, private readonly translateService: TranslateService) {}
1515

16-
success(message: any, translationParams: Object = {}, title?: string) {
16+
success(message: any, translationParams: Object = {}, title?: string, titleParams?: Object) {
1717
let displayMessage = ''
1818

1919
if (message && message.message && typeof message.message === 'string') {
@@ -24,7 +24,7 @@ export class ToastrService {
2424

2525
return this._snackBar.open(
2626
this.getTranslation(displayMessage, translationParams),
27-
this.getTranslation(title || 'PAC.TOASTR.TITLE.SUCCESS'),
27+
this.getTranslation(title || 'PAC.TOASTR.TITLE.SUCCESS', titleParams),
2828
{ duration: 2000 }
2929
)
3030
}

apps/cloud/src/app/features/chat/component-message/component-message.component.html

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,38 @@
33
<ngm-analytical-card [title]="data().title"
44
[dataSettings]="data().dataSettings"
55
[chartSettings]="chartSettings()"
6-
[slicers]="data().slicers"
7-
/>
6+
[slicers]="slicers()"
7+
>
8+
<button mat-icon-button ngmAction displayDensity="cosy" class="ngm-menu-trigger"
9+
[color]="slicers() ? 'accent':''"
10+
[matMenuTriggerFor]="filtersMenu"
11+
#mt="matMenuTrigger"
12+
[class.active]="mt.menuOpen"
13+
>
14+
<mat-icon fontSet="material-icons-outlined">filter_alt</mat-icon>
15+
</button>
16+
</ngm-analytical-card>
17+
18+
<mat-menu #filtersMenu="matMenu" class="pac-widget__slicer-menu">
19+
<div class="text-base font-semibold">{{ 'PAC.ChatBI.Slicers' | translate: {Default: "Slicers"} }}</div>
20+
<ngm-slicers class="overflow-hidden" inline editable
21+
[slicers]="slicers()"
22+
[dataSettings]="data().dataSettings"
23+
[limit]="5"
24+
[capacities]="[
25+
SlicersCapacity.Variable,
26+
SlicersCapacity.CombinationSlicer,
27+
SlicersCapacity.AdvancedSlicer
28+
]"
29+
(valueChange)="updateSlicers($event)"
30+
(click)="$event.stopPropagation()"
31+
/>
32+
</mat-menu>
833
}
934
@case ('KPI') {
1035
<pac-widget-kpi displayDensity="compact" [title]="data().title"
1136
[dataSettings]="data().dataSettings"
12-
[slicers]="data().slicers"
37+
[slicers]="slicers()"
1338
[options]="{
1439
showToolbar: true,
1540
shortNumber: true,

apps/cloud/src/app/features/chat/component-message/component-message.component.ts

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
import { DragDropModule } from '@angular/cdk/drag-drop'
22
import { CommonModule } from '@angular/common'
3-
import { ChangeDetectionStrategy, Component, computed, inject, input } from '@angular/core'
3+
import { ChangeDetectionStrategy, Component, computed, inject, input, model } from '@angular/core'
44
import { toSignal } from '@angular/core/rxjs-interop'
55
import { FormsModule, ReactiveFormsModule } from '@angular/forms'
66
import { RouterModule } from '@angular/router'
77
import { CopilotChatMessage } from '@metad/copilot'
88
import { AnalyticalCardModule } from '@metad/ocap-angular/analytical-card'
99
import { NgmCommonModule } from '@metad/ocap-angular/common'
10+
import { NgmSelectionModule, SlicersCapacity } from '@metad/ocap-angular/selection'
11+
import { ISlicer } from '@metad/ocap-core'
1012
import { NxWidgetKpiComponent } from '@metad/story/widgets/kpi'
1113
import { TranslateModule } from '@ngx-translate/core'
1214
import { MarkdownModule } from 'ngx-markdown'
@@ -32,6 +34,7 @@ import { ChatService } from '../chat.service'
3234
AvatarComponent,
3335
ChatLoadingComponent,
3436
AnalyticalCardModule,
37+
NgmSelectionModule,
3538
NxWidgetKpiComponent
3639
],
3740
selector: 'pac-chat-component-message',
@@ -40,12 +43,18 @@ import { ChatService } from '../chat.service'
4043
changeDetection: ChangeDetectionStrategy.OnPush
4144
})
4245
export class ChatComponentMessageComponent {
46+
SlicersCapacity = SlicersCapacity
47+
4348
readonly #store = inject(Store)
4449
readonly chatService = inject(ChatService)
4550

4651
readonly message = input<CopilotChatMessage>()
4752

4853
readonly data = computed(() => this.message()?.data as any)
54+
readonly _slicers = model<ISlicer[]>([])
55+
readonly slicers = computed(() =>
56+
this._slicers() ?? this.data()?.slicers
57+
)
4958

5059
readonly primaryTheme = toSignal(this.#store.primaryTheme$)
5160

@@ -55,4 +64,8 @@ export class ChatComponentMessageComponent {
5564
theme: this.primaryTheme()
5665
}
5766
})
67+
68+
updateSlicers(slicers: ISlicer[]) {
69+
this._slicers.set(slicers)
70+
}
5871
}

apps/cloud/src/app/features/setting/knowledgebase/home.component.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import {
1919
} from '../../../@core'
2020
import { AvatarComponent, MaterialModule, TranslationBaseComponent, UserProfileInlineComponent } from '../../../@shared'
2121

22+
2223
@Component({
2324
standalone: true,
2425
selector: 'pac-settings-knowledgebases',
@@ -40,7 +41,7 @@ export class KnowledgebaseHomeComponent extends TranslationBaseComponent {
4041
KnowledgebasePermission = KnowledgebasePermission
4142

4243
readonly knowledgebaseService = inject(KnowledgebaseService)
43-
readonly _toastrService = inject(ToastrService)
44+
readonly #toastr = inject(ToastrService)
4445
readonly #store = inject(Store)
4546
readonly #router = inject(Router)
4647
readonly #route = inject(ActivatedRoute)
@@ -88,10 +89,10 @@ export class KnowledgebaseHomeComponent extends TranslationBaseComponent {
8889
.subscribe({
8990
next: (result) => {
9091
this.refresh()
91-
this._toastrService.success('Created knowledgebase', 'Success')
92+
this.#toastr.success('PAC.Messages.CreatedSuccessfully', {}, 'PAC.KEY_WORDS.Knowledgebase', {Default: 'Knowledgebase'})
9293
},
9394
error: (error) => {
94-
this._toastrService.error(error, 'Error')
95+
this.#toastr.error(error, 'Error')
9596
}
9697
})
9798
}
@@ -115,10 +116,10 @@ export class KnowledgebaseHomeComponent extends TranslationBaseComponent {
115116
.subscribe({
116117
next: () => {
117118
this.refresh()
118-
this._toastrService.success('PAC.Messages.DeletedSuccessfully', 'Deleted Successfully')
119+
this.#toastr.success('PAC.Messages.DeletedSuccessfully', {Default: 'Deleted Successfully'})
119120
},
120121
error: (error) => {
121-
this._toastrService.error(getErrorMessage(error), 'Error')
122+
this.#toastr.error(getErrorMessage(error), 'Error')
122123
}
123124
})
124125
}

apps/cloud/src/assets/i18n/zh-Hans.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,7 @@
213213
"Secondary": "",
214214
"Embedding": "嵌入",
215215
"Open": "打开",
216+
"Knowledgebase": "知识库",
216217
"Knowledgebases": "知识库",
217218
"Empty": "无数据",
218219
"Toolset": "工具集",

packages/adapter/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@metad/adapter",
3-
"version": "2.7.0",
3+
"version": "2.7.1",
44
"dependencies": {
55
"@sap/hana-client": "^2.20.20",
66
"axios": "^0.21.4",

packages/analytics/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@metad/analytics",
3-
"version": "2.7.0",
3+
"version": "2.7.1",
44
"type": "commonjs",
55
"license": "MIT",
66
"scripts": {

packages/analytics/src/chatbi/commands/handlers/chat-bi.handler.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -344,7 +344,7 @@ ${createAgentStepsInstructions(
344344
*/
345345
createCubeContextTool(context: CopilotToolContext, dsCoreService: DSCoreService) {
346346
// Maximum waiting time of tool call
347-
const { toolMaximumWaitTime = DefaultToolMaximumWaitTime } = context.roleContext
347+
const { toolMaximumWaitTime = DefaultToolMaximumWaitTime } = context.roleContext ?? {}
348348
return tool(
349349
async ({ cubes }): Promise<string> => {
350350
this.logger.debug(`Tool 'getCubeContext' params:`, JSON.stringify(cubes))

packages/angular/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@metad/ocap-angular",
3-
"version": "2.7.0",
3+
"version": "2.7.1",
44
"keywords": [
55
"metad",
66
"ocap",
@@ -20,7 +20,7 @@
2020
"@angular/core": "^17.0.0",
2121
"@angular/material": "^17.0.0",
2222
"@angular/material-date-fns-adapter": "^17.0.0",
23-
"@metad/ocap-core": "^2.3.0",
23+
"@metad/ocap-core": "^2.7.0",
2424
"@ngx-translate/core": "^15.0.0",
2525
"langchain": "0.2.10",
2626
"lodash-es": "^4.17.21",

packages/auth/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@metad/server-auth",
3-
"version": "2.7.0",
3+
"version": "2.7.1",
44
"type": "commonjs",
55
"dependencies": {
66
"@nestjs/common": "^8.0.0",

0 commit comments

Comments
 (0)