From 7e879221af64a9c5422519bd40c596155289a847 Mon Sep 17 00:00:00 2001
From: Alexander Polyankin <alexander.polyankin@metabase.com>
Date: Fri, 23 Aug 2024 09:39:47 -0400
Subject: [PATCH] Add subfolders in metabase/querying (#47160)

* Add subfolders in querying

* Add subfolders in querying

* Add subfolders in querying

* Remove FilterContent

* Remove FilterContent

* Remove FilterContent

* Remove FilterContent

* Remove FilterContent
---
 .../InteractiveQuestion/components/Filter.tsx |  16 +-
 .../TemporalUnitWidget/TemporalUnitWidget.tsx |   2 +-
 .../query_builder/actions/core/utils.ts       |   2 +-
 .../query_builder/actions/querying.js         |   2 +-
 .../components/QueryModals/QueryModals.tsx    |   2 +-
 .../notebook/steps/FilterStep/FilterStep.tsx  |   2 +-
 .../query_builder/components/view/View.jsx    |   2 +-
 .../QuestionFiltersHeader.tsx                 |   2 +-
 .../FilterContent/FilterContent.tsx           |   9 -
 .../FilterContent/TabContent/index.ts         |   1 -
 .../components/FilterContent/TabList/index.ts |   1 -
 .../FilterContent/TabPanel/index.ts           |   1 -
 .../FilterContent/TabPanelColumn/index.ts     |   1 -
 .../FilterContent/TabPanelItem/index.ts       |   2 -
 .../components/FilterContent/index.ts         |   4 -
 .../components/FilterModal/FilterModal.tsx    | 157 ------------------
 .../querying/components/FilterModal/index.ts  |   1 -
 .../src/metabase/querying/drills/index.ts     |   1 +
 .../utils}/automatic-insights-drill.tsx       |   0
 .../utils}/column-extract-drill.tsx           |   0
 .../utils}/column-filter-drill.tsx            |   2 +-
 .../utils}/combine-columns-drill.tsx          |   0
 .../utils}/compare-aggregations-drill.tsx     |   0
 .../drills => drills/utils}/constants.ts      |   0
 .../utils}/distribution-drill.ts              |   0
 .../utils}/filter-drill.tsx                   |   2 +-
 .../utils}/fk-details-drill.ts                |   0
 .../utils}/fk-filter-drill.ts                 |   0
 .../utils}/pivot-drill.tsx                    |   0
 .../pk-drill => drills/utils}/pk-drill.ts     |   0
 .../drills => drills/utils}/query-drill.ts    |   0
 .../utils}/quick-filter-drill.tsx             |   2 +-
 .../sort-drill => drills/utils}/sort-drill.ts |   0
 .../utils}/summarize-column-by-time-drill.ts  |   0
 .../utils}/summarize-column-drill.ts          |   0
 .../utils}/underlying-records-drill.ts        |   0
 .../zoom-drill => drills/utils}/zoom-drill.ts |   0
 .../utils}/zoom-in-binning-drill.ts           |   0
 .../utils}/zoom-in-geographic-drill.ts        |   0
 .../utils}/zoom-in-timeseries-drill.ts        |   0
 .../components/FieldPanel/FieldPanel.tsx      |   0
 .../FieldPanel/FieldPanel.unit.spec.tsx       |   0
 .../components/FieldPanel/index.ts            |   0
 .../components/FieldPanel/types.ts            |   0
 .../components/FieldPanel/utils.ts            |   0
 .../src/metabase/querying/fields/index.ts     |   1 +
 .../DateOperatorPicker/DateOperatorPicker.tsx |   0
 .../DateOperatorPicker.unit.spec.tsx          |   0
 .../DateOperatorPicker/constants.ts           |   0
 .../DatePicker/DateOperatorPicker/index.ts    |   0
 .../DatePicker/DateOperatorPicker/types.ts    |   0
 .../DatePicker/DateOperatorPicker/utils.ts    |   0
 .../DateOperatorPicker/utils.unit.spec.ts     |   0
 .../components/DatePicker/DatePicker.tsx      |   0
 .../DatePicker/DatePicker.unit.spec.tsx       |   0
 .../DateShortcutPicker/DateShortcutPicker.tsx |   0
 .../DateShortcutPicker.unit.spec.tsx          |   0
 .../DateShortcutPicker/constants.ts           |   0
 .../DatePicker/DateShortcutPicker/index.ts    |   0
 .../DatePicker/DateShortcutPicker/types.ts    |   0
 .../DatePicker/DateShortcutPicker/utils.ts    |   0
 .../ExcludeDatePicker/ExcludeDatePicker.tsx   |   0
 .../ExcludeDatePicker.unit.spec.tsx           |   0
 .../DatePicker/ExcludeDatePicker/constants.ts |   0
 .../DatePicker/ExcludeDatePicker/index.ts     |   0
 .../DatePicker/ExcludeDatePicker/types.ts     |   0
 .../DatePicker/ExcludeDatePicker/utils.ts     |   0
 .../CurrentDatePicker/CurrentDatePicker.tsx   |   0
 .../CurrentDatePicker.unit.spec.tsx           |   0
 .../CurrentDatePicker/constants.ts            |   0
 .../CurrentDatePicker/index.ts                |   0
 .../DateIntervalPicker/DateIntervalPicker.tsx |   0
 .../DateIntervalPicker.unit.spec.tsx          |   0
 .../SimpleDateIntervalPicker.tsx              |   0
 .../SimpleDateIntervalPicker.unit.spec.tsx    |   2 +-
 .../SimpleDateIntervalPicker/index.ts         |   0
 .../DateIntervalPicker/constants.ts           |   0
 .../DateIntervalPicker/index.ts               |   0
 .../DateIntervalPicker/utils.ts               |   0
 .../DateOffsetIntervalPicker.styled.tsx       |   0
 .../DateOffsetIntervalPicker.tsx              |   0
 .../DateOffsetIntervalPicker.unit.spec.tsx    |   0
 .../DateOffsetIntervalPicker/index.ts         |   0
 .../DateOffsetIntervalPicker/utils.ts         |   0
 .../IncludeCurrentSwitch.tsx                  |   0
 .../IncludeCurrentSwitch/index.ts             |   0
 .../RelativeDatePicker.styled.tsx             |   0
 .../RelativeDatePicker/RelativeDatePicker.tsx |   0
 .../RelativeDatePicker.unit.spec.tsx          |   0
 .../RelativeDatePicker/constants.ts           |   0
 .../DatePicker/RelativeDatePicker/index.ts    |   0
 .../DatePicker/RelativeDatePicker/types.ts    |   0
 .../DatePicker/RelativeDatePicker/utils.ts    |   0
 .../RelativeDatePicker/utils.unit.spec.ts     |   0
 .../SimpleDatePicker/SimpleDatePicker.tsx     |   0
 .../SimpleDatePicker.unit.spec.tsx            |   0
 .../DatePicker/SimpleDatePicker/index.ts      |   0
 .../DateRangePicker/DateRangePicker.tsx       |   0
 .../DateRangePicker.unit.spec.tsx             |   0
 .../DateRangePickerBody.styled.tsx            |   0
 .../DateRangePickerBody.tsx                   |   0
 .../DateRangePickerBody/index.ts              |   0
 .../SimpleDateRangePicker.tsx                 |   0
 .../SimpleDateRangePicker.unit.spec.tsx       |   0
 .../SimpleDateRangePicker/index.ts            |   0
 .../DateRangePicker/index.ts                  |   0
 .../DateRangePicker/types.ts                  |   0
 .../SimpleSpecificDatePicker.tsx              |   0
 .../SimpleSpecificDatePicker.unit.spec.tsx    |   0
 .../SimpleSpecificDatePicker/index.ts         |   0
 .../SimpleSingleDatePicker.tsx                |   0
 .../SimpleSingleDatePicker.unit.spec.tsx      |   0
 .../SimpleSingleDatePicker/index.ts           |   0
 .../SingleDatePicker/SingleDatePicker.tsx     |   0
 .../SingleDatePicker.unit.spec.tsx            |   0
 .../SingleDatePickerBody.tsx                  |   0
 .../SingleDatePickerBody/index.ts             |   0
 .../SingleDatePicker/index.ts                 |   0
 .../SingleDatePicker/types.ts                 |   0
 .../SpecificDatePicker.styled.tsx             |   0
 .../SpecificDatePicker/SpecificDatePicker.tsx |   0
 .../SpecificDatePicker.unit.spec.tsx          |   0
 .../TimeToggle/TimeToggle.tsx                 |   0
 .../SpecificDatePicker/TimeToggle/index.ts    |   0
 .../SpecificDatePicker/constants.ts           |   0
 .../DatePicker/SpecificDatePicker/index.ts    |   0
 .../DatePicker/SpecificDatePicker/types.ts    |   0
 .../DatePicker/SpecificDatePicker/utils.ts    |   0
 .../components/DatePicker/constants.ts        |   0
 .../components/DatePicker/index.ts            |   0
 .../components/DatePicker/types.ts            |   0
 .../components/DatePicker/utils.ts            |   0
 .../BooleanFilterEditor.tsx                   |   2 +-
 .../BooleanFilterEditor.unit.spec.tsx         |   0
 .../FilterModal}/BooleanFilterEditor/index.ts |   0
 .../ColumnFilterSection.tsx                   |   0
 .../FilterModal}/ColumnFilterSection/index.ts |   0
 .../CoordinateFilterEditor.tsx                |   6 +-
 .../CoordinateFilterEditor.unit.spec.tsx      |   0
 .../CoordinateFilterEditor/index.ts           |   0
 .../DateFilterEditor.styled.tsx               |   0
 .../DateFilterEditor/DateFilterEditor.tsx     |  16 +-
 .../DateFilterEditor.unit.spec.tsx            |   0
 .../DateFilterEditor/constants.ts             |   2 +-
 .../FilterModal}/DateFilterEditor/index.ts    |   0
 .../FilterModal}/DateFilterEditor/utils.ts    |   6 +-
 .../DefaultFilterEditor.tsx                   |   6 +-
 .../DefaultFilterEditor.unit.spec.tsx         |   0
 .../FilterModal}/DefaultFilterEditor/index.ts |   0
 .../FilterModal/FilterModal.styled.tsx        |   0
 .../components/FilterModal/FilterModal.tsx    |  80 +++++++++
 .../FilterModal/FilterModal.unit.spec.tsx     |   0
 .../ColumnFilterGroup/ColumnFilterGroup.tsx}  |  14 +-
 .../ColumnFilterGroup/index.ts                |   1 +
 .../ColumnFilterGroup/utils.ts}               |   0
 .../ColumnFilterItem/ColumnFilterItem.tsx}    |  17 +-
 .../FilterModalBody/ColumnFilterItem/index.ts |   1 +
 .../ColumnFilterList/ColumnFilterList.tsx}    |  14 +-
 .../FilterModalBody/ColumnFilterList/index.ts |   1 +
 .../ColumnFilterList/utils.ts}                |   3 +-
 .../FilterModalBody/FilterModalBody.tsx}      |  16 +-
 .../FilterTabContent/FilterTabContent.tsx}    |  16 +-
 .../FilterModalBody/FilterTabContent/index.ts |   1 +
 .../FilterTabEmptyState.tsx}                  |   2 +-
 .../FilterTabEmptyState/index.ts              |   1 +
 .../FilterTabItem/FilterTabItem.styled.tsx}   |   4 +-
 .../FilterModalBody/FilterTabItem/index.ts    |   1 +
 .../FilterTabList/FilterTabList.styled.tsx}   |   0
 .../FilterTabList/FilterTabList.tsx}          |   9 +-
 .../FilterModalBody/FilterTabList/index.ts    |   1 +
 .../FilterTabPanel/FilterTabPanel.styled.tsx} |   0
 .../FilterTabPanel/FilterTabPanel.tsx}        |  18 +-
 .../FilterModalBody/FilterTabPanel/index.ts   |   1 +
 .../SegmentFilterItem/SegmentFilterItem.tsx}  |  18 +-
 .../SegmentFilterItem/index.ts                |   1 +
 .../SegmentFilterItem/utils.ts}               |   3 +-
 .../FilterModal/FilterModalBody/index.ts      |   1 +
 .../FilterModalFooter/FilterModalFooter.tsx}  |   6 +-
 .../FilterModal/FilterModalFooter/index.ts    |   1 +
 .../FilterModalHeader/FilterModalHeader.tsx}  |   7 +-
 .../FilterSearchInput.styled.tsx              |   0
 .../FilterSearchInput/FilterSearchInput.tsx   |   0
 .../FilterSearchInput/index.ts                |   0
 .../FilterModal/FilterModalHeader/index.ts    |   1 +
 .../FilterOperatorPicker.tsx                  |   0
 .../FilterOperatorPicker/index.ts             |   0
 .../FilterColumnName/FilterColumnName.tsx     |   0
 .../FilterTitle}/FilterColumnName/index.ts    |   0
 .../FilterModal}/FilterTitle/FilterTitle.tsx  |   2 +-
 .../FilterModal}/FilterTitle/index.tsx        |   0
 .../NumberFilterEditor/NumberFilterEditor.tsx |   6 +-
 .../NumberFilterEditor.unit.spec.tsx          |   0
 .../FilterModal}/NumberFilterEditor/index.ts  |   0
 .../SegmentFilterEditor.tsx                   |   3 +-
 .../SegmentFilterEditor.unit.spec.tsx         |   3 +-
 .../FilterModal}/SegmentFilterEditor/index.ts |   0
 .../StringFilterEditor/StringFilterEditor.tsx |   6 +-
 .../StringFilterEditor.unit.spec.tsx          |   0
 .../FilterModal}/StringFilterEditor/index.ts  |   0
 .../TimeFilterEditor/TimeFilterEditor.tsx     |   6 +-
 .../TimeFilterEditor.unit.spec.tsx            |   0
 .../FilterModal}/TimeFilterEditor/index.ts    |   0
 .../components/FilterModal/constants.ts       |   0
 .../filters/components/FilterModal/index.ts   |   4 +
 .../filters/components/FilterModal/types.ts   |  11 ++
 .../components/FilterModal/utils.ts}          |   2 +-
 .../FilterPanel/FilterPanel.styled.tsx        |   0
 .../components/FilterPanel/FilterPanel.tsx    |   0
 .../FilterPanelButton.styled.tsx              |   0
 .../FilterPanelButton/FilterPanelButton.tsx   |   0
 .../FilterPanelButton.unit.spec.tsx           |   0
 .../FilterPanel/FilterPanelButton/index.ts    |   0
 .../FilterPanelPopover/FilterPanelPopover.tsx |   0
 .../FilterPanel/FilterPanelPopover/index.ts   |   0
 .../FilterPill/FilterPill.styled.tsx          |   0
 .../FilterPanel/FilterPill/FilterPill.tsx     |   0
 .../FilterPanel/FilterPill/index.ts           |   0
 .../components/FilterPanel/index.ts           |   0
 .../components/FilterPanel/types.ts           |   0
 .../components/FilterPanel/utils.ts           |   0
 .../BooleanFilterPicker.tsx                   |   2 +-
 .../BooleanFilterPicker.unit.spec.tsx         |   0
 .../FilterPicker/BooleanFilterPicker/index.ts |   0
 .../CoordinateColumnPicker.tsx                |   0
 .../CoordinateColumnPicker/index.ts           |   0
 .../CoordinateColumnPicker/types.ts           |   0
 .../CoordinateColumnPicker/utils.ts           |   0
 .../CoordinateFilterPicker.tsx                |   6 +-
 .../CoordinateFilterPicker.unit.spec.tsx      |   0
 .../CoordinateFilterPicker/index.ts           |   0
 .../DateFilterPicker/DateFilterPicker.tsx     |   5 +-
 .../DateFilterPicker.unit.spec.tsx            |   0
 .../SimpleDateFilterPicker.tsx                |   8 +-
 .../SimpleDateFilterPicker/index.ts           |   0
 .../FilterPicker/DateFilterPicker/index.ts    |   0
 .../DefaultFilterPicker.tsx                   |   2 +-
 .../DefaultFilterPicker.unit.spec.tsx         |   5 +-
 .../FilterPicker/DefaultFilterPicker/index.ts |   0
 .../FilterColumnPicker.styled.tsx             |   0
 .../FilterColumnPicker/FilterColumnPicker.tsx |   0
 .../FilterColumnPicker.unit.spec.tsx          |   0
 .../FilterPicker/FilterColumnPicker/index.ts  |   0
 .../FilterOperatorPicker.tsx                  |   0
 .../FilterOperatorPicker/index.ts             |   0
 .../components/FilterPicker/FilterPicker.tsx  |   0
 .../FilterPicker/FilterPicker.unit.spec.tsx   |   0
 .../FilterPickerBody/FilterPickerBody.tsx     |   0
 .../FilterPicker/FilterPickerBody/index.ts    |   0
 .../FilterPickerFooter.styled.tsx             |   0
 .../FilterPickerFooter/FilterPickerFooter.tsx |   0
 .../FilterPicker/FilterPickerFooter/index.ts  |   0
 .../FilterPickerHeader.styled.tsx             |   0
 .../FilterPickerHeader/FilterPickerHeader.tsx |   0
 .../FilterPicker/FilterPickerHeader/index.ts  |   0
 .../NumberFilterPicker/NumberFilterPicker.tsx |   6 +-
 .../NumberFilterPicker.unit.spec.tsx          |   0
 .../FilterPicker/NumberFilterPicker/index.ts  |   0
 .../StringFilterPicker/StringFilterPicker.tsx |   6 +-
 .../StringFilterPicker.unit.spec.tsx          |   0
 .../FilterPicker/StringFilterPicker/index.ts  |   0
 .../TimeFilterPicker/TimeFilterPicker.tsx     |   6 +-
 .../TimeFilterPicker.unit.spec.tsx            |   0
 .../FilterPicker/TimeFilterPicker/index.ts    |   0
 .../components/FilterPicker/constants.ts      |   0
 .../components/FilterPicker/index.ts          |   0
 .../components/FilterPicker/test-utils.ts     |   0
 .../components/FilterPicker/types.ts          |   0
 .../FilterValuePicker/FilterValuePicker.tsx   |   0
 .../FilterValuePicker.unit.spec.tsx           |   0
 .../ListValuePicker.styled.tsx                |   0
 .../ListValuePicker/ListValuePicker.tsx       |   0
 .../ListValuePicker/constants.ts              |   0
 .../ListValuePicker/index.ts                  |   0
 .../ListValuePicker/utils.ts                  |   0
 .../SearchValuePicker/SearchValuePicker.tsx   |   0
 .../SearchValuePicker/constants.ts            |   0
 .../SearchValuePicker/index.ts                |   0
 .../SearchValuePicker/utils.ts                |   0
 .../StaticValuePicker/StaticValuePicker.tsx   |   0
 .../StaticValuePicker/index.ts                |   0
 .../components/FilterValuePicker/index.ts     |   0
 .../components/FilterValuePicker/utils.ts     |   0
 .../TemporalUnitPicker/TemporalUnitPicker.tsx |   0
 .../TemporalUnitPicker.unit.spec.tsx          |   0
 .../components/TemporalUnitPicker/index.ts    |   0
 .../TimeseriesBucketPicker.tsx                |   0
 .../TimeseriesBucketPicker.unit.spec.tsx      |   0
 .../TimeseriesBucketPicker/index.ts           |   0
 .../TimeseriesChrome/TimeseriesChrome.tsx     |   0
 .../TimeseriesChrome.unit.spec.tsx            |   0
 .../TimeseriesFilterPicker.tsx                |   3 +-
 .../TimeseriesFilterPicker.unit.spec.tsx      |   0
 .../TimeseriesFilterPicker/index.ts           |   0
 .../components/TimeseriesChrome/index.ts      |   0
 .../components/TimeseriesChrome/utils.ts      |   0
 .../use-boolean-operator-filter/constants.ts  |   0
 .../use-boolean-operator-filter/index.ts      |   0
 .../use-boolean-operator-filter/types.ts      |   2 +-
 .../use-boolean-operator-filter.ts            |   0
 .../use-boolean-operator-filter.unit.spec.ts  |   0
 .../use-boolean-operator-filter/utils.ts      |   2 +-
 .../use-boolean-option-filter/constants.ts    |   0
 .../hooks/use-boolean-option-filter/index.ts  |   0
 .../hooks/use-boolean-option-filter/types.ts  |   2 +-
 .../use-boolean-option-filter.ts              |   0
 .../use-boolean-option-filter.unit.spec.ts    |   0
 .../hooks/use-boolean-option-filter/utils.ts  |   2 +-
 .../hooks/use-coordinate-filter/constants.ts  |   0
 .../hooks/use-coordinate-filter/index.ts      |   0
 .../hooks/use-coordinate-filter/types.ts      |   2 +-
 .../use-coordinate-filter.ts                  |   0
 .../use-coordinate-filter.unit.spec.ts        |   0
 .../hooks/use-coordinate-filter/utils.ts      |   2 +-
 .../hooks/use-date-filter/index.ts            |   0
 .../hooks/use-date-filter/use-date-filter.ts  |   3 +-
 .../use-date-filter.unit.spec.ts              |   3 +-
 .../hooks/use-date-filter/utils.ts            |  19 +--
 .../hooks/use-default-filter/constants.ts     |   0
 .../hooks/use-default-filter/index.ts         |   0
 .../hooks/use-default-filter/types.ts         |   2 +-
 .../use-default-filter/use-default-filter.ts  |   0
 .../use-default-filter.unit.spec.ts           |   0
 .../hooks/use-default-filter/utils.ts         |   2 +-
 .../hooks/use-filter-modal/constants.ts       |   1 +
 .../filters/hooks/use-filter-modal/index.ts   |   2 +
 .../hooks/use-filter-modal}/types.ts          |  10 --
 .../use-filter-modal/use-filter-modal.ts      |  81 +++++++++
 .../hooks/use-filter-modal}/utils/filters.ts  |   3 +-
 .../hooks/use-filter-modal}/utils/index.ts    |   1 -
 .../hooks/use-filter-modal}/utils/search.ts   |   3 +-
 .../hooks/use-number-filter/constants.ts      |   0
 .../hooks/use-number-filter/index.ts          |   0
 .../hooks/use-number-filter/types.ts          |   2 +-
 .../use-number-filter/use-number-filter.ts    |   0
 .../use-number-filter.unit.spec.ts            |   0
 .../hooks/use-number-filter/utils.ts          |   2 +-
 .../hooks/use-string-filter/constants.ts      |   0
 .../hooks/use-string-filter/index.ts          |   0
 .../hooks/use-string-filter/types.ts          |   2 +-
 .../use-string-filter/use-string-filter.ts    |   0
 .../use-string-filter.unit.spec.ts            |   0
 .../hooks/use-string-filter/utils.ts          |   2 +-
 .../hooks/use-time-filter/constants.ts        |   0
 .../hooks/use-time-filter/index.ts            |   0
 .../hooks/use-time-filter/types.ts            |   2 +-
 .../hooks/use-time-filter/use-time-filter.ts  |   0
 .../use-time-filter.unit.spec.ts              |   0
 .../hooks/use-time-filter/utils.ts            |   2 +-
 .../metabase/querying/{ => filters}/index.ts  |  14 +-
 .../{utils/filters => filters/utils}/index.ts |   0
 .../{utils/filters => filters/utils}/types.ts |   0
 .../{utils/filters => filters/utils}/utils.ts |   0
 .../drills/automatic-insights-drill/index.ts  |   1 -
 .../drills/column-extract-drill/index.ts      |   1 -
 .../utils/drills/column-filter-drill/index.ts |   1 -
 .../drills/combine-columns-drill/index.ts     |   1 -
 .../compare-aggregations-drill/index.ts       |   1 -
 .../utils/drills/distribution-drill/index.ts  |   1 -
 .../utils/drills/filter-drill/index.ts        |   1 -
 .../utils/drills/fk-details-drill/index.ts    |   1 -
 .../utils/drills/fk-filter-drill/index.ts     |   1 -
 .../metabase/querying/utils/drills/index.ts   |   1 -
 .../utils/drills/pivot-drill/index.ts         |   1 -
 .../querying/utils/drills/pk-drill/index.ts   |   1 -
 .../utils/drills/quick-filter-drill/index.ts  |   1 -
 .../querying/utils/drills/sort-drill/index.ts |   1 -
 .../summarize-column-by-time-drill/index.ts   |   1 -
 .../drills/summarize-column-drill/index.ts    |   1 -
 .../drills/underlying-records-drill/index.ts  |   1 -
 .../querying/utils/drills/zoom-drill/index.ts |   1 -
 .../drills/zoom-in-binning-drill/index.ts     |   1 -
 .../drills/zoom-in-geographic-drill/index.ts  |   1 -
 .../drills/zoom-in-timeseries-drill/index.ts  |   1 -
 .../{utils => }/viz-settings/index.ts         |   2 +-
 .../utils}/sync-viz-settings.ts               |   0
 .../utils}/sync-viz-settings.unit.spec.tsx    |   0
 .../visualizations/click-actions/Mode/Mode.ts |   2 +-
 .../ChartSettingTableColumns.tsx              |   2 +-
 378 files changed, 394 insertions(+), 387 deletions(-)
 delete mode 100644 frontend/src/metabase/querying/components/FilterContent/FilterContent.tsx
 delete mode 100644 frontend/src/metabase/querying/components/FilterContent/TabContent/index.ts
 delete mode 100644 frontend/src/metabase/querying/components/FilterContent/TabList/index.ts
 delete mode 100644 frontend/src/metabase/querying/components/FilterContent/TabPanel/index.ts
 delete mode 100644 frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/index.ts
 delete mode 100644 frontend/src/metabase/querying/components/FilterContent/TabPanelItem/index.ts
 delete mode 100644 frontend/src/metabase/querying/components/FilterContent/index.ts
 delete mode 100644 frontend/src/metabase/querying/components/FilterModal/FilterModal.tsx
 delete mode 100644 frontend/src/metabase/querying/components/FilterModal/index.ts
 create mode 100644 frontend/src/metabase/querying/drills/index.ts
 rename frontend/src/metabase/querying/{utils/drills/automatic-insights-drill => drills/utils}/automatic-insights-drill.tsx (100%)
 rename frontend/src/metabase/querying/{utils/drills/column-extract-drill => drills/utils}/column-extract-drill.tsx (100%)
 rename frontend/src/metabase/querying/{utils/drills/column-filter-drill => drills/utils}/column-filter-drill.tsx (91%)
 rename frontend/src/metabase/querying/{utils/drills/combine-columns-drill => drills/utils}/combine-columns-drill.tsx (100%)
 rename frontend/src/metabase/querying/{utils/drills/compare-aggregations-drill => drills/utils}/compare-aggregations-drill.tsx (100%)
 rename frontend/src/metabase/querying/{utils/drills => drills/utils}/constants.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/distribution-drill => drills/utils}/distribution-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/filter-drill => drills/utils}/filter-drill.tsx (91%)
 rename frontend/src/metabase/querying/{utils/drills/fk-details-drill => drills/utils}/fk-details-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/fk-filter-drill => drills/utils}/fk-filter-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/pivot-drill => drills/utils}/pivot-drill.tsx (100%)
 rename frontend/src/metabase/querying/{utils/drills/pk-drill => drills/utils}/pk-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills => drills/utils}/query-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/quick-filter-drill => drills/utils}/quick-filter-drill.tsx (98%)
 rename frontend/src/metabase/querying/{utils/drills/sort-drill => drills/utils}/sort-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/summarize-column-by-time-drill => drills/utils}/summarize-column-by-time-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/summarize-column-drill => drills/utils}/summarize-column-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/underlying-records-drill => drills/utils}/underlying-records-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/zoom-drill => drills/utils}/zoom-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/zoom-in-binning-drill => drills/utils}/zoom-in-binning-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/zoom-in-geographic-drill => drills/utils}/zoom-in-geographic-drill.ts (100%)
 rename frontend/src/metabase/querying/{utils/drills/zoom-in-timeseries-drill => drills/utils}/zoom-in-timeseries-drill.ts (100%)
 rename frontend/src/metabase/querying/{ => fields}/components/FieldPanel/FieldPanel.tsx (100%)
 rename frontend/src/metabase/querying/{ => fields}/components/FieldPanel/FieldPanel.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => fields}/components/FieldPanel/index.ts (100%)
 rename frontend/src/metabase/querying/{ => fields}/components/FieldPanel/types.ts (100%)
 rename frontend/src/metabase/querying/{ => fields}/components/FieldPanel/utils.ts (100%)
 create mode 100644 frontend/src/metabase/querying/fields/index.ts
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateOperatorPicker/DateOperatorPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateOperatorPicker/DateOperatorPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateOperatorPicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateOperatorPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateOperatorPicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateOperatorPicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateOperatorPicker/utils.unit.spec.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DatePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DatePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateShortcutPicker/DateShortcutPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateShortcutPicker/DateShortcutPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateShortcutPicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateShortcutPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateShortcutPicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/DateShortcutPicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/ExcludeDatePicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/ExcludeDatePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/ExcludeDatePicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/ExcludeDatePicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/CurrentDatePicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/CurrentDatePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.unit.spec.tsx (97%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateIntervalPicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateIntervalPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateIntervalPicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/IncludeCurrentSwitch.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/RelativeDatePicker.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/RelativeDatePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/RelativeDatePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/RelativeDatePicker/utils.unit.spec.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SimpleDatePicker/SimpleDatePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SimpleDatePicker/SimpleDatePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SimpleDatePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/DateRangePicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/SingleDatePickerBody.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SingleDatePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SingleDatePicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SpecificDatePicker.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SpecificDatePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/SpecificDatePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/TimeToggle/TimeToggle.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/TimeToggle/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/SpecificDatePicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/DatePicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/BooleanFilterEditor/BooleanFilterEditor.tsx (96%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/BooleanFilterEditor/BooleanFilterEditor.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/BooleanFilterEditor/index.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/ColumnFilterSection/ColumnFilterSection.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/ColumnFilterSection/index.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/CoordinateFilterEditor/CoordinateFilterEditor.tsx (97%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/CoordinateFilterEditor/CoordinateFilterEditor.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/CoordinateFilterEditor/index.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/DateFilterEditor/DateFilterEditor.styled.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/DateFilterEditor/DateFilterEditor.tsx (93%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/DateFilterEditor/DateFilterEditor.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/DateFilterEditor/constants.ts (75%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/DateFilterEditor/index.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/DateFilterEditor/utils.ts (83%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/DefaultFilterEditor/DefaultFilterEditor.tsx (96%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/DefaultFilterEditor/DefaultFilterEditor.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/DefaultFilterEditor/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterModal/FilterModal.styled.tsx (100%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModal.tsx
 rename frontend/src/metabase/querying/{ => filters}/components/FilterModal/FilterModal.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanelColumn/TabPanelColumnItem.tsx => filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/ColumnFilterGroup.tsx} (74%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanelColumn/columns.ts => filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/utils.ts} (100%)
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanelItem/TabPanelFilterItem.tsx => filters/components/FilterModal/FilterModalBody/ColumnFilterItem/ColumnFilterItem.tsx} (70%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterItem/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanelColumn/TabPanelColumnItemList.tsx => filters/components/FilterModal/FilterModalBody/ColumnFilterList/ColumnFilterList.tsx} (67%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanelColumn/sorting.ts => filters/components/FilterModal/FilterModalBody/ColumnFilterList/utils.ts} (94%)
 rename frontend/src/metabase/querying/{components/FilterContent/FilterBody.tsx => filters/components/FilterModal/FilterModalBody/FilterModalBody.tsx} (66%)
 rename frontend/src/metabase/querying/{components/FilterContent/TabContent/TabContent.tsx => filters/components/FilterModal/FilterModalBody/FilterTabContent/FilterTabContent.tsx} (68%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabContent/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/FilterEmptyState.tsx => filters/components/FilterModal/FilterModalBody/FilterTabEmptyState/FilterTabEmptyState.tsx} (88%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabEmptyState/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanelItem/TabPanelItem.styled.tsx => filters/components/FilterModal/FilterModalBody/FilterTabItem/FilterTabItem.styled.tsx} (75%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabItem/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/TabList/TabList.styled.tsx => filters/components/FilterModal/FilterModalBody/FilterTabList/FilterTabList.styled.tsx} (100%)
 rename frontend/src/metabase/querying/{components/FilterContent/TabList/TabList.tsx => filters/components/FilterModal/FilterModalBody/FilterTabList/FilterTabList.tsx} (64%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabList/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanel/TabPanel.styled.tsx => filters/components/FilterModal/FilterModalBody/FilterTabPanel/FilterTabPanel.styled.tsx} (100%)
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanel/TabPanel.tsx => filters/components/FilterModal/FilterModalBody/FilterTabPanel/FilterTabPanel.tsx} (65%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabPanel/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanelItem/TabPanelSegmentItem.tsx => filters/components/FilterModal/FilterModalBody/SegmentFilterItem/SegmentFilterItem.tsx} (58%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/TabPanelItem/segments.ts => filters/components/FilterModal/FilterModalBody/SegmentFilterItem/utils.ts} (90%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/FilterFooter.tsx => filters/components/FilterModal/FilterModalFooter/FilterModalFooter.tsx} (85%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalFooter/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent/FilterHeader.tsx => filters/components/FilterModal/FilterModalHeader/FilterModalHeader.tsx} (61%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal/FilterModalHeader}/FilterSearchInput/FilterSearchInput.styled.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal/FilterModalHeader}/FilterSearchInput/FilterSearchInput.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal/FilterModalHeader}/FilterSearchInput/index.ts (100%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/FilterOperatorPicker/FilterOperatorPicker.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/FilterOperatorPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal/FilterTitle}/FilterColumnName/FilterColumnName.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal/FilterTitle}/FilterColumnName/index.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/FilterTitle/FilterTitle.tsx (94%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/FilterTitle/index.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/NumberFilterEditor/NumberFilterEditor.tsx (96%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/NumberFilterEditor/NumberFilterEditor.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/NumberFilterEditor/index.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/SegmentFilterEditor/SegmentFilterEditor.tsx (94%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/SegmentFilterEditor/SegmentFilterEditor.unit.spec.tsx (97%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/SegmentFilterEditor/index.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/StringFilterEditor/StringFilterEditor.tsx (95%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/StringFilterEditor/StringFilterEditor.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/StringFilterEditor/index.ts (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/TimeFilterEditor/TimeFilterEditor.tsx (96%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/TimeFilterEditor/TimeFilterEditor.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{components/FilterContent => filters/components/FilterModal}/TimeFilterEditor/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterModal/constants.ts (100%)
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/index.ts
 create mode 100644 frontend/src/metabase/querying/filters/components/FilterModal/types.ts
 rename frontend/src/metabase/querying/{components/FilterModal/utils/modal.ts => filters/components/FilterModal/utils.ts} (80%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPanel.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPanel.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPanelButton/FilterPanelButton.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPanelButton/FilterPanelButton.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPanelButton/FilterPanelButton.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPanelButton/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPanelPopover/FilterPanelPopover.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPanelPopover/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPill/FilterPill.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPill/FilterPill.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/FilterPill/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPanel/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.tsx (95%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/BooleanFilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/CoordinateColumnPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.tsx (97%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/CoordinateFilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/DateFilterPicker/DateFilterPicker.tsx (84%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/DateFilterPicker/DateFilterPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/SimpleDateFilterPicker.tsx (79%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/DateFilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.tsx (95%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.unit.spec.tsx (98%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/DefaultFilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterColumnPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterOperatorPicker/FilterOperatorPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterOperatorPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPickerBody/FilterPickerBody.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPickerBody/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPickerFooter/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/FilterPickerHeader/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.tsx (96%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/NumberFilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/StringFilterPicker/StringFilterPicker.tsx (96%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/StringFilterPicker/StringFilterPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/StringFilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.tsx (95%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/TimeFilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/test-utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterPicker/types.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/FilterValuePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/FilterValuePicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/ListValuePicker/ListValuePicker.styled.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/ListValuePicker/ListValuePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/ListValuePicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/ListValuePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/ListValuePicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/SearchValuePicker/SearchValuePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/SearchValuePicker/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/SearchValuePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/SearchValuePicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/StaticValuePicker/StaticValuePicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/StaticValuePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/FilterValuePicker/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TemporalUnitPicker/TemporalUnitPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TemporalUnitPicker/TemporalUnitPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TemporalUnitPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/TimeseriesBucketPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/TimeseriesChrome.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/TimeseriesChrome.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.tsx (94%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.unit.spec.tsx (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/TimeseriesFilterPicker/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/components/TimeseriesChrome/utils.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-operator-filter/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-operator-filter/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-operator-filter/types.ts (70%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-operator-filter/use-boolean-operator-filter.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-operator-filter/use-boolean-operator-filter.unit.spec.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-operator-filter/utils.ts (97%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-option-filter/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-option-filter/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-option-filter/types.ts (76%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-option-filter/use-boolean-option-filter.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-option-filter/use-boolean-option-filter.unit.spec.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-boolean-option-filter/utils.ts (95%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-coordinate-filter/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-coordinate-filter/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-coordinate-filter/types.ts (79%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-coordinate-filter/use-coordinate-filter.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-coordinate-filter/use-coordinate-filter.unit.spec.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-coordinate-filter/utils.ts (99%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-date-filter/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-date-filter/use-date-filter.ts (92%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-date-filter/use-date-filter.unit.spec.ts (99%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-date-filter/utils.ts (93%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-default-filter/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-default-filter/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-default-filter/types.ts (62%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-default-filter/use-default-filter.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-default-filter/use-default-filter.unit.spec.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-default-filter/utils.ts (95%)
 create mode 100644 frontend/src/metabase/querying/filters/hooks/use-filter-modal/constants.ts
 create mode 100644 frontend/src/metabase/querying/filters/hooks/use-filter-modal/index.ts
 rename frontend/src/metabase/querying/{components/FilterContent => filters/hooks/use-filter-modal}/types.ts (64%)
 create mode 100644 frontend/src/metabase/querying/filters/hooks/use-filter-modal/use-filter-modal.ts
 rename frontend/src/metabase/querying/{components/FilterModal => filters/hooks/use-filter-modal}/utils/filters.ts (96%)
 rename frontend/src/metabase/querying/{components/FilterModal => filters/hooks/use-filter-modal}/utils/index.ts (67%)
 rename frontend/src/metabase/querying/{components/FilterModal => filters/hooks/use-filter-modal}/utils/search.ts (92%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-number-filter/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-number-filter/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-number-filter/types.ts (75%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-number-filter/use-number-filter.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-number-filter/use-number-filter.unit.spec.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-number-filter/utils.ts (98%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-string-filter/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-string-filter/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-string-filter/types.ts (74%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-string-filter/use-string-filter.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-string-filter/use-string-filter.unit.spec.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-string-filter/utils.ts (98%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-time-filter/constants.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-time-filter/index.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-time-filter/types.ts (72%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-time-filter/use-time-filter.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-time-filter/use-time-filter.unit.spec.ts (100%)
 rename frontend/src/metabase/querying/{ => filters}/hooks/use-time-filter/utils.ts (98%)
 rename frontend/src/metabase/querying/{ => filters}/index.ts (54%)
 rename frontend/src/metabase/querying/{utils/filters => filters/utils}/index.ts (100%)
 rename frontend/src/metabase/querying/{utils/filters => filters/utils}/types.ts (100%)
 rename frontend/src/metabase/querying/{utils/filters => filters/utils}/utils.ts (100%)
 delete mode 100644 frontend/src/metabase/querying/utils/drills/automatic-insights-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/column-extract-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/column-filter-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/combine-columns-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/compare-aggregations-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/distribution-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/filter-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/fk-details-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/fk-filter-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/pivot-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/pk-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/quick-filter-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/sort-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/summarize-column-by-time-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/summarize-column-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/underlying-records-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/zoom-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/zoom-in-binning-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/zoom-in-geographic-drill/index.ts
 delete mode 100644 frontend/src/metabase/querying/utils/drills/zoom-in-timeseries-drill/index.ts
 rename frontend/src/metabase/querying/{utils => }/viz-settings/index.ts (64%)
 rename frontend/src/metabase/querying/{utils/viz-settings => viz-settings/utils}/sync-viz-settings.ts (100%)
 rename frontend/src/metabase/querying/{utils/viz-settings => viz-settings/utils}/sync-viz-settings.unit.spec.tsx (100%)

diff --git a/enterprise/frontend/src/embedding-sdk/components/private/InteractiveQuestion/components/Filter.tsx b/enterprise/frontend/src/embedding-sdk/components/private/InteractiveQuestion/components/Filter.tsx
index 13d7ae80edf..2e37c604c27 100644
--- a/enterprise/frontend/src/embedding-sdk/components/private/InteractiveQuestion/components/Filter.tsx
+++ b/enterprise/frontend/src/embedding-sdk/components/private/InteractiveQuestion/components/Filter.tsx
@@ -2,8 +2,12 @@ import cx from "classnames";
 
 import { useInteractiveQuestionContext } from "embedding-sdk/components/private/InteractiveQuestion/context";
 import CS from "metabase/css/core/index.css";
-import { FilterContent } from "metabase/querying/components/FilterContent";
-import { useFilterContent } from "metabase/querying/components/FilterModal";
+import {
+  FilterModalBody,
+  FilterModalFooter,
+  FilterModalHeader,
+  useFilterModal,
+} from "metabase/querying/filters";
 import { Box, Group, Stack } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 import type Question from "metabase-lib/v1/Question";
@@ -44,7 +48,7 @@ const FilterInner = ({
     handleReset,
     handleSubmit,
     handleSearch,
-  } = useFilterContent(question.query(), onQueryChange);
+  } = useFilterModal(question.query(), onQueryChange);
 
   const onApplyFilters = () => {
     handleSubmit();
@@ -59,10 +63,10 @@ const FilterInner = ({
   return (
     <Stack w="100%" h="100%">
       <Group position="right">
-        <FilterContent.Header value={searchText} onChange={handleSearch} />
+        <FilterModalHeader value={searchText} onChange={handleSearch} />
       </Group>
       <Box h="100%" className={cx(CS.flex1, CS.overflowHidden)}>
-        <FilterContent.Body
+        <FilterModalBody
           groupItems={visibleItems}
           query={query}
           tab={tab}
@@ -74,7 +78,7 @@ const FilterInner = ({
         />
       </Box>
       <Group>
-        <FilterContent.Footer
+        <FilterModalFooter
           canRemoveFilters={canRemoveFilters}
           onClearFilters={onClearFilters}
           isChanged={isChanged}
diff --git a/frontend/src/metabase/parameters/components/widgets/TemporalUnitWidget/TemporalUnitWidget.tsx b/frontend/src/metabase/parameters/components/widgets/TemporalUnitWidget/TemporalUnitWidget.tsx
index e979d490920..b48561139d8 100644
--- a/frontend/src/metabase/parameters/components/widgets/TemporalUnitWidget/TemporalUnitWidget.tsx
+++ b/frontend/src/metabase/parameters/components/widgets/TemporalUnitWidget/TemporalUnitWidget.tsx
@@ -1,4 +1,4 @@
-import { TemporalUnitPicker } from "metabase/querying";
+import { TemporalUnitPicker } from "metabase/querying/filters";
 import * as Lib from "metabase-lib";
 import type { Parameter, TemporalUnit } from "metabase-types/api";
 
diff --git a/frontend/src/metabase/query_builder/actions/core/utils.ts b/frontend/src/metabase/query_builder/actions/core/utils.ts
index 3337bda805d..eca48431ca6 100644
--- a/frontend/src/metabase/query_builder/actions/core/utils.ts
+++ b/frontend/src/metabase/query_builder/actions/core/utils.ts
@@ -1,7 +1,7 @@
 import _ from "underscore";
 
 import { onCloseQuestionInfo } from "metabase/query_builder/actions";
-import { syncVizSettingsWithQuery } from "metabase/querying";
+import { syncVizSettingsWithQuery } from "metabase/querying/viz-settings";
 import { getPersistableDefaultSettingsForSeries } from "metabase/visualizations/lib/settings/visualization";
 import * as Lib from "metabase-lib";
 import type Question from "metabase-lib/v1/Question";
diff --git a/frontend/src/metabase/query_builder/actions/querying.js b/frontend/src/metabase/query_builder/actions/querying.js
index 8159ba84775..6c51fef1fc8 100644
--- a/frontend/src/metabase/query_builder/actions/querying.js
+++ b/frontend/src/metabase/query_builder/actions/querying.js
@@ -3,7 +3,7 @@ import { t } from "ttag";
 
 import { defer } from "metabase/lib/promise";
 import { createThunkAction } from "metabase/lib/redux";
-import { syncVizSettingsWithSeries } from "metabase/querying";
+import { syncVizSettingsWithSeries } from "metabase/querying/viz-settings";
 import { getWhiteLabeledLoadingMessageFactory } from "metabase/selectors/whitelabel";
 import { runQuestionQuery as apiRunQuestionQuery } from "metabase/services";
 import { getSensibleDisplays } from "metabase/visualizations";
diff --git a/frontend/src/metabase/query_builder/components/QueryModals/QueryModals.tsx b/frontend/src/metabase/query_builder/components/QueryModals/QueryModals.tsx
index 4ffcee45c0e..97101f5b4ad 100644
--- a/frontend/src/metabase/query_builder/components/QueryModals/QueryModals.tsx
+++ b/frontend/src/metabase/query_builder/components/QueryModals/QueryModals.tsx
@@ -20,7 +20,7 @@ import { PreviewQueryModal } from "metabase/query_builder/components/view/Previe
 import type { QueryModalType } from "metabase/query_builder/constants";
 import { MODAL_TYPES } from "metabase/query_builder/constants";
 import { getQuestionWithParameters } from "metabase/query_builder/selectors";
-import { FilterModal } from "metabase/querying";
+import { FilterModal } from "metabase/querying/filters";
 import QuestionMoveToast from "metabase/questions/components/QuestionMoveToast";
 import ArchiveQuestionModal from "metabase/questions/containers/ArchiveQuestionModal";
 import EditEventModal from "metabase/timelines/questions/containers/EditEventModal";
diff --git a/frontend/src/metabase/query_builder/components/notebook/steps/FilterStep/FilterStep.tsx b/frontend/src/metabase/query_builder/components/notebook/steps/FilterStep/FilterStep.tsx
index c03c3c300ed..a259c9cc53e 100644
--- a/frontend/src/metabase/query_builder/components/notebook/steps/FilterStep/FilterStep.tsx
+++ b/frontend/src/metabase/query_builder/components/notebook/steps/FilterStep/FilterStep.tsx
@@ -2,7 +2,7 @@ import { useMemo } from "react";
 import { t } from "ttag";
 
 import ErrorBoundary from "metabase/ErrorBoundary";
-import { FilterPicker } from "metabase/querying";
+import { FilterPicker } from "metabase/querying/filters";
 import * as Lib from "metabase-lib";
 
 import type { NotebookStepUiComponentProps } from "../../types";
diff --git a/frontend/src/metabase/query_builder/components/view/View.jsx b/frontend/src/metabase/query_builder/components/view/View.jsx
index fcf446d4647..c2f1fd854ba 100644
--- a/frontend/src/metabase/query_builder/components/view/View.jsx
+++ b/frontend/src/metabase/query_builder/components/view/View.jsx
@@ -18,7 +18,7 @@ import {
   setArchivedQuestion,
 } from "metabase/query_builder/actions";
 import { SIDEBAR_SIZES } from "metabase/query_builder/constants";
-import { TimeseriesChrome } from "metabase/querying";
+import { TimeseriesChrome } from "metabase/querying/filters";
 import { Transition } from "metabase/ui";
 import * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/query_builder/components/view/ViewHeader/components/QuestionFiltersHeader/QuestionFiltersHeader.tsx b/frontend/src/metabase/query_builder/components/view/ViewHeader/components/QuestionFiltersHeader/QuestionFiltersHeader.tsx
index aa4da2a418f..01ff221a6a9 100644
--- a/frontend/src/metabase/query_builder/components/view/ViewHeader/components/QuestionFiltersHeader/QuestionFiltersHeader.tsx
+++ b/frontend/src/metabase/query_builder/components/view/ViewHeader/components/QuestionFiltersHeader/QuestionFiltersHeader.tsx
@@ -1,4 +1,4 @@
-import { FilterPanel, FilterPanelButton } from "metabase/querying";
+import { FilterPanel, FilterPanelButton } from "metabase/querying/filters";
 import * as Lib from "metabase-lib";
 import type Question from "metabase-lib/v1/Question";
 import type { QueryBuilderMode } from "metabase-types/store";
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterContent.tsx b/frontend/src/metabase/querying/components/FilterContent/FilterContent.tsx
deleted file mode 100644
index 6279a26ee21..00000000000
--- a/frontend/src/metabase/querying/components/FilterContent/FilterContent.tsx
+++ /dev/null
@@ -1,9 +0,0 @@
-import { FilterBody } from "./FilterBody";
-import { FilterFooter } from "./FilterFooter";
-import { FilterHeader } from "./FilterHeader";
-
-export const FilterContent = {
-  Header: FilterHeader,
-  Body: FilterBody,
-  Footer: FilterFooter,
-};
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabContent/index.ts b/frontend/src/metabase/querying/components/FilterContent/TabContent/index.ts
deleted file mode 100644
index 6cf08a2ade1..00000000000
--- a/frontend/src/metabase/querying/components/FilterContent/TabContent/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./TabContent";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabList/index.ts b/frontend/src/metabase/querying/components/FilterContent/TabList/index.ts
deleted file mode 100644
index abb98da193a..00000000000
--- a/frontend/src/metabase/querying/components/FilterContent/TabList/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./TabList";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanel/index.ts b/frontend/src/metabase/querying/components/FilterContent/TabPanel/index.ts
deleted file mode 100644
index bed5cc54b96..00000000000
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanel/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./TabPanel";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/index.ts b/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/index.ts
deleted file mode 100644
index 736e416921f..00000000000
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./TabPanelColumnItemList";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/index.ts b/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/index.ts
deleted file mode 100644
index 117b2359265..00000000000
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export * from "./TabPanelFilterItem";
-export * from "./TabPanelSegmentItem";
diff --git a/frontend/src/metabase/querying/components/FilterContent/index.ts b/frontend/src/metabase/querying/components/FilterContent/index.ts
deleted file mode 100644
index adde954727e..00000000000
--- a/frontend/src/metabase/querying/components/FilterContent/index.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-export * from "./TabContent";
-export * from "./FilterSearchInput";
-export * from "./types";
-export * from "./FilterContent";
diff --git a/frontend/src/metabase/querying/components/FilterModal/FilterModal.tsx b/frontend/src/metabase/querying/components/FilterModal/FilterModal.tsx
deleted file mode 100644
index 76f53b92473..00000000000
--- a/frontend/src/metabase/querying/components/FilterModal/FilterModal.tsx
+++ /dev/null
@@ -1,157 +0,0 @@
-import { useMemo, useRef, useState } from "react";
-
-import CS from "metabase/css/core/index.css";
-import { FilterContent } from "metabase/querying/components/FilterContent";
-import { Flex, Modal } from "metabase/ui";
-import * as Lib from "metabase-lib";
-
-import { ModalBody, ModalFooter, ModalHeader } from "./FilterModal.styled";
-import { SEARCH_KEY } from "./constants";
-import {
-  appendStageIfAggregated,
-  getGroupItems,
-  getModalTitle,
-  getModalWidth,
-  hasFilters,
-  isSearchActive,
-  removeFilters,
-  searchGroupItems,
-} from "./utils";
-
-export interface FilterModalProps {
-  query: Lib.Query;
-  onSubmit: (newQuery: Lib.Query) => void;
-  onClose: () => void;
-}
-
-export const useFilterContent = (
-  initialQuery: Lib.Query,
-  onSubmit: (newQuery: Lib.Query) => void,
-) => {
-  const [query, setQuery] = useState(() =>
-    appendStageIfAggregated(initialQuery),
-  );
-  const queryRef = useRef(query);
-  const [version, setVersion] = useState(1);
-  const [isChanged, setIsChanged] = useState(false);
-  const groupItems = useMemo(() => getGroupItems(query), [query]);
-  const [tab, setTab] = useState<string | null>(groupItems[0]?.key);
-  const canRemoveFilters = useMemo(() => hasFilters(query), [query]);
-  const [searchText, setSearchText] = useState("");
-  const isSearching = isSearchActive(searchText);
-
-  const visibleItems = useMemo(
-    () => (isSearching ? searchGroupItems(groupItems, searchText) : groupItems),
-    [groupItems, searchText, isSearching],
-  );
-
-  const handleInput = () => {
-    if (!isChanged) {
-      setIsChanged(true);
-    }
-  };
-
-  const handleChange = (newQuery: Lib.Query) => {
-    setQuery(newQuery);
-    setIsChanged(true);
-    // for handleSubmit to see the latest query if it is called in the same tick
-    queryRef.current = newQuery;
-  };
-
-  const handleReset = () => {
-    handleChange(removeFilters(query));
-    // to reset internal state of filter components
-    setVersion(version + 1);
-  };
-
-  const handleSubmit = () => {
-    onSubmit(Lib.dropEmptyStages(queryRef.current));
-  };
-
-  const handleSearch = (searchText: string) => {
-    setTab(isSearchActive(searchText) ? SEARCH_KEY : groupItems[0]?.key);
-    setSearchText(searchText);
-  };
-
-  return {
-    query,
-    version,
-    isChanged,
-    groupItems,
-    tab,
-    setTab,
-    canRemoveFilters,
-    searchText,
-    isSearching,
-    visibleItems,
-    handleInput,
-    handleChange,
-    handleReset,
-    handleSubmit,
-    handleSearch,
-  };
-};
-
-export function FilterModal({
-  query: initialQuery,
-  onSubmit,
-  onClose,
-}: FilterModalProps) {
-  const {
-    query,
-    version,
-    isChanged,
-    groupItems,
-    tab,
-    setTab,
-    canRemoveFilters,
-    searchText,
-    isSearching,
-    visibleItems,
-    handleInput,
-    handleChange,
-    handleReset,
-    handleSubmit,
-    handleSearch,
-  } = useFilterContent(initialQuery, onSubmit);
-
-  const onSubmitFilters = () => {
-    handleSubmit();
-    onClose();
-  };
-
-  return (
-    <Modal.Root opened size={getModalWidth(groupItems)} onClose={onClose}>
-      <Modal.Overlay />
-      <Modal.Content>
-        <ModalHeader p="lg">
-          <Modal.Title>{getModalTitle(groupItems)}</Modal.Title>
-          <Flex mx="md" justify="end" className={CS.flex1}>
-            <FilterContent.Header value={searchText} onChange={handleSearch} />
-          </Flex>
-          <Modal.CloseButton />
-        </ModalHeader>
-        <ModalBody p={0}>
-          <FilterContent.Body
-            groupItems={visibleItems}
-            query={query}
-            tab={tab}
-            version={version}
-            searching={isSearching}
-            onChange={handleChange}
-            onInput={handleInput}
-            onTabChange={setTab}
-          />
-        </ModalBody>
-        <ModalFooter p="md" direction="row" justify="space-between">
-          <FilterContent.Footer
-            canRemoveFilters={canRemoveFilters}
-            onClearFilters={handleReset}
-            isChanged={isChanged}
-            onApplyFilters={onSubmitFilters}
-          />
-        </ModalFooter>
-      </Modal.Content>
-    </Modal.Root>
-  );
-}
diff --git a/frontend/src/metabase/querying/components/FilterModal/index.ts b/frontend/src/metabase/querying/components/FilterModal/index.ts
deleted file mode 100644
index 18ec978aaa7..00000000000
--- a/frontend/src/metabase/querying/components/FilterModal/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./FilterModal";
diff --git a/frontend/src/metabase/querying/drills/index.ts b/frontend/src/metabase/querying/drills/index.ts
new file mode 100644
index 00000000000..f6f32ba809b
--- /dev/null
+++ b/frontend/src/metabase/querying/drills/index.ts
@@ -0,0 +1 @@
+export { queryDrill } from "./utils/query-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/automatic-insights-drill/automatic-insights-drill.tsx b/frontend/src/metabase/querying/drills/utils/automatic-insights-drill.tsx
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/automatic-insights-drill/automatic-insights-drill.tsx
rename to frontend/src/metabase/querying/drills/utils/automatic-insights-drill.tsx
diff --git a/frontend/src/metabase/querying/utils/drills/column-extract-drill/column-extract-drill.tsx b/frontend/src/metabase/querying/drills/utils/column-extract-drill.tsx
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/column-extract-drill/column-extract-drill.tsx
rename to frontend/src/metabase/querying/drills/utils/column-extract-drill.tsx
diff --git a/frontend/src/metabase/querying/utils/drills/column-filter-drill/column-filter-drill.tsx b/frontend/src/metabase/querying/drills/utils/column-filter-drill.tsx
similarity index 91%
rename from frontend/src/metabase/querying/utils/drills/column-filter-drill/column-filter-drill.tsx
rename to frontend/src/metabase/querying/drills/utils/column-filter-drill.tsx
index 484b4df7e32..27c2744a4d7 100644
--- a/frontend/src/metabase/querying/utils/drills/column-filter-drill/column-filter-drill.tsx
+++ b/frontend/src/metabase/querying/drills/utils/column-filter-drill.tsx
@@ -3,7 +3,7 @@ import { t } from "ttag";
 import type { Drill } from "metabase/visualizations/types/click-actions";
 import * as Lib from "metabase-lib";
 
-import { getFilterPopover } from "../filter-drill";
+import { getFilterPopover } from "./filter-drill";
 
 export const columnFilterDrill: Drill<Lib.ColumnFilterDrillThruInfo> = ({
   question,
diff --git a/frontend/src/metabase/querying/utils/drills/combine-columns-drill/combine-columns-drill.tsx b/frontend/src/metabase/querying/drills/utils/combine-columns-drill.tsx
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/combine-columns-drill/combine-columns-drill.tsx
rename to frontend/src/metabase/querying/drills/utils/combine-columns-drill.tsx
diff --git a/frontend/src/metabase/querying/utils/drills/compare-aggregations-drill/compare-aggregations-drill.tsx b/frontend/src/metabase/querying/drills/utils/compare-aggregations-drill.tsx
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/compare-aggregations-drill/compare-aggregations-drill.tsx
rename to frontend/src/metabase/querying/drills/utils/compare-aggregations-drill.tsx
diff --git a/frontend/src/metabase/querying/utils/drills/constants.ts b/frontend/src/metabase/querying/drills/utils/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/constants.ts
rename to frontend/src/metabase/querying/drills/utils/constants.ts
diff --git a/frontend/src/metabase/querying/utils/drills/distribution-drill/distribution-drill.ts b/frontend/src/metabase/querying/drills/utils/distribution-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/distribution-drill/distribution-drill.ts
rename to frontend/src/metabase/querying/drills/utils/distribution-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/filter-drill/filter-drill.tsx b/frontend/src/metabase/querying/drills/utils/filter-drill.tsx
similarity index 91%
rename from frontend/src/metabase/querying/utils/drills/filter-drill/filter-drill.tsx
rename to frontend/src/metabase/querying/drills/utils/filter-drill.tsx
index 052d8f7bc8c..291a1dc65ec 100644
--- a/frontend/src/metabase/querying/utils/drills/filter-drill/filter-drill.tsx
+++ b/frontend/src/metabase/querying/drills/utils/filter-drill.tsx
@@ -1,4 +1,4 @@
-import { FilterPickerBody } from "metabase/querying/components/FilterPicker/FilterPickerBody";
+import { FilterPickerBody } from "metabase/querying/filters";
 import type { ClickActionPopoverProps } from "metabase/visualizations/types";
 import * as Lib from "metabase-lib";
 import type Question from "metabase-lib/v1/Question";
diff --git a/frontend/src/metabase/querying/utils/drills/fk-details-drill/fk-details-drill.ts b/frontend/src/metabase/querying/drills/utils/fk-details-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/fk-details-drill/fk-details-drill.ts
rename to frontend/src/metabase/querying/drills/utils/fk-details-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/fk-filter-drill/fk-filter-drill.ts b/frontend/src/metabase/querying/drills/utils/fk-filter-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/fk-filter-drill/fk-filter-drill.ts
rename to frontend/src/metabase/querying/drills/utils/fk-filter-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/pivot-drill/pivot-drill.tsx b/frontend/src/metabase/querying/drills/utils/pivot-drill.tsx
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/pivot-drill/pivot-drill.tsx
rename to frontend/src/metabase/querying/drills/utils/pivot-drill.tsx
diff --git a/frontend/src/metabase/querying/utils/drills/pk-drill/pk-drill.ts b/frontend/src/metabase/querying/drills/utils/pk-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/pk-drill/pk-drill.ts
rename to frontend/src/metabase/querying/drills/utils/pk-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/query-drill.ts b/frontend/src/metabase/querying/drills/utils/query-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/query-drill.ts
rename to frontend/src/metabase/querying/drills/utils/query-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/quick-filter-drill/quick-filter-drill.tsx b/frontend/src/metabase/querying/drills/utils/quick-filter-drill.tsx
similarity index 98%
rename from frontend/src/metabase/querying/utils/drills/quick-filter-drill/quick-filter-drill.tsx
rename to frontend/src/metabase/querying/drills/utils/quick-filter-drill.tsx
index 85fa058d028..86436ba2d14 100644
--- a/frontend/src/metabase/querying/utils/drills/quick-filter-drill/quick-filter-drill.tsx
+++ b/frontend/src/metabase/querying/drills/utils/quick-filter-drill.tsx
@@ -7,7 +7,7 @@ import type {
 import * as Lib from "metabase-lib";
 import type Question from "metabase-lib/v1/Question";
 
-import { getFilterPopover } from "../filter-drill";
+import { getFilterPopover } from "./filter-drill";
 
 export const quickFilterDrill: Drill<Lib.QuickFilterDrillThruInfo> = ({
   question,
diff --git a/frontend/src/metabase/querying/utils/drills/sort-drill/sort-drill.ts b/frontend/src/metabase/querying/drills/utils/sort-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/sort-drill/sort-drill.ts
rename to frontend/src/metabase/querying/drills/utils/sort-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/summarize-column-by-time-drill/summarize-column-by-time-drill.ts b/frontend/src/metabase/querying/drills/utils/summarize-column-by-time-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/summarize-column-by-time-drill/summarize-column-by-time-drill.ts
rename to frontend/src/metabase/querying/drills/utils/summarize-column-by-time-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/summarize-column-drill/summarize-column-drill.ts b/frontend/src/metabase/querying/drills/utils/summarize-column-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/summarize-column-drill/summarize-column-drill.ts
rename to frontend/src/metabase/querying/drills/utils/summarize-column-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/underlying-records-drill/underlying-records-drill.ts b/frontend/src/metabase/querying/drills/utils/underlying-records-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/underlying-records-drill/underlying-records-drill.ts
rename to frontend/src/metabase/querying/drills/utils/underlying-records-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/zoom-drill/zoom-drill.ts b/frontend/src/metabase/querying/drills/utils/zoom-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/zoom-drill/zoom-drill.ts
rename to frontend/src/metabase/querying/drills/utils/zoom-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/zoom-in-binning-drill/zoom-in-binning-drill.ts b/frontend/src/metabase/querying/drills/utils/zoom-in-binning-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/zoom-in-binning-drill/zoom-in-binning-drill.ts
rename to frontend/src/metabase/querying/drills/utils/zoom-in-binning-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/zoom-in-geographic-drill/zoom-in-geographic-drill.ts b/frontend/src/metabase/querying/drills/utils/zoom-in-geographic-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/zoom-in-geographic-drill/zoom-in-geographic-drill.ts
rename to frontend/src/metabase/querying/drills/utils/zoom-in-geographic-drill.ts
diff --git a/frontend/src/metabase/querying/utils/drills/zoom-in-timeseries-drill/zoom-in-timeseries-drill.ts b/frontend/src/metabase/querying/drills/utils/zoom-in-timeseries-drill.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/drills/zoom-in-timeseries-drill/zoom-in-timeseries-drill.ts
rename to frontend/src/metabase/querying/drills/utils/zoom-in-timeseries-drill.ts
diff --git a/frontend/src/metabase/querying/components/FieldPanel/FieldPanel.tsx b/frontend/src/metabase/querying/fields/components/FieldPanel/FieldPanel.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FieldPanel/FieldPanel.tsx
rename to frontend/src/metabase/querying/fields/components/FieldPanel/FieldPanel.tsx
diff --git a/frontend/src/metabase/querying/components/FieldPanel/FieldPanel.unit.spec.tsx b/frontend/src/metabase/querying/fields/components/FieldPanel/FieldPanel.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FieldPanel/FieldPanel.unit.spec.tsx
rename to frontend/src/metabase/querying/fields/components/FieldPanel/FieldPanel.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FieldPanel/index.ts b/frontend/src/metabase/querying/fields/components/FieldPanel/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FieldPanel/index.ts
rename to frontend/src/metabase/querying/fields/components/FieldPanel/index.ts
diff --git a/frontend/src/metabase/querying/components/FieldPanel/types.ts b/frontend/src/metabase/querying/fields/components/FieldPanel/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FieldPanel/types.ts
rename to frontend/src/metabase/querying/fields/components/FieldPanel/types.ts
diff --git a/frontend/src/metabase/querying/components/FieldPanel/utils.ts b/frontend/src/metabase/querying/fields/components/FieldPanel/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FieldPanel/utils.ts
rename to frontend/src/metabase/querying/fields/components/FieldPanel/utils.ts
diff --git a/frontend/src/metabase/querying/fields/index.ts b/frontend/src/metabase/querying/fields/index.ts
new file mode 100644
index 00000000000..b38c33d461c
--- /dev/null
+++ b/frontend/src/metabase/querying/fields/index.ts
@@ -0,0 +1 @@
+export { FieldPanel } from "./components/FieldPanel";
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/DateOperatorPicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/DateOperatorPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/DateOperatorPicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/DateOperatorPicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/DateOperatorPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/DateOperatorPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/DateOperatorPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/DateOperatorPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/constants.ts b/frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/types.ts b/frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/types.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/types.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/utils.ts b/frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/utils.unit.spec.ts b/frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/utils.unit.spec.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateOperatorPicker/utils.unit.spec.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateOperatorPicker/utils.unit.spec.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/DatePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/DatePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DatePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/DatePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/DatePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/DatePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DatePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/DatePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/DateShortcutPicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/DateShortcutPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/DateShortcutPicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/DateShortcutPicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/DateShortcutPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/DateShortcutPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/DateShortcutPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/DateShortcutPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/constants.ts b/frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/types.ts b/frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/types.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/types.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/utils.ts b/frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/DateShortcutPicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/DateShortcutPicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/ExcludeDatePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/constants.ts b/frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/types.ts b/frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/types.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/types.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/utils.ts b/frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/ExcludeDatePicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/ExcludeDatePicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/CurrentDatePicker/CurrentDatePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/CurrentDatePicker/constants.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/CurrentDatePicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/CurrentDatePicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/CurrentDatePicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/CurrentDatePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/CurrentDatePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/CurrentDatePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/CurrentDatePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/DateIntervalPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.unit.spec.tsx
similarity index 97%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.unit.spec.tsx
index 6486018db97..457ceaf36a3 100644
--- a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.unit.spec.tsx
+++ b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/SimpleDateIntervalPicker.unit.spec.tsx
@@ -1,8 +1,8 @@
 import userEvent from "@testing-library/user-event";
 
 import { renderWithProviders, screen } from "__support__/ui";
+import type { RelativeIntervalDirection } from "metabase/querying/filters/components/DatePicker/types";
 
-import type { RelativeIntervalDirection } from "../../../types";
 import type { DateIntervalValue } from "../../types";
 
 import { SimpleDateIntervalPicker } from "./SimpleDateIntervalPicker";
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/SimpleDateIntervalPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/constants.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/utils.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateIntervalPicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateIntervalPicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.styled.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.styled.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.styled.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/DateOffsetIntervalPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/utils.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/DateOffsetIntervalPicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/IncludeCurrentSwitch.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/IncludeCurrentSwitch.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/IncludeCurrentSwitch.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/IncludeCurrentSwitch.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/IncludeCurrentSwitch/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/RelativeDatePicker.styled.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/RelativeDatePicker.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/RelativeDatePicker.styled.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/RelativeDatePicker.styled.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/RelativeDatePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/RelativeDatePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/RelativeDatePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/RelativeDatePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/RelativeDatePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/RelativeDatePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/RelativeDatePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/RelativeDatePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/constants.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/types.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/types.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/types.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/utils.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/utils.unit.spec.ts b/frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/utils.unit.spec.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/RelativeDatePicker/utils.unit.spec.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/RelativeDatePicker/utils.unit.spec.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SimpleDatePicker/SimpleDatePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SimpleDatePicker/SimpleDatePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SimpleDatePicker/SimpleDatePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SimpleDatePicker/SimpleDatePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SimpleDatePicker/SimpleDatePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SimpleDatePicker/SimpleDatePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SimpleDatePicker/SimpleDatePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SimpleDatePicker/SimpleDatePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SimpleDatePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SimpleDatePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SimpleDatePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SimpleDatePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.styled.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.styled.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.styled.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/DateRangePickerBody.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/DateRangePickerBody/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/SimpleDateRangePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/SimpleDateRangePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/types.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/DateRangePicker/types.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/DateRangePicker/types.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/SimpleSpecificDatePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SimpleSpecificDatePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/SimpleSingleDatePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SimpleSingleDatePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/SingleDatePickerBody.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/SingleDatePickerBody.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/SingleDatePickerBody.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/SingleDatePickerBody.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/SingleDatePickerBody/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/types.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SingleDatePicker/types.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SingleDatePicker/types.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SpecificDatePicker.styled.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SpecificDatePicker.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SpecificDatePicker.styled.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SpecificDatePicker.styled.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SpecificDatePicker.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SpecificDatePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SpecificDatePicker.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SpecificDatePicker.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SpecificDatePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SpecificDatePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/SpecificDatePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/SpecificDatePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/TimeToggle/TimeToggle.tsx b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/TimeToggle/TimeToggle.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/TimeToggle/TimeToggle.tsx
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/TimeToggle/TimeToggle.tsx
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/TimeToggle/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/TimeToggle/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/TimeToggle/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/TimeToggle/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/constants.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/types.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/types.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/types.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/utils.ts b/frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/SpecificDatePicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/SpecificDatePicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/constants.ts b/frontend/src/metabase/querying/filters/components/DatePicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/index.ts b/frontend/src/metabase/querying/filters/components/DatePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/types.ts b/frontend/src/metabase/querying/filters/components/DatePicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/types.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/types.ts
diff --git a/frontend/src/metabase/querying/components/DatePicker/utils.ts b/frontend/src/metabase/querying/filters/components/DatePicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/DatePicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/DatePicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/BooleanFilterEditor/BooleanFilterEditor.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/BooleanFilterEditor/BooleanFilterEditor.tsx
similarity index 96%
rename from frontend/src/metabase/querying/components/FilterContent/BooleanFilterEditor/BooleanFilterEditor.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/BooleanFilterEditor/BooleanFilterEditor.tsx
index 7b7e57ce98c..55603ccb658 100644
--- a/frontend/src/metabase/querying/components/FilterContent/BooleanFilterEditor/BooleanFilterEditor.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/BooleanFilterEditor/BooleanFilterEditor.tsx
@@ -2,7 +2,7 @@ import { useMemo } from "react";
 import { t } from "ttag";
 
 import { getColumnIcon } from "metabase/common/utils/columns";
-import { useBooleanOperatorFilter } from "metabase/querying/hooks/use-boolean-operator-filter";
+import { useBooleanOperatorFilter } from "metabase/querying/filters/hooks/use-boolean-operator-filter";
 import { Checkbox, Grid, Group } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterContent/BooleanFilterEditor/BooleanFilterEditor.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/BooleanFilterEditor/BooleanFilterEditor.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/BooleanFilterEditor/BooleanFilterEditor.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/BooleanFilterEditor/BooleanFilterEditor.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/BooleanFilterEditor/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/BooleanFilterEditor/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/BooleanFilterEditor/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/BooleanFilterEditor/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/ColumnFilterSection/ColumnFilterSection.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/ColumnFilterSection/ColumnFilterSection.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/ColumnFilterSection/ColumnFilterSection.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/ColumnFilterSection/ColumnFilterSection.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/ColumnFilterSection/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/ColumnFilterSection/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/ColumnFilterSection/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/ColumnFilterSection/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/CoordinateFilterEditor/CoordinateFilterEditor.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/CoordinateFilterEditor/CoordinateFilterEditor.tsx
similarity index 97%
rename from frontend/src/metabase/querying/components/FilterContent/CoordinateFilterEditor/CoordinateFilterEditor.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/CoordinateFilterEditor/CoordinateFilterEditor.tsx
index 5c08d98f0a7..df33007a007 100644
--- a/frontend/src/metabase/querying/components/FilterContent/CoordinateFilterEditor/CoordinateFilterEditor.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/CoordinateFilterEditor/CoordinateFilterEditor.tsx
@@ -3,8 +3,10 @@ import { t } from "ttag";
 
 import { getColumnIcon } from "metabase/common/utils/columns";
 import { isNumber } from "metabase/lib/types";
-import type { NumberValue } from "metabase/querying/hooks/use-coordinate-filter";
-import { useCoordinateFilter } from "metabase/querying/hooks/use-coordinate-filter";
+import {
+  type NumberValue,
+  useCoordinateFilter,
+} from "metabase/querying/filters/hooks/use-coordinate-filter";
 import { Flex, Grid, NumberInput, Text } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterContent/CoordinateFilterEditor/CoordinateFilterEditor.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/CoordinateFilterEditor/CoordinateFilterEditor.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/CoordinateFilterEditor/CoordinateFilterEditor.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/CoordinateFilterEditor/CoordinateFilterEditor.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/CoordinateFilterEditor/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/CoordinateFilterEditor/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/CoordinateFilterEditor/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/CoordinateFilterEditor/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/DateFilterEditor.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/DateFilterEditor.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/DateFilterEditor.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/DateFilterEditor.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/DateFilterEditor.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/DateFilterEditor.tsx
similarity index 93%
rename from frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/DateFilterEditor.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/DateFilterEditor.tsx
index 375d81482ed..638dd6bf458 100644
--- a/frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/DateFilterEditor.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/DateFilterEditor.tsx
@@ -4,16 +4,16 @@ import { t } from "ttag";
 
 import { getColumnIcon } from "metabase/common/utils/columns";
 import IconButtonWrapper from "metabase/components/IconButtonWrapper";
-import type {
-  DatePickerExtractionUnit,
-  DatePickerOperator,
-  DatePickerValue,
-  ShortcutOption,
-} from "metabase/querying/components/DatePicker";
-import { DatePicker } from "metabase/querying/components/DatePicker";
-import { useDateFilter } from "metabase/querying/hooks/use-date-filter";
+import { useDateFilter } from "metabase/querying/filters/hooks/use-date-filter";
 import { Button, Flex, Grid, Icon, Popover } from "metabase/ui";
 
+import {
+  DatePicker,
+  type DatePickerExtractionUnit,
+  type DatePickerOperator,
+  type DatePickerValue,
+  type ShortcutOption,
+} from "../../DatePicker";
 import { FilterTitle, HoverParent } from "../FilterTitle";
 import type { FilterEditorProps } from "../types";
 
diff --git a/frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/DateFilterEditor.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/DateFilterEditor.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/DateFilterEditor.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/DateFilterEditor.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/constants.ts b/frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/constants.ts
similarity index 75%
rename from frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/constants.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/constants.ts
index d3e92665a3c..c06519d1bf8 100644
--- a/frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/constants.ts
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/constants.ts
@@ -1,4 +1,4 @@
-import type { DatePickerShortcut } from "metabase/querying/components/DatePicker";
+import type { DatePickerShortcut } from "../../DatePicker";
 
 export const MAIN_SHORTCUTS: DatePickerShortcut[] = [
   "today",
diff --git a/frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/utils.ts b/frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/utils.ts
similarity index 83%
rename from frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/utils.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/utils.ts
index ff829318922..6e0f1e03e1e 100644
--- a/frontend/src/metabase/querying/components/FilterContent/DateFilterEditor/utils.ts
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/DateFilterEditor/utils.ts
@@ -1,5 +1,7 @@
-import type { DatePickerValue } from "metabase/querying/components/DatePicker";
-import { getShortcutOptions } from "metabase/querying/components/DatePicker";
+import {
+  type DatePickerValue,
+  getShortcutOptions,
+} from "metabase/querying/filters/components/DatePicker";
 import * as Lib from "metabase-lib";
 
 import { MAIN_SHORTCUTS } from "./constants";
diff --git a/frontend/src/metabase/querying/components/FilterContent/DefaultFilterEditor/DefaultFilterEditor.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/DefaultFilterEditor/DefaultFilterEditor.tsx
similarity index 96%
rename from frontend/src/metabase/querying/components/FilterContent/DefaultFilterEditor/DefaultFilterEditor.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/DefaultFilterEditor/DefaultFilterEditor.tsx
index 732317f5dea..a5ad2684377 100644
--- a/frontend/src/metabase/querying/components/FilterContent/DefaultFilterEditor/DefaultFilterEditor.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/DefaultFilterEditor/DefaultFilterEditor.tsx
@@ -1,12 +1,12 @@
 import { useMemo } from "react";
 
 import { getColumnIcon } from "metabase/common/utils/columns";
-import { Checkbox, Grid, Group } from "metabase/ui";
-
 import {
   type OperatorOption,
   useDefaultFilter,
-} from "../../../hooks/use-default-filter";
+} from "metabase/querying/filters/hooks/use-default-filter";
+import { Checkbox, Grid, Group } from "metabase/ui";
+
 import { FilterTitle, HoverParent } from "../FilterTitle";
 import type { FilterEditorProps } from "../types";
 
diff --git a/frontend/src/metabase/querying/components/FilterContent/DefaultFilterEditor/DefaultFilterEditor.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/DefaultFilterEditor/DefaultFilterEditor.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/DefaultFilterEditor/DefaultFilterEditor.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/DefaultFilterEditor/DefaultFilterEditor.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/DefaultFilterEditor/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/DefaultFilterEditor/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/DefaultFilterEditor/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/DefaultFilterEditor/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterModal/FilterModal.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModal.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterModal/FilterModal.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModal.styled.tsx
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModal.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModal.tsx
new file mode 100644
index 00000000000..2077b342045
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModal.tsx
@@ -0,0 +1,80 @@
+import { Flex, Modal } from "metabase/ui";
+import type * as Lib from "metabase-lib";
+
+import { useFilterModal } from "../../hooks/use-filter-modal";
+
+import { ModalBody, ModalFooter, ModalHeader } from "./FilterModal.styled";
+import { FilterModalBody } from "./FilterModalBody";
+import { FilterModalFooter } from "./FilterModalFooter";
+import { FilterModalHeader } from "./FilterModalHeader";
+import { getModalTitle, getModalWidth } from "./utils";
+
+export interface FilterModalProps {
+  query: Lib.Query;
+  onSubmit: (newQuery: Lib.Query) => void;
+  onClose: () => void;
+}
+
+export function FilterModal({
+  query: initialQuery,
+  onSubmit,
+  onClose,
+}: FilterModalProps) {
+  const {
+    query,
+    version,
+    isChanged,
+    groupItems,
+    tab,
+    setTab,
+    canRemoveFilters,
+    searchText,
+    isSearching,
+    visibleItems,
+    handleInput,
+    handleChange,
+    handleReset,
+    handleSubmit,
+    handleSearch,
+  } = useFilterModal(initialQuery, onSubmit);
+
+  const onSubmitFilters = () => {
+    handleSubmit();
+    onClose();
+  };
+
+  return (
+    <Modal.Root opened size={getModalWidth(groupItems)} onClose={onClose}>
+      <Modal.Overlay />
+      <Modal.Content>
+        <ModalHeader p="lg">
+          <Modal.Title>{getModalTitle(groupItems)}</Modal.Title>
+          <Flex mx="md" justify="end" style={{ flex: 1 }}>
+            <FilterModalHeader value={searchText} onChange={handleSearch} />
+          </Flex>
+          <Modal.CloseButton />
+        </ModalHeader>
+        <ModalBody p={0}>
+          <FilterModalBody
+            groupItems={visibleItems}
+            query={query}
+            tab={tab}
+            version={version}
+            searching={isSearching}
+            onChange={handleChange}
+            onInput={handleInput}
+            onTabChange={setTab}
+          />
+        </ModalBody>
+        <ModalFooter p="md" direction="row" justify="space-between">
+          <FilterModalFooter
+            canRemoveFilters={canRemoveFilters}
+            onClearFilters={handleReset}
+            isChanged={isChanged}
+            onApplyFilters={onSubmitFilters}
+          />
+        </ModalFooter>
+      </Modal.Content>
+    </Modal.Root>
+  );
+}
diff --git a/frontend/src/metabase/querying/components/FilterModal/FilterModal.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModal.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterModal/FilterModal.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModal.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/TabPanelColumnItem.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/ColumnFilterGroup.tsx
similarity index 74%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/TabPanelColumnItem.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/ColumnFilterGroup.tsx
index 9702e2a4c6e..4278ccc15d5 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/TabPanelColumnItem.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/ColumnFilterGroup.tsx
@@ -1,14 +1,14 @@
 import { useMemo, useState } from "react";
 
+import type { ColumnItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import { DelayGroup } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 
-import { TabPanelFilterItem } from "../TabPanelItem";
-import type { ColumnItem } from "../types";
+import { ColumnFilterItem } from "../ColumnFilterItem";
 
-import { findColumnFilters, findVisibleFilters } from "./columns";
+import { findColumnFilters, findVisibleFilters } from "./utils";
 
-export interface TabPanelColumnItemProps {
+export interface ColumnFilterGroupProps {
   query: Lib.Query;
   columnItem: ColumnItem;
   isSearching: boolean;
@@ -16,13 +16,13 @@ export interface TabPanelColumnItemProps {
   onInput: () => void;
 }
 
-export function TabPanelColumnItem({
+export function ColumnFilterGroup({
   query,
   columnItem,
   isSearching,
   onChange,
   onInput,
-}: TabPanelColumnItemProps) {
+}: ColumnFilterGroupProps) {
   const { column, stageIndex } = columnItem;
   const currentFilters = useMemo(
     () => findColumnFilters(query, stageIndex, column),
@@ -34,7 +34,7 @@ export function TabPanelColumnItem({
   return (
     <DelayGroup>
       {visibleFilters.map((filter, filterIndex) => (
-        <TabPanelFilterItem
+        <ColumnFilterItem
           key={filterIndex}
           query={query}
           columnItem={columnItem}
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/index.ts
new file mode 100644
index 00000000000..4618e742ee6
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/index.ts
@@ -0,0 +1 @@
+export * from "./ColumnFilterGroup";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/columns.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/columns.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterGroup/utils.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/TabPanelFilterItem.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterItem/ColumnFilterItem.tsx
similarity index 70%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanelItem/TabPanelFilterItem.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterItem/ColumnFilterItem.tsx
index 3eef087a53a..8b387ddc864 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/TabPanelFilterItem.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterItem/ColumnFilterItem.tsx
@@ -1,11 +1,10 @@
+import type { ColumnItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import * as Lib from "metabase-lib";
 
-import { ColumnFilterSection } from "../ColumnFilterSection";
-import type { ColumnItem } from "../types";
+import { ColumnFilterSection } from "../../ColumnFilterSection";
+import { FilterTabItem } from "../FilterTabItem";
 
-import { TabPanelItem } from "./TabPanelItem.styled";
-
-export interface TabPanelFilterItemProps {
+export interface ColumnFilterItemProps {
   query: Lib.Query;
   columnItem: ColumnItem;
   filter: Lib.FilterClause | undefined;
@@ -14,14 +13,14 @@ export interface TabPanelFilterItemProps {
   onInput: () => void;
 }
 
-export function TabPanelFilterItem({
+export function ColumnFilterItem({
   query,
   columnItem,
   filter,
   isSearching,
   onChange,
   onInput,
-}: TabPanelFilterItemProps) {
+}: ColumnFilterItemProps) {
   const { column, displayName, stageIndex } = columnItem;
 
   const handleChange = (newFilter: Lib.ExpressionClause | undefined) => {
@@ -35,7 +34,7 @@ export function TabPanelFilterItem({
   };
 
   return (
-    <TabPanelItem component="li" data-testid={`filter-column-${displayName}`}>
+    <FilterTabItem component="li" data-testid={`filter-column-${displayName}`}>
       <ColumnFilterSection
         query={query}
         stageIndex={stageIndex}
@@ -45,6 +44,6 @@ export function TabPanelFilterItem({
         onChange={handleChange}
         onInput={onInput}
       />
-    </TabPanelItem>
+    </FilterTabItem>
   );
 }
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterItem/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterItem/index.ts
new file mode 100644
index 00000000000..82d502f26a1
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterItem/index.ts
@@ -0,0 +1 @@
+export * from "./ColumnFilterItem";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/TabPanelColumnItemList.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/ColumnFilterList.tsx
similarity index 67%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/TabPanelColumnItemList.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/ColumnFilterList.tsx
index 8f81a6f3f64..14493cc7709 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/TabPanelColumnItemList.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/ColumnFilterList.tsx
@@ -1,13 +1,13 @@
 import { useMemo } from "react";
 
+import type { ColumnItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import type * as Lib from "metabase-lib";
 
-import type { ColumnItem } from "../types";
+import { ColumnFilterGroup } from "../ColumnFilterGroup";
 
-import { TabPanelColumnItem } from "./TabPanelColumnItem";
-import { sortColumns } from "./sorting";
+import { sortColumns } from "./utils";
 
-export interface TabPanelColumnItemListProps {
+export interface ColumnFilterListProps {
   query: Lib.Query;
   columnItems: ColumnItem[];
   isSearching: boolean;
@@ -15,19 +15,19 @@ export interface TabPanelColumnItemListProps {
   onInput: () => void;
 }
 
-export const TabPanelColumnItemList = ({
+export const ColumnFilterList = ({
   query,
   columnItems,
   isSearching,
   onChange,
   onInput,
-}: TabPanelColumnItemListProps) => {
+}: ColumnFilterListProps) => {
   const sortedItems = useMemo(() => sortColumns(columnItems), [columnItems]);
 
   return (
     <>
       {sortedItems.map((columnItem, columnIndex) => (
-        <TabPanelColumnItem
+        <ColumnFilterGroup
           key={columnIndex}
           query={query}
           columnItem={columnItem}
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/index.ts
new file mode 100644
index 00000000000..d66644b264d
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/index.ts
@@ -0,0 +1 @@
+export * from "./ColumnFilterList";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/sorting.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/utils.ts
similarity index 94%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/sorting.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/utils.ts
index c8b79cff8e6..c2363e99261 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanelColumn/sorting.ts
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/ColumnFilterList/utils.ts
@@ -1,7 +1,6 @@
+import type { ColumnItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import * as Lib from "metabase-lib";
 
-import type { ColumnItem } from "../types";
-
 function isCreationDateOrTimestamp(column: Lib.ColumnMetadata) {
   return Lib.isCreationDate(column) || Lib.isCreationTimestamp(column);
 }
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterBody.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterModalBody.tsx
similarity index 66%
rename from frontend/src/metabase/querying/components/FilterContent/FilterBody.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterModalBody.tsx
index 52262fc3ff3..46f0862bfee 100644
--- a/frontend/src/metabase/querying/components/FilterContent/FilterBody.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterModalBody.tsx
@@ -1,10 +1,10 @@
+import type { GroupItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import type * as Lib from "metabase-lib";
 
-import { FilterEmptyState } from "./FilterEmptyState";
-import { TabContent } from "./TabContent";
-import type { GroupItem } from "./types";
+import { FilterTabContent } from "./FilterTabContent";
+import { FilterTabEmptyState } from "./FilterTabEmptyState";
 
-type FilterBodyProps = {
+type FilterModalBodyProps = {
   groupItems: GroupItem[];
   query: Lib.Query;
   tab: string | null;
@@ -17,7 +17,7 @@ type FilterBodyProps = {
   ) => void;
 };
 
-export const FilterBody = ({
+export const FilterModalBody = ({
   groupItems,
   onChange,
   onInput,
@@ -26,9 +26,9 @@ export const FilterBody = ({
   searching,
   tab,
   version,
-}: FilterBodyProps) =>
+}: FilterModalBodyProps) =>
   groupItems.length > 0 ? (
-    <TabContent
+    <FilterTabContent
       query={query}
       groupItems={groupItems}
       tab={tab}
@@ -39,5 +39,5 @@ export const FilterBody = ({
       onTabChange={onTabChange}
     />
   ) : (
-    <FilterEmptyState />
+    <FilterTabEmptyState />
   );
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabContent/TabContent.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabContent/FilterTabContent.tsx
similarity index 68%
rename from frontend/src/metabase/querying/components/FilterContent/TabContent/TabContent.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabContent/FilterTabContent.tsx
index 358e1e163d0..261a716f220 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabContent/TabContent.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabContent/FilterTabContent.tsx
@@ -1,11 +1,11 @@
+import type { GroupItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import { Flex, Tabs } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 
-import { TabList } from "../TabList";
-import { TabPanel } from "../TabPanel";
-import type { GroupItem } from "../types";
+import { FilterTabList } from "../FilterTabList";
+import { FilterTabPanel } from "../FilterTabPanel";
 
-export interface TabContentProps {
+export interface FilterTabContentProps {
   query: Lib.Query;
   groupItems: GroupItem[];
   tab: string | null;
@@ -16,7 +16,7 @@ export interface TabContentProps {
   onTabChange: (tab: string | null) => void;
 }
 
-export function TabContent({
+export function FilterTabContent({
   query,
   groupItems,
   tab,
@@ -25,13 +25,13 @@ export function TabContent({
   onChange,
   onInput,
   onTabChange,
-}: TabContentProps) {
+}: FilterTabContentProps) {
   return (
     <Tabs value={tab} onTabChange={onTabChange} orientation="vertical" h="100%">
       <Flex direction="row" w="100%">
-        {groupItems.length > 1 && <TabList groupItems={groupItems} />}
+        {groupItems.length > 1 && <FilterTabList groupItems={groupItems} />}
         {groupItems.map(groupItem => (
-          <TabPanel
+          <FilterTabPanel
             key={`${groupItem.key}:${version}`}
             query={query}
             groupItem={groupItem}
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabContent/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabContent/index.ts
new file mode 100644
index 00000000000..f58b1a23b9e
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabContent/index.ts
@@ -0,0 +1 @@
+export * from "./FilterTabContent";
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterEmptyState.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabEmptyState/FilterTabEmptyState.tsx
similarity index 88%
rename from frontend/src/metabase/querying/components/FilterContent/FilterEmptyState.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabEmptyState/FilterTabEmptyState.tsx
index 1ee23e10f84..4d43bfd52a3 100644
--- a/frontend/src/metabase/querying/components/FilterContent/FilterEmptyState.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabEmptyState/FilterTabEmptyState.tsx
@@ -2,7 +2,7 @@ import { t } from "ttag";
 
 import { Icon, Stack, Text } from "metabase/ui";
 
-export function FilterEmptyState() {
+export function FilterTabEmptyState() {
   return (
     <Stack c="text-light" h="100%" justify="center" align="center">
       <Icon name="search" size={40} />
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabEmptyState/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabEmptyState/index.ts
new file mode 100644
index 00000000000..6632d14a99b
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabEmptyState/index.ts
@@ -0,0 +1 @@
+export * from "./FilterTabEmptyState";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/TabPanelItem.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabItem/FilterTabItem.styled.tsx
similarity index 75%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanelItem/TabPanelItem.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabItem/FilterTabItem.styled.tsx
index e22be8594db..4f7161e8447 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/TabPanelItem.styled.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabItem/FilterTabItem.styled.tsx
@@ -2,11 +2,11 @@ import styled from "@emotion/styled";
 
 import { Box, type BoxProps } from "metabase/ui";
 
-interface ColumnItemRootProps extends BoxProps {
+interface FilterTabItemProps extends BoxProps {
   component?: string;
 }
 
-export const TabPanelItem = styled(Box)<ColumnItemRootProps>`
+export const FilterTabItem = styled(Box)<FilterTabItemProps>`
   border-bottom: 1px solid var(--mb-color-border);
   padding: 1rem 2rem;
   padding-left: 0;
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabItem/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabItem/index.ts
new file mode 100644
index 00000000000..e4ab4b80f5d
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabItem/index.ts
@@ -0,0 +1 @@
+export * from "./FilterTabItem.styled";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabList/TabList.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabList/FilterTabList.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/TabList/TabList.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabList/FilterTabList.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabList/TabList.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabList/FilterTabList.tsx
similarity index 64%
rename from frontend/src/metabase/querying/components/FilterContent/TabList/TabList.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabList/FilterTabList.tsx
index 3da3b48ab69..bfe361b600a 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabList/TabList.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabList/FilterTabList.tsx
@@ -1,14 +1,13 @@
+import type { GroupItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import { Icon, Tabs } from "metabase/ui";
 
-import type { GroupItem } from "../types";
+import { TabsListSidebar } from "./FilterTabList.styled";
 
-import { TabsListSidebar } from "./TabList.styled";
-
-export interface TabListProps {
+export interface FilterTabListProps {
   groupItems: GroupItem[];
 }
 
-export function TabList({ groupItems }: TabListProps) {
+export function FilterTabList({ groupItems }: FilterTabListProps) {
   return (
     <TabsListSidebar w="25%" pt="sm" pl="md">
       {groupItems.map(groupItem => (
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabList/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabList/index.ts
new file mode 100644
index 00000000000..26ec63091bc
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabList/index.ts
@@ -0,0 +1 @@
+export * from "./FilterTabList";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanel/TabPanel.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabPanel/FilterTabPanel.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanel/TabPanel.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabPanel/FilterTabPanel.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanel/TabPanel.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabPanel/FilterTabPanel.tsx
similarity index 65%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanel/TabPanel.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabPanel/FilterTabPanel.tsx
index 27ddf5720ef..84422ad2845 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanel/TabPanel.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabPanel/FilterTabPanel.tsx
@@ -1,12 +1,12 @@
+import type { GroupItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import type * as Lib from "metabase-lib";
 
-import { TabPanelColumnItemList } from "../TabPanelColumn";
-import { TabPanelSegmentItem } from "../TabPanelItem";
-import type { GroupItem } from "../types";
+import { ColumnFilterList } from "../ColumnFilterList";
+import { SegmentFilterItem } from "../SegmentFilterItem";
 
-import { TabPanelRoot } from "./TabPanel.styled";
+import { TabPanelRoot } from "./FilterTabPanel.styled";
 
-export interface TabPanelProps {
+export interface FilterTabPanelProps {
   query: Lib.Query;
   groupItem: GroupItem;
   isSearching: boolean;
@@ -14,25 +14,25 @@ export interface TabPanelProps {
   onInput: () => void;
 }
 
-export function TabPanel({
+export function FilterTabPanel({
   query,
   groupItem,
   isSearching,
   onChange,
   onInput,
-}: TabPanelProps) {
+}: FilterTabPanelProps) {
   return (
     <TabPanelRoot value={groupItem.key}>
       <ul>
         {groupItem.segmentItems.length > 0 && (
-          <TabPanelSegmentItem
+          <SegmentFilterItem
             query={query}
             segmentItems={groupItem.segmentItems}
             onChange={onChange}
           />
         )}
         {groupItem.columnItems.length > 0 && (
-          <TabPanelColumnItemList
+          <ColumnFilterList
             query={query}
             columnItems={groupItem.columnItems}
             isSearching={isSearching}
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabPanel/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabPanel/index.ts
new file mode 100644
index 00000000000..1eecec15cc9
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/FilterTabPanel/index.ts
@@ -0,0 +1 @@
+export * from "./FilterTabPanel";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/TabPanelSegmentItem.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/SegmentFilterItem.tsx
similarity index 58%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanelItem/TabPanelSegmentItem.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/SegmentFilterItem.tsx
index 12033aa8d05..05ccc48a295 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/TabPanelSegmentItem.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/SegmentFilterItem.tsx
@@ -1,29 +1,29 @@
+import type { SegmentItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import type * as Lib from "metabase-lib";
 
-import { SegmentFilterEditor } from "../SegmentFilterEditor";
-import type { SegmentItem } from "../types";
+import { SegmentFilterEditor } from "../../SegmentFilterEditor";
+import { FilterTabItem } from "../FilterTabItem";
 
-import { TabPanelItem } from "./TabPanelItem.styled";
-import { addSegmentFilters, removeSegmentFilters } from "./segments";
+import { addSegmentFilters, removeSegmentFilters } from "./utils";
 
-export interface TabPanelSegmentItemProps {
+export interface SegmentFilterItemProps {
   query: Lib.Query;
   segmentItems: SegmentItem[];
   onChange: (newQuery: Lib.Query) => void;
 }
 
-export function TabPanelSegmentItem({
+export function SegmentFilterItem({
   query,
   segmentItems,
   onChange,
-}: TabPanelSegmentItemProps) {
+}: SegmentFilterItemProps) {
   const handleChange = (newSegmentItems: SegmentItem[]) => {
     const newQuery = removeSegmentFilters(query, segmentItems);
     onChange(addSegmentFilters(newQuery, newSegmentItems));
   };
 
   return (
-    <TabPanelItem
+    <FilterTabItem
       component="li"
       px="2rem"
       py="1rem"
@@ -33,6 +33,6 @@ export function TabPanelSegmentItem({
         segmentItems={segmentItems}
         onChange={handleChange}
       />
-    </TabPanelItem>
+    </FilterTabItem>
   );
 }
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/index.ts
new file mode 100644
index 00000000000..c8c930d31a7
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/index.ts
@@ -0,0 +1 @@
+export * from "./SegmentFilterItem";
diff --git a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/segments.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/utils.ts
similarity index 90%
rename from frontend/src/metabase/querying/components/FilterContent/TabPanelItem/segments.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/utils.ts
index a3231f9bd2d..18dca7348a5 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TabPanelItem/segments.ts
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/SegmentFilterItem/utils.ts
@@ -1,7 +1,6 @@
+import type { SegmentItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import * as Lib from "metabase-lib";
 
-import type { SegmentItem } from "../types";
-
 export function addSegmentFilters(
   query: Lib.Query,
   segmentItems: SegmentItem[],
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/index.ts
new file mode 100644
index 00000000000..323a830fb69
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalBody/index.ts
@@ -0,0 +1 @@
+export * from "./FilterModalBody";
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterFooter.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalFooter/FilterModalFooter.tsx
similarity index 85%
rename from frontend/src/metabase/querying/components/FilterContent/FilterFooter.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalFooter/FilterModalFooter.tsx
index fe9152cb970..a9b258062db 100644
--- a/frontend/src/metabase/querying/components/FilterContent/FilterFooter.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalFooter/FilterModalFooter.tsx
@@ -2,19 +2,19 @@ import { t } from "ttag";
 
 import { Button } from "metabase/ui";
 
-type FilterFooterProps = {
+type FilterModalFooterProps = {
   canRemoveFilters: boolean;
   onClearFilters: () => void;
   isChanged: boolean;
   onApplyFilters: () => void;
 };
 
-export const FilterFooter = ({
+export const FilterModalFooter = ({
   canRemoveFilters,
   isChanged,
   onApplyFilters,
   onClearFilters,
-}: FilterFooterProps) => (
+}: FilterModalFooterProps) => (
   <>
     <Button
       variant="subtle"
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalFooter/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalFooter/index.ts
new file mode 100644
index 00000000000..d811f548d1a
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalFooter/index.ts
@@ -0,0 +1 @@
+export * from "./FilterModalFooter";
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterHeader.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/FilterModalHeader.tsx
similarity index 61%
rename from frontend/src/metabase/querying/components/FilterContent/FilterHeader.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/FilterModalHeader.tsx
index 8f4d6d4881a..7d71f984c19 100644
--- a/frontend/src/metabase/querying/components/FilterContent/FilterHeader.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/FilterModalHeader.tsx
@@ -1,10 +1,13 @@
 import { FilterSearchInput } from "./FilterSearchInput";
 
-type FilterHeaderProps = {
+type FilterModalHeaderProps = {
   value: string;
   onChange: (searchText: string) => void;
 };
 
-export const FilterHeader = ({ value, onChange }: FilterHeaderProps) => {
+export const FilterModalHeader = ({
+  value,
+  onChange,
+}: FilterModalHeaderProps) => {
   return <FilterSearchInput searchText={value} onChange={onChange} />;
 };
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterSearchInput/FilterSearchInput.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/FilterSearchInput/FilterSearchInput.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/FilterSearchInput/FilterSearchInput.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/FilterSearchInput/FilterSearchInput.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterSearchInput/FilterSearchInput.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/FilterSearchInput/FilterSearchInput.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/FilterSearchInput/FilterSearchInput.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/FilterSearchInput/FilterSearchInput.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterSearchInput/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/FilterSearchInput/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/FilterSearchInput/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/FilterSearchInput/index.ts
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/index.ts
new file mode 100644
index 00000000000..49aa191a223
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterModalHeader/index.ts
@@ -0,0 +1 @@
+export * from "./FilterModalHeader";
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterOperatorPicker/FilterOperatorPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterOperatorPicker/FilterOperatorPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/FilterOperatorPicker/FilterOperatorPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterOperatorPicker/FilterOperatorPicker.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterOperatorPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterOperatorPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/FilterOperatorPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterOperatorPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterColumnName/FilterColumnName.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterTitle/FilterColumnName/FilterColumnName.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/FilterColumnName/FilterColumnName.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterTitle/FilterColumnName/FilterColumnName.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterColumnName/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/FilterTitle/FilterColumnName/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/FilterColumnName/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterTitle/FilterColumnName/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterTitle/FilterTitle.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterTitle/FilterTitle.tsx
similarity index 94%
rename from frontend/src/metabase/querying/components/FilterContent/FilterTitle/FilterTitle.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterTitle/FilterTitle.tsx
index 5f73d2371d5..c7495d54e86 100644
--- a/frontend/src/metabase/querying/components/FilterContent/FilterTitle/FilterTitle.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/FilterTitle/FilterTitle.tsx
@@ -8,7 +8,7 @@ import type { IconName } from "metabase/ui";
 import { Flex } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 
-import { FilterColumnName } from "../FilterColumnName";
+import { FilterColumnName } from "./FilterColumnName";
 
 type FilterTitleProps = {
   children?: ReactNode;
diff --git a/frontend/src/metabase/querying/components/FilterContent/FilterTitle/index.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/FilterTitle/index.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/FilterTitle/index.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/FilterTitle/index.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/NumberFilterEditor/NumberFilterEditor.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/NumberFilterEditor/NumberFilterEditor.tsx
similarity index 96%
rename from frontend/src/metabase/querying/components/FilterContent/NumberFilterEditor/NumberFilterEditor.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/NumberFilterEditor/NumberFilterEditor.tsx
index 4d597b1529c..e15ec360725 100644
--- a/frontend/src/metabase/querying/components/FilterContent/NumberFilterEditor/NumberFilterEditor.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/NumberFilterEditor/NumberFilterEditor.tsx
@@ -3,8 +3,10 @@ import { t } from "ttag";
 
 import { getColumnIcon } from "metabase/common/utils/columns";
 import { isNumber } from "metabase/lib/types";
-import type { NumberValue } from "metabase/querying/hooks/use-number-filter";
-import { useNumberFilter } from "metabase/querying/hooks/use-number-filter";
+import {
+  type NumberValue,
+  useNumberFilter,
+} from "metabase/querying/filters/hooks/use-number-filter";
 import { Flex, Grid, NumberInput, Text } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterContent/NumberFilterEditor/NumberFilterEditor.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/NumberFilterEditor/NumberFilterEditor.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/NumberFilterEditor/NumberFilterEditor.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/NumberFilterEditor/NumberFilterEditor.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/NumberFilterEditor/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/NumberFilterEditor/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/NumberFilterEditor/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/NumberFilterEditor/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/SegmentFilterEditor/SegmentFilterEditor.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/SegmentFilterEditor/SegmentFilterEditor.tsx
similarity index 94%
rename from frontend/src/metabase/querying/components/FilterContent/SegmentFilterEditor/SegmentFilterEditor.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/SegmentFilterEditor/SegmentFilterEditor.tsx
index cf441c6251a..081d66d502c 100644
--- a/frontend/src/metabase/querying/components/FilterContent/SegmentFilterEditor/SegmentFilterEditor.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/SegmentFilterEditor/SegmentFilterEditor.tsx
@@ -1,9 +1,8 @@
 import { t } from "ttag";
 
+import type { SegmentItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import { Flex, Grid, Icon, MultiSelect, Text } from "metabase/ui";
 
-import type { SegmentItem } from "../types";
-
 interface SegmentFilterEditorProps {
   segmentItems: SegmentItem[];
   onChange: (newSegmentItems: SegmentItem[]) => void;
diff --git a/frontend/src/metabase/querying/components/FilterContent/SegmentFilterEditor/SegmentFilterEditor.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/SegmentFilterEditor/SegmentFilterEditor.unit.spec.tsx
similarity index 97%
rename from frontend/src/metabase/querying/components/FilterContent/SegmentFilterEditor/SegmentFilterEditor.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/SegmentFilterEditor/SegmentFilterEditor.unit.spec.tsx
index dd9642a2444..d91797ac55b 100644
--- a/frontend/src/metabase/querying/components/FilterContent/SegmentFilterEditor/SegmentFilterEditor.unit.spec.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/SegmentFilterEditor/SegmentFilterEditor.unit.spec.tsx
@@ -2,6 +2,7 @@ import userEvent from "@testing-library/user-event";
 
 import { createMockMetadata } from "__support__/metadata";
 import { renderWithProviders, screen } from "__support__/ui";
+import type { SegmentItem } from "metabase/querying/filters/hooks/use-filter-modal";
 import * as Lib from "metabase-lib";
 import { createQuery, findSegment } from "metabase-lib/test-helpers";
 import { createMockSegment } from "metabase-types/api/mocks";
@@ -11,8 +12,6 @@ import {
   createSampleDatabase,
 } from "metabase-types/api/mocks/presets";
 
-import type { SegmentItem } from "../types";
-
 import { SegmentFilterEditor } from "./SegmentFilterEditor";
 
 const SEGMENT1 = createMockSegment({
diff --git a/frontend/src/metabase/querying/components/FilterContent/SegmentFilterEditor/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/SegmentFilterEditor/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/SegmentFilterEditor/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/SegmentFilterEditor/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/StringFilterEditor/StringFilterEditor.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/StringFilterEditor/StringFilterEditor.tsx
similarity index 95%
rename from frontend/src/metabase/querying/components/FilterContent/StringFilterEditor/StringFilterEditor.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/StringFilterEditor/StringFilterEditor.tsx
index a540229f100..c35957f40ee 100644
--- a/frontend/src/metabase/querying/components/FilterContent/StringFilterEditor/StringFilterEditor.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/StringFilterEditor/StringFilterEditor.tsx
@@ -2,8 +2,10 @@ import { useMemo, useState } from "react";
 import { t } from "ttag";
 
 import { getColumnIcon } from "metabase/common/utils/columns";
-import type { OperatorType } from "metabase/querying/hooks/use-string-filter";
-import { useStringFilter } from "metabase/querying/hooks/use-string-filter";
+import {
+  type OperatorType,
+  useStringFilter,
+} from "metabase/querying/filters/hooks/use-string-filter";
 import { Grid, MultiAutocomplete } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterContent/StringFilterEditor/StringFilterEditor.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/StringFilterEditor/StringFilterEditor.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/StringFilterEditor/StringFilterEditor.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/StringFilterEditor/StringFilterEditor.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/StringFilterEditor/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/StringFilterEditor/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/StringFilterEditor/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/StringFilterEditor/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterContent/TimeFilterEditor/TimeFilterEditor.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/TimeFilterEditor/TimeFilterEditor.tsx
similarity index 96%
rename from frontend/src/metabase/querying/components/FilterContent/TimeFilterEditor/TimeFilterEditor.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/TimeFilterEditor/TimeFilterEditor.tsx
index 469348f5e94..70070b7e3dc 100644
--- a/frontend/src/metabase/querying/components/FilterContent/TimeFilterEditor/TimeFilterEditor.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/TimeFilterEditor/TimeFilterEditor.tsx
@@ -2,8 +2,10 @@ import { useMemo, useState } from "react";
 import { t } from "ttag";
 
 import { getColumnIcon } from "metabase/common/utils/columns";
-import type { TimeValue } from "metabase/querying/hooks/use-time-filter";
-import { useTimeFilter } from "metabase/querying/hooks/use-time-filter";
+import {
+  type TimeValue,
+  useTimeFilter,
+} from "metabase/querying/filters/hooks/use-time-filter";
 import { Flex, Grid, Text, TimeInput } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterContent/TimeFilterEditor/TimeFilterEditor.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterModal/TimeFilterEditor/TimeFilterEditor.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/TimeFilterEditor/TimeFilterEditor.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterModal/TimeFilterEditor/TimeFilterEditor.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterContent/TimeFilterEditor/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/TimeFilterEditor/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterContent/TimeFilterEditor/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/TimeFilterEditor/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterModal/constants.ts b/frontend/src/metabase/querying/filters/components/FilterModal/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterModal/constants.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/constants.ts
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/index.ts b/frontend/src/metabase/querying/filters/components/FilterModal/index.ts
new file mode 100644
index 00000000000..24bf8a346e7
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/index.ts
@@ -0,0 +1,4 @@
+export * from "./FilterModal";
+export * from "./FilterModalHeader";
+export * from "./FilterModalBody";
+export * from "./FilterModalFooter";
diff --git a/frontend/src/metabase/querying/filters/components/FilterModal/types.ts b/frontend/src/metabase/querying/filters/components/FilterModal/types.ts
new file mode 100644
index 00000000000..69f66bfc3e3
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/types.ts
@@ -0,0 +1,11 @@
+import type * as Lib from "metabase-lib";
+
+export interface FilterEditorProps {
+  query: Lib.Query;
+  stageIndex: number;
+  column: Lib.ColumnMetadata;
+  filter: Lib.FilterClause | undefined;
+  isSearching: boolean;
+  onChange: (filter: Lib.ExpressionClause | undefined) => void;
+  onInput: () => void;
+}
diff --git a/frontend/src/metabase/querying/components/FilterModal/utils/modal.ts b/frontend/src/metabase/querying/filters/components/FilterModal/utils.ts
similarity index 80%
rename from frontend/src/metabase/querying/components/FilterModal/utils/modal.ts
rename to frontend/src/metabase/querying/filters/components/FilterModal/utils.ts
index 25aa3d2f5e1..d9aefce37b0 100644
--- a/frontend/src/metabase/querying/components/FilterModal/utils/modal.ts
+++ b/frontend/src/metabase/querying/filters/components/FilterModal/utils.ts
@@ -1,6 +1,6 @@
 import { t } from "ttag";
 
-import type { GroupItem } from "metabase/querying/components/FilterContent";
+import type { GroupItem } from "metabase/querying/filters/hooks/use-filter-modal";
 
 export function getModalTitle(groupItems: GroupItem[]) {
   return groupItems.length === 1
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPanel.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanel.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPanel.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanel.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPanel.tsx b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanel.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPanel.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanel.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPanelButton/FilterPanelButton.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelButton/FilterPanelButton.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPanelButton/FilterPanelButton.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelButton/FilterPanelButton.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPanelButton/FilterPanelButton.tsx b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelButton/FilterPanelButton.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPanelButton/FilterPanelButton.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelButton/FilterPanelButton.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPanelButton/FilterPanelButton.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelButton/FilterPanelButton.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPanelButton/FilterPanelButton.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelButton/FilterPanelButton.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPanelButton/index.ts b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelButton/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPanelButton/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelButton/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPanelPopover/FilterPanelPopover.tsx b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelPopover/FilterPanelPopover.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPanelPopover/FilterPanelPopover.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelPopover/FilterPanelPopover.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPanelPopover/index.ts b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelPopover/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPanelPopover/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPanelPopover/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPill/FilterPill.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPill/FilterPill.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPill/FilterPill.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPill/FilterPill.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPill/FilterPill.tsx b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPill/FilterPill.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPill/FilterPill.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPill/FilterPill.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPanel/FilterPill/index.ts b/frontend/src/metabase/querying/filters/components/FilterPanel/FilterPill/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/FilterPill/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPanel/FilterPill/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPanel/index.ts b/frontend/src/metabase/querying/filters/components/FilterPanel/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPanel/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPanel/types.ts b/frontend/src/metabase/querying/filters/components/FilterPanel/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/types.ts
rename to frontend/src/metabase/querying/filters/components/FilterPanel/types.ts
diff --git a/frontend/src/metabase/querying/components/FilterPanel/utils.ts b/frontend/src/metabase/querying/filters/components/FilterPanel/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPanel/utils.ts
rename to frontend/src/metabase/querying/filters/components/FilterPanel/utils.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.tsx
similarity index 95%
rename from frontend/src/metabase/querying/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.tsx
index 6e8b88100ef..8cd44f8e9c9 100644
--- a/frontend/src/metabase/querying/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.tsx
@@ -2,7 +2,7 @@ import type { FormEvent } from "react";
 import { useMemo } from "react";
 import { t } from "ttag";
 
-import { useBooleanOptionFilter } from "metabase/querying/hooks/use-boolean-option-filter";
+import { useBooleanOptionFilter } from "metabase/querying/filters/hooks/use-boolean-option-filter";
 import { Box, Button, Icon, Radio, Stack } from "metabase/ui";
 import * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/BooleanFilterPicker/BooleanFilterPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/BooleanFilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/BooleanFilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/BooleanFilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/BooleanFilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/CoordinateColumnPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/CoordinateColumnPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/CoordinateColumnPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/CoordinateColumnPicker.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/types.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/types.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/types.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/utils.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateColumnPicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.tsx
similarity index 97%
rename from frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.tsx
index 141d5ef1e63..ce44f49fcc1 100644
--- a/frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.tsx
@@ -3,8 +3,10 @@ import { useMemo } from "react";
 import { t } from "ttag";
 
 import { isNumber } from "metabase/lib/types";
-import type { NumberValue } from "metabase/querying/hooks/use-coordinate-filter";
-import { useCoordinateFilter } from "metabase/querying/hooks/use-coordinate-filter";
+import {
+  type NumberValue,
+  useCoordinateFilter,
+} from "metabase/querying/filters/hooks/use-coordinate-filter";
 import { Box, Flex, NumberInput, Stack, Text } from "metabase/ui";
 import * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/CoordinateFilterPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/CoordinateFilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/CoordinateFilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/DateFilterPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/DateFilterPicker.tsx
similarity index 84%
rename from frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/DateFilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/DateFilterPicker.tsx
index 69315fb6d62..5e16fc89a11 100644
--- a/frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/DateFilterPicker.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/DateFilterPicker.tsx
@@ -1,11 +1,10 @@
 import { useMemo } from "react";
 
-import type { DatePickerValue } from "metabase/querying/components/DatePicker";
-import { DatePicker } from "metabase/querying/components/DatePicker";
-import { useDateFilter } from "metabase/querying/hooks/use-date-filter";
+import { useDateFilter } from "metabase/querying/filters/hooks/use-date-filter";
 import { PopoverBackButton } from "metabase/ui";
 import * as Lib from "metabase-lib";
 
+import { DatePicker, type DatePickerValue } from "../../DatePicker";
 import type { FilterPickerWidgetProps } from "../types";
 
 export function DateFilterPicker({
diff --git a/frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/DateFilterPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/DateFilterPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/DateFilterPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/DateFilterPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/SimpleDateFilterPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/SimpleDateFilterPicker.tsx
similarity index 79%
rename from frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/SimpleDateFilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/SimpleDateFilterPicker.tsx
index 207806ac3f7..1987ce9e4d8 100644
--- a/frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/SimpleDateFilterPicker.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/SimpleDateFilterPicker.tsx
@@ -1,6 +1,8 @@
-import type { DatePickerValue } from "metabase/querying/components/DatePicker";
-import { SimpleDatePicker } from "metabase/querying/components/DatePicker";
-import { useDateFilter } from "metabase/querying/hooks/use-date-filter";
+import {
+  type DatePickerValue,
+  SimpleDatePicker,
+} from "metabase/querying/filters/components/DatePicker";
+import { useDateFilter } from "metabase/querying/filters/hooks/use-date-filter";
 import type * as Lib from "metabase-lib";
 
 interface SimpleDateFilterPickerProps {
diff --git a/frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/SimpleDateFilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/DateFilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/DateFilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.tsx
similarity index 95%
rename from frontend/src/metabase/querying/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.tsx
index 534388e5ed1..cf156ef668f 100644
--- a/frontend/src/metabase/querying/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.tsx
@@ -1,10 +1,10 @@
 import type { FormEvent } from "react";
 import { useMemo } from "react";
 
+import { useDefaultFilter } from "metabase/querying/filters/hooks/use-default-filter";
 import { Box, Radio, Stack } from "metabase/ui";
 import * as Lib from "metabase-lib";
 
-import { useDefaultFilter } from "../../../hooks/use-default-filter";
 import { FilterPickerFooter } from "../FilterPickerFooter";
 import { FilterPickerHeader } from "../FilterPickerHeader";
 import { MIN_WIDTH } from "../constants";
diff --git a/frontend/src/metabase/querying/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.unit.spec.tsx
similarity index 98%
rename from frontend/src/metabase/querying/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.unit.spec.tsx
index 8a4c27a6a35..2db586c6e95 100644
--- a/frontend/src/metabase/querying/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.unit.spec.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterPicker/DefaultFilterPicker/DefaultFilterPicker.unit.spec.tsx
@@ -1,13 +1,14 @@
 import userEvent from "@testing-library/user-event";
 
 import { renderWithProviders, screen } from "__support__/ui";
+import * as Lib from "metabase-lib";
+
 import {
   createQuery,
   createQueryWithDefaultFilter,
   findUnknownColumn,
   storeInitialState,
-} from "metabase/querying/components/FilterPicker/test-utils";
-import * as Lib from "metabase-lib";
+} from "../test-utils";
 
 import { DefaultFilterPicker } from "./DefaultFilterPicker";
 
diff --git a/frontend/src/metabase/querying/components/FilterPicker/DefaultFilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/DefaultFilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/DefaultFilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/DefaultFilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterColumnPicker/FilterColumnPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterColumnPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterColumnPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterColumnPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterColumnPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterOperatorPicker/FilterOperatorPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterOperatorPicker/FilterOperatorPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterOperatorPicker/FilterOperatorPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterOperatorPicker/FilterOperatorPicker.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterOperatorPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterOperatorPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterOperatorPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterOperatorPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPicker.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPickerBody/FilterPickerBody.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerBody/FilterPickerBody.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPickerBody/FilterPickerBody.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerBody/FilterPickerBody.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPickerBody/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerBody/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPickerBody/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerBody/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerFooter/FilterPickerFooter.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPickerFooter/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerFooter/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPickerFooter/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerFooter/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerHeader/FilterPickerHeader.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/FilterPickerHeader/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerHeader/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/FilterPickerHeader/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/FilterPickerHeader/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.tsx
similarity index 96%
rename from frontend/src/metabase/querying/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.tsx
index 80fa846215f..56d0b2ba3a6 100644
--- a/frontend/src/metabase/querying/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.tsx
@@ -3,8 +3,10 @@ import { useMemo } from "react";
 import { t } from "ttag";
 
 import { isNumber } from "metabase/lib/types";
-import type { NumberValue } from "metabase/querying/hooks/use-number-filter";
-import { useNumberFilter } from "metabase/querying/hooks/use-number-filter";
+import {
+  type NumberValue,
+  useNumberFilter,
+} from "metabase/querying/filters/hooks/use-number-filter";
 import { Box, Flex, NumberInput, Text } from "metabase/ui";
 import * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/NumberFilterPicker/NumberFilterPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/NumberFilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/NumberFilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/NumberFilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/NumberFilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/StringFilterPicker/StringFilterPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/StringFilterPicker/StringFilterPicker.tsx
similarity index 96%
rename from frontend/src/metabase/querying/components/FilterPicker/StringFilterPicker/StringFilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/StringFilterPicker/StringFilterPicker.tsx
index 607a27d3d2b..72f1278df52 100644
--- a/frontend/src/metabase/querying/components/FilterPicker/StringFilterPicker/StringFilterPicker.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterPicker/StringFilterPicker/StringFilterPicker.tsx
@@ -2,8 +2,10 @@ import type { FormEvent } from "react";
 import { useMemo } from "react";
 import { t } from "ttag";
 
-import type { OperatorType } from "metabase/querying/hooks/use-string-filter";
-import { useStringFilter } from "metabase/querying/hooks/use-string-filter";
+import {
+  type OperatorType,
+  useStringFilter,
+} from "metabase/querying/filters/hooks/use-string-filter";
 import { Box, Checkbox, Flex, MultiAutocomplete } from "metabase/ui";
 import * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterPicker/StringFilterPicker/StringFilterPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/StringFilterPicker/StringFilterPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/StringFilterPicker/StringFilterPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/StringFilterPicker/StringFilterPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/StringFilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/StringFilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/StringFilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/StringFilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.tsx
similarity index 95%
rename from frontend/src/metabase/querying/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.tsx
index a6f53f7702f..4aabd3e30a2 100644
--- a/frontend/src/metabase/querying/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.tsx
+++ b/frontend/src/metabase/querying/filters/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.tsx
@@ -2,8 +2,10 @@ import type { FormEvent } from "react";
 import { useMemo } from "react";
 import { t } from "ttag";
 
-import type { TimeValue } from "metabase/querying/hooks/use-time-filter";
-import { useTimeFilter } from "metabase/querying/hooks/use-time-filter";
+import {
+  type TimeValue,
+  useTimeFilter,
+} from "metabase/querying/filters/hooks/use-time-filter";
 import { Box, Flex, Text, TimeInput } from "metabase/ui";
 import * as Lib from "metabase-lib";
 
diff --git a/frontend/src/metabase/querying/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterPicker/TimeFilterPicker/TimeFilterPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterPicker/TimeFilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/TimeFilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/TimeFilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/TimeFilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/constants.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/test-utils.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/test-utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/test-utils.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/test-utils.ts
diff --git a/frontend/src/metabase/querying/components/FilterPicker/types.ts b/frontend/src/metabase/querying/filters/components/FilterPicker/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterPicker/types.ts
rename to frontend/src/metabase/querying/filters/components/FilterPicker/types.ts
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/FilterValuePicker.tsx b/frontend/src/metabase/querying/filters/components/FilterValuePicker/FilterValuePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/FilterValuePicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/FilterValuePicker.tsx
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/FilterValuePicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/FilterValuePicker/FilterValuePicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/FilterValuePicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/FilterValuePicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/ListValuePicker.styled.tsx b/frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/ListValuePicker.styled.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/ListValuePicker.styled.tsx
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/ListValuePicker.styled.tsx
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/ListValuePicker.tsx b/frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/ListValuePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/ListValuePicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/ListValuePicker.tsx
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/constants.ts b/frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/utils.ts b/frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/ListValuePicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/ListValuePicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/SearchValuePicker/SearchValuePicker.tsx b/frontend/src/metabase/querying/filters/components/FilterValuePicker/SearchValuePicker/SearchValuePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/SearchValuePicker/SearchValuePicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/SearchValuePicker/SearchValuePicker.tsx
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/SearchValuePicker/constants.ts b/frontend/src/metabase/querying/filters/components/FilterValuePicker/SearchValuePicker/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/SearchValuePicker/constants.ts
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/SearchValuePicker/constants.ts
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/SearchValuePicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterValuePicker/SearchValuePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/SearchValuePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/SearchValuePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/SearchValuePicker/utils.ts b/frontend/src/metabase/querying/filters/components/FilterValuePicker/SearchValuePicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/SearchValuePicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/SearchValuePicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/StaticValuePicker/StaticValuePicker.tsx b/frontend/src/metabase/querying/filters/components/FilterValuePicker/StaticValuePicker/StaticValuePicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/StaticValuePicker/StaticValuePicker.tsx
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/StaticValuePicker/StaticValuePicker.tsx
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/StaticValuePicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterValuePicker/StaticValuePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/StaticValuePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/StaticValuePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/index.ts b/frontend/src/metabase/querying/filters/components/FilterValuePicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/index.ts
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/index.ts
diff --git a/frontend/src/metabase/querying/components/FilterValuePicker/utils.ts b/frontend/src/metabase/querying/filters/components/FilterValuePicker/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/FilterValuePicker/utils.ts
rename to frontend/src/metabase/querying/filters/components/FilterValuePicker/utils.ts
diff --git a/frontend/src/metabase/querying/components/TemporalUnitPicker/TemporalUnitPicker.tsx b/frontend/src/metabase/querying/filters/components/TemporalUnitPicker/TemporalUnitPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/TemporalUnitPicker/TemporalUnitPicker.tsx
rename to frontend/src/metabase/querying/filters/components/TemporalUnitPicker/TemporalUnitPicker.tsx
diff --git a/frontend/src/metabase/querying/components/TemporalUnitPicker/TemporalUnitPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/TemporalUnitPicker/TemporalUnitPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/TemporalUnitPicker/TemporalUnitPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/TemporalUnitPicker/TemporalUnitPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/TemporalUnitPicker/index.ts b/frontend/src/metabase/querying/filters/components/TemporalUnitPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/TemporalUnitPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/TemporalUnitPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.tsx b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.tsx
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.tsx
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesBucketPicker/TimeseriesBucketPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesBucketPicker/index.ts b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesBucketPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesBucketPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesBucketPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesChrome.tsx b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesChrome.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesChrome.tsx
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesChrome.tsx
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesChrome.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesChrome.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesChrome.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesChrome.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.tsx b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.tsx
similarity index 94%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.tsx
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.tsx
index c8f7328822d..00cf50930c7 100644
--- a/frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.tsx
+++ b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.tsx
@@ -1,10 +1,11 @@
 import { useMemo, useState } from "react";
 import { t } from "ttag";
 
-import { SimpleDateFilterPicker } from "metabase/querying/components/FilterPicker";
 import { Button, Icon, Popover } from "metabase/ui";
 import * as Lib from "metabase-lib";
 
+import { SimpleDateFilterPicker } from "../../FilterPicker";
+
 export interface TimeseriesFilterPickerProps {
   query: Lib.Query;
   stageIndex: number;
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.unit.spec.tsx b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.unit.spec.tsx
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesFilterPicker/TimeseriesFilterPicker.unit.spec.tsx
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesFilterPicker/index.ts b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesFilterPicker/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/TimeseriesFilterPicker/index.ts
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/TimeseriesFilterPicker/index.ts
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/index.ts b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/index.ts
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/index.ts
diff --git a/frontend/src/metabase/querying/components/TimeseriesChrome/utils.ts b/frontend/src/metabase/querying/filters/components/TimeseriesChrome/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/components/TimeseriesChrome/utils.ts
rename to frontend/src/metabase/querying/filters/components/TimeseriesChrome/utils.ts
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-operator-filter/constants.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-boolean-operator-filter/constants.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/constants.ts
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-operator-filter/index.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-boolean-operator-filter/index.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/index.ts
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-operator-filter/types.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/types.ts
similarity index 70%
rename from frontend/src/metabase/querying/hooks/use-boolean-operator-filter/types.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/types.ts
index d70ca2fa818..112f82ed092 100644
--- a/frontend/src/metabase/querying/hooks/use-boolean-operator-filter/types.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/types.ts
@@ -1,4 +1,4 @@
-import type { FilterOperatorOption } from "metabase/querying/utils/filters";
+import type { FilterOperatorOption } from "metabase/querying/filters/utils";
 import type * as Lib from "metabase-lib";
 
 export interface OperatorOption
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-operator-filter/use-boolean-operator-filter.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/use-boolean-operator-filter.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-boolean-operator-filter/use-boolean-operator-filter.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/use-boolean-operator-filter.ts
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-operator-filter/use-boolean-operator-filter.unit.spec.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/use-boolean-operator-filter.unit.spec.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-boolean-operator-filter/use-boolean-operator-filter.unit.spec.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/use-boolean-operator-filter.unit.spec.ts
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-operator-filter/utils.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/utils.ts
similarity index 97%
rename from frontend/src/metabase/querying/hooks/use-boolean-operator-filter/utils.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/utils.ts
index 710dd0607e2..225face7d0e 100644
--- a/frontend/src/metabase/querying/hooks/use-boolean-operator-filter/utils.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-boolean-operator-filter/utils.ts
@@ -1,7 +1,7 @@
 import {
   getAvailableOperatorOptions,
   getDefaultAvailableOperator,
-} from "metabase/querying/utils/filters";
+} from "metabase/querying/filters/utils";
 import * as Lib from "metabase-lib";
 
 import { OPERATOR_OPTIONS } from "./constants";
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-option-filter/constants.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-boolean-option-filter/constants.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/constants.ts
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-option-filter/index.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-boolean-option-filter/index.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/index.ts
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-option-filter/types.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/types.ts
similarity index 76%
rename from frontend/src/metabase/querying/hooks/use-boolean-option-filter/types.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/types.ts
index 7bf6e8cbf32..5f9fe5c9779 100644
--- a/frontend/src/metabase/querying/hooks/use-boolean-option-filter/types.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/types.ts
@@ -1,4 +1,4 @@
-import type { FilterOperatorOption } from "metabase/querying/utils/filters";
+import type { FilterOperatorOption } from "metabase/querying/filters/utils";
 import type * as Lib from "metabase-lib";
 
 export type OptionType = "true" | "false" | "is-null" | "not-null";
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-option-filter/use-boolean-option-filter.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/use-boolean-option-filter.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-boolean-option-filter/use-boolean-option-filter.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/use-boolean-option-filter.ts
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-option-filter/use-boolean-option-filter.unit.spec.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/use-boolean-option-filter.unit.spec.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-boolean-option-filter/use-boolean-option-filter.unit.spec.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/use-boolean-option-filter.unit.spec.ts
diff --git a/frontend/src/metabase/querying/hooks/use-boolean-option-filter/utils.ts b/frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/utils.ts
similarity index 95%
rename from frontend/src/metabase/querying/hooks/use-boolean-option-filter/utils.ts
rename to frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/utils.ts
index 7056006499f..a3b0d162dbb 100644
--- a/frontend/src/metabase/querying/hooks/use-boolean-option-filter/utils.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-boolean-option-filter/utils.ts
@@ -1,4 +1,4 @@
-import { getAvailableOperatorOptions } from "metabase/querying/utils/filters";
+import { getAvailableOperatorOptions } from "metabase/querying/filters/utils";
 import * as Lib from "metabase-lib";
 
 import { OPERATOR_OPTIONS } from "./constants";
diff --git a/frontend/src/metabase/querying/hooks/use-coordinate-filter/constants.ts b/frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-coordinate-filter/constants.ts
rename to frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/constants.ts
diff --git a/frontend/src/metabase/querying/hooks/use-coordinate-filter/index.ts b/frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-coordinate-filter/index.ts
rename to frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/index.ts
diff --git a/frontend/src/metabase/querying/hooks/use-coordinate-filter/types.ts b/frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/types.ts
similarity index 79%
rename from frontend/src/metabase/querying/hooks/use-coordinate-filter/types.ts
rename to frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/types.ts
index bc88f54322f..aa880668fb5 100644
--- a/frontend/src/metabase/querying/hooks/use-coordinate-filter/types.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/types.ts
@@ -1,4 +1,4 @@
-import type { FilterOperatorOption } from "metabase/querying/utils/filters";
+import type { FilterOperatorOption } from "metabase/querying/filters/utils";
 
 type CoordinatePickerOperator =
   | "="
diff --git a/frontend/src/metabase/querying/hooks/use-coordinate-filter/use-coordinate-filter.ts b/frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/use-coordinate-filter.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-coordinate-filter/use-coordinate-filter.ts
rename to frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/use-coordinate-filter.ts
diff --git a/frontend/src/metabase/querying/hooks/use-coordinate-filter/use-coordinate-filter.unit.spec.ts b/frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/use-coordinate-filter.unit.spec.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-coordinate-filter/use-coordinate-filter.unit.spec.ts
rename to frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/use-coordinate-filter.unit.spec.ts
diff --git a/frontend/src/metabase/querying/hooks/use-coordinate-filter/utils.ts b/frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/utils.ts
similarity index 99%
rename from frontend/src/metabase/querying/hooks/use-coordinate-filter/utils.ts
rename to frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/utils.ts
index e5fff744bcc..d9ebf2ce861 100644
--- a/frontend/src/metabase/querying/hooks/use-coordinate-filter/utils.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-coordinate-filter/utils.ts
@@ -1,7 +1,7 @@
 import {
   getAvailableOperatorOptions,
   getDefaultAvailableOperator,
-} from "metabase/querying/utils/filters";
+} from "metabase/querying/filters/utils";
 import * as Lib from "metabase-lib";
 
 import { OPERATOR_OPTIONS } from "./constants";
diff --git a/frontend/src/metabase/querying/hooks/use-date-filter/index.ts b/frontend/src/metabase/querying/filters/hooks/use-date-filter/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-date-filter/index.ts
rename to frontend/src/metabase/querying/filters/hooks/use-date-filter/index.ts
diff --git a/frontend/src/metabase/querying/hooks/use-date-filter/use-date-filter.ts b/frontend/src/metabase/querying/filters/hooks/use-date-filter/use-date-filter.ts
similarity index 92%
rename from frontend/src/metabase/querying/hooks/use-date-filter/use-date-filter.ts
rename to frontend/src/metabase/querying/filters/hooks/use-date-filter/use-date-filter.ts
index d9146fff9b3..5c587d78e82 100644
--- a/frontend/src/metabase/querying/hooks/use-date-filter/use-date-filter.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-date-filter/use-date-filter.ts
@@ -1,8 +1,9 @@
 import { useMemo } from "react";
 
-import type { DatePickerValue } from "metabase/querying/components/DatePicker";
 import type * as Lib from "metabase-lib";
 
+import type { DatePickerValue } from "../../components/DatePicker";
+
 import {
   getFilterClause,
   getPickerOperators,
diff --git a/frontend/src/metabase/querying/hooks/use-date-filter/use-date-filter.unit.spec.ts b/frontend/src/metabase/querying/filters/hooks/use-date-filter/use-date-filter.unit.spec.ts
similarity index 99%
rename from frontend/src/metabase/querying/hooks/use-date-filter/use-date-filter.unit.spec.ts
rename to frontend/src/metabase/querying/filters/hooks/use-date-filter/use-date-filter.unit.spec.ts
index 84194a34682..1dcbe280d4e 100644
--- a/frontend/src/metabase/querying/hooks/use-date-filter/use-date-filter.unit.spec.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-date-filter/use-date-filter.unit.spec.ts
@@ -1,6 +1,5 @@
 import { renderHook } from "@testing-library/react-hooks";
 
-import type { DatePickerValue } from "metabase/querying/components/DatePicker";
 import * as Lib from "metabase-lib";
 import {
   columnFinder,
@@ -8,6 +7,8 @@ import {
   createQueryWithClauses,
 } from "metabase-lib/test-helpers";
 
+import type { DatePickerValue } from "../../components/DatePicker";
+
 import { useDateFilter } from "./use-date-filter";
 
 describe("useDateFilter", () => {
diff --git a/frontend/src/metabase/querying/hooks/use-date-filter/utils.ts b/frontend/src/metabase/querying/filters/hooks/use-date-filter/utils.ts
similarity index 93%
rename from frontend/src/metabase/querying/hooks/use-date-filter/utils.ts
rename to frontend/src/metabase/querying/filters/hooks/use-date-filter/utils.ts
index 7dde522413d..88ace709039 100644
--- a/frontend/src/metabase/querying/hooks/use-date-filter/utils.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-date-filter/utils.ts
@@ -1,16 +1,15 @@
-import type {
-  DatePickerExtractionUnit,
-  DatePickerOperator,
-  DatePickerValue,
-  ExcludeDatePickerValue,
-  RelativeDatePickerValue,
-  SpecificDatePickerValue,
-} from "metabase/querying/components/DatePicker";
+import * as Lib from "metabase-lib";
+
 import {
+  type DatePickerExtractionUnit,
+  type DatePickerOperator,
+  type DatePickerValue,
+  type ExcludeDatePickerValue,
+  type RelativeDatePickerValue,
+  type SpecificDatePickerValue,
   isDatePickerExtractionUnit,
   isDatePickerOperator,
-} from "metabase/querying/components/DatePicker";
-import * as Lib from "metabase-lib";
+} from "../../components/DatePicker";
 
 export function getPickerValue(
   query: Lib.Query,
diff --git a/frontend/src/metabase/querying/hooks/use-default-filter/constants.ts b/frontend/src/metabase/querying/filters/hooks/use-default-filter/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-default-filter/constants.ts
rename to frontend/src/metabase/querying/filters/hooks/use-default-filter/constants.ts
diff --git a/frontend/src/metabase/querying/hooks/use-default-filter/index.ts b/frontend/src/metabase/querying/filters/hooks/use-default-filter/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-default-filter/index.ts
rename to frontend/src/metabase/querying/filters/hooks/use-default-filter/index.ts
diff --git a/frontend/src/metabase/querying/hooks/use-default-filter/types.ts b/frontend/src/metabase/querying/filters/hooks/use-default-filter/types.ts
similarity index 62%
rename from frontend/src/metabase/querying/hooks/use-default-filter/types.ts
rename to frontend/src/metabase/querying/filters/hooks/use-default-filter/types.ts
index 3cc15c3629b..3f034f5b198 100644
--- a/frontend/src/metabase/querying/hooks/use-default-filter/types.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-default-filter/types.ts
@@ -1,4 +1,4 @@
-import type { FilterOperatorOption } from "metabase/querying/utils/filters";
+import type { FilterOperatorOption } from "metabase/querying/filters/utils";
 import type * as Lib from "metabase-lib";
 
 export type OperatorOption =
diff --git a/frontend/src/metabase/querying/hooks/use-default-filter/use-default-filter.ts b/frontend/src/metabase/querying/filters/hooks/use-default-filter/use-default-filter.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-default-filter/use-default-filter.ts
rename to frontend/src/metabase/querying/filters/hooks/use-default-filter/use-default-filter.ts
diff --git a/frontend/src/metabase/querying/hooks/use-default-filter/use-default-filter.unit.spec.ts b/frontend/src/metabase/querying/filters/hooks/use-default-filter/use-default-filter.unit.spec.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-default-filter/use-default-filter.unit.spec.ts
rename to frontend/src/metabase/querying/filters/hooks/use-default-filter/use-default-filter.unit.spec.ts
diff --git a/frontend/src/metabase/querying/hooks/use-default-filter/utils.ts b/frontend/src/metabase/querying/filters/hooks/use-default-filter/utils.ts
similarity index 95%
rename from frontend/src/metabase/querying/hooks/use-default-filter/utils.ts
rename to frontend/src/metabase/querying/filters/hooks/use-default-filter/utils.ts
index d8ef292fdc3..5c86295ab2f 100644
--- a/frontend/src/metabase/querying/hooks/use-default-filter/utils.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-default-filter/utils.ts
@@ -1,7 +1,7 @@
 import {
   getAvailableOperatorOptions,
   getDefaultAvailableOperator,
-} from "metabase/querying/utils/filters";
+} from "metabase/querying/filters/utils";
 import * as Lib from "metabase-lib";
 
 import { OPERATOR_OPTIONS } from "./constants";
diff --git a/frontend/src/metabase/querying/filters/hooks/use-filter-modal/constants.ts b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/constants.ts
new file mode 100644
index 00000000000..504ad74395c
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/constants.ts
@@ -0,0 +1 @@
+export const SEARCH_KEY = "search";
diff --git a/frontend/src/metabase/querying/filters/hooks/use-filter-modal/index.ts b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/index.ts
new file mode 100644
index 00000000000..4d29f0bd2d6
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/index.ts
@@ -0,0 +1,2 @@
+export * from "./use-filter-modal";
+export * from "./types";
diff --git a/frontend/src/metabase/querying/components/FilterContent/types.ts b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/types.ts
similarity index 64%
rename from frontend/src/metabase/querying/components/FilterContent/types.ts
rename to frontend/src/metabase/querying/filters/hooks/use-filter-modal/types.ts
index b6ef86ea371..f7e5d783a33 100644
--- a/frontend/src/metabase/querying/components/FilterContent/types.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/types.ts
@@ -21,13 +21,3 @@ export interface GroupItem {
   columnItems: ColumnItem[];
   segmentItems: SegmentItem[];
 }
-
-export interface FilterEditorProps {
-  query: Lib.Query;
-  stageIndex: number;
-  column: Lib.ColumnMetadata;
-  filter: Lib.FilterClause | undefined;
-  isSearching: boolean;
-  onChange: (filter: Lib.ExpressionClause | undefined) => void;
-  onInput: () => void;
-}
diff --git a/frontend/src/metabase/querying/filters/hooks/use-filter-modal/use-filter-modal.ts b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/use-filter-modal.ts
new file mode 100644
index 00000000000..a23afb0d330
--- /dev/null
+++ b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/use-filter-modal.ts
@@ -0,0 +1,81 @@
+import { useMemo, useRef, useState } from "react";
+
+import * as Lib from "metabase-lib";
+
+import { SEARCH_KEY } from "./constants";
+import {
+  appendStageIfAggregated,
+  getGroupItems,
+  hasFilters,
+  isSearchActive,
+  removeFilters,
+  searchGroupItems,
+} from "./utils";
+
+export const useFilterModal = (
+  initialQuery: Lib.Query,
+  onSubmit: (newQuery: Lib.Query) => void,
+) => {
+  const [query, setQuery] = useState(() =>
+    appendStageIfAggregated(initialQuery),
+  );
+  const queryRef = useRef(query);
+  const [version, setVersion] = useState(1);
+  const [isChanged, setIsChanged] = useState(false);
+  const groupItems = useMemo(() => getGroupItems(query), [query]);
+  const [tab, setTab] = useState<string | null>(groupItems[0]?.key);
+  const canRemoveFilters = useMemo(() => hasFilters(query), [query]);
+  const [searchText, setSearchText] = useState("");
+  const isSearching = isSearchActive(searchText);
+
+  const visibleItems = useMemo(
+    () => (isSearching ? searchGroupItems(groupItems, searchText) : groupItems),
+    [groupItems, searchText, isSearching],
+  );
+
+  const handleInput = () => {
+    if (!isChanged) {
+      setIsChanged(true);
+    }
+  };
+
+  const handleChange = (newQuery: Lib.Query) => {
+    setQuery(newQuery);
+    setIsChanged(true);
+    // for handleSubmit to see the latest query if it is called in the same tick
+    queryRef.current = newQuery;
+  };
+
+  const handleReset = () => {
+    handleChange(removeFilters(query));
+    // to reset internal state of filter components
+    setVersion(version + 1);
+  };
+
+  const handleSubmit = () => {
+    onSubmit(Lib.dropEmptyStages(queryRef.current));
+  };
+
+  const handleSearch = (searchText: string) => {
+    setTab(isSearchActive(searchText) ? SEARCH_KEY : groupItems[0]?.key);
+    setSearchText(searchText);
+  };
+
+  return {
+    query,
+    version,
+    isChanged,
+    groupItems,
+    tab,
+    setTab,
+    canRemoveFilters,
+    searchText,
+    isSearching,
+    visibleItems,
+    handleInput,
+    handleChange,
+    handleReset,
+    handleSubmit,
+    handleSearch,
+  };
+};
diff --git a/frontend/src/metabase/querying/components/FilterModal/utils/filters.ts b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/utils/filters.ts
similarity index 96%
rename from frontend/src/metabase/querying/components/FilterModal/utils/filters.ts
rename to frontend/src/metabase/querying/filters/hooks/use-filter-modal/utils/filters.ts
index 20f4d15669c..ca291598dae 100644
--- a/frontend/src/metabase/querying/components/FilterModal/utils/filters.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/utils/filters.ts
@@ -4,9 +4,10 @@ import {
   getColumnGroupIcon,
   getColumnGroupName,
 } from "metabase/common/utils/column-groups";
-import type { GroupItem } from "metabase/querying/components/FilterContent";
 import * as Lib from "metabase-lib";
 
+import type { GroupItem } from "../types";
+
 export function appendStageIfAggregated(query: Lib.Query) {
   const aggregations = Lib.aggregations(query, -1);
   const breakouts = Lib.breakouts(query, -1);
diff --git a/frontend/src/metabase/querying/components/FilterModal/utils/index.ts b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/utils/index.ts
similarity index 67%
rename from frontend/src/metabase/querying/components/FilterModal/utils/index.ts
rename to frontend/src/metabase/querying/filters/hooks/use-filter-modal/utils/index.ts
index 4f439aa66f5..a138344d5ce 100644
--- a/frontend/src/metabase/querying/components/FilterModal/utils/index.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/utils/index.ts
@@ -1,3 +1,2 @@
 export * from "./filters";
-export * from "./modal";
 export * from "./search";
diff --git a/frontend/src/metabase/querying/components/FilterModal/utils/search.ts b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/utils/search.ts
similarity index 92%
rename from frontend/src/metabase/querying/components/FilterModal/utils/search.ts
rename to frontend/src/metabase/querying/filters/hooks/use-filter-modal/utils/search.ts
index 0353fb9548c..62fe8b6b03c 100644
--- a/frontend/src/metabase/querying/components/FilterModal/utils/search.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-filter-modal/utils/search.ts
@@ -1,8 +1,7 @@
 import { t } from "ttag";
 
-import type { GroupItem } from "metabase/querying/components/FilterContent";
-
 import { SEARCH_KEY } from "../constants";
+import type { GroupItem } from "../types";
 
 export function isSearchActive(searchText: string) {
   return searchText.length > 0;
diff --git a/frontend/src/metabase/querying/hooks/use-number-filter/constants.ts b/frontend/src/metabase/querying/filters/hooks/use-number-filter/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-number-filter/constants.ts
rename to frontend/src/metabase/querying/filters/hooks/use-number-filter/constants.ts
diff --git a/frontend/src/metabase/querying/hooks/use-number-filter/index.ts b/frontend/src/metabase/querying/filters/hooks/use-number-filter/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-number-filter/index.ts
rename to frontend/src/metabase/querying/filters/hooks/use-number-filter/index.ts
diff --git a/frontend/src/metabase/querying/hooks/use-number-filter/types.ts b/frontend/src/metabase/querying/filters/hooks/use-number-filter/types.ts
similarity index 75%
rename from frontend/src/metabase/querying/hooks/use-number-filter/types.ts
rename to frontend/src/metabase/querying/filters/hooks/use-number-filter/types.ts
index 4c94b65f859..c183170250a 100644
--- a/frontend/src/metabase/querying/hooks/use-number-filter/types.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-number-filter/types.ts
@@ -1,4 +1,4 @@
-import type { FilterOperatorOption } from "metabase/querying/utils/filters";
+import type { FilterOperatorOption } from "metabase/querying/filters/utils";
 import type * as Lib from "metabase-lib";
 
 export interface OperatorOption
diff --git a/frontend/src/metabase/querying/hooks/use-number-filter/use-number-filter.ts b/frontend/src/metabase/querying/filters/hooks/use-number-filter/use-number-filter.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-number-filter/use-number-filter.ts
rename to frontend/src/metabase/querying/filters/hooks/use-number-filter/use-number-filter.ts
diff --git a/frontend/src/metabase/querying/hooks/use-number-filter/use-number-filter.unit.spec.ts b/frontend/src/metabase/querying/filters/hooks/use-number-filter/use-number-filter.unit.spec.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-number-filter/use-number-filter.unit.spec.ts
rename to frontend/src/metabase/querying/filters/hooks/use-number-filter/use-number-filter.unit.spec.ts
diff --git a/frontend/src/metabase/querying/hooks/use-number-filter/utils.ts b/frontend/src/metabase/querying/filters/hooks/use-number-filter/utils.ts
similarity index 98%
rename from frontend/src/metabase/querying/hooks/use-number-filter/utils.ts
rename to frontend/src/metabase/querying/filters/hooks/use-number-filter/utils.ts
index 8e0ad08eec8..2fda65ff7a0 100644
--- a/frontend/src/metabase/querying/hooks/use-number-filter/utils.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-number-filter/utils.ts
@@ -1,7 +1,7 @@
 import {
   getAvailableOperatorOptions,
   getDefaultAvailableOperator,
-} from "metabase/querying/utils/filters";
+} from "metabase/querying/filters/utils";
 import * as Lib from "metabase-lib";
 
 import { OPERATOR_OPTIONS } from "./constants";
diff --git a/frontend/src/metabase/querying/hooks/use-string-filter/constants.ts b/frontend/src/metabase/querying/filters/hooks/use-string-filter/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-string-filter/constants.ts
rename to frontend/src/metabase/querying/filters/hooks/use-string-filter/constants.ts
diff --git a/frontend/src/metabase/querying/hooks/use-string-filter/index.ts b/frontend/src/metabase/querying/filters/hooks/use-string-filter/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-string-filter/index.ts
rename to frontend/src/metabase/querying/filters/hooks/use-string-filter/index.ts
diff --git a/frontend/src/metabase/querying/hooks/use-string-filter/types.ts b/frontend/src/metabase/querying/filters/hooks/use-string-filter/types.ts
similarity index 74%
rename from frontend/src/metabase/querying/hooks/use-string-filter/types.ts
rename to frontend/src/metabase/querying/filters/hooks/use-string-filter/types.ts
index c9957bae905..2a6399680e4 100644
--- a/frontend/src/metabase/querying/hooks/use-string-filter/types.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-string-filter/types.ts
@@ -1,4 +1,4 @@
-import type { FilterOperatorOption } from "metabase/querying/utils/filters";
+import type { FilterOperatorOption } from "metabase/querying/filters/utils";
 import type * as Lib from "metabase-lib";
 
 export type OperatorType = "exact" | "partial" | "empty";
diff --git a/frontend/src/metabase/querying/hooks/use-string-filter/use-string-filter.ts b/frontend/src/metabase/querying/filters/hooks/use-string-filter/use-string-filter.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-string-filter/use-string-filter.ts
rename to frontend/src/metabase/querying/filters/hooks/use-string-filter/use-string-filter.ts
diff --git a/frontend/src/metabase/querying/hooks/use-string-filter/use-string-filter.unit.spec.ts b/frontend/src/metabase/querying/filters/hooks/use-string-filter/use-string-filter.unit.spec.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-string-filter/use-string-filter.unit.spec.ts
rename to frontend/src/metabase/querying/filters/hooks/use-string-filter/use-string-filter.unit.spec.ts
diff --git a/frontend/src/metabase/querying/hooks/use-string-filter/utils.ts b/frontend/src/metabase/querying/filters/hooks/use-string-filter/utils.ts
similarity index 98%
rename from frontend/src/metabase/querying/hooks/use-string-filter/utils.ts
rename to frontend/src/metabase/querying/filters/hooks/use-string-filter/utils.ts
index a389592bb32..801a1a321f9 100644
--- a/frontend/src/metabase/querying/hooks/use-string-filter/utils.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-string-filter/utils.ts
@@ -1,7 +1,7 @@
 import {
   getAvailableOperatorOptions,
   getDefaultAvailableOperator,
-} from "metabase/querying/utils/filters";
+} from "metabase/querying/filters/utils";
 import * as Lib from "metabase-lib";
 
 import { OPERATOR_OPTIONS } from "./constants";
diff --git a/frontend/src/metabase/querying/hooks/use-time-filter/constants.ts b/frontend/src/metabase/querying/filters/hooks/use-time-filter/constants.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-time-filter/constants.ts
rename to frontend/src/metabase/querying/filters/hooks/use-time-filter/constants.ts
diff --git a/frontend/src/metabase/querying/hooks/use-time-filter/index.ts b/frontend/src/metabase/querying/filters/hooks/use-time-filter/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-time-filter/index.ts
rename to frontend/src/metabase/querying/filters/hooks/use-time-filter/index.ts
diff --git a/frontend/src/metabase/querying/hooks/use-time-filter/types.ts b/frontend/src/metabase/querying/filters/hooks/use-time-filter/types.ts
similarity index 72%
rename from frontend/src/metabase/querying/hooks/use-time-filter/types.ts
rename to frontend/src/metabase/querying/filters/hooks/use-time-filter/types.ts
index 7920b882a03..23b2d15a0ca 100644
--- a/frontend/src/metabase/querying/hooks/use-time-filter/types.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-time-filter/types.ts
@@ -1,4 +1,4 @@
-import type { FilterOperatorOption } from "metabase/querying/utils/filters";
+import type { FilterOperatorOption } from "metabase/querying/filters/utils";
 import type * as Lib from "metabase-lib";
 
 export interface OperatorOption
diff --git a/frontend/src/metabase/querying/hooks/use-time-filter/use-time-filter.ts b/frontend/src/metabase/querying/filters/hooks/use-time-filter/use-time-filter.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-time-filter/use-time-filter.ts
rename to frontend/src/metabase/querying/filters/hooks/use-time-filter/use-time-filter.ts
diff --git a/frontend/src/metabase/querying/hooks/use-time-filter/use-time-filter.unit.spec.ts b/frontend/src/metabase/querying/filters/hooks/use-time-filter/use-time-filter.unit.spec.ts
similarity index 100%
rename from frontend/src/metabase/querying/hooks/use-time-filter/use-time-filter.unit.spec.ts
rename to frontend/src/metabase/querying/filters/hooks/use-time-filter/use-time-filter.unit.spec.ts
diff --git a/frontend/src/metabase/querying/hooks/use-time-filter/utils.ts b/frontend/src/metabase/querying/filters/hooks/use-time-filter/utils.ts
similarity index 98%
rename from frontend/src/metabase/querying/hooks/use-time-filter/utils.ts
rename to frontend/src/metabase/querying/filters/hooks/use-time-filter/utils.ts
index 3e5ea1b2783..ca75cc65535 100644
--- a/frontend/src/metabase/querying/hooks/use-time-filter/utils.ts
+++ b/frontend/src/metabase/querying/filters/hooks/use-time-filter/utils.ts
@@ -4,7 +4,7 @@ import { isNotNull } from "metabase/lib/types";
 import {
   getAvailableOperatorOptions,
   getDefaultAvailableOperator,
-} from "metabase/querying/utils/filters";
+} from "metabase/querying/filters/utils";
 import * as Lib from "metabase-lib";
 
 import { OPERATOR_OPTIONS } from "./constants";
diff --git a/frontend/src/metabase/querying/index.ts b/frontend/src/metabase/querying/filters/index.ts
similarity index 54%
rename from frontend/src/metabase/querying/index.ts
rename to frontend/src/metabase/querying/filters/index.ts
index 4050a734970..fb7eb831dbe 100644
--- a/frontend/src/metabase/querying/index.ts
+++ b/frontend/src/metabase/querying/filters/index.ts
@@ -1,11 +1,11 @@
-export { FieldPanel } from "./components/FieldPanel";
 export { FilterPanel, FilterPanelButton } from "./components/FilterPanel";
-export { FilterModal } from "./components/FilterModal";
+export {
+  FilterModal,
+  FilterModalHeader,
+  FilterModalBody,
+  FilterModalFooter,
+} from "./components/FilterModal";
+export { useFilterModal } from "./hooks/use-filter-modal";
 export { FilterPicker, FilterPickerBody } from "./components/FilterPicker";
 export { TemporalUnitPicker } from "./components/TemporalUnitPicker";
 export { TimeseriesChrome } from "./components/TimeseriesChrome";
-export { queryDrill } from "./utils/drills";
-export {
-  syncVizSettingsWithQuery,
-  syncVizSettingsWithSeries,
-} from "./utils/viz-settings";
diff --git a/frontend/src/metabase/querying/utils/filters/index.ts b/frontend/src/metabase/querying/filters/utils/index.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/filters/index.ts
rename to frontend/src/metabase/querying/filters/utils/index.ts
diff --git a/frontend/src/metabase/querying/utils/filters/types.ts b/frontend/src/metabase/querying/filters/utils/types.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/filters/types.ts
rename to frontend/src/metabase/querying/filters/utils/types.ts
diff --git a/frontend/src/metabase/querying/utils/filters/utils.ts b/frontend/src/metabase/querying/filters/utils/utils.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/filters/utils.ts
rename to frontend/src/metabase/querying/filters/utils/utils.ts
diff --git a/frontend/src/metabase/querying/utils/drills/automatic-insights-drill/index.ts b/frontend/src/metabase/querying/utils/drills/automatic-insights-drill/index.ts
deleted file mode 100644
index bdcf449daf3..00000000000
--- a/frontend/src/metabase/querying/utils/drills/automatic-insights-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./automatic-insights-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/column-extract-drill/index.ts b/frontend/src/metabase/querying/utils/drills/column-extract-drill/index.ts
deleted file mode 100644
index 7bd1265de27..00000000000
--- a/frontend/src/metabase/querying/utils/drills/column-extract-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./column-extract-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/column-filter-drill/index.ts b/frontend/src/metabase/querying/utils/drills/column-filter-drill/index.ts
deleted file mode 100644
index 2cb8dacfc4e..00000000000
--- a/frontend/src/metabase/querying/utils/drills/column-filter-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./column-filter-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/combine-columns-drill/index.ts b/frontend/src/metabase/querying/utils/drills/combine-columns-drill/index.ts
deleted file mode 100644
index 0c2c953ec87..00000000000
--- a/frontend/src/metabase/querying/utils/drills/combine-columns-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./combine-columns-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/compare-aggregations-drill/index.ts b/frontend/src/metabase/querying/utils/drills/compare-aggregations-drill/index.ts
deleted file mode 100644
index f50395aa615..00000000000
--- a/frontend/src/metabase/querying/utils/drills/compare-aggregations-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./compare-aggregations-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/distribution-drill/index.ts b/frontend/src/metabase/querying/utils/drills/distribution-drill/index.ts
deleted file mode 100644
index 8d48023c6a3..00000000000
--- a/frontend/src/metabase/querying/utils/drills/distribution-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./distribution-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/filter-drill/index.ts b/frontend/src/metabase/querying/utils/drills/filter-drill/index.ts
deleted file mode 100644
index 310fca40b2c..00000000000
--- a/frontend/src/metabase/querying/utils/drills/filter-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./filter-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/fk-details-drill/index.ts b/frontend/src/metabase/querying/utils/drills/fk-details-drill/index.ts
deleted file mode 100644
index 9ee20b51bb6..00000000000
--- a/frontend/src/metabase/querying/utils/drills/fk-details-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./fk-details-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/fk-filter-drill/index.ts b/frontend/src/metabase/querying/utils/drills/fk-filter-drill/index.ts
deleted file mode 100644
index 986b3bd3e7d..00000000000
--- a/frontend/src/metabase/querying/utils/drills/fk-filter-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./fk-filter-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/index.ts b/frontend/src/metabase/querying/utils/drills/index.ts
deleted file mode 100644
index d0d06b67684..00000000000
--- a/frontend/src/metabase/querying/utils/drills/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export { queryDrill } from "./query-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/pivot-drill/index.ts b/frontend/src/metabase/querying/utils/drills/pivot-drill/index.ts
deleted file mode 100644
index e97cc5633ec..00000000000
--- a/frontend/src/metabase/querying/utils/drills/pivot-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./pivot-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/pk-drill/index.ts b/frontend/src/metabase/querying/utils/drills/pk-drill/index.ts
deleted file mode 100644
index 872daee6c53..00000000000
--- a/frontend/src/metabase/querying/utils/drills/pk-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./pk-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/quick-filter-drill/index.ts b/frontend/src/metabase/querying/utils/drills/quick-filter-drill/index.ts
deleted file mode 100644
index 5a51092931c..00000000000
--- a/frontend/src/metabase/querying/utils/drills/quick-filter-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./quick-filter-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/sort-drill/index.ts b/frontend/src/metabase/querying/utils/drills/sort-drill/index.ts
deleted file mode 100644
index add5f3ea599..00000000000
--- a/frontend/src/metabase/querying/utils/drills/sort-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./sort-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/summarize-column-by-time-drill/index.ts b/frontend/src/metabase/querying/utils/drills/summarize-column-by-time-drill/index.ts
deleted file mode 100644
index 452496ee79f..00000000000
--- a/frontend/src/metabase/querying/utils/drills/summarize-column-by-time-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./summarize-column-by-time-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/summarize-column-drill/index.ts b/frontend/src/metabase/querying/utils/drills/summarize-column-drill/index.ts
deleted file mode 100644
index 71dd2527907..00000000000
--- a/frontend/src/metabase/querying/utils/drills/summarize-column-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./summarize-column-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/underlying-records-drill/index.ts b/frontend/src/metabase/querying/utils/drills/underlying-records-drill/index.ts
deleted file mode 100644
index 691e95078eb..00000000000
--- a/frontend/src/metabase/querying/utils/drills/underlying-records-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./underlying-records-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/zoom-drill/index.ts b/frontend/src/metabase/querying/utils/drills/zoom-drill/index.ts
deleted file mode 100644
index a177e28a6df..00000000000
--- a/frontend/src/metabase/querying/utils/drills/zoom-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./zoom-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/zoom-in-binning-drill/index.ts b/frontend/src/metabase/querying/utils/drills/zoom-in-binning-drill/index.ts
deleted file mode 100644
index 8b08636f13d..00000000000
--- a/frontend/src/metabase/querying/utils/drills/zoom-in-binning-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./zoom-in-binning-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/zoom-in-geographic-drill/index.ts b/frontend/src/metabase/querying/utils/drills/zoom-in-geographic-drill/index.ts
deleted file mode 100644
index 6ecf83a62bc..00000000000
--- a/frontend/src/metabase/querying/utils/drills/zoom-in-geographic-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./zoom-in-geographic-drill";
diff --git a/frontend/src/metabase/querying/utils/drills/zoom-in-timeseries-drill/index.ts b/frontend/src/metabase/querying/utils/drills/zoom-in-timeseries-drill/index.ts
deleted file mode 100644
index 557c8fe4c05..00000000000
--- a/frontend/src/metabase/querying/utils/drills/zoom-in-timeseries-drill/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export * from "./zoom-in-timeseries-drill";
diff --git a/frontend/src/metabase/querying/utils/viz-settings/index.ts b/frontend/src/metabase/querying/viz-settings/index.ts
similarity index 64%
rename from frontend/src/metabase/querying/utils/viz-settings/index.ts
rename to frontend/src/metabase/querying/viz-settings/index.ts
index 1dbb319b9f7..eee25495669 100644
--- a/frontend/src/metabase/querying/utils/viz-settings/index.ts
+++ b/frontend/src/metabase/querying/viz-settings/index.ts
@@ -1,4 +1,4 @@
 export {
   syncVizSettingsWithQuery,
   syncVizSettingsWithSeries,
-} from "./sync-viz-settings";
+} from "./utils/sync-viz-settings";
diff --git a/frontend/src/metabase/querying/utils/viz-settings/sync-viz-settings.ts b/frontend/src/metabase/querying/viz-settings/utils/sync-viz-settings.ts
similarity index 100%
rename from frontend/src/metabase/querying/utils/viz-settings/sync-viz-settings.ts
rename to frontend/src/metabase/querying/viz-settings/utils/sync-viz-settings.ts
diff --git a/frontend/src/metabase/querying/utils/viz-settings/sync-viz-settings.unit.spec.tsx b/frontend/src/metabase/querying/viz-settings/utils/sync-viz-settings.unit.spec.tsx
similarity index 100%
rename from frontend/src/metabase/querying/utils/viz-settings/sync-viz-settings.unit.spec.tsx
rename to frontend/src/metabase/querying/viz-settings/utils/sync-viz-settings.unit.spec.tsx
diff --git a/frontend/src/metabase/visualizations/click-actions/Mode/Mode.ts b/frontend/src/metabase/visualizations/click-actions/Mode/Mode.ts
index 2a7ce07ec73..41715cc4954 100644
--- a/frontend/src/metabase/visualizations/click-actions/Mode/Mode.ts
+++ b/frontend/src/metabase/visualizations/click-actions/Mode/Mode.ts
@@ -1,5 +1,5 @@
 import type { SdkPluginsConfig } from "embedding-sdk/lib/plugins";
-import { queryDrill } from "metabase/querying";
+import { queryDrill } from "metabase/querying/drills";
 import type { DrillThruDisplayInfo } from "metabase-lib";
 import type Question from "metabase-lib/v1/Question";
 
diff --git a/frontend/src/metabase/visualizations/components/settings/ChartSettingTableColumns/ChartSettingTableColumns.tsx b/frontend/src/metabase/visualizations/components/settings/ChartSettingTableColumns/ChartSettingTableColumns.tsx
index e95e38e505c..ab507b66dd8 100644
--- a/frontend/src/metabase/visualizations/components/settings/ChartSettingTableColumns/ChartSettingTableColumns.tsx
+++ b/frontend/src/metabase/visualizations/components/settings/ChartSettingTableColumns/ChartSettingTableColumns.tsx
@@ -1,7 +1,7 @@
 import { useState } from "react";
 import { t } from "ttag";
 
-import { FieldPanel } from "metabase/querying";
+import { FieldPanel } from "metabase/querying/fields";
 import { Button } from "metabase/ui";
 import type * as Lib from "metabase-lib";
 import type Question from "metabase-lib/v1/Question";
-- 
GitLab