Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[code-infra] Native Node.js ESM #16603

Merged
merged 15 commits into from
Feb 18, 2025
5 changes: 4 additions & 1 deletion packages/x-charts/src/internals/store/useSelector.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/with-selector';
// use-sync-external-store has no exports field defined
// See https://github.com/facebook/react/issues/30698
// eslint-disable-next-line import/extensions
import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/with-selector.js';
import { ChartAnyPluginSignature, ChartState } from '../plugins/models';
import { ChartsSelector } from '../plugins/utils/selectors';
import { ChartStore } from '../plugins/utils/ChartStore';
Expand Down
5 changes: 4 additions & 1 deletion packages/x-data-grid/src/hooks/utils/useGridSelector.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@ import * as React from 'react';
import { RefObject } from '@mui/x-internals/types';
import { fastObjectShallowCompare } from '@mui/x-internals/fastObjectShallowCompare';
import { warnOnce } from '@mui/x-internals/warning';
import { useSyncExternalStore } from 'use-sync-external-store/shim';
// use-sync-external-store has no exports field defined
// See https://github.com/facebook/react/issues/30698
// eslint-disable-next-line import/extensions
import { useSyncExternalStore } from 'use-sync-external-store/shim/index.js';
import type { GridApiCommon } from '../../models/api/gridApiCommon';
import type { OutputSelector } from '../../utils/createSelector';
import { useLazyRef } from './useLazyRef';
Expand Down
5 changes: 4 additions & 1 deletion packages/x-data-grid/src/hooks/utils/useIsSSR.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import { useSyncExternalStore } from 'use-sync-external-store/shim';
// use-sync-external-store has no exports field defined
// See https://github.com/facebook/react/issues/30698
// eslint-disable-next-line import/extensions
import { useSyncExternalStore } from 'use-sync-external-store/shim/index.js';

