@gooddata/sdk-ui-gen-ai 11.10.0-alpha.2 → 11.10.0-alpha.5

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 (40) hide show
  1. package/esm/components/CustomizationProvider.d.ts +9 -0
  2. package/esm/components/CustomizationProvider.d.ts.map +1 -0
  3. package/esm/components/CustomizationProvider.js +26 -0
  4. package/esm/components/CustomizationProvider.js.map +1 -0
  5. package/esm/components/GenAIChat.d.ts +5 -0
  6. package/esm/components/GenAIChat.d.ts.map +1 -1
  7. package/esm/components/GenAIChat.js +3 -2
  8. package/esm/components/GenAIChat.js.map +1 -1
  9. package/esm/components/GenAIChatDialog.d.ts +3 -2
  10. package/esm/components/GenAIChatDialog.d.ts.map +1 -1
  11. package/esm/components/GenAIChatDialog.js +3 -2
  12. package/esm/components/GenAIChatDialog.js.map +1 -1
  13. package/esm/components/Messages.d.ts.map +1 -1
  14. package/esm/components/Messages.js +3 -2
  15. package/esm/components/Messages.js.map +1 -1
  16. package/esm/components/customized/LandingQuestion.d.ts +15 -0
  17. package/esm/components/customized/LandingQuestion.d.ts.map +1 -0
  18. package/esm/components/customized/LandingQuestion.js +24 -0
  19. package/esm/components/customized/LandingQuestion.js.map +1 -0
  20. package/esm/components/customized/LandingScreen.d.ts +12 -0
  21. package/esm/components/customized/LandingScreen.d.ts.map +1 -0
  22. package/esm/components/customized/LandingScreen.js +35 -0
  23. package/esm/components/customized/LandingScreen.js.map +1 -0
  24. package/esm/components/customized/LandingTitle.d.ts +16 -0
  25. package/esm/components/customized/LandingTitle.d.ts.map +1 -0
  26. package/esm/components/customized/LandingTitle.js +14 -0
  27. package/esm/components/customized/LandingTitle.js.map +1 -0
  28. package/esm/components/hooks/useKdaDefinition.d.ts.map +1 -1
  29. package/esm/components/hooks/useKdaDefinition.js +4 -1
  30. package/esm/components/hooks/useKdaDefinition.js.map +1 -1
  31. package/esm/index.d.ts +6 -0
  32. package/esm/index.d.ts.map +1 -1
  33. package/esm/index.js +3 -0
  34. package/esm/index.js.map +1 -1
  35. package/esm/sdk-ui-gen-ai.d.ts +51 -0
  36. package/package.json +17 -17
  37. package/esm/components/EmptyState.d.ts +0 -3
  38. package/esm/components/EmptyState.d.ts.map +0 -1
  39. package/esm/components/EmptyState.js +0 -40
  40. package/esm/components/EmptyState.js.map +0 -1
@@ -0,0 +1,9 @@
1
+ import { ComponentType, PropsWithChildren } from "react";
2
+ export type CustomizationContext = {
3
+ landingScreenComponentProvider?: () => ComponentType;
4
+ };
5
+ export declare function CustomizationProvider({ children, landingScreenComponentProvider, }: PropsWithChildren<CustomizationContext>): import("react/jsx-runtime").JSX.Element;
6
+ export declare const useCustomization: () => {
7
+ LandingScreenComponent: ComponentType;
8
+ };
9
+ //# sourceMappingURL=CustomizationProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomizationProvider.d.ts","sourceRoot":"","sources":["../../src/components/CustomizationProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAsC,MAAM,OAAO,CAAC;AAI7F,MAAM,MAAM,oBAAoB,GAAG;IAC/B,8BAA8B,CAAC,EAAE,MAAM,aAAa,CAAC;CACxD,CAAC;AAQF,wBAAgB,qBAAqB,CAAC,EAClC,QAAQ,EACR,8BAA8B,GACjC,EAAE,iBAAiB,CAAC,oBAAoB,CAAC,2CAgBzC;AAED,eAAO,MAAM,gBAAgB;;CAS5B,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // (C) 2025 GoodData Corporation
3
+ import { createContext, useContext, useMemo } from "react";
4
+ import { DefaultLandingScreen } from "./customized/LandingScreen.js";
5
+ const defaultCustomizationContext = {
6
+ landingScreenComponentProvider: () => DefaultLandingScreen,
7
+ };
8
+ const customizationContext = createContext(defaultCustomizationContext);
9
+ export function CustomizationProvider({ children, landingScreenComponentProvider, }) {
10
+ const value = useMemo(() => ({
11
+ ...defaultCustomizationContext,
12
+ ...(landingScreenComponentProvider
13
+ ? {
14
+ landingScreenComponentProvider: () => () => (_jsx(DefaultLandingScreen, { LandingScreen: landingScreenComponentProvider() })),
15
+ }
16
+ : {}),
17
+ }), [landingScreenComponentProvider]);
18
+ return _jsx(customizationContext.Provider, { value: value, children: children });
19
+ }
20
+ export const useCustomization = () => {
21
+ const { landingScreenComponentProvider } = useContext(customizationContext);
22
+ return useMemo(() => ({
23
+ LandingScreenComponent: landingScreenComponentProvider(),
24
+ }), [landingScreenComponentProvider]);
25
+ };
26
+ //# sourceMappingURL=CustomizationProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomizationProvider.js","sourceRoot":"","sources":["../../src/components/CustomizationProvider.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAoC,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAE7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAMrE,MAAM,2BAA2B,GAAmC;IAChE,8BAA8B,EAAE,GAAG,EAAE,CAAC,oBAAoB;CAC7D,CAAC;AAEF,MAAM,oBAAoB,GAAG,aAAa,CAAC,2BAA2B,CAAC,CAAC;AAExE,MAAM,UAAU,qBAAqB,CAAC,EAClC,QAAQ,EACR,8BAA8B,GACQ;IACtC,MAAM,KAAK,GAAG,OAAO,CACjB,GAAG,EAAE,CAAC,CAAC;QACH,GAAG,2BAA2B;QAC9B,GAAG,CAAC,8BAA8B;YAC9B,CAAC,CAAC;gBACI,8BAA8B,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CACxC,KAAC,oBAAoB,IAAC,aAAa,EAAE,8BAA8B,EAAE,GAAI,CAC5E;aACJ;YACH,CAAC,CAAC,EAAE,CAAC;KACZ,CAAC,EACF,CAAC,8BAA8B,CAAC,CACnC,CAAC;IAEF,OAAO,KAAC,oBAAoB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAAiC,CAAC;AACnG,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACjC,MAAM,EAAE,8BAA8B,EAAE,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAE5E,OAAO,OAAO,CACV,GAAG,EAAE,CAAC,CAAC;QACH,sBAAsB,EAAE,8BAA8B,EAAE;KAC3D,CAAC,EACF,CAAC,8BAA8B,CAAC,CACnC,CAAC;AACN,CAAC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { ComponentType } from "react";
1
2
  import { IAnalyticalBackend, IUserWorkspaceSettings } from "@gooddata/sdk-backend-spi";
