@mui/x-data-grid 8.27.3 → 9.0.0-alpha.1

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.
Files changed (68) hide show
  1. package/CHANGELOG.md +264 -52
  2. package/components/GridPagination.js +5 -4
  3. package/components/panel/filterPanel/GridFilterInputMultipleValue.js +12 -9
  4. package/components/virtualization/GridVirtualScrollbar.js +1 -52
  5. package/constants/localeTextConstants.js +3 -2
  6. package/esm/components/GridPagination.js +5 -4
  7. package/esm/components/panel/filterPanel/GridFilterInputMultipleValue.js +11 -8
  8. package/esm/components/virtualization/GridVirtualScrollbar.js +1 -52
  9. package/esm/constants/localeTextConstants.js +3 -2
  10. package/esm/hooks/features/columns/gridColumnsSelector.js +5 -14
  11. package/esm/hooks/features/pagination/gridPaginationUtils.js +1 -1
  12. package/esm/hooks/features/pagination/useGridRowCount.js +19 -3
  13. package/esm/index.js +1 -1
  14. package/esm/internals/utils/propValidation.js +1 -1
  15. package/esm/locales/beBY.js +3 -2
  16. package/esm/locales/bgBG.js +3 -2
  17. package/esm/locales/bnBD.js +3 -2
  18. package/esm/locales/csCZ.js +2 -2
  19. package/esm/locales/daDK.js +3 -2
  20. package/esm/locales/elGR.js +3 -2
  21. package/esm/locales/faIR.js +3 -2
  22. package/esm/locales/fiFI.js +3 -2
  23. package/esm/locales/huHU.js +3 -2
  24. package/esm/locales/hyAM.js +3 -2
  25. package/esm/locales/isIS.js +3 -2
  26. package/esm/locales/nlNL.js +3 -2
  27. package/esm/locales/roRO.js +3 -2
  28. package/esm/locales/ruRU.js +3 -2
  29. package/esm/locales/svSE.js +3 -2
  30. package/esm/locales/thTH.d.ts +2 -0
  31. package/esm/locales/thTH.js +297 -0
  32. package/esm/locales/trTR.js +3 -2
  33. package/esm/locales/ukUA.js +13 -12
  34. package/esm/locales/urPK.js +3 -2
  35. package/esm/locales/viVN.js +3 -2
  36. package/esm/material/index.js +1 -1
  37. package/esm/utils/utils.d.ts +2 -2
  38. package/esm/utils/utils.js +2 -2
  39. package/hooks/features/columns/gridColumnsSelector.js +5 -14
  40. package/hooks/features/pagination/gridPaginationUtils.js +1 -1
  41. package/hooks/features/pagination/useGridRowCount.js +19 -3
  42. package/index.js +1 -1
  43. package/internals/utils/propValidation.js +1 -1
  44. package/locales/beBY.js +3 -2
  45. package/locales/bgBG.js +3 -2
  46. package/locales/bnBD.js +3 -2
  47. package/locales/csCZ.js +2 -2
  48. package/locales/daDK.js +3 -2
  49. package/locales/elGR.js +3 -2
  50. package/locales/faIR.js +3 -2
  51. package/locales/fiFI.js +3 -2
  52. package/locales/huHU.js +3 -2
  53. package/locales/hyAM.js +3 -2
  54. package/locales/isIS.js +3 -2
  55. package/locales/nlNL.js +3 -2
  56. package/locales/roRO.js +3 -2
  57. package/locales/ruRU.js +3 -2
  58. package/locales/svSE.js +3 -2
  59. package/locales/thTH.d.ts +2 -0
  60. package/locales/thTH.js +303 -0
  61. package/locales/trTR.js +3 -2
  62. package/locales/ukUA.js +13 -12
  63. package/locales/urPK.js +3 -2
  64. package/locales/viVN.js +3 -2
  65. package/material/index.js +1 -1
  66. package/package.json +16 -8
  67. package/utils/utils.d.ts +2 -2
  68. package/utils/utils.js +2 -2
