Skip to content

Commit 36fbc91

Browse files
authored
[WC-3344] Placement of filter dropdowns on small viewports (#2152)
2 parents f5e2068 + acec1ea commit 36fbc91

52 files changed

Lines changed: 120 additions & 104 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

packages/pluggableWidgets/datagrid-date-filter-web/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66

77
## [Unreleased]
88

9+
### Fixed
10+
11+
- We fixed an issue with filter selector dropdown not choosing the best placement on small viewports.
12+
913
## [3.8.1] - 2026-02-19
1014

1115
### Changed

packages/pluggableWidgets/datagrid-date-filter-web/src/DatagridDateFilter.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1+
import { ReactElement } from "react";
12
import { withAttributeGuard } from "@mendix/widget-plugin-filtering/helpers/withAttributeGuard";
23
import { withFilterAPI } from "@mendix/widget-plugin-filtering/helpers/withFilterAPI";
34
import { withPreloader } from "@mendix/widget-plugin-platform/hoc/withPreloader";
4-
import { ReactElement } from "react";
55
import { DatagridDateFilterContainerProps } from "../typings/DatagridDateFilterProps";
66
import { DateFilterContainer } from "./components/DateFilterContainer";
77
import { withLinkedDateStore } from "./hocs/withLinkedDateStore";

packages/pluggableWidgets/datagrid-date-filter-web/src/components/DateFilterContainer.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import { useDateSync } from "@mendix/widget-plugin-filtering/helpers/useDateSync";
2-
import { Date_InputFilterInterface } from "@mendix/widget-plugin-filtering/typings/InputFilterInterface";
31
import { observer } from "mobx-react-lite";
42
import { ReactElement } from "react";
3+
import { useDateSync } from "@mendix/widget-plugin-filtering/helpers/useDateSync";
4+
import { Date_InputFilterInterface } from "@mendix/widget-plugin-filtering/typings/InputFilterInterface";
5+
import { FilterComponent } from "./FilterComponent";
56
import { DatagridDateFilterContainerProps } from "../../typings/DatagridDateFilterProps";
67
import { useActionEvents } from "../helpers/useActionEvents";
78
import { useSetup } from "../helpers/useSetup";
8-
import { FilterComponent } from "./FilterComponent";
99

1010
interface ContainerProps extends DatagridDateFilterContainerProps {
1111
filterStore: Date_InputFilterInterface;

packages/pluggableWidgets/datagrid-date-filter-web/src/components/FilterComponent.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { FilterSelector } from "@mendix/widget-plugin-filtering/controls";
21
import classNames from "classnames";
32
import { CSSProperties, ReactElement } from "react";
4-
import { FilterTypeEnum } from "../helpers/base-types";
3+
import { FilterSelector } from "@mendix/widget-plugin-filtering/controls";
54
import { DatePicker, DatePickerProps } from "./DatePicker";
5+
import { FilterTypeEnum } from "../helpers/base-types";
66

77
export interface FilterComponentProps extends DatePickerProps {
88
id?: string;

packages/pluggableWidgets/datagrid-date-filter-web/src/helpers/DatePickerController.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1+
import { isDate } from "date-fns/isDate";
12
import { action, computed, makeObservable, observable, runInAction } from "mobx";
23
import { BaseSyntheticEvent, ClassAttributes, createRef, KeyboardEventHandler, MouseEventHandler } from "react";
3-
import { isDate } from "date-fns/isDate";
44
import ReactDatePicker, { ReactDatePickerProps } from "react-datepicker";
5-
import { Date_InputFilterInterface, FilterFn } from "@mendix/widget-plugin-filtering/typings/InputFilterInterface";
65
import { SetFilterValueArgs } from "@mendix/widget-plugin-external-events/typings";
6+
import { Date_InputFilterInterface, FilterFn } from "@mendix/widget-plugin-filtering/typings/InputFilterInterface";
77

88
interface DatePickerBackendProps extends ReactDatePickerProps, ClassAttributes<ReactDatePicker> {}
99

packages/pluggableWidgets/datagrid-date-filter-web/src/helpers/useActionEvents.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { useOnResetValueEvent, useOnSetValueEvent } from "@mendix/widget-plugin-external-events/hooks";
21
import { useState } from "react";
2+
import { useOnResetValueEvent, useOnSetValueEvent } from "@mendix/widget-plugin-external-events/hooks";
33
import { DatePickerController } from "./DatePickerController";
44

55
type HookParams = [Parameters<typeof useOnResetValueEvent>[0], Parameters<typeof useOnSetValueEvent>[0]];

packages/pluggableWidgets/datagrid-date-filter-web/src/helpers/useSetup.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1+
import { Locale } from "date-fns";
12
import { useEffect, useMemo, useState } from "react";
23
import { Date_InputFilterInterface } from "@mendix/widget-plugin-filtering/typings/InputFilterInterface";
3-
import { DatePickerController } from "../helpers/DatePickerController";
44
import { generateUUID } from "@mendix/widget-plugin-platform/framework/generate-uuid";
5-
import { Locale } from "date-fns";
6-
import { getLocale, pickerDateFormat, setupLocales } from "../utils/date-utils";
75
import { FilterTypeEnum } from "./base-types";
6+
import { DatePickerController } from "../helpers/DatePickerController";
7+
import { getLocale, pickerDateFormat, setupLocales } from "../utils/date-utils";
88

99
interface SetupProps {
1010
filterStore: Date_InputFilterInterface;

packages/pluggableWidgets/datagrid-date-filter-web/src/hocs/withLinkedDateStore.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1+
import { AttributeMetaData } from "mendix";
2+
import { FC } from "react";
13
import { FilterAPI } from "@mendix/widget-plugin-filtering/context";
24
import { DateStoreProvider } from "@mendix/widget-plugin-filtering/custom-filter-api/DateStoreProvider";
35
import { useSetup } from "@mendix/widget-plugin-mobx-kit/react/useSetup";
4-
import { AttributeMetaData } from "mendix";
5-
import { FC } from "react";
66
import { DateFilterProps } from "../components/typings";
77

88
interface RequiredProps {

packages/pluggableWidgets/datagrid-date-filter-web/src/hocs/withParentProvidedDateStore.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1+
import { ReactElement, useRef } from "react";
12
import { Alert } from "@mendix/widget-plugin-component-kit/Alert";
23
import { useFilterAPI } from "@mendix/widget-plugin-filtering/context";
34
import { APIError, EMISSINGSTORE, EStoreTypeMisMatch } from "@mendix/widget-plugin-filtering/errors";
45
import { error, Result, value } from "@mendix/widget-plugin-filtering/result-meta";
56
import { isDateFilter } from "@mendix/widget-plugin-filtering/stores/input/store-utils";
6-
import { ReactElement, useRef } from "react";
77
import { DateFilterProps } from "../components/typings";
88

99
export function withParentProvidedDateStore<P>(

packages/pluggableWidgets/datagrid-date-filter-web/src/hocs/withPreviewAdapter.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { ReactElement, useMemo } from "react";
2-
import { FilterComponent } from "../components/FilterComponent";
32
import { DatagridDateFilterPreviewProps } from "../../typings/DatagridDateFilterProps";
3+
import { FilterComponent } from "../components/FilterComponent";
44

55
type PreviewAdapter = (props: DatagridDateFilterPreviewProps) => ReactElement;
66

0 commit comments

Comments
 (0)