Skip to content

Commit 1a78601

Browse files
Fix named OpenAI import problem for Demos (#28544)
1 parent a5a491c commit 1a78601

File tree

7 files changed

+27
-14
lines changed

7 files changed

+27
-14
lines changed

apps/demos/Demos/Chat/AIAndChatbotIntegration/Angular/app/app.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313
import { Observable } from 'rxjs';
1414
import { AppService } from './app.service';
1515
import { loadMessages } from 'devextreme/localization';
16-
import { DataSource } from 'devextreme/common/data';
16+
import DataSource from 'devextreme/data/data_source';
1717

1818
if (!/localhost/.test(document.location.host)) {
1919
enableProdMode();

apps/demos/Demos/Chat/AIAndChatbotIntegration/Angular/app/app.service.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ import {
1010
Alert,
1111
MessageEnteredEvent
1212
} from 'devextreme/ui/chat';
13-
import { DataSource, CustomStore } from 'devextreme/common/data';
13+
import DataSource from 'devextreme/data/data_source';
14+
import CustomStore from 'devextreme/data/custom_store';
1415

1516
@Injectable({
1617
providedIn: 'root',
@@ -26,7 +27,7 @@ export class AppService {
2627
endpoint: 'https://public-api.devexpress.com/demo-openai',
2728
apiKey: 'DEMO',
2829
}
29-
30+
3031
REGENERATION_TEXT = 'Regeneration...';
3132
ALERT_TIMEOUT = 1000 * 60;
3233

@@ -95,7 +96,7 @@ export class AppService {
9596
});
9697
},
9798
});
98-
99+
99100
this.dataSource = new DataSource({
100101
store: this.customStore,
101102
paginate: false,
@@ -109,17 +110,17 @@ export class AppService {
109110
max_tokens: 1000,
110111
temperature: 0.7,
111112
};
112-
113+
113114
const response = await this.chatService.chat.completions.create(params);
114115
const data = { choices: response.choices };
115-
116+
116117
return data.choices[0].message?.content;
117118
}
118119

119120
async processMessageSending(message, event) {
120121
this.messages.push({ role: 'user', content: message.text });
121122
this.typingUsersSubject.next([this.assistant]);
122-
123+
123124
try {
124125
const aiResponse = await this.getAIResponse(this.messages);
125126

@@ -138,7 +139,7 @@ export class AppService {
138139
updateLastMessage(text = this.REGENERATION_TEXT) {
139140
const items = this.dataSource.items();
140141
const lastMessage = items.at(-1);
141-
142+
142143
this.dataSource.store().push([{
143144
type: 'update',
144145
key: lastMessage.id,
@@ -161,7 +162,7 @@ export class AppService {
161162
this.setAlerts([{
162163
message: 'Request limit reached, try again in a minute.'
163164
}]);
164-
165+
165166
setTimeout(() => {
166167
this.setAlerts([]);
167168
}, this.ALERT_TIMEOUT);
@@ -194,7 +195,7 @@ export class AppService {
194195

195196
return result;
196197
}
197-
198+
198199
async onMessageEntered({ message, event }: MessageEnteredEvent) {
199200
this.dataSource.store().push([{ type: 'insert', data: { id: Date.now(), ...message } }]);
200201

apps/demos/Demos/Chat/AIAndChatbotIntegration/Vue/App.vue

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
@message-entered="onMessageEntered($event)"
1818
>
1919
<template #message="{ data }">
20-
<span
20+
<span
2121
v-if="data.message.text === REGENERATION_TEXT"
2222
>
2323
{{ REGENERATION_TEXT }}
@@ -53,7 +53,7 @@ import { ref, onBeforeMount } from 'vue';
5353
import DxChat from 'devextreme-vue/chat';
5454
import DxButton from 'devextreme-vue/button';
5555
import { loadMessages } from 'devextreme/localization';
56-
import openai from 'openai';
56+
import { AzureOpenAI } from 'openai';
5757
import {
5858
dictionary,
5959
messages,
@@ -66,7 +66,7 @@ import {
6666
ALERT_TIMEOUT,
6767
} from './data.ts';
6868
69-
const chatService = new openai.AzureOpenAI(AzureOpenAIConfig);
69+
const chatService = new AzureOpenAI(AzureOpenAIConfig);
7070
7171
const typingUsers = ref([]);
7272
const alerts = ref([]);
@@ -150,7 +150,7 @@ function alertLimitReached() {
150150
alerts.value = [{
151151
message: 'Request limit reached, try again in a minute.'
152152
}];
153-
153+
154154
setTimeout(() => {
155155
alerts.value = [];
156156
}, ALERT_TIMEOUT);

apps/demos/configs/Angular/config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,9 @@ window.config = {
144144
'@angular/forms': {
145145
'esModule': true,
146146
},
147+
'openai': {
148+
'esModule': true,
149+
},
147150
},
148151
paths: {
149152
'npm:': '../../../../node_modules/',

apps/demos/configs/React/config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,9 @@ window.config = {
3838
'esModule': true,
3939
},
4040
/**/
41+
'openai': {
42+
'esModule': true,
43+
},
4144
},
4245
paths: {
4346
'npm:': '../../../../node_modules/',

apps/demos/configs/ReactJs/config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,9 @@ window.config = {
3838
'esModule': true,
3939
},
4040
/**/
41+
'openai': {
42+
'esModule': true,
43+
},
4144
},
4245
paths: {
4346
'npm:': '../../../node_modules/',

apps/demos/configs/Vue/config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ window.config = {
3535
'esModule': true,
3636
},
3737
/**/
38+
'openai': {
39+
'esModule': true,
40+
},
3841
},
3942
paths: {
4043
'project:': '../../../../',

0 commit comments

Comments
 (0)