2
3
  import { CatalogItem, GenAIObjectType, IColorPalette } from "@gooddata/sdk-model";
3
4
  import { LinkHandlerEvent } from "./ConfigContext.js";
@@ -67,6 +68,10 @@ export interface GenAIAssistantProps {
67
68
  * after the store has been initialized.
68
69
  */
69
70
  onDispatcher?: (dispatch: (action: unknown) => void) => void;
71
+ /**
72
+ * Custom React node rendered when no conversation exists yet.
73
+ */
74
+ LandingScreenComponentProvider?: () => ComponentType;
70
75
  }
71
76
  /**
72
77
  * Properties for the GenAIChat component.
@@ -1 +1 @@
1
- {"version":3,"file":"GenAIChat.d.ts","sourceRoot":"","sources":["../../src/components/GenAIChat.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGlF,OAAO,EAAkB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAChC;;OAEG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B;;OAEG;IACH,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B;;OAEG;IACH,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC;;OAEG;IACH,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAEzD;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAEhC;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;CAChE;AAED;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC;AAEjD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,2CA6BxD;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS,uBAAiB,CAAC"}
1
+ {"version":3,"file":"GenAIChat.d.ts","sourceRoot":"","sources":["../../src/components/GenAIChat.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAa,MAAM,OAAO,CAAC;AAIjD,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGlF,OAAO,EAAkB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAChC;;OAEG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B;;OAEG;IACH,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B;;OAEG;IACH,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC;;OAEG;IACH,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAEzD;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAEhC;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;IAE7D;;OAEG;IACH,8BAA8B,CAAC,EAAE,MAAM,aAAa,CAAC;CACxD;AAED;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC;AAEjD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,2CA6BxD;AAED;;;;GAIG;AACH,eAAO,MAAM,SAAS,uBAAiB,CAAC"}
@@ -4,6 +4,7 @@ import { useEffect } from "react";
4
4
  import { Provider as StoreProvider } from "react-redux";
5
5
  import { BackendProvider, WorkspaceProvider, useBackendStrict, useWorkspaceStrict } from "@gooddata/sdk-ui";
6
6
  import { ConfigProvider } from "./ConfigContext.js";
7
+ import { CustomizationProvider } from "./CustomizationProvider.js";
7
8
  import { GenAIChatWrapper } from "./GenAIChatWrapper.js";
8
9
  import { useGenAIStore } from "../hooks/useGenAIStore.js";
9
10
  import { IntlWrapper } from "../localization/IntlWrapper.js";
@@ -34,8 +35,8 @@ export function GenAIAssistant(props) {
34
35
  */
35
36
  export const GenAIChat = GenAIAssistant;
36
37
  function GenAIContent(props) {
37
- const { onLinkClick, catalogItems } = props;
38
+ const { onLinkClick, catalogItems, LandingScreenComponentProvider } = props;
38
39
  const { permissions, loading } = usePermissions();
39
- return (_jsx(ConfigProvider, { linkHandler: onLinkClick, catalogItems: catalogItems, allowNativeLinks: props.allowNativeLinks ?? false, canFullControl: props.disableFullControl ? false : (permissions.canManageProject ?? false), canManage: props.disableManage ? false : (permissions.canManageProject ?? false), canAnalyze: props.disableAnalyze ? false : (permissions.canCreateVisualization ?? false), children: _jsx(GenAIChatWrapper, { initializing: loading }) }));
40
+ return (_jsx(ConfigProvider, { linkHandler: onLinkClick, catalogItems: catalogItems, allowNativeLinks: props.allowNativeLinks ?? false, canFullControl: props.disableFullControl ? false : (permissions.canManageProject ?? false), canManage: props.disableManage ? false : (permissions.canManageProject ?? false), canAnalyze: props.disableAnalyze ? false : (permissions.canCreateVisualization ?? false), children: _jsx(CustomizationProvider, { landingScreenComponentProvider: LandingScreenComponentProvider, children: _jsx(GenAIChatWrapper, { initializing: loading }) }) }));
40
41
  }
41
42
  //# sourceMappingURL=GenAIChat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GenAIChat.js","sourceRoot":"","sources":["../../src/components/GenAIChat.tsx"],"names":[],"mappings":";AAAA,qCAAqC;AAErC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,aAAa,CAAC;AAIxD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE5G,OAAO,EAAE,cAAc,EAAoB,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAmF9E;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,KAA0B;IACrD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,GAClG,KAAK,CAAC;IACV,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,aAAa,CAAC,gBAAgB,EAAE,kBAAkB,EAAE;QACnE,YAAY;QACZ,aAAa;QACb,QAAQ;QACR,WAAW;KACd,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACX,YAAY,EAAE,CAAC,UAAU,CAAC,QAAqC,CAAC,CAAC;IACrE,CAAC,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;IAE/B,OAAO,CACH,KAAC,WAAW,IAAC,MAAM,EAAE,MAAM,YACvB,KAAC,aAAa,IAAC,KAAK,EAAE,UAAU,YAC5B,KAAC,eAAe,IAAC,OAAO,EAAE,gBAAgB,YACtC,KAAC,iBAAiB,IAAC,SAAS,EAAE,kBAAkB,YAC5C,KAAC,mBAAmB,cAChB,KAAC,YAAY,OAAK,KAAK,GAAI,GACT,GACN,GACN,GACN,GACN,CACjB,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AAExC,SAAS,YAAY,CAAC,KAAqB;IACvC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAC5C,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IAElD,OAAO,CACH,KAAC,cAAc,IACX,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,IAAI,KAAK,EACjD,cAAc,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,gBAAgB,IAAI,KAAK,CAAC,EAC1F,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,gBAAgB,IAAI,KAAK,CAAC,EAChF,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,sBAAsB,IAAI,KAAK,CAAC,YAExF,KAAC,gBAAgB,IAAC,YAAY,EAAE,OAAO,GAAI,GAC9B,CACpB,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"GenAIChat.js","sourceRoot":"","sources":["../../src/components/GenAIChat.tsx"],"names":[],"mappings":";AAAA,qCAAqC;AAErC,OAAO,EAAiB,SAAS,EAAE,MAAM,OAAO,CAAC;AAEjD,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,aAAa,CAAC;AAIxD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE5G,OAAO,EAAE,cAAc,EAAoB,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAwF9E;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,KAA0B;IACrD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,GAClG,KAAK,CAAC;IACV,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,aAAa,CAAC,gBAAgB,EAAE,kBAAkB,EAAE;QACnE,YAAY;QACZ,aAAa;QACb,QAAQ;QACR,WAAW;KACd,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACX,YAAY,EAAE,CAAC,UAAU,CAAC,QAAqC,CAAC,CAAC;IACrE,CAAC,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;IAE/B,OAAO,CACH,KAAC,WAAW,IAAC,MAAM,EAAE,MAAM,YACvB,KAAC,aAAa,IAAC,KAAK,EAAE,UAAU,YAC5B,KAAC,eAAe,IAAC,OAAO,EAAE,gBAAgB,YACtC,KAAC,iBAAiB,IAAC,SAAS,EAAE,kBAAkB,YAC5C,KAAC,mBAAmB,cAChB,KAAC,YAAY,OAAK,KAAK,GAAI,GACT,GACN,GACN,GACN,GACN,CACjB,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AAExC,SAAS,YAAY,CAAC,KAAqB;IACvC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,8BAA8B,EAAE,GAAG,KAAK,CAAC;IAC5E,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IAElD,OAAO,CACH,KAAC,cAAc,IACX,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,IAAI,KAAK,EACjD,cAAc,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,gBAAgB,IAAI,KAAK,CAAC,EAC1F,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,gBAAgB,IAAI,KAAK,CAAC,EAChF,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,sBAAsB,IAAI,KAAK,CAAC,YAExF,KAAC,qBAAqB,IAAC,8BAA8B,EAAE,8BAA8B,YACjF,KAAC,gBAAgB,IAAC,YAAY,EAAE,OAAO,GAAI,GACvB,GACX,CACpB,CAAC;AACN,CAAC"}