const emptySubscribe = () => () => {};
const clientSnapshot = () => false;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,50 +1,52 @@
/* eslint-disable class-methods-use-this */
// date-fns-jalali@<3 has no exports field defined
// See https://github.com/date-fns/date-fns/issues/1781
/* eslint-disable import/extensions, class-methods-use-this */
// @ts-nocheck
import addSeconds from 'date-fns-jalali/addSeconds';
import addMinutes from 'date-fns-jalali/addMinutes';
import addHours from 'date-fns-jalali/addHours';
import addDays from 'date-fns-jalali/addDays';
import addWeeks from 'date-fns-jalali/addWeeks';
import addMonths from 'date-fns-jalali/addMonths';
import addYears from 'date-fns-jalali/addYears';
import endOfDay from 'date-fns-jalali/endOfDay';
import endOfWeek from 'date-fns-jalali/endOfWeek';
import endOfYear from 'date-fns-jalali/endOfYear';
import dateFnsFormat from 'date-fns-jalali/format';
import getHours from 'date-fns-jalali/getHours';
import getSeconds from 'date-fns-jalali/getSeconds';
import getMilliseconds from 'date-fns-jalali/getMilliseconds';
import getWeek from 'date-fns-jalali/getWeek';
import getYear from 'date-fns-jalali/getYear';
import getMonth from 'date-fns-jalali/getMonth';
import getDate from 'date-fns-jalali/getDate';
import getDaysInMonth from 'date-fns-jalali/getDaysInMonth';
import getMinutes from 'date-fns-jalali/getMinutes';
import isAfter from 'date-fns-jalali/isAfter';
import isBefore from 'date-fns-jalali/isBefore';
import isEqual from 'date-fns-jalali/isEqual';
import isSameDay from 'date-fns-jalali/isSameDay';
import isSameYear from 'date-fns-jalali/isSameYear';
import isSameMonth from 'date-fns-jalali/isSameMonth';
import isSameHour from 'date-fns-jalali/isSameHour';
import isValid from 'date-fns-jalali/isValid';
import dateFnsParse from 'date-fns-jalali/parse';
import setDate from 'date-fns-jalali/setDate';
import setHours from 'date-fns-jalali/setHours';
import setMinutes from 'date-fns-jalali/setMinutes';
import setMonth from 'date-fns-jalali/setMonth';
import setSeconds from 'date-fns-jalali/setSeconds';
import setMilliseconds from 'date-fns-jalali/setMilliseconds';
import setYear from 'date-fns-jalali/setYear';
import startOfDay from 'date-fns-jalali/startOfDay';
import startOfMonth from 'date-fns-jalali/startOfMonth';
import endOfMonth from 'date-fns-jalali/endOfMonth';
import startOfWeek from 'date-fns-jalali/startOfWeek';
import startOfYear from 'date-fns-jalali/startOfYear';
import isWithinInterval from 'date-fns-jalali/isWithinInterval';
import defaultLocale from 'date-fns-jalali/locale/fa-IR';
import { Locale as DateFnsLocale } from 'date-fns-jalali/locale';
import longFormatters from 'date-fns-jalali/_lib/format/longFormatters';
import addSeconds from 'date-fns-jalali/addSeconds/index.js';
import addMinutes from 'date-fns-jalali/addMinutes/index.js';
import addHours from 'date-fns-jalali/addHours/index.js';
import addDays from 'date-fns-jalali/addDays/index.js';
import addWeeks from 'date-fns-jalali/addWeeks/index.js';
import addMonths from 'date-fns-jalali/addMonths/index.js';
import addYears from 'date-fns-jalali/addYears/index.js';
import endOfDay from 'date-fns-jalali/endOfDay/index.js';
import endOfWeek from 'date-fns-jalali/endOfWeek/index.js';
import endOfYear from 'date-fns-jalali/endOfYear/index.js';
import dateFnsFormat from 'date-fns-jalali/format/index.js';
import getHours from 'date-fns-jalali/getHours/index.js';
import getSeconds from 'date-fns-jalali/getSeconds/index.js';
import getMilliseconds from 'date-fns-jalali/getMilliseconds/index.js';
import getWeek from 'date-fns-jalali/getWeek/index.js';
import getYear from 'date-fns-jalali/getYear/index.js';
import getMonth from 'date-fns-jalali/getMonth/index.js';
import getDate from 'date-fns-jalali/getDate/index.js';
import getDaysInMonth from 'date-fns-jalali/getDaysInMonth/index.js';
import getMinutes from 'date-fns-jalali/getMinutes/index.js';
import isAfter from 'date-fns-jalali/isAfter/index.js';
import isBefore from 'date-fns-jalali/isBefore/index.js';
import isEqual from 'date-fns-jalali/isEqual/index.js';
import isSameDay from 'date-fns-jalali/isSameDay/index.js';
import isSameYear from 'date-fns-jalali/isSameYear/index.js';
import isSameMonth from 'date-fns-jalali/isSameMonth/index.js';
import isSameHour from 'date-fns-jalali/isSameHour/index.js';
import isValid from 'date-fns-jalali/isValid/index.js';
import dateFnsParse from 'date-fns-jalali/parse/index.js';
import setDate from 'date-fns-jalali/setDate/index.js';
import setHours from 'date-fns-jalali/setHours/index.js';
import setMinutes from 'date-fns-jalali/setMinutes/index.js';
import setMonth from 'date-fns-jalali/setMonth/index.js';
import setSeconds from 'date-fns-jalali/setSeconds/index.js';
import setMilliseconds from 'date-fns-jalali/setMilliseconds/index.js';
import setYear from 'date-fns-jalali/setYear/index.js';
import startOfDay from 'date-fns-jalali/startOfDay/index.js';
import startOfMonth from 'date-fns-jalali/startOfMonth/index.js';
import endOfMonth from 'date-fns-jalali/endOfMonth/index.js';
import startOfWeek from 'date-fns-jalali/startOfWeek/index.js';
import startOfYear from 'date-fns-jalali/startOfYear/index.js';
import isWithinInterval from 'date-fns-jalali/isWithinInterval/index.js';
import defaultLocale from 'date-fns-jalali/locale/fa-IR/index.js';
import type { Locale as DateFnsLocale } from 'date-fns-jalali';
import longFormatters from 'date-fns-jalali/_lib/format/longFormatters/index.js';
import { AdapterFormats, AdapterOptions, MuiPickersAdapter } from '../models';
import { AdapterDateFnsBase } from '../AdapterDateFnsBase';

