summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLi Zhineng <[email protected]>2025-07-17 00:34:02 +0800
committerLi Zhineng <[email protected]>2025-07-17 00:34:02 +0800
commit86e968a9df91dcd55fb42f1a5884f14145cceb2f (patch)
treed2916a4ee176fb31ee9fa2e78c268a55c38d13fe
parent359f267dcb57e869bd08cc50673fb617771d517b (diff)
downloadairmx-86e968a9df91dcd55fb42f1a5884f14145cceb2f.tar.gz
airmx-86e968a9df91dcd55fb42f1a5884f14145cceb2f.zip
esm
-rw-r--r--packages/airmx/jest.config.js14
-rw-r--r--packages/airmx/package.json1
-rw-r--r--packages/airmx/src/airmx.test.ts2
-rw-r--r--packages/airmx/src/airmx.ts6
-rw-r--r--packages/airmx/src/eagle.test.ts4
-rw-r--r--packages/airmx/src/eagle.ts2
-rw-r--r--packages/airmx/src/index.ts6
-rw-r--r--packages/airmx/src/snow.ts2
-rw-r--r--packages/airmx/src/types.ts4
-rw-r--r--packages/airmx/tsconfig.json5
10 files changed, 26 insertions, 20 deletions
diff --git a/packages/airmx/jest.config.js b/packages/airmx/jest.config.js
index 11a87cb..fbde747 100644
--- a/packages/airmx/jest.config.js
+++ b/packages/airmx/jest.config.js
@@ -1,7 +1,11 @@
/** @type {import('ts-jest').JestConfigWithTsJest} **/
-module.exports = {
- testEnvironment: "node",
- transform: {
- "^.+.tsx?$": ["ts-jest",{}],
+const config = {
+ preset: 'ts-jest/presets/default-esm',
+ moduleNameMapper: {
+ '^(\\.{1,2}/.*)\\.js$': '$1',
},
-};
+ testEnvironment: 'node',
+ testMatch: ['<rootDir>/src/**/*.test.ts'],
+}
+
+export default config
diff --git a/packages/airmx/package.json b/packages/airmx/package.json
index 2defcdd..0c7ef03 100644
--- a/packages/airmx/package.json
+++ b/packages/airmx/package.json
@@ -2,6 +2,7 @@
"name": "@lizhineng/airmx",
"version": "0.0.1",
"description": "Control AIRMX Pro 1S with Javascript.",
+ "type": "module",
"main": "dist/index.js",
"scripts": {
"test": "jest"
diff --git a/packages/airmx/src/airmx.test.ts b/packages/airmx/src/airmx.test.ts
index 0a71070..6cfd4b3 100644
--- a/packages/airmx/src/airmx.test.ts
+++ b/packages/airmx/src/airmx.test.ts
@@ -1,4 +1,4 @@
-import { MqttClient } from 'mqtt/*'
+import { MqttClient } from 'mqtt'
import { Airmx, Topic } from './airmx'
describe('topic', () => {
diff --git a/packages/airmx/src/airmx.ts b/packages/airmx/src/airmx.ts
index 947bda4..57dfd9f 100644
--- a/packages/airmx/src/airmx.ts
+++ b/packages/airmx/src/airmx.ts
@@ -1,13 +1,13 @@
import crypto from 'crypto'
import { MqttClient } from 'mqtt'
-import { EagleStatus } from './eagle'
-import { SnowStatus } from './snow'
+import { EagleStatus } from './eagle.js'
+import { SnowStatus } from './snow.js'
import {
Config,
Command,
SnowListener,
EagleListener
-} from './types'
+} from './types.js'
export class Topic {
constructor(
diff --git a/packages/airmx/src/eagle.test.ts b/packages/airmx/src/eagle.test.ts
index 7ffe211..ca33dae 100644
--- a/packages/airmx/src/eagle.test.ts
+++ b/packages/airmx/src/eagle.test.ts
@@ -1,5 +1,5 @@
-import { EagleStatus } from './eagle'
-import { EagleMode, EagleStatusData } from './types'
+import { EagleStatus } from './eagle.js'
+import { EagleMode, EagleStatusData } from './types.js'
test('from parses message to eagle status', () => {
const status = EagleStatus.from(12345, createStubStatusData())
diff --git a/packages/airmx/src/eagle.ts b/packages/airmx/src/eagle.ts
index d36b6bc..b627ab5 100644
--- a/packages/airmx/src/eagle.ts
+++ b/packages/airmx/src/eagle.ts
@@ -1,4 +1,4 @@
-import { Message, EagleStatusData, EagleMode } from './types'
+import { Message, EagleStatusData, EagleMode } from './types.js'
export class EagleStatus {
constructor(
diff --git a/packages/airmx/src/index.ts b/packages/airmx/src/index.ts
index d2056ec..7b6b26d 100644
--- a/packages/airmx/src/index.ts
+++ b/packages/airmx/src/index.ts
@@ -1,3 +1,3 @@
-export * from './airmx'
-export * from './snow'
-export * from './eagle'
+export * from './airmx.js'
+export * from './snow.js'
+export * from './eagle.js'
diff --git a/packages/airmx/src/snow.ts b/packages/airmx/src/snow.ts
index 5984c00..387ec66 100644
--- a/packages/airmx/src/snow.ts
+++ b/packages/airmx/src/snow.ts
@@ -1,4 +1,4 @@
-import { Command, Message, SnowStatusData, BatteryState, SensorState } from './types'
+import { Command, Message, SnowStatusData, BatteryState, SensorState } from './types.js'
export class SnowStatus {
constructor(
diff --git a/packages/airmx/src/types.ts b/packages/airmx/src/types.ts
index c50785a..2ec21a6 100644
--- a/packages/airmx/src/types.ts
+++ b/packages/airmx/src/types.ts
@@ -1,6 +1,6 @@
import type { MqttClient } from 'mqtt'
-import type { EagleStatus } from './eagle'
-import type { SnowStatus } from './snow'
+import type { EagleStatus } from './eagle.js'
+import type { SnowStatus } from './snow.js'
export interface Config {
mqtt: MqttClient
diff --git a/packages/airmx/tsconfig.json b/packages/airmx/tsconfig.json
index 90a783e..7f00647 100644
--- a/packages/airmx/tsconfig.json
+++ b/packages/airmx/tsconfig.json
@@ -1,7 +1,8 @@
{
"compilerOptions": {
- "target": "es2016",
- "module": "commonjs",
+ "target": "es2022",
+ "module": "nodenext",
+ "moduleResolution": "nodenext",
"rootDir": "./src",
"outDir": "dist",
"esModuleInterop": true,