Files
brand/package.json
T
zeekayandHanzo Dev a969d21dd8 build: name the declarations per condition; 1.4.5
Every subpath put "types" after "import" and "require", where the resolver
never reaches it — 12 esbuild warnings a build. Types still resolved, but by
adjacency: TypeScript found dist/registry.d.mts next to dist/registry.mjs on its
own, so the exports map was decoration and tsup's output naming was the real
contract.

Named explicitly instead, and per condition, which the dual build has always
supported: import -> .d.mts, require -> .d.ts. All 24 targets verified present,
and a node16 consumer typechecks against brand-id, registry and marks.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-27 22:24:51 -07:00

132 lines
3.0 KiB
JSON

{
"name": "@hanzo/brand",
"version": "1.4.5",
"packageManager": "[email protected]",
"description": "Official brand assets and design system for Hanzo AI",
"main": "dist/index.js",
"module": "dist/index.mjs",
"types": "dist/index.d.ts",
"bin": {
"hanzo-brand": "dist/cli.js"
},
"exports": {
".": {
"import": {
"types": "./dist/index.d.mts",
"default": "./dist/index.mjs"
},
"require": {
"types": "./dist/index.d.ts",
"default": "./dist/index.js"
}
},
"./brand.json": "./brand.json",
"./brand-id": {
"import": {
"types": "./dist/brand-id.d.mts",
"default": "./dist/brand-id.mjs"
},
"require": {
"types": "./dist/brand-id.d.ts",
"default": "./dist/brand-id.js"
}
},
"./registry": {
"import": {
"types": "./dist/registry.d.mts",
"default": "./dist/registry.mjs"
},
"require": {
"types": "./dist/registry.d.ts",
"default": "./dist/registry.js"
}
},
"./marks": {
"import": {
"types": "./dist/marks.d.mts",
"default": "./dist/marks.mjs"
},
"require": {
"types": "./dist/marks.d.ts",
"default": "./dist/marks.js"
}
},
"./hero": {
"import": {
"types": "./dist/hero.d.mts",
"default": "./dist/hero.mjs"
},
"require": {
"types": "./dist/hero.d.ts",
"default": "./dist/hero.js"
}
},
"./loader": {
"import": {
"types": "./dist/loader.d.mts",
"default": "./dist/loader.mjs"
},
"require": {
"types": "./dist/loader.d.ts",
"default": "./dist/loader.js"
}
},
"./assets/*": "./assets/*",
"./styles/*": "./styles/*"
},
"files": [
"dist",
"assets",
"fonts",
"styles",
"brand.json"
],
"scripts": {
"build": "tsup src/index.ts src/loader.ts src/hero.ts src/cli.ts src/brand-id.ts src/registry.ts src/marks.ts --format cjs,esm --dts --clean",
"dev": "tsup src/index.ts src/loader.ts src/hero.ts src/cli.ts src/brand-id.ts src/registry.ts src/marks.ts --format cjs,esm --dts --watch",
"lint": "eslint src",
"type-check": "tsc --noEmit",
"test": "pnpm build && node --test test/*.test.mjs"
},
"keywords": [
"hanzo",
"brand",
"design-system",
"ui",
"assets",
"logo",
"colors",
"typography"
],
"author": "Hanzo AI",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/hanzoai/brand"
},
"homepage": "https://github.com/hanzoai/brand",
"devDependencies": {
"@types/node": "^20.0.0",
"@types/react": "^19.0.0",
"eslint": "^8.0.0",
"react": "^19.0.0",
"tsup": "^8.5.1",
"typescript": "^5.9.3"
},
"peerDependencies": {
"react": ">=18"
},
"peerDependenciesMeta": {
"react": {
"optional": true
}
},
"publishConfig": {
"access": "public",
"registry": "https://registry.npmjs.org/"
},
"dependencies": {
"@hanzo/logo": "^1.0.11"
}
}