Commit graph

7 commits

Author SHA1 Message Date
Aric Camarata
7308f9b8db add opt-in telemetry via @acamarata/telemetry (off by default) 2026-06-30 14:59:43 -04:00
Aric Camarata
6aabd304b0 ci: fix coverage corepack order, eslint parser devDeps, pack-check d.mts
- Move corepack enable before actions/setup-node in coverage job
- Add @typescript-eslint/parser and @typescript-eslint/eslint-plugin as direct devDeps
- Add files pattern and parserOptions.project to eslint.config.mjs
- Change build:ts to cp dist/index.d.ts dist/index.d.mts so pack-check passes
- Run prettier format on src/ files
2026-05-31 08:46:54 -04:00
Aric Camarata
79e2c03505 chore: refresh CI workflow + TypeDoc wiki (E5 conformance) 2026-05-30 18:37:50 -04:00
Aric Camarata
fb95c4a26f feat(e6): portfolio polish — docs, CI, TypeScript standard, wiki
- Trim README to ≤80 lines with wiki link for full docs
- Add CHANGELOG.md with initial entry
- Fix CI: replace pinned pnpm/action-setup with corepack enable
- Add "type": "module" and flat exports map (ADR-015)
- Add ./package.json exports entry
- Add coverage script
- Rename wasm/spa-module.js → wasm/spa-module.cjs to fix CJS/ESM conflict
- Update src/index.ts and tsup.config.ts to reference spa-module.cjs
- Add .github/wiki pages: _Sidebar, _Footer, SECURITY, CODE_OF_CONDUCT
2026-05-28 13:59:50 -04:00
Aric Camarata
f21be803fe refactor: code quality improvements across the board 2026-03-08 11:33:21 -04:00
Aric Camarata
fb0c14e761 v2.0.0: TypeScript rewrite with WASM recompilation
Complete rewrite of the package from plain JavaScript to TypeScript,
compiled to dual CJS/ESM via tsup. The NREL SPA C source is recompiled
to WASM with Emscripten using SINGLE_FILE base64 inlining, eliminating
bundler path-resolution issues.

Changes:
- Rewrite JS wrapper in TypeScript with full type definitions
- Recompile WASM with -O3 -flto, 1MB fixed memory, no filesystem
- Add input validation with descriptive error messages
- Add spaFormatted() for HH:MM:SS time strings
- Add formatTime() utility and init() for eager WASM loading
- Add SPA_ZA, SPA_ZA_INC, SPA_ZA_RTS, SPA_ALL function code exports
- Dual CJS/ESM output via tsup with proper exports map
- Test suite: 68 ESM + 13 CJS assertions
- 100-scenario validation suite across 7 categories
- GitHub Wiki with 8 documentation pages
- CI workflow: Node 20/22/24 matrix, typecheck, pack-check
- NREL attribution in LICENSE and README per their license terms
- Minimum Node.js 20
2026-02-25 10:35:24 -05:00
f10c64c5f1 first commit 2023-03-31 23:26:40 -04:00