From 2c42dd13be1500f9b841ae46020a8f07884493ea Mon Sep 17 00:00:00 2001 From: Metabase Docs bot Date: Wed, 16 Jul 2025 19:30:38 +0000 Subject: [PATCH] [auto] adding content to docs-filters-in-headings-and-dashcards->master --- _docs/master/dashboards/filters.md | 70 +- _docs/master/dashboards/linked-filters.md | 2 +- _docs/master/data-modeling/field-types.md | 2 +- .../developers-guide/community-drivers.md | 2 +- _docs/master/developers-guide/devenv.md | 2 + _docs/master/developers-guide/frontend.md | 2 +- _docs/master/developers-guide/versioning.md | 2 +- .../sdk/api/BaseInteractiveQuestionProps.html | 4 +- .../embedding/sdk/api/CreateQuestion.html | 2 +- .../sdk/api/CreateQuestionProps.html | 4 +- .../sdk/api/DrillThroughQuestionProps.html | 4 +- .../embedding/sdk/api/EditableDashboard.html | 35 +- .../sdk/api/EditableDashboardProps.html | 8 +- .../sdk/api/InteractiveDashboard.html | 5 +- .../sdk/api/InteractiveDashboardProps.html | 8 +- .../sdk/api/InteractiveQuestion.html | 2 +- .../sdk/api/InteractiveQuestionProps.html | 4 +- .../embedding/sdk/api/StaticDashboard.html | 5 +- .../sdk/api/StaticDashboardProps.html | 8 +- .../embedding/sdk/api/StaticQuestion.html | 3 +- .../sdk/api/StaticQuestionProps.html | 6 +- .../master/embedding/sdk/api/assets/search.js | 2 +- .../snippets/BaseInteractiveQuestionProps.md | 2 +- .../sdk/api/snippets/CreateQuestionProps.md | 2 +- .../api/snippets/DrillThroughQuestionProps.md | 2 +- .../sdk/api/snippets/EditableDashboard.md | 28 +- .../api/snippets/EditableDashboardProps.md | 33 +- .../sdk/api/snippets/InteractiveDashboard.md | 8 +- .../api/snippets/InteractiveDashboardProps.md | 33 +- .../api/snippets/InteractiveQuestionProps.md | 2 +- .../sdk/api/snippets/StaticDashboard.md | 8 +- .../sdk/api/snippets/StaticDashboardProps.md | 33 +- .../sdk/api/snippets/StaticQuestionProps.md | 1 + _docs/master/questions/images/02-widget.png | Bin 95511 -> 0 bytes .../questions/images/filter-and-parameter.png | Bin 0 -> 240603 bytes .../native-editor/basic-sql-parameters.md | 77 + .../questions/native-editor/filter-widgets.md | 117 + .../questions/native-editor/sql-parameters.md | 324 +- .../native-editor/time-grouping-parameters.md | 66 + _docs/master/troubleshooting-guide/bugs.md | 2 +- _docs/master/troubleshooting-guide/filters.md | 2 +- .../troubleshooting-guide/known-issues.md | 4 +- .../troubleshooting-guide/linked-filters.md | 4 +- _docs/master/troubleshooting-guide/sql.md | 4 +- _site/docs/master/CONTRIBUTING.html | 361 +- _site/docs/master/actions/basic.html | 361 +- _site/docs/master/actions/custom.html | 361 +- _site/docs/master/actions/introduction.html | 361 +- _site/docs/master/actions/start.html | 361 +- .../configuring-metabase/appearance.html | 361 +- .../master/configuring-metabase/caching.html | 361 +- .../configuring-metabase/config-file.html | 361 +- .../configuring-metabase/config-template.html | 361 +- .../configuring-metabase/custom-maps.html | 361 +- .../customizing-jetty-webserver.html | 361 +- .../master/configuring-metabase/email.html | 361 +- .../environment-variables.html | 361 +- .../master/configuring-metabase/fonts.html | 361 +- .../configuring-metabase/localization.html | 361 +- .../log-configuration.html | 361 +- .../setting-up-metabase.html | 361 +- .../master/configuring-metabase/settings.html | 361 +- .../master/configuring-metabase/slack.html | 361 +- .../master/configuring-metabase/start.html | 361 +- .../configuring-metabase/timezones.html | 361 +- .../master/configuring-metabase/webhooks.html | 361 +- _site/docs/master/dashboards/actions.html | 361 +- _site/docs/master/dashboards/filters.html | 445 +- _site/docs/master/dashboards/interactive.html | 361 +- .../docs/master/dashboards/introduction.html | 361 +- .../master/dashboards/linked-filters.html | 363 +- .../master/dashboards/multiple-series.html | 361 +- _site/docs/master/dashboards/start.html | 361 +- .../docs/master/dashboards/subscriptions.html | 361 +- .../master/data-modeling/field-types.html | 363 +- .../docs/master/data-modeling/formatting.html | 361 +- .../master/data-modeling/json-unfolding.html | 361 +- .../master/data-modeling/legacy-metrics.html | 361 +- .../data-modeling/metadata-editing.html | 361 +- _site/docs/master/data-modeling/metrics.html | 361 +- .../data-modeling/model-persistence.html | 361 +- _site/docs/master/data-modeling/models.html | 361 +- _site/docs/master/data-modeling/segments.html | 361 +- _site/docs/master/data-modeling/start.html | 361 +- _site/docs/master/databases/connecting.html | 361 +- .../master/databases/connections/athena.html | 361 +- .../master/databases/connections/aws-rds.html | 361 +- .../databases/connections/bigquery.html | 361 +- .../databases/connections/clickhouse.html | 361 +- .../databases/connections/databricks.html | 361 +- .../master/databases/connections/druid.html | 361 +- .../master/databases/connections/mariadb.html | 361 +- .../master/databases/connections/mongodb.html | 361 +- .../master/databases/connections/mysql.html | 361 +- .../master/databases/connections/oracle.html | 361 +- .../databases/connections/postgresql.html | 361 +- .../master/databases/connections/presto.html | 361 +- .../databases/connections/redshift.html | 361 +- .../databases/connections/snowflake.html | 361 +- .../databases/connections/sparksql.html | 361 +- .../databases/connections/sql-server.html | 361 +- .../master/databases/connections/sqlite.html | 361 +- .../databases/connections/starburst.html | 361 +- .../master/databases/connections/vertica.html | 361 +- _site/docs/master/databases/danger-zone.html | 361 +- .../databases/encrypting-details-at-rest.html | 361 +- _site/docs/master/databases/ssh-tunnel.html | 361 +- .../master/databases/ssl-certificates.html | 361 +- _site/docs/master/databases/start.html | 361 +- _site/docs/master/databases/sync-scan.html | 361 +- _site/docs/master/databases/uploads.html | 361 +- .../databases/users-roles-privileges.html | 361 +- .../developers-guide/api-changelog.html | 361 +- _site/docs/master/developers-guide/build.html | 361 +- .../docs/master/developers-guide/clojure.html | 361 +- .../master/developers-guide/code-reviews.html | 361 +- .../developers-guide/community-drivers.html | 363 +- .../developers-guide/dev-branch-docker.html | 361 +- .../docs/master/developers-guide/devenv.html | 363 +- _site/docs/master/developers-guide/docs.html | 361 +- .../developers-guide/driver-changelog.html | 361 +- .../developers-guide/drivers/basics.html | 361 +- .../drivers/driver-tests.html | 361 +- .../drivers/multimethods.html | 361 +- .../developers-guide/drivers/plugins.html | 361 +- .../developers-guide/drivers/start.html | 361 +- .../master/developers-guide/e2e-tests.html | 361 +- _site/docs/master/developers-guide/emacs.html | 361 +- .../master/developers-guide/frontend.html | 363 +- .../internationalization.html | 361 +- _site/docs/master/developers-guide/mage.html | 361 +- .../mbql-library-changelog.html | 361 +- _site/docs/master/developers-guide/start.html | 361 +- .../master/developers-guide/versioning.html | 363 +- .../developers-guide/visual-studio-code.html | 361 +- .../master/developers-guide/visual-tests.html | 361 +- ...teractive-embedding-quick-start-guide.html | 361 +- .../embedding/interactive-embedding.html | 361 +- .../embedding/interactive-ui-components.html | 361 +- _site/docs/master/embedding/introduction.html | 361 +- _site/docs/master/embedding/public-links.html | 361 +- .../sdk/api/BaseInteractiveQuestionProps.html | 4 +- .../embedding/sdk/api/CreateQuestion.html | 2 +- .../sdk/api/CreateQuestionProps.html | 4 +- .../sdk/api/DrillThroughQuestionProps.html | 4 +- .../embedding/sdk/api/EditableDashboard.html | 35 +- .../sdk/api/EditableDashboardProps.html | 8 +- .../sdk/api/InteractiveDashboard.html | 5 +- .../sdk/api/InteractiveDashboardProps.html | 8 +- .../sdk/api/InteractiveQuestion.html | 2 +- .../sdk/api/InteractiveQuestionProps.html | 4 +- .../embedding/sdk/api/StaticDashboard.html | 5 +- .../sdk/api/StaticDashboardProps.html | 8 +- .../embedding/sdk/api/StaticQuestion.html | 3 +- .../sdk/api/StaticQuestionProps.html | 6 +- .../master/embedding/sdk/api/assets/search.js | 2 +- .../docs/master/embedding/sdk/appearance.html | 361 +- .../master/embedding/sdk/authentication.html | 361 +- .../master/embedding/sdk/collections.html | 361 +- _site/docs/master/embedding/sdk/config.html | 361 +- .../docs/master/embedding/sdk/dashboards.html | 376 +- .../master/embedding/sdk/introduction.html | 361 +- _site/docs/master/embedding/sdk/next-js.html | 361 +- _site/docs/master/embedding/sdk/plugins.html | 361 +- .../docs/master/embedding/sdk/questions.html | 368 +- .../master/embedding/sdk/quickstart-cli.html | 361 +- .../sdk/quickstart-with-sample-app.html | 361 +- .../docs/master/embedding/sdk/quickstart.html | 361 +- _site/docs/master/embedding/sdk/version.html | 361 +- .../master/embedding/securing-embeds.html | 361 +- _site/docs/master/embedding/start.html | 361 +- .../static-embedding-parameters.html | 361 +- .../master/embedding/static-embedding.html | 361 +- .../collections.html | 361 +- .../content-verification.html | 361 +- .../data-model-reference.html | 361 +- .../delete-and-restore.html | 361 +- .../events-and-timelines.html | 361 +- .../exploration.html | 361 +- .../exploration-and-organization/history.html | 361 +- .../keyboard-shortcuts.html | 361 +- .../exploration-and-organization/start.html | 361 +- .../exploration-and-organization/uploads.html | 361 +- .../exploration-and-organization/x-rays.html | 361 +- _site/docs/master/index.html | 361 +- .../accessibility.html | 361 +- .../activating-the-enterprise-edition.html | 361 +- .../backing-up-metabase-application-data.html | 361 +- .../installation-and-operation/commands.html | 361 +- .../configuring-application-database.html | 361 +- .../creating-RDS-database-on-AWS.html | 361 +- .../development-instance.html | 361 +- .../information-collection.html | 361 +- .../installing-metabase.html | 361 +- .../migrating-from-h2.html | 361 +- .../monitoring-metabase.html | 361 +- .../observability-with-prometheus.html | 361 +- .../installation-and-operation/privacy.html | 361 +- .../running-metabase-on-azure.html | 361 +- .../running-metabase-on-debian.html | 361 +- .../running-metabase-on-docker.html | 361 +- ...running-metabase-on-elastic-beanstalk.html | 361 +- .../running-metabase-on-podman.html | 361 +- .../running-the-metabase-jar-file.html | 361 +- .../serialization.html | 361 +- .../installation-and-operation/start.html | 361 +- .../supported-browsers.html | 361 +- .../upgrading-metabase.html | 361 +- .../people-and-groups/account-settings.html | 361 +- .../master/people-and-groups/api-keys.html | 361 +- .../authenticating-with-jwt.html | 361 +- .../authenticating-with-saml.html | 361 +- .../changing-password-complexity.html | 361 +- .../changing-session-expiration.html | 361 +- .../people-and-groups/google-sign-in.html | 361 +- _site/docs/master/people-and-groups/ldap.html | 361 +- .../master/people-and-groups/managing.html | 361 +- .../master/people-and-groups/saml-auth0.html | 361 +- .../master/people-and-groups/saml-azure.html | 361 +- .../master/people-and-groups/saml-google.html | 361 +- .../people-and-groups/saml-keycloak.html | 361 +- .../master/people-and-groups/saml-okta.html | 361 +- .../docs/master/people-and-groups/start.html | 361 +- .../people-and-groups/user-provisioning.html | 361 +- .../docs/master/permissions/application.html | 361 +- .../docs/master/permissions/collections.html | 361 +- .../permissions/data-sandbox-examples.html | 361 +- .../master/permissions/data-sandboxes.html | 361 +- _site/docs/master/permissions/data.html | 361 +- .../master/permissions/database-routing.html | 361 +- _site/docs/master/permissions/embedding.html | 361 +- .../master/permissions/impersonation.html | 361 +- .../docs/master/permissions/introduction.html | 361 +- .../no-self-service-deprecation.html | 361 +- .../master/permissions/notifications.html | 361 +- _site/docs/master/permissions/snippets.html | 361 +- _site/docs/master/permissions/start.html | 361 +- _site/docs/master/questions/alerts.html | 361 +- .../master/questions/exporting-results.html | 361 +- .../master/questions/images/02-widget.png | Bin 95511 -> 0 bytes .../questions/images/filter-and-parameter.png | Bin 0 -> 240603 bytes _site/docs/master/questions/introduction.html | 361 +- .../native-editor/basic-sql-parameters.html | 5163 ++++++++++++++++ .../native-editor/filter-widgets.html | 5225 +++++++++++++++++ ...eferencing-saved-questions-in-queries.html | 361 +- .../questions/native-editor/snippets.html | 361 +- .../native-editor/sql-parameters.html | 706 ++- .../time-grouping-parameters.html | 5153 ++++++++++++++++ .../questions/native-editor/writing-sql.html | 361 +- .../questions/query-builder/editor.html | 361 +- .../query-builder/expressions-list.html | 361 +- .../questions/query-builder/expressions.html | 361 +- .../query-builder/expressions/case.html | 361 +- .../query-builder/expressions/coalesce.html | 361 +- .../query-builder/expressions/concat.html | 361 +- .../expressions/converttimezone.html | 361 +- .../query-builder/expressions/countif.html | 361 +- .../query-builder/expressions/cumulative.html | 361 +- .../expressions/datetimeadd.html | 361 +- .../expressions/datetimediff.html | 361 +- .../expressions/datetimesubtract.html | 361 +- .../query-builder/expressions/in.html | 361 +- .../query-builder/expressions/isempty.html | 361 +- .../query-builder/expressions/isnull.html | 361 +- .../query-builder/expressions/now.html | 361 +- .../query-builder/expressions/offset.html | 361 +- .../expressions/regexextract.html | 361 +- .../query-builder/expressions/substring.html | 361 +- .../query-builder/expressions/sumif.html | 361 +- .../query-builder/expressions/week.html | 361 +- .../questions/query-builder/filters.html | 361 +- .../master/questions/query-builder/join.html | 361 +- .../summarizing-and-grouping.html | 361 +- _site/docs/master/questions/start.html | 361 +- .../questions/visualizations/combo-chart.html | 361 +- .../questions/visualizations/detail.html | 361 +- .../questions/visualizations/funnel.html | 361 +- .../questions/visualizations/gauge.html | 361 +- .../line-bar-and-area-charts.html | 361 +- .../master/questions/visualizations/map.html | 361 +- .../questions/visualizations/numbers.html | 361 +- .../visualizations/pie-or-donut-chart.html | 361 +- .../questions/visualizations/pivot-table.html | 361 +- .../visualizations/progress-bar.html | 361 +- .../questions/visualizations/sankey.html | 361 +- .../scatterplot-or-bubble-chart.html | 361 +- .../questions/visualizations/table.html | 361 +- .../questions/visualizations/tooltips.html | 361 +- .../questions/visualizations/trend.html | 361 +- .../visualizations/visualizing-results.html | 361 +- .../visualizations/waterfall-chart.html | 361 +- .../troubleshooting-guide/bigquery-drive.html | 361 +- .../master/troubleshooting-guide/bugs.html | 367 +- .../troubleshooting-guide/cant-log-in.html | 361 +- .../cant-see-tables.html | 361 +- .../cant-send-email.html | 361 +- .../cant-view-or-edit.html | 361 +- .../create-har-file.html | 361 +- .../data-permissions.html | 361 +- .../troubleshooting-guide/db-connection.html | 361 +- .../troubleshooting-guide/db-performance.html | 361 +- .../diagnostic-info.html | 361 +- .../master/troubleshooting-guide/docker.html | 361 +- .../troubleshooting-guide/error-message.html | 361 +- .../master/troubleshooting-guide/filters.html | 363 +- .../master/troubleshooting-guide/index.html | 361 +- .../troubleshooting-guide/known-issues.html | 365 +- .../master/troubleshooting-guide/ldap.html | 361 +- .../troubleshooting-guide/linked-filters.html | 365 +- .../loading-from-h2.html | 361 +- .../master/troubleshooting-guide/models.html | 361 +- .../my-dashboard-is-slow.html | 361 +- .../troubleshooting-guide/notifications.html | 361 +- .../troubleshooting-guide/permissions.html | 361 +- .../master/troubleshooting-guide/proxies.html | 361 +- .../requesting-new-features.html | 361 +- .../master/troubleshooting-guide/running.html | 361 +- .../master/troubleshooting-guide/saml.html | 361 +- .../troubleshooting-guide/sandboxing.html | 361 +- .../troubleshooting-guide/server-logs.html | 361 +- .../master/troubleshooting-guide/sql.html | 365 +- .../sync-fingerprint-scan.html | 361 +- .../master/troubleshooting-guide/timeout.html | 361 +- .../troubleshooting-guide/timezones.html | 361 +- .../troubleshooting-guide/visualization.html | 361 +- .../usage-and-performance-tools/audit.html | 361 +- .../usage-and-performance-tools/start.html | 361 +- .../usage-and-performance-tools/tools.html | 361 +- .../usage-analytics.html | 361 +- .../master/util/resources/introduction.html | 361 +- 330 files changed, 112166 insertions(+), 918 deletions(-) delete mode 100644 _docs/master/questions/images/02-widget.png create mode 100644 _docs/master/questions/images/filter-and-parameter.png create mode 100644 _docs/master/questions/native-editor/basic-sql-parameters.md create mode 100644 _docs/master/questions/native-editor/filter-widgets.md create mode 100644 _docs/master/questions/native-editor/time-grouping-parameters.md delete mode 100644 _site/docs/master/questions/images/02-widget.png create mode 100644 _site/docs/master/questions/images/filter-and-parameter.png create mode 100644 _site/docs/master/questions/native-editor/basic-sql-parameters.html create mode 100644 _site/docs/master/questions/native-editor/filter-widgets.html create mode 100644 _site/docs/master/questions/native-editor/time-grouping-parameters.html diff --git a/_docs/master/dashboards/filters.md b/_docs/master/dashboards/filters.md index 6407c4c95d..230db2f4e2 100644 --- a/_docs/master/dashboards/filters.md +++ b/_docs/master/dashboards/filters.md @@ -16,20 +16,24 @@ redirect_from: ![Dashboard Filters](./images/filters.png) -Have you ever found yourself in a situation where it seems like you need to create nearly identical copies of the same dashboard, with just one different variable? Maybe you have an Earnings dashboard, but you want to see the data for each city your business is in, or maybe you have a KPI dashboard that you want to see broken out by month. +Instead of creating duplicate dashboards to show different cuts of the same data, you can add filter or parameter widgets to let people change variables for cards on a dashboard. -Instead of creating duplicate dashboards, you can add filter or parameter widgets to let people change variables for cards on a dashboard. - -## Adding a filter or parameter +## Adding a filter or parameter widget to a dashboard, heading, or card ![Add a Filter](./images/add-filter.png) -- Click the **pencil icon** to enter dashboard editing mode. -- Click the **filter icon** that appears in the top-right to add a filter. -- Select a [filter type](#filter-and-parameter-types) -- [Connect your filter or parameter widget to dashboard cards](#connecting-a-filter-or-parameter-widget-to-dashboard-cards) to one or more dashboard cards on any or all tabs. -- [Configure your filter](#editing-a-filter) -- **Save** your changes. +1. Click the **pencil icon** to enter dashboard editing mode. +2. You can add a filter or parameter widget to: + + - **The whole dashboard**. Metabase will only display dashboard-level widgets if they're connected to a card on the current tab. + - **Heading cards**. Not text cards, only [heading cards](./introduction#adding-headings-or-descriptions-with-text-cards). Can only be connected to cards on the current tab. + - **Question cards**. Can only be connected to cards on the current tab. + + Go to where you want to add a filter and click the **filter icon**. +3. Select a [filter type](#filter-and-parameter-types). +4. [Connect your filter or parameter widget to dashboard cards](#connecting-a-filter-or-parameter-widget-to-dashboard-cards) to one or more dashboard cards. Only dashboard-level widgets can be connected to cards on multiple tabs. +5. [Configure your filter](#editing-a-filter) +6. **Save** your changes. Metabase will display the filter only if the filter is connected to a card on the current dashboard tab. @@ -39,7 +43,7 @@ The type of filter or parameter widget you choose determines how the widget work ### Filter widgets -**Filters** determine what data to show. For example, a date filter might show only data from the last 30 days, or a category filter might show only specific product categories. +**Filters** determine _what_ data to show. For example, a date filter might show only data from the last 30 days, or a category filter might show only specific product categories. - [Date picker](#date-picker-filters) - [Location](#location-filters) @@ -50,13 +54,13 @@ The type of filter or parameter widget you choose determines how the widget work ### Parameter widgets - **Parameters** determine how to show the data. The time grouping parameter, for example, changes the granularity of time-based visualizations (like showing data by month instead of by day) without removing any data points. + **Parameters** determine _how_ to show the data. The time grouping parameter, for example, changes the granularity of time-based visualizations (like showing data by month instead of by day) without removing any data points. - [Time grouping](#time-grouping-parameter) ## Date picker filters -When picking a Time filter, Metabase will prompt you to pick a specific type of date picker widget: +When picking a Date picker filter, Metabase will prompt you to pick an operator: - Month and Year - Quarter and Year @@ -65,19 +69,17 @@ When picking a Time filter, Metabase will prompt you to pick a specific type of - Relative Date - All Options -Single Date and Date Range will provide a calendar widget, while the other options all provide slightly different dropdown interfaces for picking values. To get a widget that's just like the time filter in the query builder, choose All options. +Single Date and Date Range will provide a calendar widget, while the other options all provide slightly different dropdown interfaces for picking values. To get a widget that's just like the date picker in the query builder, choose All options. ## Time grouping parameter ![Time grouping](./images/time-grouping.png) -You can add a time grouping widget to a dashboard to change how charts are grouped by time. For example, you may want to look at the time series charts grouped by month by default, but give people the option to view the results by other groupings: by week, by quarter, and so on. - -> Time grouping parameter widget can only be connected to questions built with the [graphical query builder](../questions/query-builder/editor). +You can add a time grouping widget to a dashboard to change how charts are grouped by time. This widget won't filter the data; it'll change how Metabase displays the data. For example, you may want to look at the time series charts grouped by month by default, but give people the option to view the same results by other groupings: by week, by quarter, and so on. This widget doesn't filter data in the charts; the widget just changes the time granularity for any cards that have a datetime field connected to the widget. -You can group by: +Grouping options include: - Minute (or minute of hour) - Hour (or hour of day) @@ -87,6 +89,8 @@ You can group by: - Quarter (or quarter of year) - Year +To connect a time grouping widget to a SQL question, you'll need to insert time grouping parameters in your code. See [time grouping parameters](../questions/native-editor/time-grouping-parameters). + ## Location filters There are four types of Location filters to choose from: @@ -96,10 +100,21 @@ There are four types of Location filters to choose from: - ZIP or Postal Code - Country +Additionally, you can select an operator for the location filter: + +- **Is**. Select one or more values from a list or search box. Use **Is** when you just want to plug a value into a variable. For multiple values, the card must be either a question built using the query builder, or a native/SQL question using a [field filter](../questions/native-editor/sql-parameters#field-filter-variables). +- **Is not**. Exclude one or more specific values. +- **Contains**. Match values that contain the entered text. +- **Does not contain**. Filter out values that contain the entered text. +- **Starts with**. Match values that begin with the entered text. +- **Ends with**. Match values that end with the entered text. + ## ID filter The ID filter provides a simple input box where you can type the ID of a user, order, etc. +You can give people the option to pick one value or multiple values. + ## Number filter You can choose from: @@ -114,21 +129,25 @@ You can choose from: A flexible filter type that will let you create either a dropdown menu or an input box to filter on any category field in your cards. Options include: -- **Is**. Select one or more values from a list or search box. Use **Is** when you just want to plug a value into a variable. For multiple values, the card must be either a question built using the query builder, or a native/SQL question using a [field filter](../questions/native-editor/sql-parameters#the-field-filter-variable-type). +- **Is**. Select one or more values from a list or search box. Use **Is** when you just want to plug a value into a variable. For multiple values, the card must be either a question built using the query builder, or a native/SQL question using a [field filter](../questions/native-editor/sql-parameters#field-filter-variables). - **Is not**. Exclude one or more specific values. - **Contains**. Match values that contain the entered text. - **Does not contain**. Filter out values that contain the entered text. - **Starts with**. Match values that begin with the entered text. - **Ends with**. Match values that end with the entered text. +You can also select how people should filter on this column: + +- Dropdown list +- Search box +- Input box + ## Boolean filter A boolean filter allows people to filter data based on true/false values. ## Connecting a filter or parameter widget to dashboard cards -Dashboard widgets apply across all [dashboard tabs](./introduction#dashboard-tabs), though they'll only be displayed when a tab has cards connected to the widget. - For each widget that you add, you'll need to tell Metabase which column the filter should update for each card. Click on a card's dropdown menu to select the field that you want the widget to filter on. @@ -137,6 +156,11 @@ Here we've wired up a Text filter to the "Event types" card, telling Metabase th ![Wiring up a dashboard filter to a card](./images/wiring-cards.png) +Which cards you can connect a filter or parameter widget to depends on: + +- Whether the question card has the relevant field. +- Where the widget is located: on the dashboard, heading card, or question card. Only dashboard widgets can be connected to cards across all [dashboard tabs](./introduction#dashboard-tabs). Widgets on heading and question cards are restricted to the cards on their respective tabs. + ## Auto-connecting filters to cards If there are other cards that also have the field you select, Metabase will offer to automatically connect the filter to those cards too (including to relevant cards on other tabs). If you later add a card with the selected field, Metabase will also try to connect that filter to the new card. @@ -145,9 +169,9 @@ To undo this auto-connecting of cards, click on the toast that pops up when Meta ## Filtering dashboards with native/SQL questions -If you're trying to connect a filter to a card with a native/SQL questions, you'll need to [add a variable or field filter to your query](../questions/native-editor/sql-parameters). For an in-depth article, check out [Adding filters to dashboards with SQL questions](/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/filters). +For filters, you'll need to [add a variable or field filter to your query](../questions/native-editor/sql-parameters). -You can't connect a time grouping parameter widget to a card with a SQL question. +For parameters, check out [Time grouping parameters](../questions/native-editor/time-grouping-parameters). ## Wiring up dashboard filters to text cards diff --git a/_docs/master/dashboards/linked-filters.md b/_docs/master/dashboards/linked-filters.md index 50e9dd50e5..36737fdd16 100644 --- a/_docs/master/dashboards/linked-filters.md +++ b/_docs/master/dashboards/linked-filters.md @@ -63,7 +63,7 @@ Metabase uses database column metadata to populate values for linked filters, wh - You can't create linked filters on custom columns. -- Native/SQL questions must have a [field filter](../questions/native-editor/sql-parameters#the-field-filter-variable-type) variable in order to be linked. Basic SQL variables aren't connected to database columns, so they won't work for linked filters. +- Native/SQL questions must have a [field filter](../questions/native-editor/sql-parameters#field-filter-variables) variable in order to be linked. Basic SQL variables aren't connected to database columns, so they won't work for linked filters. - You can't link filters that use "Custom List" or "From another model or question" as their value's source. diff --git a/_docs/master/data-modeling/field-types.md b/_docs/master/data-modeling/field-types.md index 29a3103338..fbdd6a28c7 100644 --- a/_docs/master/data-modeling/field-types.md +++ b/_docs/master/data-modeling/field-types.md @@ -173,7 +173,7 @@ When you [X-ray](../exploration-and-organization/x-rays) a table, model, or enti ### Field Filters -Knowing what field types are and how they work is helpful when using [field filters](/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/field-filters), as you can only create field filters for [certain field types](../questions/native-editor/sql-parameters#field-filter-compatible-types). +Knowing what field types are and how they work is helpful when using [field filters](/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/field-filters), as you can only create field filters for [certain field types](../questions/native-editor/sql-parameters#field-filters-are-only-compatible-with-certain-types). ### JSON unfolding diff --git a/_docs/master/developers-guide/community-drivers.md b/_docs/master/developers-guide/community-drivers.md index 813138954b..2b13b29798 100644 --- a/_docs/master/developers-guide/community-drivers.md +++ b/_docs/master/developers-guide/community-drivers.md @@ -37,7 +37,7 @@ Anyone can build a community driver. These are the currently known third-party d | ------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | | [CSV](https://github.com/Markenson/csv-metabase-driver) | ![GitHub stars](https://img.shields.io/github/stars/Markenson/csv-metabase-driver) | ![GitHub (Pre-)Release Date](https://img.shields.io/github/release-date-pre/Markenson/csv-metabase-driver) | | [Databend](https://github.com/databendcloud/metabase-databend-driver) | ![GitHub stars](https://img.shields.io/github/stars/databendcloud/metabase-databend-driver) | ![GitHub (Pre-)Release Date](https://img.shields.io/github/release-date-pre/databendcloud/metabase-databend-driver) | -| [DB2](https://github.com/damienchambe/metabase-db2-driver) | ![GitHub stars](https://img.shields.io/github/stars/damienchambe/metabase-db2-driver) | ![Github (Pre-)Release Date](https://img.shields.io/github/release-date-pre/damienchambe/metabase-db2-driver) | +| [DB2](https://github.com/damienchambe/metabase-db2-driver) | ![GitHub stars](https://img.shields.io/github/stars/damienchambe/metabase-db2-driver) | ![GitHub (Pre-)Release Date](https://img.shields.io/github/release-date-pre/damienchambe/metabase-db2-driver) | | [Dremio](https://github.com/Baoqi/metabase-dremio-driver) | ![GitHub stars](https://img.shields.io/github/stars/Baoqi/metabase-dremio-driver) | ![GitHub (Pre-)Release Date](https://img.shields.io/github/release-date-pre/Baoqi/metabase-dremio-driver) | | [DuckDB](https://github.com/MotherDuck-Open-Source/metabase_duckdb_driver) | ![GitHub stars](https://img.shields.io/github/stars/MotherDuck-Open-Source/metabase_duckdb_driver) | ![GitHub (Pre-)Release Date](https://img.shields.io/github/release-date-pre/MotherDuck-Open-Source/metabase_duckdb_driver) | | [Firebolt](https://github.com/firebolt-db/metabase-firebolt-driver) | ![GitHub stars](https://img.shields.io/github/stars/firebolt-db/metabase-firebolt-driver) | ![GitHub (Pre-)Release Date](https://img.shields.io/github/release-date-pre/firebolt-db/metabase-firebolt-driver) | diff --git a/_docs/master/developers-guide/devenv.md b/_docs/master/developers-guide/devenv.md index b5798dc53c..14d6002437 100644 --- a/_docs/master/developers-guide/devenv.md +++ b/_docs/master/developers-guide/devenv.md @@ -28,6 +28,8 @@ yarn dev This runs both the [frontend](#frontend) and [backend](#backend). Alternatively, you can run them separately in two terminal sessions below. +To use any other database beside the default ones please take a look at [Building Drivers](#building-drivers) further down in this document. + ### Frontend Metabase depends on third-party libraries to run, so you'll need to keep those up to date. The Clojure CLI will automatically fetch the dependencies when needed. With JavaScript dependencies, however, you'll need to kick off the installation process manually. diff --git a/_docs/master/developers-guide/frontend.md b/_docs/master/developers-guide/frontend.md index 1031ea7210..1e0630eef2 100644 --- a/_docs/master/developers-guide/frontend.md +++ b/_docs/master/developers-guide/frontend.md @@ -266,7 +266,7 @@ function getFoo(a, b, c) { } ``` -- Be conservative with what comments you add to the codebase. Comments shouldn't be used as reminders or as todos--record those by creating a new issue in Github. Ideally, code should be written in such a way that it explains itself clearly. When it does not, you should first try rewriting the code. If for whatever reason you are unable to write something clearly, add a comment to explain the "why". +- Be conservative with what comments you add to the codebase. Comments shouldn't be used as reminders or as todos--record those by creating a new issue in GitHub. Ideally, code should be written in such a way that it explains itself clearly. When it does not, you should first try rewriting the code. If for whatever reason you are unable to write something clearly, add a comment to explain the "why". ```javascript diff --git a/_docs/master/developers-guide/versioning.md b/_docs/master/developers-guide/versioning.md index 655d42cd76..82e02cc6d8 100644 --- a/_docs/master/developers-guide/versioning.md +++ b/_docs/master/developers-guide/versioning.md @@ -68,5 +68,5 @@ E.g., ## Further reading -- [Metabase releases on Github](https://github.com/metabase/metabase/releases) +- [Metabase releases on GitHub](https://github.com/metabase/metabase/releases) - [Metabase release blog posts](/releases) diff --git a/_docs/master/embedding/sdk/api/BaseInteractiveQuestionProps.html b/_docs/master/embedding/sdk/api/BaseInteractiveQuestionProps.html index 7effd3582a..70e4b609e9 100644 --- a/_docs/master/embedding/sdk/api/BaseInteractiveQuestionProps.html +++ b/_docs/master/embedding/sdk/api/BaseInteractiveQuestionProps.html @@ -9,7 +9,7 @@ layout: docs-api --- -BaseInteractiveQuestionProps | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

