\n\n```\n\n```js\nimport { usePaths } from 'vitepress-openapi'\nimport spec from '../../public/test.json' with {type: 'json'}\n\nexport default {\n paths() {\n return usePaths({ spec })\n .getPathsByVerbs()\n .map(({ operationId, summary }) => {\n return {\n params: {\n operationId,\n pageTitle: `${summary} - vitepress-openapi`,\n },\n }\n })\n },\n}\n```\n\nThe terminal show this error,but i dont understand what it mean\n\n\n\nThe terminal guide me the links https://cn.vite.dev/guide/troubleshooting which is show The CJS build of Vite's Node API is deprecated and will be removed in Vite 6. \n\nHope u give the answer thank u so much\n\n\n### Desired behavior\n\n_No response_\n\n### Reproduction\n\n_No response_\n\n### Steps to reproduce\n\n\n\n### Logs and Error Messages\n\n\n\n### Other Information\n\n_No response_",[],212,"enzonotario","vitepress-openapi","closed","Pages by Operation Example dose not work","2025-04-30T22:18:57Z","https://github.com/enzonotario/vitepress-openapi/issues/212",0.7755679,{"description":2865,"labels":2866,"number":2870,"owner":2857,"repository":2858,"state":2859,"title":2871,"updated_at":2872,"url":2873,"score":2874},"### What would you like?\n\nI'd love it if there was an easy to use component that allowed displaying a link that looked like the nice fancy sidebars\n\nThis should be documented\n\n\n\nI'd like to be able to use this anywhere in text\n\n### Why is this needed?\n\n_No response_\n\n### How could it be implemented?\n\n_No response_\n\n### Other information\n\n_No response_",[2867],{"name":2868,"color":2869},"enhancement","a2eeef",222,"Reusable component for linking to specs / api pages","2025-05-18T01:52:34Z","https://github.com/enzonotario/vitepress-openapi/issues/222",0.79137796,{"description":2876,"labels":2877,"number":2879,"owner":2857,"repository":2858,"state":2859,"title":2880,"updated_at":2881,"url":2882,"score":2883},"### What would you like?\n\nThe current version generates \"static\" code for each language, based only on the url and method. Unfortunately, the url is simply: `const url = props.baseUrl + props.path`. This has the issue that any path parameters are left as-is in the code.\r\n\r\nIt would be great if the sample code could be updated to include the variables in the \"try it\" box. This way the code sample would be \"complete\". I _think_ this would be done in much the same was as the `OACodeBlock` currently computes the URL for curl\n\n### Why is this needed?\n\nIf you copy-and-paste the code sample as-is, you will end up with an invalid URL if there are path parameters.\r\n\r\nAlso, it would be nice to mix-and-match such that you can _remove_ the try it portion of the playground, but keep the sample code. This way people can \"build\" a request in their language of choice based on the variables form.\n\n### How could it be implemented?\n\nI _think_ you would need to extract (or just duplicate?) the code used to compute the curl information:\r\n\r\n```\r\nconst curl = computed(() => {\r\n const headers = request.value.headers\r\n if (!headers?.['Content-Type']) {\r\n headers['Content-Type'] = 'application/json'\r\n }\r\n\r\n return fetchToCurl({\r\n method: props.method.toUpperCase(),\r\n url: request.value.url,\r\n headers,\r\n body: request.value.body ? formatJson(request.value.body) : null,\r\n })\r\n})\r\n```\r\n\r\nThen pass this as a parameter to `generateCodeSamples` so that it can generate each code sample appropriately.\n\n### Other information\n\nIt would also be _awesome_ to select _which_ languages you want to support, and possibly even some way to provide the template for each language. I realize this is above-and-beyond, but something to think about if you're changing this.",[2878],{"name":2868,"color":2869},92,"Modify Sample Code Based on Variables","2024-11-15T02:40:07Z","https://github.com/enzonotario/vitepress-openapi/issues/92",0.80530363,{"description":2885,"labels":2886,"number":2888,"owner":2857,"repository":2858,"state":2859,"title":2889,"updated_at":2890,"url":2891,"score":2892},"### Current behavior\r\n\r\nMy openapi spec contains oneOf and prefixItems \r\n\r\n- [x] #124\r\n\r\n- [x] #125\r\n\r\n### Desired behavior\r\n\r\n_No response_\r\n\r\n### Reproduction\r\n\r\n_No response_\r\n\r\n### Steps to reproduce\r\n\r\n```\r\ngit clone https://github.com/wighawag/fuzd.git\r\ncd fuzd\r\ngit checkout feat/vitepress-openapi\r\npnpm i\r\npnpm docs:dev\r\n# for oneOf, see http://localhost:5173/api-all-in-one/#get-api-paymentAccountBroadcaster\r\n# it shows null, while null is only one of the possible type\r\n\r\n# for prefixItems I had an earlier example here : https://github.com/wighawag/fuzd/commit/d47b3452280a13aeb6d38c6c7301e51b8be7f2fc\r\n# where error (click 500) where not showing properly because I was using prefixItems\r\n```\r\n\r\n### Logs and Error Messages\r\n\r\n_No response_\r\n\r\n### Other Information\r\n\r\n_No response_",[2887],{"name":2868,"color":2869},111,"prefixItems and oneOf does not seems to be supported","2025-05-03T22:18:47Z","https://github.com/enzonotario/vitepress-openapi/issues/111",0.82199097,{"description":2894,"labels":2895,"number":666,"owner":2857,"repository":2896,"state":2859,"title":2897,"updated_at":2898,"url":2899,"score":2900},"Hi,\r\n \r\n Nice work you've done here, but i am wondering if there is a other way to support subscription with lighthouse because is so much work to be done to make it work and there must be a way implemented by them.. or should be 👍 \r\n Also I am wondering if you can tell me.. from what i've checked you trigger a subscription from web/routes.php (home page) by clicking on that button, but you can can make that mutation that you have created work in playground?",[],"lighthouse-laravel-websockets","Subscription","2020-11-07T13:39:54Z","https://github.com/enzonotario/lighthouse-laravel-websockets/issues/12",0.8303511,{"description":2902,"labels":2903,"number":666,"owner":2857,"repository":2858,"state":2859,"title":2908,"updated_at":2909,"url":2910,"score":2900},"My API has a security scheme defined, such as the following\r\n\r\n```\r\n \"security\": [\r\n {\r\n \"ApiKeyAuth\": []\r\n }\r\n ],\r\n \"components\": {\r\n \"securitySchemes\": {\r\n \"ApiKeyAuth\": {\r\n \"type\": \"apiKey\",\r\n \"in\": \"header\",\r\n \"name\": \"Authorization\"\r\n }\r\n },\r\n```\r\n\r\nWhich can then be interpereted as being applied globally, or overridden on a per route level, such as by defining\r\n\r\n\r\n```\r\n \"security\": [\r\n {\r\n \"ApiKeyAuth\": []\r\n }\r\n ]\r\n```\r\n\r\nFor the route.\r\n\r\nPer the spec at https://swagger.io/docs/specification/authentication/\r\n\r\nAs far as I can see this is not currently represeented anywhere by the component\r\n\r\n\r\n\r\nhttps://gist.github.com/addshore/e6b973939739e25902025bf1667e69a1 is an example API spec that demonstrates this feature and thus issue",[2904,2905],{"name":2868,"color":2869},{"name":2906,"color":2907},"help wanted","008672","Support security schema rendering","2024-08-30T22:52:04Z","https://github.com/enzonotario/vitepress-openapi/issues/12",{"description":2912,"labels":2913,"number":2917,"owner":2857,"repository":2858,"state":2859,"title":2918,"updated_at":2919,"url":2920,"score":2921},"### Current behavior\n\n[plugin:vite:import-analysis] Failed to resolve import \"vitepress-openapi/client\" from \".vitepress/theme/index.ts\". Does the file exist?\n\n\n```\n~/demo2/.vitepress/theme/index.ts:1:44\n1 | import { theme, useOpenapi, useShiki } from \"vitepress-openapi/client\";\n | ^\n2 | import DefaultTheme from \"vitepress/theme\";\n3 | import spec from \"../../public/openapi.json\" with { type: \"json\" };\n```\n\n### Desired behavior\n\n_No response_\n\n### Reproduction\n\n_No response_\n\n### Steps to reproduce\n\n```\ngit clone https://github.com/enzonotario/vitepress-openapi\ncd vitepress-openapi\ncp -r docs ~/demos\n```\n\n\n### Logs and Error Messages\n\n_No response_\n\n### Other Information\n\n_No response_",[2914],{"name":2915,"color":2916},"question","d876e3",208,"init error","2025-04-20T13:05:55Z","https://github.com/enzonotario/vitepress-openapi/issues/208",0.83428234,{"description":2923,"labels":2924,"number":2929,"owner":2857,"repository":2858,"state":2859,"title":2930,"updated_at":2931,"url":2932,"score":2933},"Example\r\n\r\n\r\n\r\n200,400,401,429,500\r\n\r\nPerhaps it could / should be a drop down if there are more than 4?",[2925,2928],{"name":2926,"color":2927},"bug","d73a4a",{"name":2868,"color":2869},46,"Too many response codes results in element overlap","2024-09-20T01:51:07Z","https://github.com/enzonotario/vitepress-openapi/issues/46",0.84123033,{"description":2935,"labels":2936,"number":2937,"owner":2857,"repository":2858,"state":2859,"title":2938,"updated_at":2939,"url":2940,"score":2941},"### Current behavior\n\nIn OpenAPI you can create a nullable object with:\n```yaml\ntype: [object, 'null']\nproperties:\n example:\n type: string\n```\n\nCurrently, vitepress-openapi will not display the properties correctly.\n\n### Desired behavior\n\nIf the object is nullable, it should still list all properties of nullable object and not just `object | null`\n\n### Reproduction\n\n_No response_\n\n### Steps to reproduce\n\n```json\n{\n \"openapi\": \"3.1.0\",\n \"info\": {\n \"title\": \"Nullable objects\"\n },\n \"servers\": [\n {\n \"url\": \"https://whatever.com\",\n \"description\": \"Mock Server\"\n }\n ],\n \"paths\": {\n \"/nullable\": {\n \"get\": {\n \"tags\": [\n \"Nullable\"\n ],\n \"summary\": \"Get nullable object\",\n \"description\": \"Yayy\",\n \"operationId\": \"getNullableObject\",\n \"responses\": {\n \"200\": {\n \"description\": \"OK\",\n \"content\": {\n \"application/json\": {\n \"schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"a\": {\n \"type\": [\n \"object\",\n \"null\"\n ],\n \"properties\": {\n \"a\": {\n \"type\": \"number\"\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n },\n \"tags\": [],\n \"externalDocs\": {}\n}\n```\n\n\n\n### Logs and Error Messages\n\n_No response_\n\n### Other Information\n\n_No response_",[],206,"\"nullable\" objects","2025-04-24T01:25:01Z","https://github.com/enzonotario/vitepress-openapi/issues/206",0.84143096,{"description":2943,"labels":2944,"number":2946,"owner":2857,"repository":2858,"state":2859,"title":2947,"updated_at":2948,"url":2949,"score":2950},"### What would you like?\r\n\r\nList of tags underneath the title\r\n\r\n### Why is this needed?\r\n\r\nWould be handy with tags pages, if one doesn't show tags in the sidebar (without `itemsByTags`)\r\n\r\n### How could it be implemented?\r\n\r\nI use following workaround\r\n\r\n```vue\r\n\u003COAOperation :operationId=\"operationId\" :isDark=\"isDark\" >\r\n \u003Ctemplate #description=\"description\">\r\n \u003Cdiv>\r\n \u003CBadge type=\"info\" v-for=\"tag in operation.tags\">\r\n \u003C!-- hardocde prefix, tell me if you know better way -->\r\n \u003Ca :href=\"`/tags/${tag}`\">{{ tag }}\u003C/a>\r\n \u003C/Badge>\r\n \u003C/div>\r\n \u003C/template>\r\n\u003C/OAOperation>\r\n```\r\n\r\nBut would be nice to have\r\n\r\n```ts\r\nuseTheme({\r\n operation: {\r\n slots: ['tags']\r\n }\r\n})\r\n```\r\n\r\n### Other information\r\n\r\nRelated: it would be nice to have more compact representation of endpoints lists for tags pages. For now I use\r\n\r\n```ts\r\nimport { useTheme } from 'vitepress-openapi'\r\nuseTheme({\r\n operation: {\r\n slots: [\r\n 'header',\r\n 'path',\r\n 'description',\r\n ],\r\n cols: 2,\r\n },\r\n})\r\n```\r\n\r\nWhich looks a bit strange",[2945],{"name":2868,"color":2869},120,"Add tags slot","2024-12-02T03:07:06Z","https://github.com/enzonotario/vitepress-openapi/issues/120",0.84431916,["Reactive",2952],{},["Set"],["ShallowReactive",2955],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fZNhQh4g7UL952c_WX2flIHu_62P6P2_5DNUDHo2PpoI":-1},"/enzonotario/vitepress-openapi/213"]