@@ -1,4 +1,4 @@
1
- import { RefObject } from "react";
1
+ import { ComponentType, RefObject } from "react";
2
2
  import { EnhancedStore } from "@reduxjs/toolkit";
3
3
  import { IAnalyticalBackend, IUserWorkspaceSettings } from "@gooddata/sdk-backend-spi";
4
4
  import { CatalogItem, IColorPalette } from "@gooddata/sdk-model";
@@ -20,6 +20,7 @@ export type GenAIChatDialogProps = {
20
20
  returnFocusTo?: RefObject<HTMLElement | null> | string;
21
21
  onLinkClick?: (linkClickEvent: LinkHandlerEvent) => void;
22
22
  onDispatcher?: (dispatch: EnhancedStore["dispatch"]) => void;
23
+ LandingScreenComponentProvider?: () => ComponentType;
23
24
  };
24
- export declare function GenAIChatDialog({ backend, workspace, locale, isOpen, onClose, settings, returnFocusTo, canManage, canAnalyze, canFullControl, eventHandlers, catalogItems, colorPalette, onLinkClick, onDispatcher, }: GenAIChatDialogProps): import("react/jsx-runtime").JSX.Element | null;
25
+ export declare function GenAIChatDialog({ backend, workspace, locale, isOpen, onClose, settings, returnFocusTo, canManage, canAnalyze, canFullControl, eventHandlers, catalogItems, colorPalette, onLinkClick, onDispatcher, LandingScreenComponentProvider, }: GenAIChatDialogProps): import("react/jsx-runtime").JSX.Element | null;
25
26
  //# sourceMappingURL=GenAIChatDialog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GenAIChatDialog.d.ts","sourceRoot":"","sources":["../../src/components/GenAIChatDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAsB,MAAM,OAAO,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIjE,OAAO,EAAkB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAItE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,MAAM,MAAM,oBAAoB,GAAG;IAC/B,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC;IACvD,WAAW,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;CAChE,CAAC;AAOF,wBAAgB,eAAe,CAAC,EAC5B,OAAO,EACP,SAAS,EACT,MAAM,EACN,MAAM,EACN,OAAO,EACP,QAAQ,EACR,aAAa,EACb,SAAiB,EACjB,UAAkB,EAClB,cAAsB,EACtB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,YAAY,GACf,EAAE,oBAAoB,kDAqDtB"}