Interface BaseInteractiveQuestionProps

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

Properties

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

Interface BaseInteractiveQuestionProps

interface BaseInteractiveQuestionProps {
    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

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: undefined | MetabaseQuestion,
    context: { isNewQuestion: boolean },
) => void

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

+
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: diff --git a/_docs/master/embedding/sdk/api/CreateQuestion.html b/_docs/master/embedding/sdk/api/CreateQuestion.html index 74327bd7e7..dd1d9a4f9b 100644 --- a/_docs/master/embedding/sdk/api/CreateQuestion.html +++ b/_docs/master/embedding/sdk/api/CreateQuestion.html @@ -14,7 +14,7 @@

  • OptionalisSaveEnabled?: boolean

    Whether to show the save button.

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

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

  • OptionalonRun?: (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

    -
  • OptionalonSave?: (
        question: undefined | MetabaseQuestion,
        context: { isNewQuestion: boolean },
    ) => void

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

    +
  • OptionalonSave?: (
        question: MetabaseQuestion,
        context: { dashboardTabId?: number; isNewQuestion: boolean },
    ) => void

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

  • Optionalplugins?: MetabasePluginsConfig
  • OptionaltargetCollection?: SdkCollectionId

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

  • OptionalwithDownloads?: boolean

    Enables the ability to download results in the interactive question.

  • Returns Element

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

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

    Interface CreateQuestionProps

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

    Properties

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

    Interface CreateQuestionProps

    interface CreateQuestionProps {
        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;
        targetCollection?: SdkCollectionId;
        withDownloads?: boolean;
    }
    Index

    Properties

    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: undefined | MetabaseQuestion,
        context: { isNewQuestion: boolean },
    ) => void

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

    +
    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

    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/DrillThroughQuestionProps.html b/_docs/master/embedding/sdk/api/DrillThroughQuestionProps.html index 1fe84cf504..4ef29e1abf 100644 --- a/_docs/master/embedding/sdk/api/DrillThroughQuestionProps.html +++ b/_docs/master/embedding/sdk/api/DrillThroughQuestionProps.html @@ -10,7 +10,7 @@ --- DrillThroughQuestionProps | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

    Interface DrillThroughQuestionProps

    Props for the drill-through question

    -
    interface DrillThroughQuestionProps {
        children?: ReactNode;
        className?: string;
        entityTypes?: EmbeddingEntityType[];
        height?: Height<string | number>;
        initialSqlParameters?: SqlParameterValues;
        isSaveEnabled?: boolean;
        onBeforeSave?: (
            question: undefined | MetabaseQuestion,
            context: { isNewQuestion: boolean },
        ) => Promise<void>;
        onRun?: (question: undefined | MetabaseQuestion) => void;
        onSave?: (
            question: undefined | MetabaseQuestion,
            context: { isNewQuestion: boolean },
        ) => void;
        plugins?: MetabasePluginsConfig;
        style?: CSSProperties;
        targetCollection?: SdkCollectionId;
        title?: SdkQuestionTitleProps;
        width?: Width<string | number>;
        withChartTypeSelector?: boolean;
        withDownloads?: boolean;
        withResetButton?: boolean;
    }
    Index

    Properties

    interface DrillThroughQuestionProps {
        children?: ReactNode;
        className?: string;
        entityTypes?: EmbeddingEntityType[];
        height?: Height<string | number>;
        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;
        style?: CSSProperties;
        targetCollection?: SdkCollectionId;
        title?: SdkQuestionTitleProps;
        width?: Width<string | number>;
        withChartTypeSelector?: boolean;
        withDownloads?: boolean;
        withResetButton?: boolean;
    }
    Index

    Properties

    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: undefined | MetabaseQuestion,
        context: { isNewQuestion: boolean },
    ) => void

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

    +
    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

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

    targetCollection?: SdkCollectionId

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

    Determines whether the question title is displayed, and allows a custom title to be displayed instead of the default question title. Shown by default. Only applicable to interactive questions when using the default layout.

    diff --git a/_docs/master/embedding/sdk/api/EditableDashboard.html b/_docs/master/embedding/sdk/api/EditableDashboard.html index 340dbcd435..43f5381000 100644 --- a/_docs/master/embedding/sdk/api/EditableDashboard.html +++ b/_docs/master/embedding/sdk/api/EditableDashboard.html @@ -9,13 +9,9 @@ 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.

      -

      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;
        } & {}
        • 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.

          -
        • OptionalrenderDrillThroughQuestion?: () => ReactNode

          A custom React component to render the question layout. -Use namespaced InteractiveQuestion components to build the layout.

          -
        • dashboardId: SdkDashboardId

          The ID of the 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.
                This is either:

                @@ -24,25 +20,30 @@
              • the string ID found in the entity_id key of the dashboard object when using the API directly or using the SDK Collection Browser to return data
              -
          • OptionalhiddenParameters?: string[]

            A list of parameters to hide. +

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

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

            +
          • 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.

            +
          • OptionalhiddenParameters?: string[]

            A list of parameters to hide.

            -
          • OptionalinitialParameters?: ParameterValues

            Query parameters for the dashboard. For a single option, use a string value, and use a list of strings for multiple options. +

          • OptionalinitialParameters?: ParameterValues

            Query parameters for the dashboard. For a single option, use a string value, and use a list of strings for multiple options.

            -
          • 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.

            -
          • 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.

            -
          • 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.

            -

        Returns Element

      +
    • 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.

      +
    • Optionalplugins?: MetabasePluginsConfig

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

      +
    • OptionalrenderDrillThroughQuestion?: () => ReactNode

      A custom React component to render the question layout. +Use namespaced InteractiveQuestion components to build the layout.

      +
    • Optionalstyle?: CSSProperties

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

      +
    • 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

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

      Interface EditableDashboardProps

      interface EditableDashboardProps {
          className?: string;
          dashboardId: SdkDashboardId;
          drillThroughQuestionHeight?: Height<string | number>;
          drillThroughQuestionProps?: DrillThroughQuestionProps;
          hiddenParameters?: string[];
          initialParameters?: ParameterValues;
          onLoad?: (dashboard: null | MetabaseDashboard) => void;
          onLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void;
          plugins?: MetabasePluginsConfig;
          renderDrillThroughQuestion?: () => ReactNode;
          style?: CSSProperties;
          withCardTitle?: boolean;
          withDownloads?: boolean;
          withTitle?: boolean;
      }
      Index

      Properties

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

      Interface EditableDashboardProps

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

      Properties

      className? dashboardId +dataPickerProps? drillThroughQuestionHeight? drillThroughQuestionProps? hiddenParameters? @@ -33,6 +34,7 @@
    • the string ID found in the entity_id key of the dashboard object when using the API directly or using the SDK Collection Browser to return data
    • +
      dataPickerProps?: Pick<InteractiveQuestionProps, "entityTypes">

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

      drillThroughQuestionHeight?: Height<string | number>

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

      drillThroughQuestionProps?: DrillThroughQuestionProps

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

      Type declaration

      Props for the drill-through question

      @@ -44,7 +46,7 @@
    • OptionalisSaveEnabled?: boolean

      Whether to show the save button.

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

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

    • OptionalonRun?: (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

      -
    • OptionalonSave?: (
          question: undefined | MetabaseQuestion,
          context: { isNewQuestion: boolean },
      ) => void

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

      +
    • OptionalonSave?: (
          question: MetabaseQuestion,
          context: { dashboardTabId?: number; isNewQuestion: boolean },
      ) => void

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

    • Optionalplugins?: MetabasePluginsConfig
    • Optionalstyle?: CSSProperties

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

    • OptionaltargetCollection?: SdkCollectionId

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

    • Optionaltitle?: SdkQuestionTitleProps

      Determines whether the question title is displayed, and allows a custom title to be displayed instead of the default question title. Shown by default. Only applicable to interactive questions when using the default layout.

      @@ -75,4 +77,4 @@
    • withCardTitle?: boolean

      Whether the dashboard cards should display a title.

      withDownloads?: boolean

      Whether to hide the download button.

      withTitle?: boolean

      Whether the dashboard should display a title.

      -

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

      Function InteractiveDashboard

      dataPickerProps?: Pick<InteractiveQuestionProps, "entityTypes">

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

      drillThroughQuestionHeight?: Height<string | number>

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

      drillThroughQuestionProps?: DrillThroughQuestionProps

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

      Type declaration

      Props for the drill-through question

      @@ -44,7 +46,7 @@
    • OptionalisSaveEnabled?: boolean

      Whether to show the save button.

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

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

    • OptionalonRun?: (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

      -
    • OptionalonSave?: (
          question: undefined | MetabaseQuestion,
          context: { isNewQuestion: boolean },
      ) => void

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

      +
    • OptionalonSave?: (
          question: MetabaseQuestion,
          context: { dashboardTabId?: number; isNewQuestion: boolean },
      ) => void

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

    • Optionalplugins?: MetabasePluginsConfig
    • Optionalstyle?: CSSProperties

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

    • OptionaltargetCollection?: SdkCollectionId

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

    • Optionaltitle?: SdkQuestionTitleProps

      Determines whether the question title is displayed, and allows a custom title to be displayed instead of the default question title. Shown by default. Only applicable to interactive questions when using the default layout.

      @@ -75,4 +77,4 @@
    • withCardTitle?: boolean

      Whether the dashboard cards should display a title.

      withDownloads?: boolean

      Whether to hide the download button.

      withTitle?: boolean

      Whether the dashboard should display a title.

      -
      +
      diff --git a/_docs/master/embedding/sdk/api/InteractiveQuestion.html b/_docs/master/embedding/sdk/api/InteractiveQuestion.html index fc4385cf45..dc7989bff8 100644 --- a/_docs/master/embedding/sdk/api/InteractiveQuestion.html +++ b/_docs/master/embedding/sdk/api/InteractiveQuestion.html @@ -18,7 +18,7 @@
    • OptionalisSaveEnabled?: boolean

      Whether to show the save button.

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

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

    • OptionalonRun?: (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

      -
    • OptionalonSave?: (
          question: undefined | MetabaseQuestion,
          context: { isNewQuestion: boolean },
      ) => void

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

      +
    • OptionalonSave?: (
          question: MetabaseQuestion,
          context: { dashboardTabId?: number; isNewQuestion: boolean },
      ) => void

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

    • Optionalplugins?: MetabasePluginsConfig
    • questionId: null | SdkQuestionId

      The ID of the question.
      This is either: diff --git a/_docs/master/embedding/sdk/api/InteractiveQuestionProps.html b/_docs/master/embedding/sdk/api/InteractiveQuestionProps.html index f95a95d61b..ab3d118292 100644 --- a/_docs/master/embedding/sdk/api/InteractiveQuestionProps.html +++ b/_docs/master/embedding/sdk/api/InteractiveQuestionProps.html @@ -9,7 +9,7 @@ layout: docs-api --- -InteractiveQuestionProps | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

      Interface InteractiveQuestionProps

      interface InteractiveQuestionProps {
          children?: ReactNode;
          className?: string;
          entityTypes?: EmbeddingEntityType[];
          height?: Height<string | number>;
          initialSqlParameters?: SqlParameterValues;
          isSaveEnabled?: boolean;
          onBeforeSave?: (
              question: undefined | MetabaseQuestion,
              context: { isNewQuestion: boolean },
          ) => Promise<void>;
          onRun?: (question: undefined | MetabaseQuestion) => void;
          onSave?: (
              question: undefined | MetabaseQuestion,
              context: { isNewQuestion: boolean },
          ) => void;
          plugins?: MetabasePluginsConfig;
          questionId: null | SdkQuestionId;
          style?: CSSProperties;
          targetCollection?: SdkCollectionId;
          title?: SdkQuestionTitleProps;
          width?: Width<string | number>;
          withChartTypeSelector?: boolean;
          withDownloads?: boolean;
          withResetButton?: boolean;
      }
      Index

      Properties

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

      Interface InteractiveQuestionProps

      interface InteractiveQuestionProps {
          children?: ReactNode;
          className?: string;
          entityTypes?: EmbeddingEntityType[];
          height?: Height<string | number>;
          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;
          style?: CSSProperties;
          targetCollection?: SdkCollectionId;
          title?: SdkQuestionTitleProps;
          width?: Width<string | number>;
          withChartTypeSelector?: boolean;
          withDownloads?: boolean;
          withResetButton?: boolean;
      }
      Index

      Properties

      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: undefined | MetabaseQuestion,
          context: { isNewQuestion: boolean },
      ) => void

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

      +
      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: diff --git a/_docs/master/embedding/sdk/api/StaticDashboard.html b/_docs/master/embedding/sdk/api/StaticDashboard.html index b2934e2415..137b9f13ef 100644 --- a/_docs/master/embedding/sdk/api/StaticDashboard.html +++ b/_docs/master/embedding/sdk/api/StaticDashboard.html @@ -9,8 +9,8 @@ layout: docs-api --- -StaticDashboard | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

      Function StaticDashboard

      dataPickerProps?: Pick<InteractiveQuestionProps, "entityTypes">

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

      drillThroughQuestionHeight?: Height<string | number>

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

      drillThroughQuestionProps?: DrillThroughQuestionProps

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

      Type declaration

      Props for the drill-through question

      @@ -44,7 +46,7 @@
    • OptionalisSaveEnabled?: boolean

      Whether to show the save button.

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

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

    • OptionalonRun?: (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

      -
    • OptionalonSave?: (
          question: undefined | MetabaseQuestion,
          context: { isNewQuestion: boolean },
      ) => void

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

      +
    • OptionalonSave?: (
          question: MetabaseQuestion,
          context: { dashboardTabId?: number; isNewQuestion: boolean },
      ) => void

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

    • Optionalplugins?: MetabasePluginsConfig
    • Optionalstyle?: CSSProperties

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

    • OptionaltargetCollection?: SdkCollectionId

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

    • Optionaltitle?: SdkQuestionTitleProps

      Determines whether the question title is displayed, and allows a custom title to be displayed instead of the default question title. Shown by default. Only applicable to interactive questions when using the default layout.

      @@ -75,4 +77,4 @@
      withCardTitle?: boolean

      Whether the dashboard cards should display a title.

      withDownloads?: boolean

      Whether to hide the download button.

      withTitle?: boolean

      Whether the dashboard should display a title.

      -

      +

      diff --git a/_docs/master/embedding/sdk/api/StaticQuestion.html b/_docs/master/embedding/sdk/api/StaticQuestion.html index e535dad836..51f2d9ff73 100644 --- a/_docs/master/embedding/sdk/api/StaticQuestion.html +++ b/_docs/master/embedding/sdk/api/StaticQuestion.html @@ -26,4 +26,5 @@
    • Optionalstyle?: CSSProperties

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

    • Optionalwidth?: Width<string | number>

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

      -
    • OptionalwithChartTypeSelector?: boolean
    • Returns ReactNode

      +
    • OptionalwithChartTypeSelector?: boolean
    • OptionalwithDownloads?: boolean

      Enables the ability to download results in the interactive question.

      +
    • Returns ReactNode

      diff --git a/_docs/master/embedding/sdk/api/StaticQuestionProps.html b/_docs/master/embedding/sdk/api/StaticQuestionProps.html index 0cf406ab49..0ddc7ab72b 100644 --- a/_docs/master/embedding/sdk/api/StaticQuestionProps.html +++ b/_docs/master/embedding/sdk/api/StaticQuestionProps.html @@ -9,13 +9,14 @@ layout: docs-api --- -StaticQuestionProps | Embedded analytics SDK API{% include docs/embedded-analytics-sdk-metadata.html %}

      Interface StaticQuestionProps

      interface StaticQuestionProps {
          className?: string;
          height?: Height<string | number>;
          initialSqlParameters?: SqlParameterValues;
          questionId: null | SdkQuestionId;
          style?: CSSProperties;
          width?: Width<string | number>;
          withChartTypeSelector?: boolean;
      }
      Index

      Properties

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

      Interface StaticQuestionProps

      interface StaticQuestionProps {
          className?: string;
          height?: Height<string | number>;
          initialSqlParameters?: SqlParameterValues;
          questionId: null | SdkQuestionId;
          style?: CSSProperties;
          width?: Width<string | number>;
          withChartTypeSelector?: boolean;
          withDownloads?: boolean;
      }
      Index

      Properties

      className?: string

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

      height?: Height<string | number>

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

      initialSqlParameters?: SqlParameterValues

      Initial values for the SQL parameters.

      @@ -32,4 +33,5 @@

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

      width?: Width<string | number>

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

      -
      withChartTypeSelector?: boolean

      +
      withChartTypeSelector?: boolean
      withDownloads?: boolean

      Enables the ability to download results in the interactive question.

      +
      diff --git a/_docs/master/embedding/sdk/api/assets/search.js b/_docs/master/embedding/sdk/api/assets/search.js index 5649aeca11..a91212dd5e 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/snippets/BaseInteractiveQuestionProps.md b/_docs/master/embedding/sdk/api/snippets/BaseInteractiveQuestionProps.md index d03dbf391e..c3205ce9c4 100644 --- a/_docs/master/embedding/sdk/api/snippets/BaseInteractiveQuestionProps.md +++ b/_docs/master/embedding/sdk/api/snippets/BaseInteractiveQuestionProps.md @@ -23,7 +23,7 @@ layout: new-docs | `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`: `undefined` \| [`MetabaseQuestion`](./api/MetabaseQuestion), `context`: \{ `isNewQuestion`: `boolean`; \}) => `void` | A callback function that triggers when a user saves the question. Only relevant when `isSaveEnabled = true` | +| `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. | diff --git a/_docs/master/embedding/sdk/api/snippets/CreateQuestionProps.md b/_docs/master/embedding/sdk/api/snippets/CreateQuestionProps.md index 8f7635b747..a5ea63f17b 100644 --- a/_docs/master/embedding/sdk/api/snippets/CreateQuestionProps.md +++ b/_docs/master/embedding/sdk/api/snippets/CreateQuestionProps.md @@ -22,7 +22,7 @@ layout: new-docs | `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`: `undefined` \| [`MetabaseQuestion`](./api/MetabaseQuestion), `context`: \{ `isNewQuestion`: `boolean`; \}) => `void` | A callback function that triggers when a user saves the question. Only relevant when `isSaveEnabled = true` | +| `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) | - | | `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/DrillThroughQuestionProps.md b/_docs/master/embedding/sdk/api/snippets/DrillThroughQuestionProps.md index 477f88f90c..722e953a73 100644 --- a/_docs/master/embedding/sdk/api/snippets/DrillThroughQuestionProps.md +++ b/_docs/master/embedding/sdk/api/snippets/DrillThroughQuestionProps.md @@ -27,7 +27,7 @@ Props for the drill-through question | `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`: `undefined` \| [`MetabaseQuestion`](./api/MetabaseQuestion), `context`: \{ `isNewQuestion`: `boolean`; \}) => `void` | A callback function that triggers when a user saves the question. Only relevant when `isSaveEnabled = true` | +| `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) | - | | `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. | | `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. | diff --git a/_docs/master/embedding/sdk/api/snippets/EditableDashboard.md b/_docs/master/embedding/sdk/api/snippets/EditableDashboard.md index fc427dcb2a..ac04f5dd59 100644 --- a/_docs/master/embedding/sdk/api/snippets/EditableDashboard.md +++ b/_docs/master/embedding/sdk/api/snippets/EditableDashboard.md @@ -10,27 +10,7 @@ layout: new-docs --- ```ts -function EditableDashboard( - props: { - drillThroughQuestionHeight?: Height; - 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; - } & {}, -): Element; +function EditableDashboard(props: EditableDashboardProps): Element; ``` 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. @@ -39,9 +19,9 @@ A dashboard component with the features available in the `InteractiveDashboard` -| Parameter | Type | Description | -| :-------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------- | -| `props` | \{ `drillThroughQuestionHeight?`: `Height`\<`string` \| `number`\>; `drillThroughQuestionProps?`: [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps); `plugins?`: [`MetabasePluginsConfig`](./api/MetabasePluginsConfig); `renderDrillThroughQuestion?`: () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478); \} & \{ `dashboardId`: [`SdkDashboardId`](./api/SdkDashboardId); `hiddenParameters?`: `string`[]; `initialParameters?`: [`ParameterValues`](./api/ParameterValues); `withCardTitle?`: `boolean`; `withDownloads?`: `boolean`; `withTitle?`: `boolean`; \} & \{ `className?`: `string`; `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); \} & \{ `onLoad?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; `onLoadWithoutCards?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; \} & \{ \} | | +| Parameter | Type | Description | +| :-------- | :---------------------------------------------------------- | :---------- | +| `props` | [`EditableDashboardProps`](./api/EditableDashboardProps) | | diff --git a/_docs/master/embedding/sdk/api/snippets/EditableDashboardProps.md b/_docs/master/embedding/sdk/api/snippets/EditableDashboardProps.md index 70fad729f1..69186d18d2 100644 --- a/_docs/master/embedding/sdk/api/snippets/EditableDashboardProps.md +++ b/_docs/master/embedding/sdk/api/snippets/EditableDashboardProps.md @@ -15,21 +15,22 @@ layout: new-docs -| Property | Type | Description | -| :-------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `className?` | `string` | A custom class name to be added to the root element. | -| `dashboardId` | [`SdkDashboardId`](./api/SdkDashboardId) | The ID of the dashboard.
      This is either:
      - the numerical ID when accessing a dashboard link, i.e. `http://localhost:3000/dashboard/1-my-dashboard` where the ID is `1`
      - the string ID found in the `entity_id` key of the dashboard object when using the API directly or using the SDK Collection Browser to return data | -| `drillThroughQuestionHeight?` | `Height`\<`string` \| `number`\> | Height of a question component when drilled from the dashboard to a question level. | -| `drillThroughQuestionProps?` | [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps) | Props of a question component when drilled from the dashboard to a question level. | -| `hiddenParameters?` | `string`[] | A list of [parameters to hide](/docs/master/embedding/public-links#appearance-parameters).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | -| `initialParameters?` | [`ParameterValues`](./api/ParameterValues) | Query parameters for the dashboard. For a single option, use a `string` value, and use a list of strings for multiple options.
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | -| `onLoad?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded. | -| `onLoadWithoutCards?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded without cards. | -| `plugins?` | [`MetabasePluginsConfig`](./api/MetabasePluginsConfig) | Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details. | -| `renderDrillThroughQuestion?` | () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) | A custom React component to render the question layout. Use namespaced InteractiveQuestion components to build the layout. | -| `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. | -| `withCardTitle?` | `boolean` | Whether the dashboard cards should display a title. | -| `withDownloads?` | `boolean` | Whether to hide the download button. | -| `withTitle?` | `boolean` | Whether the dashboard should display a title. | +| Property | Type | Description | +| :-------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `className?` | `string` | A custom class name to be added to the root element. | +| `dashboardId` | [`SdkDashboardId`](./api/SdkDashboardId) | The ID of the dashboard.
      This is either:
      - the numerical ID when accessing a dashboard link, i.e. `http://localhost:3000/dashboard/1-my-dashboard` where the ID is `1`
      - the string ID found in the `entity_id` key of the dashboard object when using the API directly or using the SDK Collection Browser to return data | +| `dataPickerProps?` | [`Pick`](https://www.typescriptlang.org/docs/handbook/utility-types.html#picktype-keys)\<[`InteractiveQuestionProps`](./api/InteractiveQuestionProps), `"entityTypes"`\> | Additional props to pass to the query builder rendered by `InteractiveQuestion` when creating a new dashboard question. | +| `drillThroughQuestionHeight?` | `Height`\<`string` \| `number`\> | Height of a question component when drilled from the dashboard to a question level. | +| `drillThroughQuestionProps?` | [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps) | Props of a question component when drilled from the dashboard to a question level. | +| `hiddenParameters?` | `string`[] | A list of [parameters to hide](/docs/master/embedding/public-links#appearance-parameters).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | +| `initialParameters?` | [`ParameterValues`](./api/ParameterValues) | Query parameters for the dashboard. For a single option, use a `string` value, and use a list of strings for multiple options.
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | +| `onLoad?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded. | +| `onLoadWithoutCards?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded without cards. | +| `plugins?` | [`MetabasePluginsConfig`](./api/MetabasePluginsConfig) | Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details. | +| `renderDrillThroughQuestion?` | () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) | A custom React component to render the question layout. Use namespaced InteractiveQuestion components to build the layout. | +| `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. | +| `withCardTitle?` | `boolean` | Whether the dashboard cards should display a title. | +| `withDownloads?` | `boolean` | Whether to hide the download button. | +| `withTitle?` | `boolean` | Whether the dashboard should display a title. | diff --git a/_docs/master/embedding/sdk/api/snippets/InteractiveDashboard.md b/_docs/master/embedding/sdk/api/snippets/InteractiveDashboard.md index 80ee8b4c82..3f026cc008 100644 --- a/_docs/master/embedding/sdk/api/snippets/InteractiveDashboard.md +++ b/_docs/master/embedding/sdk/api/snippets/InteractiveDashboard.md @@ -29,6 +29,8 @@ function InteractiveDashboard( } & { onLoad?: (dashboard: null | MetabaseDashboard) => void; onLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void; + } & { + dataPickerProps?: Pick; } & {}, ): Element; ``` @@ -39,9 +41,9 @@ A dashboard component with drill downs, click behaviors, and the ability to view -| Parameter | Type | Description | -| :-------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------- | -| `props` | \{ `drillThroughQuestionHeight?`: `Height`\<`string` \| `number`\>; `drillThroughQuestionProps?`: [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps); `plugins?`: [`MetabasePluginsConfig`](./api/MetabasePluginsConfig); `renderDrillThroughQuestion?`: () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478); \} & \{ `dashboardId`: [`SdkDashboardId`](./api/SdkDashboardId); `hiddenParameters?`: `string`[]; `initialParameters?`: [`ParameterValues`](./api/ParameterValues); `withCardTitle?`: `boolean`; `withDownloads?`: `boolean`; `withTitle?`: `boolean`; \} & \{ `className?`: `string`; `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); \} & \{ `onLoad?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; `onLoadWithoutCards?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; \} & \{ \} | | +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------- | +| `props` | \{ `drillThroughQuestionHeight?`: `Height`\<`string` \| `number`\>; `drillThroughQuestionProps?`: [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps); `plugins?`: [`MetabasePluginsConfig`](./api/MetabasePluginsConfig); `renderDrillThroughQuestion?`: () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478); \} & \{ `dashboardId`: [`SdkDashboardId`](./api/SdkDashboardId); `hiddenParameters?`: `string`[]; `initialParameters?`: [`ParameterValues`](./api/ParameterValues); `withCardTitle?`: `boolean`; `withDownloads?`: `boolean`; `withTitle?`: `boolean`; \} & \{ `className?`: `string`; `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); \} & \{ `onLoad?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; `onLoadWithoutCards?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; \} & \{ `dataPickerProps?`: [`Pick`](https://www.typescriptlang.org/docs/handbook/utility-types.html#picktype-keys)\<[`InteractiveQuestionProps`](./api/InteractiveQuestionProps), `"entityTypes"`\>; \} & \{ \} | | diff --git a/_docs/master/embedding/sdk/api/snippets/InteractiveDashboardProps.md b/_docs/master/embedding/sdk/api/snippets/InteractiveDashboardProps.md index 5b34cbca34..f479613fcb 100644 --- a/_docs/master/embedding/sdk/api/snippets/InteractiveDashboardProps.md +++ b/_docs/master/embedding/sdk/api/snippets/InteractiveDashboardProps.md @@ -15,21 +15,22 @@ layout: new-docs -| Property | Type | Description | -| :-------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `className?` | `string` | A custom class name to be added to the root element. | -| `dashboardId` | [`SdkDashboardId`](./api/SdkDashboardId) | The ID of the dashboard.
      This is either:
      - the numerical ID when accessing a dashboard link, i.e. `http://localhost:3000/dashboard/1-my-dashboard` where the ID is `1`
      - the string ID found in the `entity_id` key of the dashboard object when using the API directly or using the SDK Collection Browser to return data | -| `drillThroughQuestionHeight?` | `Height`\<`string` \| `number`\> | Height of a question component when drilled from the dashboard to a question level. | -| `drillThroughQuestionProps?` | [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps) | Props of a question component when drilled from the dashboard to a question level. | -| `hiddenParameters?` | `string`[] | A list of [parameters to hide](/docs/master/embedding/public-links#appearance-parameters).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | -| `initialParameters?` | [`ParameterValues`](./api/ParameterValues) | Query parameters for the dashboard. For a single option, use a `string` value, and use a list of strings for multiple options.
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | -| `onLoad?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded. | -| `onLoadWithoutCards?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded without cards. | -| `plugins?` | [`MetabasePluginsConfig`](./api/MetabasePluginsConfig) | Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details. | -| `renderDrillThroughQuestion?` | () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) | A custom React component to render the question layout. Use namespaced InteractiveQuestion components to build the layout. | -| `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. | -| `withCardTitle?` | `boolean` | Whether the dashboard cards should display a title. | -| `withDownloads?` | `boolean` | Whether to hide the download button. | -| `withTitle?` | `boolean` | Whether the dashboard should display a title. | +| Property | Type | Description | +| :-------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `className?` | `string` | A custom class name to be added to the root element. | +| `dashboardId` | [`SdkDashboardId`](./api/SdkDashboardId) | The ID of the dashboard.
      This is either:
      - the numerical ID when accessing a dashboard link, i.e. `http://localhost:3000/dashboard/1-my-dashboard` where the ID is `1`
      - the string ID found in the `entity_id` key of the dashboard object when using the API directly or using the SDK Collection Browser to return data | +| `dataPickerProps?` | [`Pick`](https://www.typescriptlang.org/docs/handbook/utility-types.html#picktype-keys)\<[`InteractiveQuestionProps`](./api/InteractiveQuestionProps), `"entityTypes"`\> | Additional props to pass to the query builder rendered by `InteractiveQuestion` when creating a new dashboard question. | +| `drillThroughQuestionHeight?` | `Height`\<`string` \| `number`\> | Height of a question component when drilled from the dashboard to a question level. | +| `drillThroughQuestionProps?` | [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps) | Props of a question component when drilled from the dashboard to a question level. | +| `hiddenParameters?` | `string`[] | A list of [parameters to hide](/docs/master/embedding/public-links#appearance-parameters).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | +| `initialParameters?` | [`ParameterValues`](./api/ParameterValues) | Query parameters for the dashboard. For a single option, use a `string` value, and use a list of strings for multiple options.
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | +| `onLoad?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded. | +| `onLoadWithoutCards?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded without cards. | +| `plugins?` | [`MetabasePluginsConfig`](./api/MetabasePluginsConfig) | Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details. | +| `renderDrillThroughQuestion?` | () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) | A custom React component to render the question layout. Use namespaced InteractiveQuestion components to build the layout. | +| `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. | +| `withCardTitle?` | `boolean` | Whether the dashboard cards should display a title. | +| `withDownloads?` | `boolean` | Whether to hide the download button. | +| `withTitle?` | `boolean` | Whether the dashboard should display a title. | diff --git a/_docs/master/embedding/sdk/api/snippets/InteractiveQuestionProps.md b/_docs/master/embedding/sdk/api/snippets/InteractiveQuestionProps.md index 3c2c95efc9..58e17b122f 100644 --- a/_docs/master/embedding/sdk/api/snippets/InteractiveQuestionProps.md +++ b/_docs/master/embedding/sdk/api/snippets/InteractiveQuestionProps.md @@ -25,7 +25,7 @@ layout: new-docs | `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`: `undefined` \| [`MetabaseQuestion`](./api/MetabaseQuestion), `context`: \{ `isNewQuestion`: `boolean`; \}) => `void` | A callback function that triggers when a user saves the question. Only relevant when `isSaveEnabled = true` | +| `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 | | `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. | diff --git a/_docs/master/embedding/sdk/api/snippets/StaticDashboard.md b/_docs/master/embedding/sdk/api/snippets/StaticDashboard.md index 69822c2f65..3136fb39f0 100644 --- a/_docs/master/embedding/sdk/api/snippets/StaticDashboard.md +++ b/_docs/master/embedding/sdk/api/snippets/StaticDashboard.md @@ -29,6 +29,8 @@ function StaticDashboard( } & { onLoad?: (dashboard: null | MetabaseDashboard) => void; onLoadWithoutCards?: (dashboard: null | MetabaseDashboard) => void; + } & { + dataPickerProps?: Pick; } & {}, ): Element; ``` @@ -39,9 +41,9 @@ A lightweight dashboard component. -| Parameter | Type | Description | -| :-------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------- | -| `props` | \{ `drillThroughQuestionHeight?`: `Height`\<`string` \| `number`\>; `drillThroughQuestionProps?`: [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps); `plugins?`: [`MetabasePluginsConfig`](./api/MetabasePluginsConfig); `renderDrillThroughQuestion?`: () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478); \} & \{ `dashboardId`: [`SdkDashboardId`](./api/SdkDashboardId); `hiddenParameters?`: `string`[]; `initialParameters?`: [`ParameterValues`](./api/ParameterValues); `withCardTitle?`: `boolean`; `withDownloads?`: `boolean`; `withTitle?`: `boolean`; \} & \{ `className?`: `string`; `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); \} & \{ `onLoad?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; `onLoadWithoutCards?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; \} & \{ \} | | +| Parameter | Type | Description | +| :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------- | +| `props` | \{ `drillThroughQuestionHeight?`: `Height`\<`string` \| `number`\>; `drillThroughQuestionProps?`: [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps); `plugins?`: [`MetabasePluginsConfig`](./api/MetabasePluginsConfig); `renderDrillThroughQuestion?`: () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478); \} & \{ `dashboardId`: [`SdkDashboardId`](./api/SdkDashboardId); `hiddenParameters?`: `string`[]; `initialParameters?`: [`ParameterValues`](./api/ParameterValues); `withCardTitle?`: `boolean`; `withDownloads?`: `boolean`; `withTitle?`: `boolean`; \} & \{ `className?`: `string`; `style?`: [`CSSProperties`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L2579); \} & \{ `onLoad?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; `onLoadWithoutCards?`: (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void`; \} & \{ `dataPickerProps?`: [`Pick`](https://www.typescriptlang.org/docs/handbook/utility-types.html#picktype-keys)\<[`InteractiveQuestionProps`](./api/InteractiveQuestionProps), `"entityTypes"`\>; \} & \{ \} | | diff --git a/_docs/master/embedding/sdk/api/snippets/StaticDashboardProps.md b/_docs/master/embedding/sdk/api/snippets/StaticDashboardProps.md index 973d587f57..048fcb36ab 100644 --- a/_docs/master/embedding/sdk/api/snippets/StaticDashboardProps.md +++ b/_docs/master/embedding/sdk/api/snippets/StaticDashboardProps.md @@ -15,21 +15,22 @@ layout: new-docs -| Property | Type | Description | -| :-------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `className?` | `string` | A custom class name to be added to the root element. | -| `dashboardId` | [`SdkDashboardId`](./api/SdkDashboardId) | The ID of the dashboard.
      This is either:
      - the numerical ID when accessing a dashboard link, i.e. `http://localhost:3000/dashboard/1-my-dashboard` where the ID is `1`
      - the string ID found in the `entity_id` key of the dashboard object when using the API directly or using the SDK Collection Browser to return data | -| `drillThroughQuestionHeight?` | `Height`\<`string` \| `number`\> | Height of a question component when drilled from the dashboard to a question level. | -| `drillThroughQuestionProps?` | [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps) | Props of a question component when drilled from the dashboard to a question level. | -| `hiddenParameters?` | `string`[] | A list of [parameters to hide](/docs/master/embedding/public-links#appearance-parameters).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | -| `initialParameters?` | [`ParameterValues`](./api/ParameterValues) | Query parameters for the dashboard. For a single option, use a `string` value, and use a list of strings for multiple options.
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | -| `onLoad?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded. | -| `onLoadWithoutCards?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded without cards. | -| `plugins?` | [`MetabasePluginsConfig`](./api/MetabasePluginsConfig) | Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details. | -| `renderDrillThroughQuestion?` | () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) | A custom React component to render the question layout. Use namespaced InteractiveQuestion components to build the layout. | -| `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. | -| `withCardTitle?` | `boolean` | Whether the dashboard cards should display a title. | -| `withDownloads?` | `boolean` | Whether to hide the download button. | -| `withTitle?` | `boolean` | Whether the dashboard should display a title. | +| Property | Type | Description | +| :-------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `className?` | `string` | A custom class name to be added to the root element. | +| `dashboardId` | [`SdkDashboardId`](./api/SdkDashboardId) | The ID of the dashboard.
      This is either:
      - the numerical ID when accessing a dashboard link, i.e. `http://localhost:3000/dashboard/1-my-dashboard` where the ID is `1`
      - the string ID found in the `entity_id` key of the dashboard object when using the API directly or using the SDK Collection Browser to return data | +| `dataPickerProps?` | [`Pick`](https://www.typescriptlang.org/docs/handbook/utility-types.html#picktype-keys)\<[`InteractiveQuestionProps`](./api/InteractiveQuestionProps), `"entityTypes"`\> | Additional props to pass to the query builder rendered by `InteractiveQuestion` when creating a new dashboard question. | +| `drillThroughQuestionHeight?` | `Height`\<`string` \| `number`\> | Height of a question component when drilled from the dashboard to a question level. | +| `drillThroughQuestionProps?` | [`DrillThroughQuestionProps`](./api/DrillThroughQuestionProps) | Props of a question component when drilled from the dashboard to a question level. | +| `hiddenParameters?` | `string`[] | A list of [parameters to hide](/docs/master/embedding/public-links#appearance-parameters).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | +| `initialParameters?` | [`ParameterValues`](./api/ParameterValues) | Query parameters for the dashboard. For a single option, use a `string` value, and use a list of strings for multiple options.
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to filter data on the frontend is a [security risk](/docs/master/embedding/sdk/authentication#security-warning-each-end-user-must-have-their-own-metabase-account).
      - Combining [initialParameters](./api/StaticDashboardProps#initialparameters) and [hiddenParameters](./api/StaticDashboardProps#hiddenparameters) to declutter the user interface is fine. | +| `onLoad?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded. | +| `onLoadWithoutCards?` | (`dashboard`: `null` \| [`MetabaseDashboard`](./api/MetabaseDashboard)) => `void` | Callback that is called when the dashboard is loaded without cards. | +| `plugins?` | [`MetabasePluginsConfig`](./api/MetabasePluginsConfig) | Additional mapper function to override or add drill-down menu. See the implementing custom actions section for more details. | +| `renderDrillThroughQuestion?` | () => [`ReactNode`](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/0b728411cd1dfb4bd26992bb35a73cf8edaa22e7/types/react/index.d.ts#L478) | A custom React component to render the question layout. Use namespaced InteractiveQuestion components to build the layout. | +| `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. | +| `withCardTitle?` | `boolean` | Whether the dashboard cards should display a title. | +| `withDownloads?` | `boolean` | Whether to hide the download button. | +| `withTitle?` | `boolean` | Whether the dashboard should display a title. | diff --git a/_docs/master/embedding/sdk/api/snippets/StaticQuestionProps.md b/_docs/master/embedding/sdk/api/snippets/StaticQuestionProps.md index 6ddcd0fcd0..b652cbc226 100644 --- a/_docs/master/embedding/sdk/api/snippets/StaticQuestionProps.md +++ b/_docs/master/embedding/sdk/api/snippets/StaticQuestionProps.md @@ -24,5 +24,6 @@ layout: new-docs | `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. | | `width?` | `Width`\<`string` \| `number`\> | A number or string specifying a CSS size value that specifies the width of the component | | `withChartTypeSelector?` | `boolean` | - | +| `withDownloads?` | `boolean` | Enables the ability to download results in the interactive question. | diff --git a/_docs/master/questions/images/02-widget.png b/_docs/master/questions/images/02-widget.png deleted file mode 100644 index 4ce9fda45507ff4731119bdea6d11ca77c1695ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95511 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 diff --git a/_docs/master/questions/images/filter-and-parameter.png b/_docs/master/questions/images/filter-and-parameter.png new file mode 100644 index 0000000000000000000000000000000000000000..5416059a6657521a9458f69d3e22c2dd5425d823 GIT binary patch literal 240603 zcmeEucRZZi)-XbJB7z`Vq69(o79|l85hZ#Ty$)jZQ6dD9M2%iX?=^ZEBof`|b@Vp+ zs52Pl8@c72``&YI`TM)$H#6Jw?Dg!m)?RycKB%cEkP^`mVPRpBDn5Uzj)g_!gN22= zPjDS`CGqJ@02UU>OItZPHAOi&W;GWlD_aLkEUf1rVs-F!HM*$N4Afb034-pj9kPc$ zCuC*|qL%fhc*@3#{p15bOa8>5Jl;6(UEM*g8#G2n*m@2VvGNtDpYOuH@=|YgC*P2b z_gw)U_yXZAmnkRk6d-)I{u&k}kS}&MGYM;1ao@6n1-p2!i}Qgx4KtQhI%!jYv$RtOtSHb3HJ7tXDPh46*u`TbE_>O829Qv1Bt@RA{>Kylz|)Va+~>?B2&_e!=3z z&tp>f!=8C8>M=e`srKSaDo5=_SE}X-CrYNC_s0}i7H-leafEN5kuU4vy?dE27cz)r z{Xy+Pzyy=oTvHS0lTi3$2V%f{iffLv>@&GL+`4E<(%C&@VNo6F9uxRNb@n8`GywB@2A&c zCue=-tOz_X?umROe(g-7xp)pg=R!wb1xFz#!q)nO=e5%W4O4BOn?E!|uMz+F5Ou>| z_6}$N2V$mjMV{WpXJk{Iw<@}IAF#xIU}eGP@-2QKM}0@~bqlwu^leFZA*J4rcUt53 zD;MRo>c2A*9-m*d>6SA_1;sqfzZV@5ar=|}eIgR|pW!j`(LrKV5t~W}*UYrc-+*i# z58p~LGIx`{+F!lV(L=m=y@PtW?PtMI$H$zL!96aSy)Xwq-KuUTAHGm5!y5#;ve@<# z2{>N^>Pi|j=w}PO-(fR#%Cg_U?!dNkeyZ*tfor@Z%W_P4mm-q6nRe&y=e5wu`A2@)G11dEV~K zOv&GR|GKrsAU@BB$3JAv?(-+ugwQWG*NHM>mtB-M%sWg2ABH<2gF1rTzhC>V^#p%m z)#6Q*LqhzLEdB^NW2fpV>f~EVMlL<$TePfO{wKjVa`T~$-@U}@m{KN5zfNPf#Oj%n z4qq7H&PiopONI&J<*dCr2BQ3ZOJooj}Y|bTLNtPTD^zqyAn56kG;#0>~ za~l?s+8%CdU13#>U0!}q_ug0-gZg3y6)NBVCn=N~hEOFNp>4KmmeR9iUx8Lbji6vH z-;>PslkWH^NqGr5c4%+6^_%%{7PCE8oV=(9G}bhtSYOZ)8wW^Y-P z!0fUzM6HwI1O=Ag-dk``;GCF&$h7_lmKabiJ(4P4%+QOal@Fhx+4p)Yt}d3r?FeG$ z5Oj(R0gfp%(T_ljhlJi>yzzRHm)9y=ebh)^d?PBS)_mLdnm+%!OrUQ%wost?{4FtZ z-giawB8F0_^WtmRPTx3iA3rA`HD$gY%4zmqjG32!eoy{gBmpb6;@+OgrFqW4bfZOn0e<=LvL!xQ;ZTcm%SGq)T0bS+dx`f)nTBdHg zls?e-3bJB)^jpd|*P-7T7Kq4xQaWQxQ-K5desb^HH8IKrn6x97q>goPKEHnI%Lvq;@#@OpO~PWqGFWeD_@Zt~046EgO^NVes>F0@`WCl60=gN`jceEHzzg#Vxkus)5SlWDej4Y(pPyCco(!wooK#s>(M`RX zl9~dM1_#GnSCz}>*U3`PGG2;qCzg2cC=Vat7$jb|JUl-nK6F$L%dKYDi769Ts8l~l zUv=v<<_R9NDY;+rs3b?fu?lJ@HOg*lV2^K0Tuo!=G%Q_u9vQ&@;I?7#+lsdpsc)hO z3*<&B1{c;XHot6~6%XeQXBCxf7AEIQ8r7kR~4kprNYym zJAE)ton?b~oZdS;KaxLXI|Ut}_T_TLc+R$w zaZQJY_QTM1!8qQJZQYi!l`7@ly`OrY^xd*D=$q=5PJ|_JB+w)x_*?8BSHCu}&@Ha8 zsaUHJs=i|_-t%>AKaT2W7$DZN8oE(6Drrx@$+{^&MmnYnI0Sf#ycek!@o=!M@vG4Q z6giYlP;5`Qi@Vcr^G;iDPI>v>%4-=G(F7I=YWK*WCe;q!xu`8TO0ZQ)jYmf$^B z&+DGhBM0Q!{K`%&qPl;R&q)Ds2Vpd;+A;Ns>hp{=G9#j%e9pQ^HH5E6w9n(CQwTVb zX|Ajr5zz9!Wxzk=k}{luBe^p9;BKq9EVVQ9Jj3`$$z+hw4Pp|)2ZRp9Lu4-q3JDr$ z92iq*4e6&T7pVmVmu>E|2t9JOTysm~S8Xj?I12I#>LZh+C}m`%F{Zd+{x1E5dQgar zfkwpfs7^9UJ1V*}`2LNbAN3jBM5oxj?GByze&?#Y>eq!0**Y)r{dNfr04SF8u^ zcY4`+;j>Le-|70m$*z&BY8x-{{9_J-1|+vMb?P2*{C4EM{SW)?J`BfMbA{zvXX$k& z^9E{qyMFqMRp-Oixk|aU&~k8vMSINm`R`z>ML|441FOWoB$>?%2k2G_Fj9OSsK2V; zYa~_+H12HLI2kz+Kk(;s;nmkVw0b=BF86&qF`UQeSgw=2`X}AbuZx=>n`i*WpZKWx z91R4lx=z_ll!DmcFH)6yUdZrKJ&-~ztugiZZyCf@6a(tf`^wy*+^pQCC5HxjkQeq^ z3xy#?9VMkEZTcEtSNo>A?EB;D;{e7AMtQp9uNYs=*3G({haG{rzjBpoU)S83d|hSQ z73@L(o}Le|Kc`tc=?Pq4jWGCO;OIa)sc&Lwq*e2|uH-drY5N0A_43C>fmO&t_z;7M z`wMq>%?@pF{$75;q-B-87mt2X{`ORA1A4JPKt^;-d<-ztHm%V>v!%7=i&UE88%MrJ z*iZJ)nxKkC%jn4-l6@JucOFmv1DxJxkaohpM&pSbVxr~bs%N@HvC zG;^@M7{af)d9>uH72(*zWCL_6YMFnNv6l(|nTxF04&gg7l5iK_-7ny7;)a(!GX}K8 zId8WgjchWA28pK4_CikfwZE09*1~64ra9}2ylS`71|fwqTNe|<3$t(5{N~Tc@ZXR- z%G`S7bMgFQ4G90$7h=WjzGn=W{nn zY7X{?49Aa;bFB0npSR%LR$~MRV0l(kV(ANDk$5_0tEi=tqlq&mhLQJn!Q~qylP1&H z`GJ>*{4=|VRS7Im?X}mWN9zSxPlvHWQMhXf{Bmx)561m>G^y`CqIXCl$W+jrqaCro+Pf zHO9hvfldGSu{!qszs|wI!V0m)!u{(Uea!dOD-!d@K>zjoT68cLKIXTZn0HV*&fjJe z`J`X_+ZcBra}VpWhMb}z=3B$u#nRFdXyfEc9 z-DUnY#noQwuCB5gvz(KQC9??cL*9pXrHPoCnIE}WSV^cqefC#y%x_Y6ZCqWQCHVL} zJUnba(7PHwJJckf;;^!L|a@U--_{cR;j;9tqY5Xg6RhmW84A>SW?x!PL&3E0)0zkvOs z>o3bax_X#|nysg$gYHvX0EX2V)T9MO#DpIGTIZi`{f6mZK(&CDE^><*TfYOnB0@sl66oaMcEv<3M_X5Efk%9Qbou{6>HP*K z%`b$Z?-$VTul`>M-9Lo*{nh^qq3U9bVT9=wYSR3FUE%lF{yP5=-__>-P8j|oX}_*w zL`|CL5#Qg%R+>o1vB?n&OBPG<>0?b#?5!DmAH&f^)Luu;1HHbuWp%-x(BsufMkh?uQsP)I045>Kh3t+Ykr^wkB26uS~*C_FxD8m*eKqNlA;M zpJ@n~-(unX#~(i$WH)v3=Z`65v9NJ({O2D5&uN%Q`*42r%j5qz~tN#U63LLN@-hWK#U)drXMEo!t6a;2&2>CDA^b7dL z@iN_iizDt`!?&&0|6A^#B=UdE{HOEwKT-K7Df!>I`zI;+rKJBSD*qFe|IifuPgMSY z6qO$<@Rf}J&NI7mhi-hs(LDY%A0s#ZU-*K5QBhPjTI$|=H*fuN$QEeC40PumgmUEc zk42%>|Ju9!aUsPHF;@`!-IAf+*jzr(&N)}H{x#_DK>l(Z(sPJ!96PLAM_%0f@2Hm@ z!2o_b)#$~(`(FYoVLaiCbh5yop&Zi0eczSR7uOx=L1ekZIcGp+JQ?j;(^Ws@q ze<++#06qUR2Um8B5Q9Dh2&K59n}Q`WHkI3;#vy)*~MS)YXz9SUds zBwSKZ+8n!;Nw#7E5p{}kn5h}oJ8Yc02y@*W6aF$<$W!SuDxueGRxK!1s!V^fe~kfK~h~{X!veHPv2NP z{1RDcVF}lS`8NjPDk^Ow_N3>4@36)q({RX)|zs4f^=CEk0LF{g>U_~eXnA1FIsl%>s_hnKK5 z>3+4SC&XDfZD@EitX)5SN9n$Df1WliWZ~34$EYz#P1}?f6ZWJ(#<8@t{5pS5zH&|; z_d(i2^qe`s&o;T`^@rX>DGjTa;F||btOMon!7Pqx&CxVIq1-G5(s)%F=e#QZ1^<6f zQ1}%=;xvc2R|I(nEH0Xz9L4w}-#Z_^tq!vu=S@xNHp9#9wvH=+YWuB6-;s8CY3zH> zaIz84WXI3z1gVrIA|lFhnw#a}-L1cDWoaqT%Pc$d1UwJuZ))-x!As4Bek z$56wM7X}5#n_RBiirW@~rp6kyxYviOD>Y^+^Vgc{$5SGsqt!V%d8mB-p%1lWIzBNv z(nOqeJidmej|uC}^Y)jv-Dw#E4zB|C`)k#g!(mRJyg0D_>8Smqw1=`{mtF%^*uK^SVlk(jc0~Gr6#xY1DJ0ZE>t(9!)c!$cZl>kis zP0;Zp>~nNy^LfZ}>$iI<#~j1B`F3_SVaCcm56LlnBgku&nM;Bbb8MVHZCkA@Od0Zvo2iFR(+&M=pJ;v>a8 z=wBMnyK2(pF&z^eeo?%x`msU&bF*~3aEt!6K!p`SJE0Ck9cUhV-Dba zVp?qW#5sm_={?oNmNCtiFZhhVL@(Y{R8iSiCO*t=&gf9eO|n%~{J_c@Bu&y#3fwV_ z%FbrR-*}OlSI~1^(5JDclzrOksJB36Uc%F0okF&v$4<0>?y6q9in|w##0hV(&A7)?Yi_p z@g>Qf7o*KKN5WD&W~3SHY+bP$>|xp!_RkG!{VKo28M}(`n@-=Sm9R*sWF1mlPjaJQ zSxvS&VW^xL9|K6H4vhL~kdD;MT`cI?4mVUE>^FlDk!ey5lX{P?%z`O}^PK9l@VW=D zCx#(euLF8dr!~kD(0z{%(#jAs*3cATREp<%+~jDzjG^?KVo)s<2tl1)ko&u(Mcna9 z^x1d3Bo}JhU9?w`w>O%%H#twKfi^!!T!3Kp+U4b^bGaq)3GcuHZ_k;yW<8l*?Yo;YYH<>d7-?&O2In%HHGLAutvT}j?!oxMC ziAGz)-ZIjci$(0N>g-Y=cR?-a5Nn$z8&H%~bE@1LJS(M4RaIm$VHwEEf%?+4TdN~~ zE&tMUg~w~lq=jp5Z?9R)&C{54#C2!-RjKgi;m)XBRd-Ub)Pc&%$Lrp?%8)0gN1NNl zf;O*ZPTI#?n0w;O;zsR7C5Bgf)7FU_Z04qwuO*3W6)ey)NZ0C=?XbUXP^}s=$av$u z{n=yXvEVWUK$q!tGFo_}@VZsCOa68F@dV!~J3IH2hDVIT9l2C%Rit+Y#>KP`Jr;xb zn@xR%Z_wS}T~8pR-#XlWYKf)PrsAHkurt#zmc#wvBSsaEa5*El#9Nqst;U1rR9*9` zXEfZCQ8pme!LWXhY4^Z`*;M~R+1a#4H8Lh~c1ic0DDsy#1nw*-@df#*WjKM21H4=6*p)Da4TyXTxur6B&*cFMNl5%`Eq zNAg_l!5%_6{&vf3t%1PYk2q$g^sfCww zz4~c&ZTD7I;+N?!_sc2ONvfs{ocdA9e)F@i91!Xy+|7ydhVOi{EXorkw`!Y+H?Cfvs1RDT4Z=)uQdcpd@g87qm{GBg#-3to}$r*mYvgCy=bBuGKuAV7ZqeGI@ z=y)!|@hOXYW4F#@PLJw){ZA5X|E&qdJb`>@g#EDoRJ#_bc-gR>U6FPfs;}8>NNld* z+ROB6`*A4L54APP@&5h$p#t+@Cq3UG5jI8jzBlYOMRf0)Tl7>TN?5iRWDriB8^s@G zD~VXys-jdl-wYL*H<9d2sXRM$;P|jtl3cB-3^{0+R^4#n8(iuX{RV;w6@$~pW}6Q| zX9FZWI{>;Tq3*kd}=~i$TsyH6ZQtc6Zr?2IYqn~S#Ta&L8?6m{E8}$otI-Wo=t0e!H_%AL ztoad-ZV%-Sb~P5iq!n%*_(yNSs_dUfJozygH&WtF#ltHX%NM7E_=V+OxZqbG4=p^X zGm~WqnO49Z(%cjo|Hn5ei=MnYnw%@PFD0TwjtqP*5i4N%8Dn+Z{ru~8G~q|PW%;6{ zb(fviJl>_9vgR=n8`+jHj#ZPAoBH5fs`>72t|wIx5Xw3Dg@;pzlqRApW>TOPSFxJm zVH+Myq>H3t6R^`7>0zu~c4S!0Pc>U*dt=<-rv~b1Op=&^qh#N!k}!S<*8^CJ=%lcH4u-wG%P7Gck zKV{UdnFvUpEB`1MFfm*@2gSXokT}q+?ZqqHmdYfk6@yPsbS_8XE-5T!H)>0dtm^rE zhku07XJd0Kr4W>oY68pBpD2XtD>kI>R%xsN;ibO0H;)j?v6}@h=#p_X;F-*$47qB1 zExQt;22j5rT$i}70p_vg5;w|~&Y4ShA7eV`*l+ZpVuHIWME=~A4)Vy(3pVugDO?p4 zM(*#nH{j^iRhPG0e&-jwcdw7I@Jn2rMDlQ?kBF7EEPY$tL)HTa zgS}M=k&MMCao8b5dOAS05r8sJ+HAX(_wwgPLk;aPdr!h(+qrg6Pfxtb*+xY84BE=` z^jqNd&Rx^M^SFBN_FEjg1(fl=Ro&ua5z5szCDDa|hDqKl)+#Vl?{Iv+*P;FA0w2nV z2`UDGyy7=8UOTe|cFA|-w1SrkUPGjgUF$o#=B}+N#qc{)3l5fT?Eq3TpRtitR-K~( zX$YwMOBdxkUTJ4plNK*J67M}Gr|x!T17)@RX;D?~*CJJH?Aj!QrLcOR@3(2^Cu?V# zwYNqxV1P!?icGHjW=9Qi+@{p=$c`26@l$OXJFX$AgK__3V-WZjby^ev=J8ScOBTyp z*>hZ>*Daer@JP^m9ZQ)+N zm-WkNf`HK3ew^yp!`FD|OKo?^nSwTF2P(`P4Eb$SdQFZqhWi*KQJTa)WK1GYB|J9P ze3;FKM7+$nAoMWY(;(6tr-Jyj3QAiXqYq@#qok=J*)e2uE*XhLg z&q;;R44Vy!k#UF-PPxU!snF|enEkdWoYc9m9D;qZ&6FlAH^nIOt$R!WH0GLjs%JG0 z%~iK)K09vlXXv(i$2*M43^*CTc;V7{?xGVe3E&!gpJj{JaE?zVo@_@?L*slKlL`_Fg6e{drWN(VgP6m)&{y8FQ@A43&tR z7i{|RfPkQbw-~HILrY7l(S7|^jdCM;>rS0@kA#2wVb^}QJwlA>ljqSt;tgxe{)YTX-k8+nFCkWJgL3Bzg}V4PXcjIB&0 zVBJ0aC^hAK6F)ZP%bJ=#`Fj-n);Y!*cM z4qlYamH$l4k?RG8gnE><0da5SC(9ONoQ2%)Lw~-5%mb@){=0!p-+mpb8-4-Ni(xku zd>Y*s<~*fpk6|bvE9zyz+>{QfE#F*145yUf;(2Ze`u+9W!n^s{RHRKdk3_Jiy1Kyk>yqbMRVzvplPC!Ra#9{TgVH34 zGNCdSNb-}7?W=vipS7;xOuQp#QlV&hy`{Y^>9Q*<#`~(B^2{l+xo@i8gMkuopeN zUEii}CQ8(;B6J#kvZX}e=TCXABN3a^aze6Yh)r&t5|7y;mjjhVbcf!geXz^8Edpx5 zO4m7(o6$+p79!Sv1a6qtkg&>@WYI8k>L`V%U}?^MR88xRf}8mCp&0XHGmb7Sl7r=S ziVeAG!amB+p^j$rw33g~_V$Yqohp?)uqMQuzLDPeXk2Q{W>c+Ig5RxFNj~5lT6Rq9 zI?oXV36*p_oDtkY;z;>bnSGvkF-W)vVB;&3B}*cg-x5T{2(Jbbc$4!M7qgaV$;rGy ze^&YFfT*boLrwzWDdd_HUYI17_O{#|cg6^eE_V*Ffq;b!gMY;bzlr8uB!d6LDr#Kl zcZsV^qx8aJy(%Wojw_$zM_nuZCehjVXWefC3pNU<){+Wsh5HdcOB7zn_d2XSxVXZ{ z1#MxljGr^-1FcICa8sXDfl5F6XqyLU)&B*PJd<3AwFZOgr%vg{y1KezmZhn*78*Qy zzElZO_Hv1B2RS#Rk5#iFgsN7S@E3&zLP=k~+}A&Uphhp?`Id6^0bdI%?B%XTOO@?0 zaP<>svsP)M_$Z;z&UCdZ8G{7Zr8QTock&d*Fa0(Nh7K3n3ij>RBlu1`NnV-omNoP1 zEPoEGu1ZR2m|FM@fe{^gAFOV(=W8tY4y8w4*R{8cd3oP`=Clubmo9TuHik57<3~?0 z$(PT`HR71`o8jHloNr^$RKaYI$PH)c_p?A*5<(wuI}Sx<2OdO{9k|98v+v1HOkgXH z>d=no7?(58BNBlz%AHDlmzX9TXGpWC<3!!)2~ki!0(B~FG?)AM6+@{{*HA1wYa(CE z`FZ82h;X_;QzCHYlihHc=xB;?N*Q1_v7+Z&!)lyppJ{`4edN04QBp6Pm`<0EPwy@lx>VJr!^?jNs{%_VRMf?hEv z?Qob{m}>mC@&9-9;}aH@wE3zgFdZW-BRELPoG7&gjgVPicfC@k0Bz*iGL@Fxdvu?} z4;qO($6vVH(ZM|93$K-w@2eYhgs%&Ds`=NC1>JRmc-71~Z%VZAj!w9G&5SW0#KxxH zgF~ss1DI1wzx5I3dc&<{d}~dpxgVwZ_63`uDYpHs{J}eRe8Q-46ww&f9scY?eN7nZ-~ePBOd|0hGeEuMiN3{YQ3iX7gq=Z|@r*nqTvMBF^kF{Ib~!X7+RV^~fLVSeku)K7&jdPY6L>ZSH7nq*66M;6ohR~tfmZeG)8so!gqx+_+Mj~p%=NnS# z^=)Z%yW<;aQ>RDU$`gVEU1oGR%FF}m2o7c0Hr_w4WrXTuLZ??CJMo8C^{pqbHwOzB z0B&L0s1zY)JjN?q5@2<60QK6J&s`J&ss;sz%U+c~_N~KP#YY@X5|sUbq*3z!;?}f`A#li-7(&zH;;;P4ai{q&~%P zTR;CT3NnEkcv6P@=Fi9@ z5}F4oaLrz|qK&tF%fjU;!)gB%g8&=q(2uKuOB25^d>XzSd(2O=O)Z{5(GtFgg8>U= z!S?0z^DqxUghCLb&9oGUKVS-&AQa@{eYC|Za}j|M*-_c3aAVNEFo^KWV6^{Agz@Hs zWtE!1Lc!NyR}}m)@yyz|`Mb2-)=5iGu>umPI;B8^hzU?On*83DXv|+)GL`Sn`|=^1 zbwm|8HtHyym>?Z$9eovIzcTN)ahni7XHgpux85oLaTNC}ypzSf3gyyc9_w6fU;B;w zT)YP`2lNjSzcR0@auxHyAx6T?5FocYEjR!{A@Y$3IRPXu`pjP96tC{>x5?t0cjVA%OdkK>`!H#4t&kN!|;Ov3QDXES@_EoPzy#035wzib== znl#?KtnI#uQZk*@;Es}pG%9s`A~T(Jb_J+#gP_SK6o(@n0oP6w%bEw>BJYs?UR=a5 zJgUF(`-Oi)0W&f)o?jWK>Fz1x%O5m7w!D_TSk!WG+hzeEiA>yn;A*vgkTf;pVaVYz z$6u5yuYdTc_I<;9w66d0l1%8197Bi+^;t@l%~KsXDy4}TC`u)vaow^ehF&2=6bn^! zqW2ZHwbagUD^O?uZcRE9GHG8`QP%Hlf{t=G7IB>7v>$V_uW~Gbl^d~#)AM4KA)v~) z-1Hw9lAc3=kz`KmFu%V$0l#+>u4Gv#NfuzLI#UtccBo{KUT$?iZ6P21I(o`2%GeHI(+&wUURAaL&21cmou1zSn`f_sn=QiR_QB- z)24#}gjh$>r4aI{VBDt47%b_*U^7ylC#6VtA281QIGAkRnqx2YAH?xTHby%nJleh^ z^n3RICLlke-;%ZiU==L_6GE*X#|tD2Cn8hd({#ZNuCQPdz>2g}YXvVXtlhFC0zFX` zW>%METsxZ!pa0N-iS`l52|-ng zQCV(bdWDNGHFa8Sgtnve^N}p0C+}7WH<#Won!#st&>L}+dJ?YB2{)0GxBmglfoNO; zpX*`OtLl)0YEaVMeeaPH^BjVMk`?JYLwxCT2ed{$BBw2LV_KYx)DBABNfxmlJx zm5<*DL_Ox@<0G$&&@RzegsZG$N*(&GCp>P8s{SW5U6NY-xc%85?yXSP8V{?JzxTVR zR@9m?ZN}N`Suo{N())!>5s+>EBBjcg%posNoh23b)IphD%m*r3fv;e$E8 z25?4oF!YWPDkr)dt*-84zn(~80`3z+OAMY$&25#tGTY(NdCS zgEG+>m2?zTw_bYOX__UT*T{t=&yYViBQIy{Xw(oT4m|y#A8+}ODw_Gqf;2#jgXu4k z5gwM`G9ywi(;KWlTs-#ru^X^o-#^VO)u^E0{N2|lAPrM1egaM7cCq@*C@wZ|*EAJr zBIEml_m<8Xw#-DZMl@xPN15YLhmVm*pT)Z6yE>kF2Js{|j>>}+x!VI})=JX1PQztO zaQYwgMJ=6tYw0jZe(ljf=)1vJ?8F~Xs#3snKz&q%$HCTEKC(CA_{2k|zA-+V^{Kxz z|K+s&$!FJ|c z*_czh#Dho=Wab@_$0B)J{kr3(N>P<-F#7$KlB1JmvQgo~bz^^Lt4xx0YW>@jwQ^}s zKeZAbT%1`;5 zM=~Y$={CO*JPU$!V8Ss12Q-&$@6UFGZTIb~xEm`R92NNYPc~kb15;|g!gr)Xmb0kn zvx}P^q$?P4)Y#5E%T=M}4#Yp&(;^@BRcSV>@|qElsngTB7Wa=`drdezg33!$VGo<2 zP;s^hnZ4{~niRr1;XWmY$r_#JqY1v{3y@=^fnx%rvpBm*X)7j`V~K{IL&v}WWa?q4 zH3T%5M%C4|6JFynZqTOot<#^%WAE``Jb$^wc*j72xgD>&kK@|`^h@`PgKFlp43gX}tle|S!7mflI36hpj5#T*wVjO+OZMTI(u(x;y*=*RPl$fiz{AE%9<3^K-O8a<{^|{(SK}00&)cKFDFd|t?tI*kzjlK8al94aj^yl;(wa|p-!n@*usw|}66tC2TdEx55j?xB2VY(g9T1M*i;fzb ztu;x*War!PT-T8NzR}#Gu3flzJ6z+bL2lkH-173beC89E#EW(=N+RW$J5~ z(#3wfrT9MIxaC+)S3*LW79n}krV_-gz*hDk?#+5L7dRtW8iFy<&+;D+>h1&9J5ImV z47(haldYofRym))<9VO?crb3j>kD z(alITxi&M^*GR)nzVWjzNK=E9*<0>okd$2G%?-N9qRst`qr2|$VeN&f3y+d#3o8S@ zx9^}}vH=6mNDlQ{x7C+F3Eu2nOm?S{%N!G;mc3>CH~7l%im40H&`+uTPsV$k5Y5+w zOGTY!=jh;ql)u-ccXgO+hHxH3+fF}AT6B~aULH@o50lg*b~ba|HVZRYM4e{t@j=eg z1Oca7OMwm_x)yG(O>-Kh9bd#30(Q10@8%6{fWaUQA|md>3P$lbHr1ro9sl!P?o2tX zkfPZ5_@0G(9BtL&HGx<-yaC5`+WVcOMur+(PtxcdPC5!7#r!BsIEsiku+S`HwFTeS z5AARY>^oc>oSaz>+$Aw@Ix^(hDW`1R&>kvhxF9?Y~Z5b zBGrO0rnB(tTS*@aw4TAhFt7Es)YG*YvJBNC>2jM?Jw5+nXCo0zbLc-T;hscr3Pz zR7{rWp0n*%)h82K?zH37zj>LoR*ndmDqFSgauj@tp6_+vUvsz#4EXdU(Q1x<`|Ig! zL0j$S5gqsT+50eZh-k;22)sFY$#b)^ACvA)9zEoCP8I~^_SQRE%_qM6T^@~!DJ<(9Kl+x6k0}&97)W2M&i=!L%g4@hl|PKV~T691k5I|PF7<0#1>SyJ4+!U z%QGiTU7vxaL+#*b-gBtnHV#Jy9bzdA5>gM zXVV7@4XW4A5YT4A$ts!FW{S=n*ZDd206E`h;Wc|Uhmn7#}mNs6sa$6Hh zWoL~TwBZWm>?F+^_6bl;&24M%@SYd!(fq~((M=52{&L#^3F-+3Ze^u9DiXkTKTLR? z*`R0>g);*!+-(e&9&a*9f9!+gun9H84ZiDTM(}9;eS?s7bzogWM$E}#Bk+_YxQ1dgB+c-8{+O?0$2ePE8%rxU$B##`Z|>BJ@--#dF!q{w!st>aaY~0o%5;hEKuL z1&0MUg==N8Rp|F?>^JNsOPUc7cLSdFy~Up&tKDnY&hYfUx|ZCLOyi+!CylAd3b}4* z-IkmB)%{##eGpQF=@)w(eG`Uf2vs4moO9P>yhd!p>^lF}Z?(v29xoy6_l`9MCR`s* zNlKY6H2rRn{N=-SJ;R?;a?)Njy?M0cjM6L$;c2eTm@Uh3LO2R|kK7n!>4qqWe3%2g z3)=(0x>qQlJx>-Xk>}Pe)vZ?i+Pk}gF_KXgRx_UC4f>-lqe&%Jeregc?23rAM1l4P z!@0^w8y?&`PH~tP;`M~VZ@8@Z5{)uW7eI)8Kg(o2I$h8Z(|qcix|e9#C_8#Pzi=_W;ZJ9rC$$ zJFiUNQPXANP(y8PUb#<81K-ZG0kHYGQa34S*!%Cp)|Tk-bC<2BHNcX?omfs^^dW(# zgL|q{Ja6JsZ_Krj@UCxi9c-MOgW}TL)-EoYMxPXLH+UZAdVJ;EEubF^3l`a}=h%F= zoK|mBXjKy(B^AS3s?42tdo5tgY|`^MC7Yu|yvIA_Xf!nCx?;p~Z0ACgnPQj|kJQkT zrEI)A^u}UMrTz(Eb1tb`7tu*#d7x+esACY-);H9*o<4 znNo*U$5G^hzv;)V4-aavx%B$j1}vu0?hOqe7F80eUbkyhF^trJbJff=8`0yIK)-y3!l-j zmhsp|F-w&SCt#)fTY2Uov-^}MM z5h*6RC!_Y5-T{l2hY4PiF{vETk4aR?2l6+f>7Ix)J5?J#8Q!hhxlAX7Zuo&bUPfljP_li~gprP6(#zf0m1mf~fDaM& z+lOVUc|mW_iEBQ$Cpfl=iKLh_ZM%LK|D3^C58EOy>5PMp-h;Ia;s`OFS>ibQ)f)aZnaWJU^R{x}o$@^BxFvofpS~M5 z{p^T%z%?+ss7zCwEf;5>#fR4`{={IUVo5JN{JKOSp7i#dxvQQL$ApXY@eSm*fylEo z8)uCocWq5%@p-zN-uJX>$%zf_9cmT5jtM%6vVF>z8V#| z31jPw=u=yPfZSqgXU_+=mW()X*Jjn`q-RzJ`Q|vJK*!`Q`=4l$k6PwGX$WuEUZN8S z*BIjG&Mw&M)wX2rILK69n9un=7Z|!mzPC6VkE#!5c1xbDKbh4V>N$ifk?Mx)FyR4;qqm0-m;D9c68_#|!2Fv}{Th?)8Ev0RpU~XQZu`2BsE^?L4 zEu%g!DG!Z+CiCDMW4Q}I6s>e!089?tUyks(n?umavbO21dBHSbleA3|t)1fK6NSJJ zDAjdMz4fZd%%d>rX)k^0Sp(B->?cn12S&qA=R}$dj$ihg{9QQm z)bl(VcgFQUA1x#rt*o<64wV7lO}lvouT`n}_e-?nG9DG>x)%xv*~b^~1Qql^ETBfF zgYq2HClCW~u?0Q`vRM(*z)4`?w=$Ur-7Z`qQzxhS9dCwp1-B*>Tw4mW+-Xb1&|6;( zIdE12gUnEw7c>jUzKbxR9Y>n*!t!MzXu8?;dof)D>4*q@U<+?g)G+(nrlZ}dJdhET__nx_ zD)x)y96ooSTQ-W;!yd3>JD$W9RvWG)%A$5@?#eel(GR%Yapec>jGv!T534phn4>;y zi$=5_Weufl8lXxM5W4g+RF3R6cvDq8z&bTAV>g5SHN*zg*Vfqa9p%H!oy&4nXk#=* zFd$z=%$=uP=>ZCi9^lcDEdn(dD4X_6G98D5Ugh0Q4UWOV6AyeZ4fZ^vXaVfv1jypR zdP90=c+_m5QY|d~5ZIV6C{Ne|9aX-wQ(QRbYwQ0GPgr<*oy>h|Ag|OsF#WVCcVYT3 z)7C}wU5d6(UGb$ifhjwi{pW_YRG-JKm7i@Z?~%Z&ysgW}+HOshe^cYBdt3y5OEy@l zB`If%arIxBUHv`N-*T9DHQu)7iSu1MJvx+>ENiMz6G@t%*|O*OcpWX|N?S~o9JvtD zn+HQBgnjy!q`iMu29{=Pxj6A)E0NP8=z=s|Cy_aJuGUEHlsa!JKprnMU9teJl%wFr zJ{?j$D8r%$7iX7gF(zj%PU2cmd~0K%B2Bo_t<6QPyIG zzagQ#3IIVm@NZoDY-9#8kJ;1c=7oy{*LSDYtf^GOa zp0)9~gT67!oY|zF?e&)>EzEIqZFt3NfNMW%*=vX(HBhr_soNlkdz-tL|6bu+`1Aff zbD6X1vs3F!u5GTej#DNu?U41XfY;s%$_G8h0a#k>Rr^NOQSR7Ac5upbQo}t``2Way z?`XFBFz){@U9@QH))qy#wu;uQ6>YUuB}VNTs#apvCPKAEON$PB)7r#}6@)5k#fS)r z*&>JtA_3?h>x1P+py-A(D^*$rY);mV1 z0oVo23D33W-;^88Ml02S7rBR0lg5<(TFC~@;V7AR%3>sEfHEL(pq^JI zFioi{(BYHF_IgXU>EFegOe7)IDKbEaRrR1BP;}X)1ei!9UO#SUCORDmZ+tNz1$MwLc57#)L$Ji6DM2CzW2bv2MQy!*{+>^ugl$|E!)mU`dP{o@r@_g zE*=T~C+Ua?-v=@yYYc7j$-{$iQO+MA#Sx(c4+Tx>+ z0wrwNM~?eV%q1v`Ti(}gysZg)!eo%AZd`ekl8G{}vTN(6T&!w+Q9nmA2601;*UKlk ziL$CILBRI#Zxm&tpYln;WgQ=l!+tj|?9|g0Jl)+71Bq2e%;J#oMsTImyZ?mX?qo8=NfTO z-G|O7<7>b>PxOC^H<&kTlz4_=YjGIO?IQySMY&WKrMdH@Vy-7o6me+@clNg(Mq5DR zU?JUd>74eSYxd9Y`8y9%xpAtg(hk=v8OMYy%{9s?&3ixJ<|c`|fv!=~j2Gj~Gqb8z zc6c832KpqU?%~{@Pp!^t1c!b3*Aprq*$^*Ka@olZ~Tk0oX#r`tU*jhJ20z z(l0A~8$C7l!$0O_Itjcrrfhg*cz8Op&L{o3uq%58V~%wT+@;II4&;iJHt9}a^merphfR_Z_?m{1$+NQ~C8w79g~9K2pjad-TNTXN~Y%s>5h(g6%~ zPq^qD{6&*br68C$_nK=HRp5Gf=wp{7#z-HDqtk+Ss~FLxRdEGD>Gu;2a{>KZ(OQU% zzcZ=90cE$`-v=Q1q}p1p53gd>Ogp!l6aAK6nU;?EllbaaZHm(?a`>PY=FSt&ErE71 z0ScW!2_6UD3bC{n=<|6-iB0gSo+AMz!IfsL`AiGJA7fxqDoZD?Do6ZZsm5cPx;!iNs`t;b$a7zzv^ z{yHiBEfl}QaQ4?)RW1d-b+Hk-o%X}@!NmT(yMJrxMPnYdd@&6Q2X5K^c~Q^E1nnUv zDBIkGHh)N1z1=kg8X8IPu(q{cHI4Ocqz2~NRB}xf+(42MVtd8K^>{GCzO~S}Av1pw zA(95Jvr!99DaDrpV_~?CGOw_cYq{=KSRL1pU@du@LjgS_9a4@pBxP)&>UU>`{v_tv zub#isgN#2$v+Bzi*1f5KqGXsZy^LuMbZhngxj|=Hmditu7czKqYqqtd#4V5Oe&8nT zrj5X=FZj4l1iM4xo*2oAf9d0Uv!}iqp7^m!c^P1jY~N5EpToSXg{6FuJLHpQm?$?% zD|qmisnm8>`5mz;tAw??kjU6mDaMrsi_Q(6-T5U>AFql%)4CG_AYY0-L$7D~S{}xZ z5a+A-WZTEwZs3X=nZ;p~3~ks(`^FA}p+3QQ;S)bW!a%b+9fWoc-!sY@e09)JI6xrk zeISFSdbB15(-Q9g%csd|Y+T|F+y0Nd@b#Z%;OCtWmMs{0`Da<9Ked>uwq7>hp6JGZ zO!OhOdap&+myAMO7aw@d4E;_s3g_sL{V)x)Lgq)p_j5sPtWTy-`%XMKlEARN_&c8J z`pAgU@Q2XTCo{}3O8Sw0K`=@JDcC=35G6yn{!zm9z~La2^+or8HZq%Bg|p)D9zJy= znZqK-*LI(*+witQyuxP4qH!0gxnuB*{3+#mqBlrY`yweURbWGU*1>o1!EwX*tPVZr_p|G=1VpL=j1T_+~<)ciR~<~yGQW2(pR;mAEc z(Br29XOEr;rz^n@I-NmET@9Azf0?tv0BO)(Po#d;-mi}hjdS*5e)Cj$*QVXt+PJt- zv8%AjcUKAZr6n&@vcBCAideI7J02=f#WjIl;VQZQ4_~7be(oB**-O-W^5hs-`8!>! z7XAwrXAMIGx!Z=5Dp5Tj`>TtCRMGpz&x((LnFDdT`zw&5ZR_T_O`2H9I!4B{eQ#1e z8#@kRp?M$h=B8gi&g`PVOw^GFZ>cjr;TDo?TyEbh(`yz4jpYkd9mVZc!&@F!IIWK? z`^I6vpE)gB0)-LVXf@_I++)`&wh~wLnFtSGkObwKmj86nV*B;=$)2iAC^vtIc(c+a zG`nzHDj{-RO8yPoZ*rsS;HTV(Ja%0{^GU+%n4T=x*?IoKJJY%bPdB_wB}~c%@kLSD zvkz`*fJ2`1LP43yqSa^q@R)wO%L-U(7>s63m8)xX0%jU4w#Un|LW^pPEnbd$c~}|6 zn&9r22&T5HlHOnhBqs3UyLL6j;1Kd@S1Z~{OrmiHy$=?ih(>=qbUoyyt*ec#^lJ|p z1#pM=Y86Id=H#K-ks|DE+`acz3>MvVa_!>-GqS!YqxX>PW1K+T)oWW+E zI0h4W5(ujMet9!=#LmCr$F=UgH+ky7*uD*%nx<0(Qb_Xj@z~c6nSYtrHFR1?bfsyv z0=F;nx8cdj%7?+3M;}2T+&2viX z=Bu!wOGXiNx8jl{d*b$1SElTG=ws72+WkqrRTa(Ox>SHXQDm^o?j5cl;59Zw1DBMXtx9?shhm z@q4s<6s*yDHSNmDYz=!RXl^!_wvW*Fx+y#Q64&BEQsYKW7p_=Mf_o1L|kEGGjFg>@@Ruc)$1ig)4)1ooj1vqP4&~~ZjI?-V%|yi1RP7K z|Kpz5F?)kt&XK zKym`%@g574#}T^>qV)+%S!(y{))0oc*J((X-1e2$@%x+TzvhPwDtRDXIU7rEpWG>| z`f7`{@wm!P{JgjM0}%2f@^XF*&7k0S;b6NFlP$ zjpWA=g17&0BQ6^$H5-@HVo<%DQ;f@!HOm{Y^wjWO0ocHY9Sspc9O|wnEftqlT?{DZ zdLxoMlwBWnH#MoW^DPw}@BH~#iscZy{gU029r54uGkkwVGp3f^BKP&HDVtGmbLRus z41C-wN;|_Om;zma`cdA_ebtE-m$!Vu=;bE;>oucN9kS&UIlYuc%JLR#xuzY6Ll8#i z-SoW!jg0FT3oCz6(ABM9d;86(Kf2uD%H}tB<83ycL#S>`Px)-PQZk9>IcZESZ78~Ovf zryv19)@I)*;ZHQW(}hIU*CK?QF!Qru;S04o4sb=CR>HG%u}2rM<+tv+HHxfnH9@3c z8rKfn8ZgtG){QdavhWF(fTQ;Jeu>%$ATs&BfPWZysefmO`QKJw-+LEvQ=vz*C;g(M ze}kn(?iZJ$f>MluB|sVRRq3F(O)msP%G=_L>E z|H@Uge}_=D^5;?!N0!zwsm!Xs0>qU&8+gxu#sPSzFcMN~0wT&|4=e$dugT3=Z%J+s z2No}GAM_RE@4=EqGL?@+Ae$SV+f`01UpaMx+tI#Qxb6S(_@lPQ+N zq3ixOMZKb>;r;_dwP8|%uZuV75j+b{u- zx`D|+uXzk>wuDO4QnB*)k;YdIJNDXPc3wHl39}3KPOQ%ak3>F9vgAFsBcKq=%|MO- zl&y>G0MAk~P%~2vA*(ifJ8i1!(c$a$8Ip6L+J2t~!EAu{pfSn=xc5-EV%_ne%6jFN zyW-S^EB~P+j1LW|+`gNBVQ9e}bF2HmOiqW)9Y3xT3SD|65oP-}lS6we4?S1Dg{b-~ zNwY1FPB^bp-4l2@v?#Ln(ibTH7YtLq6o@kjYM-c@ljAUu=U`FKB#P{OG{sIKfIgZw zM_z5kLLTX3h)W{sI<|zp&&MMRyuPF@y_ z1kaP>qDoyuC~;+&~PSCx88IIOhbroAsYcEBRm(-eZ zDLDr~cnY-0XE%}U;R z6$(f@ggO0Qgk6%Vcj|08ep^rms%%@LIu0#S{} zqC?|$gM+`yZMRfDTp=rL!Yhm+QN>mw2DR!SkBLuc8Bb!4YRpi<{IIo#86ZQ#YY6sf zh4!}%K!#?^5hcd#QxTN9iEEQAE>t0!gi+tLii`?9adx0}FJ1@Vku|00f(}&Fu}O)x zDeCYv{e+R&y{!~EVC#Hf0qg$t86lZex86dI7~p!-L?R+F^vtQl@?X9RFKKhw1L!*& z%-}xmgm*<16lpHJo^H=I#^|3KS^ppaZFqMu#%;~qB@YR>CMbbas;zM&#j5M21n|np z=Fk-rge6a|`Pm1#!1JmGu7;TxDRNdDxBWX$LaU3Bpc$HJOXe5Hp0VA^g ziVupFfBSCk$?^O@UYNW!N^V5AS+T4?&+yG4g;Z{xQ66?#!Q=7Wmg}c*VRrl-|+<;!d_Kj$n1|n*{jG|Z~-RP z;s`*9D3S^ObPcT%oLvzI0% z@Pgvo)6Z{+*&#X~Wf$wb=LA|O2+L(}h>bZAm4l#xpCTts-xlKpDI=3efl$_l6FTr3 zV{gm*QS6(BA!JUr z@7aWj(IOXS&t8DJ<^r$eMUfz}jj6#va~m(8iXleZ@G5Ji@-GCwQA!F$1sAfR4vFb8 z_iyw2YJcdiL*Kn}YKBKl#V_{DI>m6E@_bqsbax1qkqvDJ2wk98oDU-)Z*xsZ7ZnaG zm3WkgfD`L$iv^%-5ZHzQ?C6Pvwe9*fo+zF?CUUihU(u5C;2n@}b8knbl8`nhpQ5JI z5L@2ZG6a_GXfKz=JiPAiGHlFE*gS1n?>NLBw46KZ_b#BWisy>K5gEo)Sj)lB$K?>cYo&8_0E$NyW} z`znr)6hkG*B{5ng8;N>7!RiE!OPivXtyFO%M6t4gm8*TF`7J7~jS($yC`Le1M{c9I zkBjpDw&EpjD;yBEx4S_9p@ePT>xSp1Vo42ZETEp@m(0Q9v4DGDBxlt1-|#&H9Q^uP zJ76bG^9n7#_3%Ux44NPo7G8Q&&u?x9H_#S5^mzs}q4@5F6ZY+RYPot+!k)yMh#6Tfv{gNG@Jm94D2prq3b!SJW+v>cH- zn6ds%H4-xItBy=?(Id;+x7%VIajlv>!3b?vBvfQVn8?hGRMvwVKiKI zjbqoHG_T%fdn~x5YE3oWyyhVVuZ%Lh>trP{wyQ$@(c2Ktu%-s~sJ`559f}_N7G)#= zMbFvM0Ku7jFNZ|Usj|j}3pKy+SPra&36n0c*XH zJJxsdgZ%7Ca!s?AhqJOIi zzX*=S7pI?!B%Ye9bKZgim{o@pj&lu1O}XRiU3T1JNatZ9#RMd#=2BNoCW(Q2ZF-NF z)H(clEwTX5a{hYX6NmZF5@2TUR+y?J$|Wz5P5{Z%iN7~y4>c8Q{rpL>&1NmSL z-<%6`Y3D|6xf| zswD;X;SGmq1z9u7yo*5N^>1)3%-)Yav19oe)a&a! zNbn&ZvB~KeW!^PfC{aBsl#tLK2Hl+lW2 ztRtq$0mKhwYXckepP}b>3yYr_{6nY!^*YzWEIu5%K2ipPsdo=>r{!$xW;gxp`QQ>A zESF0_+)_50q+VCNK>g%=S!TVoH#z5mv`s!OT(3KFdLna^^8L_Fte`a~??vipx>$zi zDiFR`1N)K<*Oo=6D6@vuW53yp+Ijc?J)xZC%zD|Ct+MXHwYDHHB#vIon=4mMF#MWo zxwI!}(8W~!v;{Y&WQxw~-HseSHt%?b$3(h=eRa+7=COBN3*{k}#u@RQacia>O6lA8 zA-TV;zHH&!E7moFQVoG7TS^8zQ8C>?J~nV$0R`=?-G3M_b8wgQqR{xVpqN?%S>%VQ zsf~pxXRY#HNtc&=z`bfKYZQHVgWvn}{EV~oWzxI$|D@Hok~L?8)xvka&+Sj)4C&BHd8PU0ms9GajC!3|qkE*4 z81%Xi4@UT2Tb39mEV;`K>pKvTV4^ zT5*ZPe7xWt15%Fm{BlM|h#&k9Ejx7JWiOhy7CPrNI`a1)Dr4ky*RkLKZBw79og7bW zF&O9vT$8$OeT^k};Vb)C;-RUS^bl(aFzoz9 zFoi3X&GJ=OsS+78N2JmrZYagW!7+To3<|;2I}P^ZqiS~&7{dKKWFa`8)NH7r`jz6f zl9aGdE1~XBq2yet-&{Y9T4tK#lhW}wy7+pOjD?R1F#`3U1yOx$b)*xv)H7x3GFWm6 zthcD))z@U}NE^)u(yN$}mov&l8s!=eR(!hOe1n)?i?Q5u7vdkwI1+-Wl*+Y2fD{ zz6Vo(FFD2f|Mc(=_!*Kwv6mb{kwXAgxUU5Hh8?_Q#C{o#h6p zs+m$RX|YedY|>45KgkRU@iur=V;ZiwY7y|6;&qK)_*Q~OskMWT>Y+ZaA2B<#oZJyB zRr%F^Ip!rnU^zC^IP<{w#oH(*@3=d)YZi-+Y@;lm6 z%&wS}or$ti>KtfQ{H%4OGHfkGl(g4bkxzW`wz8pgW~%P-mltI(z@T-ZrLZfFz~Ud@ z%>){&Fh;IRdMSJSKUNVz{rku6N8W1y@-~OHHZ%{L=p;}|_VVckdqxEZ)qlOk77?S#C{nQN7kHPR~*9cj$ZiB`A+KhAp8-RW88IcAZ-p?zeYBN@C#drFY39+2v zS=ehm^Bk`Wk(09;>tj%1FOSwPry7Q zZ*HUY*6{w~?o(0i>IEtB&VIC5>MaQUn|1uTR9xKAk$QZQgpRV0e8HusGr0}NsqKCn zdIG4)Aw#bcrP3Ks_}%Q$e#+LVWDY@FziG{9x&Qqp19d!AT{H0tOTcA8hdE6G=N^PiPgtLm>q z|M;mmJ?)zS`!}cw)6R{1U6yX25{V>}x2Dw&yCxWZW&pInvjmdNEs*0Z)O3&)&olCnWOdS{W$j*fy=vJ2=f-)_A~^e;0T%6;vRV~^rqUTqEVQna z@eeVmWzE;muZtrNA**@M*6IWHLmn3nWqGu-M&F3c%6?=hRA(Nu-q6*R=mbF? zy(0W_ed%A9&e#DhD6ZO$>wXIk9L`!dAhB$Rj}CSiQng6DLfVicC$cetP1P$UG^=LU zuXak1jOqQQ0j;@M{6I=Z_4lJK^{doqV(ulI8>_lSja@$r&Oq;ySb;=N-7J!m#3!Nh z&V;7%m{K%1h1%@r38i-jSKP`+?;#L@6E&nQ`MZaDC^HdlAJ40dG`}Bq64;w@`&lFw z5}+b*VNHiON_+3%)0gzo?T7zTwRay$Myx+By_5Vj8~7H=v}y@&Yjvyo>ji3i#!Q>N z)JDjp-2M^?*s3k=_@)Iy9h-=aS(sHhH0d+FuO=FP`94JcFU1;#i&+0)`7){x5TaTs zSK53C=6>)%mi$78UOS5m{mw^?Yz_DnUhVs%?LDnx4s!0_h+8riFmN=f3blL&7Y==- z(-;X`5#8$;^)E(a{#jcKw0-$0^rVz}hePYsaK@!-%0M=fF<>WrCwyUvvDlnC8|bCa zC~gaqQ|*O*-OC~DwISOaZ*1rY+{MrRMQt-WO=i0xZBET*XO&qlpMoGYX5fCKzW-XhxL%}1C@Th>&8+xoKgWp^`3FJN z$W`9oWuY`z`2$Gd0s&_$WooJ_+k;{3qTzJO=i+Y`%YiY=i9(u7)8E{zx=PVSQKl5G z>#>ZpGmo)wA8+;qdR5Z!6F3GBrmi$5nP?YaQOHmrY877cg8A6jMZ{10&t1uxHO4x9 z-DCYie{_HHh~lgz1&80Q{ArE1UDG&`(w|Y)EoukyPRAo3h;@qlYO zuk`(6yDX&SW;NWL-5@yuQVyr+Mkd|-+WRbKFFGY+esU&>RI>tClhcf}8HxRY+8=pc zaWM9jz%5=kSktO@tMb(nRNe^azWaUS%%H}Ij4L-Fz>}L&0#_YE$qb&`qjw<7>0g(Q z3g6lBu543*`H3B@Oi-IhsY359I>xnaBAH!q8`QluLUF2FV;D!12|wr3u-E%3Vv{8G z6y8d2-$Q(4355^yJMc2gkra*Fx|+@x}dM`KD(?$KA2R+3Qxs$mpV z;U0X0DJ04+96QK8Xi4l7?wv%|mZgAC*+f#&c}1z~Ot&qG)7vW!i5t9YZZqTN@!KTP z=E`~dWMv36ZT_m$|Wv+zv4!j;bKb2y;TIvplQ^MtLR3<|mX63Pn z-o;=a?`It3ZO*uL}O)e-&G0kgg0MFP<(GfWecpF9fHL$|s zqN@F0e&%CCMyM4g0@_7<^!kdk7Z<0l5!+Rd`QFO)r;6mGr_+N-w0efWphXXqQ;whY>*Mc%vmHIJ1v&C z?>>49cgX#Izno*CV*RO+T*(kTb*2*H1V3H*=$`w1sV(zMOa%>R`jrvhh!D zMp>bd7QI#4(bY#6B|P!)5#2T~0uJvSb>zvlso=&NS@AL*Zaz4cHHrjV1j+XWqe8P8 zw{g1^4)f)GT`e>bxYYl(SJ1~y%~W86xinXKDhE>N`e=?BXb*FzVU3m88;j`NgDH_a z^jYreJZW|7IaE7v`P|P}QsBf=O2(=x+X19aw`A98BQe$U4byg8; zcr3#uhc5)~{;C|My{)~6ooNj7`MGcG{9}K?$Ealk1RL&CsCwM}qhLYb%Vu;Zm7#ST z)kY*(U`?_oGNioSFEwgVyu%YAvyZ#FgW7d@GdW6~L`kj775&{UAP|spOyCgY^F4_m z6}RCk`824V;u-W=j~2f~MG^CXe(^Bx{gKvlB&ZvB?GCZvB)2Ize|SF{5NJs|1(i%!Hcc_aj-R&1LO@kvYcwol(|GH61j$oWTj?cA2&u=%|(#TEgCJq z9j-c4CUT3mFjIf~;Hhbq#yC*lHiTp^FktUPr7PWhp$2pKEL36dB&h6?eQMW zg2FM(YbhzUIFOVFM!SLL)cEV&JvE#e01FCM#_r%u))@5t?oVg2wHtG+3EHyMAp!e; z>v#5*-a|NlUDI!7!i6YB$=V40!)_Q(lzn*pApav$0GpR$?ETjnyUoH3!38~z2OK^m z5R;tt?7fsvsgM=8Y1GnkT<_Iqg>EzI4i>GHuPP88ma%tk<>T1^qBk7=paX1b9ng(t zR@Eq9T|M~>KalP8Cf|mQnX3O;5M!l$$D>j9`qeTauhHv{_dJZh+@7+CY^N(QTb&}K zMd;&Bl?q@>G3+ZOO?9EO`Rf}B-Ad-8w-SMd?Jrwfd*3f;i5ye@Z3z<#Bkq7^ks<1*k6Ez@{Q2d?=;W?4x5^*C|`P3 zuU^r>8;zaNiRHB2F^UNH02v{yvM0VY^dANwu;W-u6qdhf7TD#FUMrfVcHITk24}61 zntx!`$Rlq0IH6v(nxRep9VKj>yfVW;-!?dOsBt`&c50>Kzvgm6ruP-Mj`WYb;fqjj z^ol(epaq>&LzN3PE@rjyBE)_+u`CIhK2zwfaLKKyT!jvas zDtGZlUDIf_Mf=bG`rgSj-ap2xw4}C#WkXIu%u;Bm*I5E?#g}n3gZ1J^(y)mE3J4 zqlYJd;IzBK=2G3uJ~1KqHl)Pb7$t#~=H(&MJv(I$jJcal`1tYTx6v!dpgg%P?Lo3| z$_cTPm`(hZMAX&2Xj-m`SOL^y_RV!p!U#o2H{EMclWH~q{8Wz&39QdNdueR;b|!14 zC@6K~B(x~=)V{2$!zI(}pK4k_aHZy`bHGd4ZaI+zCg1_G|6o`VJ^%!@49+4nY186W zuct&(b096^xvnB>qt3XTi=ar7^M^a#DLm%EG|!QfJ7f%I=X&}Y-_|E(ZHJ~2Gfym3 zFJ8stK?x^KuAEFNdf-&K685E8dtX`WY+Jk7WdQbH;jzJYXBEaIFDbwGR3-BhkmWlJ z;D}YZtU5PxT{$yNO!KB7_(_>X8omOev0MnWDnKO z$+fts)Zcor@7oGrZUhP6 zy*oNKa68k|_+^{?>KmJDv{mBlc10m2KREoa4R_I7e>H7C#^M4tu7!D^Fx7hOqcTH+ zt1083bXcxnnu%3hP`Cd_zZ~~qi3#s%+9yj+5;iU_sN3+w@9=vbp|sWF#8iEGHKd6u zws24?mkY(q-Y4~iT9_LVjB(B3XtfEcemDv-LW}*{W?%~-Njat$^)C-B3+cr%_fTfM&jNY9s@B(7NvA5>=qn1I+i zKa_!y3xzYEgp^PLqoC&}FN_evU*}w{S?0xoAY{Y`RaDRJLa=xB!R|=h5B$!(`hMcM zs+QkWeYg*dEyhj$MY2WW4^HRHURSpfOg+nw+`w+Fx%uT^5)1ZB=APi1D5*3@ZOlw;oMwYRV}ST& zi(b7Z6LhU#gB0(A;v-MlH$kpFCb!rjRT<|>FsDj_&Q)Rg5w+h{$V`|4Dx}%(SxlfL z^aPjeYkB{K%7|aoM1*8L_XkpHkpBomvgfMba^It4#$RUw?09*D^7<@8Ivg61ngkII zY!B#!(l9jJ(ZE(bWM|e*R}4pOY*V^WE+jB; zIWqSWy*~$vH}s1ZXJ2NsTr}Kl=MI7Ig9}&JY%`CR)vpztHQL50UHmb}2Z2XoiVdrI zEL$qruu>E)9Ee(AHd|cOfBV%9n7hLCwnlw5GEuy4WmeS?XYOM2lLlO0Tua~A>=78v7aop zKVeFH{`ME%x!B@5!nTB>(}oU1t)iN%_SU0&LaRkW##h7UCb{E3mb}Jhgi@kUwm42>*q|1{lT~&YZxdiobR5yChTqjCzffSo{@aFeH z*V?awPdW8*#Q^?6cw8KiOAU{Hci`9KEtZ3c4aRtn(iY$zjq~_QU>=?A6M1vQb6At@ zo9RDlJyBTF^lRUyz#@#c!;v{^zqJ(`v0*(o_u3l=&}J8s^GcZ|ombfR$G5RV9-Pn} z%OPvc5*OPruk}xmCMpB9mvB?V;j%8!ScNbxGAW-Ip6r&o*C3fAAOUx?v7c`1HarkENnAEYfL~ z9up2ejusUwG;B580!~i9AbZ!rzV{eaz1iC)Wu*(5p6Hvde!DNsEDfiZKbz@VFe`1d zl@xOydg7!4JgUfndn3_btf?aR*V$M`4joeuUjCoxy8Afck@+tg?!gf_jXsMU6CL-9 z)t@ZB?Nn{7wm}4fls$)`-i-4&Dx)f74gTeY{-gCfrT#Nj=S%8_DSu3#YegABZEkSQ ziGfCxB974a@&-rBa1SNB^TTetHZQ92aN|+};#-7NQRk<`vz0sV09~Q)TI6S>1)?@C z=RFRrU-@X?`ZyPHx$rErhR~@KS|GBU1$p$d5dSKLRyn5L-tiw26ryVU*;PgPnq;||s-JF_6e{vf`c^if3enz3b66gW9}YSKP@c3f zF8SNf9+7$y2O&O)w!skvYTa#C&M=sXF867Z9K4|^!ii@Ro66;kC>$5nVpF7j+_Q% zQp2;250utGJL>t|yXLAeM0=5yNlAvqsX(qDg}nA^6;|K#PLo`ei$iy~-P_O^0`7Ob zRIk@HLWZKAa3|x+p0$}QB6t|X5Tz6`-Yaf~ZjPKDzMR2l?a0#|gbDAQ)<@Us+7Dw4 zOq45qZEP&&Z08fQS(PYpyA#UJk7V4{GZjbHvZ}C}(x0TR=^O40wm9Pe#Pug#Vs@Mj zRXCL!+v|FPH*c-;sJT=5ZB3#*Sgz}TT&v<8HUH(>0w7MX0Y+9q!g2D2Z`2+MgsQ*I z>8!v=4%C0oaJ$o6iW(p3|1431pyNxdO})i7$Is9!y_m-wOdl9gVBE2Chf7E{*U`_A zbTiFgNbyV!nl8Nbr&!=Mu2Dpi*+2at(v|vQ&NZ zWg!sxK~C{f?R|SRGho-p~%Iz9^6ag0%VIGJRzT*wZ!~XLpKC- zE}1^?{bue9e!V*N9GN>&WPXv-L=7%DG@9;aNPl-dn-l}K;(d=^KIx)ftg3v$>tTzH z<|+oLp&7qSJQtc^4?V^W?h2_kI)3wKJH{gJC8LUR8Qkxsg)211SJYBlapNMOwcG3t zwmelzRM5|XUhu!P$2_UNZnHtLFNNvGjrC3dF? zkD8iB`yGUXa#xbgr6HC(%$6ZVMi$({Hh9o~S@g#LVgV>Nm$DtgJ3qeWB%D{uOEhol zt%_@Lo4d5P989U>FZ8$zAN)AN25zXiALZhb-J^2%{~R)92iq1d1!kZz{CV~@fvw~E zmS)RY|0mb||9oos_*%klM-X;~9sqj5ey%nCK%FSL2G_xrXRK)I6048isdRKb{x%0q zwmmd<$BWRMo1j#|NMeTx(q07?v;13EpCckUv$ceP(6v<=RkOV7jfx|OWsjS_DKWfG~8MH$_^{dGW;Z4na01Yn-=p3deGC2`B5ABv`{?jk0Itr{ZT|h$~WtoBq>>0|4RJ$R`Xf9n4aQ-iRC=z zu-;pNaCIHGmZ|7?OIsnh{q6-V$De*d$Z)iQQ7}#&DAUxwk3TkXMOwoYeYbPix~S2Z zEZ3q;eqD-gBG|djG#;fWeOvXce6_Q|wNd<9rDqe%{-&psrQ-CB{B7}V-fLTX;QS^b zMa4|eU9Epvv_L?6L3O)Bm(701RDuRzx{Y_384)li#aXhOrc?(XpQOA2xR!iqKQ{@~ z8AGwD!gTizB0sh38&^t_QQClXR$S-F6l+Iyv^L_gVS(bhgQTZ2cQ^x@_52&nZbqN$ z+zk9^JR}InK-^t9%$fTgf*+>xjeh3L z%oq5_arw)Z_j%LbDX_Qe!9CUaZ(q`nC@u{(p0yfQHzWagx?%-SReo>odM8DuZ@e*D z>>_D>no%A(k4cFB0IW=uV~ zGArT~pO~V8_qUymMQ1nSBC>l=4Q`Hp*>*fjZ8mr!-1#h5COge)ERNmN-IG?v{_{RM=j8pKu2|6JVv8<6mSf4UgJvrr*;zNPS`{{MI?+4hd~igX3f z6-Vm%@hPL|zdli~gQ)C|uHn!L?wZ-c zX?p^8^d=(SpIkt&{0H5f?JEE|(vOT}CzbvTt{;`F$2*3B;{rWxu=4*_Hcd+GkkXSS zcU)Pt)g>ExJkIVicMMs~ScW`8isAYT&_R1y{);<(e;1Yg?YZ*lkMcM9a>dDfTx6x& zP}og{&_8-;bGBe)wQux3E#K{XOHsq9f*8M{p5eFFH!*p>h0za{F5Mi3$*(on2U7*< zt}e~xJ`FUOJG34bL1wEGr&tHt?C~1Ey440i+C)Yb8A^P~t@;ZZ79d>BvvJ(D z@%p-`bj|ghsf;30Bry}0{w&vYiPor{;v%D>6!u9%;Sv$L0ey7fO9}q2M!8w3CO7do z56ORzHyfOntVOOaP9RnLr&pb4UfnFUY>98M^=U7Q&k-$-{=aEf|NrA~pK9vm%Sr$iL={bO26zyub63=3moRni7UjX@1$d-Z65p{y>j&bWA8n~n#{KM;Sp32 z6ckhhq&EQp={+KXbWnN=DAGf30YVX_C{m>NqSR1@5PDG*>4e@xkrH}`0HORJX3iYv zoZrkG=i_@_?{(!vNS-{KXYIAtUVE*z@7sVuVb$$$erzpboasU#i2F)|7-z=PMHuy~ zrv|4!Ytl+`%FvBMxI@8-u=gTgek3L^RJ_Agmv!B@OnNDd20@}QV_O_wH1X<^7q?+; zTXmq@9c~b}ws{JyS`QimG$J(VfqiYI-$TiYCW+`*Y=Ej95E)@}F3|EfIv#6V1D;vs{Z11(m>1y&S;l>=!$Q^@s!)sBini(|wK+K>-ULo_ zA1|4}jMwMwgyZJ~ZLA4Et_Lx!JG5QcV5#OzhJ!^7Hr;Rl(M0EDyJI=E3AzfJqBI9k z7Nj|^+6?ziKy*mF%h!rY3|?FOh2QucY~?p!LRj_5rZ4m(g6q(<(7E4*f2E-sbEsBP z6Px1Db|>u_sTh0`OIcg_^nzint>U{S4Bv>8Ic?@*Rm&|{*H-VX3s zugZp4Dq*Q@mM4YfE{f!NS^r`SOvOI9uGht^-emXNBlLY7_;W}1hFv++Jxb*ZO^uBi zPE#_w57B${8a;hF!-#@f+oJ7{49DP{%0B-ofcs}IF`KDLPH8Snhe9B6qW4l0sHnyc zGBDa%`dsIsgZ8U>jhv9}6;?y+dkX@ei-1o0kg(;p_T_|O@8%4c(j8)mQytgOd3Rd1 z=)c0$C%W~m+2}L$89T4(#2sKYiWNOPvKpGqhEnlM`y4xuxrf^*El}~ZqtcHa@O?mZzfFRgQ;WL+K<{^QLsH+kpM}?0xMh9UNQLH>B>i$Y$J*!)Op1S_GCl-9xFheBn{nycg9TU8*L z{O&4-sK^ct^xfV{ww;+z*=j$9eHCT5`SOqe8x_@j8EShv1W<{%ygG)v)_eL8gABRv zS1zMUU2#T3PKA^n(=piDNwo%6w-jAMBGKt=VCXJOQBi+f@u8-VCu*`#s!+RTAp2w#c~DXB+i)}+N7_Q_yQib3^%xW8 zx$C6!())Nd;6w2M0BGKpv@W12IOuAg%=>^fS)v!=>32!g7Z=nJ1=RT!V-`)o2CgcF zH`b1uP9<&jjtveb)J~WUDpofO`XbMHtDJ7ytF>0FAEkJeS;j287L4_6y9lj+L;wY5 zfS7>KFXt2+D}ujuQtgPX*aen>OeLtVPSWB}%sHXUFMcCHACH0ZYgCPjFvFcIxC02) z%}@b!z)%Vy$ofW$f!!%Ggig3|>BQhm0D<%NQ6cT#;un>7uG@p?)Z?>7(e$%idzSB{ zji~z_HSJk*-(F@4HFSTQ`6v|OH#h((eeD&XucsXu0 zC*_ygto!y?mhF9QB)`v?6uz_4Le?-YMyd_A0^8`>%qOqRCQl4KR_+(e+k#UTi4L!L zI8NZSwNN`d*Yja3KwpffwArZZ&JE|Tl0EW;`z7Y0g%Z`U^#>5%!rI((f>&Bt*x1_k zQgEgS_{Wi}yI0DP-5oVfYgMIgU$jx*g2Q85dDdZHiQ2`&nVN2=6$clj-bfPN074&G zI=$>(lL$C{-g`BRzIR!)Nr-@DkjvVaAqUv%&``;FaTQ}VnxP&I4;t)b;b!R$8RIzQr7k42n24eTzbeY{=SuR8M&b^Oe+BseT9ehr$ z&0pce|2r@S6h;bqt$Qtm-21#Z&*kovn$gTG)^;tO4kunK`6Xb*GVqhV0<(_kUiaA+ zqa1FifK-*=IvAhB7&Ke1x94?R%}u2pny>ml4YIQ)doHV_Att{VzmprM8c1d8?x176VfkgAFN2rkZ z2n)X~e#6P=bG6zP56J~S(Gk7*L+^H?V6mYdnBv1PT`(m~I5od=y)TX;<*g7*H~c

      1Z9e^p9;lHT;# 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�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�YOPEM! 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ʜIX?J2o8k7HgUr1xD1-`mh}sp%yGEYN*k{XLw< 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 If you want to filter on a database field in your query, you should prefer using [field filter variables](./sql-parameters), which require a different syntax. + +To add a basic variable to a SQL query, enclose the variable in double braces: `{% raw %}{{variable_name}}{% endraw %}`. + +This example defines a **Text** variable called `category`: + +```sql +{% raw %} +SELECT + count(*) +FROM + products +WHERE + category = {{category}} +{% endraw %} +``` + +These basic variables (that just allow basic string/number interpolation) have a different syntax than field filters. + +Here's the [field filter](./sql-parameters#field-filter-variables) syntax: + +```sql +{% raw %} +WHERE + {{category}} +{% endraw %} +``` + +Whereas the basic variable syntax includes an `=` operator: + +```sql +{% raw %} +WHERE + category = {{category}} +{% endraw %} +``` + +Here, we don't connect the variable to a database field; we merely insert the value into the variable. + +Metabase will read the variable and attach a filter widget to the query, which people can use to change the value inserted into the `category` variable. So if someone enters "Gizmo" into the filter widget, the query Metabase would run would be: + +```sql +SELECT + count(*) +FROM + products +WHERE + category = 'Gizmo' +``` + +If you're writing a native MongoDB query, your query would look more like this, with the `category` variable being defined inside the `match` clause: + +``` +{% raw %}[{ $match: { category: {{category}} } }]{% endraw %} +``` + +## Basic SQL variables offer limited options for filter types + +- **Text**: a plain input box +- **Number**: a plain input box +- **Date**: a simple date picker + +If you want a more expressive filter widget, like a dynamic date picker, you should use a [field filter variable](./sql-parameters#field-filter-variables). diff --git a/_docs/master/questions/native-editor/filter-widgets.md b/_docs/master/questions/native-editor/filter-widgets.md new file mode 100644 index 0000000000..faab61f575 --- /dev/null +++ b/_docs/master/questions/native-editor/filter-widgets.md @@ -0,0 +1,117 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Questions +title: 'Filter and parameter widgets for native code' +source_url: 'https://github.com/metabase/metabase/blob/master/docs/questions/native-editor/filter-widgets.md' +layout: new-docs +--- + +# Filter and parameter widgets for native code + +When you add a [SQL variable or parameter](./sql-parameters) to your native/SQL query, Metabase will add a widget to the top of the query that people can use to set the variable's value. + +## How to create different types of filter and parameter widgets + +The kind of filter widget that Metabase displays when you create a field filter widget depends on a setting for that field in Metabase called **Filtering on this field**. Admins can set this field option to: + +- [Input box](#input-box) +- [Search box](#search-box) +- [Dropdown list](#dropdown-menu-and-search) + +Date fields will either have a simple date filter (for date variables) or a dynamic date picker (for field filters mapped to a date field). + +If you want to change the default filter widget for a particular field, you'll need to ask an admin to update that field in [the Table Metadata](../../data-modeling/metadata-editing) and set the desired "Filtering on this field" option. + +For dropdown lists and search boxes, you can also customize values available in the list. See below. + +### Input box + +1. Include a SQL variable in your query. +2. Set the **Variable type** to **Field filter**. If the query lacks a database field, you could use a Text or Number type as well, depending on what you're filtering. +3. Set **Field to map to** to the appropriate field (only if you selected the field filter variable type). +4. Set **Filter widget operator** to whatever [operator](#filter-widget-operators) you want. +5. Set **How should users filter on this variable** to "Input box". + +### Search box + +1. Include a SQL variable in your query. +2. Set the **Variable type** to **Field filter**. If the query lacks a database field, you could use a Text or Number type as well, depending on what you're filtering. +3. Set **Field to map to** to a field of type "Category" (only if you selected the field filter variable type). +4. Set **Filter widget operator** to whatever [operator](#filter-widget-operators) you want. +5. Set **How should users filter on this variable** to "Search box". If you're not using a field filter, you'll need to edit the search box settings to [tell Metabase where to get the values to search](#customizing-values-for-dropdown-lists-and-search-boxes). + +To guard against SQL injection attacks, Metabase converts whatever is in the search box to a string. If you want to use wildcards, check out [our Learn article][sql-variables]. + +### Dropdown menu and search + +To create a dropdown menu with search and a list of all values: + +1. Include a variable in your query. +2. Set the **Variable type** to **Field filter**. If the query lacks a database field, you could use a Text or Number type as well, depending on what you're filtering. +3. Set **Field to map to** to the appropriate field (only if you selected the field filter variable type). +4. Set **Filter widget operator** to whatever [operator](#filter-widget-operators) you want. +5. Set **How should users filter on this variable** to "Dropdown list". If you're not using a field filter, you'll need to edit the dropdown list settings to [tell Metabase where to get the values to list in the dropdown](#customizing-values-for-dropdown-lists-and-search-boxes). + +If there are too many different values in that column to display in a dropdown menu, Metabase will simply display a search box instead. So if you have a lot of email addresses, you may just get a search box anyway. The dropdown menu widgets work better when there's a small set of values to choose from (like the fifty U.S. states). + +## Customizing values for dropdown lists and search boxes + +When you add a dropdown menu or search box, you can tell Metabase which values people can choose from when using a filter with a dropdown list or search box. + +1. Add a dropdown list or search box. +2. Next to the option you chose, click **Edit**. +3. Metabase will pop up a modal where you can select **Where the values should come from**. + +You can choose: + +- **From connected fields**. If you selected the Field filter variable type, you'll also have the option to use the connected field. +- **From another model or question**. If you select this option, you'll need to pick a model or question, then a field from that model or question that Metabase will use to supply the values for that dropdown or search box. For example, if you want the dropdown to list the different plans an account could be on, you could select an "Account" model you created, and select the field "Plan" to power that dropdown. The dropdown would then list all of the distinct plan options that appear in the "Plan" column in the Accounts model. +- **Custom list**. Enter each item on a line. You can enter any string values you like. + +You can also [change a dashboard filter's selectable values](../../dashboards/filters#change-a-filters-selectable-values). + +## Requiring a value for a filter widget + +In the **Variable** settings sidebar, you can toggle the **Always require a value** option. If you turn this on: + +- You must enter a default value. +- The default value will override any [optional syntax](./sql-parameters#making-variables-optional) in your code (like an optional `WHERE` clause). If no value is passed to the filter, Metabase will run the query using the default value. Click on the **Eye** icon in the editor to preview the SQL Metabase will run. + +## Filter widget operators + +For text, number, and date filter widgets, you'll need to select a filter operator. + +### Text + +Filter operator options include: + +- String +- String is not +- String contains +- String does not contain +- String starts with +- String ends with + +### Number + +Filter operator options include: + +- Equal to +- Not equal to +- Between +- Greater than or equal to +- Less than or equal to + +### Dates + +Filter operator options include: + +- Month and year +- Quarter and year +- Single date +- Date range +- Relative date +- All options diff --git a/_docs/master/questions/native-editor/sql-parameters.md b/_docs/master/questions/native-editor/sql-parameters.md index a6d6a59cc0..4d90a8416b 100644 --- a/_docs/master/questions/native-editor/sql-parameters.md +++ b/_docs/master/questions/native-editor/sql-parameters.md @@ -7,123 +7,52 @@ category: Questions title: 'SQL parameters' source_url: 'https://github.com/metabase/metabase/blob/master/docs/questions/native-editor/sql-parameters.md' layout: new-docs +summary: 'Create SQL templates by adding filters and parameters to your SQL questions in the native code editor.' redirect_from: - /docs/master/users-guide/13-sql-parameters --- # SQL parameters -You can create SQL templates by adding variables to your SQL queries in the [Native/SQL editor][sql-editor]. These variables will create filter widgets that you can use to change the variable's value in the query. You can also add parameters to your question's URL to set the filters' values, so that when the question loads, those values are inserted into the variables. +![Variables](../images/filter-and-parameter.png) -![Variables](../images/02-widget.png) +You can create SQL templates by adding parameters (a.k.a. variables) to your SQL queries in the [Native/SQL editor](./writing-sql). -## Defining variables +These variables create filter widgets that people can use to change the variables' values in the query. -Typing `{% raw %}{{variable_name}}{% endraw %}` in your native query creates a variable called `variable_name`. - -Field Filters, a special type of filter, have a [slightly different syntax](#field-filter-syntax). - -This example defines a **Text** variable called `category`: - -```sql -{% raw %} -SELECT - count(*) -FROM - products -WHERE - category = {{category}} -{% endraw %} -``` - -Metabase will read the variable and attach a filter widget to the query, which people can use to change the value inserted into the `cat` variable with quotes. So if someone entered "Gizmo" into the filter widget, the query Metabase would run would be: - -```sql -SELECT - count(*) -FROM - products -WHERE - category = 'Gizmo' -``` - -If you're writing a native MongoDB query, your query would look more like this, with the `cat` variable being defined inside of the `match` clause. - -``` -{% raw %}[{ $match: { category: {{cat}} } }]{% endraw %} -``` - -## Setting SQL variables - -To set a SQL variable to a value, you can either: - -- Enter a value into the filter widget, and re-run the question, or -- Add a parameter to the URL and load the page. - -To add a value to the URL, follow this syntax: - -``` -?variable_name=value -``` - -For example, to set the `{% raw %}{{cat}}{%endraw%}` variable on a question to the value "Gizmo", your URL would look something like: - -``` -https://metabase.example.com/question/42-eg-question?cat=Gizmo -``` - -To set multiple variables, separate parameters with an ampersand (`&`): - -``` -https://metabase.example.com/question/42-eg-question?cat=Gizmo&maxprice=50 -``` +You can also add parameters to your question's URL to set the filters' values, so that when the question loads, those values are inserted into the variables. ## SQL variable types -When you define a variable, the **Variables** side panel will appear. You can set a type for a variable, which changes the kind of filter widget that Metabase presents. +When you define a variable, the **variables and parameters** side panel will appear. You can set a type for a variable, which changes the kind of filter widget that Metabase presents. -There are four types of variables: +Variable types include: -- **Text**: a plain input box. -- **Number**: a plain input box. -- **Date**: a simple date picker. If you want a more expressive date picker, like specifying a range, you'll want to use a Field Filter. -- **[Field Filter](#the-field-filter-variable-type)**: different filter widgets, depending on the mapped field. +- **[Field filter variables](#field-filter-variables)**: create "smart" filter widgets with date pickers or dropdown menus. To use a field filter, you'll need to connect to a database field included in your query. +- **[Basic variables](./basic-sql-parameters)**: text, number, and date variables. You'll almost always want to use field filters instead of these basic variables, as field filters create "smart" filter widgets, but Metabase provides these basic variables for situations where you can't use field filters. +- **[Time grouping parameters](./time-grouping-parameters)**: allows people to change how the results are grouped by a date column: by month, week, day, etc. -That last variable type, [Field Filter](#the-field-filter-variable-type), is special; it lets you create "smart" filter widgets, like a search box, or a dropdown menu of values, or a dynamic date picker that allows you to specify a date range. +You can include multiple variables in a single query, and Metabase will add multiple filter widgets to the question. When you have multiple filter widgets, you can click on a filter widget and drag it around to rearrange the order. -You can include multiple variables in the query, and Metabase will add multiple filter widgets to the question. When you have multiple filter widgets, you can click on a filter widget and drag it around to rearrange the order. +## When to use a field filter variable vs a basic variable -## The Field Filter variable type +In general, prefer using field filter variables. They offer "smart" filter widgets with dropdown menus and dynamic date pickers. -Setting a variable to the **Field Filter** type allows you to map the variable to a field in any table in the current database. Field filters let you create a "smart" filter widget that makes sense for that field. +If your query lacks a database field for the filter to connect to, however, then you'll instead need to use a [basic variable](./basic-sql-parameters). See other [field filter limitations](#field-filter-limitations). -Field Filter variables should be used inside of a `WHERE` clause in SQL, or a `$match` clause in MongoDB. +## Field filter variables -### Field Filter compatible types +To add a field filter: -Field Filters ONLY work with the following field types: +1. [Add a variable to a `WHERE` clause](#field-filter-syntax). +2. [Connect the field filter to a database field](#connect-the-field-filter-to-a-database-field). +3. [Configure your filter widget](#configure-your-filter-widget). -- Category -- Entity Name -- Entity Key -- Foreign Key -- City -- State -- ZIP or Postal Code - -The field can also be a date or timestamp, which can be left as "No semantic type" in the [Table Metadata](../../data-modeling/metadata-editing). - -When you set the **Variable type** to "Field Filter", Metabase will present an option to set the **Field to map to**, as well as the **Filter widget type**. The options available for the Filter widget type depend on the field's type. For example, if you map to a field of type Category, you'll see options for either "Category" or None. If you map to a Date Field, you'll see options for None, Month and year, Quarter and year, Single date, Date range, or Date filter. - -If you're not seeing the option to display a filter widget, make sure the mapped field is set to one of the above types, and then try manually syncing your database from the "Databases" section of the Admin Panel to force Metabase to scan and cache the field's values. +### Field filter syntax -If you want to map a Field Filter to a field that isn't one of the compatible types listed above, you'll need an Admin to change the field type for that column. See [metadata editing](../../data-modeling/metadata-editing). - -## Field Filter syntax +Let's say you want to create a field filter variable that filters the `People` table by the `state` field. -Let's say you want to create a Field Filter that filters the `People` table by state, and you want people to be able to select multiple states at a time. Here's the query: - -The syntax for Field Filters differs from a Text, Number, or Date variable. +Here's the field filter syntax: ```sql {% raw %} @@ -136,81 +65,45 @@ WHERE {% endraw %} ``` -Then, in the side panel, select the "Field Filter" variable type, and choose which field to map your variable to (in this case, `State`). - -Note the lack of the column and operator (like `=`). The reason you need to structure Field Filters this way is to handle cases where Metabase generates the code for you. For example, for handling cases where someone selects multiple values in the filter widget, or a range of dates. With Field Filters, you can't control the generated SQL, so if you need greater control, you should use one (or more) Text, Number, or Date variables. +Note the lack of the column and operator (it's not `{% raw %}WHERE state = {{state}}{% endraw %}`, it's just `{% raw %}WHERE {{state}}{% endraw %}`). The reason you need to structure field filter variables in this way is to handle cases where Metabase generates the code for you. For example, for handling cases where someone selects _multiple_ values in the filter widget, or a _range_ of dates, Metabase will have to interpolate the SQL code to handle those inputs into the variable. -A MongoDB native query example might look like this: +In a MongoDB native query, you'll need to put the field filter in a `$match` clause. ``` {% raw %}[ {$match: {{date_var}} } ]{% endraw %} ``` -For a more in-depth guide, check out [Field Filters: create smart filter widgets for SQL questions][field-filter]. - -### Field filters in BigQuery and Oracle - -Make sure your SQL dialect matches the database you've selected. Common issues involving how tables are quoted in the query: - -| Database | Dialect quirk | Example | -| -------- | --------------------------------------------------- | -------------------------- | -| BigQuery | Schemas and tables must be quoted with backticks. | `` FROM `dataset.table` `` | -| Oracle | Schemas and tables must be quoted in double quotes. | `FROM schema.table` | - -For more help, see [Troubleshooting SQL error messages](../../troubleshooting-guide/error-message#sql-editor). - -## How to create different types of filter widgets - -The kind of filter widget that Metabase displays when you create a Field Filter widget depends on a setting for that field in Metabase called **Filtering on this field**. Admins can set this field option to: - -- Plain input box -- Search box -- A list of all values (also known as a dropdown menu) - -Date fields will either have a simple date filter (for Date variables) or a dynamic date picker (for Field Filters mapped to a date field). - -If you want to change the filter widget for a particular field, you'll need to ask an Admin to update that field in [the Table Metadata](../../data-modeling/metadata-editing) and set the desired "Filtering on this field" option. - -### Filter widget with plain input box - -Create a simple **Text** or **Number** variable. Additionally, you can use a Field Filter with a field that has its **Filtering on this field** value set to "Plain input box". - -Note: to guard against SQL injection attacks, Metabase converts whatever is in the Search box to a string. If you want to use wildcards, check out [our Learn article][sql-variables]. +### Connect the field filter to a database field -### Filter widget with search box +In order for a field filter variable to work, you'll need to associate the variable with a database field. -- Include a SQL variable in your query. -- Set the **Variable type** to **Field Filter**. -- Set the **Field to map to** to a field of type "Category" that has its **Filtering on this field** option set to "Search box" +1. Go to the variables and parameters side panel. +2. Under **Variable type**, select the "Field filter" variable type. +3. Choose which **Field to map to** your variable (in this case, we'll map the `Category` field in the products table). -### Filter widget with dropdown menu and search +You can only map a field filter to a database field. See [field filter limitations](#field-filter-limitations). -To create a dropdown menu with search and a list of all values, you need to: +### Configure your filter widget -- Include a SQL variable in your query. -- Set the **Variable type** to **Field Filter**. -- Set the **Field to map to** to a field of type "Category" that has its **Filtering on this field** option set to "A list of all values". -- Set the **Filter widget type** to "Category". +1. Set the **Filter widget type**. Options will differ depending on the field's data type. +2. Set the **Filter widget** label. +3. Set **How should users filter on this variable?**: + - [Dropdown list](../../dashboards/filters#dropdown-list). A dropdown list shows all available values for the field in a selectable list. + - [Search box](../../dashboards/filters#search-box). A search box allows people to type to search for specific values. + - [Input box](../../dashboards/filters#plain-input-box). An input box provides a simple text field for entering values. +4. Optionally, set a **Default filter widget value**. -If the field you want to create a dropdown for is not set to the type "Category" with **Filtering on this field** set to "A list of all values", an Admin will need to update the settings for that field. For example, if you want to create a dropdown menu for an incompatible field type like an Email field, an admin will need to change that field type to "Category", set the **Filtering on this field** option to **A list of all values**, then re-scan the values for that field. - -If however, there are too many different values in that column to display in a dropdown menu, Metabase will simply display a search box instead. So if you have a lot of email addresses, you may just get a search box anyway. The dropdown menu widgets work better when there's a small set of values to choose from (like the fifty U.S. states). +Check out [filter widgets](./filter-widgets). ## Field filter limitations -Some things that could trip you up when trying to set up a Field Filter variable. - -### Field Filters don't work with table aliases - -You won't be able to select values from field filters in queries that use table aliases for joins or CTEs. - -The reason is that field filters generate SQL based on the mapped field; Metabase doesn't parse the SQL, so it can't tell what an alias refers to. You have three options for workarounds, depending on the complexity of your query. +Field filters: -1. Use full table names. -2. Replace CTEs with subqueries. -3. Create a view in your database, and use the view as the basis of your query. +- [Must be connected to database fields included in the query](#field-filters-must-be-connected-to-database-fields-included-in-the-query) +- [Are only compatible with certain types](#field-filters-are-only-compatible-with-certain-types) +- [Don't work with table aliases](#field-filters-dont-work-with-table-aliases) -### Field Filters must be connected to fields included in the query +### Field Filters must be connected to database fields included in the query Your main query should be aware of all the tables that your Field Filter variable is pointing to, otherwise you'll get a SQL syntax error. For example, let's say that your main query includes a field filter like this: @@ -239,30 +132,77 @@ WHERE {% endraw %} ``` -## Customizing dropdown lists and search box values +### Field filters are only compatible with certain types + +- Category +- Entity Name +- Entity Key +- Foreign Key +- City +- State +- ZIP or Postal Code +- Date +- Timestamp -With Text and Field filter variables, you can tell Metabase what values people can choose from when using a filter with a dropdown list or search box. +The field can also be a date or timestamp, even when the field is set to "No semantic type" in the [Table Metadata](../../data-modeling/metadata-editing). -1. In the native editor, add a {% raw %}{{variable}}{% endraw %} in double braces. -2. If the sidebar doesn't open, you can click on the **{x}** icon on the right to open the **Variables** sidebar. -3. In the **Settings** tab, set the **Variable type** to either "Text" or "Field Filter". -4. In the sidebar, go to **How should users filter on this variable?** Pick either **Dropdown list** or **Search box**. -5. Next to the option you chose, click **Edit**. -6. Metabase will pop up a modal where you can select **Where the values should come from**. +If you want to map a Field Filter to a field that isn't one of the compatible types listed above, you'll need an Admin to change the field type for that column. See [metadata editing](../../data-modeling/metadata-editing). -You can choose: +### Field Filters don't work with table aliases -- **From connected fields** If you selected the Field filter variable type, you'll also have the option to use the connected field. -- **From another model or question**. If you select this option, you'll need to pick a model or question, then a field from that model or question that Metabase will use to supply the values for that dropdown or search box. For example, if you want the dropdown to list the different plans an account could be on, you could select an "Account" model you created, and select the field "Plan" to power that dropdown. The dropdown would then list all of the distinct plan options that appear in the "Plan" column in the Accounts model. -- **Custom list**. Enter each item on a line. You can enter any string values you like. +You won't be able to select values from field filters in queries that use table aliases for joins or CTEs. + +The reason is that field filters generate SQL based on the mapped field; Metabase doesn't parse the SQL, so it can't tell what an alias refers to. You have three options for workarounds, depending on the complexity of your query. + +- Use full table names. +- Replace CTEs with subqueries. +- Create a view in your database, and use the view as the basis of your query. -You can also [change a dashboard filter's selectable values](../../dashboards/filters#change-a-filters-selectable-values). +## Field filters in BigQuery and Oracle + +Make sure your SQL dialect matches the database you've selected. Common issues involving how tables are quoted in the query: + +| Database | Dialect quirk | Example | +| -------- | --------------------------------------------------- | -------------------------- | +| BigQuery | Schemas and tables must be quoted with backticks. | `` FROM `dataset.table` `` | +| Oracle | Schemas and tables must be quoted in double quotes. | `FROM "schema.table"` | + +For more help, see [Troubleshooting SQL error messages](../../troubleshooting-guide/error-message#sql-editor). + +## Setting values for SQL variables + +To set a SQL variable to a value, you can either: + +- Enter a value into the filter widget, and re-run the question. +- Add a parameter to the URL and load the page. + +### Setting a parameter via URL + +To add a value to the URL, follow this syntax: + +``` +?variable_name=value +``` + +For example, to set the `{% raw %}{{category}}{%endraw%}` variable on a question to the value "Gizmo", your URL would look something like: + +``` +https://metabase.example.com/question/42-eg-question?category=Gizmo +``` + +To set multiple variables, separate parameters with an ampersand (`&`): + +``` +https://metabase.example.com/question/42-eg-question?category=Gizmo&maxprice=50 +``` ## Setting a default value in the filter widget -In the variables sidebar, you can set a default value for your variable. This value will be inserted into the corresponding filter widget by default (even if the filter widget is empty). You'll need to insert a new value into the filter widget to override the default. +In the variables sidebar, you can set a default value for your variable. This value will be inserted into the corresponding filter widget by default (even if the filter widget is empty). -## Setting complex default values in the query +To override the default value, insert a new value into the filter widget. + +### Setting complex default values in the query You can also define default values directly in your query by enclosing comment syntax inside the end brackets of an optional parameter. @@ -289,13 +229,6 @@ If you pass a value to the variable, the `WHERE` clause runs, including the comm Note that the hash (`--`) used to comment the text might need to be replaced by the comment syntax specific to the database you're using. -## Requiring a value for a filter widget - -In the **Variable** settings sidebar, you can toggle the **Always require a value** option. If you turn this on: - -- You must enter a default value. -- The default value will override any optional syntax in your code (like an optional `WHERE` clause). If no value is passed to the filter, Metabase will run the query using the default value. Click on the **Eye** icon in the editor to preview the SQL Metabase will run. - ## Making variables optional You can make a clause optional in a query. For example, you can create an optional `WHERE` clause that contains a SQL variable, so that if no value is supplied to the variable (either in the filter or via the URL), the query will still run as if there were no `WHERE` clause. @@ -342,9 +275,7 @@ FROM WHERE ``` -which is not a valid SQL query. - -Instead, put the entire `WHERE` clause in `[[ ]]`: +Which is not a valid SQL query. Instead, put the entire `WHERE` clause in `[[ ]]`: ```sql {% raw %} @@ -353,11 +284,11 @@ SELECT FROM products [[WHERE - category = {{cat}}]] + category = {{category}}]] {% endraw %} ``` -When there's no value given for `cat`, Metabase will just execute: +When there's no value given for `category`, Metabase will still execute a valid query: ```sql {% raw %} @@ -368,8 +299,6 @@ FROM {% endraw %} ``` -which is still a valid query. - ### You need at least one `WHERE` when using multiple optional clauses To use multiple optional clauses, you must include at least one regular `WHERE` clause followed by optional clauses, each starting with `AND`: @@ -382,7 +311,7 @@ FROM products WHERE TRUE - [[AND id = {{id}}] + [[AND id = {{id}}]] [[AND {{category}}]] {% endraw %} ``` @@ -391,7 +320,7 @@ That last clause uses a Field filter (note the lack of a column in the `AND` cla ### Optional variables in MongoDB -If you're using MongoDB, you can make an clause optional like so: +If you're using MongoDB, you can make a clause optional like so: ``` {% raw %} @@ -422,27 +351,24 @@ Or with multiple optional filters: ## Connecting a SQL question to a dashboard filter -In order for a saved SQL/native question to be usable with a dashboard filter, the question must contain at least one variable. +In order for a SQL/native question to be usable with a dashboard filter, the question must contain at least one variable or parameter. -The kind of dashboard filter that can be used with the SQL question depends on the field. For example, if you have a field filter called `{% raw %}{{var}}{% endraw %}` and you map it to a State field, you can map a Location dashboard filter to your SQL question. In this example, you'd create a new dashboard (or go to an existing dashboard), click the **Pencil icon** to enter **Dashboard edit mode**, add the SQL question that contains your State Field Filter variable, add a new dashboard filter (or edit an existing Location filter), then click the dropdown on the SQL question card to see the State Field Filter. +The kind of dashboard filter that can be used with the SQL question depends on the field. For example, if you have a field filter called `{% raw %}{{var}}{% endraw %}` and you map it to a State field, you can map a location dashboard filter to your SQL question. In this example, you'd: -If you add a **Date** variable to the question, then it's only possible to use the dashboard filter option **Single Date**. So if you are trying to use one of the other Time options on the dashboard, you'll need to change the variable to a [Field Filter](#the-field-filter-variable-type) variable and map it to a date column. +1. Create a new dashboard (or go to an existing dashboard). +2. Click the **Pencil icon** to enter **Dashboard edit mode**. +3. Add the SQL question that contains your `State` field filter. +4. Add a new dashboard filter (or edit an existing Location filter). +5. Click the dropdown on the SQL question card to connect the widget to the `State` field filter. -![Field filter](../images/state-field-filter.png) +If you add a basic **Date** variable to the question (i.e., not a field filter), then it's only possible to use the dashboard filter option **Single Date**. So if you're trying to use one of the other Time options on the dashboard, you'll need to change the variable to a [field filter](#field-filter-variables) and map it to a date field. -More on [Dashboard filters][dashboard-filters]. +![Field filter](../images/state-field-filter.png) ## Further reading -- [Create filter widgets for charts using SQL variables][sql-variables]. -- [Field Filters: create smart filter widgets for SQL questions][field-filter]. -- [Troubleshooting SQL][troubleshooting-sql]. -- [Troubleshooting filters][troubleshooting-filters]. -- [Dashboard filters][dashboard-filters]. - -[sql-editor]: ./writing-sql -[dashboard-filters]: ../../dashboards/filters -[field-filter]: /learn/metabase-basics/querying-and-dashboards/sql-in-metabase/field-filters -[sql-variables]: /learn/metabase-basics/querying-and-dashboards/sql-in-metabase/sql-variables -[troubleshooting-filters]: ../../troubleshooting-guide/filters -[troubleshooting-sql]: ../../troubleshooting-guide/sql +- [Create filter widgets for charts using SQL variables](/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/sql-variables). +- [Field Filters: create smart filter widgets for SQL questions](/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/field-filters). +- [Troubleshooting SQL](../../troubleshooting-guide/sql). +- [Troubleshooting filters](../../troubleshooting-guide/filters). +- [Dashboard filters](../../dashboards/filters). diff --git a/_docs/master/questions/native-editor/time-grouping-parameters.md b/_docs/master/questions/native-editor/time-grouping-parameters.md new file mode 100644 index 0000000000..6e42615320 --- /dev/null +++ b/_docs/master/questions/native-editor/time-grouping-parameters.md @@ -0,0 +1,66 @@ +--- +version: master +has_magic_breadcrumbs: true +show_category_breadcrumb: true +show_title_breadcrumb: true +category: Questions +title: 'Time grouping parameter' +source_url: 'https://github.com/metabase/metabase/blob/master/docs/questions/native-editor/time-grouping-parameters.md' +layout: new-docs +--- + +# Time grouping parameter + +You can add a parameter to SQL questions to change how results are grouped by time: by day, week, month, and so on. + +To make this work, you'll need to add parameters in both the `SELECT` and `GROUP BY` clauses. + +## Time grouping parameter example + +Here's an example that counts the number of orders in the `orders` table and inserts a parameter to allow people to change how Metabase groups the results by the `created_at` column. + +```sql +{% raw %} +SELECT + COUNT(*) AS "Orders", + {{mb.time_grouping("Time grouping", "created_at")}} AS "Created At" +FROM + orders +GROUP BY + {{mb.time_grouping("Time grouping", "created_at")}} +{% endraw %} +``` + +Like in all SQL groupings, you must include the parameter in both the `SELECT` and `GROUP BY` clauses. You can also use the `mb.time_grouping` function on different columns in the same query, like this: + +```sql +SELECT + COUNT(*) AS "Orders", + {{mb.time_grouping("Time grouping", "created_at")}} AS "Created At", + {{mb.time_grouping("Trial ends at", "trial_ends_at")}} AS "Trial ends at" +FROM + accounts +GROUP BY + {{mb.time_grouping("Time grouping", "created_at")}}, + {{mb.time_grouping("Trial ends at", "trial_ends_at")}} +``` + +## Time grouping parameter syntax + +To include a time grouping parameter, include an `mb.time_grouping` function call: + +```sql +{% raw %}{{mb.time_grouping(name, column)}}{% endraw %} +``` + +- `mb.time_grouping` is the function that handles the time grouping. It takes two arguments: `name` and `column`. +- `name` is what you want to call the parameter. The name can be anything, but it must be wrapped in either single or double quote marks. E.g., `"Unit"` or `'Time Grouping'`. By default, this name will change the label on the widget. You can also set a different label for the widget in the variables sidebar. +- `column` is the name of the column you want to group by. The column name must be wrapped in either single or double quote marks, e.g., `"created_at"` (`created_at` without the quotes won't work). + +Like with all parameters, you can set a default value (e.g., "month"). With time grouping parameters, you're limited to the options for the [time grouping parameter](../../dashboards/filters#time-grouping-parameter). + +If people don't set a value for the parameter, Metabase won't group to a date part (like day or week). It will just group by untruncated dates. + +## Connecting to a dashboard filter + +See [dashboard filters and parameters](../../dashboards/filters). diff --git a/_docs/master/troubleshooting-guide/bugs.md b/_docs/master/troubleshooting-guide/bugs.md index 6dc76f07ae..7ec6b908d5 100644 --- a/_docs/master/troubleshooting-guide/bugs.md +++ b/_docs/master/troubleshooting-guide/bugs.md @@ -11,7 +11,7 @@ layout: new-docs # Reporting a bug -If you come across something that looks like a bug, please start by searching our [Github issues][metabase-issues] to see if it has already been reported. If it has, please let us know you're experiencing the same issue by reacting with a thumbs up emoji or adding a comment to provide additional information. +If you come across something that looks like a bug, please start by searching our [GitHub issues][metabase-issues] to see if it has already been reported. If it has, please let us know you're experiencing the same issue by reacting with a thumbs up emoji or adding a comment to provide additional information. If the bug has not yet been reported, go ahead and [open a bug report][metabase-file-bug]. The following information will help us reproduce your issue: diff --git a/_docs/master/troubleshooting-guide/filters.md b/_docs/master/troubleshooting-guide/filters.md index ffe3c11bdc..d4644d2522 100644 --- a/_docs/master/troubleshooting-guide/filters.md +++ b/_docs/master/troubleshooting-guide/filters.md @@ -47,7 +47,7 @@ If a question filter is giving you no results or the wrong results: If you're having trouble filtering on a: - [Custom column](../questions/query-builder/editor#custom-columns): check if the custom expression is working as expected. For example, your custom expression might be returning blank values when you expect numbers. -- [SQL field filter](../questions/native-editor/sql-parameters#the-field-filter-variable-type): make sure you're using the correct [field filter syntax](../questions/native-editor/sql-parameters#field-filter-syntax), then see [Troubleshooting SQL variables](./sql#sql-variables-and-field-filters). +- [SQL field filter](../questions/native-editor/sql-parameters#field-filter-variables): make sure you're using the correct [field filter syntax](../questions/native-editor/sql-parameters#field-filter-syntax), then see [Troubleshooting SQL variables](./sql#sql-variables-and-field-filters). **Explanation** diff --git a/_docs/master/troubleshooting-guide/known-issues.md b/_docs/master/troubleshooting-guide/known-issues.md index 5ae4b67ed7..29a783865a 100644 --- a/_docs/master/troubleshooting-guide/known-issues.md +++ b/_docs/master/troubleshooting-guide/known-issues.md @@ -17,7 +17,7 @@ If you can't find or solve your problem using the [troubleshooting guides](./ind If your work in Metabase is crashing, missing, or not being saved, you might have found a bug. -1. Go to the [Metabase Github issues page](https://github.com/metabase/metabase/issues). +1. Go to the [Metabase GitHub issues page](https://github.com/metabase/metabase/issues). 2. Click on the **Label** dropdown and select `Type: Bug`. @@ -37,7 +37,7 @@ If your work in Metabase is crashing, missing, or not being saved, you might hav If the functionality you're looking for simply doesn't exist (i.e., it hasn't suddenly gone missing), you might be running into a product limitation. -1. Go to the [Metabase Github issues page](https://github.com/metabase/metabase/issues). +1. Go to the [Metabase GitHub issues page](https://github.com/metabase/metabase/issues). 2. Click on the **Label** dropdown and select `Type: New Feature`. diff --git a/_docs/master/troubleshooting-guide/linked-filters.md b/_docs/master/troubleshooting-guide/linked-filters.md index 2313faf8a6..1d5a3445fc 100644 --- a/_docs/master/troubleshooting-guide/linked-filters.md +++ b/_docs/master/troubleshooting-guide/linked-filters.md @@ -21,11 +21,11 @@ If you are having problems with a regular [filter widget][filter-widget-gloss], ## Does a connected dashboard card use a SQL variable? -**Root cause**: Native/SQL questions must have a [field filter](../questions/native-editor/sql-parameters#the-field-filter-variable-type) variable in order to be linked. Regular SQL variables won't work. +**Root cause**: Native/SQL questions must have a [field filter](../questions/native-editor/sql-parameters#field-filter-variables) variable in order to be linked. Regular SQL variables won't work. **Steps to take**: -1. Update the card's query to change the regular variable to a [field filter](../questions/native-editor/sql-parameters#the-field-filter-variable-type) variable. +1. Update the card's query to change the regular variable to a [field filter](../questions/native-editor/sql-parameters#field-filter-variables) variable. See [Limitations of linking filters](../dashboards/linked-filters#limitations-of-linked-filters). diff --git a/_docs/master/troubleshooting-guide/sql.md b/_docs/master/troubleshooting-guide/sql.md index 6149dd0a04..25bf519ab0 100644 --- a/_docs/master/troubleshooting-guide/sql.md +++ b/_docs/master/troubleshooting-guide/sql.md @@ -23,8 +23,8 @@ layout: new-docs - [Filter widget doesn't display a dropdown menu of values](../data-modeling/metadata-editing#changing-a-search-box-filter-to-a-dropdown-filter). - [SQL query contains table aliases](../questions/native-editor/sql-parameters#field-filters-dont-work-with-table-aliases). -- [SQL syntax error: missing `FROM` clause](../questions/native-editor/sql-parameters#field-filters-must-be-connected-to-fields-included-in-the-query). -- [No option to display a filter widget](../questions/native-editor/sql-parameters#field-filter-compatible-types). +- [SQL syntax error: missing `FROM` clause](../questions/native-editor/sql-parameters#field-filters-must-be-connected-to-database-fields-included-in-the-query). +- [No option to display a filter widget](../questions/native-editor/sql-parameters#field-filters-are-only-compatible-with-certain-types). - [I don't know the SQL variable type](/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/sql-variables) ## SQL syntax errors diff --git a/_site/docs/master/CONTRIBUTING.html b/_site/docs/master/CONTRIBUTING.html index a1fe4be4cb..db7b53fccc 100644 --- a/_site/docs/master/CONTRIBUTING.html +++ b/_site/docs/master/CONTRIBUTING.html @@ -1521,6 +1521,8 @@

      Analytics
      + +
    • Getting started @@ -1537,6 +1539,8 @@
      Analytics
      + +
    • Metabase concepts @@ -1553,6 +1557,8 @@
      Analytics
      + +
    • Queries and charts @@ -1574,6 +1580,8 @@
      Analytics
      + +
    • Introduction @@ -1587,6 +1595,8 @@
      Analytics
      + +
    • Query builder @@ -1603,36 +1613,42 @@
      Analytics