{"_id":"@anupamtest/routes-menu-svelte","_rev":"15-7d209f472c39fd8a1691669f70bc8c8b","time":{"created":"2023-11-30T04:30:34.427Z","1.0.1":"2023-11-29T11:46:47.605Z","modified":"2023-11-30T05:08:10.407Z","1.0.2":"2023-11-29T11:51:46.293Z","1.0.3":"2023-11-29T12:06:55.169Z","1.0.4":"2023-11-29T12:15:29.639Z","1.0.5":"2023-11-29T12:25:23.504Z","1.0.6":"2023-11-29T12:44:47.029Z","1.0.7":"2023-11-29T13:00:33.384Z","1.0.8":"2023-11-29T13:22:22.438Z","1.0.9":"2023-11-29T13:45:12.238Z","1.0.10":"2023-11-30T04:26:19.449Z","1.0.11":"2023-11-30T04:28:57.803Z","1.0.12":"2023-11-30T04:30:34.763Z","1.0.13":"2023-11-30T04:51:42.818Z","1.0.14":"2023-11-30T05:08:10.227Z"},"name":"@anupamtest/routes-menu-svelte","dist-tags":{"latest":"1.0.14"},"versions":{"1.0.12":{"name":"@anupamtest/routes-menu-svelte","version":"1.0.12","license":"MIT","scripts":{"dev":"vite dev","build":"vite build && npm run package","preview":"vite preview","package":"svelte-kit sync && svelte-package && publint","prepublishOnly":"npm version patch && npm run package","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","lint":"prettier --check . && eslint .","format":"prettier --write ."},"exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js","default":"./dist/index.js"}},"peerDependencies":{"svelte":"~4.x.x","@sveltejs/kit":"~1.10.x","@anupamtest/routes-menu":"^1.0.11"},"devDependencies":{"@sveltejs/adapter-auto":"^2.1.1","@sveltejs/kit":"^1.27.6","@sveltejs/package":"^2.2.3","@typescript-eslint/eslint-plugin":"^6.13.1","@typescript-eslint/parser":"^6.13.1","eslint":"^8.54.0","eslint-config-prettier":"^9.0.0","eslint-plugin-svelte":"^2.35.1","prettier":"^3.1.0","prettier-plugin-svelte":"^3.1.2","publint":"^0.1.16","svelte":"^4.2.7","svelte-check":"^3.6.2","tslib":"^2.6.2","typescript":"^5.3.2","vite":"^4.5.0"},"svelte":"./dist/index.js","types":"./dist/index.d.ts","type":"module","dependencies":{},"_id":"@anupamtest/routes-menu-svelte@1.0.12","description":"A SvelteKit component to render a Menu Navigation from a json object.","_nodeVersion":"18.12.1","_npmVersion":"9.8.0","dist":{"integrity":"sha512-2smSKdonQaJs/PaklTNbvvGvT/MYdn9KRZMhnVS33EGvhx/mdRg1vTKlY0IZ26UcyqQ4qjke2OKvt7BzqBIMag==","shasum":"ed2e4275a80b7db4ebb005473f431de071c27b34","tarball":"https://registry.npmjs.org/@anupamtest/routes-menu-svelte/-/routes-menu-svelte-1.0.12.tgz","fileCount":8,"unpackedSize":7792,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEe/Opk9KbUTYqOrmc1xs3JXjXUAKbRboLoxtoM63Iy8AiAkUX0R16E9sn+LaGFCrSjPWqgf+AoaAB0G65DkKYe9OA=="}]},"_npmUser":{"name":"anupam_sam","email":"anupam.sam@gmail.com"},"directories":{},"maintainers":[{"name":"anupam_sam","email":"anupam.sam@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/routes-menu-svelte_1.0.12_1701318634510_0.7195722562332096"},"_hasShrinkwrap":false},"1.0.13":{"name":"@anupamtest/routes-menu-svelte","version":"1.0.13","license":"MIT","scripts":{"dev":"vite dev","build":"vite build && npm run package","preview":"vite preview","package":"svelte-kit sync && svelte-package && publint","prepublishOnly":"npm version patch && npm run package","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","lint":"prettier --check . && eslint .","format":"prettier --write ."},"exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js","default":"./dist/index.js"}},"peerDependencies":{"svelte":"^4.x.x","@sveltejs/kit":"^1.x.x","@anupamtest/routes-menu":"^1.0.11"},"devDependencies":{"@sveltejs/adapter-auto":"^2.1.1","@sveltejs/kit":"^1.27.6","@sveltejs/package":"^2.2.3","@typescript-eslint/eslint-plugin":"^6.13.1","@typescript-eslint/parser":"^6.13.1","eslint":"^8.54.0","eslint-config-prettier":"^9.0.0","eslint-plugin-svelte":"^2.35.1","prettier":"^3.1.0","prettier-plugin-svelte":"^3.1.2","publint":"^0.1.16","svelte":"^4.2.7","svelte-check":"^3.6.2","tslib":"^2.6.2","typescript":"^5.3.2","vite":"^4.5.0"},"svelte":"./dist/index.js","types":"./dist/index.d.ts","type":"module","dependencies":{},"_id":"@anupamtest/routes-menu-svelte@1.0.13","description":"A SvelteKit component to render a Menu Navigation from a json object.","_nodeVersion":"18.12.1","_npmVersion":"9.8.0","dist":{"integrity":"sha512-j+IgpGvr9Dn5MnhPGverFUy5vpCrYzjpbzfkPtQgj+WxVOeQTrrmWEMwxoY/OEIwIcaeAFNbcG868rta9eCLiw==","shasum":"e64cdb6252231ee63ce106ba620a03fc2a68f91a","tarball":"https://registry.npmjs.org/@anupamtest/routes-menu-svelte/-/routes-menu-svelte-1.0.13.tgz","fileCount":8,"unpackedSize":7818,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDVGq24hJlUgUV0Q9ddOsP4MLGB5lmyOX7IbecXrDEETQIhAObbGlt4wfOV+KVmRZfUhFdlZa0O2uESReQ0RhCyjD8L"}]},"_npmUser":{"name":"anupam_sam","email":"anupam.sam@gmail.com"},"directories":{},"maintainers":[{"name":"anupam_sam","email":"anupam.sam@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/routes-menu-svelte_1.0.13_1701319902604_0.2999524863595624"},"_hasShrinkwrap":false},"1.0.14":{"name":"@anupamtest/routes-menu-svelte","version":"1.0.14","license":"MIT","scripts":{"dev":"vite dev","build":"vite build && npm run package","preview":"vite preview","package":"svelte-kit sync && svelte-package && publint","prepublishOnly":"npm version patch && npm run package","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","lint":"prettier --check . && eslint .","format":"prettier --write ."},"exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js","default":"./dist/index.js"}},"peerDependencies":{"svelte":"^4.x.x","@sveltejs/kit":"^1.x.x","@anupamtest/routes-menu":"^1.0.11"},"devDependencies":{"@sveltejs/adapter-auto":"^2.1.1","@sveltejs/kit":"^1.27.6","@sveltejs/package":"^2.2.3","@typescript-eslint/eslint-plugin":"^6.13.1","@typescript-eslint/parser":"^6.13.1","eslint":"^8.54.0","eslint-config-prettier":"^9.0.0","eslint-plugin-svelte":"^2.35.1","prettier":"^3.1.0","prettier-plugin-svelte":"^3.1.2","publint":"^0.1.16","svelte":"^4.2.7","svelte-check":"^3.6.2","tslib":"^2.6.2","typescript":"^5.3.2","vite":"^4.5.0"},"svelte":"./dist/index.js","types":"./dist/index.d.ts","type":"module","dependencies":{},"_id":"@anupamtest/routes-menu-svelte@1.0.14","description":"A SvelteKit component to render a Menu Navigation from a json object.","_nodeVersion":"18.12.1","_npmVersion":"9.8.0","dist":{"integrity":"sha512-GMLR3JY+08oPUT6z4Mnk0vYZuzRkuEpgjEXwsEKh0mwx/g0DxxIy2BOoPWMbrt80y4GYmqdMaRlLE5TMOAVGBg==","shasum":"c264d09554f8ef1ecc581171b59524820864db31","tarball":"https://registry.npmjs.org/@anupamtest/routes-menu-svelte/-/routes-menu-svelte-1.0.14.tgz","fileCount":8,"unpackedSize":7878,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAHk7SSPOx+NCTUI1vTaYva9RQPwJvmVan8PLnwB2ubXAiBFKCpqIhkZhKfF71TNqdffZ4nUxboBjBiLoXo4Y3ZPJQ=="}]},"_npmUser":{"name":"anupam_sam","email":"anupam.sam@gmail.com"},"directories":{},"maintainers":[{"name":"anupam_sam","email":"anupam.sam@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/routes-menu-svelte_1.0.14_1701320890005_0.9461297068506664"},"_hasShrinkwrap":false}},"maintainers":[{"name":"anupam_sam","email":"anupam.sam@gmail.com"}],"description":"A SvelteKit component to render a Menu Navigation from a json object.","license":"MIT","readme":"# Svelte SvelteKit Component to render Menu Navigation from a `.json` object\n\nA SvelteKit component to render a Menu Navigation from a json object.\n\nIt uses the package [@anupamtest/routes-menu](https://www.npmjs.com/package/@anupamtest/routes-menu?activeTab=readme) to generates the menu object based on the Folder based Routing and render the navigation using that.\n\n<br/>\n\n## 🟣Installation\n`npm i -D @anupamtest/routes-menu @anupamtest/routes-menu-svelte`\n\n<br/>\n\n## 🧩 Basic Markup\n```ts\n// +layout.server.ts\nimport { getMenu, type TMenuOptions } from '@anupamtest/routes-menu'\n\nexport const load = (async () => {\n    return {\n        menu: getMenu()\n    };\n})\n```\n\n```ts\n// +layout.svelte\n<script lang=\"ts\">\n\texport let data: LayoutData\n\n\tconst menuClicked = (e: CustomEvent<TMenuItem>) => {\n        // e.detail contains the data for the Menu Item clicked\n\t\tconsole.log(e.detail)\n\t}\n</script>\n\n<div id=\"sidebar\">\n    <Menu menu={data.menu} openLevels={1} on:menuClicked={(menuItem) => menuClicked(menuItem)} />\n</div>\n```\n\n<br/>\n\n## 🔘Props\n| Prop | Description |\n| ---- | ----------- |\n| menu | The menu json object. Structure as returned by the `@simbeto/routes2menu` package.\n| openLevels| How many levels should be expanded by default, in the menu hierarchy .\n\n<br/>\n\n## 🔘Events\n| Event | Description |\n| ----- | ----------- |\n| menuClicked() | Dispatched on any menu item click. The clicked menu item's data is passed to it. Checkout the example above.\n\n<br/>\n\n## 🔘Styling\nSome basic styling is set to visualize the navigation tree hierarchy.\nRest can be styled as per the styling system you are using.\n\nBelow classes can be used to style various menu elements and their states:\n\nHierarchy goes like this:\n\n> nav.nav-list \n>> li.nav-item \n>>> a.route &ensp;&ensp;&ensp;&ensp;&ensp;/* Menu Label */  \n>>> li.nav-list &ensp;&ensp;&ensp; \\/\\* Sub Menu \\*\\/ \n\n<br/>\n\n### Menu Items\n```css\n#sidebar .nav-item a.route {\n    text-transform: capitalize;\n}\n```\n### Active Menu Item\n```css\n#sidebar .nav-item a.active {\n    font-weight: bold;\n}\n```\n\n\n### Toggle button icon\n\n```css\n#sidebar .nav-item .toggle-btn::after {\n    content: '🔼';\n}\n#sidebar .nav-item.closed .toggle-btn::after {\n    content: '🔽';\n}\n```\n\n\n### Sub Menu\n```css\n/* .nav-item .nav-list{} OR  */\n#sidebar .sub-menu{\n    padding-left: 5px;\n}\n#sidebar .sub-menu.closed {\n\n}\n```\n\n","readmeFilename":"README.md"}