Expand Down
94 changes: 48 additions & 46 deletions packages/x-date-pickers/src/AdapterDateFnsV2/AdapterDateFnsV2.ts
Original file line number Diff line number Diff line change
@@ -1,50 +1,52 @@
/* eslint-disable class-methods-use-this */
// date-fns@<3 has no exports field defined
// See https://github.com/date-fns/date-fns/issues/1781
/* eslint-disable import/extensions, class-methods-use-this */
// @ts-nocheck
import addDays from 'date-fns/addDays';
import addSeconds from 'date-fns/addSeconds';
import addMinutes from 'date-fns/addMinutes';
import addHours from 'date-fns/addHours';
import addWeeks from 'date-fns/addWeeks';
import addMonths from 'date-fns/addMonths';
import addYears from 'date-fns/addYears';
import endOfDay from 'date-fns/endOfDay';
import endOfWeek from 'date-fns/endOfWeek';
import endOfYear from 'date-fns/endOfYear';
import dateFnsFormat from 'date-fns/format';
import getDate from 'date-fns/getDate';
import getDaysInMonth from 'date-fns/getDaysInMonth';
import getHours from 'date-fns/getHours';
import getMinutes from 'date-fns/getMinutes';
import getMonth from 'date-fns/getMonth';
import getSeconds from 'date-fns/getSeconds';
import getMilliseconds from 'date-fns/getMilliseconds';
import getWeek from 'date-fns/getWeek';
import getYear from 'date-fns/getYear';
import isAfter from 'date-fns/isAfter';
import isBefore from 'date-fns/isBefore';
import isEqual from 'date-fns/isEqual';
import isSameDay from 'date-fns/isSameDay';
import isSameYear from 'date-fns/isSameYear';
import isSameMonth from 'date-fns/isSameMonth';
import isSameHour from 'date-fns/isSameHour';
import isValid from 'date-fns/isValid';
import dateFnsParse from 'date-fns/parse';
import setDate from 'date-fns/setDate';
import setHours from 'date-fns/setHours';
import setMinutes from 'date-fns/setMinutes';
import setMonth from 'date-fns/setMonth';
import setSeconds from 'date-fns/setSeconds';
import setMilliseconds from 'date-fns/setMilliseconds';
import setYear from 'date-fns/setYear';
import startOfDay from 'date-fns/startOfDay';
import startOfMonth from 'date-fns/startOfMonth';
import endOfMonth from 'date-fns/endOfMonth';
import startOfWeek from 'date-fns/startOfWeek';
import startOfYear from 'date-fns/startOfYear';
import isWithinInterval from 'date-fns/isWithinInterval';
import defaultLocale from 'date-fns/locale/en-US';
import { Locale as DateFnsLocale } from 'date-fns/locale';
import longFormatters from 'date-fns/_lib/format/longFormatters';
import addDays from 'date-fns/addDays/index.js';
import addSeconds from 'date-fns/addSeconds/index.js';
import addMinutes from 'date-fns/addMinutes/index.js';
import addHours from 'date-fns/addHours/index.js';
import addWeeks from 'date-fns/addWeeks/index.js';
import addMonths from 'date-fns/addMonths/index.js';
import addYears from 'date-fns/addYears/index.js';
import endOfDay from 'date-fns/endOfDay/index.js';
import endOfWeek from 'date-fns/endOfWeek/index.js';
import endOfYear from 'date-fns/endOfYear/index.js';
import dateFnsFormat from 'date-fns/format/index.js';
import getDate from 'date-fns/getDate/index.js';
import getDaysInMonth from 'date-fns/getDaysInMonth/index.js';
import getHours from 'date-fns/getHours/index.js';
import getMinutes from 'date-fns/getMinutes/index.js';
import getMonth from 'date-fns/getMonth/index.js';
import getSeconds from 'date-fns/getSeconds/index.js';
import getMilliseconds from 'date-fns/getMilliseconds/index.js';
import getWeek from 'date-fns/getWeek/index.js';
import getYear from 'date-fns/getYear/index.js';
import isAfter from 'date-fns/isAfter/index.js';
import isBefore from 'date-fns/isBefore/index.js';
import isEqual from 'date-fns/isEqual/index.js';
import isSameDay from 'date-fns/isSameDay/index.js';
import isSameYear from 'date-fns/isSameYear/index.js';
import isSameMonth from 'date-fns/isSameMonth/index.js';
import isSameHour from 'date-fns/isSameHour/index.js';
import isValid from 'date-fns/isValid/index.js';
import dateFnsParse from 'date-fns/parse/index.js';
import setDate from 'date-fns/setDate/index.js';
import setHours from 'date-fns/setHours/index.js';
import setMinutes from 'date-fns/setMinutes/index.js';
import setMonth from 'date-fns/setMonth/index.js';
import setSeconds from 'date-fns/setSeconds/index.js';
import setMilliseconds from 'date-fns/setMilliseconds/index.js';
import setYear from 'date-fns/setYear/index.js';
import startOfDay from 'date-fns/startOfDay/index.js';
import startOfMonth from 'date-fns/startOfMonth/index.js';
import endOfMonth from 'date-fns/endOfMonth/index.js';
import startOfWeek from 'date-fns/startOfWeek/index.js';
import startOfYear from 'date-fns/startOfYear/index.js';
import isWithinInterval from 'date-fns/isWithinInterval/index.js';
import defaultLocale from 'date-fns/locale/en-US/index.js';
import type { Locale as DateFnsLocale } from 'date-fns';
import longFormatters from 'date-fns/_lib/format/longFormatters/index.js';
import { AdapterFormats, AdapterOptions, MuiPickersAdapter } from '../models';
import { AdapterDateFnsBase } from '../AdapterDateFnsBase';