package/locales/elGR.js CHANGED
@@ -179,11 +179,12 @@ const elGRGrid = {
179
179
  // count,
180
180
  // estimated
181
181
  // }) => {
182
+ // const unknownRowCount = count == null || count === -1;
182
183
  // if (!estimated) {
183
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
184
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
184
185
  // }
185
186
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
186
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
187
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
187
188
  // },
188
189
  paginationItemAriaLabel: type => {
189
190
  if (type === 'first') {
package/locales/faIR.js CHANGED
@@ -178,11 +178,12 @@ const faIRGrid = {
178
178
  // count,
179
179
  // estimated
180
180
  // }) => {
181
+ // const unknownRowCount = count == null || count === -1;
181
182
  // if (!estimated) {
182
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
183
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
183
184
  // }
184
185
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
185
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
186
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
186
187
  // },
187
188
  paginationItemAriaLabel: type => {
188
189
  if (type === 'first') {
package/locales/fiFI.js CHANGED
@@ -179,11 +179,12 @@ const fiFIGrid = {
179
179
  // count,
180
180
  // estimated
181
181
  // }) => {
182
+ // const unknownRowCount = count == null || count === -1;
182
183
  // if (!estimated) {
183
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
184
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
184
185
  // }
185
186
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
186
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
187
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
187
188
  // },
188
189
  paginationItemAriaLabel: type => {
189
190
  if (type === 'first') {
package/locales/huHU.js CHANGED
@@ -177,11 +177,12 @@ const huHUGrid = {
177
177
  // count,
178
178
  // estimated
179
179
  // }) => {
180
+ // const unknownRowCount = count == null || count === -1;
180
181
  // if (!estimated) {
181
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
182
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
182
183
  // }
183
184
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
184
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
185
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
185
186
  // },
186
187
  paginationItemAriaLabel: type => {
187
188
  if (type === 'first') {
package/locales/hyAM.js CHANGED
@@ -202,11 +202,12 @@ const hyAMGrid = {
202
202
  // count,
203
203
  // estimated
204
204
  // }) => {
205
+ // const unknownRowCount = count == null || count === -1;
205
206
  // if (!estimated) {
206
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
207
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
207
208
  // }
208
209
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
209
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
210
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
210
211
  // },
211
212
  // paginationItemAriaLabel: type => {
212
213
  // if (type === 'first') {
package/locales/isIS.js CHANGED
@@ -179,11 +179,12 @@ const isISGrid = {
179
179
  // count,
180
180
  // estimated
181
181
  // }) => {
182
+ // const unknownRowCount = count == null || count === -1;
182
183
  // if (!estimated) {
183
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
184
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
184
185
  // }
185
186
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
186
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
187
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
187
188
  // },
188
189
  paginationItemAriaLabel: type => {
189
190
  if (type === 'first') {
package/locales/nlNL.js CHANGED
@@ -178,11 +178,12 @@ const nlNLGrid = {
178
178
  // count,
179
179
  // estimated
180
180
  // }) => {
181
+ // const unknownRowCount = count == null || count === -1;
181
182
  // if (!estimated) {
182
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
183
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
183
184
  // }
184
185
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
185
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
186
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
186
187
  // },
187
188
  paginationItemAriaLabel: type => {
188
189
  if (type === 'first') {
package/locales/roRO.js CHANGED
@@ -178,11 +178,12 @@ const roROGrid = {
178
178
  // count,
179
179
  // estimated
180
180
  // }) => {
181
+ // const unknownRowCount = count == null || count === -1;
181
182
  // if (!estimated) {
182
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
183
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
183
184
  // }
184
185
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
185
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
186
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
186
187
  // },
187
188
  paginationItemAriaLabel: type => {
188
189
  if (type === 'first') {
package/locales/ruRU.js CHANGED
@@ -200,11 +200,12 @@ const ruRUGrid = {
200
200
  // count,
201
201
  // estimated
202
202
  // }) => {
203
+ // const unknownRowCount = count == null || count === -1;
203
204
  // if (!estimated) {
204
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
205
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
205
206
  // }
206
207
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
207
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
208
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
208
209
  // },
209
210
  paginationItemAriaLabel: type => {
210
211
  if (type === 'first') {
package/locales/svSE.js CHANGED
@@ -179,11 +179,12 @@ const svSEGrid = {
179
179
  // count,
180
180
  // estimated
181
181
  // }) => {
182
+ // const unknownRowCount = count == null || count === -1;
182
183
  // if (!estimated) {
183
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
184
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
184
185
  // }
185
186
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
186
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
187
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
187
188
  // },
188
189
  paginationItemAriaLabel: type => {
189
190
  if (type === 'first') {
@@ -0,0 +1,2 @@
1
+ import { type Localization } from "../utils/getGridLocalization.js";
2
+ export declare const thTH: Localization;
@@ -0,0 +1,303 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.thTH = void 0;
7
+ var _getGridLocalization = require("../utils/getGridLocalization");
8
+ const thTHGrid = {
9
+ // Root
10
+ noRowsLabel: 'ไม่มีข้อมูล',
11
+ noResultsOverlayLabel: 'ไม่พบผลลัพธ์',
12
+ noColumnsOverlayLabel: 'ไม่มีคอลัมน์',
13
+ noColumnsOverlayManageColumns: 'จัดการคอลัมน์',
14
+ emptyPivotOverlayLabel: 'เพิ่มฟิลด์ไปยังแถว คอลัมน์ และค่า เพื่อสร้างตาราง Pivot',
15
+ // Density selector toolbar button text
16
+ toolbarDensity: 'ความหนาแน่น',
17
+ toolbarDensityLabel: 'ความหนาแน่น',
18
+ toolbarDensityCompact: 'กะทัดรัด',
19
+ toolbarDensityStandard: 'มาตรฐาน',
20
+ toolbarDensityComfortable: 'สบายตา',
21
+ // Undo/redo toolbar button text
22
+ toolbarUndo: 'เลิกทำ',
23
+ toolbarRedo: 'ทำซ้ำ',
24
+ // Columns selector toolbar button text
25
+ toolbarColumns: 'คอลัมน์',
26
+ toolbarColumnsLabel: 'เลือกคอลัมน์',
27
+ // Filters toolbar button text
28
+ toolbarFilters: 'ตัวกรอง',
29
+ toolbarFiltersLabel: 'แสดงตัวกรอง',
30
+ toolbarFiltersTooltipHide: 'ซ่อนตัวกรอง',
31
+ toolbarFiltersTooltipShow: 'แสดงตัวกรอง',
32
+ toolbarFiltersTooltipActive: count => `ตัวกรองที่ใช้งาน ${count} รายการ`,
33
+ // Quick filter toolbar field
34
+ toolbarQuickFilterPlaceholder: 'ค้นหา…',
35
+ toolbarQuickFilterLabel: 'ค้นหา',
36
+ toolbarQuickFilterDeleteIconLabel: 'ล้าง',
37
+ // Export selector toolbar button text
38
+ toolbarExport: 'ส่งออก',
39
+ toolbarExportLabel: 'ส่งออก',
40
+ toolbarExportCSV: 'ดาวน์โหลดเป็น CSV',
41
+ toolbarExportPrint: 'พิมพ์',
42
+ toolbarExportExcel: 'ดาวน์โหลดเป็น Excel',
43
+ // Toolbar pivot button
44
+ toolbarPivot: 'Pivot',
45
+ // Toolbar charts button
46
+ toolbarCharts: 'แผนภูมิ',
47
+ // Toolbar AI Assistant button
48
+ toolbarAssistant: 'ผู้ช่วย AI',
49
+ // Columns management text
50
+ columnsManagementSearchTitle: 'ค้นหา',
51
+ columnsManagementNoColumns: 'ไม่มีคอลัมน์',
52
+ columnsManagementShowHideAllText: 'แสดง/ซ่อนทั้งหมด',
53
+ columnsManagementReset: 'รีเซ็ต',
54
+ columnsManagementDeleteIconLabel: 'ล้าง',
55
+ // Filter panel text
56
+ filterPanelAddFilter: 'เพิ่มตัวกรอง',
57
+ filterPanelRemoveAll: 'ลบทั้งหมด',
58
+ filterPanelDeleteIconLabel: 'ลบ',
59
+ filterPanelLogicOperator: 'ตัวดำเนินการตรรกะ',
60
+ filterPanelOperator: 'ตัวดำเนินการ',
61
+ filterPanelOperatorAnd: 'และ',
62
+ filterPanelOperatorOr: 'หรือ',
63
+ filterPanelColumns: 'คอลัมน์',
64
+ filterPanelInputLabel: 'ค่า',
65
+ filterPanelInputPlaceholder: 'ค่าตัวกรอง',
66
+ // Filter operators text
67
+ filterOperatorContains: 'ประกอบด้วย',
68
+ filterOperatorDoesNotContain: 'ไม่ประกอบด้วย',
69
+ filterOperatorEquals: 'เท่ากับ',
70
+ filterOperatorDoesNotEqual: 'ไม่เท่ากับ',
71
+ filterOperatorStartsWith: 'เริ่มต้นด้วย',
72
+ filterOperatorEndsWith: 'ลงท้ายด้วย',
73
+ filterOperatorIs: 'คือ',
74
+ filterOperatorNot: 'ไม่ใช่',
75
+ filterOperatorAfter: 'หลังจาก',
76
+ filterOperatorOnOrAfter: 'ตั้งแต่หรือหลังจาก',
77
+ filterOperatorBefore: 'ก่อน',
78
+ filterOperatorOnOrBefore: 'ตั้งแต่หรือก่อน',
79
+ filterOperatorIsEmpty: 'ว่างเปล่า',
80
+ filterOperatorIsNotEmpty: 'ไม่ว่างเปล่า',
81
+ filterOperatorIsAnyOf: 'เป็นหนึ่งใน',
82
+ 'filterOperator=': '=',
83
+ 'filterOperator!=': '!=',
84
+ 'filterOperator>': '>',
85
+ 'filterOperator>=': '>=',
86
+ 'filterOperator<': '<',
87
+ 'filterOperator<=': '<=',
88
+ // Header filter operators text
89
+ headerFilterOperatorContains: 'ประกอบด้วย',
90
+ headerFilterOperatorDoesNotContain: 'ไม่ประกอบด้วย',
91
+ headerFilterOperatorEquals: 'เท่ากับ',
92
+ headerFilterOperatorDoesNotEqual: 'ไม่เท่ากับ',
93
+ headerFilterOperatorStartsWith: 'เริ่มต้นด้วย',
94
+ headerFilterOperatorEndsWith: 'ลงท้ายด้วย',
95
+ headerFilterOperatorIs: 'คือ',
96
+ headerFilterOperatorNot: 'ไม่ใช่',
97
+ headerFilterOperatorAfter: 'หลังจาก',
98
+ headerFilterOperatorOnOrAfter: 'ตั้งแต่หรือหลังจาก',
99
+ headerFilterOperatorBefore: 'ก่อน',
100
+ headerFilterOperatorOnOrBefore: 'ตั้งแต่หรือก่อน',
101
+ headerFilterOperatorIsEmpty: 'ว่างเปล่า',
102
+ headerFilterOperatorIsNotEmpty: 'ไม่ว่างเปล่า',
103
+ headerFilterOperatorIsAnyOf: 'เป็นหนึ่งใน',
104
+ 'headerFilterOperator=': 'เท่ากับ',
105
+ 'headerFilterOperator!=': 'ไม่เท่ากับ',
106
+ 'headerFilterOperator>': 'มากกว่า',
107
+ 'headerFilterOperator>=': 'มากกว่าหรือเท่ากับ',
108
+ 'headerFilterOperator<': 'น้อยกว่า',
109
+ 'headerFilterOperator<=': 'น้อยกว่าหรือเท่ากับ',
110
+ headerFilterClear: 'ล้างตัวกรอง',
111
+ // Filter values text
112
+ filterValueAny: 'ใดๆ',
113
+ filterValueTrue: 'จริง',
114
+ filterValueFalse: 'เท็จ',
115
+ // Column menu text
116
+ columnMenuLabel: 'เมนู',
117
+ columnMenuAriaLabel: columnName => `เมนูคอลัมน์ ${columnName}`,
118
+ columnMenuShowColumns: 'แสดงคอลัมน์',
119
+ columnMenuManageColumns: 'จัดการคอลัมน์',
120
+ columnMenuFilter: 'กรอง',
121
+ columnMenuHideColumn: 'ซ่อนคอลัมน์',
122
+ columnMenuUnsort: 'ยกเลิกการเรียงลำดับ',
123
+ columnMenuSortAsc: 'เรียงจากน้อยไปมาก',
124
+ columnMenuSortDesc: 'เรียงจากมากไปน้อย',
125
+ columnMenuManagePivot: 'จัดการ Pivot',
126
+ columnMenuManageCharts: 'จัดการแผนภูมิ',
127
+ // Column header text
128
+ columnHeaderFiltersTooltipActive: count => `ตัวกรองที่ใช้งาน ${count} รายการ`,
129
+ columnHeaderFiltersLabel: 'แสดงตัวกรอง',
130
+ columnHeaderSortIconLabel: 'เรียงลำดับ',
131
+ // Rows selected footer text
132
+ footerRowSelected: count => `เลือกแล้ว ${count.toLocaleString()} แถว`,
133
+ // Total row amount footer text
134
+ footerTotalRows: 'จำนวนแถวทั้งหมด:',
135
+ // Total visible row amount footer text
136
+ footerTotalVisibleRows: (visibleCount, totalCount) => `${visibleCount.toLocaleString()} จาก ${totalCount.toLocaleString()}`,
137
+ // Checkbox selection text
138
+ checkboxSelectionHeaderName: 'เลือกด้วยช่องทำเครื่องหมาย',
139
+ checkboxSelectionSelectAllRows: 'เลือกทุกแถว',
140
+ checkboxSelectionUnselectAllRows: 'ยกเลิกเลือกทุกแถว',
141
+ checkboxSelectionSelectRow: 'เลือกแถว',
142
+ checkboxSelectionUnselectRow: 'ยกเลิกเลือกแถว',
143
+ // Boolean cell text
144
+ booleanCellTrueLabel: 'ใช่',
145
+ booleanCellFalseLabel: 'ไม่ใช่',
146
+ // Long text cell
147
+ longTextCellExpandLabel: 'ขยาย',
148
+ longTextCellCollapseLabel: 'ย่อ',
149
+ // Actions cell more text
150
+ actionsCellMore: 'เพิ่มเติม',
151
+ // Column pinning text
152
+ pinToLeft: 'ปักหมุดทางซ้าย',
153
+ pinToRight: 'ปักหมุดทางขวา',
154
+ unpin: 'เลิกปักหมุด',
155
+ // Tree Data
156
+ treeDataGroupingHeaderName: 'กลุ่ม',
157
+ treeDataExpand: 'ดูรายการย่อย',
158
+ treeDataCollapse: 'ซ่อนรายการย่อย',
159
+ // Grouping columns
160
+ groupingColumnHeaderName: 'กลุ่ม',
161
+ groupColumn: name => `จัดกลุ่มตาม ${name}`,
162
+ unGroupColumn: name => `ยกเลิกจัดกลุ่มตาม ${name}`,
163
+ // Master/detail
164
+ detailPanelToggle: 'สลับแผงรายละเอียด',
165
+ expandDetailPanel: 'ขยาย',
166
+ collapseDetailPanel: 'ย่อ',
167
+ // Pagination
168
+ paginationRowsPerPage: 'แถวต่อหน้า:',
169
+ paginationDisplayedRows: ({
170
+ from,
171
+ to,
172
+ count,
173
+ estimated
174
+ }) => {
175
+ if (!estimated) {
176
+ return `${from}–${to} จาก ${count !== -1 ? count : `มากกว่า ${to}`}`;
177
+ }
178
+ const estimatedLabel = estimated > to ? `ประมาณ ${estimated}` : `มากกว่า ${to}`;
179
+ return `${from}–${to} จาก ${count !== -1 ? count : estimatedLabel}`;
180
+ },
181
+ paginationItemAriaLabel: type => {
182
+ if (type === 'first') {
183
+ return 'ไปหน้าแรก';
184
+ }
185
+ if (type === 'last') {
186
+ return 'ไปหน้าสุดท้าย';
187
+ }
188
+ if (type === 'next') {
189
+ return 'ไปหน้าถัดไป';
190
+ }
191
+ // if (type === 'previous') {
192
+ return 'ไปหน้าก่อนหน้า';
193
+ },
194
+ // Row reordering text
195
+ rowReorderingHeaderName: 'จัดเรียงแถวใหม่',
196
+ // Aggregation
197
+ aggregationMenuItemHeader: 'การรวมค่า',
198
+ aggregationFunctionLabelNone: 'ไม่มี',
199
+ aggregationFunctionLabelSum: 'ผลรวม',
200
+ aggregationFunctionLabelAvg: 'ค่าเฉลี่ย',
201
+ aggregationFunctionLabelMin: 'ค่าต่ำสุด',
202
+ aggregationFunctionLabelMax: 'ค่าสูงสุด',
203
+ aggregationFunctionLabelSize: 'จำนวน',
204
+ // Pivot panel
205
+ pivotToggleLabel: 'Pivot',
206
+ pivotRows: 'แถว',
207
+ pivotColumns: 'คอลัมน์',
208
+ pivotValues: 'ค่า',
209
+ pivotCloseButton: 'ปิดการตั้งค่า Pivot',
210
+ pivotSearchButton: 'ค้นหาฟิลด์',
211
+ pivotSearchControlPlaceholder: 'ค้นหาฟิลด์',
212
+ pivotSearchControlLabel: 'ค้นหาฟิลด์',
213
+ pivotSearchControlClear: 'ล้างการค้นหา',
214
+ pivotNoFields: 'ไม่มีฟิลด์',
215
+ pivotMenuMoveUp: 'ย้ายขึ้น',
216
+ pivotMenuMoveDown: 'ย้ายลง',
217
+ pivotMenuMoveToTop: 'ย้ายไปบนสุด',
218
+ pivotMenuMoveToBottom: 'ย้ายไปล่างสุด',
219
+ pivotMenuRows: 'แถว',
220
+ pivotMenuColumns: 'คอลัมน์',
221
+ pivotMenuValues: 'ค่า',
222
+ pivotMenuOptions: 'ตัวเลือกฟิลด์',
223
+ pivotMenuAddToRows: 'เพิ่มไปยังแถว',
224
+ pivotMenuAddToColumns: 'เพิ่มไปยังคอลัมน์',
225
+ pivotMenuAddToValues: 'เพิ่มไปยังค่า',
226
+ pivotMenuRemove: 'ลบ',
227
+ pivotDragToRows: 'ลากมาที่นี่เพื่อสร้างแถว',
228
+ pivotDragToColumns: 'ลากมาที่นี่เพื่อสร้างคอลัมน์',
229
+ pivotDragToValues: 'ลากมาที่นี่เพื่อสร้างค่า',
230
+ pivotYearColumnHeaderName: '(ปี)',
231
+ pivotQuarterColumnHeaderName: '(ไตรมาส)',
232
+ // Charts configuration panel
233
+ chartsNoCharts: 'ไม่มีแผนภูมิที่ใช้งานได้',
234
+ chartsChartNotSelected: 'เลือกประเภทแผนภูมิเพื่อกำหนดค่าตัวเลือก',
235
+ chartsTabChart: 'แผนภูมิ',
236
+ chartsTabFields: 'ฟิลด์',
237
+ chartsTabCustomize: 'ปรับแต่ง',
238
+ chartsCloseButton: 'ปิดการตั้งค่าแผนภูมิ',
239
+ chartsSyncButtonLabel: 'ซิงค์แผนภูมิ',
240
+ chartsSearchPlaceholder: 'ค้นหาฟิลด์',
241
+ chartsSearchLabel: 'ค้นหาฟิลด์',
242
+ chartsSearchClear: 'ล้างการค้นหา',
243
+ chartsNoFields: 'ไม่มีฟิลด์',
244
+ chartsFieldBlocked: 'ไม่สามารถเพิ่มฟิลด์นี้ไปยังส่วนใดได้',
245
+ chartsCategories: 'หมวดหมู่',
246
+ chartsSeries: 'ชุดข้อมูล',
247
+ chartsMenuAddToDimensions: dimensionLabel => `เพิ่มไปยัง${dimensionLabel}`,
248
+ chartsMenuAddToValues: valuesLabel => `เพิ่มไปยัง${valuesLabel}`,
249
+ chartsMenuMoveUp: 'ย้ายขึ้น',
250
+ chartsMenuMoveDown: 'ย้ายลง',
251
+ chartsMenuMoveToTop: 'ย้ายไปบนสุด',
252
+ chartsMenuMoveToBottom: 'ย้ายไปล่างสุด',
253
+ chartsMenuOptions: 'ตัวเลือกฟิลด์',
254
+ chartsMenuRemove: 'ลบ',
255
+ chartsDragToDimensions: dimensionLabel => `ลากมาที่นี่เพื่อใช้คอลัมน์เป็น${dimensionLabel}`,
256
+ chartsDragToValues: valuesLabel => `ลากมาที่นี่เพื่อใช้คอลัมน์เป็น${valuesLabel}`,
257
+ // AI Assistant panel
258
+ aiAssistantPanelTitle: 'ผู้ช่วย AI',
259
+ aiAssistantPanelClose: 'ปิดผู้ช่วย AI',
260
+ aiAssistantPanelNewConversation: 'บทสนทนาใหม่',
261
+ aiAssistantPanelConversationHistory: 'ประวัติบทสนทนา',
262
+ aiAssistantPanelEmptyConversation: 'ไม่มีประวัติคำสั่ง',
263
+ aiAssistantSuggestions: 'คำแนะนำ',
264
+ // Prompt field
265
+ promptFieldLabel: 'คำสั่ง',
266
+ promptFieldPlaceholder: 'พิมพ์คำสั่ง…',
267
+ promptFieldPlaceholderWithRecording: 'พิมพ์หรือบันทึกเสียงคำสั่ง…',
268
+ promptFieldPlaceholderListening: 'กำลังฟังคำสั่ง…',
269
+ promptFieldSpeechRecognitionNotSupported: 'เบราว์เซอร์นี้ไม่รองรับการรู้จำเสียง',
270
+ promptFieldSend: 'ส่ง',
271
+ promptFieldRecord: 'บันทึกเสียง',
272
+ promptFieldStopRecording: 'หยุดบันทึกเสียง',
273
+ // Prompt
274
+ promptRerun: 'รันอีกครั้ง',
275
+ promptProcessing: 'กำลังประมวลผล…',
276
+ promptAppliedChanges: 'นำการเปลี่ยนแปลงไปใช้แล้ว',
277
+ // Prompt changes
278
+ promptChangeGroupDescription: column => `จัดกลุ่มตาม ${column}`,
279
+ promptChangeAggregationLabel: (column, aggregation) => `${column} (${aggregation})`,
280
+ promptChangeAggregationDescription: (column, aggregation) => `รวมค่า ${column} (${aggregation})`,
281
+ promptChangeFilterLabel: (column, operator, value) => {
282
+ if (operator === 'is any of') {
283
+ return `${column} เป็นหนึ่งใน: ${value}`;
284
+ }
285
+ return `${column} ${operator} ${value}`;
286
+ },
287
+ promptChangeFilterDescription: (column, operator, value) => {
288
+ if (operator === 'is any of') {
289
+ return `กรองโดยที่ ${column} เป็นหนึ่งใน: ${value}`;
290
+ }
291
+ return `กรองโดยที่ ${column} ${operator} ${value}`;
292
+ },
293
+ promptChangeSortDescription: (column, direction) => `เรียงตาม ${column} (${direction})`,
294
+ promptChangePivotEnableLabel: 'Pivot',
295
+ promptChangePivotEnableDescription: 'เปิดใช้งาน Pivot',
296
+ promptChangePivotColumnsLabel: count => `คอลัมน์ (${count})`,
297
+ promptChangePivotColumnsDescription: (column, direction) => `${column}${direction ? ` (${direction})` : ''}`,
298
+ promptChangePivotRowsLabel: count => `แถว (${count})`,
299
+ promptChangePivotValuesLabel: count => `ค่า (${count})`,
300
+ promptChangePivotValuesDescription: (column, aggregation) => `${column} (${aggregation})`,
301
+ promptChangeChartsLabel: (dimensionsCount, valuesCount) => `มิติ (${dimensionsCount}), ค่า (${valuesCount})`
302
+ };
303
+ const thTH = exports.thTH = (0, _getGridLocalization.getGridLocalization)(thTHGrid);
package/locales/trTR.js CHANGED
@@ -178,11 +178,12 @@ const trTRGrid = {
178
178
  // count,
179
179
  // estimated
180
180
  // }) => {
181
+ // const unknownRowCount = count == null || count === -1;
181
182
  // if (!estimated) {
182
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
183
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
183
184
  // }
184
185
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
185
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
186
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
186
187
  // },
187
188
  paginationItemAriaLabel: type => {
188
189
  if (type === 'first') {
package/locales/ukUA.js CHANGED
@@ -194,18 +194,19 @@ const ukUAGrid = {
194
194
  collapseDetailPanel: 'Приховати',
195
195
  // Pagination
196
196
  paginationRowsPerPage: 'Рядків на сторінці:',
197
- // paginationDisplayedRows: ({
198
- // from,
199
- // to,
200
- // count,
201
- // estimated
202
- // }) => {
203
- // if (!estimated) {
204
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
205
- // }
206
- // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
207
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
208
- // },
197
+ paginationDisplayedRows: ({
198
+ from,
199
+ to,
200
+ count,
201
+ estimated
202
+ }) => {
203
+ const unknownRowCount = count == null || count === -1;
204
+ if (!estimated) {
205
+ return `${from}–${to} з ${!unknownRowCount ? count : `більше ніж ${to}`}`;
206
+ }
207
+ const estimatedLabel = estimated && estimated > to ? `близько ${estimated}` : `більше ніж ${to}`;
208
+ return `${from}–${to} з ${!unknownRowCount ? count : estimatedLabel}`;
209
+ },
209
210
  paginationItemAriaLabel: type => {
210
211
  if (type === 'first') {
211
212
  return 'Перейти на першу сторінку';
package/locales/urPK.js CHANGED
@@ -178,11 +178,12 @@ const urPKGrid = {
178
178
  // count,
179
179
  // estimated
180
180
  // }) => {
181
+ // const unknownRowCount = count == null || count === -1;
181
182
  // if (!estimated) {
182
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
183
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
183
184
  // }
184
185
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
185
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
186
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
186
187
  // },
187
188
  paginationItemAriaLabel: type => {
188
189
  if (type === 'first') {
package/locales/viVN.js CHANGED
@@ -179,11 +179,12 @@ const viVNGrid = {
179
179
  // count,
180
180
  // estimated
181
181
  // }) => {
182
+ // const unknownRowCount = count == null || count === -1;
182
183
  // if (!estimated) {
183
- // return `${from}–${to} of ${count !== -1 ? count : `more than ${to}`}`;
184
+ // return `${from}–${to} of ${!unknownRowCount ? count : `more than ${to}`}`;
184
185
  // }
185
186
  // const estimatedLabel = estimated && estimated > to ? `around ${estimated}` : `more than ${to}`;
186
- // return `${from}–${to} of ${count !== -1 ? count : estimatedLabel}`;
187
+ // return `${from}–${to} of ${!unknownRowCount ? count : estimatedLabel}`;
187
188
  // },
188
189
  paginationItemAriaLabel: type => {
189
190
  if (type === 'first') {
package/material/index.js CHANGED
@@ -87,7 +87,7 @@ const _excluded = ["id", "label", "labelId", "material", "disabled", "slotProps"
87
87
  _excluded22 = ["native"],
88
88
  _excluded23 = ["children", "value", "active"],
89
89
  _excluded24 = ["items", "value", "material"];
90
- /* eslint-disable material-ui/disallow-react-api-in-server-components */
90
+ /* eslint-disable mui/disallow-react-api-in-server-components */
91
91
 
92
92
  const InputAdornment = (0, _styles.styled)(_InputAdornment.default, {
93
93
  slot: 'internal'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-data-grid",
3
- "version": "8.27.3",
3
+ "version": "9.0.0-alpha.1",
4
4
  "author": "MUI Team",
5
5
  "description": "The Community plan edition of the MUI X Data Grid components.",
6
6
  "license": "MIT",
@@ -37,13 +37,13 @@
37
37
  "directory": "packages/x-data-grid"
38
38
  },
39
39
  "dependencies": {
40
- "@babel/runtime": "^7.28.4",
41
- "@mui/utils": "^7.3.5",
40
+ "@babel/runtime": "^7.28.6",
41
+ "@mui/utils": "^7.3.7",
42
42
  "clsx": "^2.1.1",
43
43
  "prop-types": "^15.8.1",
44
44
  "use-sync-external-store": "^1.6.0",
45
- "@mui/x-internals": "8.26.0",
46
- "@mui/x-virtualizer": "0.3.3"
45
+ "@mui/x-virtualizer": "1.0.0-alpha.0",
46
+ "@mui/x-internals": "9.0.0-alpha.0"
47
47
  },
48
48
  "peerDependencies": {
49
49
  "@emotion/react": "^11.9.0",
@@ -65,11 +65,13 @@
65
65
  "node": ">=14.0.0"
66
66
  },
67
67
  "type": "commonjs",
68
- "main": "./index.js",
69
- "types": "./index.d.ts",
70
68
  "exports": {
71
69
  "./package.json": "./package.json",
72
70
  ".": {
71
+ "import": {
72
+ "types": "./esm/index.d.ts",
73
+ "default": "./esm/index.js"
74
+ },
73
75
  "require": {
74
76
  "types": "./index.d.ts",
75
77
  "default": "./index.js"
@@ -80,6 +82,10 @@
80
82
  }
81
83
  },
82
84
  "./*": {
85
+ "import": {
86
+ "types": "./esm/*/index.d.ts",
87
+ "default": "./esm/*/index.js"
88
+ },
83
89
  "require": {
84
90
  "types": "./*/index.d.ts",
85
91
  "default": "./*/index.js"
@@ -90,5 +96,7 @@
90
96
  }
91
97
  },
92
98
  "./esm": null
93
- }
99
+ },
100
+ "main": "./index.js",
101
+ "types": "./index.d.ts"
94
102
  }
package/utils/utils.d.ts CHANGED
@@ -4,8 +4,8 @@ export declare function isObject<TObject = Record<PropertyKey, any>>(value: unkn
4
4
  export declare function localStorageAvailable(): boolean;
5
5
  export declare function escapeRegExp(value: string): string;
6
6
  /**
7
- * Follows the CSS specification behavior for min and max
8
- * If min > max, then the min have priority
7
+ * Follows the CSS specification behavior for min and max.
8
+ * If min > max, then min has priority.
9
9
  */
10
10
  export declare const clamp: (value: number, min: number, max: number) => number;
11
11
  /**
package/utils/utils.js CHANGED
@@ -41,8 +41,8 @@ function escapeRegExp(value) {
41
41
  }
42
42
 
43
43
  /**
44
- * Follows the CSS specification behavior for min and max
45
- * If min > max, then the min have priority
44
+ * Follows the CSS specification behavior for min and max.
45
+ * If min > max, then min has priority.
46
46
  */
47
47
  const clamp = (value, min, max) => Math.max(min, Math.min(max, value));
48
48