@12-apps/ui 6.92.0 → 6.92.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +10 -10
- package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +11 -11
- package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +5 -5
- package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +9 -9
- package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +7 -7
- package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +13 -7
- package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-range-bounds.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-range-calendar.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +4 -4
- package/dist/_internal/components/data-display/DataViews/data-views-range-summary.js +1 -1
- package/dist/{chunk-W2KOP27S.js → chunk-3I5PHWKQ.js} +2 -2
- package/dist/{chunk-3OHZAZEE.js → chunk-3WYEENUH.js} +9 -4
- package/dist/chunk-3WYEENUH.js.map +1 -0
- package/dist/{chunk-R4LCPPKA.js → chunk-CNUO2BRV.js} +2 -2
- package/dist/{chunk-MZAYIG2I.js → chunk-D2JQF2WC.js} +66 -16
- package/dist/chunk-D2JQF2WC.js.map +1 -0
- package/dist/{chunk-HS662RLW.js → chunk-DWH4TQXK.js} +4 -3
- package/dist/chunk-DWH4TQXK.js.map +1 -0
- package/dist/{chunk-FORAVDJF.js → chunk-FC7UCFFA.js} +35 -7
- package/dist/chunk-FC7UCFFA.js.map +1 -0
- package/dist/{chunk-CKQOYPH3.js → chunk-FYUNROLW.js} +2 -2
- package/dist/{chunk-MICX23P4.js → chunk-HRES2S3Q.js} +85 -8
- package/dist/chunk-HRES2S3Q.js.map +1 -0
- package/dist/{chunk-X3GD3TFI.js → chunk-KQDBOZQE.js} +3 -3
- package/dist/{chunk-AI7XWBNG.js → chunk-QE4KYG5I.js} +3 -3
- package/dist/chunk-WLDP7C4K.js +44 -0
- package/dist/chunk-WLDP7C4K.js.map +1 -0
- package/dist/data-display/DataViews.js +11 -11
- package/dist/types/components/data-display/DataViews/data-views-more-fields.d.ts +80 -0
- package/dist/types/components/data-display/DataViews/data-views-more-fields.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-more-filters.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-range-bounds.d.ts +6 -1
- package/dist/types/components/data-display/DataViews/data-views-range-bounds.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-range-calendar.d.ts +13 -1
- package/dist/types/components/data-display/DataViews/data-views-range-calendar.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-range-pill.d.ts.map +1 -1
- package/dist/types/components/data-display/DataViews/data-views-range-summary.d.ts +4 -5
- package/dist/types/components/data-display/DataViews/data-views-range-summary.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/data-display/DataViews/RESPONSIVE-BEHAVIOUR.md +8 -4
- package/src/components/data-display/DataViews/data-views-more-fields.tsx +90 -14
- package/src/components/data-display/DataViews/data-views-more-filters.tsx +2 -2
- package/src/components/data-display/DataViews/data-views-range-bounds.tsx +57 -3
- package/src/components/data-display/DataViews/data-views-range-calendar.tsx +122 -8
- package/src/components/data-display/DataViews/data-views-range-pill.tsx +5 -0
- package/src/components/data-display/DataViews/data-views-range-summary.tsx +9 -22
- package/dist/chunk-3OHZAZEE.js.map +0 -1
- package/dist/chunk-FORAVDJF.js.map +0 -1
- package/dist/chunk-HS662RLW.js.map +0 -1
- package/dist/chunk-J2AVWIMM.js +0 -60
- package/dist/chunk-J2AVWIMM.js.map +0 -1
- package/dist/chunk-MICX23P4.js.map +0 -1
- package/dist/chunk-MZAYIG2I.js.map +0 -1
- /package/dist/{chunk-W2KOP27S.js.map → chunk-3I5PHWKQ.js.map} +0 -0
- /package/dist/{chunk-R4LCPPKA.js.map → chunk-CNUO2BRV.js.map} +0 -0
- /package/dist/{chunk-CKQOYPH3.js.map → chunk-FYUNROLW.js.map} +0 -0
- /package/dist/{chunk-X3GD3TFI.js.map → chunk-KQDBOZQE.js.map} +0 -0
- /package/dist/{chunk-AI7XWBNG.js.map → chunk-QE4KYG5I.js.map} +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
DataViewsGrid
|
|
4
|
-
} from "../../../../chunk-
|
|
5
|
-
import "../../../../chunk-
|
|
6
|
-
import "../../../../chunk-
|
|
4
|
+
} from "../../../../chunk-CNUO2BRV.js";
|
|
5
|
+
import "../../../../chunk-KQDBOZQE.js";
|
|
6
|
+
import "../../../../chunk-FYUNROLW.js";
|
|
7
7
|
import "../../../../chunk-MKVDHR3B.js";
|
|
8
|
-
import "../../../../chunk-
|
|
8
|
+
import "../../../../chunk-QE4KYG5I.js";
|
|
9
9
|
import "../../../../chunk-T7OIVPCO.js";
|
|
10
10
|
import "../../../../chunk-X3AFXHY5.js";
|
|
11
11
|
import "../../../../chunk-XNAI7QGU.js";
|
|
@@ -13,19 +13,19 @@ import "../../../../chunk-7TCOYCD7.js";
|
|
|
13
13
|
import "../../../../chunk-4ZQQUICR.js";
|
|
14
14
|
import "../../../../chunk-XZFTRGRW.js";
|
|
15
15
|
import "../../../../chunk-WWH674WU.js";
|
|
16
|
-
import "../../../../chunk-
|
|
17
|
-
import "../../../../chunk-
|
|
16
|
+
import "../../../../chunk-DWH4TQXK.js";
|
|
17
|
+
import "../../../../chunk-D2JQF2WC.js";
|
|
18
18
|
import "../../../../chunk-AJ6KFHEE.js";
|
|
19
19
|
import "../../../../chunk-KYUEO2IO.js";
|
|
20
20
|
import "../../../../chunk-GZOW6HNN.js";
|
|
21
|
-
import "../../../../chunk-
|
|
22
|
-
import "../../../../chunk-
|
|
23
|
-
import "../../../../chunk-
|
|
21
|
+
import "../../../../chunk-3WYEENUH.js";
|
|
22
|
+
import "../../../../chunk-WLDP7C4K.js";
|
|
23
|
+
import "../../../../chunk-FC7UCFFA.js";
|
|
24
24
|
import "../../../../chunk-LZNUBQ5I.js";
|
|
25
25
|
import "../../../../chunk-2FKWKLSC.js";
|
|
26
26
|
import "../../../../chunk-YOPMXGHY.js";
|
|
27
27
|
import "../../../../chunk-CBOB5AV6.js";
|
|
28
|
-
import "../../../../chunk-
|
|
28
|
+
import "../../../../chunk-HRES2S3Q.js";
|
|
29
29
|
import "../../../../chunk-AT6UKTH4.js";
|
|
30
30
|
import "../../../../chunk-5YDS6HO3.js";
|
|
31
31
|
import "../../../../chunk-OY437NRJ.js";
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
DataViewsTableBase
|
|
4
|
-
} from "../../../../chunk-
|
|
4
|
+
} from "../../../../chunk-3I5PHWKQ.js";
|
|
5
5
|
import "../../../../chunk-YNVTUQ5B.js";
|
|
6
|
-
import "../../../../chunk-
|
|
6
|
+
import "../../../../chunk-CNUO2BRV.js";
|
|
7
7
|
import "../../../../chunk-ZOLAYP2D.js";
|
|
8
|
-
import "../../../../chunk-
|
|
9
|
-
import "../../../../chunk-
|
|
8
|
+
import "../../../../chunk-KQDBOZQE.js";
|
|
9
|
+
import "../../../../chunk-FYUNROLW.js";
|
|
10
10
|
import "../../../../chunk-MKVDHR3B.js";
|
|
11
|
-
import "../../../../chunk-
|
|
11
|
+
import "../../../../chunk-QE4KYG5I.js";
|
|
12
12
|
import "../../../../chunk-T7OIVPCO.js";
|
|
13
13
|
import "../../../../chunk-X3AFXHY5.js";
|
|
14
14
|
import "../../../../chunk-XNAI7QGU.js";
|
|
@@ -16,19 +16,19 @@ import "../../../../chunk-7TCOYCD7.js";
|
|
|
16
16
|
import "../../../../chunk-4ZQQUICR.js";
|
|
17
17
|
import "../../../../chunk-XZFTRGRW.js";
|
|
18
18
|
import "../../../../chunk-WWH674WU.js";
|
|
19
|
-
import "../../../../chunk-
|
|
20
|
-
import "../../../../chunk-
|
|
19
|
+
import "../../../../chunk-DWH4TQXK.js";
|
|
20
|
+
import "../../../../chunk-D2JQF2WC.js";
|
|
21
21
|
import "../../../../chunk-AJ6KFHEE.js";
|
|
22
22
|
import "../../../../chunk-KYUEO2IO.js";
|
|
23
23
|
import "../../../../chunk-GZOW6HNN.js";
|
|
24
|
-
import "../../../../chunk-
|
|
25
|
-
import "../../../../chunk-
|
|
26
|
-
import "../../../../chunk-
|
|
24
|
+
import "../../../../chunk-3WYEENUH.js";
|
|
25
|
+
import "../../../../chunk-WLDP7C4K.js";
|
|
26
|
+
import "../../../../chunk-FC7UCFFA.js";
|
|
27
27
|
import "../../../../chunk-LZNUBQ5I.js";
|
|
28
28
|
import "../../../../chunk-2FKWKLSC.js";
|
|
29
29
|
import "../../../../chunk-YOPMXGHY.js";
|
|
30
30
|
import "../../../../chunk-CBOB5AV6.js";
|
|
31
|
-
import "../../../../chunk-
|
|
31
|
+
import "../../../../chunk-HRES2S3Q.js";
|
|
32
32
|
import "../../../../chunk-AT6UKTH4.js";
|
|
33
33
|
import "../../../../chunk-5YDS6HO3.js";
|
|
34
34
|
import "../../../../chunk-OY437NRJ.js";
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
import {
|
|
3
3
|
FilterDialog,
|
|
4
4
|
GridFilterPanel
|
|
5
|
-
} from "../../../../chunk-
|
|
5
|
+
} from "../../../../chunk-FYUNROLW.js";
|
|
6
6
|
import "../../../../chunk-AJ6KFHEE.js";
|
|
7
|
-
import "../../../../chunk-
|
|
8
|
-
import "../../../../chunk-
|
|
9
|
-
import "../../../../chunk-
|
|
7
|
+
import "../../../../chunk-3WYEENUH.js";
|
|
8
|
+
import "../../../../chunk-WLDP7C4K.js";
|
|
9
|
+
import "../../../../chunk-FC7UCFFA.js";
|
|
10
10
|
import "../../../../chunk-LZNUBQ5I.js";
|
|
11
11
|
import "../../../../chunk-2FKWKLSC.js";
|
|
12
12
|
import "../../../../chunk-YOPMXGHY.js";
|
|
13
13
|
import "../../../../chunk-CBOB5AV6.js";
|
|
14
|
-
import "../../../../chunk-
|
|
14
|
+
import "../../../../chunk-HRES2S3Q.js";
|
|
15
15
|
import "../../../../chunk-GCZJH4XL.js";
|
|
16
16
|
import "../../../../chunk-7CUZTWKW.js";
|
|
17
17
|
import "../../../../chunk-KHG57NAE.js";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
GridShell
|
|
4
|
-
} from "../../../../chunk-
|
|
5
|
-
import "../../../../chunk-
|
|
4
|
+
} from "../../../../chunk-KQDBOZQE.js";
|
|
5
|
+
import "../../../../chunk-FYUNROLW.js";
|
|
6
6
|
import "../../../../chunk-MKVDHR3B.js";
|
|
7
|
-
import "../../../../chunk-
|
|
7
|
+
import "../../../../chunk-QE4KYG5I.js";
|
|
8
8
|
import "../../../../chunk-T7OIVPCO.js";
|
|
9
9
|
import "../../../../chunk-X3AFXHY5.js";
|
|
10
10
|
import "../../../../chunk-XNAI7QGU.js";
|
|
@@ -12,19 +12,19 @@ import "../../../../chunk-7TCOYCD7.js";
|
|
|
12
12
|
import "../../../../chunk-4ZQQUICR.js";
|
|
13
13
|
import "../../../../chunk-XZFTRGRW.js";
|
|
14
14
|
import "../../../../chunk-WWH674WU.js";
|
|
15
|
-
import "../../../../chunk-
|
|
16
|
-
import "../../../../chunk-
|
|
15
|
+
import "../../../../chunk-DWH4TQXK.js";
|
|
16
|
+
import "../../../../chunk-D2JQF2WC.js";
|
|
17
17
|
import "../../../../chunk-AJ6KFHEE.js";
|
|
18
18
|
import "../../../../chunk-KYUEO2IO.js";
|
|
19
19
|
import "../../../../chunk-GZOW6HNN.js";
|
|
20
|
-
import "../../../../chunk-
|
|
21
|
-
import "../../../../chunk-
|
|
22
|
-
import "../../../../chunk-
|
|
20
|
+
import "../../../../chunk-3WYEENUH.js";
|
|
21
|
+
import "../../../../chunk-WLDP7C4K.js";
|
|
22
|
+
import "../../../../chunk-FC7UCFFA.js";
|
|
23
23
|
import "../../../../chunk-LZNUBQ5I.js";
|
|
24
24
|
import "../../../../chunk-2FKWKLSC.js";
|
|
25
25
|
import "../../../../chunk-YOPMXGHY.js";
|
|
26
26
|
import "../../../../chunk-CBOB5AV6.js";
|
|
27
|
-
import "../../../../chunk-
|
|
27
|
+
import "../../../../chunk-HRES2S3Q.js";
|
|
28
28
|
import "../../../../chunk-AT6UKTH4.js";
|
|
29
29
|
import "../../../../chunk-5YDS6HO3.js";
|
|
30
30
|
import "../../../../chunk-OY437NRJ.js";
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
InlineFilterControls
|
|
4
|
-
} from "../../../../chunk-
|
|
4
|
+
} from "../../../../chunk-QE4KYG5I.js";
|
|
5
5
|
import "../../../../chunk-T7OIVPCO.js";
|
|
6
6
|
import "../../../../chunk-WWH674WU.js";
|
|
7
|
-
import "../../../../chunk-
|
|
8
|
-
import "../../../../chunk-
|
|
7
|
+
import "../../../../chunk-DWH4TQXK.js";
|
|
8
|
+
import "../../../../chunk-D2JQF2WC.js";
|
|
9
9
|
import "../../../../chunk-AJ6KFHEE.js";
|
|
10
10
|
import "../../../../chunk-KYUEO2IO.js";
|
|
11
11
|
import "../../../../chunk-GZOW6HNN.js";
|
|
12
|
-
import "../../../../chunk-
|
|
13
|
-
import "../../../../chunk-
|
|
14
|
-
import "../../../../chunk-
|
|
12
|
+
import "../../../../chunk-3WYEENUH.js";
|
|
13
|
+
import "../../../../chunk-WLDP7C4K.js";
|
|
14
|
+
import "../../../../chunk-FC7UCFFA.js";
|
|
15
15
|
import "../../../../chunk-LZNUBQ5I.js";
|
|
16
16
|
import "../../../../chunk-2FKWKLSC.js";
|
|
17
17
|
import "../../../../chunk-YOPMXGHY.js";
|
|
18
18
|
import "../../../../chunk-CBOB5AV6.js";
|
|
19
|
-
import "../../../../chunk-
|
|
19
|
+
import "../../../../chunk-HRES2S3Q.js";
|
|
20
20
|
import "../../../../chunk-AT6UKTH4.js";
|
|
21
21
|
import "../../../../chunk-ACBHZG3Z.js";
|
|
22
22
|
import "../../../../chunk-GCZJH4XL.js";
|
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
|
+
MORE_SPACING,
|
|
3
4
|
MoreGroup,
|
|
4
5
|
MoreQuick,
|
|
5
|
-
|
|
6
|
-
|
|
6
|
+
clearTargetSx,
|
|
7
|
+
fieldClearing,
|
|
8
|
+
moreHeaderSx
|
|
9
|
+
} from "../../../../chunk-D2JQF2WC.js";
|
|
7
10
|
import "../../../../chunk-AJ6KFHEE.js";
|
|
8
11
|
import "../../../../chunk-KYUEO2IO.js";
|
|
9
12
|
import "../../../../chunk-GZOW6HNN.js";
|
|
10
|
-
import "../../../../chunk-
|
|
11
|
-
import "../../../../chunk-
|
|
12
|
-
import "../../../../chunk-
|
|
13
|
+
import "../../../../chunk-3WYEENUH.js";
|
|
14
|
+
import "../../../../chunk-WLDP7C4K.js";
|
|
15
|
+
import "../../../../chunk-FC7UCFFA.js";
|
|
13
16
|
import "../../../../chunk-LZNUBQ5I.js";
|
|
14
17
|
import "../../../../chunk-2FKWKLSC.js";
|
|
15
18
|
import "../../../../chunk-YOPMXGHY.js";
|
|
16
19
|
import "../../../../chunk-CBOB5AV6.js";
|
|
17
|
-
import "../../../../chunk-
|
|
20
|
+
import "../../../../chunk-HRES2S3Q.js";
|
|
18
21
|
import "../../../../chunk-AT6UKTH4.js";
|
|
19
22
|
import "../../../../chunk-GCZJH4XL.js";
|
|
20
23
|
import "../../../../chunk-7CUZTWKW.js";
|
|
@@ -97,8 +100,11 @@ import "../../../../chunk-YKCAJ2TN.js";
|
|
|
97
100
|
import "../../../../chunk-MFU4Y25U.js";
|
|
98
101
|
import "../../../../chunk-PZ5AY32C.js";
|
|
99
102
|
export {
|
|
103
|
+
MORE_SPACING,
|
|
100
104
|
MoreGroup,
|
|
101
105
|
MoreQuick,
|
|
102
|
-
|
|
106
|
+
clearTargetSx,
|
|
107
|
+
fieldClearing,
|
|
108
|
+
moreHeaderSx
|
|
103
109
|
};
|
|
104
110
|
//# sourceMappingURL=data-views-more-fields.js.map
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
MoreFilters
|
|
4
|
-
} from "../../../../chunk-
|
|
5
|
-
import "../../../../chunk-
|
|
4
|
+
} from "../../../../chunk-DWH4TQXK.js";
|
|
5
|
+
import "../../../../chunk-D2JQF2WC.js";
|
|
6
6
|
import "../../../../chunk-AJ6KFHEE.js";
|
|
7
7
|
import "../../../../chunk-KYUEO2IO.js";
|
|
8
8
|
import "../../../../chunk-GZOW6HNN.js";
|
|
9
|
-
import "../../../../chunk-
|
|
10
|
-
import "../../../../chunk-
|
|
11
|
-
import "../../../../chunk-
|
|
9
|
+
import "../../../../chunk-3WYEENUH.js";
|
|
10
|
+
import "../../../../chunk-WLDP7C4K.js";
|
|
11
|
+
import "../../../../chunk-FC7UCFFA.js";
|
|
12
12
|
import "../../../../chunk-LZNUBQ5I.js";
|
|
13
13
|
import "../../../../chunk-2FKWKLSC.js";
|
|
14
14
|
import "../../../../chunk-YOPMXGHY.js";
|
|
15
15
|
import "../../../../chunk-CBOB5AV6.js";
|
|
16
|
-
import "../../../../chunk-
|
|
16
|
+
import "../../../../chunk-HRES2S3Q.js";
|
|
17
17
|
import "../../../../chunk-AT6UKTH4.js";
|
|
18
18
|
import "../../../../chunk-GCZJH4XL.js";
|
|
19
19
|
import "../../../../chunk-7CUZTWKW.js";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
RangeBounds
|
|
4
|
-
} from "../../../../chunk-
|
|
4
|
+
} from "../../../../chunk-FC7UCFFA.js";
|
|
5
5
|
import "../../../../chunk-LZNUBQ5I.js";
|
|
6
6
|
import "../../../../chunk-2FKWKLSC.js";
|
|
7
7
|
import "../../../../chunk-YOPMXGHY.js";
|
|
8
8
|
import "../../../../chunk-CBOB5AV6.js";
|
|
9
|
-
import "../../../../chunk-
|
|
9
|
+
import "../../../../chunk-HRES2S3Q.js";
|
|
10
10
|
import "../../../../chunk-GCZJH4XL.js";
|
|
11
11
|
import "../../../../chunk-KHG57NAE.js";
|
|
12
12
|
import "../../../../chunk-L6YTVXGN.js";
|
|
@@ -2,16 +2,16 @@
|
|
|
2
2
|
import {
|
|
3
3
|
PanelRangeField,
|
|
4
4
|
RangePill
|
|
5
|
-
} from "../../../../chunk-
|
|
6
|
-
import "../../../../chunk-
|
|
5
|
+
} from "../../../../chunk-3WYEENUH.js";
|
|
6
|
+
import "../../../../chunk-WLDP7C4K.js";
|
|
7
7
|
import {
|
|
8
8
|
RangeBounds
|
|
9
|
-
} from "../../../../chunk-
|
|
9
|
+
} from "../../../../chunk-FC7UCFFA.js";
|
|
10
10
|
import "../../../../chunk-LZNUBQ5I.js";
|
|
11
11
|
import "../../../../chunk-2FKWKLSC.js";
|
|
12
12
|
import "../../../../chunk-YOPMXGHY.js";
|
|
13
13
|
import "../../../../chunk-CBOB5AV6.js";
|
|
14
|
-
import "../../../../chunk-
|
|
14
|
+
import "../../../../chunk-HRES2S3Q.js";
|
|
15
15
|
import "../../../../chunk-GCZJH4XL.js";
|
|
16
16
|
import "../../../../chunk-7CUZTWKW.js";
|
|
17
17
|
import "../../../../chunk-KHG57NAE.js";
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-YNVTUQ5B.js";
|
|
4
4
|
import {
|
|
5
5
|
DataViewsGrid
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-CNUO2BRV.js";
|
|
7
7
|
import {
|
|
8
8
|
viewStateKey
|
|
9
9
|
} from "./chunk-ZOLAYP2D.js";
|
|
@@ -166,4 +166,4 @@ function renderViewDialogs(ctl, fields, columns, views, testIdPrefix, onSaved) {
|
|
|
166
166
|
export {
|
|
167
167
|
DataViewsTableBase
|
|
168
168
|
};
|
|
169
|
-
//# sourceMappingURL=chunk-
|
|
169
|
+
//# sourceMappingURL=chunk-3I5PHWKQ.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
RangeSummary
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-WLDP7C4K.js";
|
|
4
4
|
import {
|
|
5
5
|
RangeBounds
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-FC7UCFFA.js";
|
|
7
7
|
import {
|
|
8
8
|
RangePresets
|
|
9
9
|
} from "./chunk-LZNUBQ5I.js";
|
|
@@ -137,6 +137,10 @@ var DAY_PAPER_SX = (theme) => ({
|
|
|
137
137
|
// 280px seven 40px day columns need: at 320 it had 256 and every day was a
|
|
138
138
|
// 33px target (FUT-4144 UI review).
|
|
139
139
|
maxWidth: { xs: `calc(100% - ${rem(theme, 16)})`, sm: `calc(100% - ${rem(theme, 32)})` },
|
|
140
|
+
// And as tall as those same margins allow: MUI's default keeps 16px off the
|
|
141
|
+
// top and bottom, so a refused day's message at 320×568 made the popover
|
|
142
|
+
// 1px taller than its cap and it scrolled (FUT-4144 code review).
|
|
143
|
+
maxHeight: { xs: `calc(100% - ${rem(theme, 16)})`, sm: `calc(100% - ${rem(theme, 32)})` },
|
|
140
144
|
p: { xs: 1, sm: 2 }
|
|
141
145
|
});
|
|
142
146
|
function RangePill({
|
|
@@ -184,7 +188,8 @@ function RangePill({
|
|
|
184
188
|
value,
|
|
185
189
|
onChange,
|
|
186
190
|
testId,
|
|
187
|
-
calendarMonths
|
|
191
|
+
calendarMonths,
|
|
192
|
+
summaryOnHint: true
|
|
188
193
|
}
|
|
189
194
|
),
|
|
190
195
|
/* @__PURE__ */ jsx(RangeSummary, { field, value, onClear: () => onChange({}), testId })
|
|
@@ -235,4 +240,4 @@ export {
|
|
|
235
240
|
RangePill,
|
|
236
241
|
PanelRangeField
|
|
237
242
|
};
|
|
238
|
-
//# sourceMappingURL=chunk-
|
|
243
|
+
//# sourceMappingURL=chunk-3WYEENUH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/DataViews/data-views-range-pill.tsx"],"sourcesContent":["'use client';\n\n/**\n * A range filter as a PILL in the inline filter bar — the same affordance the\n * multi-select facets use, so \"Data\" and \"Valor\" sit in the filter row beside\n * \"Pagamento\"/\"Situação\"/\"Método\" instead of floating above the grid.\n *\n * Before this the inline bar rendered pills only, and `rangeFields` had a\n * surface on the slide-in panel alone — which `inlineFilters` REPLACES on a wide\n * screen. So a range filter was invisible on exactly the screens that use it,\n * and a page wanting one had to hang its own inputs outside the grid, outside\n * `DataViewState`, and outside the grid's \"Limpar filtros\" (FUT-668).\n */\nimport CloseIcon from '@mui/icons-material/Close';\nimport ChevronDownIcon from '@mui/icons-material/KeyboardArrowDown';\nimport Box from '@mui/material/Box/index.js';\nimport Button from '@mui/material/Button/index.js';\nimport Popover from '@mui/material/Popover/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport useMediaQuery from '@mui/material/useMediaQuery/index.js';\nimport { useTheme, type Theme } from '@mui/material/styles/index.js';\nimport React, { useContext } from 'react';\n\nimport { useDataViewsCopy } from \"./data-views-copy-context\";\nimport { TableFilter } from '../../layout/TableFilter';\nimport { TableFilterContext } from '../../layout/TableFilter/TableFilterContext';\nimport { RangePresets } from './data-views-preset-chips';\nimport { RangeBounds } from './data-views-range-bounds';\nimport { RangeSummary } from './data-views-range-summary';\nimport { useStillAnchor } from './data-views-still-anchor';\nimport { presetsFor } from './data-views-range-presets';\nimport {\n isRangeInverted,\n isRangeSet,\n numericRange,\n rangeChipLabel,\n} from './data-views-range-values';\nimport type { RangeFieldConfig, RangeValue } from './data-views-types';\nimport { fieldRadiusPx } from '../../../tokens/field-radius';\nimport { fieldHeight } from '../../../tokens/field-height';\nimport { fieldEdge } from '../../../tokens/field-edge';\nimport { rem, remPx, sxRem } from '../../../tokens/relative';\n\n// Re-exported: the pair moved to its own file, and its importers keep their path.\nexport { RangeBounds };\n\n/**\n * The pill + its popover. Bounds commit on change (the list is server-driven, so\n * each edit is a query) and the popover stays open, which is what lets a\n * merchant set \"de\" and then \"até\" without re-opening it.\n */\n/** An applied range clears from the pill itself — re-opening to empty two fields is three gestures for one intent. */\nfunction ClearAffordance({\n label,\n onClear,\n testId,\n}: {\n label: string;\n onClear: () => void;\n testId: string;\n}): React.JSX.Element {\n const copy = useDataViewsCopy();\n const clear = (event: React.SyntheticEvent): void => {\n event.stopPropagation();\n onClear();\n };\n return (\n <Box\n component=\"span\"\n role=\"button\"\n tabIndex={0}\n aria-label={copy.filters.clearRange(label)}\n data-testid={testId}\n onClick={clear}\n onKeyDown={(event: React.KeyboardEvent) => {\n if (event.key !== 'Enter' && event.key !== ' ') return;\n event.preventDefault();\n clear(event);\n }}\n sx={{ display: 'inline-flex', borderRadius: 999, p: 0.125, '&:hover': { bgcolor: 'action.selected' } }}\n >\n <CloseIcon sx={{ fontSize: sxRem(14) }} />\n </Box>\n );\n}\n\n/** The pill button: its label carries the applied window, and its tone the state. */\nfunction RangeTrigger<T extends Record<string, unknown>>({\n field,\n value,\n onChange,\n onOpen,\n open,\n testId,\n}: {\n field: RangeFieldConfig<T>;\n value: RangeValue;\n onChange: (range: RangeValue) => void;\n onOpen: (anchor: HTMLElement) => void;\n open: boolean;\n testId: string;\n}): React.JSX.Element {\n const active = isRangeSet(value);\n const inverted = isRangeInverted(value);\n // An INVERTED window gets its own tone rather than the ordinary \"applied\"\n // one: it is applied, and it matches nothing, and those are different states.\n // At rest the pill draws the one field border (`fieldEdge`).\n const tone = inverted ? 'error.main' : active ? 'primary.main' : null;\n return (\n <Button\n variant=\"outlined\"\n color=\"inherit\"\n size=\"small\"\n data-testid={testId}\n aria-haspopup=\"dialog\"\n aria-expanded={open}\n onClick={(event) => onOpen(event.currentTarget)}\n // ✕ FIRST, chevron LAST — the same shape as every other pill. It used to\n // replace the chevron at the end, so a range pill and a multi-select pill\n // put the clear in different places, and an applied range lost the\n // affordance that says it opens.\n startIcon={\n active ? (\n <ClearAffordance label={field.label} onClear={() => onChange({})} testId={`${testId}-clear-inline`} />\n ) : undefined\n }\n endIcon={<ChevronDownIcon sx={{ fontSize: sxRem(16) }} />}\n sx={{\n borderRadius: fieldRadiusPx,\n height: fieldHeight,\n px: 1.5,\n maxWidth: sxRem(280),\n color: inverted ? 'error.main' : 'text.primary',\n fontWeight: 600,\n fontSize: sxRem(13),\n textTransform: 'none',\n whiteSpace: 'nowrap',\n borderColor: (theme) => tone ?? fieldEdge(theme),\n bgcolor: active ? 'action.selected' : 'background.paper',\n '&:hover': {\n borderColor: active ? tone : 'text.primary',\n bgcolor: active ? 'action.selected' : 'action.hover',\n },\n }}\n >\n {/* The applied bounds, in the label — a pill reading only \"Valor\" hides\n the very thing that is narrowing the list. */}\n <Box component=\"span\" sx={{ overflow: 'hidden', textOverflow: 'ellipsis' }}>\n {active ? rangeChipLabel(field, value) : field.label}\n </Box>\n </Button>\n );\n}\n\n/**\n * How many months the pill's calendar shows: two from the theme's `md` up,\n * where the popover has the ~670px they take; one below it.\n *\n * A media query, not an `sx` breakpoint, because it decides what to RENDER —\n * CSS cannot un-render a second month. `up('md')` so that where nothing can be\n * measured (a test, the server) the answer is the one month that always fits.\n */\nfunction useCalendarMonths(): 1 | 2 {\n const theme = useTheme();\n return useMediaQuery(theme.breakpoints.up('md')) ? 2 : 1;\n}\n\n/**\n * The day popover's width. Below `sm` it takes the screen's (less the\n * popover's own 16px margins, which its `maxWidth` already keeps), so the boxes\n * and the month share it instead of leaving a strip of grid beside a narrow\n * card. From `sm` to `md` it holds one month, and sized to its content the\n * preset row alone stretched it to ~515px with the month hugging the left and\n * a band of nothing beside it; 400 keeps the month and the boxes one width.\n * From `md` its content — two months — sets it.\n */\nconst DAY_PAPER_SX = (theme: Theme) => ({\n width: { xs: '100%', sm: rem(theme, 400), md: 'auto' },\n // Below `sm` 8px from each edge and 8px of padding, so the month gets the\n // 280px seven 40px day columns need: at 320 it had 256 and every day was a\n // 33px target (FUT-4144 UI review).\n maxWidth: { xs: `calc(100% - ${rem(theme, 16)})`, sm: `calc(100% - ${rem(theme, 32)})` },\n // And as tall as those same margins allow: MUI's default keeps 16px off the\n // top and bottom, so a refused day's message at 320×568 made the popover\n // 1px taller than its cap and it scrolled (FUT-4144 code review).\n maxHeight: { xs: `calc(100% - ${rem(theme, 16)})`, sm: `calc(100% - ${rem(theme, 32)})` },\n p: { xs: 1, sm: 2 },\n});\n\n\nexport function RangePill<T extends Record<string, unknown>>({\n field,\n value,\n onChange,\n onOpenChange,\n testIdPrefix,\n}: {\n field: RangeFieldConfig<T>;\n value: RangeValue;\n onChange: (range: RangeValue) => void;\n /** So a measured toolbar can hold still while this is open. */\n onOpenChange?: (open: boolean) => void;\n testIdPrefix: string;\n}): React.JSX.Element {\n const still = useStillAnchor();\n const testId = `${testIdPrefix}-range-${field.id}`;\n const calendarMonths = useCalendarMonths();\n const theme = useTheme();\n const phone = useMediaQuery(theme.breakpoints.down('sm'));\n return (\n <>\n <RangeTrigger\n field={field}\n value={value}\n onChange={onChange}\n onOpen={(element) => {\n still.open(element);\n onOpenChange?.(true);\n }}\n open={Boolean(still.anchor)}\n testId={testId}\n />\n <Popover\n {...still.popoverProps}\n onClose={() => {\n still.close();\n onOpenChange?.(false);\n }}\n // Below `sm` a day popover keeps 8px from the screen's edges instead of 16.\n marginThreshold={field.kind === 'day' && phone ? remPx(theme, 8) : undefined}\n slotProps={{ paper: { ref: still.paperRef, sx: [{ p: 2, mt: 0.5 }, field.kind === 'day' && DAY_PAPER_SX] } }}\n >\n <RangeBounds\n field={field}\n value={value}\n onChange={onChange}\n testId={testId}\n calendarMonths={calendarMonths}\n summaryOnHint\n />\n <RangeSummary field={field} value={value} onClear={() => onChange({})} testId={testId} />\n </Popover>\n </>\n );\n}\n\n\n/**\n * One range on the SLIDE-IN panel (and the narrow-screen modal): the numeric\n * control the panel already had, or — for a day range, which that control cannot\n * express — the same `De`/`Até` pair the pill's popover uses.\n */\nexport function PanelRangeField<T extends Record<string, unknown>>({\n field,\n value,\n onChange,\n testId,\n}: {\n field: RangeFieldConfig<T>;\n value: RangeValue;\n onChange: (range: RangeValue) => void;\n testId: string;\n}): React.JSX.Element {\n const copy = useDataViewsCopy();\n // The slide-in panel stays mounted while closed; its calendar does not.\n // Outside a `TableFilter` (the \"Mais\" sheet, a test) the pair is on screen.\n const panel = useContext(TableFilterContext);\n if (field.kind === \"day\") {\n return (\n <Box sx={{ display: \"flex\", flexDirection: \"column\", gap: 1 }}>\n <Typography component=\"span\" sx={{ fontSize: sxRem(12), fontWeight: 500, color: \"text.secondary\" }}>\n {field.label}\n </Typography>\n <RangeBounds\n field={field}\n value={value}\n onChange={onChange}\n testId={testId}\n showCalendar={panel ? panel.open : true}\n />\n </Box>\n );\n }\n return (\n <Box sx={{ display: \"flex\", flexDirection: \"column\", gap: 1 }}>\n <TableFilter.RangeField\n label={field.label}\n unit={field.unit}\n value={numericRange(value)}\n onChange={(range) => onChange(range)}\n testId={testId}\n />\n {/* Below the numeric control here, unlike the pill's popover: this one\n renders its own label, and chips above it would separate the label\n from the field it names. */}\n <RangePresets presets={presetsFor(field, copy)} value={value} onChange={onChange} testId={testId} />\n </Box>\n );\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
GridShell
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-KQDBOZQE.js";
|
|
4
4
|
import {
|
|
5
5
|
useDataViewsState
|
|
6
6
|
} from "./chunk-ZCNR4DN5.js";
|
|
@@ -27,4 +27,4 @@ function DataViewsGrid(props) {
|
|
|
27
27
|
export {
|
|
28
28
|
DataViewsGrid
|
|
29
29
|
};
|
|
30
|
-
//# sourceMappingURL=chunk-
|
|
30
|
+
//# sourceMappingURL=chunk-CNUO2BRV.js.map
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
} from "./chunk-KYUEO2IO.js";
|
|
7
7
|
import {
|
|
8
8
|
RangeBounds
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-FC7UCFFA.js";
|
|
10
10
|
import {
|
|
11
11
|
QuickRow
|
|
12
12
|
} from "./chunk-AT6UKTH4.js";
|
|
@@ -148,13 +148,18 @@ function fieldClearing({
|
|
|
148
148
|
clear: () => values.forEach((value) => onTogglePill(field.id, value, false))
|
|
149
149
|
};
|
|
150
150
|
}
|
|
151
|
+
var quickSx = (theme) => ({
|
|
152
|
+
mb: MORE_SPACING.underQuick,
|
|
153
|
+
[theme.breakpoints.up("sm")]: { mb: 1 },
|
|
154
|
+
"&:last-of-type": { mb: 0 }
|
|
155
|
+
});
|
|
151
156
|
function MoreQuick({
|
|
152
157
|
quick,
|
|
153
158
|
pills,
|
|
154
159
|
onToggleQuick,
|
|
155
160
|
testIdPrefix
|
|
156
161
|
}) {
|
|
157
|
-
return /* @__PURE__ */ jsx(default2, { sx:
|
|
162
|
+
return /* @__PURE__ */ jsx(default2, { sx: quickSx, children: /* @__PURE__ */ jsx(
|
|
158
163
|
QuickRow,
|
|
159
164
|
{
|
|
160
165
|
quick,
|
|
@@ -164,6 +169,45 @@ function MoreQuick({
|
|
|
164
169
|
}
|
|
165
170
|
) });
|
|
166
171
|
}
|
|
172
|
+
var MORE_SPACING = {
|
|
173
|
+
/** Under a group. */
|
|
174
|
+
underGroup: 1.5,
|
|
175
|
+
/** Under a shed quick chip, below `sm` (8px from `sm` up, as before). */
|
|
176
|
+
underQuick: 1.5,
|
|
177
|
+
/**
|
|
178
|
+
* The scroller's top inset (`data-views-more-filters.tsx`), at every width:
|
|
179
|
+
* the first group's overlay reaches into it. Not part of a responsive `p`,
|
|
180
|
+
* whose `xs` value is emitted as a media query and would win over it.
|
|
181
|
+
*/
|
|
182
|
+
aboveFirst: 1.5,
|
|
183
|
+
/** Under a group's header, below `sm`, applied or not, so nothing moves on apply. */
|
|
184
|
+
underHeader: 1.25,
|
|
185
|
+
/** Under a group's header from `sm` up, as it always was. */
|
|
186
|
+
underHeaderFromSm: 0.5,
|
|
187
|
+
reachUp: 1.5,
|
|
188
|
+
reachDown: 1.25,
|
|
189
|
+
reachSide: 0.25
|
|
190
|
+
};
|
|
191
|
+
var moreHeaderSx = (theme) => ({
|
|
192
|
+
display: "flex",
|
|
193
|
+
alignItems: "center",
|
|
194
|
+
gap: 1,
|
|
195
|
+
mb: MORE_SPACING.underHeader,
|
|
196
|
+
[theme.breakpoints.up("sm")]: { mb: MORE_SPACING.underHeaderFromSm }
|
|
197
|
+
});
|
|
198
|
+
var clearTargetSx = (theme) => ({
|
|
199
|
+
position: "relative",
|
|
200
|
+
[theme.breakpoints.up("sm")]: { position: "static" },
|
|
201
|
+
"&::before": {
|
|
202
|
+
content: '""',
|
|
203
|
+
position: "absolute",
|
|
204
|
+
top: `-${theme.spacing(MORE_SPACING.reachUp)}`,
|
|
205
|
+
bottom: `-${theme.spacing(MORE_SPACING.reachDown)}`,
|
|
206
|
+
left: `-${theme.spacing(MORE_SPACING.reachSide)}`,
|
|
207
|
+
right: `-${theme.spacing(MORE_SPACING.reachSide)}`,
|
|
208
|
+
[theme.breakpoints.up("sm")]: { display: "none" }
|
|
209
|
+
}
|
|
210
|
+
});
|
|
167
211
|
function MoreGroup({
|
|
168
212
|
field,
|
|
169
213
|
pills,
|
|
@@ -174,8 +218,8 @@ function MoreGroup({
|
|
|
174
218
|
}) {
|
|
175
219
|
const copy = useDataViewsCopy();
|
|
176
220
|
const { applied, clear } = fieldClearing({ field, pills, ranges, onTogglePill, onChangeRange });
|
|
177
|
-
return /* @__PURE__ */ jsxs(default2, { sx: { mb:
|
|
178
|
-
/* @__PURE__ */ jsxs(default2, { sx:
|
|
221
|
+
return /* @__PURE__ */ jsxs(default2, { sx: { mb: MORE_SPACING.underGroup, "&:last-of-type": { mb: 0 } }, children: [
|
|
222
|
+
/* @__PURE__ */ jsxs(default2, { sx: moreHeaderSx, children: [
|
|
179
223
|
/* @__PURE__ */ jsx(Text, { variant: "caption", as: "span", children: /* @__PURE__ */ jsxs(default2, { component: "span", sx: { color: "text.secondary" }, children: [
|
|
180
224
|
field.label,
|
|
181
225
|
field.group === "range" && isRangeSet(ranges[field.id] ?? {}) ? " \u2022" : ""
|
|
@@ -187,17 +231,20 @@ function MoreGroup({
|
|
|
187
231
|
type: "button",
|
|
188
232
|
onClick: clear,
|
|
189
233
|
"data-testid": `${testIdPrefix}-more-${field.id}-clear`,
|
|
190
|
-
sx:
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
234
|
+
sx: [
|
|
235
|
+
{
|
|
236
|
+
ml: "auto",
|
|
237
|
+
border: 0,
|
|
238
|
+
p: 0,
|
|
239
|
+
bgcolor: "transparent",
|
|
240
|
+
cursor: "pointer",
|
|
241
|
+
font: "inherit",
|
|
242
|
+
fontSize: sxRem(12),
|
|
243
|
+
color: "primary.main",
|
|
244
|
+
"&:hover": { textDecoration: "underline" }
|
|
245
|
+
},
|
|
246
|
+
clearTargetSx
|
|
247
|
+
],
|
|
201
248
|
children: copy.filters.clear
|
|
202
249
|
}
|
|
203
250
|
)
|
|
@@ -226,6 +273,9 @@ function MoreGroup({
|
|
|
226
273
|
export {
|
|
227
274
|
fieldClearing,
|
|
228
275
|
MoreQuick,
|
|
276
|
+
MORE_SPACING,
|
|
277
|
+
moreHeaderSx,
|
|
278
|
+
clearTargetSx,
|
|
229
279
|
MoreGroup
|
|
230
280
|
};
|
|
231
|
-
//# sourceMappingURL=chunk-
|
|
281
|
+
//# sourceMappingURL=chunk-D2JQF2WC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/data-display/DataViews/data-views-more-fields.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * ONE FIELD, RENDERED INSIDE THE \"MAIS\" PANEL.\n *\n * Split from `data-views-more-filters` at the file-size gate, along the seam\n * that was already there: that module is the trigger, the panel and its\n * footer — the chrome — and this is what goes in it.\n *\n * A field with one or two options renders FLAT: inside a panel there is no\n * space to win back, and two labelled checkboxes are faster than a dropdown\n * needing a second click. Past that — or whenever the field asks for a tree or\n * a search — it is the bar's own {@link PillControl}; see `sharesBarControl`.\n */\nimport Checkbox from \"@mui/material/Checkbox/index.js\";\nimport type { Theme } from \"@mui/material/styles/index.js\";\n\nimport { Box } from \"../../../mui/Box\";\nimport { Text } from \"../../typography/Text\";\n\nimport { PillControl } from \"./data-views-category-pill\";\nimport type { OverflowField } from \"./data-views-overflow\";\nimport { RangeBounds } from \"./data-views-range-pill\";\nimport { isRangeSet } from \"./data-views-range-values\";\nimport type { QuickFilterConfig, RangeValue } from \"./data-views-types\";\nimport { QuickRow } from \"./data-views-quick-chip\";\nimport { isQuickActive } from \"./data-views-overflow-fields\";\nimport { useDataViewsCopy } from \"./data-views-copy-context\";\nimport { fieldRadiusPx } from \"../../../tokens/field-radius\";\nimport { fieldHeight } from \"../../../tokens/field-height\";\nimport { fieldEdge } from \"../../../tokens/field-edge\";\nimport { sxRem } from \"../../../tokens/relative\";\n\n/** What each field's control needs, minus the panel's own chrome. */\nexport interface MoreFieldProps {\n pills: Record<string, string[]>;\n ranges: Record<string, RangeValue>;\n onTogglePill: (fieldId: string, value: string, checked: boolean) => void;\n onChangeRange: (fieldId: string, range: RangeValue) => void;\n /** Presses or releases a quick chip shed into the panel. */\n onToggleQuick?: (quick: QuickFilterConfig) => void;\n testIdPrefix: string;\n}\n\n/**\n * Above this many options a field is a DROPDOWN rather than a flat row of\n * checkboxes. Two options cost two lines and read faster laid out; a \"Cliente\"\n * with a dozen turns the panel into a scrolling wall and buries every field\n * under it, which is exactly what the overflow was meant to avoid.\n */\nconst INLINE_OPTION_LIMIT = 2;\n\n/**\n * Whether an overflowed pill keeps the SAME control it has on the bar.\n *\n * The panel used to build its own flat dropdown for every field past two\n * options, so a field's config only held while it fitted: `control:\n * \"category\"` lost its tree (subcategories flattened into one list, no\n * \"Marcar tudo\", no count footer) and `searchEnabled` lost its search, on\n * exactly the phone widths where most filters live in here. Anything the bar\n * would render as a dropdown now renders as the bar's own {@link PillControl};\n * only a plain two-option field — one that did not ask for a dropdown, a tree\n * or a search — stays a flat checkbox row, which is a panel layout rather than\n * a different control (the filter panel draws the same line).\n */\nfunction sharesBarControl<T extends Record<string, unknown>>(field: OverflowField<T>): boolean {\n const pill = field.pill;\n if (!pill) return false;\n return (\n pill.control === \"category\" ||\n pill.control === \"multiselect\" ||\n pill.searchEnabled === true ||\n pill.options.length > INLINE_OPTION_LIMIT\n );\n}\n\n/** One overflowed pill: the bar's control, or its options as checkboxes. */\nfunction OverflowPill<T extends Record<string, unknown>>({\n field,\n values,\n onTogglePill,\n onClear,\n testIdPrefix,\n}: {\n field: OverflowField<T>;\n values: string[];\n onTogglePill: (fieldId: string, value: string, checked: boolean) => void;\n onClear: () => void;\n testIdPrefix: string;\n}): React.JSX.Element {\n const testId = `${testIdPrefix}-more-${field.id}`;\n if (field.pill && sharesBarControl(field)) {\n return (\n <PillControl\n fieldId={field.id}\n pill={field.pill}\n selected={values}\n onTogglePill={onTogglePill}\n onClearField={onClear}\n testIdPrefix={testIdPrefix}\n testId={testId}\n />\n );\n }\n const onToggle = (value: string, checked: boolean) => onTogglePill(field.id, value, checked);\n return (\n <Box sx={{ display: \"flex\", flexWrap: \"wrap\", gap: 0.75 }}>\n {(field.pill?.options ?? []).map((option) => {\n const checked = values.includes(option.value);\n return (\n <Box\n key={option.value}\n component=\"label\"\n data-testid={`${testId}-${option.value}`}\n sx={{\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: 0.25,\n pr: 1,\n border: 1,\n borderStyle: \"solid\",\n minHeight: fieldHeight,\n borderColor: (theme) => (checked ? theme.palette.primary.main : fieldEdge(theme)),\n bgcolor: checked ? \"action.selected\" : \"transparent\",\n borderRadius: fieldRadiusPx,\n cursor: \"pointer\",\n fontSize: sxRem(13),\n color: checked ? \"primary.main\" : \"text.secondary\",\n }}\n >\n <Checkbox\n size=\"small\"\n checked={checked}\n onChange={(event) => onToggle(option.value, event.target.checked)}\n inputProps={{ \"aria-label\": `${field.label}: ${option.label}` }}\n />\n {option.label}\n </Box>\n );\n })}\n </Box>\n );\n}\n\n\n/**\n * One overflowed range: its presets and its two bounds, as the same controls\n * the pill uses.\n *\n * The whole control DELEGATES to {@link RangeBounds} rather than being built\n * here, which is the point — this panel used to render a raw\n * `<input type=\"date\">`, so the masked `dd/mm/aaaa` field existed only while\n * the filter FITTED on the bar. The moment \"Data\" overflowed it reverted to the\n * native control the mask replaced, and a merchant on a narrow screen never saw\n * the fix at all (FUT-744). `Valor` had the twin bug: a bare `type=\"number\"`\n * plus `Number(raw)` dropped the decimal comma this panel is meant to accept.\n *\n * That also retires the intrinsic-width workaround this pair used to need — a\n * native date input reports a wide minimum (its own mask plus the picker\n * glyph), which is what made two of them refuse to shrink and scrolled the\n * panel sideways. A text input has no such minimum.\n *\n * `RangeBounds` renders the preset chips ITSELF, above the inputs. This panel\n * must NOT render its own row as well: when the delegation above landed, the\n * chips it used to draw by hand stayed behind, and \"Data\" showed Hoje/Ontem/\n * Esta semana/Este mês/Este ano twice — two rows, duplicated test ids, and half\n * the panel's height spent saying the same thing (FUT-751).\n */\nfunction OverflowRange<T extends Record<string, unknown>>({\n field,\n value,\n onChange,\n testIdPrefix,\n}: {\n field: OverflowField<T>;\n value: RangeValue;\n onChange: (range: RangeValue) => void;\n testIdPrefix: string;\n}): React.JSX.Element | null {\n // `group === \"range\"` is what selects this component, so `range` is always\n // set; the guard is for the type, not for a state the caller can reach.\n if (!field.range) return null;\n return (\n <RangeBounds\n field={field.range}\n value={value}\n onChange={onChange}\n testId={`${testIdPrefix}-more-${field.id}`}\n fillRow\n />\n );\n}\n\n/**\n * Whether a field has anything applied, and how to unapply it — the two shapes\n * (a pill's selected values, a range's bounds) answered in one place so the\n * group that renders them stays a renderer.\n */\nexport function fieldClearing<T extends Record<string, unknown>>({\n field,\n pills,\n ranges,\n onTogglePill,\n onChangeRange,\n}: {\n field: OverflowField<T>;\n} & Pick<MoreFieldProps, \"pills\" | \"ranges\" | \"onTogglePill\" | \"onChangeRange\">): {\n applied: boolean;\n clear: () => void;\n} {\n if (field.group === \"quick\" && field.quick) {\n const quick = field.quick;\n // A `default` chip lit by an empty field has nothing to clear.\n const applied = isQuickActive(quick, pills) && (pills[quick.fieldId]?.length ?? 0) > 0;\n return { applied, clear: () => onTogglePill(quick.fieldId, quick.value, false) };\n }\n if (field.group === \"range\") {\n return {\n applied: isRangeSet(ranges[field.id] ?? {}),\n clear: () => onChangeRange(field.id, {}),\n };\n }\n const values = pills[field.id] ?? [];\n return {\n applied: values.length > 0,\n clear: () => values.forEach((value) => onTogglePill(field.id, value, false)),\n };\n}\n\n\n/**\n * Under a shed quick chip: 12px below `sm`, the gap a following group's\n * \"Limpar\" target reaches into (its 8px let the target cover the chip's\n * label); 8px from `sm` up, as before.\n */\nconst quickSx = (theme: Theme) => ({\n mb: MORE_SPACING.underQuick,\n [theme.breakpoints.up(\"sm\")]: { mb: 1 },\n \"&:last-of-type\": { mb: 0 },\n});\n\n/**\n * A quick chip shed into the panel: its own line, because label and count are\n * already the whole control — no heading above it, no \"Limpar\" beside it.\n */\nexport function MoreQuick({\n quick,\n pills,\n onToggleQuick,\n testIdPrefix,\n}: {\n quick: QuickFilterConfig;\n} & Pick<MoreFieldProps, \"pills\" | \"onToggleQuick\" | \"testIdPrefix\">): React.JSX.Element {\n return (\n <Box sx={quickSx}>\n <QuickRow\n quick={quick}\n active={isQuickActive(quick, pills)}\n onToggle={() => onToggleQuick?.(quick)}\n testIdPrefix={testIdPrefix}\n />\n </Box>\n );\n}\n\n/**\n * The \"Mais\" panel's vertical rhythm, in the theme's spacing units: the unit\n * the header \"Limpar\"'s phone target reaches into (FUT-4144). The target is\n * the button's 18px of text plus `reachUp` and `reachDown`, 40px at the\n * default type scale, and it may never reach further than the gap that is\n * there: under the group or quick chip above it (or the scroller's own top\n * inset, for the first group) and under its own header. Sideways it reaches\n * into the header row's empty gap and the scroller's padding, so a 37px\n * \"Limpar\" is 41px wide.\n */\nexport const MORE_SPACING = {\n /** Under a group. */\n underGroup: 1.5,\n /** Under a shed quick chip, below `sm` (8px from `sm` up, as before). */\n underQuick: 1.5,\n /**\n * The scroller's top inset (`data-views-more-filters.tsx`), at every width:\n * the first group's overlay reaches into it. Not part of a responsive `p`,\n * whose `xs` value is emitted as a media query and would win over it.\n */\n aboveFirst: 1.5,\n /** Under a group's header, below `sm`, applied or not, so nothing moves on apply. */\n underHeader: 1.25,\n /** Under a group's header from `sm` up, as it always was. */\n underHeaderFromSm: 0.5,\n reachUp: 1.5,\n reachDown: 1.25,\n reachSide: 0.25,\n} as const;\n\n/** A group's header row: the field's name, and \"Limpar\" while it is applied. */\nexport const moreHeaderSx = (theme: Theme) => ({\n display: \"flex\",\n alignItems: \"center\",\n gap: 1,\n mb: MORE_SPACING.underHeader,\n [theme.breakpoints.up(\"sm\")]: { mb: MORE_SPACING.underHeaderFromSm },\n});\n\n/**\n * \"Limpar\" is 12px text, a 37×18 button: on a phone that was the whole target\n * (FUT-4144, measured in the admin at 320–900). Below `sm` an overlay makes it\n * at least 40×40 without moving the text, reaching only into gaps\n * {@link MORE_SPACING} guarantees, in the same unit, so it grows and shrinks\n * with them and covers nothing else. From `sm` up there is no overlay and the\n * button is exactly as it was.\n */\nexport const clearTargetSx = (theme: Theme) => ({\n position: \"relative\" as const,\n [theme.breakpoints.up(\"sm\")]: { position: \"static\" as const },\n \"&::before\": {\n content: '\"\"',\n position: \"absolute\" as const,\n top: `-${theme.spacing(MORE_SPACING.reachUp)}`,\n bottom: `-${theme.spacing(MORE_SPACING.reachDown)}`,\n left: `-${theme.spacing(MORE_SPACING.reachSide)}`,\n right: `-${theme.spacing(MORE_SPACING.reachSide)}`,\n [theme.breakpoints.up(\"sm\")]: { display: \"none\" },\n },\n});\n\n/** One labelled group in the panel: the field's name, then its control. */\nexport function MoreGroup<T extends Record<string, unknown>>({\n field,\n pills,\n ranges,\n onTogglePill,\n onChangeRange,\n testIdPrefix,\n}: {\n field: OverflowField<T>;\n} & MoreFieldProps): React.JSX.Element {\n const copy = useDataViewsCopy();\n const { applied, clear } = fieldClearing({ field, pills, ranges, onTogglePill, onChangeRange });\n return (\n <Box sx={{ mb: MORE_SPACING.underGroup, \"&:last-of-type\": { mb: 0 } }}>\n <Box sx={moreHeaderSx}>\n <Text variant=\"caption\" as=\"span\">\n <Box component=\"span\" sx={{ color: \"text.secondary\" }}>\n {field.label}\n {field.group === \"range\" && isRangeSet(ranges[field.id] ?? {}) ? \" •\" : \"\"}\n </Box>\n </Text>\n {/* The panel's equivalent of the pill's ✕. Without it a field applied\n in here could only be cleared by finding it again on the bar —\n which is where it goes the moment it becomes active, so the\n operator has to close this panel to undo what they just did. */}\n {applied && (\n <Box\n component=\"button\"\n type=\"button\"\n onClick={clear}\n data-testid={`${testIdPrefix}-more-${field.id}-clear`}\n sx={[\n {\n ml: \"auto\",\n border: 0,\n p: 0,\n bgcolor: \"transparent\",\n cursor: \"pointer\",\n font: \"inherit\",\n fontSize: sxRem(12),\n color: \"primary.main\",\n \"&:hover\": { textDecoration: \"underline\" },\n },\n clearTargetSx,\n ]}\n >\n {copy.filters.clear}\n </Box>\n )}\n </Box>\n {field.group === \"pill\" ? (\n <OverflowPill\n field={field}\n values={pills[field.id] ?? []}\n onTogglePill={onTogglePill}\n onClear={() => (pills[field.id] ?? []).forEach((v) => onTogglePill(field.id, v, false))}\n testIdPrefix={testIdPrefix}\n />\n ) : (\n <OverflowRange\n field={field}\n value={ranges[field.id] ?? {}}\n onChange={(range) => onChangeRange(field.id, range)}\n testIdPrefix={testIdPrefix}\n />\n )}\n </Box>\n );\n}\n\n"],"mappings":"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","names":["default"]}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
|
+
MORE_SPACING,
|
|
2
3
|
MoreGroup,
|
|
3
4
|
MoreQuick,
|
|
4
5
|
fieldClearing
|
|
5
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-D2JQF2WC.js";
|
|
6
7
|
import {
|
|
7
8
|
useStillAnchor
|
|
8
9
|
} from "./chunk-7CUZTWKW.js";
|
|
@@ -211,7 +212,7 @@ function MoreFilters({
|
|
|
211
212
|
slotProps: { paper: { ref: still.paperRef, sx: phone ? PHONE_PAPER_SX : PAPER_SX } },
|
|
212
213
|
children: /* @__PURE__ */ jsxs(default2, { "data-testid": `${rest.testIdPrefix}-more-panel`, sx: { ...COLUMN_SX, flex: "1 1 auto", minHeight: 0 }, children: [
|
|
213
214
|
/* @__PURE__ */ jsx(MoreHeading, {}),
|
|
214
|
-
/* @__PURE__ */ jsx(default2, { sx: { flex: "1 1 auto", minHeight: 0, overflowY: "auto", overflowX: "hidden",
|
|
215
|
+
/* @__PURE__ */ jsx(default2, { sx: { flex: "1 1 auto", minHeight: 0, overflowY: "auto", overflowX: "hidden", px: { xs: 1, sm: 1.5 }, pb: { xs: 1, sm: 1.5 }, pt: MORE_SPACING.aboveFirst, minWidth: 0 }, children: /* @__PURE__ */ jsx(MoreFields, { fields, ...rest }, clearKey) }),
|
|
215
216
|
(anyApplied || holdsDayRange) && /* @__PURE__ */ jsx(MoreFooter, { onClearAll, testIdPrefix: rest.testIdPrefix, reserved: !anyApplied })
|
|
216
217
|
] })
|
|
217
218
|
}
|
|
@@ -222,4 +223,4 @@ function MoreFilters({
|
|
|
222
223
|
export {
|
|
223
224
|
MoreFilters
|
|
224
225
|
};
|
|
225
|
-
//# sourceMappingURL=chunk-
|
|
226
|
+
//# sourceMappingURL=chunk-DWH4TQXK.js.map
|