{"_id":"@boltz.one/sdk-core","_rev":"3-7fa03821eab1006e867ab9247e4b5517","name":"@boltz.one/sdk-core","dist-tags":{"latest":"0.1.2"},"versions":{"0.1.0":{"name":"@boltz.one/sdk-core","version":"0.1.0","_id":"@boltz.one/sdk-core@0.1.0","maintainers":[{"name":"dknguyen","email":"dknguyen2304@gmail.com"}],"homepage":"https://github.com/boltz-one/core#readme","bugs":{"url":"https://github.com/boltz-one/core/issues"},"dist":{"shasum":"465b8cd63a48c0a7aa71b3d7cf36d42da18bc859","tarball":"https://registry.npmjs.org/@boltz.one/sdk-core/-/sdk-core-0.1.0.tgz","fileCount":53,"integrity":"sha512-LydzFQI98HNpRUK3eTTPuN9+v1HJIj72DaRfgTvG7Tx4ofjREKPyr1KKbuQ8hqFjkIz3YsKcB90wbZ3tXUHxiQ==","signatures":[{"sig":"MEQCIFjh70ACZUEZL6fczeBwGsV0Jf8m+rIJwmuYdJP/k/dNAiBSZASdZCJrrkJcZ5DGoTgns8bgnU9ETpfRwEoQeE0a2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69832},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./ids":{"types":"./dist/ids/index.d.ts","import":"./dist/ids/index.js"},"./time":{"types":"./dist/time/index.d.ts","import":"./dist/time/index.js"},"./errors":{"types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js"},"./events":{"types":"./dist/events/index.d.ts","import":"./dist/events/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","import":"./dist/logger/index.js"},"./result":{"types":"./dist/result/index.d.ts","import":"./dist/result/index.js"},"./api-client":{"types":"./dist/api-client/index.d.ts","import":"./dist/api-client/index.js"},"./iam-policy":{"types":"./dist/iam-policy/index.d.ts","import":"./dist/iam-policy/index.js"},"./logger/node":{"types":"./dist/logger/node/index.d.ts","import":"./dist/logger/node/index.js"},"./logger/structured":{"types":"./dist/logger/structured.d.ts","import":"./dist/logger/structured.js"}},"gitHead":"c4e313018e549263d7c772ff6238f47df7d7de97","scripts":{"dev":"tsc -p tsconfig.json --watch","lint":"eslint . --max-warnings 0","build":"tsc -p tsconfig.json","clean":"rm -rf dist .turbo","check-types":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"dknguyen","email":"dknguyen2304@gmail.com"},"repository":{"url":"git+https://github.com/boltz-one/core.git","type":"git","directory":"packages/sdk-core"},"_npmVersion":"10.9.8","description":"Core SDK (isomorphic): logger, result, errors, ids, time, events, config, iam-policy engine, api-client","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^3.23.8","@boltz.one/contracts":"^0.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","typescript":"5.9.2","@types/node":"^22.15.3","@boltz.one/eslint-config":"*","@boltz.one/typescript-config":"*"},"_npmOperationalInternal":{"tmp":"tmp/sdk-core_0.1.0_1782014415694_0.3082205897376078","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@boltz.one/sdk-core","version":"0.1.1","_id":"@boltz.one/sdk-core@0.1.1","maintainers":[{"name":"dknguyen","email":"dknguyen2304@gmail.com"}],"homepage":"https://github.com/boltz-one/core#readme","bugs":{"url":"https://github.com/boltz-one/core/issues"},"dist":{"shasum":"5826b9d2b84e25b316ebbafa91a930b541c1a922","tarball":"https://registry.npmjs.org/@boltz.one/sdk-core/-/sdk-core-0.1.1.tgz","fileCount":54,"integrity":"sha512-FO7AnAij9I4LMXr8oRobhRDtQEXrQ8+vqsug8TTy5fniFPaNmFL8Kc/jHphZYMCQjCOyd41R1G163nu+IZwR0g==","signatures":[{"sig":"MEUCIQCnJ/CdLCpLS36OSfwMCAOiZ6EhstfxfiBkv+SUg8nZJwIgT2xmx68lkLX04te7EKclv1o+8TOG60W2aVLfY34eQUY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72239},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./ids":{"types":"./dist/ids/index.d.ts","import":"./dist/ids/index.js"},"./time":{"types":"./dist/time/index.d.ts","import":"./dist/time/index.js"},"./errors":{"types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js"},"./events":{"types":"./dist/events/index.d.ts","import":"./dist/events/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","import":"./dist/logger/index.js"},"./result":{"types":"./dist/result/index.d.ts","import":"./dist/result/index.js"},"./api-client":{"types":"./dist/api-client/index.d.ts","import":"./dist/api-client/index.js"},"./iam-policy":{"types":"./dist/iam-policy/index.d.ts","import":"./dist/iam-policy/index.js"},"./logger/node":{"types":"./dist/logger/node/index.d.ts","import":"./dist/logger/node/index.js"},"./logger/structured":{"types":"./dist/logger/structured.d.ts","import":"./dist/logger/structured.js"}},"gitHead":"9ef15b365727e2d0e059e6eee794f755e0f6af54","scripts":{"dev":"tsc -p tsconfig.json --watch","lint":"eslint . --max-warnings 0","build":"tsc -p tsconfig.json","clean":"rm -rf dist .turbo","check-types":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"dknguyen","email":"dknguyen2304@gmail.com"},"repository":{"url":"git+https://github.com/boltz-one/core.git","type":"git","directory":"packages/sdk-core"},"_npmVersion":"10.9.8","description":"Core SDK (isomorphic): logger, result, errors, ids, time, events, config, iam-policy engine, api-client","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^3.23.8","@boltz.one/contracts":"^0.1.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.1","typescript":"5.9.2","@types/node":"^22.15.3","@boltz.one/eslint-config":"*","@boltz.one/typescript-config":"*"},"_npmOperationalInternal":{"tmp":"tmp/sdk-core_0.1.1_1782014751958_0.5754467235635468","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@boltz.one/sdk-core","version":"0.1.2","description":"Core SDK (isomorphic): logger, result, errors, ids, time, events, config, iam-policy engine, api-client","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"development":"./src/index.ts","types":"./dist/index.d.ts","import":"./dist/index.js"},"./logger":{"development":"./src/logger/index.ts","types":"./dist/logger/index.d.ts","import":"./dist/logger/index.js"},"./logger/structured":{"development":"./src/logger/structured.ts","types":"./dist/logger/structured.d.ts","import":"./dist/logger/structured.js"},"./logger/node":{"development":"./src/logger/node/index.ts","types":"./dist/logger/node/index.d.ts","import":"./dist/logger/node/index.js"},"./iam-policy":{"development":"./src/iam-policy/index.ts","types":"./dist/iam-policy/index.d.ts","import":"./dist/iam-policy/index.js"},"./api-client":{"development":"./src/api-client/index.ts","types":"./dist/api-client/index.d.ts","import":"./dist/api-client/index.js"},"./result":{"development":"./src/result/index.ts","types":"./dist/result/index.d.ts","import":"./dist/result/index.js"},"./errors":{"development":"./src/errors/index.ts","types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js"},"./ids":{"development":"./src/ids/index.ts","types":"./dist/ids/index.d.ts","import":"./dist/ids/index.js"},"./time":{"development":"./src/time/index.ts","types":"./dist/time/index.d.ts","import":"./dist/time/index.js"},"./events":{"development":"./src/events/index.ts","types":"./dist/events/index.d.ts","import":"./dist/events/index.js"}},"scripts":{"build":"tsc -p tsconfig.json","dev":"tsc -p tsconfig.json --watch","lint":"eslint . --max-warnings 0","check-types":"tsc -p tsconfig.json --noEmit","clean":"rm -rf dist .turbo"},"dependencies":{"@boltz.one/contracts":"workspace:*","zod":"^3.23.8"},"devDependencies":{"@boltz.one/eslint-config":"*","@boltz.one/typescript-config":"*","@types/node":"^22.15.3","eslint":"^9.39.1","typescript":"5.9.2"},"peerDependencies":{"@opentelemetry/api":"^1.9.0"},"peerDependenciesMeta":{"@opentelemetry/api":{"optional":true}},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"repository":{"type":"git","url":"git+https://github.com/boltz-one/core.git","directory":"packages/sdk-core"},"gitHead":"570bc2cbb1a748c030c8a8a5b87e0765ee713f93","_id":"@boltz.one/sdk-core@0.1.2","bugs":{"url":"https://github.com/boltz-one/core/issues"},"homepage":"https://github.com/boltz-one/core#readme","_nodeVersion":"24.16.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-Wbw4J60qyN7TKI+rSSAr5w3w3gLQ8a/VD2vbU4r1xxWueud4TCFpi1TgjExY5guA5I4Dn87UOtYbkT8gmlE2XQ==","shasum":"13d484861e44b5ef2b8fe608c8fc6551b0b8a812","tarball":"https://registry.npmjs.org/@boltz.one/sdk-core/-/sdk-core-0.1.2.tgz","fileCount":58,"unpackedSize":76521,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGh2iYrB5gdOK3flo9Ied5aMfWVwGHS0MhyYhsLkBvpqAiEAhwVam0rXLTx7gpA0MlE8MQNNJ9kc4ROhYv7UnVwlIDw="}]},"_npmUser":{"name":"dknguyen","email":"dknguyen2304@gmail.com"},"directories":{},"maintainers":[{"name":"dknguyen","email":"dknguyen2304@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk-core_0.1.2_1782794801524_0.8169846272765264"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-21T04:00:15.547Z","modified":"2026-06-30T04:46:41.807Z","0.1.0":"2026-06-21T04:00:15.823Z","0.1.1":"2026-06-21T04:05:52.102Z","0.1.2":"2026-06-30T04:46:41.675Z"},"bugs":{"url":"https://github.com/boltz-one/core/issues"},"homepage":"https://github.com/boltz-one/core#readme","repository":{"type":"git","url":"git+https://github.com/boltz-one/core.git","directory":"packages/sdk-core"},"description":"Core SDK (isomorphic): logger, result, errors, ids, time, events, config, iam-policy engine, api-client","maintainers":[{"name":"dknguyen","email":"dknguyen2304@gmail.com"}],"readme":"# @boltz.one/sdk-core\n\nCore SDK **isomorphic** (chạy cả Node/Bun lẫn browser) của Boltz One: các tiện ích\nnền tảng dùng chung cho cả backend ([`@boltz.one/sdk-server`](https://www.npmjs.com/package/@boltz.one/sdk-server))\nvà frontend ([`@boltz.one/sdk-web`](https://www.npmjs.com/package/@boltz.one/sdk-web)).\n\n## Cài đặt\n\n```sh\nbun add @boltz.one/sdk-core @boltz.one/contracts zod\n```\n\n## Entry points\n\n| Import | Nội dung |\n| --- | --- |\n| `@boltz.one/sdk-core` | Re-export: result, errors, ids, time, events, logger (adapter) |\n| `@boltz.one/sdk-core/result` | `Result`/`Ok`/`Err`, `ok`/`err`, `map`/`mapErr`, `unwrap`/`unwrapOr`, `isOk`/`isErr` |\n| `@boltz.one/sdk-core/errors` | `DomainError`, `Errors` |\n| `@boltz.one/sdk-core/ids` | `ulid`, `uuid`, `shortId`, `fnv1a` |\n| `@boltz.one/sdk-core/time` | `now`, `isoNow`, `addSeconds/Minutes/Hours`, `diffSeconds`, `isExpired` |\n| `@boltz.one/sdk-core/events` | `EventEmitter` (event bus in-process) |\n| `@boltz.one/sdk-core/logger` | Logger pino-style (`createLogger`, `defaultLogger`) — **đọc `process.env`, dùng phía Node** |\n| `@boltz.one/sdk-core/logger/structured` | Logger sink-based (`createLogger`, `createConsoleSink`) — **browser-safe** |\n| `@boltz.one/sdk-core/logger/node` | Sink ghi file NDJSON (Node-only) |\n| `@boltz.one/sdk-core/iam-policy` | Policy engine: parser, compiler, evaluator, simulator, validators |\n| `@boltz.one/sdk-core/api-client` | HTTP client (`ApiClient`) — problem-details, retry, idempotency, bearer token |\n\n## Sử dụng\n\n```ts\nimport { ok, err, isOk } from '@boltz.one/sdk-core/result';\nimport { ulid } from '@boltz.one/sdk-core/ids';\n\nconst r = ok({ id: ulid() });\nif (isOk(r)) console.log(r.value.id);\n```\n\nLogger — chọn entry theo môi trường:\n\n```ts\n// Browser / isomorphic\nimport { createLogger, createConsoleSink } from '@boltz.one/sdk-core/logger/structured';\nconst log = createLogger({ service: 'web', sinks: [createConsoleSink()] });\n\n// Node (pino-style, đọc process.env)\nimport { defaultLogger } from '@boltz.one/sdk-core/logger';\n```\n\nPolicy engine:\n\n```ts\nimport { PolicyCompiler, PolicyEvaluator } from '@boltz.one/sdk-core/iam-policy';\n```\n\n> **Browser-safe**: entry chính và đa số subpath không import API Node. Các phần\n> Node-only được tách riêng (`./logger`, `./logger/node`) nên không lọt vào bundle browser.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}