@asgard-js/react 0.0.32-canary.1 → 0.0.32

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.
Files changed (37) hide show
  1. package/dist/components/chatbot/chatbot-body/conversation-message-renderer.d.ts +1 -1
  2. package/dist/components/chatbot/chatbot.d.ts +1 -1
  3. package/dist/components/templates/button-template/button-template.d.ts +1 -1
  4. package/dist/components/templates/button-template/card.d.ts +1 -1
  5. package/dist/components/templates/carousel-template/carousel-template.d.ts +1 -1
  6. package/dist/components/templates/carousel-template/carousel-template.d.ts.map +1 -1
  7. package/dist/components/templates/chart-template/chart-template.d.ts +1 -1
  8. package/dist/components/templates/chart-template/chart-template.d.ts.map +1 -1
  9. package/dist/components/templates/hint-template/hint-template.d.ts +1 -1
  10. package/dist/components/templates/image-template/image-template.d.ts +1 -1
  11. package/dist/components/templates/image-template/image-template.d.ts.map +1 -1
  12. package/dist/components/templates/text-template/text-template.d.ts +1 -1
  13. package/dist/components/templates/text-template/use-react-markdown-renderer.d.ts.map +1 -1
  14. package/dist/context/asgard-app-initialization-context.d.ts +1 -1
  15. package/dist/context/asgard-service-context.d.ts +1 -1
  16. package/dist/context/asgard-template-context.d.ts +3 -3
  17. package/dist/context/asgard-template-context.d.ts.map +1 -1
  18. package/dist/hooks/use-asgard-service-client.d.ts +1 -1
  19. package/dist/hooks/use-channel.d.ts +4 -4
  20. package/dist/hooks/use-channel.d.ts.map +1 -1
  21. package/dist/index.js +6 -10
  22. package/dist/models/bot-provider.d.ts +1 -1
  23. package/dist/utils/deep-merge.d.ts +1 -1
  24. package/dist/utils/deep-merge.d.ts.map +1 -1
  25. package/package.json +2 -2
  26. package/src/components/templates/button-template/card.tsx +1 -1
  27. package/src/components/templates/carousel-template/carousel-template.tsx +1 -2
  28. package/src/components/templates/chart-template/chart-template.tsx +5 -4
  29. package/src/components/templates/image-template/image-template.tsx +3 -3
  30. package/src/components/templates/text-template/use-react-markdown-renderer.spec.tsx +7 -7
  31. package/src/components/templates/text-template/use-react-markdown-renderer.tsx +7 -9
  32. package/src/context/asgard-template-context.tsx +2 -2
  33. package/src/context/asgard-theme-context.tsx +1 -1
  34. package/src/hooks/use-channel.ts +8 -8
  35. package/src/utils/deep-merge.ts +4 -7
  36. package/tsconfig.lib.json +1 -2
  37. package/tsconfig.tsbuildinfo +0 -1
@@ -1,4 +1,4 @@
1
- import { ConversationMessage } from '../../../../../core/src/index.ts';
1
+ import { ConversationMessage } from '@asgard-js/core';
2
2
  import { ReactNode } from 'react';
3
3
 
