{"_id":"@aaronbarnaby/ep-sdk","_rev":"2-1ca41ec30470f72c424aa0d842155aac","name":"@aaronbarnaby/ep-sdk","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@aaronbarnaby/ep-sdk","version":"1.0.0","keywords":["elastic-path","epcc","sdk","typescript","bun"],"author":{"name":"Aaron Barnaby","email":"email@ajbarnaby.com"},"license":"MIT","_id":"@aaronbarnaby/ep-sdk@1.0.0","maintainers":[{"name":"barnabyaaron","email":"barnabyaaron@gmail.com"}],"homepage":"https://github.com/aaronbarnaby/ep-sdk","bugs":{"url":"https://github.com/aaronbarnaby/ep-sdk/issues"},"dist":{"shasum":"aac0e24d0315fbab48ea9c66750f2e101ae9804d","tarball":"https://registry.npmjs.org/@aaronbarnaby/ep-sdk/-/ep-sdk-1.0.0.tgz","fileCount":9,"integrity":"sha512-zj37My4yJLyP6fRvKtVj1beLOavuNpkNPgy96U3n8QC5gvCoYLVfwFfvepC5HeSkpkGx+h5b3Zvq7kxOfQIZBg==","signatures":[{"sig":"MEUCIQDRVn6krV+FVCXy9+EbhW4smB9TuuLTkLU5g33Gu3D7GQIgBxGfPXetZZa8TNY0jN7EDub0GlhKAd0E3Fchr4eXzuQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80547},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"bun":">=1.3.1","node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"981d58f1c2d84f0bc1d986439c79b71b49e70ef3","release":{"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm"],"branches":["main"]},"scripts":{"lint":"eslint src test playground/index.ts tsup.config.ts","test":"bun test","build":"bun run clean && tsup --config tsup.config.ts","clean":"bunx rimraf dist test-results","release":"semantic-release","typecheck":"tsc --noEmit","playground":"bun run ./playground/index.ts","test:watch":"bun test --watch","test-output":"bun run clean:test-results && bun --eval \"import { mkdirSync } from 'node:fs'; mkdirSync('test-results/bun', { recursive: true });\" && bun test --reporter=junit --reporter-outfile ./test-results/bun/junit.xml","playground:dist":"bun run build && bun run ./playground/dist-smoke.ts","release:dry-run":"semantic-release --dry-run","clean:test-results":"bunx rimraf test-results"},"_npmUser":{"name":"barnabyaaron","email":"barnabyaaron@gmail.com"},"repository":{"url":"git+https://github.com/aaronbarnaby/ep-sdk.git","type":"git"},"_npmVersion":"11.12.1","description":"TypeScript SDK for the Elastic Path Commerce Cloud API.","directories":{},"sideEffects":false,"_nodeVersion":"22.22.2","dependencies":{},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.1","devDependencies":{"tsup":"^8.5.1","eslint":"^10.2.0","rimraf":"^6.1.3","globals":"^17.4.0","prettier":"^3.8.1","bun-types":"^1.3.11","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^25.5.2","semantic-release":"^25.0.3","typescript-eslint":"^8.58.1","@semantic-release/npm":"^13.1.5","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0"},"_npmOperationalInternal":{"tmp":"tmp/ep-sdk_1.0.0_1775741652414_0.5379682756559931","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@aaronbarnaby/ep-sdk","description":"TypeScript SDK for the Elastic Path Commerce Cloud API.","version":"1.1.0","type":"module","homepage":"https://github.com/aaronbarnaby/ep-sdk","author":{"name":"Aaron Barnaby","email":"email@ajbarnaby.com"},"license":"MIT","packageManager":"bun@1.3.1","engines":{"node":">=22.0.0","bun":">=1.3.1"},"sideEffects":false,"main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs","default":"./dist/index.js"}},"scripts":{"clean":"bunx rimraf dist test-results","clean:test-results":"bunx rimraf test-results","lint":"eslint src test playground/index.ts tsup.config.ts","typecheck":"tsc --noEmit","build":"bun run clean && tsup --config tsup.config.ts","check":"bun run build && bun run lint && bun run typecheck && bun run test","hooks:install":"git config core.hooksPath .githooks","test":"bun test","test:watch":"bun test --watch","test-output":"bun run clean:test-results && bun --eval \"import { mkdirSync } from 'node:fs'; mkdirSync('test-results/bun', { recursive: true });\" && bun test --reporter=junit --reporter-outfile ./test-results/bun/junit.xml","playground":"bun run ./playground/index.ts","playground:dist":"bun run build && bun run ./playground/dist-smoke.ts"},"repository":{"type":"git","url":"git+https://github.com/aaronbarnaby/ep-sdk.git"},"release":{"branches":["main"],"plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/npm"]},"bugs":{"url":"https://github.com/aaronbarnaby/ep-sdk/issues"},"keywords":["elastic-path","epcc","sdk","typescript","bun"],"devDependencies":{"@eslint/js":"^10.0.1","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/npm":"^13.1.5","@semantic-release/release-notes-generator":"^14.1.0","@types/inflected":"^2.1.3","@types/node":"^25.5.2","bun-types":"^1.3.11","eslint":"^10.2.0","globals":"^17.4.0","prettier":"^3.8.1","rimraf":"^6.1.3","semantic-release":"^25.0.3","tsup":"^8.5.1","typescript":"^6.0.2","typescript-eslint":"^8.58.1"},"dependencies":{"inflected":"^2.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"gitHead":"bc3b553a2667a5d852e19098f07af4043691f152","_id":"@aaronbarnaby/ep-sdk@1.1.0","_nodeVersion":"22.22.2","_npmVersion":"11.12.1","dist":{"integrity":"sha512-9Rl6mWwle4YcZWLQKoh2EAMprErv+17VppzlrHoqbXmyt4jiAiyoTQdgSqTIEL6JX6setKx8LTvsZppciBwZ+Q==","shasum":"cd50540a638da9ea56b2e40f31f66d28383f7163","tarball":"https://registry.npmjs.org/@aaronbarnaby/ep-sdk/-/ep-sdk-1.1.0.tgz","fileCount":9,"unpackedSize":148990,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCLLxIUG3nXWMbqYLDLK88IlbxxZR23eInLnO1PbC3TfAIhAMZRnyxLMPiBjQpIQLnVjvBECCV4dcdEyA6B6B9DEqke"}]},"_npmUser":{"name":"barnabyaaron","email":"barnabyaaron@gmail.com"},"directories":{},"maintainers":[{"name":"barnabyaaron","email":"barnabyaaron@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ep-sdk_1.1.0_1775763677926_0.2918201616018743"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-09T13:34:12.314Z","modified":"2026-04-09T19:41:18.165Z","1.0.0":"2026-04-09T13:34:12.551Z","1.1.0":"2026-04-09T19:41:18.068Z"},"bugs":{"url":"https://github.com/aaronbarnaby/ep-sdk/issues"},"author":{"name":"Aaron Barnaby","email":"email@ajbarnaby.com"},"license":"MIT","homepage":"https://github.com/aaronbarnaby/ep-sdk","keywords":["elastic-path","epcc","sdk","typescript","bun"],"repository":{"type":"git","url":"git+https://github.com/aaronbarnaby/ep-sdk.git"},"description":"TypeScript SDK for the Elastic Path Commerce Cloud API.","maintainers":[{"name":"barnabyaaron","email":"barnabyaaron@gmail.com"}],"readme":"# Elastic Path Commerce Cloud TypeScript SDK\n\n[![npm version](https://img.shields.io/npm/v/@aaronbarnaby/ep-sdk.svg)](https://www.npmjs.com/package/@aaronbarnaby/ep-sdk)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nThis repository is a personal TypeScript-first rewrite to the original [@elasticpath/js-sdk](https://github.com/elasticpath/js-sdk).\n\n> This repository is currently in process and dosn't cover all Elastic Path endpoints at this time.\n>\n> Use at your own risk.\n\n## Requirements\n\n- Bun 1.3+\n- Node.js 22+\n\n## Install\n\n```bash\nbun install\n```\n\n## Available Commands\n\n```bash\nbun run lint\nbun run typecheck\nbun run build\nbun run test\nbun run check\nbun run test-output\nbun run playground\nbun run playground:dist\n```\n\n`bun run check` runs the full pre-push verification sequence: build, lint, typecheck, and test.\n\nTo enforce that locally before every push, install the tracked Git hooks once per clone:\n\n```bash\nbun run hooks:install\n```\n\n## Current API Surface\n\nThe starter entrypoint preserves the legacy `gateway(...)` shape while using a TypeScript-native implementation.\n\n```ts\nimport { gateway } from '@aaronbarnaby/ep-sdk';\n\nconst client = gateway({\n  client_id: process.env.EP_CLIENT_ID,\n  client_secret: process.env.EP_CLIENT_SECRET,\n  headers: {\n    'EP-Beta-Features': 'account-management',\n  },\n});\n\nconst products = await client.send('/products', 'GET');\nconsole.log(products);\n```\n\nSupported foundation pieces today:\n\n- Typed gateway and client factory\n- Shared request factory with auth support\n- Legacy-friendly config keys such as `client_id`, `client_secret`, `custom_fetch`, and `custom_authenticator`\n- Dual ESM and CJS package output\n- bun:test test suite and JUnit output for CI\n- CLI playground for local manual testing\n\n## Playground\n\nThe playground is a Bun CLI script intended for quick local verification outside the test suite.\n\n```bash\nbun run playground\n```\n\nUseful environment variables:\n\n- `EP_CLIENT_ID`\n- `EP_CLIENT_SECRET`\n- `EP_HOST`\n- `EP_BETA_FEATURES`\n\n## Build Output\n\nThe build is handled by `tsup` and emits:\n\n- `dist/index.js` for ESM consumers\n- `dist/index.cjs` for CommonJS consumers\n- `dist/index.d.ts` for type definitions\n\n## Release\n\nPublishing is handled with semantic-release from `main` and publishes to npm as `@aaronbarnaby/ep-sdk`.\n","readmeFilename":"README.md"}