@mui/x-license 9.0.2 → 9.0.4

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/CHANGELOG.md CHANGED
@@ -1,5 +1,228 @@
1
1
  # Changelog
2
2
 
3
+ ## 9.0.4
4
+
5
+ _Apr 28, 2026_
6
+
7
+ We'd like to extend a big thank you to the 4 contributors who made this release possible. Here are some highlights ✨:
8
+
9
+ - Fix Pickers previous (v9.0.3) release ensuring the latest `@mui/x-internals` version usage
10
+
11
+ The following team members contributed to this release:
12
+ @alexfauquette, @JCQuintas, @LukasTy, @mj12albert
13
+
14
+ ### Data Grid
15
+
16
+ #### `@mui/x-data-grid@9.0.4`
17
+
18
+ Internal changes.
19
+
20
+ #### `@mui/x-data-grid-pro@9.0.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
21
+
22
+ Same changes as in `@mui/x-data-grid@9.0.4`.
23
+
24
+ #### `@mui/x-data-grid-premium@9.0.4` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
25
+
26
+ Same changes as in `@mui/x-data-grid-pro@9.0.4`.
27
+
28
+ ### Date and Time Pickers
29
+
30
+ #### `@mui/x-date-pickers@9.0.4`
31
+
32
+ Internal changes.
33
+
34
+ #### `@mui/x-date-pickers-pro@9.0.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
35
+
36
+ Same changes as in `@mui/x-date-pickers@9.0.4`.
37
+
38
+ ### Charts
39
+
40
+ #### `@mui/x-charts@9.0.4`
41
+
42
+ - [charts] Exclude hidden series and items from keyboard navigation (alt approach) (#22221) @JCQuintas
43
+ - [charts] Fix line interaction with `area` and `conectNulls` (#22227) @alexfauquette
44
+ - [charts] Implement the continuous case of `getAxisIndex` for rotation axis (#22230) @alexfauquette
45
+
46
+ #### `@mui/x-charts-pro@9.0.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
47
+
48
+ Same changes as in `@mui/x-charts@9.0.4`.
49
+
50
+ #### `@mui/x-charts-premium@9.0.4` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
51
+
52
+ Same changes as in `@mui/x-charts-pro@9.0.4` plus:
53
+
54
+ - [charts-premium] Add `showMark` and `shape` properties to radial line (#22226) @alexfauquette
55
+
56
+ ### Tree View
57
+
58
+ #### `@mui/x-tree-view@9.0.4`
59
+
60
+ Internal changes.
61
+
62
+ #### `@mui/x-tree-view-pro@9.0.4` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
63
+
64
+ Same changes as in `@mui/x-tree-view@9.0.4`.
65
+
66
+ ### Scheduler
67
+
68
+ #### `@mui/x-scheduler@9.0.4`
69
+
70
+ Internal changes.
71
+
72
+ #### `@mui/x-scheduler-premium@9.0.4` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
73
+
74
+ Same changes as in `@mui/x-scheduler@9.0.4`.
75
+
76
+ ### Codemod
77
+
78
+ #### `@mui/x-codemod@9.0.4`
79
+
80
+ Internal changes.
81
+
82
+ ### Docs
83
+
84
+ - [docs] Update WCAG links (#22234) @mj12albert
85
+
86
+ ### Core
87
+
88
+ - [code-infra] Avoid overriding `renovate` `ignoredPaths` (#22228) @LukasTy
89
+
90
+ ## 9.0.3
91
+
92
+ _Apr 27, 2026_
93
+
94
+ We'd like to extend a big thank you to the 16 contributors who made this release possible. Here are some highlights ✨:
95
+
96
+ - ⌨️ Keyboard support for creating events in the Scheduler
97
+
98
+ Special thanks go out to these community members for their valuable contributions:
99
+ @supunsathsara, @ZAKIURREHMAN
100
+
101
+ The following team members contributed to this release:
102
+ @aemartos, @alexfauquette, @arminmeh, @brijeshb42, @Janpot, @JCQuintas, @LukasTy, @MBilalShafi, @michelengelen, @oliviertassinari, @rita-codes, @romgrk, @sai6855, @siriwatknp
103
+
104
+ ### Data Grid
105
+
106
+ #### `@mui/x-data-grid@9.0.3`
107
+
108
+ - [DataGrid] Fix `:first-child` SSR warning when `MuiDataGrid.styleOverrides` is set (#22081) @siriwatknp
109
+ - [DataGrid] Fix row reordering when filter hides rows (#22096) @siriwatknp
110
+ - [DataGrid] Remove unused `LayoutDataGridLegacy` class (#22009) @romgrk
111
+ - [DataGrid] Remove unused code, clean up grid-related utilities and deprecate `GridPanelHeader` (#22112) @sai6855
112
+ - [DataGrid] Fix columns cutting off after resizing (#22088) @ZAKIURREHMAN
113
+
114
+ #### `@mui/x-data-grid-pro@9.0.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
115
+
116
+ Same changes as in `@mui/x-data-grid@9.0.3`.
117
+
118
+ #### `@mui/x-data-grid-premium@9.0.3` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
119
+
120
+ Same changes as in `@mui/x-data-grid-pro@9.0.3`, plus:
121
+
122
+ - [DataGridPremium] Fix row grouping model updates not being reflected (#22122) @MBilalShafi
123
+
124
+ ### Date and Time Pickers
125
+
126
+ #### `@mui/x-date-pickers@9.0.3`
127
+
128
+ - [pickers] Fix `DateRangeCalendar` drag with `AdapterDayjs` plain-constructor values (#22165) @LukasTy
129
+ - [pickers] Fix disabled state not overriding error border color (#21169) @supunsathsara
130
+ - [pickers] Forward `data-*` and `aria-*` attributes to the root (#22147) @LukasTy
131
+ - [pickers] Support `K` and `k` hour format tokens (#22108) @michelengelen
132
+
133
+ #### `@mui/x-date-pickers-pro@9.0.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
134
+
135
+ Same changes as in `@mui/x-date-pickers@9.0.3`, plus:
136
+
137
+ - [DateRangeCalendar] Ensure date dragging triggers regardless of trigger element (#21868) @michelengelen
138
+
139
+ ### Charts
140
+
141
+ #### `@mui/x-charts@9.0.3`
142
+
143
+ - [charts] Centralize WebGL clear/render cycle (context-based) (#22127) @JCQuintas
144
+ - [charts] Fix closest series detection for line charts (#22168) @alexfauquette
145
+ - [charts] Fix radius grid lines when axis uses point scale (#22134) @alexfauquette
146
+ - [charts] Use cubic solver for berzier intersection (#22152) @alexfauquette
147
+
148
+ #### `@mui/x-charts-pro@9.0.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
149
+
150
+ Same changes as in `@mui/x-charts@9.0.3`, plus:
151
+
152
+ - [charts-pro] Fix wheel zoom clamping with custom `minStart`/`maxEnd` (#22159) @JCQuintas
153
+
154
+ #### `@mui/x-charts-premium@9.0.3` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
155
+
156
+ Same changes as in `@mui/x-charts-pro@9.0.3`, plus:
157
+
158
+ - [charts] Create a `'radialLine'` series type (#22066) @alexfauquette
159
+ - [charts] Plot radial line (#22133) @alexfauquette
160
+ - [charts] Remove `HeatmapWebGLRenderer` indirection (#22169) @JCQuintas
161
+
162
+ ### Tree View
163
+
164
+ #### `@mui/x-tree-view@9.0.2`
165
+
166
+ Internal changes.
167
+
168
+ #### `@mui/x-tree-view-pro@9.0.2` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
169
+
170
+ Same changes as in `@mui/x-tree-view@9.0.2`.
171
+
172
+ ### Scheduler
173
+
174
+ #### Breaking changes
175
+
176
+ - The `views` of `EventTimelinePremium` have been renamed to `presets`, with names that describe the header layout. The props `view`/`defaultView`/`views`/`onViewChange` are now `preset`/`defaultPreset`/`presets`/`onPresetChange`, and the type `EventTimelinePremiumView` is now `EventTimelinePremiumPreset`.
177
+
178
+ | Old | New |
179
+ | :------- | :------------- |
180
+ | `time` | `dayAndHour` |
181
+ | `days` | `day` |
182
+ | `weeks` | `dayAndWeek` |
183
+ | `months` | `monthAndYear` |
184
+ | `years` | `year` |
185
+
186
+ CSS variables (`--time-cell-width`, etc.) and headless store state (`state.view`, `setView`) follow the same rename. The `presets` array is now sorted internally against a canonical zoom order.
187
+
188
+ #### `@mui/x-scheduler@9.0.0-alpha.3`
189
+
190
+ - [scheduler] Allow creating events via keyboard - EventCalendar (#21967) @rita-codes
191
+ - [scheduler] Prefix element IDs with a unique Scheduler instance ID (#22109) @rita-codes
192
+
193
+ #### `@mui/x-scheduler-premium@9.0.0-alpha.3` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
194
+
195
+ Same changes as in `@mui/x-scheduler@9.0.0-alpha.3`.
196
+
197
+ - [scheduler] Allow creating events via keyboard - `EventTimeline` (#22119) @rita-codes
198
+ - [scheduler] Rename `EventTimeline` `views` to ordered presets (#22130) @rita-codes
199
+
200
+ ### Docs
201
+
202
+ - [docs] Cleanup generated llm md files for chat (#22163) @brijeshb42
203
+ - [docs] Fix `highlightScope` description (#22154) @alexfauquette
204
+ - [docs] Remove obsolete v7 deprecation warning for `dayOfWeekFormatter` (#22111) @LukasTy
205
+ - [docs] Use mui.com for broken links checker known targets (#22129) @JCQuintas
206
+ - [docs] Document picker behavior inside MUI `Dialog` and provide recommended solutions (#22144) @michelengelen
207
+ - [docs] Improve v9 license key version mismatch error guidance (#22180) @aemartos
208
+
209
+ ### Core
210
+
211
+ - [code-infra] Reduce concurrency for package build to 5 (#22115) @Janpot
212
+ - [code-infra] Rename `docsx` alias to `docs` (#22155) @brijeshb42
213
+ - [docs-infra] Remove monorepo dependency (#22025) @brijeshb42
214
+ - [docs-infra] Use latest published packages (#22086) @brijeshb42
215
+ - [test] Refactor Pickers tests to async user-event (#22043) @LukasTy
216
+ - [test] Remove redundant explicit `unmount()` calls from Pickers tests (#22118) @LukasTy
217
+
218
+ ### Miscellaneous
219
+
220
+ - [infra] Update `.gitignore` to exclude `.claude/worktrees` (#22145) @michelengelen
221
+ - [infra] Enable branch tracking when creating release branch (#22177) @michelengelen
222
+ - [license] Add MIT license to `x-virtualizer` package (#22164) @michelengelen
223
+ - [website] Fix outdated MUI logos (#22117) @oliviertassinari
224
+ - [internal] Try avoiding store update when virtualization is disabled (#22093) @arminmeh
225
+
3
226
  ## 9.0.2
4
227
 
5
228
  <!-- generated comparing v9.0.1..master -->
@@ -39,7 +39,7 @@ function Watermark(props) {
39
39
  if (licenseStatus.status === _licenseStatus.LICENSE_STATUS.Valid) {
40
40
  return null;
41
41
  }
42
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
42
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
43
43
  style: {
44
44
  position: 'absolute',
45
45
  pointerEvents: 'none',
@@ -52,7 +52,14 @@ function Watermark(props) {
52
52
  letterSpacing: 5,
53
53
  fontSize: 24
54
54
  },
55
- children: getLicenseErrorMessage(licenseStatus.status)
55
+ children: [getLicenseErrorMessage(licenseStatus.status), process.env.NODE_ENV !== 'production' && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
56
+ style: {
57
+ fontSize: 12,
58
+ letterSpacing: 1,
59
+ marginTop: 8
60
+ },
61
+ children: "Open the browser console for details on how to resolve this."
62
+ })]
56
63
  });
57
64
  }
58
65
  const MemoizedWatermark = exports.Watermark = (0, _fastMemo.fastMemo)(Watermark);
@@ -2,7 +2,7 @@ import _formatErrorMessage from "@mui/x-internals/formatErrorMessage";
2
2
  import { fastMemo } from '@mui/x-internals/fastMemo';
3
3
  import { useLicenseVerifier } from "../useLicenseVerifier/index.mjs";
4
4
  import { LICENSE_STATUS } from "../utils/licenseStatus.mjs";
5
- import { jsx as _jsx } from "react/jsx-runtime";
5
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  function getLicenseErrorMessage(licenseStatus) {
7
7
  switch (licenseStatus) {
8
8
  case LICENSE_STATUS.ExpiredAnnualGrace:
@@ -32,7 +32,7 @@ function Watermark(props) {
32
32
  if (licenseStatus.status === LICENSE_STATUS.Valid) {
33
33
  return null;
34
34
  }
35
- return /*#__PURE__*/_jsx("div", {
35
+ return /*#__PURE__*/_jsxs("div", {
36
36
  style: {
37
37
  position: 'absolute',
38
38
  pointerEvents: 'none',
@@ -45,7 +45,14 @@ function Watermark(props) {
45
45
  letterSpacing: 5,
46
46
  fontSize: 24
47
47
  },
48
- children: getLicenseErrorMessage(licenseStatus.status)
48
+ children: [getLicenseErrorMessage(licenseStatus.status), process.env.NODE_ENV !== 'production' && /*#__PURE__*/_jsx("div", {
49
+ style: {
50
+ fontSize: 12,
51
+ letterSpacing: 1,
52
+ marginTop: 8
53
+ },
54
+ children: "Open the browser console for details on how to resolve this."
55
+ })]
49
56
  });
50
57
  }
51
58
  const MemoizedWatermark = fastMemo(Watermark);
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-license v9.0.2
2
+ * @mui/x-license v9.0.4
3
3
  *
4
4
  * @license SEE LICENSE IN LICENSE
5
5
  * This source code is licensed under the SEE LICENSE IN LICENSE license found in the
package/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-license v9.0.2
2
+ * @mui/x-license v9.0.4
3
3
  *
4
4
  * @license SEE LICENSE IN LICENSE
5
5
  * This source code is licensed under the SEE LICENSE IN LICENSE license found in the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-license",
3
- "version": "9.0.2",
3
+ "version": "9.0.4",
4
4
  "author": "MUI Team",
5
5
  "description": "MUI X License verification.",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -21,10 +21,10 @@
21
21
  "directory": "packages/x-license"
22
22
  },
23
23
  "dependencies": {
24
- "@babel/runtime": "^7.28.6",
24
+ "@babel/runtime": "^7.29.2",
25
25
  "@mui/utils": "9.0.0",
26
- "@mui/x-telemetry": "^9.0.2",
27
- "@mui/x-internals": "^9.0.0"
26
+ "@mui/x-internals": "^9.0.4",
27
+ "@mui/x-telemetry": "^9.0.2"
28
28
  },
29
29
  "peerDependencies": {
30
30
  "react": "^17.0.0 || ^18.0.0 || ^19.0.0"
@@ -88,7 +88,7 @@ function useLicenseVerifier(packageInfo) {
88
88
  packageName: fullPackageName
89
89
  });
90
90
  } else if (licenseStatus.status === _licenseStatus.LICENSE_STATUS.NotValidForPackage) {
91
- (0, _licenseErrorMessageUtils.showLicenseKeyVersionMismatchError)();
91
+ (0, _licenseErrorMessageUtils.showLicenseKeyVersionMismatchError)(licenseStatus.meta);
92
92
  } else if (process.env.NODE_ENV !== 'production') {
93
93
  throw new Error('missing status handler');
94
94
  }
@@ -79,7 +79,7 @@ export function useLicenseVerifier(packageInfo) {
79
79
  packageName: fullPackageName
80
80
  });
81
81
  } else if (licenseStatus.status === LICENSE_STATUS.NotValidForPackage) {
82
- showLicenseKeyVersionMismatchError();
82
+ showLicenseKeyVersionMismatchError(licenseStatus.meta);
83
83
  } else if (process.env.NODE_ENV !== 'production') {
84
84
  throw new Error('missing status handler');
85
85
  }
@@ -5,7 +5,11 @@ export declare function showLicenseKeyPlanMismatchError({
5
5
  packageName: string;
6
6
  }): void;
7
7
  export declare function showNotAvailableInInitialProPlanError(): void;
8
- export declare function showLicenseKeyVersionMismatchError(): void;
8
+ export declare function showLicenseKeyVersionMismatchError({
9
+ packageMajorVersion
10
+ }: {
11
+ packageMajorVersion: number;
12
+ }): void;
9
13
  export declare function showMissingLicenseKeyError({
10
14
  plan,
11
15
  packageName
@@ -5,7 +5,11 @@ export declare function showLicenseKeyPlanMismatchError({
5
5
  packageName: string;
6
6
  }): void;
7
7
  export declare function showNotAvailableInInitialProPlanError(): void;
8
- export declare function showLicenseKeyVersionMismatchError(): void;
8
+ export declare function showLicenseKeyVersionMismatchError({
9
+ packageMajorVersion
10
+ }: {
11
+ packageMajorVersion: number;
12
+ }): void;
9
13
  export declare function showMissingLicenseKeyError({
10
14
  plan,
11
15
  packageName
@@ -40,8 +40,11 @@ function showLicenseKeyPlanMismatchError({
40
40
  function showNotAvailableInInitialProPlanError() {
41
41
  showError(['MUI X: Component not included in your license.', '', 'The component you are trying to use is not included in the Pro Plan you purchased.', '', 'Your license is from an old version of the Pro Plan that is only compatible with the `@mui/x-data-grid-pro` and `@mui/x-date-pickers-pro` commercial packages.', '', 'To start using another Pro package, please consider reaching to our sales team to upgrade your license or visit https://mui.com/r/x-get-license to get a new license key.']);
42
42
  }
43
- function showLicenseKeyVersionMismatchError() {
44
- showError(['MUI X: License key version mismatch.', '', 'The license key you are using is not compatible with the version of the MUI X packages installed.', 'This happens when using a license key from a previous major version (e.g. a v8 license with v9 packages).', '', 'To resolve this, you can either get an new license key at https://mui.com/r/x-get-license or from your account profile at https://mui.com/store/account/licenses/, or downgrade to an older MUI X version that matches your current license key.']);
43
+ function showLicenseKeyVersionMismatchError({
44
+ packageMajorVersion
45
+ }) {
46
+ const previousMajorVersion = packageMajorVersion - 1;
47
+ showError(['MUI X: License key version mismatch.', '', `The license key you are using was issued for an older major version of MUI X (e.g. a v${previousMajorVersion} license with v${packageMajorVersion} packages installed).`, 'Each major version uses a different license key format, so the key needs to be regenerated — your existing license is not lost.', '', 'To resolve this, you can either:', `- Generate a new key compatible with v${packageMajorVersion} from your account at https://mui.com/r/x-license-account/ (free for existing customers, the new key inherits your current expiration date).`, `- Or downgrade the MUI X packages to v${previousMajorVersion} to match your current license key.`, `${packageMajorVersion === 9 ? 'More details at https://mui.com/r/x-license-key-v9-upgrade/.' : ''}`]);
45
48
  }
46
49
  function showMissingLicenseKeyError({
47
50
  plan,
@@ -26,8 +26,11 @@ export function showLicenseKeyPlanMismatchError({
26
26
  export function showNotAvailableInInitialProPlanError() {
27
27
  showError(['MUI X: Component not included in your license.', '', 'The component you are trying to use is not included in the Pro Plan you purchased.', '', 'Your license is from an old version of the Pro Plan that is only compatible with the `@mui/x-data-grid-pro` and `@mui/x-date-pickers-pro` commercial packages.', '', 'To start using another Pro package, please consider reaching to our sales team to upgrade your license or visit https://mui.com/r/x-get-license to get a new license key.']);
28
28
  }
29
- export function showLicenseKeyVersionMismatchError() {
30
- showError(['MUI X: License key version mismatch.', '', 'The license key you are using is not compatible with the version of the MUI X packages installed.', 'This happens when using a license key from a previous major version (e.g. a v8 license with v9 packages).', '', 'To resolve this, you can either get an new license key at https://mui.com/r/x-get-license or from your account profile at https://mui.com/store/account/licenses/, or downgrade to an older MUI X version that matches your current license key.']);
29
+ export function showLicenseKeyVersionMismatchError({
30
+ packageMajorVersion
31
+ }) {
32
+ const previousMajorVersion = packageMajorVersion - 1;
33
+ showError(['MUI X: License key version mismatch.', '', `The license key you are using was issued for an older major version of MUI X (e.g. a v${previousMajorVersion} license with v${packageMajorVersion} packages installed).`, 'Each major version uses a different license key format, so the key needs to be regenerated — your existing license is not lost.', '', 'To resolve this, you can either:', `- Generate a new key compatible with v${packageMajorVersion} from your account at https://mui.com/r/x-license-account/ (free for existing customers, the new key inherits your current expiration date).`, `- Or downgrade the MUI X packages to v${previousMajorVersion} to match your current license key.`, `${packageMajorVersion === 9 ? 'More details at https://mui.com/r/x-license-key-v9-upgrade/.' : ''}`]);
31
34
  }
32
35
  export function showMissingLicenseKeyError({
33
36
  plan,
@@ -225,7 +225,10 @@ function verifyLicense({
225
225
  // are not valid for v9 packages.
226
226
  if (packageMajorVersion != null && packageMajorVersion >= 9 && license.licenseModel === 'perpetual' && (0, _licensePlan.isPlanVersionOlderOrEqual)(license.planVersion, MAX_V8_PLAN_VERSION)) {
227
227
  return {
228
- status: _licenseStatus.LICENSE_STATUS.NotValidForPackage
228
+ status: _licenseStatus.LICENSE_STATUS.NotValidForPackage,
229
+ meta: {
230
+ packageMajorVersion
231
+ }
229
232
  };
230
233
  }
231
234
  return {
@@ -277,7 +280,10 @@ function verifyLicense({
277
280
  // Perpetual licenses are exempt as they are already gated by the expiry date check.
278
281
  if (packageMajorVersion != null && packageMajorVersion >= 9 && license.licenseModel !== 'perpetual' && (0, _licensePlan.isPlanVersionOlderOrEqual)(license.planVersion, MAX_V8_PLAN_VERSION)) {
279
282
  return {
280
- status: _licenseStatus.LICENSE_STATUS.NotValidForPackage
283
+ status: _licenseStatus.LICENSE_STATUS.NotValidForPackage,
284
+ meta: {
285
+ packageMajorVersion
286
+ }
281
287
  };
282
288
  }
283
289
  return {
@@ -214,7 +214,10 @@ export function verifyLicense({
214
214
  // are not valid for v9 packages.
215
215
  if (packageMajorVersion != null && packageMajorVersion >= 9 && license.licenseModel === 'perpetual' && isPlanVersionOlderOrEqual(license.planVersion, MAX_V8_PLAN_VERSION)) {
216
216
  return {
217
- status: LICENSE_STATUS.NotValidForPackage
217
+ status: LICENSE_STATUS.NotValidForPackage,
218
+ meta: {
219
+ packageMajorVersion
220
+ }
218
221
  };
219
222
  }
220
223
  return {
@@ -266,7 +269,10 @@ export function verifyLicense({
266
269
  // Perpetual licenses are exempt as they are already gated by the expiry date check.
267
270
  if (packageMajorVersion != null && packageMajorVersion >= 9 && license.licenseModel !== 'perpetual' && isPlanVersionOlderOrEqual(license.planVersion, MAX_V8_PLAN_VERSION)) {
268
271
  return {
269
- status: LICENSE_STATUS.NotValidForPackage
272
+ status: LICENSE_STATUS.NotValidForPackage,
273
+ meta: {
274
+ packageMajorVersion
275
+ }
270
276
  };
271
277
  }
272
278
  return {