4
4
  interface ConversationMessageRendererProps {
@@ -1,6 +1,6 @@
1
1
  import { AsgardServiceContextValue, AsgardTemplateContextValue, AsgardServiceContextProviderProps } from '../../context';
2
2
  import { AsgardThemeContextValue } from '../../context/asgard-theme-context';
3
- import { ClientConfig, ConversationMessage } from '../../../../core/src/index.ts';
3
+ import { ClientConfig, ConversationMessage } from '@asgard-js/core';
4
4
  import { ReactNode, CSSProperties } from 'react';
5
5
 
6
6
  interface ChatbotProps extends AsgardTemplateContextValue {
@@ -1,5 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- import { ConversationBotMessage } from '../../../../../core/src/index.ts';
2
+ import { ConversationBotMessage } from '@asgard-js/core';
3
3
 
4
4
  interface ButtonTemplateProps {
5
5
  message: ConversationBotMessage;
@@ -1,4 +1,4 @@
1
- import { ButtonMessageTemplate, CarouselMessageTemplate } from '../../../../../core/src/index.ts';
1
+ import { ButtonMessageTemplate, CarouselMessageTemplate } from '@asgard-js/core';
2
2
  import { ReactNode, CSSProperties } from 'react';
3
3
 
4
4
  interface CardProps {
@@ -1,4 +1,4 @@
1
- import { ConversationBotMessage } from '../../../../../core/src/index.ts';
1
+ import { ConversationBotMessage } from '@asgard-js/core';
2
2
  import { ReactNode } from 'react';
3
3
 
4
4
  interface CarouselTemplateProps {
@@ -1 +1 @@
1
- {"version":3,"file":"carousel-template.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/carousel-template/carousel-template.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKlC,OAAO,EAEL,sBAAsB,EAEvB,MAAM,iBAAiB,CAAC;AAKzB,UAAU,qBAAqB;IAC7B,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,SAAS,CA8BxE"}
1
+ {"version":3,"file":"carousel-template.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/carousel-template/carousel-template.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKlC,OAAO,EAEL,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAKzB,UAAU,qBAAqB;IAC7B,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,SAAS,CA8BxE"}
@@ -1,4 +1,4 @@
1
- import { ConversationBotMessage } from '../../../../../core/src/index.ts';
1
+ import { ConversationBotMessage } from '@asgard-js/core';
2
2
  import { ReactNode } from 'react';
3
3
 
4
4
  interface ChartTemplateProps {
@@ -1 +1 @@
1
- {"version":3,"file":"chart-template.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/chart-template/chart-template.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoC,MAAM,OAAO,CAAC;AAGpE,OAAO,EAAE,sBAAsB,EAAwB,MAAM,iBAAiB,CAAC;AAQ/E,UAAU,kBAAkB;IAC1B,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,SAAS,CA2DlE"}
1
+ {"version":3,"file":"chart-template.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/chart-template/chart-template.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoC,MAAM,OAAO,CAAC;AAGpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AASzD,UAAU,kBAAkB;IAC1B,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,SAAS,CA2DlE"}
@@ -1,4 +1,4 @@
1
- import { ConversationMessage } from '../../../../../core/src/index.ts';
1
+ import { ConversationMessage } from '@asgard-js/core';
2
2
  import { ReactNode } from 'react';
3
3
 
4
4
  interface HintTemplateProps {
@@ -1,4 +1,4 @@
1
- import { ConversationBotMessage } from '../../../../../core/src/index.ts';
1
+ import { ConversationBotMessage } from '@asgard-js/core';
2
2
  import { ReactNode } from 'react';
3
3
 
4
4
  interface ImageTemplateProps {
@@ -1 +1 @@
1
- {"version":3,"file":"image-template.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/image-template/image-template.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAI5C,OAAO,EAAE,sBAAsB,EAAwB,MAAM,iBAAiB,CAAC;AAK/E,UAAU,kBAAkB;IAC1B,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,SAAS,CA4ClE"}
1
+ {"version":3,"file":"image-template.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/image-template/image-template.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAI5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAMzD,UAAU,kBAAkB;IAC1B,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,SAAS,CA2ClE"}
@@ -1,4 +1,4 @@
1
- import { ConversationMessage } from '../../../../../core/src/index.ts';
1
+ import { ConversationMessage } from '@asgard-js/core';
2
2
  import { ReactNode } from 'react';
3
3
 
4
4
  interface TextTemplateProps {
@@ -1 +1 @@
1
- {"version":3,"file":"use-react-markdown-renderer.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/text-template/use-react-markdown-renderer.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAMV,MAAM,OAAO,CAAC;AAMf,OAAO,0BAA0B,CAAC;AAKlC,UAAU,oBAAoB;IAC5B,UAAU,EAAE,SAAS,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB;AAQD,eAAO,MAAM,cAAc,MAAM,CAAC;AAGlC,wBAAgB,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI,CAQnE;AAyHD,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,KAAK,SAAM,GACV,oBAAoB,CAqGtB"}
1
+ {"version":3,"file":"use-react-markdown-renderer.d.ts","sourceRoot":"","sources":["../../../../src/components/templates/text-template/use-react-markdown-renderer.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAMV,MAAM,OAAO,CAAC;AAMf,OAAO,0BAA0B,CAAC;AAKlC,UAAU,oBAAoB;IAC5B,UAAU,EAAE,SAAS,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB;AAQD,eAAO,MAAM,cAAc,MAAM,CAAC;AAGlC,wBAAgB,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI,CAQnE;AAuHD,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,KAAK,SAAM,GACV,oBAAoB,CAqGtB"}
@@ -1,4 +1,4 @@
1
- import { ClientConfig } from '../../../core/src/index.ts';
1
+ import { ClientConfig } from '@asgard-js/core';
2
2
  import { default as React, PropsWithChildren, ReactNode } from 'react';
3
3
 
4
4
  type AsyncInitializers = {
@@ -1,6 +1,6 @@
1
1
  import { UseChannelProps, UseChannelReturn } from '../hooks';
2
2
  import { ForwardedRef, ReactNode, RefObject } from 'react';
3
- import { AsgardServiceClient, ClientConfig, ConversationMessage } from '../../../core/src/index.ts';
3
+ import { AsgardServiceClient, ClientConfig, ConversationMessage } from '@asgard-js/core';
4
4
 
5
5
  export interface AsgardServiceContextValue {
6
6
  avatar?: string;
@@ -1,4 +1,4 @@
1
- import { ConversationErrorMessage, FetchSsePayload } from '../../../core/src/index.ts';
1
+ import { ConversationErrorMessage, FetchSsePayload } from '@asgard-js/core';
2
2
  import { PropsWithChildren, ReactNode } from 'react';
3
3
 
4
4
  export interface AsgardTemplateContextValue {
@@ -6,7 +6,7 @@ export interface AsgardTemplateContextValue {
6
6
  errorMessageRenderer?: (message: ConversationErrorMessage) => ReactNode;
7
7
  onTemplateBtnClick?: (payload: Record<string, unknown>, { sse, }: {
8
8
  sse: {
9
- sendMessage: (payload: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>) => void;
9
+ sendMessage: (payload: Pick<FetchSsePayload, 'text' | 'payload'>) => void;
10
10
  };
11
11
  }) => void;
12
12
  defaultLinkTarget?: '_blank' | '_self' | '_parent' | '_top';
@@ -17,7 +17,7 @@ interface AsgardTemplateContextProviderProps extends PropsWithChildren {
17
17
  errorMessageRenderer?: (message: ConversationErrorMessage) => ReactNode;
18
18
  onTemplateBtnClick?: (payload: Record<string, unknown>, { sse, }: {
19
19
  sse: {
20
- sendMessage: (payload: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>) => void;
20
+ sendMessage: (payload: Pick<FetchSsePayload, 'text' | 'payload'>) => void;
21
21
  };
22
22
  }) => void;
23
23
  defaultLinkTarget?: '_blank' | '_self' | '_parent' | '_top';
@@ -1 +1 @@
1
- {"version":3,"file":"asgard-template-context.d.ts","sourceRoot":"","sources":["../../src/context/asgard-template-context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,EACjB,SAAS,EAGV,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE5E,MAAM,WAAW,0BAA0B;IACzC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAC3D,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,SAAS,CAAC;IACxE,kBAAkB,CAAC,EAAE,CACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,EACE,GAAG,GACJ,EAAE;QACD,GAAG,EAAE;YACH,WAAW,EAAE,CACX,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,KAC/E,IAAI,CAAC;SACX,CAAC;KACH,KACE,IAAI,CAAC;IACV,iBAAiB,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;CAC7D;AAED,eAAO,MAAM,qBAAqB,qDAKhC,CAAC;AAEH,UAAU,kCAAmC,SAAQ,iBAAiB;IACpE,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAC3D,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,SAAS,CAAC;IACxE,kBAAkB,CAAC,EAAE,CACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,EACE,GAAG,GACJ,EAAE;QACD,GAAG,EAAE;YACH,WAAW,EAAE,CACX,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,KAC/E,IAAI,CAAC;SACX,CAAC;KACH,KACE,IAAI,CAAC;IACV,iBAAiB,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;CAC7D;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,kCAAkC,GACxC,SAAS,CAwBX;AAED,wBAAgB,wBAAwB,IAAI,0BAA0B,CAErE"}
1
+ {"version":3,"file":"asgard-template-context.d.ts","sourceRoot":"","sources":["../../src/context/asgard-template-context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,EACjB,SAAS,EAGV,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE5E,MAAM,WAAW,0BAA0B;IACzC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAC3D,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,SAAS,CAAC;IACxE,kBAAkB,CAAC,EAAE,CACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,EACE,GAAG,GACJ,EAAE;QACD,GAAG,EAAE;YACH,WAAW,EAAE,CACX,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC,KAC/C,IAAI,CAAC;SACX,CAAC;KACH,KACE,IAAI,CAAC;IACV,iBAAiB,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;CAC7D;AAED,eAAO,MAAM,qBAAqB,qDAKhC,CAAC;AAEH,UAAU,kCAAmC,SAAQ,iBAAiB;IACpE,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAC3D,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,SAAS,CAAC;IACxE,kBAAkB,CAAC,EAAE,CACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,EACE,GAAG,GACJ,EAAE;QACD,GAAG,EAAE;YACH,WAAW,EAAE,CACX,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC,KAC/C,IAAI,CAAC;SACX,CAAC;KACH,KACE,IAAI,CAAC;IACV,iBAAiB,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;CAC7D;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,kCAAkC,GACxC,SAAS,CAwBX;AAED,wBAAgB,wBAAwB,IAAI,0BAA0B,CAErE"}
@@ -1,4 +1,4 @@
1
- import { ClientConfig, AsgardServiceClient } from '../../../core/src/index.ts';
1
+ import { ClientConfig, AsgardServiceClient } from '@asgard-js/core';
2
2
 
3
3
  interface UseAsgardServiceClientProps {
4
4
  config: ClientConfig;
@@ -1,8 +1,8 @@
1
- import { AsgardServiceClient, Conversation, ConversationMessage, EventType, FetchSsePayload, SseResponse } from '../../../core/src/index.ts';
1
+ import { AsgardServiceClient, Conversation, ConversationMessage, EventType, FetchSsePayload, SseResponse } from '@asgard-js/core';
2
2
 
3
3
  export interface UseChannelProps {
4
4
  defaultIsOpen?: boolean;
5
- resetPayload?: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>;
5
+ resetPayload?: Pick<FetchSsePayload, 'text' | 'payload'>;
6
6
  client: AsgardServiceClient | null;
7
7
  customChannelId: string;
8
8
  customMessageId?: string;
@@ -16,8 +16,8 @@ export interface UseChannelReturn {
16
16
  isResetting: boolean;
17
17
  isConnecting: boolean;
18
18
  conversation: Conversation | null;
19
- sendMessage?: (payload: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>) => void;
20
- resetChannel?: (payload?: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>) => void;
19
+ sendMessage?: (payload: Pick<FetchSsePayload, 'text' | 'payload'>) => void;
20
+ resetChannel?: (payload?: Pick<FetchSsePayload, 'text' | 'payload'>) => void;
21
21
  closeChannel?: () => void;
22
22
  }
23
23
  export declare function useChannel(props: UseChannelProps): UseChannelReturn;
@@ -1 +1 @@
1
- {"version":3,"file":"use-channel.d.ts","sourceRoot":"","sources":["../../src/hooks/use-channel.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EAGnB,YAAY,EACZ,mBAAmB,EACnB,SAAS,EACT,eAAe,EACf,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAGzB,MAAM,WAAW,eAAe;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC;IACzF,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACrC,YAAY,CAAC,EAAE,CACb,QAAQ,EAAE,WAAW,CAAC,SAAS,CAAC,EAChC,OAAO,EAAE;QACP,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;KACnC,KACE,IAAI,CAAC;CACX;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,KAAK,IAAI,CAAC;IAC3G,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,KAAK,IAAI,CAAC;IAC7G,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB,CAoHnE"}
1
+ {"version":3,"file":"use-channel.d.ts","sourceRoot":"","sources":["../../src/hooks/use-channel.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EAGnB,YAAY,EACZ,mBAAmB,EACnB,SAAS,EACT,eAAe,EACf,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAGzB,MAAM,WAAW,eAAe;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzD,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACrC,YAAY,CAAC,EAAE,CACb,QAAQ,EAAE,WAAW,CAAC,SAAS,CAAC,EAChC,OAAO,EAAE;QACP,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;KACnC,KACE,IAAI,CAAC;CACX;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,IAAI,CAAC;IAC3E,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,IAAI,CAAC;IAC7E,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB,CAoHnE"}
package/dist/index.js CHANGED
@@ -20,10 +20,7 @@ function lg(e, t) {
20
20
  n[r] = i;
21
21
  continue;
22
22
  }
23
- n[r] = lg(
24
- m9(n[r]) ? n[r] : {},
25
- i
26
- );
23
+ n[r] = lg(m9(n[r]) ? n[r] : {}, i);
27
24
  }
28
25
  return n;
29
26
  }
@@ -152,8 +149,8 @@ function RG(e) {
152
149
  ), v = Pt(() => {
153
150
  u((w) => (w == null || w.close(), null)), f(!1), h(!1), m(!1), y(null);
154
151
  }, []), E = Pt(
155
- (w) => l == null ? void 0 : l.sendMessage({ ...w, customMessageId: a }),
156
- [l, a]
152
+ (w) => l == null ? void 0 : l.sendMessage(w),
153
+ [l]
157
154
  );
158
155
  return rn(() => {
159
156
  !l && c && b(r);
@@ -35572,8 +35569,7 @@ const Yie = ({ children: e, ...t }) => /* @__PURE__ */ ne("div", { className: yi
35572
35569
  Qie,
35573
35570
  {
35574
35571
  className: `math math-display ${e || ""}`,
35575
- ...t,
35576
- children: t.children
35572
+ ...t
35577
35573
  }
35578
35574
  ) : /* @__PURE__ */ ne("div", { className: e, ...t })
35579
35575
  };
@@ -76792,7 +76788,7 @@ function HMe(e) {
76792
76788
  var p, m;
76793
76789
  return ((m = (p = n == null ? void 0 : n.chartOptions) == null ? void 0 : p.find((g) => g.type === o)) == null ? void 0 : m.spec) ?? l[0].spec;
76794
76790
  },
76795
- [o, n.chartOptions, l]
76791
+ [o, n.chartOptions]
76796
76792
  ), c = on(
76797
76793
  () => ({
76798
76794
  color: i == null ? void 0 : i.color,
@@ -76870,7 +76866,7 @@ function ZMe(e) {
76870
76866
  {
76871
76867
  quickReplies: n.quickReplies,
76872
76868
  time: t.time,
76873
- children: /* @__PURE__ */ ne("div", { className: Rm.image_box, onClick: () => l(!0), children: /* @__PURE__ */ ne("img", { src: r, alt: "Conversation content" }) })
76869
+ children: /* @__PURE__ */ ne("div", { className: Rm.image_box, onClick: () => l(!0), children: /* @__PURE__ */ ne("img", { src: r, alt: "Message image" }) })
76874
76870
  }
76875
76871
  )
76876
76872
  ]
@@ -1,4 +1,4 @@
1
- import { ClientConfig } from '../../../core/src/index.ts';
1
+ import { ClientConfig } from '@asgard-js/core';
2
2
 
3
3
  export type BotProviderMetadataResponse = {
4
4
  name: string;
@@ -1,3 +1,3 @@
1
1
  export declare function isObject(item: unknown): item is Record<string, unknown>;
2
- export declare function deepMerge<T extends Record<string, unknown>, U extends Record<string, unknown>>(target: T, source: U): T & U;
2
+ export declare function deepMerge<T extends object, U extends object>(target: T, source: U): T & U;
3
3
  //# sourceMappingURL=deep-merge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"deep-merge.d.ts","sourceRoot":"","sources":["../../src/utils/deep-merge.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEvE;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5F,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,CAAC,GACR,CAAC,GAAG,CAAC,CAkBP"}
1
+ {"version":3,"file":"deep-merge.d.ts","sourceRoot":"","sources":["../../src/utils/deep-merge.ts"],"names":[],"mappings":"AAAA,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEvE;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAC1D,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,CAAC,GACR,CAAC,GAAG,CAAC,CAeP"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@asgard-js/react",
3
- "version": "0.0.32-canary.1",
3
+ "version": "0.0.32",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -54,7 +54,7 @@
54
54
  "vitest": "^1.6.0"
55
55
  },
56
56
  "peerDependencies": {
57
- "@asgard-js/core": "^0.0.32-canary.1",
57
+ "@asgard-js/core": "^0.0.32",
58
58
  "react": "^18.0.0",
59
59
  "react-dom": "^18.0.0"
60
60
  },
@@ -107,7 +107,7 @@ export function Card(props: CardProps): ReactNode {
107
107
  <h5 className={styles.card_title}>{template?.title}</h5>
108
108
  <div className={styles.card_description}>{template?.text}</div>
109
109
  <div className={styles.card_actions}>
110
- {template?.buttons?.map((btn: { label: string; action: ButtonAction }, index: number) => (
110
+ {template?.buttons?.map((btn, index) => (
111
111
  <button
112
112
  key={index}
113
113
  onClick={handleClick(btn.action)}
@@ -6,7 +6,6 @@ import { Card } from '../button-template/card';
6
6
  import {
7
7
  CarouselMessageTemplate,
8
8
  ConversationBotMessage,
9
- ButtonMessageTemplate,
10
9
  } from '@asgard-js/core';
11
10
  import { Time } from '../time';
12
11
  import { useAsgardContext } from 'src/context/asgard-service-context';
@@ -34,7 +33,7 @@ export function CarouselTemplate(props: CarouselTemplateProps): ReactNode {
34
33
  <Avatar avatar={avatar} />
35
34
  <TemplateBoxContent quickReplies={template.quickReplies}>
36
35
  <div className={styles.carousel_root}>
37
- {template.columns?.map((column: Omit<ButtonMessageTemplate, 'type' | 'quickReplies'>, index: number) => (
36
+ {template.columns?.map((column, index) => (
38
37
  <Card
39
38
  key={index}
40
39
  template={column}
@@ -1,9 +1,10 @@
1
1
  import { ReactNode, useMemo, useState, CSSProperties } from 'react';
2
2
  import { TemplateBox, TemplateBoxContent } from '../template-box';
3
3
  import { Avatar } from '../avatar';
4
- import { ConversationBotMessage, ChartMessageTemplate } from '@asgard-js/core';
4
+ import { ConversationBotMessage } from '@asgard-js/core';
5
5
  import { Time } from '../time';
6
6
  import { useAsgardContext } from 'src/context/asgard-service-context';
7
+ import { ChartMessageTemplate } from '../../../../../core/src';
7
8
  import { VegaLite, VisualizationSpec } from 'react-vega';
8
9
  import clsx from 'clsx';
9
10
  import classes from './chart-template.module.scss';
@@ -28,9 +29,9 @@ export function ChartTemplate(props: ChartTemplateProps): ReactNode {
28
29
 
29
30
  const spec = useMemo(
30
31
  () =>
31
- (template?.chartOptions?.find((item: { type: string; title: string; spec: Record<string, unknown> }) => item.type === option)?.spec ??
32
+ (template?.chartOptions?.find((item) => item.type === option)?.spec ??
32
33
  options[0].spec) as VisualizationSpec,
33
- [option, template.chartOptions, options]
34
+ [option, template.chartOptions]
34
35
  );
35
36
 
36
37
  const styles = useMemo<CSSProperties>(
@@ -55,7 +56,7 @@ export function ChartTemplate(props: ChartTemplateProps): ReactNode {
55
56
  </div>
56
57
  {options.length > 1 && (
57
58
  <div className={classes.quick_replies_box}>
58
- {options.map((option: { type: string; title: string; spec: Record<string, unknown> }) => (
59
+ {options.map((option) => (
59
60
  <button
60
61
  key={option.type}
61
62
  className={classes.quick_reply}
@@ -2,9 +2,10 @@ import { ReactNode, useState } from 'react';
2
2
  import { TemplateBox, TemplateBoxContent } from '../template-box';
3
3
  import { Avatar } from '../avatar';
4
4
  import styles from './image-template.module.scss';
5
- import { ConversationBotMessage, ImageMessageTemplate } from '@asgard-js/core';
5
+ import { ConversationBotMessage } from '@asgard-js/core';
6
6
  import { useAsgardContext } from 'src/context/asgard-service-context';
7
7
  import { useAsgardThemeContext } from 'src/context/asgard-theme-context';
8
+ import { ImageMessageTemplate } from '../../../../../core/src';
8
9
  import CloseSvg from 'src/icons/close.svg?react';
9
10
 
10
11
  interface ImageTemplateProps {
@@ -36,7 +37,6 @@ export function ImageTemplate(props: ImageTemplateProps): ReactNode {
36
37
  </div>
37
38
  );
38
39
  }
39
-
40
40
  return (
41
41
  <TemplateBox
42
42
  className="asgard-image-template"
@@ -50,7 +50,7 @@ export function ImageTemplate(props: ImageTemplateProps): ReactNode {
50
50
  time={message.time}
51
51
  >
52
52
  <div className={styles.image_box} onClick={() => setIsFullScreen(true)}>
53
- <img src={previewImageUrl} alt="Conversation content" />
53
+ <img src={previewImageUrl} alt="Message image" />
54
54
  </div>
55
55
  </TemplateBoxContent>
56
56
  </TemplateBox>
@@ -23,7 +23,7 @@ describe('useMarkdownRenderer - Simple Tests', () => {
23
23
  });
24
24
 
25
25
  it('should handle null input safely', () => {
26
- const { result } = renderHook(() => useMarkdownRenderer(null));
26
+ const { result } = renderHook(() => useMarkdownRenderer(null as any));
27
27
 
28
28
  expect(result.current.htmlBlocks).toBeDefined();
29
29
  expect(result.current.lastTypingText).toBe('');
@@ -658,7 +658,7 @@ a_{m1} & a_{m2} & \\cdots & a_{mn}
658
658
  const mathText = 'Cached math: $E = mc^2$';
659
659
 
660
660
  // First render
661
- renderHook(() => useMarkdownRenderer(mathText, 0));
661
+ const { result: result1 } = renderHook(() => useMarkdownRenderer(mathText, 0));
662
662
  await new Promise(resolve => setTimeout(resolve, 100));
663
663
 
664
664
  // Second render should be faster (cached)
@@ -679,7 +679,7 @@ a_{m1} & a_{m2} & \\cdots & a_{mn}
679
679
  });
680
680
 
681
681
  it('should not evict entries when cache is below limit', () => {
682
- const cache = new Map<string, string>();
682
+ const cache = new Map<string, any>();
683
683
  cache.set('key1', 'value1');
684
684
  cache.set('key2', 'value2');
685
685
 
@@ -691,7 +691,7 @@ a_{m1} & a_{m2} & \\cdots & a_{mn}
691
691
  });
692
692
 
693
693
  it('should evict oldest entry when cache reaches MAX_CACHE_SIZE', () => {
694
- const cache = new Map<string, string>();
694
+ const cache = new Map<string, any>();
695
695
 
696
696
  // Fill cache to exactly MAX_CACHE_SIZE
697
697
  for (let i = 0; i < MAX_CACHE_SIZE; i++) {
@@ -710,7 +710,7 @@ a_{m1} & a_{m2} & \\cdots & a_{mn}
710
710
  });
711
711
 
712
712
  it('should implement LRU eviction strategy correctly', () => {
713
- const cache = new Map<string, string>();
713
+ const cache = new Map<string, any>();
714
714
 
715
715
  // Fill cache to MAX_CACHE_SIZE
716
716
  for (let i = 0; i < MAX_CACHE_SIZE; i++) {
@@ -732,7 +732,7 @@ a_{m1} & a_{m2} & \\cdots & a_{mn}
732
732
  });
733
733
 
734
734
  it('should handle empty cache gracefully', () => {
735
- const cache = new Map<string, string>();
735
+ const cache = new Map<string, any>();
736
736
 
737
737
  manageCacheSize(cache);
738
738
 
@@ -740,7 +740,7 @@ a_{m1} & a_{m2} & \\cdots & a_{mn}
740
740
  });
741
741
 
742
742
  it('should handle cache with exactly MAX_CACHE_SIZE entries', () => {
743
- const cache = new Map<string, string>();
743
+ const cache = new Map<string, any>();
744
744
 
745
745
  // Fill cache to exactly MAX_CACHE_SIZE
746
746
  for (let i = 0; i < MAX_CACHE_SIZE; i++) {
@@ -83,14 +83,14 @@ function isCompleteParagraph(raw: string): boolean {
83
83
  }
84
84
 
85
85
  // Custom table renderer to maintain current styling
86
- const TableRenderer = ({ children, ...props }: React.ComponentProps<'table'>): ReactNode => (
86
+ const TableRenderer = ({ children, ...props }: any): ReactNode => (
87
87
  <div className={classes.table_container}>
88
88
  <table {...props}>{children}</table>
89
89
  </div>
90
90
  );
91
91
 
92
92
  // Custom code renderer to maintain highlight.js classes exactly
93
- const CodeRenderer = ({ children, className, ...props }: React.ComponentProps<'code'>): ReactNode => {
93
+ const CodeRenderer = ({ children, className, ...props }: any): ReactNode => {
94
94
  return (
95
95
  <code className={`hljs ${className || ''}`} {...props}>
96
96
  {children}
@@ -99,7 +99,7 @@ const CodeRenderer = ({ children, className, ...props }: React.ComponentProps<'c
99
99
  };
100
100
 
101
101
  // Custom link renderer to integrate defaultLinkTarget prop
102
- const LinkRenderer = ({ children, href, ...props }: React.ComponentProps<'a'>): ReactNode => {
102
+ const LinkRenderer = ({ children, href, ...props }: any): ReactNode => {
103
103
  const { defaultLinkTarget } = useAsgardTemplateContext();
104
104
 
105
105
  const handleClick = useCallback(
@@ -120,13 +120,13 @@ const LinkRenderer = ({ children, href, ...props }: React.ComponentProps<'a'>):
120
120
  };
121
121
 
122
122
  // Custom math renderers for inline and block math expressions
123
- const InlineMathRenderer = ({ children, ...props }: React.ComponentProps<'span'>): ReactNode => (
123
+ const InlineMathRenderer = ({ children, ...props }: any): ReactNode => (
124
124
  <span className="math math-inline" {...props}>
125
125
  {children}
126
126
  </span>
127
127
  );
128
128
 
129
- const BlockMathRenderer = ({ children, ...props }: React.ComponentProps<'div'>): ReactNode => (
129
+ const BlockMathRenderer = ({ children, ...props }: any): ReactNode => (
130
130
  <div className="math math-display" {...props}>
131
131
  {children}
132
132
  </div>
@@ -138,7 +138,7 @@ const components = {
138
138
  code: CodeRenderer,
139
139
  a: LinkRenderer,
140
140
  math: InlineMathRenderer, // Inline math: $expression$
141
- div: ({ className, ...props }: React.ComponentProps<'div'>): ReactNode => {
141
+ div: ({ className, ...props }: any): ReactNode => {
142
142
  // Block math: $$expression$$
143
143
  // Check for KaTeX display math classes
144
144
  if (
@@ -149,9 +149,7 @@ const components = {
149
149
  <BlockMathRenderer
150
150
  className={`math math-display ${className || ''}`}
151
151
  {...props}
152
- >
153
- {props.children}
154
- </BlockMathRenderer>
152
+ />
155
153
  );
156
154
  }
157
155
 
@@ -17,7 +17,7 @@ export interface AsgardTemplateContextValue {
17
17
  }: {
18
18
  sse: {
19
19
  sendMessage: (
20
- payload: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>
20
+ payload: Pick<FetchSsePayload, 'text' | 'payload'>
21
21
  ) => void;
22
22
  };
23
23
  }
@@ -42,7 +42,7 @@ interface AsgardTemplateContextProviderProps extends PropsWithChildren {
42
42
  }: {
43
43
  sse: {
44
44
  sendMessage: (
45
- payload: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>
45
+ payload: Pick<FetchSsePayload, 'text' | 'payload'>
46
46
  ) => void;
47
47
  };
48
48
  }
@@ -257,7 +257,7 @@ export function AsgardThemeContextProvider(
257
257
  userMessage: {},
258
258
  };
259
259
 
260
- const tempTheme = deepMerge(defaultAsgardThemeContextValue as unknown as Record<string, unknown>, {
260
+ const tempTheme = deepMerge(defaultAsgardThemeContextValue, {
261
261
  chatbot: {
262
262
  backgroundColor: themeFromAnnotations.chatbot?.backgroundColor,
263
263
  borderColor: themeFromAnnotations.chatbot?.borderColor,
@@ -12,7 +12,7 @@ import { useCallback, useEffect, useMemo, useState } from 'react';
12
12
 
13
13
  export interface UseChannelProps {
14
14
  defaultIsOpen?: boolean;
15
- resetPayload?: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>;
15
+ resetPayload?: Pick<FetchSsePayload, 'text' | 'payload'>;
16
16
  client: AsgardServiceClient | null;
17
17
  customChannelId: string;
18
18
  customMessageId?: string;
@@ -30,8 +30,8 @@ export interface UseChannelReturn {
30
30
  isResetting: boolean;
31
31
  isConnecting: boolean;
32
32
  conversation: Conversation | null;
33
- sendMessage?: (payload: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>) => void;
34
- resetChannel?: (payload?: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>) => void;
33
+ sendMessage?: (payload: Pick<FetchSsePayload, 'text' | 'payload'>) => void;
34
+ resetChannel?: (payload?: Pick<FetchSsePayload, 'text' | 'payload'>) => void;
35
35
  closeChannel?: () => void;
36
36
  }
37
37
 
@@ -61,7 +61,7 @@ export function useChannel(props: UseChannelProps): UseChannelReturn {
61
61
  const [conversation, setConversation] = useState<Conversation | null>(null);
62
62
 
63
63
  const resetChannel = useCallback(
64
- async (payload?: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>) => {
64
+ async (payload?: Pick<FetchSsePayload, 'text' | 'payload'>) => {
65
65
  const conversation = new Conversation({
66
66
  messages: new Map(
67
67
  initMessages?.map((message) => [message.messageId, message])
@@ -106,7 +106,7 @@ export function useChannel(props: UseChannelProps): UseChannelReturn {
106
106
  );
107
107
 
108
108
  const closeChannel = useCallback(() => {
109
- setChannel((prevChannel: Channel | null) => {
109
+ setChannel((prevChannel) => {
110
110
  prevChannel?.close();
111
111
 
112
112
  return null;
@@ -118,9 +118,9 @@ export function useChannel(props: UseChannelProps): UseChannelReturn {
118
118
  }, []);
119
119
 
120
120
  const sendMessage = useCallback(
121
- (payload: Pick<FetchSsePayload, 'text'> & Partial<Pick<FetchSsePayload, 'payload'>>) =>
122
- channel?.sendMessage({ ...payload, customMessageId }),
123
- [channel, customMessageId]
121
+ (payload: Pick<FetchSsePayload, 'text' | 'payload'>) =>
122
+ channel?.sendMessage(payload),
123
+ [channel]
124
124
  );
125
125
 
126
126
  useEffect(() => {
@@ -2,24 +2,21 @@ export function isObject(item: unknown): item is Record<string, unknown> {
2
2
  return item !== null && typeof item === 'object' && !Array.isArray(item);
3
3
  }
4
4
 
5
- export function deepMerge<T extends Record<string, unknown>, U extends Record<string, unknown>>(
5
+ export function deepMerge<T extends object, U extends object>(
6
6
  target: T,
7
7
  source: U
8
8
  ): T & U {
9
- const output = { ...target } as T & U;
9
+ const output = { ...target } as any;
10
10
 
11
11
  if (!source) return output;
12
12
 
13
13
  for (const [key, value] of Object.entries(source)) {
14
14
  if (!isObject(value)) {
15
- (output as Record<string, unknown>)[key] = value;
15
+ output[key] = value;
16
16
  continue;
17
17
  }
18
18
 
19
- (output as Record<string, unknown>)[key] = deepMerge(
20
- isObject((output as Record<string, unknown>)[key]) ? (output as Record<string, unknown>)[key] as Record<string, unknown> : {},
21
- value as Record<string, unknown>
22
- );
19
+ output[key] = deepMerge(isObject(output[key]) ? output[key] : {}, value);
23
20
  }
24
21
 
25
22
  return output;
package/tsconfig.lib.json CHANGED
@@ -3,8 +3,7 @@
3
3
  "compilerOptions": {
4
4
  "baseUrl": ".",
5
5
  "paths": {
6
- "src/*": ["src/*"],
7
- "@asgard-js/core": ["../core/src/index.ts"]
6
+ "src/*": ["src/*"]
8
7
  },
9
8
  "outDir": "out-tsc/react",
10
9
  "types": [
@@ -1 +0,0 @@
1
- {"fileNames":[],"fileInfos":[],"root":[],"options":{"allowJs":false,"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"emitDecoratorMetadata":false,"esModuleInterop":true,"experimentalDecorators":false,"importHelpers":true,"module":99,"noEmitOnError":true,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"noImplicitReturns":true,"noUnusedLocals":true,"removeComments":false,"rootDir":"../..","skipDefaultLibCheck":false,"skipLibCheck":true,"sourceMap":false,"strict":true,"target":99,"verbatimModuleSyntax":false},"version":"5.6.3"}