Dashboard parameter field filter operators feature flag (#15519)
* Backend feature flag for new field filters
* Feature flag new parameter options
When the "field-filter-operators-enabled?" flag is disabled we do the following:
1. Replace new operator options with old category and location/city, etc., options
in the PARAMETER_OPTIONS list found in metabase/meta/Parameter.js
2. Hide numbers section in the PARAMETER_SECTIONS list found in
metabase/meta/Dashboard.js
3. Return args as-is in the mapUIParameterToQueryParameter function
found in metabase/meta/Parameter.js
React/UI code handles both old options and new options so doesn't need
to change. Old parameter types like "category" and "location/city" are
treated like "string/=" in the UI but retain their own parameter type
when used to send a new query.
* Fix FE issues caused by meta/Parameter refactor
* mock the field operator param flag to make tests pass
* add/fix cypress tests
* fix import in ParametersPopover
* update widget tag type
* Enable field filter operators for cypress tests
* Question marks are questionable
* Conditionally use category or string/= if field filters are enabled
* rmv mocks where we don't need them
* rmv mock from chained-filters test
* env vars as string in project.clj, alignment
Co-authored-by:
dan sutton <dan@dpsutton.com>
Showing
- .dir-locals.el 2 additions, 0 deletions.dir-locals.el
- frontend/src/metabase/dashboard/components/ParametersPopover.jsx 8 additions, 4 deletions...d/src/metabase/dashboard/components/ParametersPopover.jsx
- frontend/src/metabase/meta/Dashboard.js 77 additions, 62 deletionsfrontend/src/metabase/meta/Dashboard.js
- frontend/src/metabase/meta/Parameter.js 75 additions, 23 deletionsfrontend/src/metabase/meta/Parameter.js
- frontend/test/__runner__/backend.js 1 addition, 0 deletionsfrontend/test/__runner__/backend.js
- frontend/test/__support__/cypress.js 13 additions, 0 deletionsfrontend/test/__support__/cypress.js
- frontend/test/metabase/meta/Parameter.unit.spec.js 55 additions, 5 deletionsfrontend/test/metabase/meta/Parameter.unit.spec.js
- frontend/test/metabase/scenarios/dashboard/dashboard_data_permissions.cy.spec.js 8 additions, 1 deletion...scenarios/dashboard/dashboard_data_permissions.cy.spec.js
- frontend/test/metabase/scenarios/dashboard/old-parameters.cy.spec.js 86 additions, 0 deletions...st/metabase/scenarios/dashboard/old-parameters.cy.spec.js
- modules/drivers/mongo/src/metabase/driver/mongo/parameters.clj 1 addition, 0 deletions...es/drivers/mongo/src/metabase/driver/mongo/parameters.clj
- project.clj 2 additions, 0 deletionsproject.clj
- src/metabase/api/embed.clj 4 additions, 1 deletionsrc/metabase/api/embed.clj
- src/metabase/driver/common/parameters.clj 22 additions, 1 deletionsrc/metabase/driver/common/parameters.clj
- src/metabase/driver/sql/parameters/substitution.clj 5 additions, 3 deletionssrc/metabase/driver/sql/parameters/substitution.clj
- src/metabase/query_processor/middleware/parameters/mbql.clj 3 additions, 2 deletionssrc/metabase/query_processor/middleware/parameters/mbql.clj
- test/metabase/driver/sql/parameters/substitute_test.clj 11 additions, 1 deletiontest/metabase/driver/sql/parameters/substitute_test.clj
- test/metabase/query_processor/middleware/parameters/mbql_test.clj 14 additions, 1 deletion...abase/query_processor/middleware/parameters/mbql_test.clj
Loading
Please register or sign in to comment