Expand Down
14 changes: 9 additions & 5 deletions packages/x-date-pickers/src/AdapterDayjs/AdapterDayjs.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
/* eslint-disable class-methods-use-this */
import defaultDayjs, { Dayjs } from 'dayjs';
import weekOfYearPlugin from 'dayjs/plugin/weekOfYear';
import customParseFormatPlugin from 'dayjs/plugin/customParseFormat';
import localizedFormatPlugin from 'dayjs/plugin/localizedFormat';
import isBetweenPlugin from 'dayjs/plugin/isBetween';
import advancedFormatPlugin from 'dayjs/plugin/advancedFormat';
// dayjs has no exports field defined
// See https://github.com/iamkun/dayjs/issues/2562
/* eslint-disable import/extensions */
import weekOfYearPlugin from 'dayjs/plugin/weekOfYear.js';
import customParseFormatPlugin from 'dayjs/plugin/customParseFormat.js';
import localizedFormatPlugin from 'dayjs/plugin/localizedFormat.js';
import isBetweenPlugin from 'dayjs/plugin/isBetween.js';
import advancedFormatPlugin from 'dayjs/plugin/advancedFormat.js';
/* eslint-enable import/extensions */
import { warnOnce } from '@mui/x-internals/warning';
import {
FieldFormatTokenMap,
Expand Down
5 changes: 4 additions & 1 deletion packages/x-tree-view/src/internals/hooks/useSelector.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/with-selector';
// use-sync-external-store has no exports field defined
// See https://github.com/facebook/react/issues/30698
// eslint-disable-next-line import/extensions
import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/with-selector.js';
import { TreeViewAnyPluginSignature, TreeViewState } from '../models';
import { TreeViewStore } from '../utils/TreeViewStore';
import { TreeViewSelector } from '../utils/selectors';
Expand Down