\r\n\u003COAOperation operationId=\"post-users-refreshToken\" method=\"post\" :isDark=\"isDark\" />\r\n```\r\n\r\nFurther down the page I would like to include a component rendered from the `../swagger/v1.json` spec, however I believe with the current setup that will not be possible.\r\n\r\nUltimately I think this will require passing the openapi into the components? :)",[3171],{"name":3172,"color":3173},"enhancement","a2eeef","enzonotario","vitepress-openapi","closed","Enable rendering components for multiple specs on a single page.","2024-09-28T15:44:23Z","https://github.com/enzonotario/vitepress-openapi/issues/21",0.8051728,{"description":3182,"labels":3183,"number":3185,"owner":3174,"repository":3175,"state":3176,"title":3186,"updated_at":3187,"url":3188,"score":3189},"Seria interesante que haya una documentación que logre adaptarse al lenguaje seleccionado desde un selector. Ya dependería de uno agregar algún lenguaje adicional en nuestra docs del proyecto. ",[3184],{"name":3172,"color":3173},128,"Multilenguaje ","2024-12-15T03:19:43Z","https://github.com/enzonotario/vitepress-openapi/issues/128",0.8104729,{"description":3191,"labels":3192,"number":1350,"owner":3174,"repository":3196,"state":3176,"title":3197,"updated_at":3198,"url":3199,"score":3200},"Hola! gracias por compartir esta API, es genial!\r\nhay manera de obtener el historial de la cotización cripto?\r\nveo que no existe ese tipo de \"casa\" pero en los graficos de ejemplo en la docu si que se puede elejir\r\n\r\n\r\n",[3193],{"name":3194,"color":3195},"documentation","0075ca","esjs-argentina-datos-api","Consultar historial de cripto","2024-06-01T13:13:53Z","https://github.com/enzonotario/esjs-argentina-datos-api/issues/5",0.8124364,{"description":3202,"labels":3203,"number":1234,"owner":3174,"repository":3204,"state":3176,"title":3205,"updated_at":3206,"url":3207,"score":3208},"Hola, primero felicitacion por la api, pero tenes un tema con los redondeos, sobre todo en monedas donde los numeros son pequelños como SHIB\r\nEl conversor de SHIB real es 0.01754 y la api devuelve 0.02, para todos los exchanges. El tema que en SHIB ese redondeo es muy grande, ya que shiba son miles por dolar\r\nSaludos y felicitaciones nuevamente por la api.\r\n",[],"criptoya-api-docs","Redondeo de precios","2024-09-25T16:46:44Z","https://github.com/enzonotario/criptoya-api-docs/issues/6",0.82011324,{"description":3210,"labels":3211,"number":3213,"owner":3174,"repository":3175,"state":3176,"title":3214,"updated_at":3215,"url":3216,"score":3217},"",[3212],{"name":3172,"color":3173},125,"Add support for `prefixItems` in Schema UI","2025-05-03T22:13:14Z","https://github.com/enzonotario/vitepress-openapi/issues/125",0.82467824,{"description":3219,"labels":3220,"number":3222,"owner":3174,"repository":3175,"state":3176,"title":3223,"updated_at":3224,"url":3225,"score":3226},"### 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.",[3221],{"name":3172,"color":3173},92,"Modify Sample Code Based on Variables","2024-11-15T02:40:07Z","https://github.com/enzonotario/vitepress-openapi/issues/92",0.8253117,{"description":3228,"labels":3229,"number":3233,"owner":3174,"repository":3175,"state":3176,"title":3234,"updated_at":3235,"url":3236,"score":3237},"### What would you like?\n\nHow can I create my own custom components to implement my own needs?\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_",[3230],{"name":3231,"color":3232},"question","d876e3",229,"How can I custom the render component","2025-05-31T22:29:15Z","https://github.com/enzonotario/vitepress-openapi/issues/229",0.8361487,{"description":3239,"labels":3240,"number":3241,"owner":3174,"repository":3175,"state":3176,"title":3242,"updated_at":3243,"url":3244,"score":3245},"Hi! I was working on my current project, where I have a schema that produces this UI:\n\nhttps://github.com/user-attachments/assets/21f90ff1-fb58-4aff-86e5-249e453c829f\n\nThis little screencast aims to show that it's a bit non-obvious - especially for people who are just starting to explore the site with the spec and don't know how the UI works - that object properties are there. Long description with some markdown/emojis makes it seem like the description is all that exists under this property.\n\nIn contrast, when there's no description, it's pretty obvious that the properties are expandable:\n\n\u003Cimg width=\"390\" height=\"113\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/5b945a5a-e471-44b3-8f18-0e0219c8caa0\" />\n\nBut in the case of a rich description - which is visible by default and draws attention away from the relatively small \"expand\" button icon on the top - a user who reads the description might reasonably assume that it's the only content. They may not think, \"Hmm, I read the description, but there must be properties - let me look for some element that will let me show them!\"\n\n## Suggestions:\n\n### Option 1:\n\nHide descriptions for objects when in Collapsed state, show only when Expanded:\n\nhttps://github.com/user-attachments/assets/40ead49f-6023-4cbb-9a7b-8e5a5c96b952\n\n### Option 2:\n\nShow a small hint after the description, like a verbose \"Expand\" text button or a similar UI element (only shown when it's an array/object and has a description):\n\nhttps://github.com/user-attachments/assets/c8a31a05-6b54-400d-84a9-b126b9762b1e\n\n---\n\nLet me know what you think, @enzonotario! Do you like any of the proposed options, or do you have some other idea of how to address this?",[],271,"[Discussion] When an object has a description, it's not obvious that its properties are expandable","2025-07-21T01:18:22Z","https://github.com/enzonotario/vitepress-openapi/issues/271",0.8375576,{"description":3247,"labels":3248,"number":2022,"owner":3174,"repository":3175,"state":3176,"title":3250,"updated_at":3251,"url":3252,"score":3253},"### Current behavior\n\nI added two open api specification files to my site configuration. While building the site, it fails with a heap limit allocation failed error as follows:\r\n\r\n```\r\n\u003C--- Last few GCs --->\r\n\r\n[8528:0000028921749270] 51958 ms: Scavenge 4038.9 (4137.2) -> 4038.5 (4142.0) MB, 5.89 / 0.00 ms (average mu = 0.723, current mu = 0.560) allocation failure;\r\n[8528:0000028921749270] 53307 ms: Mark-Compact 4042.1 (4142.2) -> 4040.3 (4145.0) MB, 1345.40 / 0.00 ms (average mu = 0.530, current mu = 0.017) allocation failure; scavenge might not succeed\r\n\r\n\r\n\u003C--- JS stacktrace --->\r\n\r\nFATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory\r\n----- Native stack trace -----\r\n\r\n 1: 00007FF7257A39EB node::SetCppgcReference+18459\r\n 2: 00007FF725713238 DSA_meth_get_flags+93160\r\n 3: 00007FF72618C771 v8::Isolate::ReportExternalAllocationLimitReached+65\r\n 4: 00007FF726175EC8 v8::Function::Experimental_IsNopFunction+1336\r\n 5: 00007FF725FD7970 v8::Platform::SystemClockTimeMillis+659328\r\n 6: 00007FF725FD49F8 v8::Platform::SystemClockTimeMillis+647176\r\n 7: 00007FF725FE9D0A v8::Platform::SystemClockTimeMillis+733978\r\n 8: 00007FF725FEA587 v8::Platform::SystemClockTimeMillis+736151\r\n 9: 00007FF725FF8E7F v8::Platform::SystemClockTimeMillis+795791\r\n10: 00007FF725CB9565 v8::CodeEvent::GetFunctionName+116773\r\n11: 00007FF72623E0FE v8::PropertyDescriptor::writable+678094\r\n12: 00007FF6A726D238\r\n```\n\n### Desired behavior\n\nNo errors during build\n\n### Steps to reproduce\n\nI added a markdown file like this\r\n\r\n```\r\n---\r\naside: true\r\noutline: [1, 2]\r\ntitle: \u003Credactedname> API v1\r\n---\r\n\r\n\u003Cscript setup lang=\"ts\">\r\nimport { useData } from 'vitepress'\r\nimport spec from '../../Services/ServiceClients/swagger/\u003Credactedname>_v1.json'\r\nconst { isDark } = useData()\r\n\u003C/script>\r\n\r\n\u003COASpec :spec=\"spec\" :hideInfo=\"true\" :hideServers=\"true\" :isDark=\"isDark\" />\r\n```\n\n### Logs and Error Messages\n\n\u003C--- Last few GCs --->\r\n\r\n[8528:0000028921749270] 51958 ms: Scavenge 4038.9 (4137.2) -> 4038.5 (4142.0) MB, 5.89 / 0.00 ms (average mu = 0.723, current mu = 0.560) allocation failure;\r\n[8528:0000028921749270] 53307 ms: Mark-Compact 4042.1 (4142.2) -> 4040.3 (4145.0) MB, 1345.40 / 0.00 ms (average mu = 0.530, current mu = 0.017) allocation failure; scavenge might not succeed\r\n\r\n\r\n\u003C--- JS stacktrace --->\r\n\r\nFATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory\r\n----- Native stack trace -----\r\n\r\n 1: 00007FF7257A39EB node::SetCppgcReference+18459\r\n 2: 00007FF725713238 DSA_meth_get_flags+93160\r\n 3: 00007FF72618C771 v8::Isolate::ReportExternalAllocationLimitReached+65\r\n 4: 00007FF726175EC8 v8::Function::Experimental_IsNopFunction+1336\r\n 5: 00007FF725FD7970 v8::Platform::SystemClockTimeMillis+659328\r\n 6: 00007FF725FD49F8 v8::Platform::SystemClockTimeMillis+647176\r\n 7: 00007FF725FE9D0A v8::Platform::SystemClockTimeMillis+733978\r\n 8: 00007FF725FEA587 v8::Platform::SystemClockTimeMillis+736151\r\n 9: 00007FF725FF8E7F v8::Platform::SystemClockTimeMillis+795791\r\n10: 00007FF725CB9565 v8::CodeEvent::GetFunctionName+116773\r\n11: 00007FF72623E0FE v8::PropertyDescriptor::writable+678094\r\n12: 00007FF6A726D238\n\n### Other Information\n\nDuring the build, I also get many errors like this:\r\n\r\nReferenceError: localStorage is not defined\r\n at file:///C:/Repos/Work/\u003Credactedname>/Docs/node_modules/vitepress-theme-openapi/dist/vitepress-theme-openapi.es.js:66959:56\r\n at Array.map (\u003Canonymous>)\r\n at setup (file:///C:/Repos/Work/\u003Credactedname>/Docs/node_modules/vitepress-theme-openapi/dist/vitepress-theme-openapi.es.js:66957:43)\r\n at callWithErrorHandling (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\runtime-core\\dist\\runtime-core.cjs.prod.js:86:19)\r\n at setupStatefulComponent (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\runtime-core\\dist\\runtime-core.cjs.prod.js:6241:25)\r\n at setupComponent (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\runtime-core\\dist\\runtime-core.cjs.prod.js:6228:36)\r\n at renderComponentVNode (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\server-renderer\\dist\\server-renderer.cjs.prod.js:376:15)\r\n at renderVNode (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\server-renderer\\dist\\server-renderer.cjs.prod.js:507:14)\r\n at renderVNodeChildren (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\server-renderer\\dist\\server-renderer.cjs.prod.js:523:5)\r\n at renderElementVNode (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\server-renderer\\dist\\server-renderer.cjs.prod.js:567:9)\r\nReferenceError: localStorage is not defined\r\n at file:///C:/Repos/Work/\u003Credactedname>/Docs/node_modules/vitepress-theme-openapi/dist/vitepress-theme-openapi.es.js:66959:56\r\n at Array.map (\u003Canonymous>)\r\n at setup (file:///C:/Repos/Work/\u003Credactedname>/Docs/node_modules/vitepress-theme-openapi/dist/vitepress-theme-openapi.es.js:66957:43)\r\n at callWithErrorHandling (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\runtime-core\\dist\\runtime-core.cjs.prod.js:86:19)\r\n at setupStatefulComponent (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\runtime-core\\dist\\runtime-core.cjs.prod.js:6241:25)\r\n at setupComponent (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\runtime-core\\dist\\runtime-core.cjs.prod.js:6228:36)\r\n at renderComponentVNode (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\server-renderer\\dist\\server-renderer.cjs.prod.js:376:15)\r\n at renderVNode (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\server-renderer\\dist\\server-renderer.cjs.prod.js:507:14)\r\n at renderVNodeChildren (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\server-renderer\\dist\\server-renderer.cjs.prod.js:523:5)\r\n at renderElementVNode (C:\\Repos\\Work\\\u003Credactedname>\\Docs\\node_modules\\@vue\\server-renderer\\dist\\server-renderer.cjs.prod.js:567:9)",[3249],{"name":3172,"color":3173},"Build fails with \"heap limit allocation failed\"","2024-10-29T16:35:25Z","https://github.com/enzonotario/vitepress-openapi/issues/65",0.83847976,{"description":3255,"labels":3256,"number":3257,"owner":3174,"repository":3175,"state":3176,"title":3258,"updated_at":3259,"url":3260,"score":3261},"Thank you for such tool!\n\nI am considering to start using it but I do not understand how to make parameters collapsible.\nI tried with slots/templates approach but was able only substitute parameters component and not wrap. Since I’m not a Vue guy(more like React) can you please suggest how to achieve such behaviour if it is even possible?\n\nI do not wanna substitute OpenAPI parameters component but just wanna wrap it with something like html detail/summary since there are a lot of parameters in my OpenAPI spec and they take huge amount of space. Thanks in advance 🙏 \n\nI tried like this:\n```tsx\n\u003COAOperation :operationId=\"operationId\">\n \u003Ctemplate #parameters=\"{ parameters, operationId }\">\n \u003Cdetails>\n \u003Csummary>Parameters\u003C/summary>\n \u003COAParameters :parameters=\"parameters\" :operationId=\"operationId\" />\n \u003C/details>\n \u003C/template>\n\u003C/OAOperation>\n```\n\nBut cannot figure out where to import `OAParameters` component from...\nBecause getting error: `Vue warn]: Failed to resolve component: OAParameters`",[],290,"How to make Operation parameters collapsible/expandable?","2025-08-08T16:06:36Z","https://github.com/enzonotario/vitepress-openapi/issues/290",0.840206,["Reactive",3263],{},["Set"],["ShallowReactive",3266],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$frIUCrgLFF-R4jBCuWYw-2mq99XdCFePdMM-7Nya_zWM":-1},"/enzonotario/esjs-argentina-datos-api/7"]