From 31706e001a2fbdab0a1fbb9660615c67d5b0730a Mon Sep 17 00:00:00 2001 From: Metabase Docs bot Date: Sat, 9 Aug 2025 17:57:23 +0000 Subject: [PATCH] [auto] adding content to sdk-backward-compatibility-poc->master --- .../sdk/api/BaseSdkQuestionProps.html | 43 - .../embedding/sdk/api/CollectionBrowser.html | 6 +- .../sdk/api/CollectionBrowserProps.html | 4 +- .../sdk/api/CreateDashboardModal.html | 4 +- .../embedding/sdk/api/CreateQuestion.html | 4 +- .../embedding/sdk/api/EditableDashboard.html | 4 +- _docs/master/embedding/sdk/api/IconName.html | 2 +- .../sdk/api/InteractiveDashboard.html | 4 +- .../sdk/api/InteractiveQuestion.html | 6 +- .../api/InteractiveQuestionComponents.html | 103 +++ .../embedding/sdk/api/MetabaseProvider.html | 3 +- .../sdk/api/MetabaseProviderProps.html | 9 +- .../embedding/sdk/api/MetabotQuestion.html | 13 + .../embedding/sdk/api/SdkErrorComponent.html | 2 +- .../embedding/sdk/api/StaticDashboard.html | 4 +- .../embedding/sdk/api/StaticQuestion.html | 6 +- .../sdk/api/StaticQuestionComponents.html | 60 ++ .../embedding/sdk/api/assets/navigation.js | 2 +- .../master/embedding/sdk/api/assets/search.js | 2 +- _docs/master/embedding/sdk/api/index.html | 2 +- .../sdk/api/snippets/BaseSdkQuestionProps.md | 32 - .../sdk/api/snippets/CollectionBrowser.md | 4 +- .../api/snippets/CollectionBrowserProps.md | 2 +- .../sdk/api/snippets/CreateDashboardModal.md | 4 +- .../sdk/api/snippets/CreateQuestion.md | 10 +- .../sdk/api/snippets/EditableDashboard.md | 2 +- .../embedding/sdk/api/snippets/IconName.md | 6 +- .../sdk/api/snippets/InteractiveDashboard.md | 2 +- .../sdk/api/snippets/InteractiveQuestion.md | 10 +- .../snippets/InteractiveQuestionComponents.md | 863 ++++++++++++++++++ .../sdk/api/snippets/MetabaseProviderProps.md | 13 +- .../sdk/api/snippets/MetabotQuestion.md | 34 + .../sdk/api/snippets/SdkErrorComponent.md | 4 +- .../sdk/api/snippets/StaticDashboard.md | 2 +- .../sdk/api/snippets/StaticQuestion.md | 13 +- .../api/snippets/StaticQuestionComponents.md | 549 +++++++++++ .../embedding/sdk/api/snippets/index.md | 98 +- .../sdk/api/snippets/useApplicationName.md | 25 + .../sdk/api/snippets/useAvailableFonts.md | 30 + .../sdk/api/snippets/useCreateDashboardApi.md | 19 +- .../sdk/api/snippets/useCurrentUser.md | 25 + .../sdk/api/snippets/useMetabaseAuthStatus.md | 25 + .../embedding/sdk/api/useApplicationName.html | 14 + .../embedding/sdk/api/useAvailableFonts.html | 14 + .../sdk/api/useCreateDashboardApi.html | 5 +- .../embedding/sdk/api/useCurrentUser.html | 14 + .../sdk/api/useMetabaseAuthStatus.html | 14 + _docs/master/embedding/sdk/dashboards.md | 2 + _docs/master/embedding/sdk/next-js.md | 34 +- .../authentication/get-auth-status.tsx | 4 +- .../snippets/dashboards/create-dashboard.tsx | 9 +- .../snippets/next-js/EmbeddingSdkProvider.tsx | 2 - .../next-js/authentication-auth-config.tsx | 2 +- .../sdk/snippets/next-js/declarations.d.ts | 2 +- .../manual-wrapping-embedded-sdk-provider.tsx | 31 - .../next-js/manual-wrapping-entrypoint.tsx | 52 -- .../next-js/manual-wrapping-usage.tsx | 5 - .../sdk/api/BaseSdkQuestionProps.html | 59 -- .../embedding/sdk/api/CollectionBrowser.html | 6 +- .../sdk/api/CollectionBrowserProps.html | 4 +- .../sdk/api/CreateDashboardModal.html | 4 +- .../embedding/sdk/api/CreateQuestion.html | 4 +- .../embedding/sdk/api/EditableDashboard.html | 4 +- .../master/embedding/sdk/api/IconName.html | 2 +- .../sdk/api/InteractiveDashboard.html | 4 +- .../sdk/api/InteractiveQuestion.html | 6 +- .../api/InteractiveQuestionComponents.html | 119 +++ .../embedding/sdk/api/MetabaseProvider.html | 3 +- .../sdk/api/MetabaseProviderProps.html | 9 +- .../embedding/sdk/api/MetabotQuestion.html | 29 + .../embedding/sdk/api/SdkErrorComponent.html | 2 +- .../embedding/sdk/api/StaticDashboard.html | 4 +- .../embedding/sdk/api/StaticQuestion.html | 6 +- .../sdk/api/StaticQuestionComponents.html | 76 ++ .../embedding/sdk/api/assets/navigation.js | 2 +- .../master/embedding/sdk/api/assets/search.js | 2 +- .../docs/master/embedding/sdk/api/index.html | 2 +- .../embedding/sdk/api/useApplicationName.html | 30 + .../embedding/sdk/api/useAvailableFonts.html | 30 + .../sdk/api/useCreateDashboardApi.html | 5 +- .../embedding/sdk/api/useCurrentUser.html | 30 + .../sdk/api/useMetabaseAuthStatus.html | 30 + .../master/embedding/sdk/authentication.html | 4 +- .../master/embedding/sdk/collections.html | 2 +- _site/docs/master/embedding/sdk/config.html | 4 +- .../docs/master/embedding/sdk/dashboards.html | 11 +- _site/docs/master/embedding/sdk/next-js.html | 107 +-- .../authentication/get-auth-status.tsx | 4 +- .../snippets/dashboards/create-dashboard.tsx | 9 +- .../snippets/next-js/EmbeddingSdkProvider.tsx | 2 - .../next-js/authentication-auth-config.tsx | 2 +- .../sdk/snippets/next-js/declarations.d.ts | 2 +- .../manual-wrapping-embedded-sdk-provider.tsx | 31 - .../next-js/manual-wrapping-entrypoint.tsx | 52 -- .../next-js/manual-wrapping-usage.tsx | 5 - 95 files changed, 2353 insertions(+), 613 deletions(-) delete mode 100644 _docs/master/embedding/sdk/api/BaseSdkQuestionProps.html create mode 100644 _docs/master/embedding/sdk/api/InteractiveQuestionComponents.html create mode 100644 _docs/master/embedding/sdk/api/MetabotQuestion.html create mode 100644 _docs/master/embedding/sdk/api/StaticQuestionComponents.html delete mode 100644 _docs/master/embedding/sdk/api/snippets/BaseSdkQuestionProps.md create mode 100644 _docs/master/embedding/sdk/api/snippets/InteractiveQuestionComponents.md create mode 100644 _docs/master/embedding/sdk/api/snippets/MetabotQuestion.md create mode 100644 _docs/master/embedding/sdk/api/snippets/StaticQuestionComponents.md create mode 100644 _docs/master/embedding/sdk/api/snippets/useApplicationName.md create mode 100644 _docs/master/embedding/sdk/api/snippets/useAvailableFonts.md create mode 100644 _docs/master/embedding/sdk/api/snippets/useCurrentUser.md create mode 100644 _docs/master/embedding/sdk/api/snippets/useMetabaseAuthStatus.md create mode 100644 _docs/master/embedding/sdk/api/useApplicationName.html create mode 100644 _docs/master/embedding/sdk/api/useAvailableFonts.html create mode 100644 _docs/master/embedding/sdk/api/useCurrentUser.html create mode 100644 _docs/master/embedding/sdk/api/useMetabaseAuthStatus.html delete mode 100644 _docs/master/embedding/sdk/snippets/next-js/EmbeddingSdkProvider.tsx delete mode 100644 _docs/master/embedding/sdk/snippets/next-js/manual-wrapping-embedded-sdk-provider.tsx delete mode 100644 _docs/master/embedding/sdk/snippets/next-js/manual-wrapping-entrypoint.tsx delete mode 100644 _docs/master/embedding/sdk/snippets/next-js/manual-wrapping-usage.tsx delete mode 100644 _site/docs/master/embedding/sdk/api/BaseSdkQuestionProps.html create mode 100644 _site/docs/master/embedding/sdk/api/InteractiveQuestionComponents.html create mode 100644 _site/docs/master/embedding/sdk/api/MetabotQuestion.html create mode 100644 _site/docs/master/embedding/sdk/api/StaticQuestionComponents.html create mode 100644 _site/docs/master/embedding/sdk/api/useApplicationName.html create mode 100644 _site/docs/master/embedding/sdk/api/useAvailableFonts.html create mode 100644 _site/docs/master/embedding/sdk/api/useCurrentUser.html create mode 100644 _site/docs/master/embedding/sdk/api/useMetabaseAuthStatus.html delete mode 100644 _site/docs/master/embedding/sdk/snippets/next-js/EmbeddingSdkProvider.tsx delete mode 100644 _site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-embedded-sdk-provider.tsx delete mode 100644 _site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-entrypoint.tsx delete mode 100644 _site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-usage.tsx diff --git a/_docs/master/embedding/sdk/api/BaseSdkQuestionProps.html b/_docs/master/embedding/sdk/api/BaseSdkQuestionProps.html deleted file mode 100644 index eb917617bd..0000000000 --- a/_docs/master/embedding/sdk/api/BaseSdkQuestionProps.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -version: master -has_magic_breadcrumbs: true -show_category_breadcrumb: true -show_title_breadcrumb: true -category: Embedding -title: BaseSdkQuestionProps -source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/BaseSdkQuestionProps.html' -layout: docs-api ---- - -BaseSdkQuestionProps | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Interface BaseSdkQuestionProps

interface BaseSdkQuestionProps {
    children?: ReactNode;
    entityTypes?: EmbeddingEntityType[];
    initialSqlParameters?: SqlParameterValues;
    isSaveEnabled?: boolean;
    onBeforeSave?: (
        question: undefined | MetabaseQuestion,
        context: { isNewQuestion: boolean },
    ) => Promise<void>;
    onRun?: (question: undefined | MetabaseQuestion) => void;
    onSave?: (
        question: MetabaseQuestion,
        context: { dashboardTabId?: number; isNewQuestion: boolean },
    ) => void;
    plugins?: MetabasePluginsConfig;
    questionId: null | SdkQuestionId;
    targetCollection?: SdkCollectionId;
    withDownloads?: boolean;
}
Index

Properties

children?: ReactNode

The children of the MetabaseProvider component.s

-
entityTypes?: EmbeddingEntityType[]

An array that specifies which entity types are available in the data picker

-
initialSqlParameters?: SqlParameterValues

Initial values for the SQL parameters.

-
isSaveEnabled?: boolean

Whether to show the save button.

-
onBeforeSave?: (
    question: undefined | MetabaseQuestion,
    context: { isNewQuestion: boolean },
) => Promise<void>

A callback function that triggers before saving. Only relevant when isSaveEnabled = true

-
onRun?: (question: undefined | MetabaseQuestion) => void

A callback function that triggers when a question is updated, including when a user clicks the Visualize button in the question editor

-
onSave?: (
    question: MetabaseQuestion,
    context: { dashboardTabId?: number; isNewQuestion: boolean },
) => void

A callback function that triggers when a user saves the question. Only relevant when isSaveEnabled = true

-
questionId: null | SdkQuestionId

The ID of the question. -
-This is either: -

-
    -
  • The numerical ID when accessing a question link, e.g., http://localhost:3000/question/1-my-question where the ID is 1 -
  • -
  • The entity_id key of the question object. You can find a question's Entity ID in the info panel when viewing a question -
  • -
  • new to show the notebook editor for creating new questions. isSaveEnabled must be true to allow saving the question
  • -
-
targetCollection?: SdkCollectionId

The collection to save the question to. This will hide the collection picker from the save modal. Only applicable to interactive questions.

-
withDownloads?: boolean

Enables the ability to download results in the interactive question.

-
diff --git a/_docs/master/embedding/sdk/api/CollectionBrowser.html b/_docs/master/embedding/sdk/api/CollectionBrowser.html index 14aa299dba..f2a767ff5c 100644 --- a/_docs/master/embedding/sdk/api/CollectionBrowser.html +++ b/_docs/master/embedding/sdk/api/CollectionBrowser.html @@ -9,7 +9,7 @@ layout: docs-api --- -CollectionBrowser | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Function CollectionBrowser

  • A component that allows you to browse collections and their items.

    +CollectionBrowser | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

    Function CollectionBrowser

    • A component that allows you to browse collections and their items.

      Parameters

      • props: CollectionBrowserProps
        • OptionalclassName?: string

          A custom class name to be added to the root element.

        • OptionalcollectionId?: SdkCollectionId

          The numerical ID of the collection, "personal" for the user's personal collection, or "root" for the root collection. You can find this ID in the URL when accessing a collection in your Metabase instance. For example, the collection ID in http://localhost:3000/collection/1-my-collection would be 1. Defaults to "personal"

        • OptionalEmptyContentComponent?: null | ComponentType

          A component to display when there are no items in the collection.

          @@ -17,5 +17,5 @@
        • OptionalpageSize?: number

          The number of items to display per page. The default is 25.

        • Optionalstyle?: CSSProperties

          A custom style object to be added to the root element.

        • OptionalvisibleColumns?: CollectionBrowserListColumns[]

          The columns to display in the collection items table. If not provided, all columns will be shown.

          -
        • OptionalvisibleEntityTypes?: ("model" | "question" | "collection" | "dashboard")[]

          The types of entities that should be visible. If not provided, all entities will be shown.

          -

      Returns ReactNode

    +
  • OptionalvisibleEntityTypes?: ("collection" | "dashboard" | "question" | "model")[]

    The types of entities that should be visible. If not provided, all entities will be shown.

    +

Returns Element

diff --git a/_docs/master/embedding/sdk/api/CollectionBrowserProps.html b/_docs/master/embedding/sdk/api/CollectionBrowserProps.html index 9d11564ebf..a0250a669e 100644 --- a/_docs/master/embedding/sdk/api/CollectionBrowserProps.html +++ b/_docs/master/embedding/sdk/api/CollectionBrowserProps.html @@ -9,7 +9,7 @@ layout: docs-api --- -CollectionBrowserProps | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Interface CollectionBrowserProps

interface CollectionBrowserProps {
    className?: string;
    collectionId?: SdkCollectionId;
    EmptyContentComponent?: null | ComponentType;
    onClick?: (item: MetabaseCollectionItem) => void;
    pageSize?: number;
    style?: CSSProperties;
    visibleColumns?: CollectionBrowserListColumns[];
    visibleEntityTypes?: ("model" | "question" | "collection" | "dashboard")[];
}
Index

Properties

className? +CollectionBrowserProps | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Interface CollectionBrowserProps

interface CollectionBrowserProps {
    className?: string;
    collectionId?: SdkCollectionId;
    EmptyContentComponent?: null | ComponentType;
    onClick?: (item: MetabaseCollectionItem) => void;
    pageSize?: number;
    style?: CSSProperties;
    visibleColumns?: CollectionBrowserListColumns[];
    visibleEntityTypes?: ("collection" | "dashboard" | "question" | "model")[];
}
Index

Properties

pageSize?: number

The number of items to display per page. The default is 25.

A custom style object to be added to the root element.

visibleColumns?: CollectionBrowserListColumns[]

The columns to display in the collection items table. If not provided, all columns will be shown.

-
visibleEntityTypes?: ("model" | "question" | "collection" | "dashboard")[]

The types of entities that should be visible. If not provided, all entities will be shown.

+
visibleEntityTypes?: ("collection" | "dashboard" | "question" | "model")[]

The types of entities that should be visible. If not provided, all entities will be shown.

diff --git a/_docs/master/embedding/sdk/api/CreateDashboardModal.html b/_docs/master/embedding/sdk/api/CreateDashboardModal.html index be458f1df9..ba02d2c8f1 100644 --- a/_docs/master/embedding/sdk/api/CreateDashboardModal.html +++ b/_docs/master/embedding/sdk/api/CreateDashboardModal.html @@ -9,9 +9,9 @@ layout: docs-api --- -CreateDashboardModal | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Function CreateDashboardModal

Returns Element

diff --git a/_docs/master/embedding/sdk/api/CreateQuestion.html b/_docs/master/embedding/sdk/api/CreateQuestion.html index e79feca847..559e5c69cc 100644 --- a/_docs/master/embedding/sdk/api/CreateQuestion.html +++ b/_docs/master/embedding/sdk/api/CreateQuestion.html @@ -9,7 +9,7 @@ layout: docs-api --- -CreateQuestion | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Function CreateQuestion

  • Parameters

    • Optionalprops: CreateQuestionProps
      • OptionalclassName?: string

        A custom class name to be added to the root element.

        +CreateQuestion | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

        Function CreateQuestion

        • Parameters

          • props: undefined | CreateQuestionProps
            • undefined
            • CreateQuestionProps
              • OptionalclassName?: string

                A custom class name to be added to the root element.

              • OptionalcomponentPlugins?: MetabasePluginsConfig

                Additional mapper function to override or add drill-down menu

              • OptionalentityTypes?: EmbeddingEntityType[]

                An array that specifies which entity types are available in the data picker

              • Optionalheight?: Height<string | number>

                A number or string specifying a CSS size value that specifies the height of the component

                @@ -26,5 +26,5 @@
              • OptionalwithChartTypeSelector?: boolean

                Determines whether the chart type selector and corresponding settings button are shown. Only relevant when using the default layout.

              • OptionalwithDownloads?: boolean

                Enables the ability to download results in the interactive question.

              • OptionalwithResetButton?: boolean

                Determines whether a reset button is displayed. Only relevant when using the default layout.

                -

          Returns Element

          Use <InteractiveQuestion questionId="new" /> instead.

          +

    Returns Element

    Use <InteractiveQuestion questionId="new" /> instead.

diff --git a/_docs/master/embedding/sdk/api/EditableDashboard.html b/_docs/master/embedding/sdk/api/EditableDashboard.html index bd76c55d96..2c3cd63e66 100644 --- a/_docs/master/embedding/sdk/api/EditableDashboard.html +++ b/_docs/master/embedding/sdk/api/EditableDashboard.html @@ -9,7 +9,7 @@ layout: docs-api --- -EditableDashboard | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Function EditableDashboard

  • A dashboard component with the features available in the InteractiveDashboard component, as well as the ability to add and update questions, layout, and content within your dashboard.

    +EditableDashboard | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

    Function EditableDashboard

    • A dashboard component with the features available in the InteractiveDashboard component, as well as the ability to add and update questions, layout, and content within your dashboard.

      Parameters

      • props: EditableDashboardProps
        • OptionalclassName?: string

          A custom class name to be added to the root element.

        • dashboardId: SdkDashboardId

          The ID of the dashboard.
          @@ -46,4 +46,4 @@

        • OptionalwithCardTitle?: boolean

          Whether the dashboard cards should display a title.

        • OptionalwithDownloads?: boolean

          Whether to hide the download button.

        • OptionalwithTitle?: boolean

          Whether the dashboard should display a title.

          -

      Returns Element

    +

Returns Element

diff --git a/_docs/master/embedding/sdk/api/IconName.html b/_docs/master/embedding/sdk/api/IconName.html index dc5d728476..f1a02469ce 100644 --- a/_docs/master/embedding/sdk/api/IconName.html +++ b/_docs/master/embedding/sdk/api/IconName.html @@ -9,4 +9,4 @@ layout: docs-api --- -IconName | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Type Alias IconName

IconName:
    | "string"
    | "number"
    | "function"
    | "model"
    | "table"
    | "question"
    | "collection"
    | "dashboard"
    | "revert"
    | "add"
    | "add_column"
    | "add_data"
    | "add_folder"
    | "add_row"
    | "add_to_dash"
    | "ai"
    | "alert"
    | "alert_filled"
    | "alert_confirm"
    | "archive"
    | "area"
    | "attachment"
    | "arrow_up"
    | "arrow_down"
    | "arrow_left"
    | "arrow_left_to_line"
    | "arrow_right"
    | "arrow_split"
    | "audit"
    | "badge"
    | "bar"
    | "bell"
    | "birthday"
    | "bookmark"
    | "bookmark_filled"
    | "bolt"
    | "bolt_filled"
    | "breakout"
    | "bubble"
    | "burger"
    | "calendar"
    | "check"
    | "check_filled"
    | "chevrondown"
    | "chevronleft"
    | "chevronright"
    | "chevronup"
    | "click"
    | "clipboard"
    | "clock"
    | "clone"
    | "close"
    | "cloud"
    | "cloud_filled"
    | "compare"
    | "combine"
    | "connections"
    | "contract"
    | "copy"
    | "curved"
    | "database"
    | "dash"
    | "curve"
    | "document"
    | "download"
    | "dyno"
    | "edit_document"
    | "ellipsis"
    | "embed"
    | "empty"
    | "enter_or_return"
    | "expand"
    | "expand_arrow"
    | "extract"
    | "eye"
    | "eye_crossed_out"
    | "eye_outline"
    | "field"
    | "fields"
    | "filter"
    | "filter_plus"
    | "bug"
    | "format_code"
    | "formula"
    | "funnel"
    | "funnel_outline"
    | "folder"
    | "folder_filled"
    | "gauge"
    | "gear"
    | "gear_settings_filled"
    | "gem"
    | "globe"
    | "grabber"
    | "grid"
    | "group"
    | "google"
    | "google_drive"
    | "google_sheet"
    | "history"
    | "home"
    | "horizontal_bar"
    | "hourglass"
    | "info"
    | "info_filled"
    | "info_outline"
    | "insight"
    | "int"
    | "io"
    | "join_full_outer"
    | "join_inner"
    | "join_left_outer"
    | "join_right_outer"
    | "index"
    | "key"
    | "label"
    | "ldap"
    | "learn"
    | "lightbulb"
    | "link"
    | "line"
    | "lines"
    | "lineandbar"
    | "line_style_dashed"
    | "line_style_dotted"
    | "line_style_solid"
    | "list"
    | "location"
    | "lock"
    | "lock_filled"
    | "mail"
    | "mail_filled"
    | "metabot"
    | "metabot_sad"
    | "metric"
    | "model_with_badge"
    | "moon"
    | "move"
    | "move_card"
    | "new_folder"
    | "notebook"
    | "palette"
    | "pause"
    | "pencil"
    | "pencil_lines"
    | "permissions_limited"
    | "person"
    | "pie"
    | "pin"
    | "pinmap"
    | "pivot_table"
    | "play"
    | "play_outlined"
    | "popover"
    | "popular"
    | "progress"
    | "pulse"
    | "recents"
    | "sankey"
    | "share"
    | "split"
    | "sql"
    | "subscription"
    | "straight"
    | "stepped"
    | "sort"
    | "sort_arrows"
    | "sum"
    | "sync"
    | "redo"
    | "return"
    | "reference"
    | "refresh"
    | "refresh_downstream"
    | "rocket"
    | "ruler"
    | "schema"
    | "search"
    | "section"
    | "segment"
    | "shield"
    | "sidebar_closed"
    | "sidebar_open"
    | "slack"
    | "slack_colorized"
    | "smartscalar"
    | "snail"
    | "snippet"
    | "sparkles"
    | "star_filled"
    | "star"
    | "stop"
    | "store"
    | "sun"
    | "t-shirt"
    | "tab"
    | "table2"
    | "time_history"
    | "trash"
    | "trash_filled"
    | "triangle_left"
    | "triangle_right"
    | "unarchive"
    | "undo"
    | "unknown"
    | "unpin"
    | "unsubscribe"
    | "upload"
    | "variable"
    | "verified"
    | "official_collection"
    | "verified_filled"
    | "view_archive"
    | "warning"
    | "warning_round_filled"
    | "warning_triangle_filled"
    | "waterfall"
    | "webhook"
    | "10k"
    | "1m"
    | "zoom_in"
    | "zoom_out"
    | "scalar"
    | "cake"
    | "external"
    | "table_spaced"
    | "beaker"
    | "eye_filled"
+IconName | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Type Alias IconName

