@mui/x-tree-view-pro 7.12.0 → 7.13.0

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 (96) hide show
  1. package/{build/CHANGELOG.md → CHANGELOG.md} +151 -2
  2. package/{build/RichTreeViewPro → RichTreeViewPro}/RichTreeViewPro.js +21 -3
  3. package/{build/RichTreeViewPro → RichTreeViewPro}/RichTreeViewPro.plugins.d.ts +3 -3
  4. package/{build/RichTreeViewPro → RichTreeViewPro}/RichTreeViewPro.plugins.js +2 -2
  5. package/{build/index.js → index.js} +1 -1
  6. package/{build/modern/internals → internals}/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.js +5 -4
  7. package/{build/internals → internals}/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.types.d.ts +1 -1
  8. package/{build/internals → internals}/utils/releaseInfo.js +1 -1
  9. package/{build/modern → modern}/RichTreeViewPro/RichTreeViewPro.js +21 -3
  10. package/{build/modern → modern}/RichTreeViewPro/RichTreeViewPro.plugins.js +2 -2
  11. package/{build/modern → modern}/index.js +1 -1
  12. package/{build → modern}/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.js +5 -4
  13. package/{build/modern → modern}/internals/utils/releaseInfo.js +1 -1
  14. package/{build/node → node}/RichTreeViewPro/RichTreeViewPro.js +21 -3
  15. package/{build/node → node}/RichTreeViewPro/RichTreeViewPro.plugins.js +1 -1
  16. package/{build/node → node}/index.js +1 -1
  17. package/{build/node → node}/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.js +5 -4
  18. package/{build/node → node}/internals/utils/releaseInfo.js +1 -1
  19. package/package.json +17 -20
  20. package/build/LICENSE +0 -11
  21. package/build/README.md +0 -26
  22. package/build/package.json +0 -59
  23. package/src/RichTreeViewPro/RichTreeViewPro.plugins.ts +0 -54
  24. package/src/RichTreeViewPro/RichTreeViewPro.test.tsx +0 -20
  25. package/src/RichTreeViewPro/RichTreeViewPro.tsx +0 -383
  26. package/src/RichTreeViewPro/RichTreeViewPro.types.ts +0 -80
  27. package/src/RichTreeViewPro/index.ts +0 -8
  28. package/src/RichTreeViewPro/richTreeViewProClasses.ts +0 -18
  29. package/src/index.ts +0 -17
  30. package/src/internals/index.ts +0 -1
  31. package/src/internals/plugins/useTreeViewItemsReordering/index.ts +0 -7
  32. package/src/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.itemPlugin.ts +0 -155
  33. package/src/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.test.tsx +0 -370
  34. package/src/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.ts +0 -278
  35. package/src/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.types.ts +0 -160
  36. package/src/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.utils.ts +0 -199
  37. package/src/internals/utils/releaseInfo.ts +0 -15
  38. package/src/internals/zero-styled/index.ts +0 -8
  39. package/src/themeAugmentation/components.d.ts +0 -13
  40. package/src/themeAugmentation/index.js +0 -1
  41. package/src/themeAugmentation/index.ts +0 -3
  42. package/src/themeAugmentation/overrides.d.ts +0 -13
  43. package/src/themeAugmentation/props.d.ts +0 -12
  44. package/src/themeAugmentation/themeAugmentation.spec.ts +0 -26
  45. package/tsconfig.build.json +0 -21
  46. package/tsconfig.build.tsbuildinfo +0 -1
  47. package/tsconfig.json +0 -14
  48. /package/{build/RichTreeViewPro → RichTreeViewPro}/RichTreeViewPro.d.ts +0 -0
  49. /package/{build/RichTreeViewPro → RichTreeViewPro}/RichTreeViewPro.types.d.ts +0 -0
  50. /package/{build/RichTreeViewPro → RichTreeViewPro}/RichTreeViewPro.types.js +0 -0
  51. /package/{build/RichTreeViewPro → RichTreeViewPro}/index.d.ts +0 -0
  52. /package/{build/RichTreeViewPro → RichTreeViewPro}/index.js +0 -0
  53. /package/{build/RichTreeViewPro → RichTreeViewPro}/package.json +0 -0
  54. /package/{build/RichTreeViewPro → RichTreeViewPro}/richTreeViewProClasses.d.ts +0 -0
  55. /package/{build/RichTreeViewPro → RichTreeViewPro}/richTreeViewProClasses.js +0 -0
  56. /package/{build/index.d.ts → index.d.ts} +0 -0
  57. /package/{build/internals → internals}/index.d.ts +0 -0
  58. /package/{build/internals → internals}/index.js +0 -0
  59. /package/{build/internals → internals}/package.json +0 -0
  60. /package/{build/internals → internals}/plugins/useTreeViewItemsReordering/index.d.ts +0 -0
  61. /package/{build/internals → internals}/plugins/useTreeViewItemsReordering/index.js +0 -0
  62. /package/{build/internals → internals}/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.d.ts +0 -0
  63. /package/{build/internals → internals}/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.itemPlugin.d.ts +0 -0
  64. /package/{build/internals → internals}/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.itemPlugin.js +0 -0
  65. /package/{build/internals → internals}/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.types.js +0 -0
  66. /package/{build/internals → internals}/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.utils.d.ts +0 -0
  67. /package/{build/internals → internals}/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.utils.js +0 -0
  68. /package/{build/internals → internals}/utils/releaseInfo.d.ts +0 -0
  69. /package/{build/internals → internals}/zero-styled/index.d.ts +0 -0
  70. /package/{build/internals → internals}/zero-styled/index.js +0 -0
  71. /package/{build/modern → modern}/RichTreeViewPro/RichTreeViewPro.types.js +0 -0
  72. /package/{build/modern → modern}/RichTreeViewPro/index.js +0 -0
  73. /package/{build/modern → modern}/RichTreeViewPro/richTreeViewProClasses.js +0 -0
  74. /package/{build/modern → modern}/internals/index.js +0 -0
  75. /package/{build/modern → modern}/internals/plugins/useTreeViewItemsReordering/index.js +0 -0
  76. /package/{build/modern → modern}/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.itemPlugin.js +0 -0
  77. /package/{build/modern → modern}/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.types.js +0 -0
  78. /package/{build/modern → modern}/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.utils.js +0 -0
  79. /package/{build/modern → modern}/internals/zero-styled/index.js +0 -0
  80. /package/{build/modern → modern}/themeAugmentation/index.js +0 -0
  81. /package/{build/node → node}/RichTreeViewPro/RichTreeViewPro.types.js +0 -0
  82. /package/{build/node → node}/RichTreeViewPro/index.js +0 -0
  83. /package/{build/node → node}/RichTreeViewPro/richTreeViewProClasses.js +0 -0
  84. /package/{build/node → node}/internals/index.js +0 -0
  85. /package/{build/node → node}/internals/plugins/useTreeViewItemsReordering/index.js +0 -0
  86. /package/{build/node → node}/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.itemPlugin.js +0 -0
  87. /package/{build/node → node}/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.types.js +0 -0
  88. /package/{build/node → node}/internals/plugins/useTreeViewItemsReordering/useTreeViewItemsReordering.utils.js +0 -0
  89. /package/{build/node → node}/internals/zero-styled/index.js +0 -0
  90. /package/{build/node → node}/themeAugmentation/index.js +0 -0
  91. /package/{build/themeAugmentation → themeAugmentation}/components.d.ts +0 -0
  92. /package/{build/themeAugmentation → themeAugmentation}/index.d.ts +0 -0
  93. /package/{build/themeAugmentation → themeAugmentation}/index.js +0 -0
  94. /package/{build/themeAugmentation → themeAugmentation}/overrides.d.ts +0 -0
  95. /package/{build/themeAugmentation → themeAugmentation}/package.json +0 -0
  96. /package/{build/themeAugmentation → themeAugmentation}/props.d.ts +0 -0