1
+ {"version":3,"file":"GenAIChatDialog.d.ts","sourceRoot":"","sources":["../../src/components/GenAIChatDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAsB,MAAM,OAAO,CAAC;AAErE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIjE,OAAO,EAAkB,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,MAAM,MAAM,oBAAoB,GAAG;IAC/B,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC;IACvD,WAAW,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzD,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IAC7D,8BAA8B,CAAC,EAAE,MAAM,aAAa,CAAC;CACxD,CAAC;AAOF,wBAAgB,eAAe,CAAC,EAC5B,OAAO,EACP,SAAS,EACT,MAAM,EACN,MAAM,EACN,OAAO,EACP,QAAQ,EACR,aAAa,EACb,SAAiB,EACjB,UAAkB,EAClB,cAAsB,EACtB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,8BAA8B,GACjC,EAAE,oBAAoB,kDAyDtB"}
@@ -5,6 +5,7 @@ import { Provider as StoreProvider } from "react-redux";
5
5
  import { BackendProvider, WorkspaceProvider, useBackendStrict, useWorkspaceStrict } from "@gooddata/sdk-ui";
6
6
  import { OverlayController, OverlayControllerProvider, useOverlayController } from "@gooddata/sdk-ui-kit";
7
7
  import { ConfigProvider } from "./ConfigContext.js";
8
+ import { CustomizationProvider } from "./CustomizationProvider.js";
8
9
  import { GenAIChatOverlay } from "./GenAIChatOverlay.js";
9
10
  import { useGenAIStore } from "../hooks/useGenAIStore.js";
10
11
  import { IntlWrapper } from "../localization/IntlWrapper.js";
@@ -13,7 +14,7 @@ import { isOpenSelector, setOpenAction } from "../store/index.js";
13
14
  // - High enough to be over other dialogs
14
15
  // - Below chart tooltips
15
16
  const DEFAULT_CHAT_Z_INDEX = 3000;
16
- export function GenAIChatDialog({ backend, workspace, locale, isOpen, onClose, settings, returnFocusTo, canManage = false, canAnalyze = false, canFullControl = false, eventHandlers, catalogItems, colorPalette, onLinkClick, onDispatcher, }) {
17
+ export function GenAIChatDialog({ backend, workspace, locale, isOpen, onClose, settings, returnFocusTo, canManage = false, canAnalyze = false, canFullControl = false, eventHandlers, catalogItems, colorPalette, onLinkClick, onDispatcher, LandingScreenComponentProvider, }) {
17
18
  const effectiveBackend = useBackendStrict(backend);
18
19
  const effectiveWorkspace = useWorkspaceStrict(workspace);
19
20
  const genAIStore = useGenAIStore(effectiveBackend, effectiveWorkspace, {
@@ -36,6 +37,6 @@ export function GenAIChatDialog({ backend, workspace, locale, isOpen, onClose, s
36
37
  const chatOverlayController = useMemo(() => parentOverlayController ?? OverlayController.getInstance(DEFAULT_CHAT_Z_INDEX), [parentOverlayController]);
37
38
  if (!isOpen)
38
39
  return null;
39
- return (_jsx(IntlWrapper, { locale: locale, children: _jsx(StoreProvider, { store: genAIStore, children: _jsx(BackendProvider, { backend: effectiveBackend, children: _jsx(WorkspaceProvider, { workspace: effectiveWorkspace, children: _jsx(OverlayControllerProvider, { overlayController: chatOverlayController, children: _jsx(ConfigProvider, { allowNativeLinks: true, linkHandler: onLinkClick, catalogItems: catalogItems, canManage: canManage, canAnalyze: canAnalyze, canFullControl: canFullControl, children: _jsx(GenAIChatOverlay, { returnFocusTo: returnFocusTo, onClose: onClose }) }) }) }) }) }) }));
40
+ return (_jsx(IntlWrapper, { locale: locale, children: _jsx(StoreProvider, { store: genAIStore, children: _jsx(BackendProvider, { backend: effectiveBackend, children: _jsx(WorkspaceProvider, { workspace: effectiveWorkspace, children: _jsx(OverlayControllerProvider, { overlayController: chatOverlayController, children: _jsx(ConfigProvider, { allowNativeLinks: true, linkHandler: onLinkClick, catalogItems: catalogItems, canManage: canManage, canAnalyze: canAnalyze, canFullControl: canFullControl, children: _jsx(CustomizationProvider, { landingScreenComponentProvider: LandingScreenComponentProvider, children: _jsx(GenAIChatOverlay, { returnFocusTo: returnFocusTo, onClose: onClose }) }) }) }) }) }) }) }));
40
41
  }
41
42
  //# sourceMappingURL=GenAIChatDialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GenAIChatDialog.js","sourceRoot":"","sources":["../../src/components/GenAIChatDialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GenAIChatDialog.js","sourceRoot":"","sources":["../../src/components/GenAIChatDialog.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Messages.d.ts","sourceRoot":"","sources":["../../src/components/Messages.tsx"],"names":[],"mappings":"AA6FA,eAAO,MAAM,QAAQ,EAAE,GAAiD,CAAC"}
1
+ {"version":3,"file":"Messages.d.ts","sourceRoot":"","sources":["../../src/components/Messages.tsx"],"names":[],"mappings":"AA8FA,eAAO,MAAM,QAAQ,EAAE,GAAiD,CAAC"}
@@ -4,16 +4,17 @@ import { useLayoutEffect, useRef } from "react";
4
4
  import { useIntl } from "react-intl";
5
5
  import Skeleton from "react-loading-skeleton";
6
6
  import { connect } from "react-redux";
7
- import { EmptyState } from "./EmptyState.js";
8
7
  import { isAssistantMessage, isUserMessage } from "../model.js";
8
+ import { useCustomization } from "./CustomizationProvider.js";
9
9
  import { AssistantMessageComponent, UserMessageComponent } from "./messages/index.js";
10
10
  import { asyncProcessSelector, messagesSelector } from "../store/index.js";
11
11
  function MessagesComponent({ messages, loading, initializing }) {
12
12
  const { scrollerRef } = useMessageScroller(messages);
13
+ const { LandingScreenComponent } = useCustomization();
13
14
  const intl = useIntl();
14
15
  const isLoading = loading === "loading" || loading === "clearing" || initializing;
15
16
  const isEmpty = !messages.length && !isLoading;
16
- return (_jsx("div", { className: "gd-gen-ai-chat__messages", ref: scrollerRef, children: _jsxs("div", { className: "gd-gen-ai-chat__messages__scroll", role: "log", "aria-relevant": isEmpty || isLoading ? undefined : "additions", "aria-label": intl.formatMessage({ id: "gd.gen-ai.messages.label" }), children: [isEmpty ? _jsx(EmptyState, {}) : null, isLoading ? _jsx(Skeleton, { count: 3, height: "2em" }) : null, isLoading
17
+ return (_jsx("div", { className: "gd-gen-ai-chat__messages", ref: scrollerRef, children: _jsxs("div", { className: "gd-gen-ai-chat__messages__scroll", role: "log", "aria-relevant": isEmpty || isLoading ? undefined : "additions", "aria-label": intl.formatMessage({ id: "gd.gen-ai.messages.label" }), children: [isEmpty ? _jsx(LandingScreenComponent, {}) : null, isLoading ? _jsx(Skeleton, { count: 3, height: "2em" }) : null, isLoading
17
18
  ? null
18
19
  : messages.map((message, index) => {
19
20
  const isLast = index === messages.length - 1;
@@ -1 +1 @@
1
- {"version":3,"file":"Messages.js","sourceRoot":"","sources":["../../src/components/Messages.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Messages.js","sourceRoot":"","sources":["../../src/components/Messages.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { FC, ReactNode } from "react";
2
+ /**
3
+ * @beta
4
+ */
5
+ export interface LandingQuestionProps {
6
+ question: string;
7
+ answer: string;
8
+ icon?: ReactNode;
9
+ title?: string;
10
+ }
11
+ /**
12
+ * @beta
13
+ */
14
+ export declare const DefaultLandingQuestion: FC<LandingQuestionProps>;
15
+ //# sourceMappingURL=LandingQuestion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LandingQuestion.d.ts","sourceRoot":"","sources":["../../../src/components/customized/LandingQuestion.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAatC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAsCD;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,EAAE,CAAC,oBAAoB,CAGjC,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { connect } from "react-redux";
3
+ import { Button } from "@gooddata/sdk-ui-kit";
4
+ import { makeAssistantMessage, makeTextContents, makeUserMessage } from "../../model.js";
5
+ import { setMessagesAction } from "../../store/index.js";
6
+ /**
7
+ * @beta
8
+ */
9
+ function LandingQuestionComponent({ setMessagesAction, icon, question, answer, title = question, }) {
10
+ return (_jsxs(Button, { onClick: () => setMessagesAction({
11
+ messages: [
12
+ makeUserMessage([makeTextContents(question, [])]),
13
+ makeAssistantMessage([makeTextContents(answer, [])], true),
14
+ ],
15
+ }), variant: "secondary", children: [icon ? (_jsx("span", { role: "presentation", className: "gd-gen-ai-chat__messages__empty__icon", children: icon })) : null, title] }));
16
+ }
17
+ const mapDispatchToProps = {
18
+ setMessagesAction,
19
+ };
20
+ /**
21
+ * @beta
22
+ */
23
+ export const DefaultLandingQuestion = connect(null, mapDispatchToProps)(LandingQuestionComponent);
24
+ //# sourceMappingURL=LandingQuestion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LandingQuestion.js","sourceRoot":"","sources":["../../../src/components/customized/LandingQuestion.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAgBzD;;GAEG;AACH,SAAS,wBAAwB,CAAC,EAC9B,iBAAiB,EACjB,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,KAAK,GAAG,QAAQ,GACiC;IACjD,OAAO,CACH,MAAC,MAAM,IACH,OAAO,EAAE,GAAG,EAAE,CACV,iBAAiB,CAAC;YACd,QAAQ,EAAE;gBACN,eAAe,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;gBACjD,oBAAoB,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC;aAC7D;SACJ,CAAC,EAEN,OAAO,EAAC,WAAW,aAElB,IAAI,CAAC,CAAC,CAAC,CACJ,eAAM,IAAI,EAAC,cAAc,EAAC,SAAS,EAAC,uCAAuC,YACtE,IAAI,GACF,CACV,CAAC,CAAC,CAAC,IAAI,EACP,KAAK,IACD,CACZ,CAAC;AACN,CAAC;AAED,MAAM,kBAAkB,GAAgC;IACpD,iBAAiB;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAA6B,OAAO,CACnE,IAAI,EACJ,kBAAkB,CACrB,CAAC,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { ComponentType, FC } from "react";
2
+ /**
3
+ * @beta
4
+ */
5
+ export type LandingScreenProps = {
6
+ LandingScreen?: ComponentType;
7
+ };
8
+ /**
9
+ * @beta
10
+ */
11
+ export declare const DefaultLandingScreen: FC<LandingScreenProps>;
12
+ //# sourceMappingURL=LandingScreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LandingScreen.d.ts","sourceRoot":"","sources":["../../../src/components/customized/LandingScreen.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AA+B1C;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;CACjC,CAAC;AAiCF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,EAAE,CAAC,kBAAkB,CAA6C,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { FormattedMessage, defineMessage, useIntl } from "react-intl";
3
+ import { connect } from "react-redux";
4
+ import { IconChatBubble, IconNewVisualization, IconSearch } from "@gooddata/sdk-ui-kit";
5
+ import { DefaultLandingQuestion } from "./LandingQuestion.js";
6
+ import { DefaultLandingTitle, DefaultLandingTitleAscent } from "./LandingTitle.js";
7
+ const quickOptions = [
8
+ {
9
+ title: defineMessage({ id: "gd.gen-ai.welcome.option-1.title" }),
10
+ question: defineMessage({ id: "gd.gen-ai.welcome.option-1.title" }),
11
+ answer: defineMessage({ id: "gd.gen-ai.welcome.option-1.answer" }),
12
+ Icon: IconSearch,
13
+ },
14
+ {
15
+ title: defineMessage({ id: "gd.gen-ai.welcome.option-2.title" }),
16
+ question: defineMessage({ id: "gd.gen-ai.welcome.option-2.title" }),
17
+ answer: defineMessage({ id: "gd.gen-ai.welcome.option-2.answer" }),
18
+ Icon: IconNewVisualization,
19
+ },
20
+ {
21
+ title: defineMessage({ id: "gd.gen-ai.welcome.option-3.title" }),
22
+ question: defineMessage({ id: "gd.gen-ai.welcome.option-3.title" }),
23
+ answer: defineMessage({ id: "gd.gen-ai.welcome.option-3.answer" }),
24
+ Icon: IconChatBubble,
25
+ },
26
+ ];
27
+ function LandingScreenComponent({ LandingScreen }) {
28
+ const intl = useIntl();
29
+ return (_jsx("div", { className: "gd-gen-ai-chat__messages__empty", children: LandingScreen ? (_jsx(LandingScreen, {})) : (_jsxs(_Fragment, { children: [_jsxs(DefaultLandingTitle, { children: [_jsx(DefaultLandingTitleAscent, { children: _jsx(FormattedMessage, { id: "gd.gen-ai.welcome.line-1" }) }), _jsx("br", {}), _jsx(FormattedMessage, { id: "gd.gen-ai.welcome.line-2" })] }), quickOptions.map((option) => (_jsx(DefaultLandingQuestion, { icon: _jsx(option.Icon, { width: 18, height: 18, ariaHidden: true }), title: intl.formatMessage(option.title), question: intl.formatMessage(option.question), answer: intl.formatMessage(option.answer) }, option.title.id)))] })) }));
30
+ }
31
+ /**
32
+ * @beta
33
+ */
34
+ export const DefaultLandingScreen = connect(null, {})(LandingScreenComponent);
35
+ //# sourceMappingURL=LandingScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LandingScreen.js","sourceRoot":"","sources":["../../../src/components/customized/LandingScreen.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAExF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEnF,MAAM,YAAY,GAAG;IACjB;QACI,KAAK,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,kCAAkC,EAAE,CAAC;QAChE,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,kCAAkC,EAAE,CAAC;QACnE,MAAM,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,mCAAmC,EAAE,CAAC;QAClE,IAAI,EAAE,UAAU;KACnB;IACD;QACI,KAAK,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,kCAAkC,EAAE,CAAC;QAChE,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,kCAAkC,EAAE,CAAC;QACnE,MAAM,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,mCAAmC,EAAE,CAAC;QAClE,IAAI,EAAE,oBAAoB;KAC7B;IACD;QACI,KAAK,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,kCAAkC,EAAE,CAAC;QAChE,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,kCAAkC,EAAE,CAAC;QACnE,MAAM,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,mCAAmC,EAAE,CAAC;QAClE,IAAI,EAAE,cAAc;KACvB;CACJ,CAAC;AASF,SAAS,sBAAsB,CAAC,EAAE,aAAa,EAAsB;IACjE,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IAEvB,OAAO,CACH,cAAK,SAAS,EAAC,iCAAiC,YAC3C,aAAa,CAAC,CAAC,CAAC,CACb,KAAC,aAAa,KAAG,CACpB,CAAC,CAAC,CAAC,CACA,8BACI,MAAC,mBAAmB,eAChB,KAAC,yBAAyB,cACtB,KAAC,gBAAgB,IAAC,EAAE,EAAC,0BAA0B,GAAG,GAC1B,EAC5B,cAAM,EACN,KAAC,gBAAgB,IAAC,EAAE,EAAC,0BAA0B,GAAG,IAChC,EACrB,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC1B,KAAC,sBAAsB,IAEnB,IAAI,EAAE,KAAC,MAAM,CAAC,IAAI,IAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,SAAG,EACvD,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EACvC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,EAC7C,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,IAJpC,MAAM,CAAC,KAAK,CAAC,EAAE,CAKtB,CACL,CAAC,IACH,CACN,GACC,CACT,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA2B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { ReactNode } from "react";
2
+ /**
3
+ * @beta
4
+ */
5
+ export interface LandingTitleProps {
6
+ children: ReactNode;
7
+ }
8
+ /**
9
+ * @beta
10
+ */
11
+ export declare function DefaultLandingTitle({ children }: LandingTitleProps): import("react/jsx-runtime").JSX.Element;
12
+ /**
13
+ * @beta
14
+ */
15
+ export declare function DefaultLandingTitleAscent({ children }: LandingTitleProps): import("react/jsx-runtime").JSX.Element;
16
+ //# sourceMappingURL=LandingTitle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LandingTitle.d.ts","sourceRoot":"","sources":["../../../src/components/customized/LandingTitle.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAElE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,2CAExE"}
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * @beta
4
+ */
5
+ export function DefaultLandingTitle({ children }) {
6
+ return _jsx("h3", { className: "gd-typography gd-typography--h1", children: children });
7
+ }
8
+ /**
9
+ * @beta
10
+ */
11
+ export function DefaultLandingTitleAscent({ children }) {
12
+ return _jsx("span", { className: "gd-gen-ai-chat__messages__empty__h1--accent", children: children });
13
+ }
14
+ //# sourceMappingURL=LandingTitle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LandingTitle.js","sourceRoot":"","sources":["../../../src/components/customized/LandingTitle.tsx"],"names":[],"mappings":";AAWA;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAE,QAAQ,EAAqB;IAC/D,OAAO,aAAI,SAAS,EAAC,iCAAiC,YAAE,QAAQ,GAAM,CAAC;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CAAC,EAAE,QAAQ,EAAqB;IACrE,OAAO,eAAM,SAAS,EAAC,6CAA6C,YAAE,QAAQ,GAAQ,CAAC;AAC3F,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useKdaDefinition.d.ts","sourceRoot":"","sources":["../../../src/components/hooks/useKdaDefinition.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,UAAU,EACV,yBAAyB,EACzB,OAAO,EACP,QAAQ,EAIX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iCAAiC,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAI/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,sBAAsB,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,kBA6BjG;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM;;;EAkB/D;AAED,wBAAgB,mBAAmB,CAC/B,OAAO,EAAE,QAAQ,EACjB,aAAa,EAAE,UAAU,EACzB,OAAO,EAAE,yBAAyB,EAAE,EACpC,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,SAAe,GACtB,cAAc,CAgChB;AAED,wBAAgB,4BAA4B,CACxC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,iCAAiC,EACvC,KAAK,EAAE,WAAW,EAClB,OAAO,CAAC,EAAE,yBAAyB,EAAE,8BA6BxC;AAED,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,OAAO,oCASrD"}
1
+ {"version":3,"file":"useKdaDefinition.d.ts","sourceRoot":"","sources":["../../../src/components/hooks/useKdaDefinition.ts"],"names":[],"mappings":"AAMA,OAAO,EACH,UAAU,EACV,yBAAyB,EACzB,OAAO,EACP,QAAQ,EAIX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iCAAiC,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAI/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,sBAAsB,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,kBA6BjG;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM;;;EAkB/D;AAED,wBAAgB,mBAAmB,CAC/B,OAAO,EAAE,QAAQ,EACjB,aAAa,EAAE,UAAU,EACzB,OAAO,EAAE,yBAAyB,EAAE,EACpC,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,SAAe,GACtB,cAAc,CAgChB;AAED,wBAAgB,4BAA4B,CACxC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,iCAAiC,EACvC,KAAK,EAAE,WAAW,EAClB,OAAO,CAAC,EAAE,yBAAyB,EAAE,8BAiCxC;AAED,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,OAAO,oCASrD"}
@@ -77,13 +77,16 @@ export function createKdaDefinitionFromDrill(locale, data, event, filters) {
77
77
  if (!measure) {
78
78
  return;
79
79
  }
80
+ if (!from.header.attributeHeaderItem.normalizedValue || !to.header.attributeHeaderItem.normalizedValue) {
81
+ return;
82
+ }
80
83
  return createKdaDefinition(measure, {
81
84
  attribute: {
82
85
  localIdentifier: attr.localIdentifier,
83
86
  displayForm: attr.formOf,
84
87
  alias: attr.name,
85
88
  },
86
- }, filters ?? [], from.header.attributeHeaderItem.uri, to.header.attributeHeaderItem.uri, attr.format?.locale ?? locale, attr.format?.pattern);
89
+ }, filters ?? [], from.header.attributeHeaderItem.normalizedValue, to.header.attributeHeaderItem.normalizedValue, attr.format?.locale ?? locale, attr.format?.pattern);
87
90
  }
88
91
  export function getDashboardAttributeFilter(f) {
89
92
  if (isAttributeFilter(f)) {
@@ -1 +1 @@
1
- {"version":3,"file":"useKdaDefinition.js","sourceRoot":"","sources":["../../../src/components/hooks/useKdaDefinition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useKdaDefinition.js","sourceRoot":"","sources":["../../../src/components/hooks/useKdaDefinition.ts"],"names":[],"mappings":"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"}
package/esm/index.d.ts CHANGED
@@ -10,4 +10,10 @@ export { type ChatEventHandler, type BaseEvent, type ChatAssistantMessageEvent,
10
10
  export { clearThreadAction, newMessageAction } from "./store/index.js";
11
11
  export { makeUserMessage, makeTextContents } from "./model.js";
12
12
  export type { LinkHandlerEvent } from "./components/ConfigContext.js";
13
+ export type { LandingScreenProps } from "./components/customized/LandingScreen.js";
14
+ export { DefaultLandingScreen } from "./components/customized/LandingScreen.js";
15
+ export type { LandingTitleProps } from "./components/customized/LandingTitle.js";
16
+ export { DefaultLandingTitle, DefaultLandingTitleAscent } from "./components/customized/LandingTitle.js";
17
+ export type { LandingQuestionProps } from "./components/customized/LandingQuestion.js";
18
+ export { DefaultLandingQuestion } from "./components/customized/LandingQuestion.js";
13
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACtE,YAAY,EACR,OAAO,EACP,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,iBAAiB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,SAAS,EACd,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,KAAK,iCAAiC,EACtC,KAAK,wBAAwB,EAC7B,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,6BAA6B,EAC7B,iCAAiC,EACjC,mCAAmC,EACnC,0BAA0B,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACtE,YAAY,EACR,OAAO,EACP,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,iBAAiB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,yBAAyB,EAC9B,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,SAAS,EACd,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,KAAK,iCAAiC,EACtC,KAAK,wBAAwB,EAC7B,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,6BAA6B,EAC7B,iCAAiC,EACjC,mCAAmC,EACnC,0BAA0B,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAItE,YAAY,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,YAAY,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACzG,YAAY,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC"}
package/esm/index.js CHANGED
@@ -3,4 +3,7 @@ export { GenAIChat, GenAIAssistant } from "./components/GenAIChat.js";
3
3
  export { isChatAssistantMessageEvent, isChatUserMessageEvent, isChatClosedEvent, isChatOpenedEvent, isChatResetEvent, isChatFeedbackEvent, isChatFeedbackErrorEvent, isChatVisualizationErrorEvent, isChatSaveVisualizationErrorEvent, isChatSaveVisualizationSuccessEvent, isChatCopyToClipboardEvent, } from "./store/events.js";
4
4
  export { clearThreadAction, newMessageAction } from "./store/index.js";
5
5
  export { makeUserMessage, makeTextContents } from "./model.js";
6
+ export { DefaultLandingScreen } from "./components/customized/LandingScreen.js";
7
+ export { DefaultLandingTitle, DefaultLandingTitleAscent } from "./components/customized/LandingTitle.js";
8
+ export { DefaultLandingQuestion } from "./components/customized/LandingQuestion.js";
6
9
  //# sourceMappingURL=index.js.map
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AASrC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAetE,OAAO,EAeH,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,6BAA6B,EAC7B,iCAAiC,EACjC,mCAAmC,EACnC,0BAA0B,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AASrC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAetE,OAAO,EAeH,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,6BAA6B,EAC7B,iCAAiC,EACjC,mCAAmC,EACnC,0BAA0B,GAC7B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAM/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAEzG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC"}
@@ -7,6 +7,8 @@
7
7
  import { ActionCreatorWithoutPayload } from '@reduxjs/toolkit';
8
8
  import { ActionCreatorWithPayload } from '@reduxjs/toolkit';
9
9
  import { CatalogItem } from '@gooddata/sdk-model';
10
+ import { ComponentType } from 'react';
11
+ import { FC } from 'react';
10
12
  import { GenAIChatInteractionUserFeedback } from '@gooddata/sdk-model';
11
13
  import { GenAIChatRoutingUseCase } from '@gooddata/sdk-model';
12
14
  import { GenAIObjectType } from '@gooddata/sdk-model';
@@ -17,6 +19,7 @@ import { IGenAIVisualization } from '@gooddata/sdk-model';
17
19
  import { ISemanticSearchResultItem } from '@gooddata/sdk-model';
18
20
  import { IUserWorkspaceSettings } from '@gooddata/sdk-backend-spi';
19
21
  import { JSX } from 'react/jsx-runtime';
22
+ import { ReactNode } from 'react';
20
23
  import { SdkErrorType } from '@gooddata/sdk-ui';
21
24
 
22
25
  /**
@@ -211,6 +214,26 @@ clearThreadAction: ActionCreatorWithoutPayload<"messages/clearThreadAction">;
211
214
  */
212
215
  export declare type Contents = TextContents | RoutingContents | SearchContents | VisualizationContents | ChangeAnalysisContents | ErrorContents;
213
216
 
217
+ /**
218
+ * @beta
219
+ */
220
+ export declare const DefaultLandingQuestion: FC<LandingQuestionProps>;
221
+
222
+ /**
223
+ * @beta
224
+ */
225
+ export declare const DefaultLandingScreen: FC<LandingScreenProps>;
226
+
227
+ /**
228
+ * @beta
229
+ */
230
+ export declare function DefaultLandingTitle({ children }: LandingTitleProps): JSX.Element;
231
+
232
+ /**
233
+ * @beta
234
+ */
235
+ export declare function DefaultLandingTitleAscent({ children }: LandingTitleProps): JSX.Element;
236
+
214
237
  /**
215
238
  * @public
216
239
  */
@@ -290,6 +313,10 @@ export declare interface GenAIAssistantProps {
290
313
  * after the store has been initialized.
291
314
  */
292
315
  onDispatcher?: (dispatch: (action: unknown) => void) => void;
316
+ /**
317
+ * Custom React node rendered when no conversation exists yet.
318
+ */
319
+ LandingScreenComponentProvider?: () => ComponentType;
293
320
  }
294
321
 
295
322
  /**
@@ -372,6 +399,30 @@ export declare const isChatUserMessageEvent: (event: ChatEvent) => event is Chat
372
399
  */
373
400
  export declare const isChatVisualizationErrorEvent: (event: ChatEvent) => event is ChatVisualizationErrorEvent;
374
401
 
402
+ /**
403
+ * @beta
404
+ */
405
+ export declare interface LandingQuestionProps {
406
+ question: string;
407
+ answer: string;
408
+ icon?: ReactNode;
409
+ title?: string;
410
+ }
411
+
412
+ /**
413
+ * @beta
414
+ */
415
+ export declare type LandingScreenProps = {
416
+ LandingScreen?: ComponentType;
417
+ };
418
+
419
+ /**
420
+ * @beta
421
+ */
422
+ export declare interface LandingTitleProps {
423
+ children: ReactNode;
424
+ }
425
+
375
426
  /**
376
427
  * @public
377
428
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-ui-gen-ai",
3
- "version": "11.10.0-alpha.2",
3
+ "version": "11.10.0-alpha.5",
4
4
  "description": "GoodData GenAI SDK",
5
5
  "repository": {
6
6
  "type": "git",
@@ -54,16 +54,16 @@
54
54
  "reselect": "5.1.1",
55
55
  "tslib": "2.8.1",
56
56
  "uuid": "^11.1.0",
57
- "@gooddata/sdk-backend-spi": "11.10.0-alpha.2",
58
- "@gooddata/api-client-tiger": "11.10.0-alpha.2",
59
- "@gooddata/sdk-model": "11.10.0-alpha.2",
60
- "@gooddata/sdk-ui": "11.10.0-alpha.2",
61
- "@gooddata/sdk-ui-charts": "11.10.0-alpha.2",
62
- "@gooddata/sdk-ui-filters": "11.10.0-alpha.2",
63
- "@gooddata/sdk-ui-dashboard": "11.10.0-alpha.2",
64
- "@gooddata/sdk-ui-kit": "11.10.0-alpha.2",
65
- "@gooddata/sdk-ui-pivot": "11.10.0-alpha.2",
66
- "@gooddata/util": "11.10.0-alpha.2"
57
+ "@gooddata/api-client-tiger": "11.10.0-alpha.5",
58
+ "@gooddata/sdk-backend-spi": "11.10.0-alpha.5",
59
+ "@gooddata/sdk-ui": "11.10.0-alpha.5",
60
+ "@gooddata/sdk-ui-charts": "11.10.0-alpha.5",
61
+ "@gooddata/sdk-model": "11.10.0-alpha.5",
62
+ "@gooddata/sdk-ui-filters": "11.10.0-alpha.5",
63
+ "@gooddata/sdk-ui-kit": "11.10.0-alpha.5",
64
+ "@gooddata/sdk-ui-dashboard": "11.10.0-alpha.5",
65
+ "@gooddata/sdk-ui-pivot": "11.10.0-alpha.5",
66
+ "@gooddata/util": "11.10.0-alpha.5"
67
67
  },
68
68
  "devDependencies": {
69
69
  "@microsoft/api-documenter": "^7.17.0",
@@ -105,11 +105,11 @@
105
105
  "typescript": "5.8.3",
106
106
  "vitest": "3.2.4",
107
107
  "vitest-dom": "0.1.1",
108
- "@gooddata/eslint-config": "11.10.0-alpha.2",
109
- "@gooddata/i18n-toolkit": "11.10.0-alpha.2",
110
- "@gooddata/reference-workspace": "11.10.0-alpha.2",
111
- "@gooddata/sdk-backend-mockingbird": "11.10.0-alpha.2",
112
- "@gooddata/sdk-ui-theme-provider": "11.10.0-alpha.2"
108
+ "@gooddata/eslint-config": "11.10.0-alpha.5",
109
+ "@gooddata/reference-workspace": "11.10.0-alpha.5",
110
+ "@gooddata/sdk-backend-mockingbird": "11.10.0-alpha.5",
111
+ "@gooddata/sdk-ui-theme-provider": "11.10.0-alpha.5",
112
+ "@gooddata/i18n-toolkit": "11.10.0-alpha.5"
113
113
  },
114
114
  "peerDependencies": {
115
115
  "react": "^18.0.0 || ^19.0.0",
@@ -132,7 +132,7 @@
132
132
  "prettier-check": "prettier --check '{src,stories,styles,__mocks__}/**/*.{ts,tsx,json,scss,md,yaml,html}'",
133
133
  "prettier-write": "prettier --write '{src,stories,styles,__mocks__}/**/*.{ts,tsx,json,scss,md,yaml,html}'",
134
134
  "scss": "sass --load-path=node_modules styles/scss:styles/css",
135
- "stylelint": "stylelint '**/*.scss'",
135
+ "stylelint": "bash scripts/stylelint.sh",
136
136
  "stylelint-ci": "stylelint '**/*.scss' --custom-formatter=node_modules/stylelint-checkstyle-formatter > ./ci/results/stylelint-results.xml",
137
137
  "stylelint-fix": "stylelint '**/*.scss' --fix",
138
138
  "test": "vitest watch",
@@ -1,3 +0,0 @@
1
- import { FC } from "react";
2
- export declare const EmptyState: FC;
3
- //# sourceMappingURL=EmptyState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmptyState.d.ts","sourceRoot":"","sources":["../../src/components/EmptyState.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AA6E3B,eAAO,MAAM,UAAU,EAAE,EAA2D,CAAC"}
@@ -1,40 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { FormattedMessage, defineMessage, useIntl } from "react-intl";
3
- import { connect } from "react-redux";
4
- import { Button, IconChatBubble, IconNewVisualization, IconSearch } from "@gooddata/sdk-ui-kit";
5
- import { makeAssistantMessage, makeTextContents, makeUserMessage } from "../model.js";
6
- import { setMessagesAction } from "../store/index.js";
7
- const quickOptions = [
8
- {
9
- title: defineMessage({ id: "gd.gen-ai.welcome.option-1.title" }),
10
- question: defineMessage({ id: "gd.gen-ai.welcome.option-1.title" }),
11
- answer: defineMessage({ id: "gd.gen-ai.welcome.option-1.answer" }),
12
- Icon: IconSearch,
13
- },
14
- {
15
- title: defineMessage({ id: "gd.gen-ai.welcome.option-2.title" }),
16
- question: defineMessage({ id: "gd.gen-ai.welcome.option-2.title" }),
17
- answer: defineMessage({ id: "gd.gen-ai.welcome.option-2.answer" }),
18
- Icon: IconNewVisualization,
19
- },
20
- {
21
- title: defineMessage({ id: "gd.gen-ai.welcome.option-3.title" }),
22
- question: defineMessage({ id: "gd.gen-ai.welcome.option-3.title" }),
23
- answer: defineMessage({ id: "gd.gen-ai.welcome.option-3.answer" }),
24
- Icon: IconChatBubble,
25
- },
26
- ];
27
- function EmptyStateComponent({ setMessagesAction }) {
28
- const intl = useIntl();
29
- return (_jsxs("div", { className: "gd-gen-ai-chat__messages__empty", children: [_jsxs("h3", { className: "gd-typography gd-typography--h1", children: [_jsx("span", { className: "gd-gen-ai-chat__messages__empty__h1--accent", children: _jsx(FormattedMessage, { id: "gd.gen-ai.welcome.line-1" }) }), _jsx("br", {}), _jsx(FormattedMessage, { id: "gd.gen-ai.welcome.line-2" })] }), quickOptions.map((option) => (_jsxs(Button, { onClick: () => setMessagesAction({
30
- messages: [
31
- makeUserMessage([makeTextContents(intl.formatMessage(option.question), [])]),
32
- makeAssistantMessage([makeTextContents(intl.formatMessage(option.answer), [])], true),
33
- ],
34
- }), variant: "secondary", children: [_jsx("span", { role: "presentation", className: "gd-gen-ai-chat__messages__empty__icon", children: _jsx(option.Icon, { width: 18, height: 18, ariaHidden: true }) }), _jsx(FormattedMessage, { tagName: "span", id: option.title.id })] }, option.title.id)))] }));
35
- }
36
- const mapDispatchToProps = {
37
- setMessagesAction,
38
- };
39
- export const EmptyState = connect(null, mapDispatchToProps)(EmptyStateComponent);
40
- //# sourceMappingURL=EmptyState.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmptyState.js","sourceRoot":"","sources":["../../src/components/EmptyState.tsx"],"names":[],"mappings":"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"}