IconName:
    | "string"
    | "number"
    | "function"
    | "collection"
    | "dashboard"
    | "question"
    | "model"
    | "table"
    | "revert"
    | "add"
    | "add_column"
    | "add_data"
    | "add_folder"
    | "add_row"
    | "add_to_dash"
    | "ai"
    | "alert"
    | "alert_filled"
    | "alert_confirm"
    | "archive"
    | "area"
    | "attachment"
    | "arrow_up"
    | "arrow_down"
    | "arrow_left"
    | "arrow_left_to_line"
    | "arrow_right"
    | "arrow_split"
    | "audit"
    | "badge"
    | "bar"
    | "bell"
    | "birthday"
    | "bookmark"
    | "bookmark_filled"
    | "bolt"
    | "bolt_filled"
    | "breakout"
    | "bubble"
    | "burger"
    | "calendar"
    | "check"
    | "check_filled"
    | "chevrondown"
    | "chevronleft"
    | "chevronright"
    | "chevronup"
    | "click"
    | "clipboard"
    | "clock"
    | "clone"
    | "close"
    | "cloud"
    | "cloud_filled"
    | "compare"
    | "combine"
    | "connections"
    | "contract"
    | "copy"
    | "curved"
    | "database"
    | "dash"
    | "curve"
    | "document"
    | "download"
    | "dyno"
    | "edit_document"
    | "ellipsis"
    | "embed"
    | "empty"
    | "enter_or_return"
    | "expand"
    | "expand_arrow"
    | "extract"
    | "eye"
    | "eye_crossed_out"
    | "eye_outline"
    | "field"
    | "fields"
    | "filter"
    | "filter_plus"
    | "bug"
    | "format_code"
    | "formula"
    | "funnel"
    | "funnel_outline"
    | "folder"
    | "folder_filled"
    | "gauge"
    | "gear"
    | "gear_settings_filled"
    | "gem"
    | "globe"
    | "grabber"
    | "grid"
    | "group"
    | "google"
    | "google_drive"
    | "google_sheet"
    | "history"
    | "home"
    | "horizontal_bar"
    | "hourglass"
    | "info"
    | "info_filled"
    | "info_outline"
    | "insight"
    | "int"
    | "io"
    | "join_full_outer"
    | "join_inner"
    | "join_left_outer"
    | "join_right_outer"
    | "index"
    | "key"
    | "label"
    | "ldap"
    | "learn"
    | "lightbulb"
    | "link"
    | "line"
    | "lines"
    | "lineandbar"
    | "line_style_dashed"
    | "line_style_dotted"
    | "line_style_solid"
    | "list"
    | "location"
    | "lock"
    | "lock_filled"
    | "mail"
    | "mail_filled"
    | "metabot"
    | "metabot_sad"
    | "metric"
    | "model_with_badge"
    | "moon"
    | "move"
    | "move_card"
    | "new_folder"
    | "notebook"
    | "palette"
    | "pause"
    | "pencil"
    | "pencil_lines"
    | "permissions_limited"
    | "person"
    | "pie"
    | "pin"
    | "pinmap"
    | "pivot_table"
    | "play"
    | "play_outlined"
    | "popover"
    | "popular"
    | "progress"
    | "pulse"
    | "recents"
    | "sankey"
    | "share"
    | "split"
    | "sql"
    | "subscription"
    | "straight"
    | "stepped"
    | "sort"
    | "sort_arrows"
    | "sum"
    | "sync"
    | "redo"
    | "return"
    | "reference"
    | "refresh"
    | "refresh_downstream"
    | "rocket"
    | "ruler"
    | "schema"
    | "search"
    | "section"
    | "segment"
    | "shield"
    | "sidebar_closed"
    | "sidebar_open"
    | "slack"
    | "slack_colorized"
    | "smartscalar"
    | "snail"
    | "snippet"
    | "sparkles"
    | "star_filled"
    | "star"
    | "stop"
    | "store"
    | "sun"
    | "t-shirt"
    | "tab"
    | "table2"
    | "time_history"
    | "trash"
    | "trash_filled"
    | "triangle_left"
    | "triangle_right"
    | "unarchive"
    | "undo"
    | "unknown"
    | "unpin"
    | "unsubscribe"
    | "upload"
    | "variable"
    | "verified"
    | "official_collection"
    | "verified_filled"
    | "view_archive"
    | "warning"
    | "warning_round_filled"
    | "warning_triangle_filled"
    | "waterfall"
    | "webhook"
    | "10k"
    | "1m"
    | "zoom_in"
    | "zoom_out"
    | "scalar"
    | "cake"
    | "external"
    | "table_spaced"
    | "beaker"
    | "eye_filled"