@@ -3,6 +3,155 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 7.13.0
7
+
8
+ _Aug 16, 2024_
9
+
10
+ We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights ✨:
11
+
12
+ - 💫 Allow to [edit the label](https://mui.com/x/react-tree-view/rich-tree-view/editing/) of Tree View's items.
13
+
14
+ <img width="344" src="https://github.com/user-attachments/assets/1a6cf765-2dc8-4906-bd93-139086eed148" alt="Item label editing" />
15
+
16
+ - 🔧 Improve rows accessibility on the Data Grid features "Tree Data" and "Row Grouping". Certain "Row Grouping" accessibility updates will only be applied if experimental feature flag is enabled. See the [documentation](https://mui.com/x/react-data-grid/row-grouping/#accessibility-changes-in-v8) for more information.
17
+ - 🌍 Improve Vietnamese (vi-VN) locale on the Data Grid
18
+ - 🐞 Bugfixes
19
+
20
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
21
+
22
+ ### Data Grid
23
+
24
+ #### `@mui/x-data-grid@7.13.0`
25
+
26
+ - [DataGrid] Fix CSV export for `null` and `undefined` values (#14166) @k-rajat19
27
+ - [DataGrid] Fix error logged during skeleton loading with nested data grid (#14186) @KenanYusuf
28
+ - [DataGrid] Remove needless check in `useGridStateInitialization` (#14181) @k-rajat19
29
+ - [DataGrid] Add recipe for persisting filters in local storage (#14208) @cherniavskii
30
+ - [l10n] Improve Vietnamese (vi-VN) locale (#14216) @hungnd-casso
31
+
32
+ #### `@mui/x-data-grid-pro@7.13.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
33
+
34
+ Same changes as in `@mui/x-data-grid@7.13.0`, plus:
35
+
36
+ - [DataGridPro] Fix Tree Data and Row Grouping rows accessibility (#13623) @arminmeh
37
+
38
+ #### `@mui/x-data-grid-premium@7.13.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
39
+
40
+ Same changes as in `@mui/x-data-grid-pro@7.13.0`.
41
+
42
+ ### Date and Time Pickers
43
+
44
+ #### `@mui/x-date-pickers@7.13.0`
45
+
46
+ - [pickers] Fix date and time merging to retain milliseconds (#14173) @LukasTy
47
+
48
+ #### `@mui/x-date-pickers-pro@7.13.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
49
+
50
+ Same changes as in `@mui/x-date-pickers@7.13.0`.
51
+
52
+ ### Charts
53
+
54
+ #### `@mui/x-charts@7.13.0`
55
+
56
+ - [charts] Add `baseline` property to the `LineChart` `series` (#14153) @JCQuintas
57
+ - [charts] Fix issue where tooltip would disappear on mouse click (#14187) @alexfauquette
58
+ - [charts] Rename `CartesianContextProvider` to `CartesianProvider` (#14102) @JCQuintas
59
+ - [charts] Support axis with the same value for all data points (#14191) @alexfauquette
60
+
61
+ #### `@mui/x-date-charts-pro@7.0.0-alpha.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
62
+
63
+ Same changes as in `@mui/x-charts@7.13.0`.
64
+
65
+ ### Tree View
66
+
67
+ #### `@mui/x-tree-view@7.13.0`
68
+
69
+ - [TreeView] Add label editing feature (#13388) @noraleonte
70
+ - [TreeView] Fix the parameters passed for the `canMoveItemToNewPosition` prop (#14176) @flaviendelangle
71
+
72
+ ### Docs
73
+
74
+ - [docs] Extract dataset in the Line chart docs (#14034) @alexfauquette
75
+ - [docs] Remove redundant encoding in the mock data source server (#14185) @MBilalShafi
76
+ - [docs] Use Netflix financial results to document bar charts (#13991) @alexfauquette
77
+ - [docs] Remove relience of abbreviations (#14226) @oliviertassinari
78
+
79
+ ### Core
80
+
81
+ - [core] Bump monorepo (#14141) @Janpot
82
+ - [core] Fix ESLint issue (#14207) @LukasTy
83
+ - [core] Fix Netlify build cache issue (#14182) @cherniavskii
84
+ - [code-infra] Refactor Netlify `cache-docs` plugin setup (#14105) @LukasTy
85
+ - [internals] Move utils needed for tree view virtualization to shared package (#14202) @flaviendelangle
86
+
87
+ ## 7.12.1
88
+
89
+ _Aug 8, 2024_
90
+
91
+ We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights ✨:
92
+
93
+ - 🎨 Charts get a new component to display color mapping in the legend
94
+ - 🚀 The `@mui/x-charts-pro` is released in alpha version 🧪. This new package introduces two main features:
95
+ - The Heatmap component
96
+ - The zoom interaction on the bar, line, and scatter charts
97
+ - 🌍 Improve Dutch (nl-NL) locale on the Date and Time Pickers
98
+ - 🐞 Bugfixes
99
+
100
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
101
+
102
+ ### Data Grid
103
+
104
+ #### `@mui/x-data-grid@7.12.1`
105
+
106
+ - [DataGrid] Fix `checkboxSelectionVisibleOnly` behavior with server-side pagination (#14083) @MBilalShafi
107
+ - [DataGrid] Fix `columnHeadersContainerRef` being `undefined` before mount (#14051) @samwato
108
+ - [DataGrid] Support Yarn PnP (#14126) @cherniavskii
109
+
110
+ #### `@mui/x-data-grid-pro@7.12.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
111
+
112
+ Same changes as in `@mui/x-data-grid@7.12.1`.
113
+
114
+ #### `@mui/x-data-grid-premium@7.12.1` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
115
+
116
+ Same changes as in `@mui/x-data-grid-pro@7.12.1`.
117
+
118
+ ### Date and Time Pickers
119
+
120
+ #### `@mui/x-date-pickers@7.12.1`
121
+
122
+ - [l10n] Improve Dutch (nlNL) locale (pickers) (#14036) @Robin1896
123
+
124
+ #### `@mui/x-date-pickers-pro@7.12.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
125
+
126
+ Same changes as in `@mui/x-date-pickers@7.12.1`.
127
+
128
+ ### Charts
129
+
130
+ #### `@mui/x-charts@7.12.1`
131
+
132
+ - [charts] Fix charts vendor publish config (#14073) @JCQuintas
133
+ - [charts] Move `plugins` to `PluginProvider` (#14056) @JCQuintas
134
+
135
+ #### `@mui/x-date-charts-pro@7.0.0-alpha.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
136
+
137
+ Same changes as in `@mui/x-charts@7.12.1`, plus:
138
+
139
+ - [charts-pro] Release the pro package in alpha (#13859) @alexfauquette
140
+
141
+ ### Tree View
142
+
143
+ #### `@mui/x-tree-view@7.12.1`
144
+
145
+ ### Docs
146
+
147
+ - [docs] Add a warning to promote the usage of `updateRows` (#14027) @MBilalShafi
148
+ - [docs] Disable ad in `Rich Tree View-Ordering` page (#14123) @oliviertassinari
149
+ - [docs] Redesign Date and Time Pickers overview page (#13241) @noraleonte
150
+
151
+ - [CHANGELOG] Polish details @oliviertassinari
152
+ - [code-infra] Use concurrency 1 in CircleCI (#14110) @JCQuintas
153
+ - [infra] Re-added the removal of `Latest Version` section (#14132) @michelengelen
154
+
6
155
  ## 7.12.0
7
156
 
8
157
  _Aug 1, 2024_
@@ -24,9 +173,9 @@ We'd like to offer a big thanks to the 12 contributors who made this release pos
24
173
 
25
174
  - 🎁 Introduce [item reordering using drag and drop](https://mui.com/x/react-tree-view/rich-tree-view/ordering/) on the `RichTreeViewPro` component
26
175
 
27
- <img width="384" src="https://github.com/user-attachments/assets/78bd83c5-7ce4-4ed7-acf9-be70b2dbce54" alt="Item reordering using drag and drop" />
176
+ <img width="287" src="https://github.com/user-attachments/assets/78bd83c5-7ce4-4ed7-acf9-be70b2dbce54" alt="Item reordering using drag and drop" />
28
177
 
29
- - 📦 Support Common JS bundle out of the box on `@mui/x-charts` by adding vendored D3 dependencies.
178
+ - 📦 Support CommonJS bundle out of the box on `@mui/x-charts` by adding vendored D3 dependencies.
30
179
 
31
180
  - This modifies how the package imports D3.js. It will impact you if you use `d3` packages installed by `@mui/x-charts` and don't have them in your `package.json`. You shouldn't be affected otherwise.
32
181
  - For more context, the initial issue is caused by D3 only exporting ESM.
@@ -170,13 +170,14 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
170
170
  getItemOrderedChildrenIds: PropTypes.func.isRequired,
171
171
  getItemTree: PropTypes.func.isRequired,
172
172
  selectItem: PropTypes.func.isRequired,
173
- setItemExpansion: PropTypes.func.isRequired
173
+ setItemExpansion: PropTypes.func.isRequired,
174
+ updateItemLabel: PropTypes.func.isRequired
174
175
  })
175
176
  }),
176
177
  /**
177
178
  * Used to determine if a given item can move to some new position.
178
179
  * @param {object} params The params describing the item re-ordering.
179
- * @param {string} params.itemId The id of the item to check.
180
+ * @param {string} params.itemId The id of the item that is being moved to a new position.
180
181
  * @param {TreeViewItemReorderPosition} params.oldPosition The old position of the item.
181
182
  * @param {TreeViewItemReorderPosition} params.newPosition The new position of the item.
182
183
  * @returns {boolean} `true` if the item can move to the new position.
@@ -231,7 +232,8 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
231
232
  */
232
233
  experimentalFeatures: PropTypes.shape({
233
234
  indentationAtItemLevel: PropTypes.bool,
234
- itemsReordering: PropTypes.bool
235
+ itemsReordering: PropTypes.bool,
236
+ labelEditing: PropTypes.bool
235
237
  }),
236
238
  /**
237
239
  * Used to determine the id of a given item.
@@ -263,6 +265,16 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
263
265
  * @returns {boolean} `true` if the item should be disabled.
264
266
  */
265
267
  isItemDisabled: PropTypes.func,
268
+ /**
269
+ * Determines if a given item is editable or not.
270
+ * Make sure to also enable the `labelEditing` experimental feature:
271
+ * `<RichTreeViewPro experimentalFeatures={{ labelEditing: true }} />`.
272
+ * By default, the items are not editable.
273
+ * @template R
274
+ * @param {R} item The item to check.
275
+ * @returns {boolean} `true` if the item is editable.
276
+ */
277
+ isItemEditable: PropTypes.oneOfType([PropTypes.func, PropTypes.bool]),
266
278
  /**
267
279
  * Used to determine if a given item can be reordered.
268
280
  * @param {string} itemId The id of the item to check.
@@ -314,6 +326,12 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
314
326
  * @param {string} itemId The id of the focused item.
315
327
  */
316
328
  onItemFocus: PropTypes.func,
329
+ /**
330
+ * Callback fired when the label of an item changes.
331
+ * @param {TreeViewItemId} itemId The id of the item that was edited.
332
+ * @param {string} newLabel The new label of the items.
333
+ */
334
+ onItemLabelChange: PropTypes.func,
317
335
  /**
318
336
  * Callback fired when a tree item is moved in the tree.
319
337
  * @param {object} params The params describing the item re-ordering.
@@ -1,8 +1,8 @@
1
- import { UseTreeViewItemsParameters, UseTreeViewExpansionParameters, UseTreeViewSelectionParameters, UseTreeViewFocusParameters, UseTreeViewIconsParameters, ConvertPluginsIntoSignatures, MergeSignaturesProperty, TreeViewCorePluginParameters } from '@mui/x-tree-view/internals';
1
+ import { UseTreeViewItemsParameters, UseTreeViewExpansionParameters, UseTreeViewSelectionParameters, UseTreeViewFocusParameters, UseTreeViewIconsParameters, ConvertPluginsIntoSignatures, MergeSignaturesProperty, TreeViewCorePluginParameters, UseTreeViewLabelParameters } from '@mui/x-tree-view/internals';
2
2
  import { UseTreeViewItemsReorderingParameters } from '../internals/plugins/useTreeViewItemsReordering';
3
- export declare const RICH_TREE_VIEW_PRO_PLUGINS: readonly [import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewItemsSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewExpansionSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewSelectionSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewFocusSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewKeyboardNavigationSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewIconsSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("../internals/plugins/useTreeViewItemsReordering").UseTreeViewItemsReorderingSignature>];
3
+ export declare const RICH_TREE_VIEW_PRO_PLUGINS: readonly [import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewItemsSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewExpansionSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewSelectionSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewFocusSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewKeyboardNavigationSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewIconsSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("@mui/x-tree-view/internals").UseTreeViewLabelSignature>, import("@mui/x-tree-view/internals").TreeViewPlugin<import("../internals/plugins/useTreeViewItemsReordering").UseTreeViewItemsReorderingSignature>];
4
4
  export type RichTreeViewProPluginSignatures = ConvertPluginsIntoSignatures<typeof RICH_TREE_VIEW_PRO_PLUGINS>;
5
5
  export type RichTreeViewProPluginSlots = MergeSignaturesProperty<RichTreeViewProPluginSignatures, 'slots'>;
6
6
  export type RichTreeViewProPluginSlotProps = MergeSignaturesProperty<RichTreeViewProPluginSignatures, 'slotProps'>;
7
- export interface RichTreeViewProPluginParameters<R extends {}, Multiple extends boolean | undefined> extends TreeViewCorePluginParameters, UseTreeViewItemsParameters<R>, UseTreeViewExpansionParameters, UseTreeViewFocusParameters, UseTreeViewSelectionParameters<Multiple>, UseTreeViewIconsParameters, UseTreeViewItemsReorderingParameters {
7
+ export interface RichTreeViewProPluginParameters<R extends {}, Multiple extends boolean | undefined> extends TreeViewCorePluginParameters, UseTreeViewItemsParameters<R>, UseTreeViewExpansionParameters, UseTreeViewFocusParameters, UseTreeViewSelectionParameters<Multiple>, UseTreeViewIconsParameters, UseTreeViewLabelParameters<R>, UseTreeViewItemsReorderingParameters {
8
8
  }
@@ -1,5 +1,5 @@
1
- import { useTreeViewItems, useTreeViewExpansion, useTreeViewSelection, useTreeViewFocus, useTreeViewKeyboardNavigation, useTreeViewIcons } from '@mui/x-tree-view/internals';
1
+ import { useTreeViewItems, useTreeViewExpansion, useTreeViewSelection, useTreeViewFocus, useTreeViewKeyboardNavigation, useTreeViewIcons, useTreeViewLabel } from '@mui/x-tree-view/internals';
2
2
  import { useTreeViewItemsReordering } from '../internals/plugins/useTreeViewItemsReordering';
3
- export const RICH_TREE_VIEW_PRO_PLUGINS = [useTreeViewItems, useTreeViewExpansion, useTreeViewSelection, useTreeViewFocus, useTreeViewKeyboardNavigation, useTreeViewIcons, useTreeViewItemsReordering];
3
+ export const RICH_TREE_VIEW_PRO_PLUGINS = [useTreeViewItems, useTreeViewExpansion, useTreeViewSelection, useTreeViewFocus, useTreeViewKeyboardNavigation, useTreeViewIcons, useTreeViewLabel, useTreeViewItemsReordering];
4
4
 
5
5
  // We can't infer this type from the plugin, otherwise we would lose the generics.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-tree-view-pro v7.12.0
2
+ * @mui/x-tree-view-pro v7.13.0
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -27,16 +27,17 @@ export const useTreeViewItemsReordering = ({
27
27
  return true;
28
28
  }, [isItemsReorderingEnabled, params.isItemReorderable]);
29
29
  const getDroppingTargetValidActions = React.useCallback(itemId => {
30
- if (!state.itemsReordering) {
30
+ const itemsReordering = state.itemsReordering;
31
+ if (!itemsReordering) {
31
32
  throw new Error('There is no ongoing reordering.');
32
33
  }
33
- if (itemId === state.itemsReordering.draggedItemId) {
34
+ if (itemId === itemsReordering.draggedItemId) {
34
35
  return {};
35
36
  }
36
37
  const canMoveItemToNewPosition = params.canMoveItemToNewPosition;
37
38
  const targetItemMeta = instance.getItemMeta(itemId);
38
39
  const targetItemIndex = instance.getItemIndex(targetItemMeta.id);
39
- const draggedItemMeta = instance.getItemMeta(state.itemsReordering.draggedItemId);
40
+ const draggedItemMeta = instance.getItemMeta(itemsReordering.draggedItemId);
40
41
  const draggedItemIndex = instance.getItemIndex(draggedItemMeta.id);
41
42
  const oldPosition = {
42
43
  parentId: draggedItemMeta.parentId,
@@ -49,7 +50,7 @@ export const useTreeViewItemsReordering = ({
49
50
  isValid = false;
50
51
  } else if (canMoveItemToNewPosition) {
51
52
  isValid = canMoveItemToNewPosition({
52
- itemId,
53
+ itemId: itemsReordering.draggedItemId,
53
54
  oldPosition,
54
55
  newPosition: positionAfterAction
55
56
  });
@@ -70,7 +70,7 @@ export interface UseTreeViewItemsReorderingParameters {
70
70
  /**
71
71
  * Used to determine if a given item can move to some new position.
72
72
  * @param {object} params The params describing the item re-ordering.
73
- * @param {string} params.itemId The id of the item to check.
73
+ * @param {string} params.itemId The id of the item that is being moved to a new position.
74
74
  * @param {TreeViewItemReorderPosition} params.oldPosition The old position of the item.
75
75
  * @param {TreeViewItemReorderPosition} params.newPosition The new position of the item.
76
76
  * @returns {boolean} `true` if the item can move to the new position.
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTcyMjQ2MzIwMDAwMA==";
3
+ const releaseInfo = "MTcyMzc1NTYwMDAwMA==";
4
4
  if (process.env.NODE_ENV !== 'production') {
5
5
  // A simple hack to set the value in the test environment (has no build step).
6
6
  // eslint-disable-next-line no-useless-concat
@@ -170,13 +170,14 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
170
170
  getItemOrderedChildrenIds: PropTypes.func.isRequired,
171
171
  getItemTree: PropTypes.func.isRequired,
172
172
  selectItem: PropTypes.func.isRequired,
173
- setItemExpansion: PropTypes.func.isRequired
173
+ setItemExpansion: PropTypes.func.isRequired,
174
+ updateItemLabel: PropTypes.func.isRequired
174
175
  })
175
176
  }),
176
177
  /**
177
178
  * Used to determine if a given item can move to some new position.
178
179
  * @param {object} params The params describing the item re-ordering.
179
- * @param {string} params.itemId The id of the item to check.
180
+ * @param {string} params.itemId The id of the item that is being moved to a new position.
180
181
  * @param {TreeViewItemReorderPosition} params.oldPosition The old position of the item.
181
182
  * @param {TreeViewItemReorderPosition} params.newPosition The new position of the item.
182
183
  * @returns {boolean} `true` if the item can move to the new position.
@@ -231,7 +232,8 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
231
232
  */
232
233
  experimentalFeatures: PropTypes.shape({
233
234
  indentationAtItemLevel: PropTypes.bool,
234
- itemsReordering: PropTypes.bool
235
+ itemsReordering: PropTypes.bool,
236
+ labelEditing: PropTypes.bool
235
237
  }),
236
238
  /**
237
239
  * Used to determine the id of a given item.
@@ -263,6 +265,16 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
263
265
  * @returns {boolean} `true` if the item should be disabled.
264
266
  */
265
267
  isItemDisabled: PropTypes.func,
268
+ /**
269
+ * Determines if a given item is editable or not.
270
+ * Make sure to also enable the `labelEditing` experimental feature:
271
+ * `<RichTreeViewPro experimentalFeatures={{ labelEditing: true }} />`.
272
+ * By default, the items are not editable.
273
+ * @template R
274
+ * @param {R} item The item to check.
275
+ * @returns {boolean} `true` if the item is editable.
276
+ */
277
+ isItemEditable: PropTypes.oneOfType([PropTypes.func, PropTypes.bool]),
266
278
  /**
267
279
  * Used to determine if a given item can be reordered.
268
280
  * @param {string} itemId The id of the item to check.
@@ -314,6 +326,12 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
314
326
  * @param {string} itemId The id of the focused item.
315
327
  */
316
328
  onItemFocus: PropTypes.func,
329
+ /**
330
+ * Callback fired when the label of an item changes.
331
+ * @param {TreeViewItemId} itemId The id of the item that was edited.
332
+ * @param {string} newLabel The new label of the items.
333
+ */
334
+ onItemLabelChange: PropTypes.func,
317
335
  /**
318
336
  * Callback fired when a tree item is moved in the tree.
319
337
  * @param {object} params The params describing the item re-ordering.
@@ -1,5 +1,5 @@
1
- import { useTreeViewItems, useTreeViewExpansion, useTreeViewSelection, useTreeViewFocus, useTreeViewKeyboardNavigation, useTreeViewIcons } from '@mui/x-tree-view/internals';
1
+ import { useTreeViewItems, useTreeViewExpansion, useTreeViewSelection, useTreeViewFocus, useTreeViewKeyboardNavigation, useTreeViewIcons, useTreeViewLabel } from '@mui/x-tree-view/internals';
2
2
  import { useTreeViewItemsReordering } from '../internals/plugins/useTreeViewItemsReordering';
3
- export const RICH_TREE_VIEW_PRO_PLUGINS = [useTreeViewItems, useTreeViewExpansion, useTreeViewSelection, useTreeViewFocus, useTreeViewKeyboardNavigation, useTreeViewIcons, useTreeViewItemsReordering];
3
+ export const RICH_TREE_VIEW_PRO_PLUGINS = [useTreeViewItems, useTreeViewExpansion, useTreeViewSelection, useTreeViewFocus, useTreeViewKeyboardNavigation, useTreeViewIcons, useTreeViewLabel, useTreeViewItemsReordering];
4
4
 
5
5
  // We can't infer this type from the plugin, otherwise we would lose the generics.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-tree-view-pro v7.12.0
2
+ * @mui/x-tree-view-pro v7.13.0
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -27,16 +27,17 @@ export const useTreeViewItemsReordering = ({
27
27
  return true;
28
28
  }, [isItemsReorderingEnabled, params.isItemReorderable]);
29
29
  const getDroppingTargetValidActions = React.useCallback(itemId => {
30
- if (!state.itemsReordering) {
30
+ const itemsReordering = state.itemsReordering;
31
+ if (!itemsReordering) {
31
32
  throw new Error('There is no ongoing reordering.');
32
33
  }
33
- if (itemId === state.itemsReordering.draggedItemId) {
34
+ if (itemId === itemsReordering.draggedItemId) {
34
35
  return {};
35
36
  }
36
37
  const canMoveItemToNewPosition = params.canMoveItemToNewPosition;
37
38
  const targetItemMeta = instance.getItemMeta(itemId);
38
39
  const targetItemIndex = instance.getItemIndex(targetItemMeta.id);
39
- const draggedItemMeta = instance.getItemMeta(state.itemsReordering.draggedItemId);
40
+ const draggedItemMeta = instance.getItemMeta(itemsReordering.draggedItemId);
40
41
  const draggedItemIndex = instance.getItemIndex(draggedItemMeta.id);
41
42
  const oldPosition = {
42
43
  parentId: draggedItemMeta.parentId,
@@ -49,7 +50,7 @@ export const useTreeViewItemsReordering = ({
49
50
  isValid = false;
50
51
  } else if (canMoveItemToNewPosition) {
51
52
  isValid = canMoveItemToNewPosition({
52
- itemId,
53
+ itemId: itemsReordering.draggedItemId,
53
54
  oldPosition,
54
55
  newPosition: positionAfterAction
55
56
  });
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTcyMjQ2MzIwMDAwMA==";
3
+ const releaseInfo = "MTcyMzc1NTYwMDAwMA==";
4
4
  if (process.env.NODE_ENV !== 'production') {
5
5
  // A simple hack to set the value in the test environment (has no build step).
6
6
  // eslint-disable-next-line no-useless-concat
@@ -179,13 +179,14 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
179
179
  getItemOrderedChildrenIds: _propTypes.default.func.isRequired,
180
180
  getItemTree: _propTypes.default.func.isRequired,
181
181
  selectItem: _propTypes.default.func.isRequired,
182
- setItemExpansion: _propTypes.default.func.isRequired
182
+ setItemExpansion: _propTypes.default.func.isRequired,
183
+ updateItemLabel: _propTypes.default.func.isRequired
183
184
  })
184
185
  }),
185
186
  /**
186
187
  * Used to determine if a given item can move to some new position.
187
188
  * @param {object} params The params describing the item re-ordering.
188
- * @param {string} params.itemId The id of the item to check.
189
+ * @param {string} params.itemId The id of the item that is being moved to a new position.
189
190
  * @param {TreeViewItemReorderPosition} params.oldPosition The old position of the item.
190
191
  * @param {TreeViewItemReorderPosition} params.newPosition The new position of the item.
191
192
  * @returns {boolean} `true` if the item can move to the new position.
@@ -240,7 +241,8 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
240
241
  */
241
242
  experimentalFeatures: _propTypes.default.shape({
242
243
  indentationAtItemLevel: _propTypes.default.bool,
243
- itemsReordering: _propTypes.default.bool
244
+ itemsReordering: _propTypes.default.bool,
245
+ labelEditing: _propTypes.default.bool
244
246
  }),
245
247
  /**
246
248
  * Used to determine the id of a given item.
@@ -272,6 +274,16 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
272
274
  * @returns {boolean} `true` if the item should be disabled.
273
275
  */
274
276
  isItemDisabled: _propTypes.default.func,
277
+ /**
278
+ * Determines if a given item is editable or not.
279
+ * Make sure to also enable the `labelEditing` experimental feature:
280
+ * `<RichTreeViewPro experimentalFeatures={{ labelEditing: true }} />`.
281
+ * By default, the items are not editable.
282
+ * @template R
283
+ * @param {R} item The item to check.
284
+ * @returns {boolean} `true` if the item is editable.
285
+ */
286
+ isItemEditable: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.bool]),
275
287
  /**
276
288
  * Used to determine if a given item can be reordered.
277
289
  * @param {string} itemId The id of the item to check.
@@ -323,6 +335,12 @@ process.env.NODE_ENV !== "production" ? RichTreeViewPro.propTypes = {
323
335
  * @param {string} itemId The id of the focused item.
324
336
  */
325
337
  onItemFocus: _propTypes.default.func,
338
+ /**
339
+ * Callback fired when the label of an item changes.
340
+ * @param {TreeViewItemId} itemId The id of the item that was edited.
341
+ * @param {string} newLabel The new label of the items.
342
+ */
343
+ onItemLabelChange: _propTypes.default.func,
326
344
  /**
327
345
  * Callback fired when a tree item is moved in the tree.
328
346
  * @param {object} params The params describing the item re-ordering.
@@ -6,6 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.RICH_TREE_VIEW_PRO_PLUGINS = void 0;
7
7
  var _internals = require("@mui/x-tree-view/internals");
8
8
  var _useTreeViewItemsReordering = require("../internals/plugins/useTreeViewItemsReordering");
9
- const RICH_TREE_VIEW_PRO_PLUGINS = exports.RICH_TREE_VIEW_PRO_PLUGINS = [_internals.useTreeViewItems, _internals.useTreeViewExpansion, _internals.useTreeViewSelection, _internals.useTreeViewFocus, _internals.useTreeViewKeyboardNavigation, _internals.useTreeViewIcons, _useTreeViewItemsReordering.useTreeViewItemsReordering];
9
+ const RICH_TREE_VIEW_PRO_PLUGINS = exports.RICH_TREE_VIEW_PRO_PLUGINS = [_internals.useTreeViewItems, _internals.useTreeViewExpansion, _internals.useTreeViewSelection, _internals.useTreeViewFocus, _internals.useTreeViewKeyboardNavigation, _internals.useTreeViewIcons, _internals.useTreeViewLabel, _useTreeViewItemsReordering.useTreeViewItemsReordering];
10
10
 
11
11
  // We can't infer this type from the plugin, otherwise we would lose the generics.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-tree-view-pro v7.12.0
2
+ * @mui/x-tree-view-pro v7.13.0
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -36,16 +36,17 @@ const useTreeViewItemsReordering = ({
36
36
  return true;
37
37
  }, [isItemsReorderingEnabled, params.isItemReorderable]);
38
38
  const getDroppingTargetValidActions = React.useCallback(itemId => {
39
- if (!state.itemsReordering) {
39
+ const itemsReordering = state.itemsReordering;
40
+ if (!itemsReordering) {
40
41
  throw new Error('There is no ongoing reordering.');
41
42
  }
42
- if (itemId === state.itemsReordering.draggedItemId) {
43
+ if (itemId === itemsReordering.draggedItemId) {
43
44
  return {};
44
45
  }
45
46
  const canMoveItemToNewPosition = params.canMoveItemToNewPosition;
46
47
  const targetItemMeta = instance.getItemMeta(itemId);
47
48
  const targetItemIndex = instance.getItemIndex(targetItemMeta.id);
48
- const draggedItemMeta = instance.getItemMeta(state.itemsReordering.draggedItemId);
49
+ const draggedItemMeta = instance.getItemMeta(itemsReordering.draggedItemId);
49
50
  const draggedItemIndex = instance.getItemIndex(draggedItemMeta.id);
50
51
  const oldPosition = {
51
52
  parentId: draggedItemMeta.parentId,
@@ -58,7 +59,7 @@ const useTreeViewItemsReordering = ({
58
59
  isValid = false;
59
60
  } else if (canMoveItemToNewPosition) {
60
61
  isValid = canMoveItemToNewPosition({
61
- itemId,
62
+ itemId: itemsReordering.draggedItemId,
62
63
  oldPosition,
63
64
  newPosition: positionAfterAction
64
65
  });
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.getReleaseInfo = void 0;
7
7
  var _utils = require("@mui/utils");
8
8
  const getReleaseInfo = () => {
9
- const releaseInfo = "MTcyMjQ2MzIwMDAwMA==";
9
+ const releaseInfo = "MTcyMzc1NTYwMDAwMA==";
10
10
  if (process.env.NODE_ENV !== 'production') {
11
11
  // A simple hack to set the value in the test environment (has no build step).
12
12
  // eslint-disable-next-line no-useless-concat
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@mui/x-tree-view-pro",
3
- "version": "7.12.0",
3
+ "version": "7.13.0",
4
4
  "description": "The Pro plan edition of the Tree View components (MUI X).",
5
5
  "author": "MUI Team",
6
- "main": "src/index.ts",
6
+ "main": "./node/index.js",
7
7
  "license": "SEE LICENSE IN LICENSE",
8
8
  "bugs": {
9
9
  "url": "https://github.com/mui/mui-x/issues"
@@ -15,7 +15,8 @@
15
15
  },
16
16
  "sideEffects": false,
17
17
  "publishConfig": {
18
- "access": "public"
18
+ "access": "public",
19
+ "directory": "build"
19
20
  },
20
21
  "keywords": [
21
22
  "react",
@@ -39,9 +40,9 @@
39
40
  "clsx": "^2.1.1",
40
41
  "prop-types": "^15.8.1",
41
42
  "react-transition-group": "^4.4.5",
42
- "@mui/x-license": "7.12.0",
43
- "@mui/x-internals": "7.12.0",
44
- "@mui/x-tree-view": "7.12.0"
43
+ "@mui/x-internals": "7.13.0",
44
+ "@mui/x-license": "7.13.0",
45
+ "@mui/x-tree-view": "7.13.0"
45
46
  },
46
47
  "peerDependencies": {
47
48
  "@emotion/react": "^11.9.0",
@@ -50,22 +51,18 @@
50
51
  "react": "^17.0.0 || ^18.0.0",
51
52
  "react-dom": "^17.0.0 || ^18.0.0"
52
53
  },
53
- "devDependencies": {
54
- "@mui/internal-test-utils": "^1.0.5",
55
- "@types/prop-types": "^15.7.12",
56
- "rimraf": "^5.0.9"
54
+ "peerDependenciesMeta": {
55
+ "@emotion/react": {
56
+ "optional": true
57
+ },
58
+ "@emotion/styled": {
59
+ "optional": true
60
+ }
57
61
  },
58
62
  "engines": {
59
63
  "node": ">=14.0.0"
60
64
  },
61
- "scripts": {
62
- "typescript": "tsc -p tsconfig.json",
63
- "build": "pnpm build:modern && pnpm build:node && pnpm build:stable && pnpm build:types && pnpm build:copy-files ",
64
- "build:modern": "node ../../scripts/build.mjs modern",
65
- "build:node": "node ../../scripts/build.mjs node",
66
- "build:stable": "node ../../scripts/build.mjs stable",
67
- "build:copy-files": "node ../../scripts/copyFiles.mjs",
68
- "build:types": "node ../../scripts/buildTypes.mjs",
69
- "prebuild": "rimraf build tsconfig.build.tsbuildinfo"
70
- }
65
+ "private": false,
66
+ "module": "./index.js",
67
+ "types": "./index.d.ts"
71
68
  }
package/build/LICENSE DELETED
@@ -1,11 +0,0 @@
1
- Commercial License
2
-
3
- Copyright (c) 2020 Material-UI SAS
4
-
5
- MUI X Pro (https://mui.com/pricing/) is commercial software. You MUST agree to the
6
- End User License Agreement (EULA: https://mui.com/r/x-license-eula) to be able to
7
- use the software.
8
-
9
- This means that you either need to purchase a commercial license at
10
- https://mui.com/r/x-get-license?scope=pro or be eligible for the Evaluation (trial)
11
- licenses detailed at https://mui.com/r/x-license-trial.
package/build/README.md DELETED
@@ -1,26 +0,0 @@
1
- # MUI X Tree View
2
-
3
- This package is the Pro plan edition of the Tree View components.
4
- It's part of [MUI X](https://mui.com/x/), an open-core extension of MUI Core, with advanced components.
5
-
6
- ## Installation
7
-
8
- Install the package in your project directory with:
9
-
10
- ```bash
11
- npm install @mui/x-tree-view-pro
12
- ```
13
-
14
- This component has the following peer dependencies that you will need to install as well.
15
-
16
- ```json
17
- "peerDependencies": {
18
- "@mui/material": "^5.15.14",
19
- "react": "^17.0.0 || ^18.0.0",
20
- "react-dom": "^17.0.0 || ^18.0.0"
21
- },
22
- ```
23
-
24
- ## Documentation
25
-
26
- Visit [https://mui.com/x/react-tree-view/](https://mui.com/x/react-tree-view/) to view the full documentation.