@bytexbyte/nxtlinq-ai-agent-sdk 1.6.1 → 1.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/nxtlinq-api.d.ts.map +1 -1
- package/dist/api/nxtlinq-api.js +1 -0
- package/dist/components/ui/MessageInput.d.ts.map +1 -1
- package/dist/components/ui/MessageInput.js +5 -0
- package/dist/components/ui/MessageList.js +2 -2
- package/dist/components/ui/PermissionForm.d.ts.map +1 -1
- package/dist/components/ui/PermissionForm.js +6 -1
- package/dist/components/ui/styles/isolatedStyles.d.ts +1 -0
- package/dist/components/ui/styles/isolatedStyles.d.ts.map +1 -1
- package/dist/components/ui/styles/isolatedStyles.js +52 -7
- package/package.json +2 -2
- package/dist/core/utils/__tests__/urlUtils.test.d.ts +0 -5
- package/dist/core/utils/__tests__/urlUtils.test.d.ts.map +0 -1
- package/dist/core/utils/__tests__/urlUtils.test.js +0 -57
- package/dist/core/utils/berifyMeReactFix.d.ts +0 -8
- package/dist/core/utils/berifyMeReactFix.d.ts.map +0 -1
- package/dist/core/utils/berifyMeReactFix.js +0 -81
- package/dist/core/utils/reactInstanceCheck.d.ts +0 -9
- package/dist/core/utils/reactInstanceCheck.d.ts.map +0 -1
- package/dist/core/utils/reactInstanceCheck.js +0 -46
- package/dist/setupTests.d.ts +0 -2
- package/dist/setupTests.d.ts.map +0 -1
- package/dist/setupTests.js +0 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nxtlinq-api.d.ts","sourceRoot":"","sources":["../../src/api/nxtlinq-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"nxtlinq-api.d.ts","sourceRoot":"","sources":["../../src/api/nxtlinq-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAiW1C,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,EAAE,WAAW,MAAM,KAAG,MAUpE,CAAC"}
|
package/dist/api/nxtlinq-api.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageInput.d.ts","sourceRoot":"","sources":["../../../src/components/ui/MessageInput.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"MessageInput.d.ts","sourceRoot":"","sources":["../../../src/components/ui/MessageInput.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAsGhC,CAAC"}
|
|
@@ -19,6 +19,7 @@ export const MessageInput = () => {
|
|
|
19
19
|
return (_jsxs("div", { css: css `
|
|
20
20
|
padding: 15px !important;
|
|
21
21
|
display: flex !important;
|
|
22
|
+
align-items: center !important;
|
|
22
23
|
gap: 10px !important;
|
|
23
24
|
border-top: 1px solid #eee !important;
|
|
24
25
|
`, children: [_jsx(InputBase, { value: inputValue, onChange: (e) => setInputValue(e.target.value), onKeyPress: handleKeyPress, placeholder: inputPlaceholder, disabled: isDisabled, fullWidth: true, inputProps: {
|
|
@@ -31,6 +32,8 @@ export const MessageInput = () => {
|
|
|
31
32
|
outline: none !important;
|
|
32
33
|
font-size: 14px !important;
|
|
33
34
|
background-color: ${isDisabled ? '#f8f9fa' : '#fff'} !important;
|
|
35
|
+
height: 40px !important;
|
|
36
|
+
box-sizing: border-box !important;
|
|
34
37
|
` }), _jsxs("button", { onClick: (e) => handleSubmit(e), disabled: isDisabled || !inputValue.trim(), css: css `
|
|
35
38
|
${actionButton}
|
|
36
39
|
padding: 10px 20px !important;
|
|
@@ -39,6 +42,8 @@ export const MessageInput = () => {
|
|
|
39
42
|
display: flex !important;
|
|
40
43
|
align-items: center !important;
|
|
41
44
|
justify-content: center !important;
|
|
45
|
+
height: 40px !important;
|
|
46
|
+
box-sizing: border-box !important;
|
|
42
47
|
|
|
43
48
|
&:disabled {
|
|
44
49
|
background-color: #e9ecef !important;
|
|
@@ -5,7 +5,7 @@ import { css } from '@emotion/react';
|
|
|
5
5
|
import { convertUrlsToLinks } from '../../core/utils/urlUtils';
|
|
6
6
|
import { useChatBot } from '../context/ChatBotContext';
|
|
7
7
|
import { AI_MODEL_MAP } from '../types/ChatBotTypes';
|
|
8
|
-
import { messageListContainer, messageBubble, userMessage, messageContent, userMessageContent, retryMessageContent,
|
|
8
|
+
import { messageListContainer, messageBubble, userMessage, messageContent, userMessageContent, retryMessageContent, chatbotButton, connectedButton, loadingIndicator, modelIndicator, modelBadge, modelDot } from './styles/isolatedStyles';
|
|
9
9
|
export const MessageList = () => {
|
|
10
10
|
const { messages, isLoading, connectWallet, signInWallet, hitAddress, isAutoConnecting, isNeedSignInWithWallet, enableAIT, isAITLoading, isAITEnabling, sendMessage, permissions } = useChatBot();
|
|
11
11
|
const messagesEndRef = React.useRef(null);
|
|
@@ -65,7 +65,7 @@ export const MessageList = () => {
|
|
|
65
65
|
(message.button === 'signIn' && !isNeedSignInWithWallet) ? connectedButton :
|
|
66
66
|
(message.button === 'continue') ? connectedButton :
|
|
67
67
|
(message.button === 'enableAIT' && (message.metadata?.toolName && permissions.includes(message.metadata.toolName))) ? connectedButton :
|
|
68
|
-
|
|
68
|
+
chatbotButton, children: isAutoConnecting ? 'Connecting...' :
|
|
69
69
|
message.button === 'connectWallet' ? (Boolean(hitAddress) ? 'Connected' : 'Connect Wallet') :
|
|
70
70
|
message.button === 'signIn' ? (!isNeedSignInWithWallet ? 'Signed In' : 'Sign In') :
|
|
71
71
|
message.button === 'continue' ? 'Continue' :
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionForm.d.ts","sourceRoot":"","sources":["../../../src/components/ui/PermissionForm.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,UAAU,mBAAmB;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,
|
|
1
|
+
{"version":3,"file":"PermissionForm.d.ts","sourceRoot":"","sources":["../../../src/components/ui/PermissionForm.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,UAAU,mBAAmB;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAqiBxD,CAAC"}
|
|
@@ -367,18 +367,23 @@ export const PermissionForm = ({ onClose }) => {
|
|
|
367
367
|
font-size: 14px !important;
|
|
368
368
|
font-weight: 500 !important;
|
|
369
369
|
transition: all 0.2s !important;
|
|
370
|
+
margin-top: 0 !important;
|
|
370
371
|
|
|
371
372
|
&:hover {
|
|
372
373
|
background-color: #e9ecef !important;
|
|
373
374
|
border-color: #ced4da !important;
|
|
374
375
|
}
|
|
375
376
|
`, children: "Cancel" }), _jsx("button", { onClick: handleSave, disabled: !hasPermissionChanges() || isSaving || isAITLoading, css: css `
|
|
376
|
-
${actionButton}
|
|
377
377
|
padding: 10px 20px !important;
|
|
378
378
|
background-color: ${!hasPermissionChanges() || isSaving || isAITLoading ? '#e9ecef' : '#007bff'} !important;
|
|
379
379
|
color: ${!hasPermissionChanges() || isSaving || isAITLoading ? '#6c757d' : 'white'} !important;
|
|
380
|
+
border: none !important;
|
|
380
381
|
border-radius: 8px !important;
|
|
382
|
+
cursor: ${!hasPermissionChanges() || isSaving || isAITLoading ? 'not-allowed' : 'pointer'} !important;
|
|
381
383
|
font-size: 14px !important;
|
|
384
|
+
font-weight: 500 !important;
|
|
385
|
+
transition: all 0.2s !important;
|
|
386
|
+
margin-top: 0 !important;
|
|
382
387
|
|
|
383
388
|
&:disabled {
|
|
384
389
|
cursor: not-allowed !important;
|
|
@@ -12,6 +12,7 @@ export declare const userMessage: import("@emotion/utils").SerializedStyles;
|
|
|
12
12
|
export declare const messageContent: import("@emotion/utils").SerializedStyles;
|
|
13
13
|
export declare const userMessageContent: import("@emotion/utils").SerializedStyles;
|
|
14
14
|
export declare const retryMessageContent: import("@emotion/utils").SerializedStyles;
|
|
15
|
+
export declare const chatbotButton: import("@emotion/utils").SerializedStyles;
|
|
15
16
|
export declare const actionButton: import("@emotion/utils").SerializedStyles;
|
|
16
17
|
export declare const connectedButton: import("@emotion/utils").SerializedStyles;
|
|
17
18
|
export declare const loadingIndicator: import("@emotion/utils").SerializedStyles;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isolatedStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/styles/isolatedStyles.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,2CAwBpB,CAAC;AAGF,eAAO,MAAM,YAAY,2CAqDxB,CAAC;AAGF,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"isolatedStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/styles/isolatedStyles.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,2CAwBpB,CAAC;AAGF,eAAO,MAAM,YAAY,2CAqDxB,CAAC;AAGF,eAAO,MAAM,cAAc,2CA0B1B,CAAC;AAGF,eAAO,MAAM,UAAU,2CActB,CAAC;AAGF,eAAO,MAAM,UAAU,2CAStB,CAAC;AAGF,eAAO,MAAM,WAAW,2CAMvB,CAAC;AAGF,eAAO,MAAM,YAAY,2CA0BxB,CAAC;AAGF,eAAO,MAAM,WAAW,2CAoBvB,CAAC;AAGF,eAAO,MAAM,oBAAoB,2CAQhC,CAAC;AAGF,eAAO,MAAM,aAAa,2CAKzB,CAAC;AAGF,eAAO,MAAM,WAAW,2CAKvB,CAAC;AAGF,eAAO,MAAM,cAAc,2CAQ1B,CAAC;AAGF,eAAO,MAAM,kBAAkB,2CAQ9B,CAAC;AAGF,eAAO,MAAM,mBAAmB,2CAS/B,CAAC;AAGF,eAAO,MAAM,aAAa,2CAezB,CAAC;AAGF,eAAO,MAAM,YAAY,2CAexB,CAAC;AAGF,eAAO,MAAM,eAAe,2CAc3B,CAAC;AAGF,eAAO,MAAM,gBAAgB,2CAQ5B,CAAC;AAGF,eAAO,MAAM,cAAc,2CAM1B,CAAC;AAGF,eAAO,MAAM,UAAU,2CAYtB,CAAC;AAGF,eAAO,MAAM,QAAQ,2CAMpB,CAAC;AAGF,eAAO,MAAM,iBAAiB,2CAc7B,CAAC;AAGF,eAAO,MAAM,YAAY,2CAIxB,CAAC;AAGF,eAAO,MAAM,UAAU,2CAItB,CAAC;AAGF,eAAO,MAAM,YAAY,2CAIxB,CAAC;AAGF,eAAO,MAAM,SAAS,2CAIrB,CAAC;AAGF,eAAO,MAAM,gBAAgB,2CAiB5B,CAAC;AAGF,eAAO,MAAM,YAAY,2CAYxB,CAAC;AAGF,eAAO,MAAM,SAAS,2CAWrB,CAAC;AAGF,eAAO,MAAM,cAAc,2CAM1B,CAAC;AAGF,eAAO,MAAM,aAAa,2CAMzB,CAAC;AAGF,eAAO,MAAM,eAAe,2CAoB3B,CAAC;AAGF,eAAO,MAAM,gBAAgB,2CAmB5B,CAAC;AAGF,eAAO,MAAM,cAAc,2CAO1B,CAAC"}
|
|
@@ -98,7 +98,12 @@ export const floatingButton = css `
|
|
|
98
98
|
font-weight: 500 !important;
|
|
99
99
|
font-family: inherit !important;
|
|
100
100
|
|
|
101
|
-
&:
|
|
101
|
+
&:disabled {
|
|
102
|
+
cursor: not-allowed !important;
|
|
103
|
+
opacity: 0.6 !important;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
&:hover:not(:disabled) {
|
|
102
107
|
background-color: #0056b3 !important;
|
|
103
108
|
transform: translateY(-2px) !important;
|
|
104
109
|
}
|
|
@@ -157,7 +162,12 @@ export const headerButton = css `
|
|
|
157
162
|
line-height: 0 !important;
|
|
158
163
|
vertical-align: middle !important;
|
|
159
164
|
|
|
160
|
-
&:
|
|
165
|
+
&:disabled {
|
|
166
|
+
cursor: not-allowed !important;
|
|
167
|
+
opacity: 0.6 !important;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
&:hover:not(:disabled) {
|
|
161
171
|
background-color: rgba(255, 255, 255, 0.2) !important;
|
|
162
172
|
}
|
|
163
173
|
`;
|
|
@@ -177,6 +187,11 @@ export const closeButton = css `
|
|
|
177
187
|
height: 32px !important;
|
|
178
188
|
line-height: 0 !important;
|
|
179
189
|
vertical-align: middle !important;
|
|
190
|
+
|
|
191
|
+
&:disabled {
|
|
192
|
+
cursor: not-allowed !important;
|
|
193
|
+
opacity: 0.6 !important;
|
|
194
|
+
}
|
|
180
195
|
`;
|
|
181
196
|
// Message list container styles
|
|
182
197
|
export const messageListContainer = css `
|
|
@@ -233,7 +248,24 @@ export const retryMessageContent = css `
|
|
|
233
248
|
border: 1px solid #ffeaa7 !important;
|
|
234
249
|
font-family: inherit !important;
|
|
235
250
|
`;
|
|
236
|
-
//
|
|
251
|
+
// Chatbot button styles (for buttons inside chatbot window)
|
|
252
|
+
export const chatbotButton = css `
|
|
253
|
+
padding: 8px 16px !important;
|
|
254
|
+
background-color: #007bff !important;
|
|
255
|
+
color: white !important;
|
|
256
|
+
border: none !important;
|
|
257
|
+
border-radius: 5px !important;
|
|
258
|
+
cursor: pointer !important;
|
|
259
|
+
font-size: 14px !important;
|
|
260
|
+
font-family: inherit !important;
|
|
261
|
+
|
|
262
|
+
&:disabled {
|
|
263
|
+
background-color: #6c757d !important;
|
|
264
|
+
cursor: not-allowed !important;
|
|
265
|
+
opacity: 0.8 !important;
|
|
266
|
+
}
|
|
267
|
+
`;
|
|
268
|
+
// Action button styles (for buttons outside chatbot window)
|
|
237
269
|
export const actionButton = css `
|
|
238
270
|
padding: 8px 16px !important;
|
|
239
271
|
background-color: #007bff !important;
|
|
@@ -243,7 +275,6 @@ export const actionButton = css `
|
|
|
243
275
|
cursor: pointer !important;
|
|
244
276
|
font-size: 14px !important;
|
|
245
277
|
font-family: inherit !important;
|
|
246
|
-
margin-top: 10px !important;
|
|
247
278
|
|
|
248
279
|
&:disabled {
|
|
249
280
|
background-color: #6c757d !important;
|
|
@@ -261,7 +292,11 @@ export const connectedButton = css `
|
|
|
261
292
|
cursor: pointer !important;
|
|
262
293
|
font-size: 14px !important;
|
|
263
294
|
font-family: inherit !important;
|
|
264
|
-
|
|
295
|
+
|
|
296
|
+
&:disabled {
|
|
297
|
+
cursor: not-allowed !important;
|
|
298
|
+
opacity: 0.8 !important;
|
|
299
|
+
}
|
|
265
300
|
`;
|
|
266
301
|
// Loading indicator styles
|
|
267
302
|
export const loadingIndicator = css `
|
|
@@ -418,7 +453,12 @@ export const idvVerifyButton = css `
|
|
|
418
453
|
transition: background-color 0.2s !important;
|
|
419
454
|
font-family: inherit !important;
|
|
420
455
|
|
|
421
|
-
&:
|
|
456
|
+
&:disabled {
|
|
457
|
+
cursor: not-allowed !important;
|
|
458
|
+
opacity: 0.6 !important;
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
&:hover:not(:disabled) {
|
|
422
462
|
background-color: #e67e22 !important;
|
|
423
463
|
}
|
|
424
464
|
`;
|
|
@@ -434,7 +474,12 @@ export const idvDismissButton = css `
|
|
|
434
474
|
transition: background-color 0.2s !important;
|
|
435
475
|
font-family: inherit !important;
|
|
436
476
|
|
|
437
|
-
&:
|
|
477
|
+
&:disabled {
|
|
478
|
+
cursor: not-allowed !important;
|
|
479
|
+
opacity: 0.6 !important;
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
&:hover:not(:disabled) {
|
|
438
483
|
background-color: rgba(133, 100, 4, 0.1) !important;
|
|
439
484
|
}
|
|
440
485
|
`;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bytexbyte/nxtlinq-ai-agent-sdk",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.3",
|
|
4
4
|
"description": "Nxtlinq AI Agent SDK - Proprietary Software with enhanced async operation handling",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -59,4 +59,4 @@
|
|
|
59
59
|
"universal-cookie": "^8.0.1",
|
|
60
60
|
"uuid": "^11.1.0"
|
|
61
61
|
}
|
|
62
|
-
}
|
|
62
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"urlUtils.test.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/__tests__/urlUtils.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tests for URL utility functions
|
|
3
|
-
*/
|
|
4
|
-
import { containsUrls, convertUrlsToLinks, convertUrlsToHtml } from '../urlUtils';
|
|
5
|
-
describe('URL Utils', () => {
|
|
6
|
-
describe('containsUrls', () => {
|
|
7
|
-
it('should detect URLs with http protocol', () => {
|
|
8
|
-
expect(containsUrls('Visit https://example.com for more info')).toBe(true);
|
|
9
|
-
expect(containsUrls('Check out http://test.org')).toBe(true);
|
|
10
|
-
});
|
|
11
|
-
it('should detect URLs with www', () => {
|
|
12
|
-
expect(containsUrls('Go to www.google.com')).toBe(true);
|
|
13
|
-
expect(containsUrls('Visit www.example.org')).toBe(true);
|
|
14
|
-
});
|
|
15
|
-
it('should detect domain names', () => {
|
|
16
|
-
expect(containsUrls('Contact us at support@company.com')).toBe(false);
|
|
17
|
-
expect(containsUrls('Visit company.com for details')).toBe(true);
|
|
18
|
-
});
|
|
19
|
-
it('should return false for text without URLs', () => {
|
|
20
|
-
expect(containsUrls('This is just plain text')).toBe(false);
|
|
21
|
-
expect(containsUrls('No URLs here')).toBe(false);
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
describe('convertUrlsToHtml', () => {
|
|
25
|
-
it('should convert URLs to HTML anchor tags', () => {
|
|
26
|
-
const text = 'Visit https://example.com for more info';
|
|
27
|
-
const result = convertUrlsToHtml(text);
|
|
28
|
-
expect(result).toContain('<a href="https://example.com"');
|
|
29
|
-
expect(result).toContain('target="_blank"');
|
|
30
|
-
expect(result).toContain('rel="noopener noreferrer"');
|
|
31
|
-
});
|
|
32
|
-
it('should handle www URLs', () => {
|
|
33
|
-
const text = 'Go to www.google.com';
|
|
34
|
-
const result = convertUrlsToHtml(text);
|
|
35
|
-
expect(result).toContain('<a href="https://www.google.com"');
|
|
36
|
-
});
|
|
37
|
-
it('should handle multiple URLs', () => {
|
|
38
|
-
const text = 'Visit https://example.com and www.google.com';
|
|
39
|
-
const result = convertUrlsToHtml(text);
|
|
40
|
-
expect(result).toContain('https://example.com');
|
|
41
|
-
expect(result).toContain('https://www.google.com');
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
describe('convertUrlsToLinks', () => {
|
|
45
|
-
it('should return array with mixed content', () => {
|
|
46
|
-
const text = 'Visit https://example.com for more info';
|
|
47
|
-
const result = convertUrlsToLinks(text);
|
|
48
|
-
expect(Array.isArray(result)).toBe(true);
|
|
49
|
-
expect(result.length).toBeGreaterThan(0);
|
|
50
|
-
});
|
|
51
|
-
it('should handle text without URLs', () => {
|
|
52
|
-
const text = 'This is just plain text';
|
|
53
|
-
const result = convertUrlsToLinks(text);
|
|
54
|
-
expect(result).toEqual([text]);
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
});
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* BerifyMe React Instance Fix
|
|
3
|
-
*
|
|
4
|
-
* This utility ensures that BerifyMe SDK uses the same React instance
|
|
5
|
-
* as our SDK, preventing the __SECRET_INTERNALS error.
|
|
6
|
-
*/
|
|
7
|
-
export declare function fixBerifyMeReactInstance(): void;
|
|
8
|
-
//# sourceMappingURL=berifyMeReactFix.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"berifyMeReactFix.d.ts","sourceRoot":"","sources":["../../../src/core/utils/berifyMeReactFix.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,wBAAgB,wBAAwB,IAAI,IAAI,CA4E/C"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* BerifyMe React Instance Fix
|
|
3
|
-
*
|
|
4
|
-
* This utility ensures that BerifyMe SDK uses the same React instance
|
|
5
|
-
* as our SDK, preventing the __SECRET_INTERNALS error.
|
|
6
|
-
*/
|
|
7
|
-
export function fixBerifyMeReactInstance() {
|
|
8
|
-
try {
|
|
9
|
-
// Wait for BerifyMe SDK to load
|
|
10
|
-
const checkBerifyMe = () => {
|
|
11
|
-
if (window.BerifyMeSDK) {
|
|
12
|
-
console.log('[BerifyMe React Fix] BerifyMe SDK detected, applying React instance fix...');
|
|
13
|
-
// Method 1: Try to set React instance if the method exists
|
|
14
|
-
if (window.BerifyMeSDK.setReactInstance) {
|
|
15
|
-
try {
|
|
16
|
-
const React = require('react');
|
|
17
|
-
const createRoot = require('react-dom/client').createRoot;
|
|
18
|
-
window.BerifyMeSDK.setReactInstance(React, createRoot);
|
|
19
|
-
console.log('[BerifyMe React Fix] ✅ React instance set successfully');
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
catch (e) {
|
|
23
|
-
console.warn('[BerifyMe React Fix] Failed to set React instance via setReactInstance:', e);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
// Method 2: Monkey patch React globals
|
|
27
|
-
try {
|
|
28
|
-
const React = require('react');
|
|
29
|
-
const ReactDOM = require('react-dom');
|
|
30
|
-
const createRoot = require('react-dom/client').createRoot;
|
|
31
|
-
// Store original globals
|
|
32
|
-
const originalReact = window.React;
|
|
33
|
-
const originalReactDOM = window.ReactDOM;
|
|
34
|
-
// Set our React instance as global
|
|
35
|
-
window.React = React;
|
|
36
|
-
window.ReactDOM = ReactDOM;
|
|
37
|
-
window.ReactDOMClient = { createRoot };
|
|
38
|
-
console.log('[BerifyMe React Fix] ✅ React globals patched successfully');
|
|
39
|
-
// Restore original globals after a delay
|
|
40
|
-
setTimeout(() => {
|
|
41
|
-
if (originalReact)
|
|
42
|
-
window.React = originalReact;
|
|
43
|
-
if (originalReactDOM)
|
|
44
|
-
window.ReactDOM = originalReactDOM;
|
|
45
|
-
console.log('[BerifyMe React Fix] Original React globals restored');
|
|
46
|
-
}, 1000);
|
|
47
|
-
}
|
|
48
|
-
catch (e) {
|
|
49
|
-
console.warn('[BerifyMe React Fix] Failed to patch React globals:', e);
|
|
50
|
-
}
|
|
51
|
-
// Method 3: Try to patch the BerifyMe modal component
|
|
52
|
-
try {
|
|
53
|
-
if (window.BerifyMeSDK.modal) {
|
|
54
|
-
const originalModal = window.BerifyMeSDK.modal;
|
|
55
|
-
const React = require('react');
|
|
56
|
-
// Create a wrapper that uses our React instance
|
|
57
|
-
window.BerifyMeSDK.modal = (props) => {
|
|
58
|
-
return React.createElement(originalModal, props);
|
|
59
|
-
};
|
|
60
|
-
console.log('[BerifyMe React Fix] ✅ BerifyMe modal component patched');
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
catch (e) {
|
|
64
|
-
console.warn('[BerifyMe React Fix] Failed to patch BerifyMe modal:', e);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
else {
|
|
68
|
-
// Retry after a short delay
|
|
69
|
-
setTimeout(checkBerifyMe, 100);
|
|
70
|
-
}
|
|
71
|
-
};
|
|
72
|
-
checkBerifyMe();
|
|
73
|
-
}
|
|
74
|
-
catch (error) {
|
|
75
|
-
console.error('[BerifyMe React Fix] Error applying React instance fix:', error);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
// Auto-apply the fix when this module is loaded
|
|
79
|
-
if (typeof window !== 'undefined') {
|
|
80
|
-
fixBerifyMeReactInstance();
|
|
81
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* React Instance Check Utility
|
|
3
|
-
*
|
|
4
|
-
* This utility helps prevent React version conflicts by ensuring
|
|
5
|
-
* the SDK uses the same React instance as the host application.
|
|
6
|
-
*/
|
|
7
|
-
export declare function checkReactInstance(): void;
|
|
8
|
-
export declare function ensureReactCompatibility(): void;
|
|
9
|
-
//# sourceMappingURL=reactInstanceCheck.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reactInstanceCheck.d.ts","sourceRoot":"","sources":["../../../src/core/utils/reactInstanceCheck.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,wBAAgB,kBAAkB,IAAI,IAAI,CAoCzC;AAED,wBAAgB,wBAAwB,IAAI,IAAI,CAG/C"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* React Instance Check Utility
|
|
3
|
-
*
|
|
4
|
-
* This utility helps prevent React version conflicts by ensuring
|
|
5
|
-
* the SDK uses the same React instance as the host application.
|
|
6
|
-
*/
|
|
7
|
-
let reactInstanceCheckPerformed = false;
|
|
8
|
-
export function checkReactInstance() {
|
|
9
|
-
if (reactInstanceCheckPerformed) {
|
|
10
|
-
return;
|
|
11
|
-
}
|
|
12
|
-
try {
|
|
13
|
-
// Check if React is available globally
|
|
14
|
-
const globalReact = window.React;
|
|
15
|
-
const globalReactDOM = window.ReactDOM;
|
|
16
|
-
if (globalReact && globalReactDOM) {
|
|
17
|
-
console.log('[NxtlinqAIAgent] Using global React instance from host application');
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
// Check if we're in a module environment
|
|
21
|
-
if (typeof require !== 'undefined') {
|
|
22
|
-
try {
|
|
23
|
-
const react = require('react');
|
|
24
|
-
const reactDOM = require('react-dom');
|
|
25
|
-
if (react && reactDOM) {
|
|
26
|
-
console.log('[NxtlinqAIAgent] Using React instance from module system');
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
catch (e) {
|
|
31
|
-
// Module system not available or React not found
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
console.warn('[NxtlinqAIAgent] React instance check completed - using bundled React');
|
|
35
|
-
}
|
|
36
|
-
catch (error) {
|
|
37
|
-
console.error('[NxtlinqAIAgent] React instance check failed:', error);
|
|
38
|
-
}
|
|
39
|
-
finally {
|
|
40
|
-
reactInstanceCheckPerformed = true;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
export function ensureReactCompatibility() {
|
|
44
|
-
// This function can be extended to perform more compatibility checks
|
|
45
|
-
checkReactInstance();
|
|
46
|
-
}
|
package/dist/setupTests.d.ts
DELETED
package/dist/setupTests.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setupTests.d.ts","sourceRoot":"","sources":["../src/setupTests.ts"],"names":[],"mappings":"AACA,OAAO,2BAA2B,CAAC"}
|
package/dist/setupTests.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
// Test setup file for Jest
|
|
2
|
-
import '@testing-library/jest-dom';
|
|
3
|
-
// Mock window.open for URL tests
|
|
4
|
-
Object.defineProperty(window, 'open', {
|
|
5
|
-
writable: true,
|
|
6
|
-
value: jest.fn(),
|
|
7
|
-
});
|
|
8
|
-
// Mock console methods to avoid noise in tests
|
|
9
|
-
global.console = {
|
|
10
|
-
...console,
|
|
11
|
-
log: jest.fn(),
|
|
12
|
-
debug: jest.fn(),
|
|
13
|
-
info: jest.fn(),
|
|
14
|
-
warn: jest.fn(),
|
|
15
|
-
error: jest.fn(),
|
|
16
|
-
};
|