Skip to content

Commit e713f03

Browse files
authored
fix: ensure ESM imports include .js file extension (#36)
1 parent 5d0b9ef commit e713f03

File tree

10 files changed

+42
-37
lines changed

10 files changed

+42
-37
lines changed

.changeset/soft-groups-return.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@lynx-js/react-use": patch
3+
---
4+
5+
Ensure ESM imports include `.js` file extension.

src/exposureBased/useExposureForNode.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ import type {
1010
IUseExposureForNodeReturn,
1111
TExposureAttrBag,
1212
UIAppearanceTargetDetail,
13-
} from "./types";
14-
import { createAdmissionGate } from "./utils";
13+
} from "./types.js";
14+
import { createAdmissionGate } from "./utils.js";
1515

1616
// Node-level exposure hook with admission gating
1717
export function useExposureForNode<

src/exposureBased/useExposureForPage.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ import type {
44
IUseExposureForPageReturn,
55
TExposureAttrBag,
66
UIAppearanceTargetDetail,
7-
} from "./types";
8-
import { createMultiAdmissionGate } from "./utils";
7+
} from "./types.js";
8+
import { createMultiAdmissionGate } from "./utils.js";
99

1010
// Page-level exposure hook based on Lynx GlobalEventEmitter with admission gating
1111
export function useExposureForPage<

src/exposureBased/useStayTime.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ import type {
99
IUseExposureForNodeOptions,
1010
IUseStayTimeOptions,
1111
IUseStayTimeReturn,
12-
} from "./types";
13-
import { useExposureForNode } from "./useExposureForNode";
12+
} from "./types.js";
13+
import { useExposureForNode } from "./useExposureForNode.js";
1414

1515
export function useStayTime<
1616
EA extends Record<string, string | number | boolean | undefined>

src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ export {
22
useExposureForNode,
33
useExposureForPage,
44
useStayTime,
5-
} from "./exposureBased";
5+
} from "./exposureBased/index.js";
66
export type {
77
IUseExposureForNodeOptions,
88
IUseExposureForNodeReturn,

src/react-use.ts

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,31 @@
1-
import { default as _createMemo } from 'react-use/esm/factory/createMemo';
2-
import { default as _useBoolean } from 'react-use/esm/useBoolean';
3-
import { default as _useCounter } from 'react-use/esm/useCounter';
4-
import { default as _useDebounce } from 'react-use/esm/useDebounce';
5-
import { default as _useDefault } from 'react-use/esm/useDefault';
6-
import { default as _useEffectOnce } from 'react-use/esm/useEffectOnce';
7-
import { default as _useError } from 'react-use/esm/useError';
8-
import { default as _useLatest } from 'react-use/esm/useLatest';
9-
import { default as _useLifecycles } from 'react-use/esm/useLifecycles';
10-
import { default as _useMap } from 'react-use/esm/useMap';
11-
import { default as _useMountedState } from 'react-use/esm/useMountedState';
12-
import { default as _useNumber } from 'react-use/esm/useNumber';
13-
import { default as _usePrevious } from 'react-use/esm/usePrevious';
14-
import { default as _useQueue } from 'react-use/esm/useQueue';
15-
import { default as _useSet } from 'react-use/esm/useSet';
16-
import { default as _useSetState } from 'react-use/esm/useSetState';
17-
import { default as _useThrottle } from 'react-use/esm/useThrottle';
18-
import { default as _useThrottleFn } from 'react-use/esm/useThrottleFn';
19-
import { default as _useToggle } from 'react-use/esm/useToggle';
20-
import { default as _useUnmount } from 'react-use/esm/useUnmount';
21-
import { default as _useUnmountPromise } from 'react-use/esm/useUnmountPromise';
22-
import { default as _useUpdateEffect } from 'react-use/esm/useUpdateEffect';
23-
import { backgroundOnlyFactory as factory } from './backgroundOnlyFactory';
1+
import { default as _createMemo } from 'react-use/esm/factory/createMemo.js';
2+
import { default as _useBoolean } from 'react-use/esm/useBoolean.js';
3+
import { default as _useCounter } from 'react-use/esm/useCounter.js';
4+
import { default as _useDebounce } from 'react-use/esm/useDebounce.js';
5+
import { default as _useDefault } from 'react-use/esm/useDefault.js';
6+
import { default as _useEffectOnce } from 'react-use/esm/useEffectOnce.js';
7+
import { default as _useError } from 'react-use/esm/useError.js';
8+
import { default as _useLatest } from 'react-use/esm/useLatest.js';
9+
import { default as _useLifecycles } from 'react-use/esm/useLifecycles.js';
10+
import { default as _useMap } from 'react-use/esm/useMap.js';
11+
import { default as _useMountedState } from 'react-use/esm/useMountedState.js';
12+
import { default as _useNumber } from 'react-use/esm/useNumber.js';
13+
import { default as _usePrevious } from 'react-use/esm/usePrevious.js';
14+
import { default as _useQueue } from 'react-use/esm/useQueue.js';
15+
import { default as _useSet } from 'react-use/esm/useSet.js';
16+
import { default as _useSetState } from 'react-use/esm/useSetState.js';
17+
import { default as _useThrottle } from 'react-use/esm/useThrottle.js';
18+
import { default as _useThrottleFn } from 'react-use/esm/useThrottleFn.js';
19+
import { default as _useToggle } from 'react-use/esm/useToggle.js';
20+
import { default as _useUnmount } from 'react-use/esm/useUnmount.js';
21+
import { default as _useUnmountPromise } from 'react-use/esm/useUnmountPromise.js';
22+
import { default as _useUpdateEffect } from 'react-use/esm/useUpdateEffect.js';
23+
import { backgroundOnlyFactory as factory } from './backgroundOnlyFactory.js';
2424
import {
2525
useExposureForNode as _useExposureForNode,
2626
useExposureForPage as _useExposureForPage,
2727
useStayTime as _useStayTime,
28-
} from './exposureBased';
28+
} from './exposureBased/index.js';
2929

3030
export const createMemo = factory(_createMemo);
3131
export const useBoolean = factory(_useBoolean);

src/useAsync.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { type DependencyList, useEffect } from '@lynx-js/react';
2-
import type { FunctionReturningPromise } from './useAsyncFn';
3-
import useAsyncFn from './useAsyncFn';
2+
import type { FunctionReturningPromise } from './useAsyncFn.js';
3+
import useAsyncFn from './useAsyncFn.js';
44

55
export default function useAsync<T extends FunctionReturningPromise>(
66
fn: T,

src/useAsyncFn.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import {
66
useRef,
77
useState,
88
} from '@lynx-js/react';
9-
import { useMountedState } from './react-use';
9+
import { useMountedState } from './react-use.js';
1010

1111
export type PromiseType<P extends Promise<any>> = P extends Promise<infer T> ? T
1212
: never;

src/useDebounce.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// biome-ignore-all lint/suspicious/noExplicitAny: need any here
22

33
import { type DependencyList, useEffect } from '@lynx-js/react';
4-
import useTimeoutFn from './useTimeoutFn';
4+
import useTimeoutFn from './useTimeoutFn.js';
55

66
export type UseDebounceReturn = [() => boolean | null, () => void];
77

src/useTimeout.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import useTimeoutFn from './useTimeoutFn';
2-
import useUpdate from './useUpdate';
1+
import useTimeoutFn from './useTimeoutFn.js';
2+
import useUpdate from './useUpdate.js';
33

44
export type UseTimeoutReturn = [() => boolean | null, () => void, () => void];
55

0 commit comments

Comments
 (0)