diff --git a/_docs/master/embedding/sdk/api/InteractiveDashboard.html b/_docs/master/embedding/sdk/api/InteractiveDashboard.html index fe6812fef0..0b74a9cbab 100644 --- a/_docs/master/embedding/sdk/api/InteractiveDashboard.html +++ b/_docs/master/embedding/sdk/api/InteractiveDashboard.html @@ -9,7 +9,7 @@ layout: docs-api --- -InteractiveDashboard | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Function InteractiveDashboard

  • A dashboard component with drill downs, click behaviors, and the ability to view and click into questions.

    +InteractiveDashboard | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

    Function InteractiveDashboard

    • A dashboard component with drill downs, click behaviors, and the ability to view and click into questions.

      Parameters

      • props: {
            drillThroughQuestionHeight?: Height<string | number>;
            drillThroughQuestionProps?: DrillThroughQuestionProps;
            plugins?: MetabasePluginsConfig;
            renderDrillThroughQuestion?: () => ReactNode;
        } & {
            dashboardId: SdkDashboardId;
            hiddenParameters?: string[];
            initialParameters?: ParameterValues;
            withCardTitle?: boolean;
            withDownloads?: boolean;
            withTitle?: boolean;
        } & { className?: string; style?: CSSProperties } & {
            onLoad?: (dashboard: null | MetabaseDashboard) => void;
            onLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void;
        } & { dataPickerProps?: Pick<SdkQuestionProps, "entityTypes"> } & {}
        • OptionaldrillThroughQuestionHeight?: Height<string | number>

          Height of a question component when drilled from the dashboard to a question level.

        • OptionaldrillThroughQuestionProps?: DrillThroughQuestionProps

          Props of a question component when drilled from the dashboard to a question level.

        • Optionalplugins?: MetabasePluginsConfig

          Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details.

          @@ -46,4 +46,4 @@
        • OptionalonLoad?: (dashboard: null | MetabaseDashboard) => void

          Callback that is called when the dashboard is loaded.

        • OptionalonLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void

          Callback that is called when the dashboard is loaded without cards.

        • OptionaldataPickerProps?: Pick<SdkQuestionProps, "entityTypes">

          Additional props to pass to the query builder rendered by InteractiveQuestion when creating a new dashboard question.

          -

        Returns Element

      +

      Returns Element

      diff --git a/_docs/master/embedding/sdk/api/InteractiveQuestion.html b/_docs/master/embedding/sdk/api/InteractiveQuestion.html index 19a94e13b9..770927427f 100644 --- a/_docs/master/embedding/sdk/api/InteractiveQuestion.html +++ b/_docs/master/embedding/sdk/api/InteractiveQuestion.html @@ -9,8 +9,8 @@ layout: docs-api --- -InteractiveQuestion | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

      Function InteractiveQuestion

      • A question component with drill-downs enabled.

        -

        Parameters

        • props: InteractiveQuestionProps
          • OptionalclassName?: string

            A custom class name to be added to the root element.

            +InteractiveQuestion | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

            Function InteractiveQuestion

            • A component that renders an interactive question.

              +

              Parameters

              • props: InteractiveQuestionProps
                • OptionalclassName?: string

                  A custom class name to be added to the root element.

                • OptionalcomponentPlugins?: MetabasePluginsConfig

                  Additional mapper function to override or add drill-down menu

                • OptionalentityTypes?: EmbeddingEntityType[]

                  An array that specifies which entity types are available in the data picker

                • Optionalheight?: Height<string | number>

                  A number or string specifying a CSS size value that specifies the height of the component

                  @@ -27,7 +27,7 @@
                • OptionalwithChartTypeSelector?: boolean

                  Determines whether the chart type selector and corresponding settings button are shown. Only relevant when using the default layout.

                • OptionalwithDownloads?: boolean

                  Enables the ability to download results in the interactive question.

                • OptionalwithResetButton?: boolean

                  Determines whether a reset button is displayed. Only relevant when using the default layout.

                  -

              Returns Element

            Index

            InteractiveQuestion

        Returns Element

      Index

      InteractiveQuestion

      BackButton Breakout BreakoutDropdown ChartTypeDropdown diff --git a/_docs/master/embedding/sdk/api/InteractiveQuestionComponents.html b/_docs/master/embedding/sdk/api/InteractiveQuestionComponents.html new file mode 100644 index 0000000000..7dda05a538 --- /dev/null +++ b/_docs/master/embedding/sdk/api/InteractiveQuestionComponents.html @@ -0,0 +1,103 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: InteractiveQuestionComponents +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/InteractiveQuestionComponents.html' +layout: docs-api +--- + +InteractiveQuestionComponents | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

      Interface InteractiveQuestionComponents

      interface InteractiveQuestionComponents {
          BackButton: (
              props: InteractiveQuestionBackButtonProps,
          ) => null | Element;
          Breakout: () => null | Element;
          BreakoutDropdown: (
              props: InteractiveQuestionBreakoutDropdownProps,
          ) => null | Element;
          ChartTypeDropdown: (props: MenuProps) => Element;
          ChartTypeSelector: (props: StackProps) => Element;
          DownloadWidget: (props: StackProps) => null | Element;
          DownloadWidgetDropdown: (props: PopoverProps) => Element;
          Editor: (props: InteractiveQuestionEditorProps) => undefined | Element;
          EditorButton: (
              props: InteractiveQuestionEditorButtonProps,
          ) => undefined | false | Element;
          Filter: (props: InteractiveQuestionFilterProps) => Element;
          FilterDropdown: (
              props: InteractiveQuestionFilterDropdownProps,
          ) => null | Element;
          Notebook: (props: InteractiveQuestionEditorProps) => undefined | Element;
          NotebookButton: (
              props: InteractiveQuestionEditorButtonProps,
          ) => undefined | false | Element;
          QuestionSettings: (props: StackProps) => null | Element;
          QuestionSettingsDropdown: (
              props?: InteractiveQuestionQuestionSettingsDropdownProps,
          ) => Element;
          QuestionVisualization: (
              props: { className?: string; style?: CSSProperties } & {
                  height?: Height<string | number>;
                  width?: Width<string | number>;
              } & {},
          ) => Element;
          ResetButton: (props?: ButtonProps) => null | Element;
          SaveButton: (props?: InteractiveQuestionSaveButtonProps) => Element;
          SaveQuestionForm: (
              props: InteractiveQuestionSaveQuestionFormProps,
          ) => null | Element;
          Summarize: () => Element;
          SummarizeDropdown: (
              props: InteractiveQuestionSummarizeDropdownProps,
          ) => Element;
          Title: (
              props: { className?: string; style?: CSSProperties },
          ) => undefined | Element;
          VisualizationButton: () => null | Element;
      }
      Index

      InteractiveQuestion

      BackButton: (props: InteractiveQuestionBackButtonProps) => null | Element

      Type declaration

      Breakout: () => null | Element

      Type declaration

        • (): null | Element
        • Function

          A set of badges for managing data groupings (breakouts). +Uses question context for breakout functionality.

          +

          Returns null | Element

      BreakoutDropdown: (
          props: InteractiveQuestionBreakoutDropdownProps,
      ) => null | Element

      Type declaration

      ChartTypeDropdown: (props: MenuProps) => Element

      Type declaration

        • (props: MenuProps): Element
        • Function

          Dropdown for selecting the visualization type (bar chart, line chart, table, etc.). +Automatically updates to show recommended visualization types for the current data.

          +

          Parameters

          Returns Element

      ChartTypeSelector: (props: StackProps) => Element

      Type declaration

      DownloadWidget: (props: StackProps) => null | Element

      Type declaration

        • (props: StackProps): null | Element
        • Function

          Provides a UI widget for downloading data in different formats (CSV, XLSX, JSON, and PNG depending on the visualization).

          +

          Parameters

          Returns null | Element

      DownloadWidgetDropdown: (props: PopoverProps) => Element

      Type declaration

      Editor: (props: InteractiveQuestionEditorProps) => undefined | Element

      Type declaration

        • (props: InteractiveQuestionEditorProps): undefined | Element
        • Function

          Advanced query editor that provides full access to question configuration. +Includes filtering, aggregation, custom expressions, and joins.

          +

          Parameters

          • props: InteractiveQuestionEditorProps
            • OptionalhasVisualizeButton?: boolean
            • OptionalonApply?: () => void

              Callback function executed when changes are applied

              +

          Returns undefined | Element

      EditorButton: (
          props: InteractiveQuestionEditorButtonProps,
      ) => undefined | false | Element

      Type declaration

      Type declaration

      FilterDropdown: (
          props: InteractiveQuestionFilterDropdownProps,
      ) => null | Element

      Type declaration

      Notebook: (props: InteractiveQuestionEditorProps) => undefined | Element

      Type declaration

        • (props: InteractiveQuestionEditorProps): undefined | Element
        • Function

          Advanced query editor that provides full access to question configuration. +Includes filtering, aggregation, custom expressions, and joins.

          +

          Parameters

          • props: InteractiveQuestionEditorProps
            • OptionalhasVisualizeButton?: boolean
            • OptionalonApply?: () => void

              Callback function executed when changes are applied

              +

          Returns undefined | Element

      Use InteractiveQuestion.Editor instead

      +
      NotebookButton: (
          props: InteractiveQuestionEditorButtonProps,
      ) => undefined | false | Element

      Type declaration

      Use InteractiveQuestion.EditorButton instead

      +
      QuestionSettings: (props: StackProps) => null | Element

      Type declaration

        • (props: StackProps): null | Element
        • Function

          Settings panel for configuring visualization options like axes, colors, and formatting. +Uses question context for settings.

          +

          Parameters

          Returns null | Element

      QuestionSettingsDropdown: (
          props?: InteractiveQuestionQuestionSettingsDropdownProps,
      ) => Element

      Type declaration

      QuestionVisualization: (
          props: { className?: string; style?: CSSProperties } & {
              height?: Height<string | number>;
              width?: Width<string | number>;
          } & {},
      ) => Element

      Type declaration

        • (
              props: { className?: string; style?: CSSProperties } & {
                  height?: Height<string | number>;
                  width?: Width<string | number>;
              } & {},
          ): Element
        • Function

          The main visualization component that renders the question results as a chart, table, or other visualization type.

          +

          Parameters

          • props: { className?: string; style?: CSSProperties } & {
                height?: Height<string | number>;
                width?: Width<string | number>;
            } & {}
            • OptionalclassName?: string

              A custom class name to be added to the root element.

              +
            • Optionalstyle?: CSSProperties

              A custom style object to be added to the root element.

              +
            • Optionalheight?: Height<string | number>

              A number or string specifying a CSS size value that specifies the height of the component

              +
            • Optionalwidth?: Width<string | number>

              A number or string specifying a CSS size value that specifies the width of the component

              +

            Returns Element

        ResetButton: (props?: ButtonProps) => null | Element

        Type declaration

          • (props?: ButtonProps): null | Element
          • Function

            Button to reset question modifications. Only appears when there are unsaved changes to the question.

            +

            Parameters

            Returns null | Element

        Type declaration

        SaveQuestionForm: (
            props: InteractiveQuestionSaveQuestionFormProps,
        ) => null | Element

        Type declaration

        Summarize: () => Element

        Type declaration

          • (): Element
          • Function

            Interface for adding and managing data summaries (like counts, sums, averages). Displays as a set of badges. +Uses question context for summarization functionality.

            +

            Returns Element

        SummarizeDropdown: (props: InteractiveQuestionSummarizeDropdownProps) => Element

        Type declaration

        Title: (
            props: { className?: string; style?: CSSProperties },
        ) => undefined | Element

        Type declaration

          • (props: { className?: string; style?: CSSProperties }): undefined | Element
          • Function

            Displays a title based on the question's state. Shows:

            +
              +
            • The question's display name if it's saved
            • +
            • An auto-generated description for ad-hoc questions (non-native queries)
            • +
            +

            Parameters

            • props: { className?: string; style?: CSSProperties }
              • OptionalclassName?: string

                A custom class name to be added to the root element.

                +
              • Optionalstyle?: CSSProperties

                A custom style object to be added to the root element.

                +

            Returns undefined | Element

        VisualizationButton: () => null | Element

        Type declaration

          • (): null | Element
          • Function

            A button that triggers the visualization of the current question.

            +

            Returns null | Element

        diff --git a/_docs/master/embedding/sdk/api/MetabaseProvider.html b/_docs/master/embedding/sdk/api/MetabaseProvider.html index 6635bf8699..481cfedd57 100644 --- a/_docs/master/embedding/sdk/api/MetabaseProvider.html +++ b/_docs/master/embedding/sdk/api/MetabaseProvider.html @@ -14,7 +14,8 @@
      • authConfig: MetabaseAuthConfig

        Defines how to authenticate with Metabase.

      • children: ReactNode

        The children of the MetabaseProvider component.

      • OptionalclassName?: string

        A custom class name to be added to the root element.

        -
      • OptionalerrorComponent?: SdkErrorComponent

        A custom error component to display when the SDK encounters an error.

        +

        This prop is not used anymore.

        +
      • OptionalerrorComponent?: SdkErrorComponent

        A custom error component to display when the SDK encounters an error.

      • OptionaleventHandlers?: SdkEventHandlersConfig
      • OptionalloaderComponent?: () => Element

        A custom loader component to display while the SDK is loading.

      • Optionallocale?: string

        Defines the display language. Accepts an ISO language code such as en or de. diff --git a/_docs/master/embedding/sdk/api/MetabaseProviderProps.html b/_docs/master/embedding/sdk/api/MetabaseProviderProps.html index c06935f30b..1624bbab66 100644 --- a/_docs/master/embedding/sdk/api/MetabaseProviderProps.html +++ b/_docs/master/embedding/sdk/api/MetabaseProviderProps.html @@ -9,10 +9,10 @@ layout: docs-api --- -MetabaseProviderProps | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

        Interface MetabaseProviderProps

        interface MetabaseProviderProps {
            allowConsoleLog?: boolean;
            authConfig: MetabaseAuthConfig;
            children: ReactNode;
            className?: string;
            errorComponent?: SdkErrorComponent;
            eventHandlers?: SdkEventHandlersConfig;
            loaderComponent?: () => Element;
            locale?: string;
            pluginsConfig?: MetabasePluginsConfig;
            theme?: MetabaseTheme;
        }

        Hierarchy

        Index

        Properties

        allowConsoleLog? +MetabaseProviderProps | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

        Interface MetabaseProviderProps

        interface MetabaseProviderProps {
            allowConsoleLog?: boolean;
            authConfig: MetabaseAuthConfig;
            children: ReactNode;
            className?: string;
            errorComponent?: SdkErrorComponent;
            eventHandlers?: SdkEventHandlersConfig;
            loaderComponent?: () => Element;
            locale?: string;
            pluginsConfig?: MetabasePluginsConfig;
            theme?: MetabaseTheme;
        }
        Index

        Properties

        allowConsoleLog?: boolean

        Whether to allow logging to the DevTools console. Defaults to true.

        authConfig: MetabaseAuthConfig

        Defines how to authenticate with Metabase.

        children: ReactNode

        The children of the MetabaseProvider component.

        -
        className?: string

        A custom class name to be added to the root element.

        -
        errorComponent?: SdkErrorComponent

        A custom error component to display when the SDK encounters an error.

        +
        className?: string

        A custom class name to be added to the root element.

        +

        This prop is not used anymore.

        +
        errorComponent?: SdkErrorComponent

        A custom error component to display when the SDK encounters an error.

        eventHandlers?: SdkEventHandlersConfig
        loaderComponent?: () => Element

        A custom loader component to display while the SDK is loading.

        locale?: string

        Defines the display language. Accepts an ISO language code such as en or de. diff --git a/_docs/master/embedding/sdk/api/MetabotQuestion.html b/_docs/master/embedding/sdk/api/MetabotQuestion.html new file mode 100644 index 0000000000..eec53a55b2 --- /dev/null +++ b/_docs/master/embedding/sdk/api/MetabotQuestion.html @@ -0,0 +1,13 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: MetabotQuestion +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/MetabotQuestion.html' +layout: docs-api +--- + +MetabotQuestion | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

        Function MetabotQuestion

        • A component that renders a metabot question.

          +

          Parameters

          • props: object

          Returns Element

        diff --git a/_docs/master/embedding/sdk/api/SdkErrorComponent.html b/_docs/master/embedding/sdk/api/SdkErrorComponent.html index e3e97a53c0..f121a09bcf 100644 --- a/_docs/master/embedding/sdk/api/SdkErrorComponent.html +++ b/_docs/master/embedding/sdk/api/SdkErrorComponent.html @@ -9,4 +9,4 @@ layout: docs-api --- -SdkErrorComponent | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

        Type Alias SdkErrorComponent

        SdkErrorComponent: ({ type, message, }: SdkErrorComponentProps) => JSX_2.Element

        Type declaration

        +SdkErrorComponent | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

        Type Alias SdkErrorComponent

        SdkErrorComponent: ({ type, message, }: SdkErrorComponentProps) => JSX_3.Element

        Type declaration

        diff --git a/_docs/master/embedding/sdk/api/StaticDashboard.html b/_docs/master/embedding/sdk/api/StaticDashboard.html index 2345fa0fb4..0f2ca5e986 100644 --- a/_docs/master/embedding/sdk/api/StaticDashboard.html +++ b/_docs/master/embedding/sdk/api/StaticDashboard.html @@ -9,7 +9,7 @@ layout: docs-api --- -StaticDashboard | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

        Function StaticDashboard

        • A lightweight dashboard component.

          +StaticDashboard | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

          Function StaticDashboard

          • A lightweight dashboard component.

            Parameters

            • props: {
                  drillThroughQuestionHeight?: Height<string | number>;
                  drillThroughQuestionProps?: DrillThroughQuestionProps;
                  plugins?: MetabasePluginsConfig;
                  renderDrillThroughQuestion?: () => ReactNode;
              } & {
                  dashboardId: SdkDashboardId;
                  hiddenParameters?: string[];
                  initialParameters?: ParameterValues;
                  withCardTitle?: boolean;
                  withDownloads?: boolean;
                  withTitle?: boolean;
              } & { className?: string; style?: CSSProperties } & {
                  onLoad?: (dashboard: null | MetabaseDashboard) => void;
                  onLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void;
              } & { dataPickerProps?: Pick<SdkQuestionProps, "entityTypes"> } & {}
              • OptionaldrillThroughQuestionHeight?: Height<string | number>

                Height of a question component when drilled from the dashboard to a question level.

              • OptionaldrillThroughQuestionProps?: DrillThroughQuestionProps

                Props of a question component when drilled from the dashboard to a question level.

              • Optionalplugins?: MetabasePluginsConfig

                Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details.

                @@ -46,4 +46,4 @@
              • OptionalonLoad?: (dashboard: null | MetabaseDashboard) => void

                Callback that is called when the dashboard is loaded.

              • OptionalonLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void

                Callback that is called when the dashboard is loaded without cards.

              • OptionaldataPickerProps?: Pick<SdkQuestionProps, "entityTypes">

                Additional props to pass to the query builder rendered by InteractiveQuestion when creating a new dashboard question.

                -

              Returns Element

            +
          • Returns Element

            diff --git a/_docs/master/embedding/sdk/api/StaticQuestion.html b/_docs/master/embedding/sdk/api/StaticQuestion.html index f4273c357c..ae1bfcf816 100644 --- a/_docs/master/embedding/sdk/api/StaticQuestion.html +++ b/_docs/master/embedding/sdk/api/StaticQuestion.html @@ -9,8 +9,8 @@ layout: docs-api --- -StaticQuestion | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

            Function StaticQuestion

            • A question component without drill-downs.

              -

              Parameters

              • __namedParameters: StaticQuestionProps
                • OptionalclassName?: string

                  A custom class name to be added to the root element.

                  +StaticQuestion | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

                  Function StaticQuestion

                  • A component that renders a static question.

                    +

                    Parameters

                    • props: StaticQuestionProps
                      • OptionalclassName?: string

                        A custom class name to be added to the root element.

                      • Optionalheight?: Height<string | number>

                        A number or string specifying a CSS size value that specifies the height of the component

                      • OptionalinitialSqlParameters?: SqlParameterValues

                        Initial values for the SQL parameters.

                      • questionId: null | SdkQuestionId
                      • Optionalstyle?: CSSProperties

                        A custom style object to be added to the root element.

                        @@ -18,7 +18,7 @@
                      • Optionalwidth?: Width<string | number>

                        A number or string specifying a CSS size value that specifies the width of the component

                      • OptionalwithChartTypeSelector?: boolean

                        Determines whether the chart type selector and corresponding settings button are shown. Only relevant when using the default layout.

                      • OptionalwithDownloads?: boolean

                        Enables the ability to download results in the interactive question.

                        -

                    Returns null | Element

                  Index

                  InteractiveQuestion

              Returns Element

            Index

            InteractiveQuestion

            Breakout BreakoutDropdown ChartTypeDropdown ChartTypeSelector diff --git a/_docs/master/embedding/sdk/api/StaticQuestionComponents.html b/_docs/master/embedding/sdk/api/StaticQuestionComponents.html new file mode 100644 index 0000000000..5466ed5965 --- /dev/null +++ b/_docs/master/embedding/sdk/api/StaticQuestionComponents.html @@ -0,0 +1,60 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: StaticQuestionComponents +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/StaticQuestionComponents.html' +layout: docs-api +--- + +StaticQuestionComponents | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

            Interface StaticQuestionComponents

            interface StaticQuestionComponents {
                Breakout: () => null | Element;
                BreakoutDropdown: (
                    props: InteractiveQuestionBreakoutDropdownProps,
                ) => null | Element;
                ChartTypeDropdown: (props: MenuProps) => Element;
                ChartTypeSelector: (props: StackProps) => Element;
                DownloadWidget: (props: StackProps) => null | Element;
                DownloadWidgetDropdown: (props: PopoverProps) => Element;
                Filter: (props: InteractiveQuestionFilterProps) => Element;
                FilterDropdown: (
                    props: InteractiveQuestionFilterDropdownProps,
                ) => null | Element;
                QuestionSettings: (props: StackProps) => null | Element;
                QuestionSettingsDropdown: (
                    props?: InteractiveQuestionQuestionSettingsDropdownProps,
                ) => Element;
                QuestionVisualization: (
                    props: { className?: string; style?: CSSProperties } & {
                        height?: Height<string | number>;
                        width?: Width<string | number>;
                    } & {},
                ) => Element;
                ResetButton: (props?: ButtonProps) => null | Element;
                Summarize: () => Element;
                SummarizeDropdown: (
                    props: InteractiveQuestionSummarizeDropdownProps,
                ) => Element;
                Title: (
                    props: { className?: string; style?: CSSProperties },
                ) => undefined | Element;
            }
            Index

            InteractiveQuestion

            Breakout: () => null | Element

            Type declaration

              • (): null | Element
              • Function

                A set of badges for managing data groupings (breakouts). +Uses question context for breakout functionality.

                +

                Returns null | Element

            BreakoutDropdown: (
                props: InteractiveQuestionBreakoutDropdownProps,
            ) => null | Element

            Type declaration

            ChartTypeDropdown: (props: MenuProps) => Element

            Type declaration

              • (props: MenuProps): Element
              • Function

                Dropdown for selecting the visualization type (bar chart, line chart, table, etc.). +Automatically updates to show recommended visualization types for the current data.

                +

                Parameters

                Returns Element

            ChartTypeSelector: (props: StackProps) => Element

            Type declaration

            DownloadWidget: (props: StackProps) => null | Element

            Type declaration

              • (props: StackProps): null | Element
              • Function

                Provides a UI widget for downloading data in different formats (CSV, XLSX, JSON, and PNG depending on the visualization).

                +

                Parameters

                Returns null | Element

            DownloadWidgetDropdown: (props: PopoverProps) => Element

            Type declaration

            Type declaration

            FilterDropdown: (
                props: InteractiveQuestionFilterDropdownProps,
            ) => null | Element

            Type declaration

            QuestionSettings: (props: StackProps) => null | Element

            Type declaration

              • (props: StackProps): null | Element
              • Function

                Settings panel for configuring visualization options like axes, colors, and formatting. +Uses question context for settings.

                +

                Parameters

                Returns null | Element

            QuestionSettingsDropdown: (
                props?: InteractiveQuestionQuestionSettingsDropdownProps,
            ) => Element

            Type declaration

            QuestionVisualization: (
                props: { className?: string; style?: CSSProperties } & {
                    height?: Height<string | number>;
                    width?: Width<string | number>;
                } & {},
            ) => Element

            Type declaration

              • (
                    props: { className?: string; style?: CSSProperties } & {
                        height?: Height<string | number>;
                        width?: Width<string | number>;
                    } & {},
                ): Element
              • Function

                The main visualization component that renders the question results as a chart, table, or other visualization type.

                +

                Parameters

                • props: { className?: string; style?: CSSProperties } & {
                      height?: Height<string | number>;
                      width?: Width<string | number>;
                  } & {}
                  • OptionalclassName?: string

                    A custom class name to be added to the root element.

                    +
                  • Optionalstyle?: CSSProperties

                    A custom style object to be added to the root element.

                    +
                  • Optionalheight?: Height<string | number>

                    A number or string specifying a CSS size value that specifies the height of the component

                    +
                  • Optionalwidth?: Width<string | number>

                    A number or string specifying a CSS size value that specifies the width of the component

                    +

                  Returns Element

              ResetButton: (props?: ButtonProps) => null | Element

              Type declaration

                • (props?: ButtonProps): null | Element
                • Function

                  Button to reset question modifications. Only appears when there are unsaved changes to the question.

                  +

                  Parameters

                  Returns null | Element

              Summarize: () => Element

              Type declaration

                • (): Element
                • Function

                  Interface for adding and managing data summaries (like counts, sums, averages). Displays as a set of badges. +Uses question context for summarization functionality.

                  +

                  Returns Element

              SummarizeDropdown: (props: InteractiveQuestionSummarizeDropdownProps) => Element

              Type declaration

              Title: (
                  props: { className?: string; style?: CSSProperties },
              ) => undefined | Element

              Type declaration

                • (props: { className?: string; style?: CSSProperties }): undefined | Element
                • Function

                  Displays a title based on the question's state. Shows:

                  +
                    +
                  • The question's display name if it's saved
                  • +
                  • An auto-generated description for ad-hoc questions (non-native queries)
                  • +
                  +

                  Parameters

                  • props: { className?: string; style?: CSSProperties }
                    • OptionalclassName?: string

                      A custom class name to be added to the root element.

                      +
                    • Optionalstyle?: CSSProperties

                      A custom style object to be added to the root element.

                      +

                  Returns undefined | Element

              diff --git a/_docs/master/embedding/sdk/api/assets/navigation.js b/_docs/master/embedding/sdk/api/assets/navigation.js index f695acbc75..6aea3d90bb 100644 --- a/_docs/master/embedding/sdk/api/assets/navigation.js +++ b/_docs/master/embedding/sdk/api/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "eJylWV1z0zgU/S9+7uywzAKzfWvTZKCU3W5T4IHhQbEusTayZKTrhsLw3xknTSLLVx82T+3onHuOdHWtr3z6USB8w+K8mGkpoUSh1aXRWwumOCvKSkhuQBXnn6K8hmFFQX9UWMvirNgIxYvzl3/9PAvL3Brd2IjWDu8LPn/x8udnV9MAQ7hitlppZvg7zZkMjYKmHswJNDKW1oIXcdGIkxoJx1JDuPvZCVGGCQrqfmCyhbDmHs5J+H8t2G6ioql2SD2/Q7ufj7OilMza4rzg0BgoGQIvgtZkenpgfCDHUQfGMOcC2UqCy3vyGkCRmX2jEAwrUTxQShQaEVsiQ1ESOh4QkRj03csjjcdqjBqDJxqkxHS9MXmSFBqfcKcTifKlmcOxhArZrTIjpLyvjG7XVaByg5TMpB9iupnT5rJFHFjksCe55fpMcUhrT1E9/F0ColBre2V0w/U2wy0aObEXH4RtmRTfWd6Aw2Ej/e/AAuaWik8e6bVkp/8X2tRpQzJipOu9QAlpqxMtuhTxTaAqfWRkLy9ZucmdBo/rOT37+9WfL54n3AywjW4xv+bJiAnOs4oZvH9sIN+aDvkd7yV0x8ucRYsOmeB9pbdKasY/Cr6GEXmPxP12L8a6T3VdCIlg8sdM8Ce75rpNdfH3gvG7x1Tnbm3MXTE87hS3tq6ZEd9HfLd0CO3tHs/eAbIVs91i/CB48C7K4YtQcCBftFjNtPoi1qc+hRiRUxrh/STmIyNEvFSRcGy7iI0xNbrh5A4jPgqsLhrxFh5juifWNIfrLabkr7c4TXvJapkS7zjp4tvfJhLXggGpdxXJuAz0ieSFZsQFVmMV/EoumYXwoYVCcypxpqU2REnv23MUhsnzkRyV+wpqGErsmmPx5Lo5YoHcHQt2g3XeHY5tyWj/eetG2C6yrVXsEcxhJR1ai7o+3oln3TMRqPYNQu0YhEkp/V7QXmeoHyGN0u+CAqodNFpr35W5hBoURoR7vBwXOs0+klKa1yvgXKj1XKHAx+7w6TzKDMGk3pG5P+m8hUf3lYdAk8eDUqt/mPvhHVpSkTd6LVS3vrVOF5zG3NV/JkW5uSjpBcQBJ+jdynYtlA3tsyFmttPxqyZXzydsvFq/5mg8X7VutAKFgeW1j+eqEo+VA2i0VmK2aF6+C7JbLRT+u/ofSuL04hFydY8f8RKs7Z4e9AaIciBpuR4LwLK6g6/dZroLXBAOBClbXytcsFpI4sx4wnLVEtM4afbeW+r4/n7wy9RQ4ZYZVgOC8X8l8YCUzpJvnA/QfaTvAxk6x0L2ZJz2MSo3mvH5Q2/7I+EMzf0G4nXr0JgTb4w2xxWlr9KDRmsNH+gIPEe1y8RrprgEMyhRGs9QPRxzvcydmkdoUE+cJJyh2X0gXp/2TcnYrzL44QyxlFrn2b1zguLXW7wD22hlnb2IxkP3u8+/ALqey/Q=" \ No newline at end of file +window.navigationData = "eJylWsty3DYQ/BeeVanEFTtl3VYrqWJZThStZB9cOmDJ8RJeEKDBoTZyyv+ewj5BYPAgfZIK3dONwRvgfv6vQPgXi/NiroSAErmSF1ptOtDFWVHWXFQaZHH+OcprGdYU9EuNjSjOijWXVXH+5vcfZ2GZO63aLqK1xYeCr16/+fFka2pgCJesq5eK6eqDqpgIZUFTD+YEGsuFoLvphCg5Gf3TQ2daIpqLRRp4Hsrd+p8VpWBdV5wXFbQaSoZQFUFrMp0BGE/kmHkgh6uKI1sKsHl7Lw+K9MQ7iaBZifyZUqLQiNgCGfKS0HGAiIRXd6cdadxvyniGjmiQEtN1cnIkKTTe4VYlEsOXZvq5hAayPco0F+Kh1qpf1YGRG6RkNvohxvSc0hc9omeRw57kluszxSGtPUX18HcBiFyuukut2kptMtyikRNr8ZF3PRP8O8tLOBw20v8eOsDcoeKSR3ot2On/a6WbtCEZMdL1gaOAtNWJFl2KqnVgVLrIyFpesHKd2w0O13H69e0fv71+lXDTwNaqx/wxT0ZMcJ7XTOPDSwv51nTIz3gvwJzfchYtOmSC96XaSKFY9YlXKxjR7pG4n67FWPeprtdcIOj8nAn+ZNdct6ku7l4wfveY6mzWxtwVw+FOceubhmn+fcS8pUNob/t49gGQLVlnFuNnXgUvexV84RIO5FmP9VzJL3x1qlOIETmlEd57MRcZIeI0FQnHtotYjqns/M71Iz5xrGctfw8vMd0Ta5rDzQZT8jcbnKa9YI1IiRtO5uBTmLgX+Czb+gR4g+TJu9YknDzS4NaTce8YEsm704i7ssI6OCGp7VM1rZIgMbHLHmk502CuhNLEfNqV5ygE+s1CclQeamjAl9gWp6+zsSYKMWKq5FYwYs3fnnS2TWg9pRzLktHuk9gt70xk38jYw5nFSjr0HarmeM2fm5cqkP07hMYyCJNS+oOgnY6vHyGN0jdBAVUDjdbaVeVKQAMSI8IDXo4L3cwuklK6apZQVVyuriRyfDHnaeudyQeTekfm7vD2Hl7shysCTZ54SiX/YvZ0PpSkIm/VikszYXurClZh7oY2F7xcz0p6WbLACXp3ol9x2YWODiFmttNxVpNr8h4brzYcczSer7pfQwOL9hDPVSXeXz1otFait2hevguyO8Ul/r38CiVxIHMIubrHSbyArjOvKWoNxHAgabke14BlfQ/fzLa4DbwmHAhStr6SeM0aLohj8AnLVUt046Tee+yoG8mj9zXLV7hjmjWAoD8y0YO1UjlASmdRra0JaH93GAIZOseB7MhY5WNUbhWrrp4H2x8JZ2juNhCnWofCnHitlT6uKEOVATRay39zJPAcVdMSfzJZCdDeEKXxDNXDgdVpuVPxCA3q1ZaEMzTNBHHqtCtKxn4TwYnjYyk142mebkFWNxu8h65VsrP2IhpPX1n7DmZtK3i5/QiwP8VQFzSSuDf3sejd1dCfGRfmA6FZG7uIpcuzHAdQytD5Tj1rediU5J6MfTj/E7o7EEg4fos2Nei1BomP4R8zeCSr+qfyVKPZbyHHU2rAjuSeXH2YMH/6H2c5yi8=" \ No newline at end of file diff --git a/_docs/master/embedding/sdk/api/assets/search.js b/_docs/master/embedding/sdk/api/assets/search.js index 27e8ee812b..6523df7257 100644 --- a/_docs/master/embedding/sdk/api/assets/search.js +++ b/_docs/master/embedding/sdk/api/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/_docs/master/embedding/sdk/api/index.html b/_docs/master/embedding/sdk/api/index.html index 8aa00975b8..7cf85d9285 100644 --- a/_docs/master/embedding/sdk/api/index.html +++ b/_docs/master/embedding/sdk/api/index.html @@ -9,4 +9,4 @@ layout: docs-api --- -Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

              Embedded analytics SDK API

              CollectionBrowser

              CollectionBrowser
              CollectionBrowserProps

              CreateDashboardModal

              CreateDashboardModal
              useCreateDashboardApi
              CreateDashboardModalProps
              CreateDashboardValues

              CreateQuestion

              CreateQuestion
              CreateQuestionProps

              Dashboard

              EditableDashboard
              InteractiveDashboard
              StaticDashboard
              EditableDashboardProps
              InteractiveDashboardProps
              StaticDashboardProps

              InteractiveQuestion

              InteractiveQuestion
              DrillThroughQuestionProps
              InteractiveQuestionEditorButtonProps
              InteractiveQuestionEditorProps
              InteractiveQuestionProps
              InteractiveQuestionQuestionSettingsDropdownProps
              InteractiveQuestionQuestionVisualizationProps
              InteractiveQuestionResetButtonProps
              InteractiveQuestionSaveQuestionFormProps
              InteractiveQuestionTitleProps
              SdkQuestionProps
              InteractiveQuestionBackButtonProps
              InteractiveQuestionBreakoutDropdownProps
              InteractiveQuestionChartTypeDropdownProps
              InteractiveQuestionChartTypeSelectorProps
              InteractiveQuestionDownloadWidgetDropdownProps
              InteractiveQuestionDownloadWidgetProps
              InteractiveQuestionFilterDropdownProps
              InteractiveQuestionFilterProps
              InteractiveQuestionQuestionSettingsProps
              InteractiveQuestionSaveButtonProps
              InteractiveQuestionSummarizeDropdownProps

              MetabaseProvider

              defineMetabaseAuthConfig
              MetabaseProvider
              MetabaseProviderProps
              MetabaseAuthConfig
              MetabaseAuthConfigWithApiKey
              MetabaseAuthConfigWithJwt
              MetabaseAuthConfigWithSaml

              StaticQuestion

              StaticQuestion
              StaticQuestionProps

              other

              BaseSdkQuestionProps
              MetabaseColors
              MetabaseQuestion
              MetabaseTheme
              ButtonProps
              ChartColor
              CollectionBrowserListColumns
              CustomDashboardCardMenuItem
              DashboardCardCustomMenuItem
              DashboardCardMenu
              DashboardCardMenuCustomElement
              DashCardMenuItem
              EmbeddingEntityType
              EntityTypeFilterKeys
              IconName
              LoginStatus
              MetabaseClickAction
              MetabaseClickActionPluginsConfig
              MetabaseCollection
              MetabaseCollectionItem
              MetabaseComponentTheme
              MetabaseDashboard
              MetabaseDashboardPluginsConfig
              MetabaseDataPointObject
              MetabaseEmbeddingSessionToken
              MetabaseFetchRequestTokenFn
              MetabaseFontFamily
              MetabasePluginsConfig
              MetabaseUser
              ParameterValues
              SdkCollectionId
              SdkDashboardId
              SdkDashboardLoadEvent
              SdkEntityId
              SdkErrorComponent
              SdkErrorComponentProps
              SdkEventHandlersConfig
              SdkQuestionId
              SdkQuestionTitleProps
              SdkUserId
              SqlParameterValues
              UserBackendJwtResponse

              +Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

              Embedded analytics SDK API

              CollectionBrowser

              CollectionBrowser
              CollectionBrowserProps

              CreateDashboardModal

              CreateDashboardModal
              CreateDashboardModalProps

              CreateQuestion

              CreateQuestion
              CreateQuestionProps

              Dashboard

              EditableDashboard
              InteractiveDashboard
              StaticDashboard
              EditableDashboardProps
              InteractiveDashboardProps
              StaticDashboardProps

              InteractiveQuestion

              InteractiveQuestion
              DrillThroughQuestionProps
              InteractiveQuestionEditorButtonProps
              InteractiveQuestionEditorProps
              InteractiveQuestionProps
              InteractiveQuestionQuestionSettingsDropdownProps
              InteractiveQuestionQuestionVisualizationProps
              InteractiveQuestionResetButtonProps
              InteractiveQuestionSaveQuestionFormProps
              InteractiveQuestionTitleProps
              SdkQuestionProps
              InteractiveQuestionBackButtonProps
              InteractiveQuestionBreakoutDropdownProps
              InteractiveQuestionChartTypeDropdownProps
              InteractiveQuestionChartTypeSelectorProps
              InteractiveQuestionDownloadWidgetDropdownProps
              InteractiveQuestionDownloadWidgetProps
              InteractiveQuestionFilterDropdownProps
              InteractiveQuestionFilterProps
              InteractiveQuestionQuestionSettingsProps
              InteractiveQuestionSaveButtonProps
              InteractiveQuestionSummarizeDropdownProps

              MetabaseProvider

              defineMetabaseAuthConfig
              MetabaseProvider
              MetabaseProviderProps
              MetabaseAuthConfig
              MetabaseAuthConfigWithApiKey
              MetabaseAuthConfigWithJwt
              MetabaseAuthConfigWithSaml

              MetabotQuestion

              MetabotQuestion

              StaticQuestion

              StaticQuestion
              StaticQuestionProps

              other

              InteractiveQuestionComponents
              MetabaseColors
              MetabaseQuestion
              MetabaseTheme
              StaticQuestionComponents
              ButtonProps
              ChartColor
              CollectionBrowserListColumns
              CustomDashboardCardMenuItem
              DashboardCardCustomMenuItem
              DashboardCardMenu
              DashboardCardMenuCustomElement
              DashCardMenuItem
              EmbeddingEntityType
              EntityTypeFilterKeys
              IconName
              LoginStatus
              MetabaseClickAction
              MetabaseClickActionPluginsConfig
              MetabaseCollection
              MetabaseCollectionItem
              MetabaseComponentTheme
              MetabaseDashboard
              MetabaseDashboardPluginsConfig
              MetabaseDataPointObject
              MetabaseEmbeddingSessionToken
              MetabaseFetchRequestTokenFn
              MetabaseFontFamily
              MetabasePluginsConfig
              MetabaseUser
              ParameterValues
              SdkCollectionId
              SdkDashboardId
              SdkDashboardLoadEvent
              SdkEntityId
              SdkErrorComponent
              SdkErrorComponentProps
              SdkEventHandlersConfig
              SdkQuestionId
              SdkQuestionTitleProps
              SdkUserId
              SqlParameterValues
              UserBackendJwtResponse

              useApplicationName

              useApplicationName

              useAvailableFonts

              useAvailableFonts

              useCreateDashboardApi

              useCreateDashboardApi
              CreateDashboardValues

              useCurrentUser

              useCurrentUser

              useMetabaseAuthStatus

              useMetabaseAuthStatus

              diff --git a/_docs/master/embedding/sdk/api/snippets/BaseSdkQuestionProps.md b/_docs/master/embedding/sdk/api/snippets/BaseSdkQuestionProps.md deleted file mode 100644 index 1550e682b6..0000000000 --- a/_docs/master/embedding/sdk/api/snippets/BaseSdkQuestionProps.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -version: master -has_magic_breadcrumbs: true -show_category_breadcrumb: true -show_title_breadcrumb: true -category: Embedding -title: BaseSdkQuestionProps -source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/snippets/BaseSdkQuestionProps.md' -layout: new-docs ---- - -**`Expand`** - -## Properties - - - -| Property | Type | Description | -| :-------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `children?` | [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) | The children of the MetabaseProvider component.s | -| `entityTypes?` | [`EmbeddingEntityType`](./api/EmbeddingEntityType)[] | An array that specifies which entity types are available in the data picker | -| `initialSqlParameters?` | [`SqlParameterValues`](./api/SqlParameterValues) | Initial values for the SQL parameters. | -| `isSaveEnabled?` | `boolean` | Whether to show the save button. | -| `onBeforeSave?` | (`question`: `undefined` \| [`MetabaseQuestion`](./api/MetabaseQuestion), `context`: \{ `isNewQuestion`: `boolean`; \}) => [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<`void`\> | A callback function that triggers before saving. Only relevant when `isSaveEnabled = true` | -| `onRun?` | (`question`: `undefined` \| [`MetabaseQuestion`](./api/MetabaseQuestion)) => `void` | A callback function that triggers when a question is updated, including when a user clicks the `Visualize` button in the question editor | -| `onSave?` | (`question`: [`MetabaseQuestion`](./api/MetabaseQuestion), `context`: \{ `dashboardTabId?`: `number`; `isNewQuestion`: `boolean`; \}) => `void` | A callback function that triggers when a user saves the question. Only relevant when `isSaveEnabled = true` | -| `plugins?` | [`MetabasePluginsConfig`](./api/MetabasePluginsConfig) | - | -| `questionId` | `null` \| [`SdkQuestionId`](./api/SdkQuestionId) | The ID of the question.
              This is either:
              - The numerical ID when accessing a question link, e.g., `http://localhost:3000/question/1-my-question` where the ID is `1`
              - The `entity_id` key of the question object. You can find a question's Entity ID in the info panel when viewing a question
              - `new` to show the notebook editor for creating new questions. `isSaveEnabled` must be `true` to allow saving the question | -| `targetCollection?` | [`SdkCollectionId`](./api/SdkCollectionId) | The collection to save the question to. This will hide the collection picker from the save modal. Only applicable to interactive questions. | -| `withDownloads?` | `boolean` | Enables the ability to download results in the interactive question. | - - diff --git a/_docs/master/embedding/sdk/api/snippets/CollectionBrowser.md b/_docs/master/embedding/sdk/api/snippets/CollectionBrowser.md index f42336d5b3..8c4a58e3c0 100644 --- a/_docs/master/embedding/sdk/api/snippets/CollectionBrowser.md +++ b/_docs/master/embedding/sdk/api/snippets/CollectionBrowser.md @@ -10,7 +10,7 @@ layout: new-docs --- ```ts -function CollectionBrowser(props: CollectionBrowserProps): ReactNode; +function CollectionBrowser(props: CollectionBrowserProps): Element; ``` A component that allows you to browse collections and their items. @@ -29,6 +29,6 @@ A component that allows you to browse collections and their items. -[`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) diff --git a/_docs/master/embedding/sdk/api/snippets/CollectionBrowserProps.md b/_docs/master/embedding/sdk/api/snippets/CollectionBrowserProps.md index 440e4e9f1b..c1122aa5d8 100644 --- a/_docs/master/embedding/sdk/api/snippets/CollectionBrowserProps.md +++ b/_docs/master/embedding/sdk/api/snippets/CollectionBrowserProps.md @@ -24,6 +24,6 @@ layout: new-docs | `pageSize?` | `number` | The number of items to display per page. The default is 25. | | `style?` | [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579) | A custom style object to be added to the root element. | | `visibleColumns?` | [`CollectionBrowserListColumns`](./api/CollectionBrowserListColumns)[] | The columns to display in the collection items table. If not provided, all columns will be shown. | -| `visibleEntityTypes?` | (`"model"` \| `"question"` \| `"collection"` \| `"dashboard"`)[] | The types of entities that should be visible. If not provided, all entities will be shown. | +| `visibleEntityTypes?` | (`"collection"` \| `"dashboard"` \| `"question"` \| `"model"`)[] | The types of entities that should be visible. If not provided, all entities will be shown. | diff --git a/_docs/master/embedding/sdk/api/snippets/CreateDashboardModal.md b/_docs/master/embedding/sdk/api/snippets/CreateDashboardModal.md index d379140d40..62be38123b 100644 --- a/_docs/master/embedding/sdk/api/snippets/CreateDashboardModal.md +++ b/_docs/master/embedding/sdk/api/snippets/CreateDashboardModal.md @@ -10,7 +10,7 @@ layout: new-docs --- ```ts -function CreateDashboardModal(props: CreateDashboardModalProps): ReactNode; +function CreateDashboardModal(props: CreateDashboardModalProps): Element; ``` Creates a dashboard @@ -29,6 +29,6 @@ Creates a dashboard -[`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) diff --git a/_docs/master/embedding/sdk/api/snippets/CreateQuestion.md b/_docs/master/embedding/sdk/api/snippets/CreateQuestion.md index a69689c146..91fbeaf956 100644 --- a/_docs/master/embedding/sdk/api/snippets/CreateQuestion.md +++ b/_docs/master/embedding/sdk/api/snippets/CreateQuestion.md @@ -10,16 +10,16 @@ layout: new-docs --- ```ts -function CreateQuestion(props?: CreateQuestionProps): Element; +function CreateQuestion(props: undefined | CreateQuestionProps): Element; ``` ## Parameters -| Parameter | Type | -| :-------- | :---------------------------------------------------- | -| `props?` | [`CreateQuestionProps`](./api/CreateQuestionProps) | +| Parameter | Type | +| :-------- | :------------------------------------------------------------------- | +| `props` | `undefined` \| [`CreateQuestionProps`](./api/CreateQuestionProps) | @@ -27,7 +27,7 @@ function CreateQuestion(props?: CreateQuestionProps): Element; -[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) diff --git a/_docs/master/embedding/sdk/api/snippets/EditableDashboard.md b/_docs/master/embedding/sdk/api/snippets/EditableDashboard.md index ac04f5dd59..9c29db2238 100644 --- a/_docs/master/embedding/sdk/api/snippets/EditableDashboard.md +++ b/_docs/master/embedding/sdk/api/snippets/EditableDashboard.md @@ -29,6 +29,6 @@ A dashboard component with the features available in the `InteractiveDashboard` -[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) diff --git a/_docs/master/embedding/sdk/api/snippets/IconName.md b/_docs/master/embedding/sdk/api/snippets/IconName.md index 61158e48be..2340a0ba3d 100644 --- a/_docs/master/embedding/sdk/api/snippets/IconName.md +++ b/_docs/master/embedding/sdk/api/snippets/IconName.md @@ -14,11 +14,11 @@ type IconName = | "string" | "number" | "function" - | "model" - | "table" - | "question" | "collection" | "dashboard" + | "question" + | "model" + | "table" | "revert" | "add" | "add_column" diff --git a/_docs/master/embedding/sdk/api/snippets/InteractiveDashboard.md b/_docs/master/embedding/sdk/api/snippets/InteractiveDashboard.md index 6cde9d0c98..9ee00ca286 100644 --- a/_docs/master/embedding/sdk/api/snippets/InteractiveDashboard.md +++ b/_docs/master/embedding/sdk/api/snippets/InteractiveDashboard.md @@ -51,6 +51,6 @@ A dashboard component with drill downs, click behaviors, and the ability to view -[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) diff --git a/_docs/master/embedding/sdk/api/snippets/InteractiveQuestion.md b/_docs/master/embedding/sdk/api/snippets/InteractiveQuestion.md index fccb77cd50..4f781edfe0 100644 --- a/_docs/master/embedding/sdk/api/snippets/InteractiveQuestion.md +++ b/_docs/master/embedding/sdk/api/snippets/InteractiveQuestion.md @@ -13,15 +13,15 @@ layout: new-docs function InteractiveQuestion(props: InteractiveQuestionProps): Element; ``` -A question component with drill-downs enabled. +A component that renders an interactive question. ## Parameters -| Parameter | Type | -| :-------- | :-------------------------------------------------------------- | -| `props` | [`InteractiveQuestionProps`](./api/InteractiveQuestionProps) | +| Parameter | Type | Description | +| :-------- | :-------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionProps`](./api/InteractiveQuestionProps) | | @@ -29,6 +29,6 @@ A question component with drill-downs enabled. -[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) diff --git a/_docs/master/embedding/sdk/api/snippets/InteractiveQuestionComponents.md b/_docs/master/embedding/sdk/api/snippets/InteractiveQuestionComponents.md new file mode 100644 index 0000000000..966993143c --- /dev/null +++ b/_docs/master/embedding/sdk/api/snippets/InteractiveQuestionComponents.md @@ -0,0 +1,863 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: InteractiveQuestionComponents +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/snippets/InteractiveQuestionComponents.md' +layout: new-docs +--- + +## InteractiveQuestion + + + + + +### BackButton() + + + +```ts +BackButton: (props: InteractiveQuestionBackButtonProps) => + | null + | Element; +``` + +**`Function`** + +A navigation button that returns to the previous view. +Only visible when rendered within the [InteractiveDashboardProps.renderDrillThroughQuestion](./api/StaticDashboardProps#renderdrillthroughquestion) prop. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :---------------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionBackButtonProps`](./api/InteractiveQuestionBackButtonProps) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### Breakout() + + + +```ts +Breakout: () => + | null + | Element; +``` + +**`Function`** + +A set of badges for managing data groupings (breakouts). +Uses question context for breakout functionality. + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### BreakoutDropdown() + + + +```ts +BreakoutDropdown: (props: InteractiveQuestionBreakoutDropdownProps) => + | null + | Element; +``` + +**`Function`** + +Dropdown button for the Breakout component. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :---------------------------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionBreakoutDropdownProps`](./api/InteractiveQuestionBreakoutDropdownProps) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### ChartTypeDropdown() + + + +```ts +ChartTypeDropdown: (props: MenuProps) => Element; +``` + +**`Function`** + +Dropdown for selecting the visualization type (bar chart, line chart, table, etc.). +Automatically updates to show recommended visualization types for the current data. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------- | :---------- | +| `props` | [`MenuProps`](https://v7.mantine.dev/core/menu/?t=props) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### ChartTypeSelector() + + + +```ts +ChartTypeSelector: (props: StackProps) => Element; +``` + +**`Function`** + +Detailed chart type selection interface with recommended visualization options. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :--------------------------------------------------------- | :---------- | +| `props` | [`StackProps`](https://v7.mantine.dev/core/stack/?t=props) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### DownloadWidget() + + + +```ts +DownloadWidget: (props: StackProps) => + | null + | Element; +``` + +**`Function`** + +Provides a UI widget for downloading data in different formats (`CSV`, `XLSX`, `JSON`, and `PNG` depending on the visualization). + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :--------------------------------------------------------- | :---------- | +| `props` | [`StackProps`](https://v7.mantine.dev/core/stack/?t=props) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### DownloadWidgetDropdown() + + + +```ts +DownloadWidgetDropdown: (props: PopoverProps) => Element; +``` + +**`Function`** + +Provides a button that contains a dropdown that shows the `DownloadWidget`. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------- | :---------- | +| `props` | [`PopoverProps`](https://v7.mantine.dev/core/popover/?t=props) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### Editor() + + + +```ts +Editor: (props: InteractiveQuestionEditorProps) => + | undefined + | Element; +``` + +**`Function`** + +Advanced query editor that provides full access to question configuration. +Includes filtering, aggregation, custom expressions, and joins. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :-------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionEditorProps`](./api/InteractiveQuestionEditorProps) | | + + + +#### Returns + + + +\| `undefined` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### EditorButton() + + + +```ts +EditorButton: (props: InteractiveQuestionEditorButtonProps) => + | undefined + | false + | Element; +``` + +**`Function`** + +Toggle button for showing/hiding the Editor interface. +In custom layouts, the `EditorButton` _must_ have an [InteractiveQuestionEditorButtonProps.onClick](./api/InteractiveQuestionEditorButtonProps#onclick)` handler or the button won't do anything when clicked. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :-------------------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionEditorButtonProps`](./api/InteractiveQuestionEditorButtonProps) | | + + + +#### Returns + + + +\| `undefined` +\| `false` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### Filter() + + + +```ts +Filter: (props: InteractiveQuestionFilterProps) => Element; +``` + +**`Function`** + +A set of interactive filter badges that allow adding, editing, and removing filters. +Displays current filters as badges with an "Add another filter" option. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :-------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionFilterProps`](./api/InteractiveQuestionFilterProps) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### FilterDropdown() + + + +```ts +FilterDropdown: (props: InteractiveQuestionFilterDropdownProps) => + | null + | Element; +``` + +**`Function`** + +A dropdown button for the Filter component. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------------------------------------ | :---------- | +| `props` | [`InteractiveQuestionFilterDropdownProps`](./api/InteractiveQuestionFilterDropdownProps) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### ~~Notebook()~~ + + + +```ts +Notebook: (props: InteractiveQuestionEditorProps) => + | undefined + | Element; +``` + +**`Function`** + +Advanced query editor that provides full access to question configuration. +Includes filtering, aggregation, custom expressions, and joins. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :-------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionEditorProps`](./api/InteractiveQuestionEditorProps) | | + + + +#### Returns + + + +\| `undefined` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + + + +#### Deprecated + + + +Use `InteractiveQuestion.Editor` instead + +--- + + + +### ~~NotebookButton()~~ + + + +```ts +NotebookButton: (props: InteractiveQuestionEditorButtonProps) => + | undefined + | false + | Element; +``` + +**`Function`** + +Toggle button for showing/hiding the Editor interface. +In custom layouts, the `EditorButton` _must_ have an [InteractiveQuestionEditorButtonProps.onClick](./api/InteractiveQuestionEditorButtonProps#onclick)` handler or the button won't do anything when clicked. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :-------------------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionEditorButtonProps`](./api/InteractiveQuestionEditorButtonProps) | | + + + +#### Returns + + + +\| `undefined` +\| `false` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + + + +#### Deprecated + + + +Use `InteractiveQuestion.EditorButton` instead + +--- + + + +### QuestionSettings() + + + +```ts +QuestionSettings: (props: StackProps) => + | null + | Element; +``` + +**`Function`** + +Settings panel for configuring visualization options like axes, colors, and formatting. +Uses question context for settings. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :--------------------------------------------------------- | :---------- | +| `props` | [`StackProps`](https://v7.mantine.dev/core/stack/?t=props) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### QuestionSettingsDropdown() + + + +```ts +QuestionSettingsDropdown: ( + props?: InteractiveQuestionQuestionSettingsDropdownProps, +) => Element; +``` + +**`Function`** + +Dropdown button that contains the QuestionSettings component. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :-------------------------------------------------------------------------------------------------------------- | :---------- | +| `props?` | [`InteractiveQuestionQuestionSettingsDropdownProps`](./api/InteractiveQuestionQuestionSettingsDropdownProps) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### QuestionVisualization() + + + +```ts +QuestionVisualization: ( + props: { + className?: string; + style?: CSSProperties; + } & { + height?: Height; + width?: Width; + } & {}, +) => Element; +``` + +**`Function`** + +The main visualization component that renders the question results as a chart, table, or other visualization type. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :---------- | +| `props` | \{ `className?`: `string`; `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); \} & \{ `height?`: `Height`\<`string` \| `number`\>; `width?`: `Width`\<`string` \| `number`\>; \} & \{ \} | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### ResetButton() + + + +```ts +ResetButton: (props?: ButtonProps) => + | null + | Element; +``` + +**`Function`** + +Button to reset question modifications. Only appears when there are unsaved changes to the question. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------ | :---------- | +| `props?` | [`ButtonProps`](./api/ButtonProps) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### SaveButton() + + + +```ts +SaveButton: (props?: InteractiveQuestionSaveButtonProps) => Element; +``` + +**`Function`** + +Button for saving question changes. Only enabled when there are unsaved modifications to the question. + +_Note_: Currently, in custom layouts, the `SaveButton` must have an `onClick` handler or the button will not do anything when clicked. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :---------------------------------------------------------------------------------- | :---------- | +| `props?` | [`InteractiveQuestionSaveButtonProps`](./api/InteractiveQuestionSaveButtonProps) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### SaveQuestionForm() + + + +```ts +SaveQuestionForm: (props: InteractiveQuestionSaveQuestionFormProps) => + | null + | Element; +``` + +**`Function`** + +Form for saving a question, including title and description. When saved: + +- For existing questions: Calls [SdkQuestionProps.onSave](./api/SdkQuestionProps#onsave) +- Both callbacks receive the updated question object +- Form can be cancelled via the [InteractiveQuestionSaveQuestionFormProps.onCancel](./api/InteractiveQuestionSaveQuestionFormProps#oncancel) + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :---------------------------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionSaveQuestionFormProps`](./api/InteractiveQuestionSaveQuestionFormProps) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### Summarize() + + + +```ts +Summarize: () => Element; +``` + +**`Function`** + +Interface for adding and managing data summaries (like counts, sums, averages). Displays as a set of badges. +Uses question context for summarization functionality. + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### SummarizeDropdown() + + + +```ts +SummarizeDropdown: (props: InteractiveQuestionSummarizeDropdownProps) => + Element; +``` + +**`Function`** + +Dropdown button for the Summarize component. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------------------------------------------ | :---------- | +| `props` | [`InteractiveQuestionSummarizeDropdownProps`](./api/InteractiveQuestionSummarizeDropdownProps) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### Title() + + + +```ts +Title: (props: { + className?: string; + style?: CSSProperties; +}) => + | undefined + | Element; +``` + +**`Function`** + +Displays a title based on the question's state. Shows: + +- The question's display name if it's saved +- An auto-generated description for ad-hoc questions (non-native queries) + + + +#### Parameters + + + +| Parameter | Type | Description | +| :----------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------- | +| `props` | \{ `className?`: `string`; `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); \} | | +| `props.className?` | `string` | A custom class name to be added to the root element. | +| `props.style?` | [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579) | A custom style object to be added to the root element. | + + + +#### Returns + + + +\| `undefined` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### VisualizationButton() + + + +```ts +VisualizationButton: () => + | null + | Element; +``` + +**`Function`** + +A button that triggers the visualization of the current question. + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + + diff --git a/_docs/master/embedding/sdk/api/snippets/MetabaseProviderProps.md b/_docs/master/embedding/sdk/api/snippets/MetabaseProviderProps.md index 0aca6501f6..078e72d276 100644 --- a/_docs/master/embedding/sdk/api/snippets/MetabaseProviderProps.md +++ b/_docs/master/embedding/sdk/api/snippets/MetabaseProviderProps.md @@ -11,17 +11,6 @@ layout: new-docs **`Expand`** -## Extends - - - -- [`Omit`](https://www.typescriptlang.org/docs/handbook/utility-types.html#omittype-keys)\<\{ - `className?`: `string`; - `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); - \}, `"style"`\> - - - ## Properties @@ -31,7 +20,7 @@ layout: new-docs | `allowConsoleLog?` | `boolean` | Whether to allow logging to the DevTools console. Defaults to true. | | `authConfig` | [`MetabaseAuthConfig`](./api/MetabaseAuthConfig) | Defines how to authenticate with Metabase. | | `children` | [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) | The children of the MetabaseProvider component. | -| `className?` | `string` | A custom class name to be added to the root element. | +| ~~`className?`~~ | `string` | A custom class name to be added to the root element. **Deprecated** This prop is not used anymore. | | `errorComponent?` | [`SdkErrorComponent`](./api/SdkErrorComponent) | A custom error component to display when the SDK encounters an error. | | `eventHandlers?` | [`SdkEventHandlersConfig`](./api/SdkEventHandlersConfig) | See [Global event handlers](/docs/master/embedding/sdk/config#global-event-handlers). | | `loaderComponent?` | () => [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4240) | A custom loader component to display while the SDK is loading. | diff --git a/_docs/master/embedding/sdk/api/snippets/MetabotQuestion.md b/_docs/master/embedding/sdk/api/snippets/MetabotQuestion.md new file mode 100644 index 0000000000..e9165a11da --- /dev/null +++ b/_docs/master/embedding/sdk/api/snippets/MetabotQuestion.md @@ -0,0 +1,34 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: MetabotQuestion +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/snippets/MetabotQuestion.md' +layout: new-docs +--- + +```ts +function MetabotQuestion(props: object): Element; +``` + +A component that renders a metabot question. + +## Parameters + + + +| Parameter | Type | +| :-------- | :------- | +| `props` | `object` | + + + +## Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) + + diff --git a/_docs/master/embedding/sdk/api/snippets/SdkErrorComponent.md b/_docs/master/embedding/sdk/api/snippets/SdkErrorComponent.md index cca4663a1d..c608838904 100644 --- a/_docs/master/embedding/sdk/api/snippets/SdkErrorComponent.md +++ b/_docs/master/embedding/sdk/api/snippets/SdkErrorComponent.md @@ -13,7 +13,7 @@ layout: new-docs type SdkErrorComponent = ({ type, message, -}: SdkErrorComponentProps) => JSX_2.Element; +}: SdkErrorComponentProps) => JSX_3.Element; ``` ## Parameters @@ -30,6 +30,6 @@ type SdkErrorComponent = ({ -[`JSX_2.Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4240) +[`JSX_3.Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4240) diff --git a/_docs/master/embedding/sdk/api/snippets/StaticDashboard.md b/_docs/master/embedding/sdk/api/snippets/StaticDashboard.md index a2e705acfe..7ac0fa7d60 100644 --- a/_docs/master/embedding/sdk/api/snippets/StaticDashboard.md +++ b/_docs/master/embedding/sdk/api/snippets/StaticDashboard.md @@ -51,6 +51,6 @@ A lightweight dashboard component. -[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) diff --git a/_docs/master/embedding/sdk/api/snippets/StaticQuestion.md b/_docs/master/embedding/sdk/api/snippets/StaticQuestion.md index 43d5fd95fc..dc7706dbbe 100644 --- a/_docs/master/embedding/sdk/api/snippets/StaticQuestion.md +++ b/_docs/master/embedding/sdk/api/snippets/StaticQuestion.md @@ -10,18 +10,18 @@ layout: new-docs --- ```ts -function StaticQuestion(__namedParameters: StaticQuestionProps): null | Element; +function StaticQuestion(props: StaticQuestionProps): Element; ``` -A question component without drill-downs. +A component that renders a static question. ## Parameters -| Parameter | Type | -| :------------------ | :---------------------------------------------------- | -| `__namedParameters` | [`StaticQuestionProps`](./api/StaticQuestionProps) | +| Parameter | Type | +| :-------- | :---------------------------------------------------- | +| `props` | [`StaticQuestionProps`](./api/StaticQuestionProps) | @@ -29,7 +29,6 @@ A question component without drill-downs. -\| `null` -\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L4313) diff --git a/_docs/master/embedding/sdk/api/snippets/StaticQuestionComponents.md b/_docs/master/embedding/sdk/api/snippets/StaticQuestionComponents.md new file mode 100644 index 0000000000..75f21b6c3a --- /dev/null +++ b/_docs/master/embedding/sdk/api/snippets/StaticQuestionComponents.md @@ -0,0 +1,549 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: StaticQuestionComponents +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/snippets/StaticQuestionComponents.md' +layout: new-docs +--- + +## InteractiveQuestion + + + + + +### Breakout() + + + +```ts +Breakout: () => + | null + | Element; +``` + +**`Function`** + +A set of badges for managing data groupings (breakouts). +Uses question context for breakout functionality. + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### BreakoutDropdown() + + + +```ts +BreakoutDropdown: (props: InteractiveQuestionBreakoutDropdownProps) => + | null + | Element; +``` + +**`Function`** + +Dropdown button for the Breakout component. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :---------------------------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionBreakoutDropdownProps`](./api/InteractiveQuestionBreakoutDropdownProps) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### ChartTypeDropdown() + + + +```ts +ChartTypeDropdown: (props: MenuProps) => Element; +``` + +**`Function`** + +Dropdown for selecting the visualization type (bar chart, line chart, table, etc.). +Automatically updates to show recommended visualization types for the current data. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------- | :---------- | +| `props` | [`MenuProps`](https://v7.mantine.dev/core/menu/?t=props) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### ChartTypeSelector() + + + +```ts +ChartTypeSelector: (props: StackProps) => Element; +``` + +**`Function`** + +Detailed chart type selection interface with recommended visualization options. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :--------------------------------------------------------- | :---------- | +| `props` | [`StackProps`](https://v7.mantine.dev/core/stack/?t=props) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### DownloadWidget() + + + +```ts +DownloadWidget: (props: StackProps) => + | null + | Element; +``` + +**`Function`** + +Provides a UI widget for downloading data in different formats (`CSV`, `XLSX`, `JSON`, and `PNG` depending on the visualization). + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :--------------------------------------------------------- | :---------- | +| `props` | [`StackProps`](https://v7.mantine.dev/core/stack/?t=props) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### DownloadWidgetDropdown() + + + +```ts +DownloadWidgetDropdown: (props: PopoverProps) => Element; +``` + +**`Function`** + +Provides a button that contains a dropdown that shows the `DownloadWidget`. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------- | :---------- | +| `props` | [`PopoverProps`](https://v7.mantine.dev/core/popover/?t=props) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### Filter() + + + +```ts +Filter: (props: InteractiveQuestionFilterProps) => Element; +``` + +**`Function`** + +A set of interactive filter badges that allow adding, editing, and removing filters. +Displays current filters as badges with an "Add another filter" option. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :-------------------------------------------------------------------------- | :---------- | +| `props` | [`InteractiveQuestionFilterProps`](./api/InteractiveQuestionFilterProps) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### FilterDropdown() + + + +```ts +FilterDropdown: (props: InteractiveQuestionFilterDropdownProps) => + | null + | Element; +``` + +**`Function`** + +A dropdown button for the Filter component. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------------------------------------ | :---------- | +| `props` | [`InteractiveQuestionFilterDropdownProps`](./api/InteractiveQuestionFilterDropdownProps) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### QuestionSettings() + + + +```ts +QuestionSettings: (props: StackProps) => + | null + | Element; +``` + +**`Function`** + +Settings panel for configuring visualization options like axes, colors, and formatting. +Uses question context for settings. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :--------------------------------------------------------- | :---------- | +| `props` | [`StackProps`](https://v7.mantine.dev/core/stack/?t=props) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### QuestionSettingsDropdown() + + + +```ts +QuestionSettingsDropdown: ( + props?: InteractiveQuestionQuestionSettingsDropdownProps, +) => Element; +``` + +**`Function`** + +Dropdown button that contains the QuestionSettings component. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :-------------------------------------------------------------------------------------------------------------- | :---------- | +| `props?` | [`InteractiveQuestionQuestionSettingsDropdownProps`](./api/InteractiveQuestionQuestionSettingsDropdownProps) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### QuestionVisualization() + + + +```ts +QuestionVisualization: ( + props: { + className?: string; + style?: CSSProperties; + } & { + height?: Height; + width?: Width; + } & {}, +) => Element; +``` + +**`Function`** + +The main visualization component that renders the question results as a chart, table, or other visualization type. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :---------- | +| `props` | \{ `className?`: `string`; `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); \} & \{ `height?`: `Height`\<`string` \| `number`\>; `width?`: `Width`\<`string` \| `number`\>; \} & \{ \} | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### ResetButton() + + + +```ts +ResetButton: (props?: ButtonProps) => + | null + | Element; +``` + +**`Function`** + +Button to reset question modifications. Only appears when there are unsaved changes to the question. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------ | :---------- | +| `props?` | [`ButtonProps`](./api/ButtonProps) | | + + + +#### Returns + + + +\| `null` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### Summarize() + + + +```ts +Summarize: () => Element; +``` + +**`Function`** + +Interface for adding and managing data summaries (like counts, sums, averages). Displays as a set of badges. +Uses question context for summarization functionality. + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### SummarizeDropdown() + + + +```ts +SummarizeDropdown: (props: InteractiveQuestionSummarizeDropdownProps) => + Element; +``` + +**`Function`** + +Dropdown button for the Summarize component. + + + +#### Parameters + + + +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------------------------------------------ | :---------- | +| `props` | [`InteractiveQuestionSummarizeDropdownProps`](./api/InteractiveQuestionSummarizeDropdownProps) | | + + + +#### Returns + + + +[`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + +--- + + + +### Title() + + + +```ts +Title: (props: { + className?: string; + style?: CSSProperties; +}) => + | undefined + | Element; +``` + +**`Function`** + +Displays a title based on the question's state. Shows: + +- The question's display name if it's saved +- An auto-generated description for ad-hoc questions (non-native queries) + + + +#### Parameters + + + +| Parameter | Type | Description | +| :----------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------- | +| `props` | \{ `className?`: `string`; `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); \} | | +| `props.className?` | `string` | A custom class name to be added to the root element. | +| `props.style?` | [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579) | A custom style object to be added to the root element. | + + + +#### Returns + + + +\| `undefined` +\| [`Element`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/jsx-runtime.d.ts#L6) + + diff --git a/_docs/master/embedding/sdk/api/snippets/index.md b/_docs/master/embedding/sdk/api/snippets/index.md index 4982932825..ec10fcd6db 100644 --- a/_docs/master/embedding/sdk/api/snippets/index.md +++ b/_docs/master/embedding/sdk/api/snippets/index.md @@ -21,9 +21,7 @@ layout: new-docs | Name | Description | | :-------------------------------------------------------------- | :------------------ | | [CreateDashboardModal](./api/CreateDashboardModal) | Creates a dashboard | -| [useCreateDashboardApi](./api/useCreateDashboardApi) | Creates a dashboard | | [CreateDashboardModalProps](./api/CreateDashboardModalProps) | - | -| [CreateDashboardValues](./api/CreateDashboardValues) | - | ## CreateQuestion @@ -45,30 +43,30 @@ layout: new-docs ## InteractiveQuestion -| Name | Description | -| :------------------------------------------------------------------------------------------------------------ | :--------------------------------------------- | -| [InteractiveQuestion](./api/InteractiveQuestion) | A question component with drill-downs enabled. | -| [DrillThroughQuestionProps](./api/DrillThroughQuestionProps) | Props for the drill-through question | -| [InteractiveQuestionEditorButtonProps](./api/InteractiveQuestionEditorButtonProps) | - | -| [InteractiveQuestionEditorProps](./api/InteractiveQuestionEditorProps) | - | -| [InteractiveQuestionProps](./api/InteractiveQuestionProps) | - | -| [InteractiveQuestionQuestionSettingsDropdownProps](./api/InteractiveQuestionQuestionSettingsDropdownProps) | - | -| [InteractiveQuestionQuestionVisualizationProps](./api/InteractiveQuestionQuestionVisualizationProps) | - | -| [InteractiveQuestionResetButtonProps](./api/InteractiveQuestionResetButtonProps) | - | -| [InteractiveQuestionSaveQuestionFormProps](./api/InteractiveQuestionSaveQuestionFormProps) | - | -| [InteractiveQuestionTitleProps](./api/InteractiveQuestionTitleProps) | - | -| [SdkQuestionProps](./api/SdkQuestionProps) | - | -| [InteractiveQuestionBackButtonProps](./api/InteractiveQuestionBackButtonProps) | - | -| [InteractiveQuestionBreakoutDropdownProps](./api/InteractiveQuestionBreakoutDropdownProps) | - | -| [InteractiveQuestionChartTypeDropdownProps](./api/InteractiveQuestionChartTypeDropdownProps) | - | -| [InteractiveQuestionChartTypeSelectorProps](./api/InteractiveQuestionChartTypeSelectorProps) | - | -| [InteractiveQuestionDownloadWidgetDropdownProps](./api/InteractiveQuestionDownloadWidgetDropdownProps) | - | -| [InteractiveQuestionDownloadWidgetProps](./api/InteractiveQuestionDownloadWidgetProps) | - | -| [InteractiveQuestionFilterDropdownProps](./api/InteractiveQuestionFilterDropdownProps) | - | -| [InteractiveQuestionFilterProps](./api/InteractiveQuestionFilterProps) | - | -| [InteractiveQuestionQuestionSettingsProps](./api/InteractiveQuestionQuestionSettingsProps) | - | -| [InteractiveQuestionSaveButtonProps](./api/InteractiveQuestionSaveButtonProps) | - | -| [InteractiveQuestionSummarizeDropdownProps](./api/InteractiveQuestionSummarizeDropdownProps) | - | +| Name | Description | +| :------------------------------------------------------------------------------------------------------------ | :------------------------------------------------ | +| [InteractiveQuestion](./api/InteractiveQuestion) | A component that renders an interactive question. | +| [DrillThroughQuestionProps](./api/DrillThroughQuestionProps) | Props for the drill-through question | +| [InteractiveQuestionEditorButtonProps](./api/InteractiveQuestionEditorButtonProps) | - | +| [InteractiveQuestionEditorProps](./api/InteractiveQuestionEditorProps) | - | +| [InteractiveQuestionProps](./api/InteractiveQuestionProps) | - | +| [InteractiveQuestionQuestionSettingsDropdownProps](./api/InteractiveQuestionQuestionSettingsDropdownProps) | - | +| [InteractiveQuestionQuestionVisualizationProps](./api/InteractiveQuestionQuestionVisualizationProps) | - | +| [InteractiveQuestionResetButtonProps](./api/InteractiveQuestionResetButtonProps) | - | +| [InteractiveQuestionSaveQuestionFormProps](./api/InteractiveQuestionSaveQuestionFormProps) | - | +| [InteractiveQuestionTitleProps](./api/InteractiveQuestionTitleProps) | - | +| [SdkQuestionProps](./api/SdkQuestionProps) | - | +| [InteractiveQuestionBackButtonProps](./api/InteractiveQuestionBackButtonProps) | - | +| [InteractiveQuestionBreakoutDropdownProps](./api/InteractiveQuestionBreakoutDropdownProps) | - | +| [InteractiveQuestionChartTypeDropdownProps](./api/InteractiveQuestionChartTypeDropdownProps) | - | +| [InteractiveQuestionChartTypeSelectorProps](./api/InteractiveQuestionChartTypeSelectorProps) | - | +| [InteractiveQuestionDownloadWidgetDropdownProps](./api/InteractiveQuestionDownloadWidgetDropdownProps) | - | +| [InteractiveQuestionDownloadWidgetProps](./api/InteractiveQuestionDownloadWidgetProps) | - | +| [InteractiveQuestionFilterDropdownProps](./api/InteractiveQuestionFilterDropdownProps) | - | +| [InteractiveQuestionFilterProps](./api/InteractiveQuestionFilterProps) | - | +| [InteractiveQuestionQuestionSettingsProps](./api/InteractiveQuestionQuestionSettingsProps) | - | +| [InteractiveQuestionSaveButtonProps](./api/InteractiveQuestionSaveButtonProps) | - | +| [InteractiveQuestionSummarizeDropdownProps](./api/InteractiveQuestionSummarizeDropdownProps) | - | ## MetabaseProvider @@ -82,21 +80,28 @@ layout: new-docs | [MetabaseAuthConfigWithJwt](./api/MetabaseAuthConfigWithJwt) | - | | [MetabaseAuthConfigWithSaml](./api/MetabaseAuthConfigWithSaml) | - | +## MetabotQuestion + +| Function | Description | +| :------------------------------------------ | :------------------------------------------- | +| [MetabotQuestion](./api/MetabotQuestion) | A component that renders a metabot question. | + ## StaticQuestion -| Name | Description | -| :-------------------------------------------------- | :---------------------------------------- | -| [StaticQuestion](./api/StaticQuestion) | A question component without drill-downs. | -| [StaticQuestionProps](./api/StaticQuestionProps) | - | +| Name | Description | +| :-------------------------------------------------- | :------------------------------------------ | +| [StaticQuestion](./api/StaticQuestion) | A component that renders a static question. | +| [StaticQuestionProps](./api/StaticQuestionProps) | - | ## other | Name | Description | | :---------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [BaseSdkQuestionProps](./api/BaseSdkQuestionProps) | - | +| [InteractiveQuestionComponents](./api/InteractiveQuestionComponents) | - | | [MetabaseColors](./api/MetabaseColors) | - | | [MetabaseQuestion](./api/MetabaseQuestion) | - | | [MetabaseTheme](./api/MetabaseTheme) | Theme configuration for embedded Metabase components. | +| [StaticQuestionComponents](./api/StaticQuestionComponents) | - | | [ButtonProps](./api/ButtonProps) | - | | [ChartColor](./api/ChartColor) | - | | [CollectionBrowserListColumns](./api/CollectionBrowserListColumns) | - | @@ -135,3 +140,34 @@ layout: new-docs | [SdkUserId](./api/SdkUserId) | - | | [SqlParameterValues](./api/SqlParameterValues) | - | | [UserBackendJwtResponse](./api/UserBackendJwtResponse) | - | + +## useApplicationName + +| Function | Description | +| :------------------------------------------------ | :-------------------------------------------------------------------------------------- | +| [useApplicationName](./api/useApplicationName) | Returns application name. Returns `null` until the SDK is fully loaded and initialized. | + +## useAvailableFonts + +| Function | Description | +| :---------------------------------------------- | :------------------------------------------------------------------------------------- | +| [useAvailableFonts](./api/useAvailableFonts) | Returns available fonts. Returns `null` until the SDK is fully loaded and initialized. | + +## useCreateDashboardApi + +| Name | Description | +| :------------------------------------------------------ | :--------------------------------------------------------------------------------- | +| [useCreateDashboardApi](./api/useCreateDashboardApi) | Creates a dashboard. Returns `null` until the SDK is fully loaded and initialized. | +| [CreateDashboardValues](./api/CreateDashboardValues) | - | + +## useCurrentUser + +| Function | Description | +| :---------------------------------------- | :-------------------------------------------------------------------------------------- | +| [useCurrentUser](./api/useCurrentUser) | Returns the current user. Returns `null` until the SDK is fully loaded and initialized. | + +## useMetabaseAuthStatus + +| Function | Description | +| :------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------- | +| [useMetabaseAuthStatus](./api/useMetabaseAuthStatus) | Returns the authentication status of the current user in the Metabase embedding SDK. Returns `null` until the SDK is fully loaded and initialized. | diff --git a/_docs/master/embedding/sdk/api/snippets/useApplicationName.md b/_docs/master/embedding/sdk/api/snippets/useApplicationName.md new file mode 100644 index 0000000000..30ab855a9e --- /dev/null +++ b/_docs/master/embedding/sdk/api/snippets/useApplicationName.md @@ -0,0 +1,25 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: useApplicationName +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/snippets/useApplicationName.md' +layout: new-docs +--- + +```ts +function useApplicationName(): null | string; +``` + +Returns application name. +Returns `null` until the SDK is fully loaded and initialized. + +## Returns + + + +`null` \| `string` + + diff --git a/_docs/master/embedding/sdk/api/snippets/useAvailableFonts.md b/_docs/master/embedding/sdk/api/snippets/useAvailableFonts.md new file mode 100644 index 0000000000..9899c639da --- /dev/null +++ b/_docs/master/embedding/sdk/api/snippets/useAvailableFonts.md @@ -0,0 +1,30 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: useAvailableFonts +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/snippets/useAvailableFonts.md' +layout: new-docs +--- + +```ts +function useAvailableFonts(): null | { + availableFonts: string[]; +}; +``` + +Returns available fonts. +Returns `null` until the SDK is fully loaded and initialized. + +## Returns + + + +\| `null` +\| \{ +`availableFonts`: `string`[]; +\} + + diff --git a/_docs/master/embedding/sdk/api/snippets/useCreateDashboardApi.md b/_docs/master/embedding/sdk/api/snippets/useCreateDashboardApi.md index f243f28e24..7ccd60dd21 100644 --- a/_docs/master/embedding/sdk/api/snippets/useCreateDashboardApi.md +++ b/_docs/master/embedding/sdk/api/snippets/useCreateDashboardApi.md @@ -10,28 +10,23 @@ layout: new-docs --- ```ts -function useCreateDashboardApi(): { +function useCreateDashboardApi(): null | { createDashboard: ( options: CreateDashboardValues, ) => Promise; }; ``` -Creates a dashboard +Creates a dashboard. +Returns `null` until the SDK is fully loaded and initialized. ## Returns -```ts -{ - createDashboard: (options: CreateDashboardValues) => - Promise; -} -``` - -| Name | Type | Description | -| :------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------- | -| `createDashboard()` | (`options`: [`CreateDashboardValues`](./api/CreateDashboardValues)) => [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<[`MetabaseDashboard`](./api/MetabaseDashboard)\> | | +\| `null` +\| \{ +`createDashboard`: (`options`: [`CreateDashboardValues`](./api/CreateDashboardValues)) => [`Promise`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<[`MetabaseDashboard`](./api/MetabaseDashboard)\>; +\} diff --git a/_docs/master/embedding/sdk/api/snippets/useCurrentUser.md b/_docs/master/embedding/sdk/api/snippets/useCurrentUser.md new file mode 100644 index 0000000000..7948e8bf6a --- /dev/null +++ b/_docs/master/embedding/sdk/api/snippets/useCurrentUser.md @@ -0,0 +1,25 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: useCurrentUser +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/snippets/useCurrentUser.md' +layout: new-docs +--- + +```ts +function useCurrentUser(): null | MetabaseUser; +``` + +Returns the current user. +Returns `null` until the SDK is fully loaded and initialized. + +## Returns + + + +`null` \| [`MetabaseUser`](./api/MetabaseUser) + + diff --git a/_docs/master/embedding/sdk/api/snippets/useMetabaseAuthStatus.md b/_docs/master/embedding/sdk/api/snippets/useMetabaseAuthStatus.md new file mode 100644 index 0000000000..adbeb70308 --- /dev/null +++ b/_docs/master/embedding/sdk/api/snippets/useMetabaseAuthStatus.md @@ -0,0 +1,25 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: useMetabaseAuthStatus +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/snippets/useMetabaseAuthStatus.md' +layout: new-docs +--- + +```ts +function useMetabaseAuthStatus(): null | LoginStatus; +``` + +Returns the authentication status of the current user in the Metabase embedding SDK. +Returns `null` until the SDK is fully loaded and initialized. + +## Returns + + + +`null` \| [`LoginStatus`](./api/LoginStatus) + + diff --git a/_docs/master/embedding/sdk/api/useApplicationName.html b/_docs/master/embedding/sdk/api/useApplicationName.html new file mode 100644 index 0000000000..66f56cd47d --- /dev/null +++ b/_docs/master/embedding/sdk/api/useApplicationName.html @@ -0,0 +1,14 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: useApplicationName +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/useApplicationName.html' +layout: docs-api +--- + +useApplicationName | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

              Function useApplicationName

              • Returns application name. +Returns null until the SDK is fully loaded and initialized.

                +

                Returns null | string

              diff --git a/_docs/master/embedding/sdk/api/useAvailableFonts.html b/_docs/master/embedding/sdk/api/useAvailableFonts.html new file mode 100644 index 0000000000..8c55266436 --- /dev/null +++ b/_docs/master/embedding/sdk/api/useAvailableFonts.html @@ -0,0 +1,14 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: useAvailableFonts +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/useAvailableFonts.html' +layout: docs-api +--- + +useAvailableFonts | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

              Function useAvailableFonts

              • Returns available fonts. +Returns null until the SDK is fully loaded and initialized.

                +

                Returns null | { availableFonts: string[] }

              diff --git a/_docs/master/embedding/sdk/api/useCreateDashboardApi.html b/_docs/master/embedding/sdk/api/useCreateDashboardApi.html index 1e3c5bb7f6..b921fe8b2b 100644 --- a/_docs/master/embedding/sdk/api/useCreateDashboardApi.html +++ b/_docs/master/embedding/sdk/api/useCreateDashboardApi.html @@ -9,5 +9,6 @@ layout: docs-api --- -useCreateDashboardApi | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

              Function useCreateDashboardApi

              +useCreateDashboardApi | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

              Function useCreateDashboardApi

              diff --git a/_docs/master/embedding/sdk/api/useCurrentUser.html b/_docs/master/embedding/sdk/api/useCurrentUser.html new file mode 100644 index 0000000000..0e17765d45 --- /dev/null +++ b/_docs/master/embedding/sdk/api/useCurrentUser.html @@ -0,0 +1,14 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: useCurrentUser +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/useCurrentUser.html' +layout: docs-api +--- + +useCurrentUser | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

              Function useCurrentUser

              • Returns the current user. +Returns null until the SDK is fully loaded and initialized.

                +

                Returns null | MetabaseUser

              diff --git a/_docs/master/embedding/sdk/api/useMetabaseAuthStatus.html b/_docs/master/embedding/sdk/api/useMetabaseAuthStatus.html new file mode 100644 index 0000000000..435ad60d3f --- /dev/null +++ b/_docs/master/embedding/sdk/api/useMetabaseAuthStatus.html @@ -0,0 +1,14 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Embedding +title: useMetabaseAuthStatus +source_url: 'https://github.com/metabase/metabase/blob/master/docs/embedding/sdk/api/useMetabaseAuthStatus.html' +layout: docs-api +--- + +useMetabaseAuthStatus | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

              Function useMetabaseAuthStatus

              • Returns the authentication status of the current user in the Metabase embedding SDK. +Returns null until the SDK is fully loaded and initialized.

                +

                Returns null | LoginStatus

              diff --git a/_docs/master/embedding/sdk/dashboards.md b/_docs/master/embedding/sdk/dashboards.md index b604d723a4..8e9845b5a2 100644 --- a/_docs/master/embedding/sdk/dashboards.md +++ b/_docs/master/embedding/sdk/dashboards.md @@ -144,6 +144,8 @@ Creating a dashboard could be done with `useCreateDashboardApi` hook or `CreateD Use this hook if you'd like to have total control over the UI and settings. +_Note_: until the Embedding SDK is fully loaded and initialized, the hook returns `null`. + #### API Reference - [Hook](./api/useCreateDashboardApi) diff --git a/_docs/master/embedding/sdk/next-js.md b/_docs/master/embedding/sdk/next-js.md index 98041a14a9..13f8627103 100644 --- a/_docs/master/embedding/sdk/next-js.md +++ b/_docs/master/embedding/sdk/next-js.md @@ -17,39 +17,15 @@ layout: new-docs Some notes on using the Embedded analytics SDK with [Next.js](https://nextjs.org/). The SDK is tested to work with Next.js 14, although it may work with other versions. -## SDK components with Server Side Rendering (SSR) or React Server Components - -For now, the SDK components are only supported for client-side rendering. To use the SDK components with server-side rendering, or with React Server components, you can either use a compatibility layer or manually wrap the components. - -### Compatibility layer for server-side rendering (SSR) (EXPERIMENTAL) - -To use SDK components with Next.js, the SDK provides an experimental compatibility layer that [wraps all the components with dynamic imports and disables SSR](https://nextjs.org/docs/pages/building-your-application/optimizing/lazy-loading#with-no-ssr). To work with the app router, this compatibility layer uses `use client`. - -To use the compatibility layer, change your imports from `@metabase/embedding-sdk-react` to `@metabase/embedding-sdk-react/nextjs`. - -See a [sample Next.js app that uses this compatibility layer](https://github.com/metabase/metabase-nextjs-sdk-embedding-sample). - -## Manual wrapping of the components +See a [sample Next.js app that uses the SDK](https://github.com/metabase/metabase-nextjs-sdk-embedding-sample). -If you want to customize the loading of the components, you can create your own wrapper. - -In your app, create a `metabase` directory, and add a `EmbeddingSdkProvider.tsx` file to that directory. This file will contain the provider with the appropriate configuration. - -```tsx -{% include_file "{{ dirname }}/snippets/next-js/manual-wrapping-embedded-sdk-provider.tsx" snippet="example" %} -``` - -Next, add an `index.tsx` file to that `metabase` directory. This file will include the `use client` directive, and it'll export a lazy-loaded version of the `EmbeddingSdkProvider` with SSR disabled. +## SDK components with Server Side Rendering (SSR) or React Server Components -```tsx -{% include_file "{{ dirname }}/snippets/next-js/manual-wrapping-entrypoint.tsx" snippet="example" %} -``` +The SDK components render only on the client side and not on the server side. -You can now import components like so: +### Compatibility layer for server-side rendering (SSR) (DEPRECATED) -```tsx -{% include_file "{{ dirname }}/snippets/next-js/manual-wrapping-usage.tsx" %} -``` +_Note_: Compatibility layer for server-side rendering (SSR) is no more needed and was deprecated. If you use it, change your imports from `@metabase/embedding-sdk-react/next` to `@metabase/embedding-sdk-react`. ## Handling authentication diff --git a/_docs/master/embedding/sdk/snippets/authentication/get-auth-status.tsx b/_docs/master/embedding/sdk/snippets/authentication/get-auth-status.tsx index 0c8db4349a..a4eb94a5c6 100644 --- a/_docs/master/embedding/sdk/snippets/authentication/get-auth-status.tsx +++ b/_docs/master/embedding/sdk/snippets/authentication/get-auth-status.tsx @@ -7,11 +7,11 @@ const Example = () => { // [] const auth = useMetabaseAuthStatus(); - if (auth.status === "error") { + if (auth?.status === "error") { return
              Failed to authenticate: {auth.error.message}
              ; } - if (auth.status === "success") { + if (auth?.status === "success") { return ; } // [] diff --git a/_docs/master/embedding/sdk/snippets/dashboards/create-dashboard.tsx b/_docs/master/embedding/sdk/snippets/dashboards/create-dashboard.tsx index 980ff44245..ee458e3f0c 100644 --- a/_docs/master/embedding/sdk/snippets/dashboards/create-dashboard.tsx +++ b/_docs/master/embedding/sdk/snippets/dashboards/create-dashboard.tsx @@ -14,10 +14,15 @@ const ExampleHook = () => { }; // [] - const { createDashboard } = useCreateDashboardApi(); + const hookResult = useCreateDashboardApi(); const handleDashboardCreate = async () => { - const dashboard = await createDashboard(options); + // hookResult is `null` until the SDK is fully loaded and initialized + if (!hookResult) { + return; + } + + const dashboard = await hookResult.createDashboard(options); // do something with created empty dashboard, e.g., use the dashboard in EditableDashboard component }; diff --git a/_docs/master/embedding/sdk/snippets/next-js/EmbeddingSdkProvider.tsx b/_docs/master/embedding/sdk/snippets/next-js/EmbeddingSdkProvider.tsx deleted file mode 100644 index 02cc7ba8bb..0000000000 --- a/_docs/master/embedding/sdk/snippets/next-js/EmbeddingSdkProvider.tsx +++ /dev/null @@ -1,2 +0,0 @@ -// Required to properly resolve import in `manual-wrapping-entrypoint.tsx` snippet -export { EmbeddingSdkProvider } from "./manual-wrapping-embedded-sdk-provider"; diff --git a/_docs/master/embedding/sdk/snippets/next-js/authentication-auth-config.tsx b/_docs/master/embedding/sdk/snippets/next-js/authentication-auth-config.tsx index bf16d6d69f..d2e3c7723e 100644 --- a/_docs/master/embedding/sdk/snippets/next-js/authentication-auth-config.tsx +++ b/_docs/master/embedding/sdk/snippets/next-js/authentication-auth-config.tsx @@ -1,4 +1,4 @@ -import { defineMetabaseAuthConfig } from "@metabase/embedding-sdk-react/nextjs"; +import { defineMetabaseAuthConfig } from "@metabase/embedding-sdk-react"; const authConfig = defineMetabaseAuthConfig({ metabaseInstanceUrl: "https://metabase.example.com", // Required: Your Metabase instance URL diff --git a/_docs/master/embedding/sdk/snippets/next-js/declarations.d.ts b/_docs/master/embedding/sdk/snippets/next-js/declarations.d.ts index 4b7134cbac..e06a851157 100644 --- a/_docs/master/embedding/sdk/snippets/next-js/declarations.d.ts +++ b/_docs/master/embedding/sdk/snippets/next-js/declarations.d.ts @@ -1,4 +1,4 @@ // Required to properly resolve the `import { StaticQuestion } from "@/metabase";` in `manual-wrapping-usage.tsx` snippet declare module "@/metabase" { - export { StaticQuestion } from "@metabase/embedding-sdk-react/nextjs"; + export { StaticQuestion } from "@metabase/embedding-sdk-react"; } diff --git a/_docs/master/embedding/sdk/snippets/next-js/manual-wrapping-embedded-sdk-provider.tsx b/_docs/master/embedding/sdk/snippets/next-js/manual-wrapping-embedded-sdk-provider.tsx deleted file mode 100644 index 3a635b9c79..0000000000 --- a/_docs/master/embedding/sdk/snippets/next-js/manual-wrapping-embedded-sdk-provider.tsx +++ /dev/null @@ -1,31 +0,0 @@ -// [] -"use client"; - -import { - MetabaseProvider, - defineMetabaseAuthConfig, -} from "@metabase/embedding-sdk-react"; - -const authConfig = defineMetabaseAuthConfig({ - metabaseInstanceUrl: process.env.NEXT_PUBLIC_METABASE_INSTANCE_URL, -}); - -export const EmbeddingSdkProvider = ({ - children, -}: { - children: React.ReactNode; -}) => { - return ( - {children} - ); -}; -// [] - -declare global { - // eslint-disable-next-line @typescript-eslint/no-namespace - namespace NodeJS { - interface ProcessEnv { - readonly NEXT_PUBLIC_METABASE_INSTANCE_URL: string; - } - } -} diff --git a/_docs/master/embedding/sdk/snippets/next-js/manual-wrapping-entrypoint.tsx b/_docs/master/embedding/sdk/snippets/next-js/manual-wrapping-entrypoint.tsx deleted file mode 100644 index 67a66ba53b..0000000000 --- a/_docs/master/embedding/sdk/snippets/next-js/manual-wrapping-entrypoint.tsx +++ /dev/null @@ -1,52 +0,0 @@ -// [] -"use client"; - -import dynamic from "next/dynamic"; - -import type React from "react"; - -// Lazy load the EmbeddingSdkProvider so and let it render children while it's being loaded -export const EmbeddingSdkProviderLazy = ({ - children, -}: { - children: React.ReactNode; -}) => { - const EmbeddingSdkProvider = dynamic( - () => - import("./EmbeddingSdkProvider").then(m => { - return { default: m.EmbeddingSdkProvider }; - }), - { - ssr: false, - loading: () => { - // render children while loading - return
              {children}
              ; - }, - }, - ); - - return {children}; -}; - -// Wrap all components that you need like this: - -export const StaticQuestion = dynamic( - () => import("@metabase/embedding-sdk-react").then(m => m.StaticQuestion), - { - ssr: false, - loading: () => { - return
              Loading...
              ; - }, - }, -); - -export const StaticDashboard = dynamic( - () => import("@metabase/embedding-sdk-react").then(m => m.StaticDashboard), - { - ssr: false, - loading: () => { - return
              Loading...
              ; - }, - }, -); -// [] diff --git a/_docs/master/embedding/sdk/snippets/next-js/manual-wrapping-usage.tsx b/_docs/master/embedding/sdk/snippets/next-js/manual-wrapping-usage.tsx deleted file mode 100644 index 9e92b8417b..0000000000 --- a/_docs/master/embedding/sdk/snippets/next-js/manual-wrapping-usage.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import { StaticQuestion } from "@/metabase"; // path to the folder created earlier - -export default function Home() { - return ; -} diff --git a/_site/docs/master/embedding/sdk/api/BaseSdkQuestionProps.html b/_site/docs/master/embedding/sdk/api/BaseSdkQuestionProps.html deleted file mode 100644 index fad77816ca..0000000000 --- a/_site/docs/master/embedding/sdk/api/BaseSdkQuestionProps.html +++ /dev/null @@ -1,59 +0,0 @@ -BaseSdkQuestionProps | Embedded analytics SDK API - - - - - - - - - - - - - - - - - - - - - - - - -

              Interface BaseSdkQuestionProps

              interface BaseSdkQuestionProps {
                  children?: ReactNode;
                  entityTypes?: EmbeddingEntityType[];
                  initialSqlParameters?: SqlParameterValues;
                  isSaveEnabled?: boolean;
                  onBeforeSave?: (
                      question: undefined | MetabaseQuestion,
                      context: { isNewQuestion: boolean },
                  ) => Promise<void>;
                  onRun?: (question: undefined | MetabaseQuestion) => void;
                  onSave?: (
                      question: MetabaseQuestion,
                      context: { dashboardTabId?: number; isNewQuestion: boolean },
                  ) => void;
                  plugins?: MetabasePluginsConfig;
                  questionId: null | SdkQuestionId;
                  targetCollection?: SdkCollectionId;
                  withDownloads?: boolean;
              }
              Index

              Properties

              children?: ReactNode

              The children of the MetabaseProvider component.s

              -
              entityTypes?: EmbeddingEntityType[]

              An array that specifies which entity types are available in the data picker

              -
              initialSqlParameters?: SqlParameterValues

              Initial values for the SQL parameters.

              -
              isSaveEnabled?: boolean

              Whether to show the save button.

              -
              onBeforeSave?: (
                  question: undefined | MetabaseQuestion,
                  context: { isNewQuestion: boolean },
              ) => Promise<void>

              A callback function that triggers before saving. Only relevant when isSaveEnabled = true

              -
              onRun?: (question: undefined | MetabaseQuestion) => void

              A callback function that triggers when a question is updated, including when a user clicks the Visualize button in the question editor

              -
              onSave?: (
                  question: MetabaseQuestion,
                  context: { dashboardTabId?: number; isNewQuestion: boolean },
              ) => void

              A callback function that triggers when a user saves the question. Only relevant when isSaveEnabled = true

              -
              questionId: null | SdkQuestionId

              The ID of the question. -
              -This is either: -

              -
                -
              • The numerical ID when accessing a question link, e.g., http://localhost:3000/question/1-my-question where the ID is 1 -
              • -
              • The entity_id key of the question object. You can find a question's Entity ID in the info panel when viewing a question -
              • -
              • new to show the notebook editor for creating new questions. isSaveEnabled must be true to allow saving the question
              • -
              -
              targetCollection?: SdkCollectionId

              The collection to save the question to. This will hide the collection picker from the save modal. Only applicable to interactive questions.

              -
              withDownloads?: boolean

              Enables the ability to download results in the interactive question.

              -

              - - \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/CollectionBrowser.html b/_site/docs/master/embedding/sdk/api/CollectionBrowser.html index 057b3b24c8..ae9032614f 100644 --- a/_site/docs/master/embedding/sdk/api/CollectionBrowser.html +++ b/_site/docs/master/embedding/sdk/api/CollectionBrowser.html @@ -23,7 +23,7 @@ -

              Function CollectionBrowser

              • A component that allows you to browse collections and their items.

                +

                Function CollectionBrowser

                • A component that allows you to browse collections and their items.

                  Parameters

                  • props: CollectionBrowserProps
                    • OptionalclassName?: string

                      A custom class name to be added to the root element.

                    • OptionalcollectionId?: SdkCollectionId

                      The numerical ID of the collection, "personal" for the user's personal collection, or "root" for the root collection. You can find this ID in the URL when accessing a collection in your Metabase instance. For example, the collection ID in http://localhost:3000/collection/1-my-collection would be 1. Defaults to "personal"

                    • OptionalEmptyContentComponent?: null | ComponentType

                      A component to display when there are no items in the collection.

                      @@ -31,7 +31,7 @@
                    • OptionalpageSize?: number

                      The number of items to display per page. The default is 25.

                    • Optionalstyle?: CSSProperties

                      A custom style object to be added to the root element.

                    • OptionalvisibleColumns?: CollectionBrowserListColumns[]

                      The columns to display in the collection items table. If not provided, all columns will be shown.

                      -
                    • OptionalvisibleEntityTypes?: ("model" | "question" | "collection" | "dashboard")[]

                      The types of entities that should be visible. If not provided, all entities will be shown.

                      -

                  Returns ReactNode

                +
              • OptionalvisibleEntityTypes?: ("collection" | "dashboard" | "question" | "model")[]

                The types of entities that should be visible. If not provided, all entities will be shown.

                +

              Returns Element

              \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/CollectionBrowserProps.html b/_site/docs/master/embedding/sdk/api/CollectionBrowserProps.html index 31929e1ef6..23f6bd0e22 100644 --- a/_site/docs/master/embedding/sdk/api/CollectionBrowserProps.html +++ b/_site/docs/master/embedding/sdk/api/CollectionBrowserProps.html @@ -23,7 +23,7 @@ -

              Interface CollectionBrowserProps

              interface CollectionBrowserProps {
                  className?: string;
                  collectionId?: SdkCollectionId;
                  EmptyContentComponent?: null | ComponentType;
                  onClick?: (item: MetabaseCollectionItem) => void;
                  pageSize?: number;
                  style?: CSSProperties;
                  visibleColumns?: CollectionBrowserListColumns[];
                  visibleEntityTypes?: ("model" | "question" | "collection" | "dashboard")[];
              }
              Index

              Properties

              className? +

              Interface CollectionBrowserProps

              interface CollectionBrowserProps {
                  className?: string;
                  collectionId?: SdkCollectionId;
                  EmptyContentComponent?: null | ComponentType;
                  onClick?: (item: MetabaseCollectionItem) => void;
                  pageSize?: number;
                  style?: CSSProperties;
                  visibleColumns?: CollectionBrowserListColumns[];
                  visibleEntityTypes?: ("collection" | "dashboard" | "question" | "model")[];
              }
              Index

              Properties

              pageSize?: number

              The number of items to display per page. The default is 25.

              A custom style object to be added to the root element.

              visibleColumns?: CollectionBrowserListColumns[]

              The columns to display in the collection items table. If not provided, all columns will be shown.

              -
              visibleEntityTypes?: ("model" | "question" | "collection" | "dashboard")[]

              The types of entities that should be visible. If not provided, all entities will be shown.

              +
              visibleEntityTypes?: ("collection" | "dashboard" | "question" | "model")[]

              The types of entities that should be visible. If not provided, all entities will be shown.

              \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/CreateDashboardModal.html b/_site/docs/master/embedding/sdk/api/CreateDashboardModal.html index bbf58dc46f..075a9d918d 100644 --- a/_site/docs/master/embedding/sdk/api/CreateDashboardModal.html +++ b/_site/docs/master/embedding/sdk/api/CreateDashboardModal.html @@ -23,11 +23,11 @@ -

              Function CreateDashboardModal

              Returns Element

              \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/CreateQuestion.html b/_site/docs/master/embedding/sdk/api/CreateQuestion.html index f6978f4af2..97795194ed 100644 --- a/_site/docs/master/embedding/sdk/api/CreateQuestion.html +++ b/_site/docs/master/embedding/sdk/api/CreateQuestion.html @@ -23,7 +23,7 @@ -

              Function CreateQuestion

              • Parameters

                • Optionalprops: CreateQuestionProps
                  • OptionalclassName?: string

                    A custom class name to be added to the root element.

                    +

                    Function CreateQuestion

                    • Parameters

                      • props: undefined | CreateQuestionProps
                        • undefined
                        • CreateQuestionProps
                          • OptionalclassName?: string

                            A custom class name to be added to the root element.

                          • OptionalcomponentPlugins?: MetabasePluginsConfig

                            Additional mapper function to override or add drill-down menu

                          • OptionalentityTypes?: EmbeddingEntityType[]

                            An array that specifies which entity types are available in the data picker

                          • Optionalheight?: Height<string | number>

                            A number or string specifying a CSS size value that specifies the height of the component

                            @@ -40,7 +40,7 @@
                          • OptionalwithChartTypeSelector?: boolean

                            Determines whether the chart type selector and corresponding settings button are shown. Only relevant when using the default layout.

                          • OptionalwithDownloads?: boolean

                            Enables the ability to download results in the interactive question.

                          • OptionalwithResetButton?: boolean

                            Determines whether a reset button is displayed. Only relevant when using the default layout.

                            -

                      Returns Element

                      Use <InteractiveQuestion questionId="new" /> instead.

                      +

                Returns Element

                Use <InteractiveQuestion questionId="new" /> instead.

              \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/EditableDashboard.html b/_site/docs/master/embedding/sdk/api/EditableDashboard.html index 32e64a876f..fa119f9aff 100644 --- a/_site/docs/master/embedding/sdk/api/EditableDashboard.html +++ b/_site/docs/master/embedding/sdk/api/EditableDashboard.html @@ -23,7 +23,7 @@ -

              Function EditableDashboard

              • A dashboard component with the features available in the InteractiveDashboard component, as well as the ability to add and update questions, layout, and content within your dashboard.

                +

                Function EditableDashboard

                • A dashboard component with the features available in the InteractiveDashboard component, as well as the ability to add and update questions, layout, and content within your dashboard.

                  Parameters

                  • props: EditableDashboardProps
                    • OptionalclassName?: string

                      A custom class name to be added to the root element.

                    • dashboardId: SdkDashboardId

                      The ID of the dashboard.
                      @@ -60,6 +60,6 @@

                    • OptionalwithCardTitle?: boolean

                      Whether the dashboard cards should display a title.

                    • OptionalwithDownloads?: boolean

                      Whether to hide the download button.

                    • OptionalwithTitle?: boolean

                      Whether the dashboard should display a title.

                      -

                  Returns Element

                +

              Returns Element

              \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/IconName.html b/_site/docs/master/embedding/sdk/api/IconName.html index b60ab90ca4..32789b3116 100644 --- a/_site/docs/master/embedding/sdk/api/IconName.html +++ b/_site/docs/master/embedding/sdk/api/IconName.html @@ -23,6 +23,6 @@ -

              Type Alias IconName

              IconName:
                  | "string"
                  | "number"
                  | "function"
                  | "model"
                  | "table"
                  | "question"
                  | "collection"
                  | "dashboard"
                  | "revert"
                  | "add"
                  | "add_column"
                  | "add_data"
                  | "add_folder"
                  | "add_row"
                  | "add_to_dash"
                  | "ai"
                  | "alert"
                  | "alert_filled"
                  | "alert_confirm"
                  | "archive"
                  | "area"
                  | "attachment"
                  | "arrow_up"
                  | "arrow_down"
                  | "arrow_left"
                  | "arrow_left_to_line"
                  | "arrow_right"
                  | "arrow_split"
                  | "audit"
                  | "badge"
                  | "bar"
                  | "bell"
                  | "birthday"
                  | "bookmark"
                  | "bookmark_filled"
                  | "bolt"
                  | "bolt_filled"
                  | "breakout"
                  | "bubble"
                  | "burger"
                  | "calendar"
                  | "check"
                  | "check_filled"
                  | "chevrondown"
                  | "chevronleft"
                  | "chevronright"
                  | "chevronup"
                  | "click"
                  | "clipboard"
                  | "clock"
                  | "clone"
                  | "close"
                  | "cloud"
                  | "cloud_filled"
                  | "compare"
                  | "combine"
                  | "connections"
                  | "contract"
                  | "copy"
                  | "curved"
                  | "database"
                  | "dash"
                  | "curve"
                  | "document"
                  | "download"
                  | "dyno"
                  | "edit_document"
                  | "ellipsis"
                  | "embed"
                  | "empty"
                  | "enter_or_return"
                  | "expand"
                  | "expand_arrow"
                  | "extract"
                  | "eye"
                  | "eye_crossed_out"
                  | "eye_outline"
                  | "field"
                  | "fields"
                  | "filter"
                  | "filter_plus"
                  | "bug"
                  | "format_code"
                  | "formula"
                  | "funnel"
                  | "funnel_outline"
                  | "folder"
                  | "folder_filled"
                  | "gauge"
                  | "gear"
                  | "gear_settings_filled"
                  | "gem"
                  | "globe"
                  | "grabber"
                  | "grid"
                  | "group"
                  | "google"
                  | "google_drive"
                  | "google_sheet"
                  | "history"
                  | "home"
                  | "horizontal_bar"
                  | "hourglass"
                  | "info"
                  | "info_filled"
                  | "info_outline"
                  | "insight"
                  | "int"
                  | "io"
                  | "join_full_outer"
                  | "join_inner"
                  | "join_left_outer"
                  | "join_right_outer"
                  | "index"
                  | "key"
                  | "label"
                  | "ldap"
                  | "learn"
                  | "lightbulb"
                  | "link"
                  | "line"
                  | "lines"
                  | "lineandbar"
                  | "line_style_dashed"
                  | "line_style_dotted"
                  | "line_style_solid"
                  | "list"
                  | "location"
                  | "lock"
                  | "lock_filled"
                  | "mail"
                  | "mail_filled"
                  | "metabot"
                  | "metabot_sad"
                  | "metric"
                  | "model_with_badge"
                  | "moon"
                  | "move"
                  | "move_card"
                  | "new_folder"
                  | "notebook"
                  | "palette"
                  | "pause"
                  | "pencil"
                  | "pencil_lines"
                  | "permissions_limited"
                  | "person"
                  | "pie"
                  | "pin"
                  | "pinmap"
                  | "pivot_table"
                  | "play"
                  | "play_outlined"
                  | "popover"
                  | "popular"
                  | "progress"
                  | "pulse"
                  | "recents"
                  | "sankey"
                  | "share"
                  | "split"
                  | "sql"
                  | "subscription"
                  | "straight"
                  | "stepped"
                  | "sort"
                  | "sort_arrows"
                  | "sum"
                  | "sync"
                  | "redo"
                  | "return"
                  | "reference"
                  | "refresh"
                  | "refresh_downstream"
                  | "rocket"
                  | "ruler"
                  | "schema"
                  | "search"
                  | "section"
                  | "segment"
                  | "shield"
                  | "sidebar_closed"
                  | "sidebar_open"
                  | "slack"
                  | "slack_colorized"
                  | "smartscalar"
                  | "snail"
                  | "snippet"
                  | "sparkles"
                  | "star_filled"
                  | "star"
                  | "stop"
                  | "store"
                  | "sun"
                  | "t-shirt"
                  | "tab"
                  | "table2"
                  | "time_history"
                  | "trash"
                  | "trash_filled"
                  | "triangle_left"
                  | "triangle_right"
                  | "unarchive"
                  | "undo"
                  | "unknown"
                  | "unpin"
                  | "unsubscribe"
                  | "upload"
                  | "variable"
                  | "verified"
                  | "official_collection"
                  | "verified_filled"
                  | "view_archive"
                  | "warning"
                  | "warning_round_filled"
                  | "warning_triangle_filled"
                  | "waterfall"
                  | "webhook"
                  | "10k"
                  | "1m"
                  | "zoom_in"
                  | "zoom_out"
                  | "scalar"
                  | "cake"
                  | "external"
                  | "table_spaced"
                  | "beaker"
                  | "eye_filled"
              +

              Type Alias IconName

              IconName:
                  | "string"
                  | "number"
                  | "function"
                  | "collection"
                  | "dashboard"
                  | "question"
                  | "model"
                  | "table"
                  | "revert"
                  | "add"
                  | "add_column"
                  | "add_data"
                  | "add_folder"
                  | "add_row"
                  | "add_to_dash"
                  | "ai"
                  | "alert"
                  | "alert_filled"
                  | "alert_confirm"
                  | "archive"
                  | "area"
                  | "attachment"
                  | "arrow_up"
                  | "arrow_down"
                  | "arrow_left"
                  | "arrow_left_to_line"
                  | "arrow_right"
                  | "arrow_split"
                  | "audit"
                  | "badge"
                  | "bar"
                  | "bell"
                  | "birthday"
                  | "bookmark"
                  | "bookmark_filled"
                  | "bolt"
                  | "bolt_filled"
                  | "breakout"
                  | "bubble"
                  | "burger"
                  | "calendar"
                  | "check"
                  | "check_filled"
                  | "chevrondown"
                  | "chevronleft"
                  | "chevronright"
                  | "chevronup"
                  | "click"
                  | "clipboard"
                  | "clock"
                  | "clone"
                  | "close"
                  | "cloud"
                  | "cloud_filled"
                  | "compare"
                  | "combine"
                  | "connections"
                  | "contract"
                  | "copy"
                  | "curved"
                  | "database"
                  | "dash"
                  | "curve"
                  | "document"
                  | "download"
                  | "dyno"
                  | "edit_document"
                  | "ellipsis"
                  | "embed"
                  | "empty"
                  | "enter_or_return"
                  | "expand"
                  | "expand_arrow"
                  | "extract"
                  | "eye"
                  | "eye_crossed_out"
                  | "eye_outline"
                  | "field"
                  | "fields"
                  | "filter"
                  | "filter_plus"
                  | "bug"
                  | "format_code"
                  | "formula"
                  | "funnel"
                  | "funnel_outline"
                  | "folder"
                  | "folder_filled"
                  | "gauge"
                  | "gear"
                  | "gear_settings_filled"
                  | "gem"
                  | "globe"
                  | "grabber"
                  | "grid"
                  | "group"
                  | "google"
                  | "google_drive"
                  | "google_sheet"
                  | "history"
                  | "home"
                  | "horizontal_bar"
                  | "hourglass"
                  | "info"
                  | "info_filled"
                  | "info_outline"
                  | "insight"
                  | "int"
                  | "io"
                  | "join_full_outer"
                  | "join_inner"
                  | "join_left_outer"
                  | "join_right_outer"
                  | "index"
                  | "key"
                  | "label"
                  | "ldap"
                  | "learn"
                  | "lightbulb"
                  | "link"
                  | "line"
                  | "lines"
                  | "lineandbar"
                  | "line_style_dashed"
                  | "line_style_dotted"
                  | "line_style_solid"
                  | "list"
                  | "location"
                  | "lock"
                  | "lock_filled"
                  | "mail"
                  | "mail_filled"
                  | "metabot"
                  | "metabot_sad"
                  | "metric"
                  | "model_with_badge"
                  | "moon"
                  | "move"
                  | "move_card"
                  | "new_folder"
                  | "notebook"
                  | "palette"
                  | "pause"
                  | "pencil"
                  | "pencil_lines"
                  | "permissions_limited"
                  | "person"
                  | "pie"
                  | "pin"
                  | "pinmap"
                  | "pivot_table"
                  | "play"
                  | "play_outlined"
                  | "popover"
                  | "popular"
                  | "progress"
                  | "pulse"
                  | "recents"
                  | "sankey"
                  | "share"
                  | "split"
                  | "sql"
                  | "subscription"
                  | "straight"
                  | "stepped"
                  | "sort"
                  | "sort_arrows"
                  | "sum"
                  | "sync"
                  | "redo"
                  | "return"
                  | "reference"
                  | "refresh"
                  | "refresh_downstream"
                  | "rocket"
                  | "ruler"
                  | "schema"
                  | "search"
                  | "section"
                  | "segment"
                  | "shield"
                  | "sidebar_closed"
                  | "sidebar_open"
                  | "slack"
                  | "slack_colorized"
                  | "smartscalar"
                  | "snail"
                  | "snippet"
                  | "sparkles"
                  | "star_filled"
                  | "star"
                  | "stop"
                  | "store"
                  | "sun"
                  | "t-shirt"
                  | "tab"
                  | "table2"
                  | "time_history"
                  | "trash"
                  | "trash_filled"
                  | "triangle_left"
                  | "triangle_right"
                  | "unarchive"
                  | "undo"
                  | "unknown"
                  | "unpin"
                  | "unsubscribe"
                  | "upload"
                  | "variable"
                  | "verified"
                  | "official_collection"
                  | "verified_filled"
                  | "view_archive"
                  | "warning"
                  | "warning_round_filled"
                  | "warning_triangle_filled"
                  | "waterfall"
                  | "webhook"
                  | "10k"
                  | "1m"
                  | "zoom_in"
                  | "zoom_out"
                  | "scalar"
                  | "cake"
                  | "external"
                  | "table_spaced"
                  | "beaker"
                  | "eye_filled"
              \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/InteractiveDashboard.html b/_site/docs/master/embedding/sdk/api/InteractiveDashboard.html index a9fe0e6fca..425f8404c8 100644 --- a/_site/docs/master/embedding/sdk/api/InteractiveDashboard.html +++ b/_site/docs/master/embedding/sdk/api/InteractiveDashboard.html @@ -23,7 +23,7 @@ -

              Function InteractiveDashboard

              • A dashboard component with drill downs, click behaviors, and the ability to view and click into questions.

                +

                Function InteractiveDashboard

                • A dashboard component with drill downs, click behaviors, and the ability to view and click into questions.

                  Parameters

                  • props: {
                        drillThroughQuestionHeight?: Height<string | number>;
                        drillThroughQuestionProps?: DrillThroughQuestionProps;
                        plugins?: MetabasePluginsConfig;
                        renderDrillThroughQuestion?: () => ReactNode;
                    } & {
                        dashboardId: SdkDashboardId;
                        hiddenParameters?: string[];
                        initialParameters?: ParameterValues;
                        withCardTitle?: boolean;
                        withDownloads?: boolean;
                        withTitle?: boolean;
                    } & { className?: string; style?: CSSProperties } & {
                        onLoad?: (dashboard: null | MetabaseDashboard) => void;
                        onLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void;
                    } & { dataPickerProps?: Pick<SdkQuestionProps, "entityTypes"> } & {}
                    • OptionaldrillThroughQuestionHeight?: Height<string | number>

                      Height of a question component when drilled from the dashboard to a question level.

                    • OptionaldrillThroughQuestionProps?: DrillThroughQuestionProps

                      Props of a question component when drilled from the dashboard to a question level.

                    • Optionalplugins?: MetabasePluginsConfig

                      Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details.

                      @@ -60,6 +60,6 @@
                    • OptionalonLoad?: (dashboard: null | MetabaseDashboard) => void

                      Callback that is called when the dashboard is loaded.

                    • OptionalonLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void

                      Callback that is called when the dashboard is loaded without cards.

                    • OptionaldataPickerProps?: Pick<SdkQuestionProps, "entityTypes">

                      Additional props to pass to the query builder rendered by InteractiveQuestion when creating a new dashboard question.

                      -

                    Returns Element

                  +

                  Returns Element

                  \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/InteractiveQuestion.html b/_site/docs/master/embedding/sdk/api/InteractiveQuestion.html index 838a8f6efa..1273e95fd0 100644 --- a/_site/docs/master/embedding/sdk/api/InteractiveQuestion.html +++ b/_site/docs/master/embedding/sdk/api/InteractiveQuestion.html @@ -23,8 +23,8 @@ -

                  Function InteractiveQuestion

                  • A question component with drill-downs enabled.

                    -

                    Parameters

                    • props: InteractiveQuestionProps
                      • OptionalclassName?: string

                        A custom class name to be added to the root element.

                        +

                        Function InteractiveQuestion

                        • A component that renders an interactive question.

                          +

                          Parameters

                          • props: InteractiveQuestionProps
                            • OptionalclassName?: string

                              A custom class name to be added to the root element.

                            • OptionalcomponentPlugins?: MetabasePluginsConfig

                              Additional mapper function to override or add drill-down menu

                            • OptionalentityTypes?: EmbeddingEntityType[]

                              An array that specifies which entity types are available in the data picker

                            • Optionalheight?: Height<string | number>

                              A number or string specifying a CSS size value that specifies the height of the component

                              @@ -41,7 +41,7 @@
                            • OptionalwithChartTypeSelector?: boolean

                              Determines whether the chart type selector and corresponding settings button are shown. Only relevant when using the default layout.

                            • OptionalwithDownloads?: boolean

                              Enables the ability to download results in the interactive question.

                            • OptionalwithResetButton?: boolean

                              Determines whether a reset button is displayed. Only relevant when using the default layout.

                              -

                          Returns Element

                        Index

                        InteractiveQuestion

                    Returns Element

                  Index

                  InteractiveQuestion

                  BackButton Breakout BreakoutDropdown ChartTypeDropdown diff --git a/_site/docs/master/embedding/sdk/api/InteractiveQuestionComponents.html b/_site/docs/master/embedding/sdk/api/InteractiveQuestionComponents.html new file mode 100644 index 0000000000..b48e72a8a7 --- /dev/null +++ b/_site/docs/master/embedding/sdk/api/InteractiveQuestionComponents.html @@ -0,0 +1,119 @@ +InteractiveQuestionComponents | Embedded analytics SDK API + + + + + + + + + + + + + + + + + + + + + + + + +

                  Interface InteractiveQuestionComponents

                  interface InteractiveQuestionComponents {
                      BackButton: (
                          props: InteractiveQuestionBackButtonProps,
                      ) => null | Element;
                      Breakout: () => null | Element;
                      BreakoutDropdown: (
                          props: InteractiveQuestionBreakoutDropdownProps,
                      ) => null | Element;
                      ChartTypeDropdown: (props: MenuProps) => Element;
                      ChartTypeSelector: (props: StackProps) => Element;
                      DownloadWidget: (props: StackProps) => null | Element;
                      DownloadWidgetDropdown: (props: PopoverProps) => Element;
                      Editor: (props: InteractiveQuestionEditorProps) => undefined | Element;
                      EditorButton: (
                          props: InteractiveQuestionEditorButtonProps,
                      ) => undefined | false | Element;
                      Filter: (props: InteractiveQuestionFilterProps) => Element;
                      FilterDropdown: (
                          props: InteractiveQuestionFilterDropdownProps,
                      ) => null | Element;
                      Notebook: (props: InteractiveQuestionEditorProps) => undefined | Element;
                      NotebookButton: (
                          props: InteractiveQuestionEditorButtonProps,
                      ) => undefined | false | Element;
                      QuestionSettings: (props: StackProps) => null | Element;
                      QuestionSettingsDropdown: (
                          props?: InteractiveQuestionQuestionSettingsDropdownProps,
                      ) => Element;
                      QuestionVisualization: (
                          props: { className?: string; style?: CSSProperties } & {
                              height?: Height<string | number>;
                              width?: Width<string | number>;
                          } & {},
                      ) => Element;
                      ResetButton: (props?: ButtonProps) => null | Element;
                      SaveButton: (props?: InteractiveQuestionSaveButtonProps) => Element;
                      SaveQuestionForm: (
                          props: InteractiveQuestionSaveQuestionFormProps,
                      ) => null | Element;
                      Summarize: () => Element;
                      SummarizeDropdown: (
                          props: InteractiveQuestionSummarizeDropdownProps,
                      ) => Element;
                      Title: (
                          props: { className?: string; style?: CSSProperties },
                      ) => undefined | Element;
                      VisualizationButton: () => null | Element;
                  }
                  Index

                  InteractiveQuestion

                  BackButton: (props: InteractiveQuestionBackButtonProps) => null | Element

                  Type declaration

                  Breakout: () => null | Element

                  Type declaration

                    • (): null | Element
                    • Function

                      A set of badges for managing data groupings (breakouts). +Uses question context for breakout functionality.

                      +

                      Returns null | Element

                  BreakoutDropdown: (
                      props: InteractiveQuestionBreakoutDropdownProps,
                  ) => null | Element

                  Type declaration

                  ChartTypeDropdown: (props: MenuProps) => Element

                  Type declaration

                    • (props: MenuProps): Element
                    • Function

                      Dropdown for selecting the visualization type (bar chart, line chart, table, etc.). +Automatically updates to show recommended visualization types for the current data.

                      +

                      Parameters

                      Returns Element

                  ChartTypeSelector: (props: StackProps) => Element

                  Type declaration

                  DownloadWidget: (props: StackProps) => null | Element

                  Type declaration

                    • (props: StackProps): null | Element
                    • Function

                      Provides a UI widget for downloading data in different formats (CSV, XLSX, JSON, and PNG depending on the visualization).

                      +

                      Parameters

                      Returns null | Element

                  DownloadWidgetDropdown: (props: PopoverProps) => Element

                  Type declaration

                  Editor: (props: InteractiveQuestionEditorProps) => undefined | Element

                  Type declaration

                    • (props: InteractiveQuestionEditorProps): undefined | Element
                    • Function

                      Advanced query editor that provides full access to question configuration. +Includes filtering, aggregation, custom expressions, and joins.

                      +

                      Parameters

                      • props: InteractiveQuestionEditorProps
                        • OptionalhasVisualizeButton?: boolean
                        • OptionalonApply?: () => void

                          Callback function executed when changes are applied

                          +

                      Returns undefined | Element

                  EditorButton: (
                      props: InteractiveQuestionEditorButtonProps,
                  ) => undefined | false | Element

                  Type declaration

                  Type declaration

                  FilterDropdown: (
                      props: InteractiveQuestionFilterDropdownProps,
                  ) => null | Element

                  Type declaration

                  Notebook: (props: InteractiveQuestionEditorProps) => undefined | Element

                  Type declaration

                    • (props: InteractiveQuestionEditorProps): undefined | Element
                    • Function

                      Advanced query editor that provides full access to question configuration. +Includes filtering, aggregation, custom expressions, and joins.

                      +

                      Parameters

                      • props: InteractiveQuestionEditorProps
                        • OptionalhasVisualizeButton?: boolean
                        • OptionalonApply?: () => void

                          Callback function executed when changes are applied

                          +

                      Returns undefined | Element

                  Use InteractiveQuestion.Editor instead

                  +
                  NotebookButton: (
                      props: InteractiveQuestionEditorButtonProps,
                  ) => undefined | false | Element

                  Type declaration

                  Use InteractiveQuestion.EditorButton instead

                  +
                  QuestionSettings: (props: StackProps) => null | Element

                  Type declaration

                    • (props: StackProps): null | Element
                    • Function

                      Settings panel for configuring visualization options like axes, colors, and formatting. +Uses question context for settings.

                      +

                      Parameters

                      Returns null | Element

                  QuestionSettingsDropdown: (
                      props?: InteractiveQuestionQuestionSettingsDropdownProps,
                  ) => Element

                  Type declaration

                  QuestionVisualization: (
                      props: { className?: string; style?: CSSProperties } & {
                          height?: Height<string | number>;
                          width?: Width<string | number>;
                      } & {},
                  ) => Element

                  Type declaration

                    • (
                          props: { className?: string; style?: CSSProperties } & {
                              height?: Height<string | number>;
                              width?: Width<string | number>;
                          } & {},
                      ): Element
                    • Function

                      The main visualization component that renders the question results as a chart, table, or other visualization type.

                      +

                      Parameters

                      • props: { className?: string; style?: CSSProperties } & {
                            height?: Height<string | number>;
                            width?: Width<string | number>;
                        } & {}
                        • OptionalclassName?: string

                          A custom class name to be added to the root element.

                          +
                        • Optionalstyle?: CSSProperties

                          A custom style object to be added to the root element.

                          +
                        • Optionalheight?: Height<string | number>

                          A number or string specifying a CSS size value that specifies the height of the component

                          +
                        • Optionalwidth?: Width<string | number>

                          A number or string specifying a CSS size value that specifies the width of the component

                          +

                        Returns Element

                    ResetButton: (props?: ButtonProps) => null | Element

                    Type declaration

                      • (props?: ButtonProps): null | Element
                      • Function

                        Button to reset question modifications. Only appears when there are unsaved changes to the question.

                        +

                        Parameters

                        Returns null | Element

                    Type declaration

                    SaveQuestionForm: (
                        props: InteractiveQuestionSaveQuestionFormProps,
                    ) => null | Element

                    Type declaration

                    Summarize: () => Element

                    Type declaration

                      • (): Element
                      • Function

                        Interface for adding and managing data summaries (like counts, sums, averages). Displays as a set of badges. +Uses question context for summarization functionality.

                        +

                        Returns Element

                    SummarizeDropdown: (props: InteractiveQuestionSummarizeDropdownProps) => Element

                    Type declaration

                    Title: (
                        props: { className?: string; style?: CSSProperties },
                    ) => undefined | Element

                    Type declaration

                      • (props: { className?: string; style?: CSSProperties }): undefined | Element
                      • Function

                        Displays a title based on the question's state. Shows:

                        +
                          +
                        • The question's display name if it's saved
                        • +
                        • An auto-generated description for ad-hoc questions (non-native queries)
                        • +
                        +

                        Parameters

                        • props: { className?: string; style?: CSSProperties }
                          • OptionalclassName?: string

                            A custom class name to be added to the root element.

                            +
                          • Optionalstyle?: CSSProperties

                            A custom style object to be added to the root element.

                            +

                        Returns undefined | Element

                    VisualizationButton: () => null | Element

                    Type declaration

                      • (): null | Element
                      • Function

                        A button that triggers the visualization of the current question.

                        +

                        Returns null | Element

                    + + \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/MetabaseProvider.html b/_site/docs/master/embedding/sdk/api/MetabaseProvider.html index 24ca1dd88b..470123d659 100644 --- a/_site/docs/master/embedding/sdk/api/MetabaseProvider.html +++ b/_site/docs/master/embedding/sdk/api/MetabaseProvider.html @@ -28,7 +28,8 @@
                  • authConfig: MetabaseAuthConfig

                    Defines how to authenticate with Metabase.

                  • children: ReactNode

                    The children of the MetabaseProvider component.

                  • OptionalclassName?: string

                    A custom class name to be added to the root element.

                    -
                  • OptionalerrorComponent?: SdkErrorComponent

                    A custom error component to display when the SDK encounters an error.

                    +

                    This prop is not used anymore.

                    +
                  • OptionalerrorComponent?: SdkErrorComponent

                    A custom error component to display when the SDK encounters an error.

                  • OptionaleventHandlers?: SdkEventHandlersConfig
                  • OptionalloaderComponent?: () => Element

                    A custom loader component to display while the SDK is loading.

                  • Optionallocale?: string

                    Defines the display language. Accepts an ISO language code such as en or de. diff --git a/_site/docs/master/embedding/sdk/api/MetabaseProviderProps.html b/_site/docs/master/embedding/sdk/api/MetabaseProviderProps.html index fe2ebafebc..4c17b73948 100644 --- a/_site/docs/master/embedding/sdk/api/MetabaseProviderProps.html +++ b/_site/docs/master/embedding/sdk/api/MetabaseProviderProps.html @@ -23,10 +23,10 @@ -

                    Interface MetabaseProviderProps

                    interface MetabaseProviderProps {
                        allowConsoleLog?: boolean;
                        authConfig: MetabaseAuthConfig;
                        children: ReactNode;
                        className?: string;
                        errorComponent?: SdkErrorComponent;
                        eventHandlers?: SdkEventHandlersConfig;
                        loaderComponent?: () => Element;
                        locale?: string;
                        pluginsConfig?: MetabasePluginsConfig;
                        theme?: MetabaseTheme;
                    }

                    Hierarchy

                    Index

                    Properties

                    allowConsoleLog? +

                    Interface MetabaseProviderProps

                    interface MetabaseProviderProps {
                        allowConsoleLog?: boolean;
                        authConfig: MetabaseAuthConfig;
                        children: ReactNode;
                        className?: string;
                        errorComponent?: SdkErrorComponent;
                        eventHandlers?: SdkEventHandlersConfig;
                        loaderComponent?: () => Element;
                        locale?: string;
                        pluginsConfig?: MetabasePluginsConfig;
                        theme?: MetabaseTheme;
                    }
                    Index

                    Properties

                    allowConsoleLog?: boolean

                    Whether to allow logging to the DevTools console. Defaults to true.

                    authConfig: MetabaseAuthConfig

                    Defines how to authenticate with Metabase.

                    children: ReactNode

                    The children of the MetabaseProvider component.

                    -
                    className?: string

                    A custom class name to be added to the root element.

                    -
                    errorComponent?: SdkErrorComponent

                    A custom error component to display when the SDK encounters an error.

                    +
                    className?: string

                    A custom class name to be added to the root element.

                    +

                    This prop is not used anymore.

                    +
                    errorComponent?: SdkErrorComponent

                    A custom error component to display when the SDK encounters an error.

                    eventHandlers?: SdkEventHandlersConfig
                    loaderComponent?: () => Element

                    A custom loader component to display while the SDK is loading.

                    locale?: string

                    Defines the display language. Accepts an ISO language code such as en or de. diff --git a/_site/docs/master/embedding/sdk/api/MetabotQuestion.html b/_site/docs/master/embedding/sdk/api/MetabotQuestion.html new file mode 100644 index 0000000000..168b8b6ea8 --- /dev/null +++ b/_site/docs/master/embedding/sdk/api/MetabotQuestion.html @@ -0,0 +1,29 @@ +MetabotQuestion | Embedded analytics SDK API + + + + + + + + + + + + + + + + + + + + + + + + +

                    Function MetabotQuestion

                    • A component that renders a metabot question.

                      +

                      Parameters

                      • props: object

                      Returns Element

                    + + \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/SdkErrorComponent.html b/_site/docs/master/embedding/sdk/api/SdkErrorComponent.html index 02c08e3af3..23c001598f 100644 --- a/_site/docs/master/embedding/sdk/api/SdkErrorComponent.html +++ b/_site/docs/master/embedding/sdk/api/SdkErrorComponent.html @@ -23,6 +23,6 @@ -

                    Type Alias SdkErrorComponent

                    SdkErrorComponent: ({ type, message, }: SdkErrorComponentProps) => JSX_2.Element

                    Type declaration

                    +

                    Type Alias SdkErrorComponent

                    SdkErrorComponent: ({ type, message, }: SdkErrorComponentProps) => JSX_3.Element

                    Type declaration

                    \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/StaticDashboard.html b/_site/docs/master/embedding/sdk/api/StaticDashboard.html index 3a427a3fc1..6399cda5d2 100644 --- a/_site/docs/master/embedding/sdk/api/StaticDashboard.html +++ b/_site/docs/master/embedding/sdk/api/StaticDashboard.html @@ -23,7 +23,7 @@ -

                    Function StaticDashboard

                    • A lightweight dashboard component.

                      +

                      Function StaticDashboard

                      • A lightweight dashboard component.

                        Parameters

                        • props: {
                              drillThroughQuestionHeight?: Height<string | number>;
                              drillThroughQuestionProps?: DrillThroughQuestionProps;
                              plugins?: MetabasePluginsConfig;
                              renderDrillThroughQuestion?: () => ReactNode;
                          } & {
                              dashboardId: SdkDashboardId;
                              hiddenParameters?: string[];
                              initialParameters?: ParameterValues;
                              withCardTitle?: boolean;
                              withDownloads?: boolean;
                              withTitle?: boolean;
                          } & { className?: string; style?: CSSProperties } & {
                              onLoad?: (dashboard: null | MetabaseDashboard) => void;
                              onLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void;
                          } & { dataPickerProps?: Pick<SdkQuestionProps, "entityTypes"> } & {}
                          • OptionaldrillThroughQuestionHeight?: Height<string | number>

                            Height of a question component when drilled from the dashboard to a question level.

                          • OptionaldrillThroughQuestionProps?: DrillThroughQuestionProps

                            Props of a question component when drilled from the dashboard to a question level.

                          • Optionalplugins?: MetabasePluginsConfig

                            Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details.

                            @@ -60,6 +60,6 @@
                          • OptionalonLoad?: (dashboard: null | MetabaseDashboard) => void

                            Callback that is called when the dashboard is loaded.

                          • OptionalonLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void

                            Callback that is called when the dashboard is loaded without cards.

                          • OptionaldataPickerProps?: Pick<SdkQuestionProps, "entityTypes">

                            Additional props to pass to the query builder rendered by InteractiveQuestion when creating a new dashboard question.

                            -

                          Returns Element

                        +
                      • Returns Element

                        \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/StaticQuestion.html b/_site/docs/master/embedding/sdk/api/StaticQuestion.html index 4034300404..0e8723f35f 100644 --- a/_site/docs/master/embedding/sdk/api/StaticQuestion.html +++ b/_site/docs/master/embedding/sdk/api/StaticQuestion.html @@ -23,8 +23,8 @@ -

                        Function StaticQuestion

                        • A question component without drill-downs.

                          -

                          Parameters

                          • __namedParameters: StaticQuestionProps
                            • OptionalclassName?: string

                              A custom class name to be added to the root element.

                              +

                              Function StaticQuestion

                              • A component that renders a static question.

                                +

                                Parameters

                                • props: StaticQuestionProps
                                  • OptionalclassName?: string

                                    A custom class name to be added to the root element.

                                  • Optionalheight?: Height<string | number>

                                    A number or string specifying a CSS size value that specifies the height of the component

                                  • OptionalinitialSqlParameters?: SqlParameterValues

                                    Initial values for the SQL parameters.

                                  • questionId: null | SdkQuestionId
                                  • Optionalstyle?: CSSProperties

                                    A custom style object to be added to the root element.

                                    @@ -32,7 +32,7 @@
                                  • Optionalwidth?: Width<string | number>

                                    A number or string specifying a CSS size value that specifies the width of the component

                                  • OptionalwithChartTypeSelector?: boolean

                                    Determines whether the chart type selector and corresponding settings button are shown. Only relevant when using the default layout.

                                  • OptionalwithDownloads?: boolean

                                    Enables the ability to download results in the interactive question.

                                    -

                                Returns null | Element

                              Index

                              InteractiveQuestion

                          Returns Element

                        Index

                        InteractiveQuestion

                        Breakout BreakoutDropdown ChartTypeDropdown ChartTypeSelector diff --git a/_site/docs/master/embedding/sdk/api/StaticQuestionComponents.html b/_site/docs/master/embedding/sdk/api/StaticQuestionComponents.html new file mode 100644 index 0000000000..92c3eec899 --- /dev/null +++ b/_site/docs/master/embedding/sdk/api/StaticQuestionComponents.html @@ -0,0 +1,76 @@ +StaticQuestionComponents | Embedded analytics SDK API + + + + + + + + + + + + + + + + + + + + + + + + +

                        Interface StaticQuestionComponents

                        interface StaticQuestionComponents {
                            Breakout: () => null | Element;
                            BreakoutDropdown: (
                                props: InteractiveQuestionBreakoutDropdownProps,
                            ) => null | Element;
                            ChartTypeDropdown: (props: MenuProps) => Element;
                            ChartTypeSelector: (props: StackProps) => Element;
                            DownloadWidget: (props: StackProps) => null | Element;
                            DownloadWidgetDropdown: (props: PopoverProps) => Element;
                            Filter: (props: InteractiveQuestionFilterProps) => Element;
                            FilterDropdown: (
                                props: InteractiveQuestionFilterDropdownProps,
                            ) => null | Element;
                            QuestionSettings: (props: StackProps) => null | Element;
                            QuestionSettingsDropdown: (
                                props?: InteractiveQuestionQuestionSettingsDropdownProps,
                            ) => Element;
                            QuestionVisualization: (
                                props: { className?: string; style?: CSSProperties } & {
                                    height?: Height<string | number>;
                                    width?: Width<string | number>;
                                } & {},
                            ) => Element;
                            ResetButton: (props?: ButtonProps) => null | Element;
                            Summarize: () => Element;
                            SummarizeDropdown: (
                                props: InteractiveQuestionSummarizeDropdownProps,
                            ) => Element;
                            Title: (
                                props: { className?: string; style?: CSSProperties },
                            ) => undefined | Element;
                        }
                        Index

                        InteractiveQuestion

                        Breakout: () => null | Element

                        Type declaration

                          • (): null | Element
                          • Function

                            A set of badges for managing data groupings (breakouts). +Uses question context for breakout functionality.

                            +

                            Returns null | Element

                        BreakoutDropdown: (
                            props: InteractiveQuestionBreakoutDropdownProps,
                        ) => null | Element

                        Type declaration

                        ChartTypeDropdown: (props: MenuProps) => Element

                        Type declaration

                          • (props: MenuProps): Element
                          • Function

                            Dropdown for selecting the visualization type (bar chart, line chart, table, etc.). +Automatically updates to show recommended visualization types for the current data.

                            +

                            Parameters

                            Returns Element

                        ChartTypeSelector: (props: StackProps) => Element

                        Type declaration

                        DownloadWidget: (props: StackProps) => null | Element

                        Type declaration

                          • (props: StackProps): null | Element
                          • Function

                            Provides a UI widget for downloading data in different formats (CSV, XLSX, JSON, and PNG depending on the visualization).

                            +

                            Parameters

                            Returns null | Element

                        DownloadWidgetDropdown: (props: PopoverProps) => Element

                        Type declaration

                        Type declaration

                        FilterDropdown: (
                            props: InteractiveQuestionFilterDropdownProps,
                        ) => null | Element

                        Type declaration

                        QuestionSettings: (props: StackProps) => null | Element

                        Type declaration

                          • (props: StackProps): null | Element
                          • Function

                            Settings panel for configuring visualization options like axes, colors, and formatting. +Uses question context for settings.

                            +

                            Parameters

                            Returns null | Element

                        QuestionSettingsDropdown: (
                            props?: InteractiveQuestionQuestionSettingsDropdownProps,
                        ) => Element

                        Type declaration

                        QuestionVisualization: (
                            props: { className?: string; style?: CSSProperties } & {
                                height?: Height<string | number>;
                                width?: Width<string | number>;
                            } & {},
                        ) => Element

                        Type declaration

                          • (
                                props: { className?: string; style?: CSSProperties } & {
                                    height?: Height<string | number>;
                                    width?: Width<string | number>;
                                } & {},
                            ): Element
                          • Function

                            The main visualization component that renders the question results as a chart, table, or other visualization type.

                            +

                            Parameters

                            • props: { className?: string; style?: CSSProperties } & {
                                  height?: Height<string | number>;
                                  width?: Width<string | number>;
                              } & {}
                              • OptionalclassName?: string

                                A custom class name to be added to the root element.

                                +
                              • Optionalstyle?: CSSProperties

                                A custom style object to be added to the root element.

                                +
                              • Optionalheight?: Height<string | number>

                                A number or string specifying a CSS size value that specifies the height of the component

                                +
                              • Optionalwidth?: Width<string | number>

                                A number or string specifying a CSS size value that specifies the width of the component

                                +

                              Returns Element

                          ResetButton: (props?: ButtonProps) => null | Element

                          Type declaration

                            • (props?: ButtonProps): null | Element
                            • Function

                              Button to reset question modifications. Only appears when there are unsaved changes to the question.

                              +

                              Parameters

                              Returns null | Element

                          Summarize: () => Element

                          Type declaration

                            • (): Element
                            • Function

                              Interface for adding and managing data summaries (like counts, sums, averages). Displays as a set of badges. +Uses question context for summarization functionality.

                              +

                              Returns Element

                          SummarizeDropdown: (props: InteractiveQuestionSummarizeDropdownProps) => Element

                          Type declaration

                          Title: (
                              props: { className?: string; style?: CSSProperties },
                          ) => undefined | Element

                          Type declaration

                            • (props: { className?: string; style?: CSSProperties }): undefined | Element
                            • Function

                              Displays a title based on the question's state. Shows:

                              +
                                +
                              • The question's display name if it's saved
                              • +
                              • An auto-generated description for ad-hoc questions (non-native queries)
                              • +
                              +

                              Parameters

                              • props: { className?: string; style?: CSSProperties }
                                • OptionalclassName?: string

                                  A custom class name to be added to the root element.

                                  +
                                • Optionalstyle?: CSSProperties

                                  A custom style object to be added to the root element.

                                  +

                              Returns undefined | Element

                          + + \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/assets/navigation.js b/_site/docs/master/embedding/sdk/api/assets/navigation.js index f695acbc75..6aea3d90bb 100644 --- a/_site/docs/master/embedding/sdk/api/assets/navigation.js +++ b/_site/docs/master/embedding/sdk/api/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "eJylWV1z0zgU/S9+7uywzAKzfWvTZKCU3W5T4IHhQbEusTayZKTrhsLw3xknTSLLVx82T+3onHuOdHWtr3z6USB8w+K8mGkpoUSh1aXRWwumOCvKSkhuQBXnn6K8hmFFQX9UWMvirNgIxYvzl3/9PAvL3Brd2IjWDu8LPn/x8udnV9MAQ7hitlppZvg7zZkMjYKmHswJNDKW1oIXcdGIkxoJx1JDuPvZCVGGCQrqfmCyhbDmHs5J+H8t2G6ioql2SD2/Q7ufj7OilMza4rzg0BgoGQIvgtZkenpgfCDHUQfGMOcC2UqCy3vyGkCRmX2jEAwrUTxQShQaEVsiQ1ESOh4QkRj03csjjcdqjBqDJxqkxHS9MXmSFBqfcKcTifKlmcOxhArZrTIjpLyvjG7XVaByg5TMpB9iupnT5rJFHFjksCe55fpMcUhrT1E9/F0ColBre2V0w/U2wy0aObEXH4RtmRTfWd6Aw2Ej/e/AAuaWik8e6bVkp/8X2tRpQzJipOu9QAlpqxMtuhTxTaAqfWRkLy9ZucmdBo/rOT37+9WfL54n3AywjW4xv+bJiAnOs4oZvH9sIN+aDvkd7yV0x8ucRYsOmeB9pbdKasY/Cr6GEXmPxP12L8a6T3VdCIlg8sdM8Ce75rpNdfH3gvG7x1Tnbm3MXTE87hS3tq6ZEd9HfLd0CO3tHs/eAbIVs91i/CB48C7K4YtQcCBftFjNtPoi1qc+hRiRUxrh/STmIyNEvFSRcGy7iI0xNbrh5A4jPgqsLhrxFh5juifWNIfrLabkr7c4TXvJapkS7zjp4tvfJhLXggGpdxXJuAz0ieSFZsQFVmMV/EoumYXwoYVCcypxpqU2REnv23MUhsnzkRyV+wpqGErsmmPx5Lo5YoHcHQt2g3XeHY5tyWj/eetG2C6yrVXsEcxhJR1ai7o+3oln3TMRqPYNQu0YhEkp/V7QXmeoHyGN0u+CAqodNFpr35W5hBoURoR7vBwXOs0+klKa1yvgXKj1XKHAx+7w6TzKDMGk3pG5P+m8hUf3lYdAk8eDUqt/mPvhHVpSkTd6LVS3vrVOF5zG3NV/JkW5uSjpBcQBJ+jdynYtlA3tsyFmttPxqyZXzydsvFq/5mg8X7VutAKFgeW1j+eqEo+VA2i0VmK2aF6+C7JbLRT+u/ofSuL04hFydY8f8RKs7Z4e9AaIciBpuR4LwLK6g6/dZroLXBAOBClbXytcsFpI4sx4wnLVEtM4afbeW+r4/n7wy9RQ4ZYZVgOC8X8l8YCUzpJvnA/QfaTvAxk6x0L2ZJz2MSo3mvH5Q2/7I+EMzf0G4nXr0JgTb4w2xxWlr9KDRmsNH+gIPEe1y8RrprgEMyhRGs9QPRxzvcydmkdoUE+cJJyh2X0gXp/2TcnYrzL44QyxlFrn2b1zguLXW7wD22hlnb2IxkP3u8+/ALqey/Q=" \ No newline at end of file +window.navigationData = "eJylWsty3DYQ/BeeVanEFTtl3VYrqWJZThStZB9cOmDJ8RJeEKDBoTZyyv+ewj5BYPAgfZIK3dONwRvgfv6vQPgXi/NiroSAErmSF1ptOtDFWVHWXFQaZHH+OcprGdYU9EuNjSjOijWXVXH+5vcfZ2GZO63aLqK1xYeCr16/+fFka2pgCJesq5eK6eqDqpgIZUFTD+YEGsuFoLvphCg5Gf3TQ2daIpqLRRp4Hsrd+p8VpWBdV5wXFbQaSoZQFUFrMp0BGE/kmHkgh6uKI1sKsHl7Lw+K9MQ7iaBZifyZUqLQiNgCGfKS0HGAiIRXd6cdadxvyniGjmiQEtN1cnIkKTTe4VYlEsOXZvq5hAayPco0F+Kh1qpf1YGRG6RkNvohxvSc0hc9omeRw57kluszxSGtPUX18HcBiFyuukut2kptMtyikRNr8ZF3PRP8O8tLOBw20v8eOsDcoeKSR3ot2On/a6WbtCEZMdL1gaOAtNWJFl2KqnVgVLrIyFpesHKd2w0O13H69e0fv71+lXDTwNaqx/wxT0ZMcJ7XTOPDSwv51nTIz3gvwJzfchYtOmSC96XaSKFY9YlXKxjR7pG4n67FWPeprtdcIOj8nAn+ZNdct6ku7l4wfveY6mzWxtwVw+FOceubhmn+fcS8pUNob/t49gGQLVlnFuNnXgUvexV84RIO5FmP9VzJL3x1qlOIETmlEd57MRcZIeI0FQnHtotYjqns/M71Iz5xrGctfw8vMd0Ta5rDzQZT8jcbnKa9YI1IiRtO5uBTmLgX+Czb+gR4g+TJu9YknDzS4NaTce8YEsm704i7ssI6OCGp7VM1rZIgMbHLHmk502CuhNLEfNqV5ygE+s1CclQeamjAl9gWp6+zsSYKMWKq5FYwYs3fnnS2TWg9pRzLktHuk9gt70xk38jYw5nFSjr0HarmeM2fm5cqkP07hMYyCJNS+oOgnY6vHyGN0jdBAVUDjdbaVeVKQAMSI8IDXo4L3cwuklK6apZQVVyuriRyfDHnaeudyQeTekfm7vD2Hl7shysCTZ54SiX/YvZ0PpSkIm/VikszYXurClZh7oY2F7xcz0p6WbLACXp3ol9x2YWODiFmttNxVpNr8h4brzYcczSer7pfQwOL9hDPVSXeXz1otFait2hevguyO8Ul/r38CiVxIHMIubrHSbyArjOvKWoNxHAgabke14BlfQ/fzLa4DbwmHAhStr6SeM0aLohj8AnLVUt046Tee+yoG8mj9zXLV7hjmjWAoD8y0YO1UjlASmdRra0JaH93GAIZOseB7MhY5WNUbhWrrp4H2x8JZ2juNhCnWofCnHitlT6uKEOVATRay39zJPAcVdMSfzJZCdDeEKXxDNXDgdVpuVPxCA3q1ZaEMzTNBHHqtCtKxn4TwYnjYyk142mebkFWNxu8h65VsrP2IhpPX1n7DmZtK3i5/QiwP8VQFzSSuDf3sejd1dCfGRfmA6FZG7uIpcuzHAdQytD5Tj1rediU5J6MfTj/E7o7EEg4fos2Nei1BomP4R8zeCSr+qfyVKPZbyHHU2rAjuSeXH2YMH/6H2c5yi8=" \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/assets/search.js b/_site/docs/master/embedding/sdk/api/assets/search.js index 27e8ee812b..6523df7257 100644 --- a/_site/docs/master/embedding/sdk/api/assets/search.js +++ b/_site/docs/master/embedding/sdk/api/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/index.html b/_site/docs/master/embedding/sdk/api/index.html index c742f3dc65..420d96ce25 100644 --- a/_site/docs/master/embedding/sdk/api/index.html +++ b/_site/docs/master/embedding/sdk/api/index.html @@ -23,6 +23,6 @@ -

                          Embedded analytics SDK API

                          CollectionBrowser

                          CollectionBrowser
                          CollectionBrowserProps

                          CreateDashboardModal

                          CreateDashboardModal
                          useCreateDashboardApi
                          CreateDashboardModalProps
                          CreateDashboardValues

                          CreateQuestion

                          CreateQuestion
                          CreateQuestionProps

                          Dashboard

                          EditableDashboard
                          InteractiveDashboard
                          StaticDashboard
                          EditableDashboardProps
                          InteractiveDashboardProps
                          StaticDashboardProps

                          InteractiveQuestion

                          InteractiveQuestion
                          DrillThroughQuestionProps
                          InteractiveQuestionEditorButtonProps
                          InteractiveQuestionEditorProps
                          InteractiveQuestionProps
                          InteractiveQuestionQuestionSettingsDropdownProps
                          InteractiveQuestionQuestionVisualizationProps
                          InteractiveQuestionResetButtonProps
                          InteractiveQuestionSaveQuestionFormProps
                          InteractiveQuestionTitleProps
                          SdkQuestionProps
                          InteractiveQuestionBackButtonProps
                          InteractiveQuestionBreakoutDropdownProps
                          InteractiveQuestionChartTypeDropdownProps
                          InteractiveQuestionChartTypeSelectorProps
                          InteractiveQuestionDownloadWidgetDropdownProps
                          InteractiveQuestionDownloadWidgetProps
                          InteractiveQuestionFilterDropdownProps
                          InteractiveQuestionFilterProps
                          InteractiveQuestionQuestionSettingsProps
                          InteractiveQuestionSaveButtonProps
                          InteractiveQuestionSummarizeDropdownProps

                          MetabaseProvider

                          defineMetabaseAuthConfig
                          MetabaseProvider
                          MetabaseProviderProps
                          MetabaseAuthConfig
                          MetabaseAuthConfigWithApiKey
                          MetabaseAuthConfigWithJwt
                          MetabaseAuthConfigWithSaml

                          StaticQuestion

                          StaticQuestion
                          StaticQuestionProps

                          other

                          BaseSdkQuestionProps
                          MetabaseColors
                          MetabaseQuestion
                          MetabaseTheme
                          ButtonProps
                          ChartColor
                          CollectionBrowserListColumns
                          CustomDashboardCardMenuItem
                          DashboardCardCustomMenuItem
                          DashboardCardMenu
                          DashboardCardMenuCustomElement
                          DashCardMenuItem
                          EmbeddingEntityType
                          EntityTypeFilterKeys
                          IconName
                          LoginStatus
                          MetabaseClickAction
                          MetabaseClickActionPluginsConfig
                          MetabaseCollection
                          MetabaseCollectionItem
                          MetabaseComponentTheme
                          MetabaseDashboard
                          MetabaseDashboardPluginsConfig
                          MetabaseDataPointObject
                          MetabaseEmbeddingSessionToken
                          MetabaseFetchRequestTokenFn
                          MetabaseFontFamily
                          MetabasePluginsConfig
                          MetabaseUser
                          ParameterValues
                          SdkCollectionId
                          SdkDashboardId
                          SdkDashboardLoadEvent
                          SdkEntityId
                          SdkErrorComponent
                          SdkErrorComponentProps
                          SdkEventHandlersConfig
                          SdkQuestionId
                          SdkQuestionTitleProps
                          SdkUserId
                          SqlParameterValues
                          UserBackendJwtResponse

                          +

                          Embedded analytics SDK API

                          CollectionBrowser

                          CollectionBrowser
                          CollectionBrowserProps

                          CreateDashboardModal

                          CreateDashboardModal
                          CreateDashboardModalProps

                          CreateQuestion

                          CreateQuestion
                          CreateQuestionProps

                          Dashboard

                          EditableDashboard
                          InteractiveDashboard
                          StaticDashboard
                          EditableDashboardProps
                          InteractiveDashboardProps
                          StaticDashboardProps

                          InteractiveQuestion

                          InteractiveQuestion
                          DrillThroughQuestionProps
                          InteractiveQuestionEditorButtonProps
                          InteractiveQuestionEditorProps
                          InteractiveQuestionProps
                          InteractiveQuestionQuestionSettingsDropdownProps
                          InteractiveQuestionQuestionVisualizationProps
                          InteractiveQuestionResetButtonProps
                          InteractiveQuestionSaveQuestionFormProps
                          InteractiveQuestionTitleProps
                          SdkQuestionProps
                          InteractiveQuestionBackButtonProps
                          InteractiveQuestionBreakoutDropdownProps
                          InteractiveQuestionChartTypeDropdownProps
                          InteractiveQuestionChartTypeSelectorProps
                          InteractiveQuestionDownloadWidgetDropdownProps
                          InteractiveQuestionDownloadWidgetProps
                          InteractiveQuestionFilterDropdownProps
                          InteractiveQuestionFilterProps
                          InteractiveQuestionQuestionSettingsProps
                          InteractiveQuestionSaveButtonProps
                          InteractiveQuestionSummarizeDropdownProps

                          MetabaseProvider

                          defineMetabaseAuthConfig
                          MetabaseProvider
                          MetabaseProviderProps
                          MetabaseAuthConfig
                          MetabaseAuthConfigWithApiKey
                          MetabaseAuthConfigWithJwt
                          MetabaseAuthConfigWithSaml

                          MetabotQuestion

                          MetabotQuestion

                          StaticQuestion

                          StaticQuestion
                          StaticQuestionProps

                          other

                          InteractiveQuestionComponents
                          MetabaseColors
                          MetabaseQuestion
                          MetabaseTheme
                          StaticQuestionComponents
                          ButtonProps
                          ChartColor
                          CollectionBrowserListColumns
                          CustomDashboardCardMenuItem
                          DashboardCardCustomMenuItem
                          DashboardCardMenu
                          DashboardCardMenuCustomElement
                          DashCardMenuItem
                          EmbeddingEntityType
                          EntityTypeFilterKeys
                          IconName
                          LoginStatus
                          MetabaseClickAction
                          MetabaseClickActionPluginsConfig
                          MetabaseCollection
                          MetabaseCollectionItem
                          MetabaseComponentTheme
                          MetabaseDashboard
                          MetabaseDashboardPluginsConfig
                          MetabaseDataPointObject
                          MetabaseEmbeddingSessionToken
                          MetabaseFetchRequestTokenFn
                          MetabaseFontFamily
                          MetabasePluginsConfig
                          MetabaseUser
                          ParameterValues
                          SdkCollectionId
                          SdkDashboardId
                          SdkDashboardLoadEvent
                          SdkEntityId
                          SdkErrorComponent
                          SdkErrorComponentProps
                          SdkEventHandlersConfig
                          SdkQuestionId
                          SdkQuestionTitleProps
                          SdkUserId
                          SqlParameterValues
                          UserBackendJwtResponse

                          useApplicationName

                          useApplicationName

                          useAvailableFonts

                          useAvailableFonts

                          useCreateDashboardApi

                          useCreateDashboardApi
                          CreateDashboardValues

                          useCurrentUser

                          useCurrentUser

                          useMetabaseAuthStatus

                          useMetabaseAuthStatus

                          \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/useApplicationName.html b/_site/docs/master/embedding/sdk/api/useApplicationName.html new file mode 100644 index 0000000000..5163ba5a67 --- /dev/null +++ b/_site/docs/master/embedding/sdk/api/useApplicationName.html @@ -0,0 +1,30 @@ +useApplicationName | Embedded analytics SDK API + + + + + + + + + + + + + + + + + + + + + + + + +

                          Function useApplicationName

                          • Returns application name. +Returns null until the SDK is fully loaded and initialized.

                            +

                            Returns null | string

                          + + \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/useAvailableFonts.html b/_site/docs/master/embedding/sdk/api/useAvailableFonts.html new file mode 100644 index 0000000000..90ffe6c476 --- /dev/null +++ b/_site/docs/master/embedding/sdk/api/useAvailableFonts.html @@ -0,0 +1,30 @@ +useAvailableFonts | Embedded analytics SDK API + + + + + + + + + + + + + + + + + + + + + + + + +

                          Function useAvailableFonts

                          • Returns available fonts. +Returns null until the SDK is fully loaded and initialized.

                            +

                            Returns null | { availableFonts: string[] }

                          + + \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/useCreateDashboardApi.html b/_site/docs/master/embedding/sdk/api/useCreateDashboardApi.html index 4c60e1483a..fde6844476 100644 --- a/_site/docs/master/embedding/sdk/api/useCreateDashboardApi.html +++ b/_site/docs/master/embedding/sdk/api/useCreateDashboardApi.html @@ -23,7 +23,8 @@ -

                          Function useCreateDashboardApi

                          +

                          Function useCreateDashboardApi

                          \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/useCurrentUser.html b/_site/docs/master/embedding/sdk/api/useCurrentUser.html new file mode 100644 index 0000000000..ea05de3a48 --- /dev/null +++ b/_site/docs/master/embedding/sdk/api/useCurrentUser.html @@ -0,0 +1,30 @@ +useCurrentUser | Embedded analytics SDK API + + + + + + + + + + + + + + + + + + + + + + + + +

                          Function useCurrentUser

                          • Returns the current user. +Returns null until the SDK is fully loaded and initialized.

                            +

                            Returns null | MetabaseUser

                          + + \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/api/useMetabaseAuthStatus.html b/_site/docs/master/embedding/sdk/api/useMetabaseAuthStatus.html new file mode 100644 index 0000000000..5eb3d7e3f8 --- /dev/null +++ b/_site/docs/master/embedding/sdk/api/useMetabaseAuthStatus.html @@ -0,0 +1,30 @@ +useMetabaseAuthStatus | Embedded analytics SDK API + + + + + + + + + + + + + + + + + + + + + + + + +

                          Function useMetabaseAuthStatus

                          • Returns the authentication status of the current user in the Metabase embedding SDK. +Returns null until the SDK is fully loaded and initialized.

                            +

                            Returns null | LoginStatus

                          + + \ No newline at end of file diff --git a/_site/docs/master/embedding/sdk/authentication.html b/_site/docs/master/embedding/sdk/authentication.html index 04fa86acfb..e4de75afd8 100644 --- a/_site/docs/master/embedding/sdk/authentication.html +++ b/_site/docs/master/embedding/sdk/authentication.html @@ -5205,11 +5205,11 @@

                          Getting Metabase authentication
                          const auth = useMetabaseAuthStatus();
                           
                          -if (auth.status === "error") {
                          +if (auth?.status === "error") {
                             return <div>Failed to authenticate: {auth.error.message}</div>;
                           }
                           
                          -if (auth.status === "success") {
                          +if (auth?.status === "success") {
                             return <InteractiveQuestion questionId={110} />;
                           }
                           
                          diff --git a/_site/docs/master/embedding/sdk/collections.html b/_site/docs/master/embedding/sdk/collections.html index f873666d59..08246a98fe 100644 --- a/_site/docs/master/embedding/sdk/collections.html +++ b/_site/docs/master/embedding/sdk/collections.html @@ -4943,7 +4943,7 @@

                          Props

                          visibleEntityTypes? - ("model" | "question" | "collection" | "dashboard")[] + ("collection" | "dashboard" | "question" | "model")[] The types of entities that should be visible. If not provided, all entities will be shown. diff --git a/_site/docs/master/embedding/sdk/config.html b/_site/docs/master/embedding/sdk/config.html index bff7fd0d47..fc3d61b8a7 100644 --- a/_site/docs/master/embedding/sdk/config.html +++ b/_site/docs/master/embedding/sdk/config.html @@ -4942,9 +4942,9 @@

                          Props

                          The children of the MetabaseProvider component. - className? + className? string - A custom class name to be added to the root element. + A custom class name to be added to the root element. Deprecated This prop is not used anymore. errorComponent? diff --git a/_site/docs/master/embedding/sdk/dashboards.html b/_site/docs/master/embedding/sdk/dashboards.html index 280555f538..2daacfa303 100644 --- a/_site/docs/master/embedding/sdk/dashboards.html +++ b/_site/docs/master/embedding/sdk/dashboards.html @@ -5338,6 +5338,8 @@

                          .

                          +

                          API Reference

                            @@ -5347,10 +5349,15 @@

                            API Reference

                            Example

                            -
                            const { createDashboard } = useCreateDashboardApi();
                            +
                            const hookResult = useCreateDashboardApi();
                             
                             const handleDashboardCreate = async () => {
                            -  const dashboard = await createDashboard(options);
                            +  // hookResult is `null` until the SDK is fully loaded and initialized
                            +  if (!hookResult) {
                            +    return;
                            +  }
                            +
                            +  const dashboard = await hookResult.createDashboard(options);
                             
                               // do something with created empty dashboard, e.g., use the dashboard in EditableDashboard component
                             };
                            diff --git a/_site/docs/master/embedding/sdk/next-js.html b/_site/docs/master/embedding/sdk/next-js.html
                            index 28d826a08a..963fccc71f 100644
                            --- a/_site/docs/master/embedding/sdk/next-js.html
                            +++ b/_site/docs/master/embedding/sdk/next-js.html
                            @@ -4878,108 +4878,15 @@ 

                            Embedded analytics S

                            Some notes on using the Embedded analytics SDK with Next.js. The SDK is tested to work with Next.js 14, although it may work with other versions.

                            -

                            SDK components with Server Side Rendering (SSR) or React Server Components

                            - -

                            For now, the SDK components are only supported for client-side rendering. To use the SDK components with server-side rendering, or with React Server components, you can either use a compatibility layer or manually wrap the components.

                            - -

                            Compatibility layer for server-side rendering (SSR) (EXPERIMENTAL)

                            - -

                            To use SDK components with Next.js, the SDK provides an experimental compatibility layer that wraps all the components with dynamic imports and disables SSR. To work with the app router, this compatibility layer uses use client.

                            - -

                            To use the compatibility layer, change your imports from @metabase/embedding-sdk-react to @metabase/embedding-sdk-react/nextjs.

                            - -

                            See a sample Next.js app that uses this compatibility layer.

                            - -

                            Manual wrapping of the components

                            - -

                            If you want to customize the loading of the components, you can create your own wrapper.

                            - -

                            In your app, create a metabase directory, and add a EmbeddingSdkProvider.tsx file to that directory. This file will contain the provider with the appropriate configuration.

                            - -
                            "use client";
                            -
                            -import {
                            -  MetabaseProvider,
                            -  defineMetabaseAuthConfig,
                            -} from "@metabase/embedding-sdk-react";
                            -
                            -const authConfig = defineMetabaseAuthConfig({
                            -  metabaseInstanceUrl: process.env.NEXT_PUBLIC_METABASE_INSTANCE_URL,
                            -});
                            -
                            -export const EmbeddingSdkProvider = ({
                            -  children,
                            -}: {
                            -  children: React.ReactNode;
                            -}) => {
                            -  return (
                            -    <MetabaseProvider authConfig={authConfig}>{children}</MetabaseProvider>
                            -  );
                            -};
                            -
                            +

                            See a sample Next.js app that uses the SDK.

                            -

                            Next, add an index.tsx file to that metabase directory. This file will include the use client directive, and it’ll export a lazy-loaded version of the EmbeddingSdkProvider with SSR disabled.

                            - -
                            "use client";
                            -
                            -import dynamic from "next/dynamic";
                            -
                            -import type React from "react";
                            -
                            -// Lazy load the EmbeddingSdkProvider so and let it render children while it's being loaded
                            -export const EmbeddingSdkProviderLazy = ({
                            -  children,
                            -}: {
                            -  children: React.ReactNode;
                            -}) => {
                            -  const EmbeddingSdkProvider = dynamic(
                            -    () =>
                            -      import("./EmbeddingSdkProvider").then(m => {
                            -        return { default: m.EmbeddingSdkProvider };
                            -      }),
                            -    {
                            -      ssr: false,
                            -      loading: () => {
                            -        // render children while loading
                            -        return <div>{children}</div>;
                            -      },
                            -    },
                            -  );
                            -
                            -  return <EmbeddingSdkProvider>{children}</EmbeddingSdkProvider>;
                            -};
                            -
                            -// Wrap all components that you need like this:
                            -
                            -export const StaticQuestion = dynamic(
                            -  () => import("@metabase/embedding-sdk-react").then(m => m.StaticQuestion),
                            -  {
                            -    ssr: false,
                            -    loading: () => {
                            -      return <div>Loading...</div>;
                            -    },
                            -  },
                            -);
                            -
                            -export const StaticDashboard = dynamic(
                            -  () => import("@metabase/embedding-sdk-react").then(m => m.StaticDashboard),
                            -  {
                            -    ssr: false,
                            -    loading: () => {
                            -      return <div>Loading...</div>;
                            -    },
                            -  },
                            -);
                            -
                            +

                            SDK components with Server Side Rendering (SSR) or React Server Components

                            -

                            You can now import components like so:

                            +

                            The SDK components render only on the client side and not on the server side.

                            -
                            import { StaticQuestion } from "@/metabase"; // path to the folder created earlier
                            +

                            Compatibility layer for server-side rendering (SSR) (DEPRECATED)

                            -export default function Home() { - return <StaticQuestion questionId={123} />; -} -
                            +

                            Note: Compatibility layer for server-side rendering (SSR) is no more needed and was deprecated. If you use it, change your imports from @metabase/embedding-sdk-react/next to @metabase/embedding-sdk-react.

                            Handling authentication

                            @@ -5015,7 +4922,7 @@

                            Using App Router

                            Then, pass this authConfig to MetabaseProvider

                            -
                            import { defineMetabaseAuthConfig } from "@metabase/embedding-sdk-react/nextjs";
                            +
                            import { defineMetabaseAuthConfig } from "@metabase/embedding-sdk-react";
                             
                             const authConfig = defineMetabaseAuthConfig({
                               metabaseInstanceUrl: "https://metabase.example.com", // Required: Your Metabase instance URL
                            @@ -5056,7 +4963,7 @@ 

                            Using Pages Router

                            Then, pass this authConfig to MetabaseProvider

                            -
                            import { defineMetabaseAuthConfig } from "@metabase/embedding-sdk-react/nextjs";
                            +
                            import { defineMetabaseAuthConfig } from "@metabase/embedding-sdk-react";
                             
                             const authConfig = defineMetabaseAuthConfig({
                               metabaseInstanceUrl: "https://metabase.example.com", // Required: Your Metabase instance URL
                            diff --git a/_site/docs/master/embedding/sdk/snippets/authentication/get-auth-status.tsx b/_site/docs/master/embedding/sdk/snippets/authentication/get-auth-status.tsx
                            index 0c8db4349a..a4eb94a5c6 100644
                            --- a/_site/docs/master/embedding/sdk/snippets/authentication/get-auth-status.tsx
                            +++ b/_site/docs/master/embedding/sdk/snippets/authentication/get-auth-status.tsx
                            @@ -7,11 +7,11 @@ const Example = () => {
                               // []
                               const auth = useMetabaseAuthStatus();
                             
                            -  if (auth.status === "error") {
                            +  if (auth?.status === "error") {
                                 return 
                            Failed to authenticate: {auth.error.message}
                            ; } - if (auth.status === "success") { + if (auth?.status === "success") { return ; } // [] diff --git a/_site/docs/master/embedding/sdk/snippets/dashboards/create-dashboard.tsx b/_site/docs/master/embedding/sdk/snippets/dashboards/create-dashboard.tsx index 980ff44245..ee458e3f0c 100644 --- a/_site/docs/master/embedding/sdk/snippets/dashboards/create-dashboard.tsx +++ b/_site/docs/master/embedding/sdk/snippets/dashboards/create-dashboard.tsx @@ -14,10 +14,15 @@ const ExampleHook = () => { }; // [] - const { createDashboard } = useCreateDashboardApi(); + const hookResult = useCreateDashboardApi(); const handleDashboardCreate = async () => { - const dashboard = await createDashboard(options); + // hookResult is `null` until the SDK is fully loaded and initialized + if (!hookResult) { + return; + } + + const dashboard = await hookResult.createDashboard(options); // do something with created empty dashboard, e.g., use the dashboard in EditableDashboard component }; diff --git a/_site/docs/master/embedding/sdk/snippets/next-js/EmbeddingSdkProvider.tsx b/_site/docs/master/embedding/sdk/snippets/next-js/EmbeddingSdkProvider.tsx deleted file mode 100644 index 02cc7ba8bb..0000000000 --- a/_site/docs/master/embedding/sdk/snippets/next-js/EmbeddingSdkProvider.tsx +++ /dev/null @@ -1,2 +0,0 @@ -// Required to properly resolve import in `manual-wrapping-entrypoint.tsx` snippet -export { EmbeddingSdkProvider } from "./manual-wrapping-embedded-sdk-provider"; diff --git a/_site/docs/master/embedding/sdk/snippets/next-js/authentication-auth-config.tsx b/_site/docs/master/embedding/sdk/snippets/next-js/authentication-auth-config.tsx index bf16d6d69f..d2e3c7723e 100644 --- a/_site/docs/master/embedding/sdk/snippets/next-js/authentication-auth-config.tsx +++ b/_site/docs/master/embedding/sdk/snippets/next-js/authentication-auth-config.tsx @@ -1,4 +1,4 @@ -import { defineMetabaseAuthConfig } from "@metabase/embedding-sdk-react/nextjs"; +import { defineMetabaseAuthConfig } from "@metabase/embedding-sdk-react"; const authConfig = defineMetabaseAuthConfig({ metabaseInstanceUrl: "https://metabase.example.com", // Required: Your Metabase instance URL diff --git a/_site/docs/master/embedding/sdk/snippets/next-js/declarations.d.ts b/_site/docs/master/embedding/sdk/snippets/next-js/declarations.d.ts index 4b7134cbac..e06a851157 100644 --- a/_site/docs/master/embedding/sdk/snippets/next-js/declarations.d.ts +++ b/_site/docs/master/embedding/sdk/snippets/next-js/declarations.d.ts @@ -1,4 +1,4 @@ // Required to properly resolve the `import { StaticQuestion } from "@/metabase";` in `manual-wrapping-usage.tsx` snippet declare module "@/metabase" { - export { StaticQuestion } from "@metabase/embedding-sdk-react/nextjs"; + export { StaticQuestion } from "@metabase/embedding-sdk-react"; } diff --git a/_site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-embedded-sdk-provider.tsx b/_site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-embedded-sdk-provider.tsx deleted file mode 100644 index 3a635b9c79..0000000000 --- a/_site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-embedded-sdk-provider.tsx +++ /dev/null @@ -1,31 +0,0 @@ -// [] -"use client"; - -import { - MetabaseProvider, - defineMetabaseAuthConfig, -} from "@metabase/embedding-sdk-react"; - -const authConfig = defineMetabaseAuthConfig({ - metabaseInstanceUrl: process.env.NEXT_PUBLIC_METABASE_INSTANCE_URL, -}); - -export const EmbeddingSdkProvider = ({ - children, -}: { - children: React.ReactNode; -}) => { - return ( - {children} - ); -}; -// [] - -declare global { - // eslint-disable-next-line @typescript-eslint/no-namespace - namespace NodeJS { - interface ProcessEnv { - readonly NEXT_PUBLIC_METABASE_INSTANCE_URL: string; - } - } -} diff --git a/_site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-entrypoint.tsx b/_site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-entrypoint.tsx deleted file mode 100644 index 67a66ba53b..0000000000 --- a/_site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-entrypoint.tsx +++ /dev/null @@ -1,52 +0,0 @@ -// [] -"use client"; - -import dynamic from "next/dynamic"; - -import type React from "react"; - -// Lazy load the EmbeddingSdkProvider so and let it render children while it's being loaded -export const EmbeddingSdkProviderLazy = ({ - children, -}: { - children: React.ReactNode; -}) => { - const EmbeddingSdkProvider = dynamic( - () => - import("./EmbeddingSdkProvider").then(m => { - return { default: m.EmbeddingSdkProvider }; - }), - { - ssr: false, - loading: () => { - // render children while loading - return
                            {children}
                            ; - }, - }, - ); - - return {children}; -}; - -// Wrap all components that you need like this: - -export const StaticQuestion = dynamic( - () => import("@metabase/embedding-sdk-react").then(m => m.StaticQuestion), - { - ssr: false, - loading: () => { - return
                            Loading...
                            ; - }, - }, -); - -export const StaticDashboard = dynamic( - () => import("@metabase/embedding-sdk-react").then(m => m.StaticDashboard), - { - ssr: false, - loading: () => { - return
                            Loading...
                            ; - }, - }, -); -// [] diff --git a/_site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-usage.tsx b/_site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-usage.tsx deleted file mode 100644 index 9e92b8417b..0000000000 --- a/_site/docs/master/embedding/sdk/snippets/next-js/manual-wrapping-usage.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import { StaticQuestion } from "@/metabase"; // path to the folder created earlier - -export default function Home() { - return ; -}