mirror of
https://github.com/meshtastic/web.git
synced 2026-07-31 06:56:28 -04:00
- Drop bogus `dts.isolatedDeclarations` field from SDK (not a real tsdown option; tsdown was silently ignoring it). - Make every package explicit about the perf-relevant flags rather than relying on defaults that drift between tsdown versions: target=esnext (no syntax downleveling), sourcemap=false, minify=false, treeshake=true, report=false, splitting=false. - Modest wall-clock wins: SDK 1020→752ms, transports ~720→~600ms. `isolatedDeclarations: true` in tsconfig would unlock the bigger oxc-dts fast path but the codebase isn't ID-clean yet — left as future work.
74 lines
2.3 KiB
JSON
74 lines
2.3 KiB
JSON
{
|
|
"name": "@meshtastic/sdk",
|
|
"version": "1.0.0",
|
|
"description": "Domain-driven SDK for Meshtastic devices. Feature slices (device/chat/nodes/channels/config/telemetry/position/traceroute/files) with signals-backed reactive state. Replaces @meshtastic/core.",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/mod.d.ts",
|
|
"default": "./mod.ts"
|
|
},
|
|
"./transport": {
|
|
"types": "./dist/transport.d.ts",
|
|
"default": "./src/core/transport/index.ts"
|
|
},
|
|
"./protobuf": {
|
|
"types": "./dist/protobuf.d.ts",
|
|
"default": "./src/core/protobuf/index.ts"
|
|
},
|
|
"./testing": {
|
|
"types": "./dist/testing.d.ts",
|
|
"default": "./src/core/testing/index.ts"
|
|
}
|
|
},
|
|
"type": "module",
|
|
"main": "./dist/mod.js",
|
|
"module": "./dist/mod.js",
|
|
"types": "./dist/mod.d.ts",
|
|
"license": "GPL-3.0-only",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/meshtastic/web.git",
|
|
"directory": "packages/sdk"
|
|
},
|
|
"tsdown": {
|
|
"entry": {
|
|
"mod": "mod.ts",
|
|
"transport": "src/core/transport/index.ts",
|
|
"protobuf": "src/core/protobuf/index.ts",
|
|
"testing": "src/core/testing/index.ts"
|
|
},
|
|
"platform": "browser",
|
|
"target": "esnext",
|
|
"dts": true,
|
|
"format": ["esm"],
|
|
"splitting": false,
|
|
"sourcemap": false,
|
|
"minify": false,
|
|
"treeshake": true,
|
|
"report": false,
|
|
"clean": true
|
|
},
|
|
"jsrInclude": ["mod.ts", "src", "README.md", "LICENSE"],
|
|
"jsrExclude": ["src/**/*.test.ts", "tests"],
|
|
"files": ["package.json", "README.md", "LICENSE", "dist"],
|
|
"scripts": {
|
|
"preinstall": "npx only-allow pnpm",
|
|
"prepack": "cp ../../LICENSE ./LICENSE",
|
|
"clean": "rm -rf dist LICENSE",
|
|
"build:npm": "tsdown && node ./scripts/rename-dts.mjs",
|
|
"publish:npm": "pnpm clean && pnpm build:npm && pnpm publish --access public --no-git-checks",
|
|
"prepare:jsr": "rm -rf dist && pnpm dlx pkg-to-jsr",
|
|
"publish:jsr": "pnpm run prepack && pnpm prepare:jsr && deno publish --allow-dirty --no-check",
|
|
"test": "vitest run"
|
|
},
|
|
"dependencies": {
|
|
"@bufbuild/protobuf": "^2.9.0",
|
|
"@meshtastic/protobufs": "jsr:^2.7.18",
|
|
"@preact/signals-core": "^1.8.0",
|
|
"better-result": "^1.0.0",
|
|
"crc": "npm:crc@^4.3.2",
|
|
"ste-simple-events": "^3.0.11",
|
|
"tslog": "^4.9.3"
|
|
}
|
|
}
|