{"_id":"@academix-admin/header","_rev":"6-42bd55f8ea40a89f78ccd1396faa9d4b","name":"@academix-admin/header","dist-tags":{"latest":"0.2.4"},"versions":{"0.1.0":{"name":"@academix-admin/header","version":"0.1.0","keywords":["react","header","appbar","toolbar","navbar","back-button"],"author":{"name":"Academix"},"license":"MIT","_id":"@academix-admin/header@0.1.0","maintainers":[{"name":"academix-group","email":"academix.tech4u@gmail.com"}],"homepage":"https://github.com/academix-admin/academix-ui/tree/main/packages/header#readme","bugs":{"url":"https://github.com/academix-admin/academix-ui/issues"},"dist":{"shasum":"c98aca5e120feecedb98b1ea8f7ee5ba66e8109a","tarball":"https://registry.npmjs.org/@academix-admin/header/-/header-0.1.0.tgz","fileCount":9,"integrity":"sha512-MVCvXFECR+VIZuwETsMEZGgTk1u3PZEugyMeF6mLKiDIeJTs+7F+H5bqGHtS2/BbhVaihPgFv0OZpZcn8QQVsQ==","signatures":[{"sig":"MEQCIDzI/pBDKCbelIJMWU2UvvqC+rosMK4BMTpNiHDlvStFAiBSaCGc87GjA3HgkyX6+wt90C9T1fmu8CNqp3uPTCnxGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":71564},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"e04c2017c2ee2dfe921553663d52e22358c3c013","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","clean":"rimraf dist","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"academix-group","email":"academix.tech4u@gmail.com"},"repository":{"url":"git+https://github.com/academix-admin/academix-ui.git","type":"git","directory":"packages/header"},"_npmVersion":"11.13.0","description":"A Flutter AppBar-style React header: back button, title and right-side action icons, with self-contained styles and per-part class overrides.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","react":"^18.3.1","rimraf":"^6.0.1","react-dom":"^18.3.1","typescript":"^5.9.3","@types/react":"^19.0.0","@types/react-dom":"^19.0.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/header_0.1.0_1784771060568_0.21077254351798902","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@academix-admin/header","version":"0.2.0","keywords":["react","header","appbar","toolbar","navbar","back-button"],"author":{"name":"Academix"},"license":"MIT","_id":"@academix-admin/header@0.2.0","maintainers":[{"name":"academix-group","email":"academix.tech4u@gmail.com"}],"homepage":"https://github.com/academix-admin/academix-ui/tree/main/packages/header#readme","bugs":{"url":"https://github.com/academix-admin/academix-ui/issues"},"dist":{"shasum":"4bb9c90170598d56afb32566e8b16eacdd756a69","tarball":"https://registry.npmjs.org/@academix-admin/header/-/header-0.2.0.tgz","fileCount":9,"integrity":"sha512-dGVGtSS4W/80xigAHKJ4rw9QQVrOMXyR3QBQFN9y2eiCmGA1s+RNl8rLhoVeBiWputUZzBPJvf3ZhZstvvBgtg==","signatures":[{"sig":"MEUCIQC8Cd1aFCnFjMQCd4P/D/FWw3R0my5M3M+Zz5hYdipv0AIga/1cN89S6CHbTZ9k33jIxPlIoxOGAEiETYAz4RrZ4dE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75448},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"e04c2017c2ee2dfe921553663d52e22358c3c013","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","clean":"rimraf dist","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"academix-group","email":"academix.tech4u@gmail.com"},"repository":{"url":"git+https://github.com/academix-admin/academix-ui.git","type":"git","directory":"packages/header"},"_npmVersion":"11.13.0","description":"A Flutter AppBar-style React header: back button, title and right-side action icons, with self-contained styles and per-part class overrides.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","react":"^18.3.1","rimraf":"^6.0.1","react-dom":"^18.3.1","typescript":"^5.9.3","@types/react":"^19.0.0","@types/react-dom":"^19.0.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/header_0.2.0_1784771577227_0.8640500625643592","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@academix-admin/header","version":"0.2.1","keywords":["react","header","appbar","toolbar","navbar","back-button"],"author":{"name":"Academix"},"license":"MIT","_id":"@academix-admin/header@0.2.1","maintainers":[{"name":"academix-group","email":"academix.tech4u@gmail.com"}],"homepage":"https://github.com/academix-admin/academix-ui/tree/main/packages/header#readme","bugs":{"url":"https://github.com/academix-admin/academix-ui/issues"},"dist":{"shasum":"181f68608893d537905be1eb7c2e7a9a1b44368e","tarball":"https://registry.npmjs.org/@academix-admin/header/-/header-0.2.1.tgz","fileCount":9,"integrity":"sha512-4vLH3ec1fPozIYPLlx/L1eX0OYkPetmq11CWRsVgR+j4YfZaFeUvmk0WRyzEbK9jHBPl1DeXHoK1J3NHnrYT8A==","signatures":[{"sig":"MEUCIQDw06PtuOxUKrze93MdMI4CtX9psmw2KnV/rkkFhdr4CwIgQwMc5r6jZydSHY0+Iufe5wJfamduN5cGOUoEINtlj5Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75960},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"e04c2017c2ee2dfe921553663d52e22358c3c013","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","clean":"rimraf dist","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"academix-group","email":"academix.tech4u@gmail.com"},"repository":{"url":"git+https://github.com/academix-admin/academix-ui.git","type":"git","directory":"packages/header"},"_npmVersion":"11.13.0","description":"A Flutter AppBar-style React header: back button, title and right-side action icons, with self-contained styles and per-part class overrides.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","react":"^18.3.1","rimraf":"^6.0.1","react-dom":"^18.3.1","typescript":"^5.9.3","@types/react":"^19.0.0","@types/react-dom":"^19.0.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/header_0.2.1_1784771986661_0.749159518068647","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@academix-admin/header","version":"0.2.2","keywords":["react","header","appbar","toolbar","navbar","back-button"],"author":{"name":"Academix"},"license":"MIT","_id":"@academix-admin/header@0.2.2","maintainers":[{"name":"academix-group","email":"academix.tech4u@gmail.com"}],"homepage":"https://github.com/academix-admin/academix-ui/tree/main/packages/header#readme","bugs":{"url":"https://github.com/academix-admin/academix-ui/issues"},"dist":{"shasum":"756c9e49bdd1ac2f1769ec0ddf0849eeb5b3e466","tarball":"https://registry.npmjs.org/@academix-admin/header/-/header-0.2.2.tgz","fileCount":9,"integrity":"sha512-Y7kG9+sPuo6IpimDkButSorlxWvIBgimLOl7bT/uIWiy1xm7kwrfCrAcJj6AIyN1Ebae5gEFGbQ0dMxjviBzJw==","signatures":[{"sig":"MEYCIQD1T2NPHAizeu4kLtMyQ7F4TJRUYdIBt4uhbuT4cFnX2wIhANJ3dYmbSvD63ajpWyE7lKUpgsqSk6+l8oAghW5y+n7r","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76924},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"b35abad6a40fd1039e9ace44a4dac6316668e4b7","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","clean":"rimraf dist","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"academix-group","email":"academix.tech4u@gmail.com"},"repository":{"url":"git+https://github.com/academix-admin/academix-ui.git","type":"git","directory":"packages/header"},"_npmVersion":"11.13.0","description":"A Flutter AppBar-style React header: back button, title and right-side action icons, with self-contained styles and per-part class overrides.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","react":"^18.3.1","rimraf":"^6.0.1","react-dom":"^18.3.1","typescript":"^5.9.3","@types/react":"^19.0.0","@types/react-dom":"^19.0.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/header_0.2.2_1784824862621_0.5242123718691227","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@academix-admin/header","version":"0.2.3","keywords":["react","header","appbar","toolbar","navbar","back-button"],"author":{"name":"Academix"},"license":"MIT","_id":"@academix-admin/header@0.2.3","maintainers":[{"name":"academix-group","email":"academix.tech4u@gmail.com"}],"homepage":"https://github.com/academix-admin/academix-ui/tree/main/packages/header#readme","bugs":{"url":"https://github.com/academix-admin/academix-ui/issues"},"dist":{"shasum":"d9f699c7c929c8a3509b8d510239b8304b84e272","tarball":"https://registry.npmjs.org/@academix-admin/header/-/header-0.2.3.tgz","fileCount":9,"integrity":"sha512-g8VT8vng2NIg9XL6hQiyhxdi24S7LkfY4P56Pn9kwmLbSHyah0LtbAjhizO7C5wh77XjAv6dKd05QjXxm13q4Q==","signatures":[{"sig":"MEUCIFIT/hbr6+3MHJvTF7+JEm+zSlskCukXubRGZBMf9NatAiEAii6f7wQG8RVgWqDZUFKg2TEgDvbT1ozqsh/gkMUCyeE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78122},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"gitHead":"8a6dd035fdff3f798c3b86787246746df1a3b007","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","clean":"rimraf dist","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"academix-group","email":"academix.tech4u@gmail.com"},"repository":{"url":"git+https://github.com/academix-admin/academix-ui.git","type":"git","directory":"packages/header"},"_npmVersion":"11.13.0","description":"A Flutter AppBar-style React header: back button, title and right-side action icons, with self-contained styles and per-part class overrides.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","react":"^18.3.1","rimraf":"^6.0.1","react-dom":"^18.3.1","typescript":"^5.9.3","@types/react":"^19.0.0","@types/react-dom":"^19.0.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/header_0.2.3_1784829280009_0.010466437512000937","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@academix-admin/header","version":"0.2.4","description":"A Flutter AppBar-style React header: back button, title and right-side action icons, with self-contained styles and per-part class overrides.","keywords":["react","header","appbar","toolbar","navbar","back-button"],"license":"MIT","author":{"name":"Academix"},"repository":{"type":"git","url":"git+https://github.com/academix-admin/academix-ui.git","directory":"packages/header"},"homepage":"https://github.com/academix-admin/academix-ui/tree/main/packages/header#readme","bugs":{"url":"https://github.com/academix-admin/academix-ui/issues"},"type":"module","sideEffects":false,"main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./package.json":"./package.json"},"scripts":{"build":"tsup","clean":"rimraf dist","dev":"tsup --watch","test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"devDependencies":{"@types/react":"^19.0.0","@types/react-dom":"^19.0.0","react":"^18.3.1","react-dom":"^18.3.1","rimraf":"^6.0.1","tsup":"^8.3.5","typescript":"^5.9.3"},"publishConfig":{"access":"public"},"gitHead":"d5eae13ed2a48c677108324bddbf57d6f8f0463a","_id":"@academix-admin/header@0.2.4","_nodeVersion":"24.15.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-XeT6iVjZKa7h6yTUo5JkV+a4AkKiZrzNb0RwLwgl/bJQf6CgCVIVxEqnQeCZlf6UZkMRAYj1WrfQrCOEAO/QEg==","shasum":"409425dc3511fdf86ef5db3131ab08baa62734d1","tarball":"https://registry.npmjs.org/@academix-admin/header/-/header-0.2.4.tgz","fileCount":9,"unpackedSize":79270,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC1//lr1+i218SUnf7xB2VAWCbWVdqmqpR3L+L8rFzbawIgZ/1N3dlbnnKmWPUEQ3kWDd2obD9lpJf1n2tt05V4TwQ="}]},"_npmUser":{"name":"academix-group","email":"academix.tech4u@gmail.com"},"directories":{},"maintainers":[{"name":"academix-group","email":"academix.tech4u@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/header_0.2.4_1785023518774_0.6601287016357797"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-23T01:44:20.300Z","modified":"2026-07-25T23:51:59.115Z","0.1.0":"2026-07-23T01:44:20.695Z","0.2.0":"2026-07-23T01:52:57.394Z","0.2.1":"2026-07-23T01:59:46.790Z","0.2.2":"2026-07-23T16:41:02.802Z","0.2.3":"2026-07-23T17:54:40.142Z","0.2.4":"2026-07-25T23:51:58.917Z"},"bugs":{"url":"https://github.com/academix-admin/academix-ui/issues"},"author":{"name":"Academix"},"license":"MIT","homepage":"https://github.com/academix-admin/academix-ui/tree/main/packages/header#readme","keywords":["react","header","appbar","toolbar","navbar","back-button"],"repository":{"type":"git","url":"git+https://github.com/academix-admin/academix-ui.git","directory":"packages/header"},"description":"A Flutter AppBar-style React header: back button, title and right-side action icons, with self-contained styles and per-part class overrides.","maintainers":[{"name":"academix-group","email":"academix.tech4u@gmail.com"}],"readme":"# @academix-admin/header\n\nA Flutter `AppBar`-style **header** for React: an optional back button, a title,\nand a row of right-side action icons (with built-in loading spinners). Styles are\n**self-contained** (injected once — no CSS import), theme-aware (light/dark),\nresponsive, and every part accepts a class override.\n\n## Install\n\n```bash\nnpm install @academix-admin/header\nnpm install react react-dom\n```\n\n## Usage (the common case)\n\n```tsx\n'use client';\nimport { Header } from '@academix-admin/header';\n\nexport default function Page() {\n  const [refreshing, setRefreshing] = useState(false);\n\n  return (\n    <Header\n      title=\"Redeem Codes\"\n      theme=\"dark\"\n      onBack={() => history.back()}\n      actions={[\n        { icon: <RefreshIcon />, onClick: refresh, loading: refreshing, ariaLabel: 'Refresh' },\n        { icon: <GiveBackIcon />, onClick: openGiveBacks, ariaLabel: 'Give backs' },\n      ]}\n    />\n  );\n}\n```\n\n## Props\n\n| Prop | Type | Default | Description |\n|------|------|---------|-------------|\n| `title` | `ReactNode` | — | Rendered as an `<h1>`. |\n| `theme` | `'light' \\| 'dark'` | `'light'` | Colour scheme. |\n| `onBack` | `() => void` | — | Back handler; shows the back button when set. |\n| `showBack` | `boolean` | `onBack != null` | Force the back button on/off. |\n| `backIcon` | `ReactNode` | built-in chevron | Override the back icon. |\n| `backAriaLabel` | `string` | `'Go back'` | Back button aria-label. |\n| `actions` | `HeaderAction[]` | `[]` | Right-side icon buttons (see below). |\n| `rightContent` | `ReactNode` | — | Escape hatch rendered after `actions`. |\n| `className` | `string` | — | Root element class (alias for `classNames.root`). |\n| `classNames` | `HeaderClassNames` | `{}` | Per-part overrides: `root`, `content`, `backButton`, `backIcon`, `title`, `action`. |\n| `position` | `'fixed' \\| 'sticky' \\| 'static'` | `'fixed'` | `fixed` offsets by the sidebar width (see tokens). |\n| `style` | `CSSProperties` | — | Inline style on the root. |\n\n**`HeaderAction`**: `{ icon, onClick?, ariaLabel?, disabled?, loading?, className?, key? }`.\nWhile `loading` is true the icon is replaced by a spinner and the button is disabled.\n\n## Theming tokens\n\nThe injected CSS reads these variables (with fallbacks), so it drops into an\nexisting design system with no config:\n\n| Variable | Fallback | Purpose |\n|----------|----------|---------|\n| `--ax-header-sidebar-width` | `--sidebar-width` → `0px` | Left offset when `position=\"fixed\"`. |\n| `--ax-header-text-color` | `--text-color` → `currentColor` | Icon/title colour. |\n| `--ax-header-z` | `10` | z-index. |\n\nBelow 800px / 500px the header spans full width and the title/back-icon scale\ndown (responsive, matching the original design).\n\n## License\n\nMIT © Academix\n","readmeFilename":"README.md"}