@nuxt/devtools 1.0.0-beta.1 → 1.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/dist/chunks/module-main.mjs +12 -2
  2. package/dist/client/200.html +24 -24
  3. package/dist/client/404.html +24 -24
  4. package/dist/client/__blank/index.html +42 -0
  5. package/dist/client/_nuxt/{CodeDiff.vue.09a831fc.js → CodeDiff.vue.b74b0167.js} +1 -1
  6. package/dist/client/_nuxt/{ComposableItem.vue.770ce9d1.js → ComposableItem.vue.66a98e20.js} +1 -1
  7. package/dist/client/_nuxt/{DataSchemaButton.vue.65a9244c.js → DataSchemaButton.vue.b30dcd6f.js} +1 -1
  8. package/dist/client/_nuxt/{DataSchemaDrawer.939e0d36.js → DataSchemaDrawer.d00941d6.js} +1 -1
  9. package/dist/client/_nuxt/{DurationDisplay.vue.3abddd08.js → DurationDisplay.vue.5b7cc04d.js} +1 -1
  10. package/dist/client/_nuxt/{FilepathItem.vue.66158bcd.js → FilepathItem.vue.6dd69314.js} +1 -1
  11. package/dist/client/_nuxt/{HelpFab.vue.074157ff.js → HelpFab.vue.314bc83b.js} +1 -1
  12. package/dist/client/_nuxt/{LaunchPage.vue.20d8d836.js → LaunchPage.vue.017c62ce.js} +1 -1
  13. package/dist/client/_nuxt/{NBadge.532c6829.js → NBadge.e849763e.js} +1 -1
  14. package/dist/client/_nuxt/{NCheckbox.vue.83a6e70e.js → NCheckbox.vue.cf7e1e9d.js} +1 -1
  15. package/dist/client/_nuxt/{NCodeBlock.vue.d4a74ca4.js → NCodeBlock.vue.882d562f.js} +1 -1
  16. package/dist/client/_nuxt/{NDrawer.vue.f03c3dec.js → NDrawer.vue.a4010d93.js} +1 -1
  17. package/dist/client/_nuxt/{NDropdown.vue.885f70c3.js → NDropdown.vue.3b1768f5.js} +1 -1
  18. package/dist/client/_nuxt/{NIconTitle.vue.5caf9fc5.js → NIconTitle.vue.71113a3f.js} +1 -1
  19. package/dist/client/_nuxt/{NLink.vue.c05eef3c.js → NLink.vue.a09685db.js} +1 -1
  20. package/dist/client/_nuxt/{NMarkdown.vue.52b3ce56.js → NMarkdown.vue.13c5f0c3.js} +1 -1
  21. package/dist/client/_nuxt/NNavbar.vue.d9a029e0.js +1 -0
  22. package/dist/client/_nuxt/{NSectionBlock.43816001.js → NSectionBlock.7f41e147.js} +1 -1
  23. package/dist/client/_nuxt/{NSelect.vue.dcac9c73.js → NSelect.vue.e7f8c81a.js} +1 -1
  24. package/dist/client/_nuxt/{NSelectTabs.vue.411a7347.js → NSelectTabs.vue.ddc009ff.js} +1 -1
  25. package/dist/client/_nuxt/{NSwitch.vue.aacb5de3.js → NSwitch.vue.8d3010b0.js} +1 -1
  26. package/dist/client/_nuxt/{NTip.vue.7a94f00d.js → NTip.vue.3f5fb5a1.js} +1 -1
  27. package/dist/client/_nuxt/{StateEditor.vue.e862f0c1.js → StateEditor.vue.162475d5.js} +1 -1
  28. package/dist/client/_nuxt/__blank.f49c5a73.js +1 -0
  29. package/dist/client/_nuxt/{analyze-build.2cdd206f.js → analyze-build.988e7c9e.js} +1 -1
  30. package/dist/client/_nuxt/assets.2b649247.js +16 -0
  31. package/dist/client/_nuxt/{client.ab169146.js → client.253674ec.js} +1 -1
  32. package/dist/client/_nuxt/{components.81bb7f4d.js → components.7583b49c.js} +1 -1
  33. package/dist/client/_nuxt/{constants.4e5eba24.js → constants.2cc6e981.js} +1 -1
  34. package/dist/client/_nuxt/{css.a67813b3.js → css.f61fd02b.js} +3 -3
  35. package/dist/client/_nuxt/custom-_name_.0e141ac3.js +1 -0
  36. package/dist/client/_nuxt/{default.de670135.js → default.a50dad07.js} +1 -1
  37. package/dist/client/_nuxt/entry.3dd66f35.js +27 -0
  38. package/dist/client/_nuxt/{entry.ebd8706b.css → entry.960c025a.css} +1 -1
  39. package/dist/client/_nuxt/{error-404.b43ed6fa.js → error-404.429edf81.js} +1 -1
  40. package/dist/client/_nuxt/{error-500.9a32d319.js → error-500.9e83b20b.js} +1 -1
  41. package/dist/client/_nuxt/{full.44b6f3d9.js → full.c90b8ab9.js} +1 -1
  42. package/dist/client/_nuxt/{hooks.85310903.js → hooks.40588927.js} +1 -1
  43. package/dist/client/_nuxt/{html.af01869e.js → html.14085b69.js} +1 -1
  44. package/dist/client/_nuxt/{imports.3e92b5b9.js → imports.7b590e48.js} +1 -1
  45. package/dist/client/_nuxt/{index.370f8c55.js → index.8013a14e.js} +1 -1
  46. package/dist/client/_nuxt/{index.780a9ee0.js → index.90ae56cb.js} +1 -1
  47. package/dist/client/_nuxt/{json-editor-vue.724e0801.js → json-editor-vue.465dc720.js} +2 -2
  48. package/dist/client/_nuxt/{middleware.44a34c7b.js → middleware.72aa446e.js} +1 -1
  49. package/dist/client/_nuxt/{modules.24081f84.js → modules.d997669f.js} +1 -1
  50. package/dist/client/_nuxt/{none.06949a5f.js → none.ab2b300f.js} +1 -1
  51. package/dist/client/_nuxt/open-graph.1cc10683.js +3 -0
  52. package/dist/client/_nuxt/{overview.86a88207.js → overview.014aea35.js} +1 -1
  53. package/dist/client/_nuxt/pages.7f7e1a57.js +1 -0
  54. package/dist/client/_nuxt/{payload.1baa204b.js → payload.58a8bb6b.js} +1 -1
  55. package/dist/client/_nuxt/{plugins.f261769b.js → plugins.1f073986.js} +1 -1
  56. package/dist/client/_nuxt/{runtime-configs.a5615107.js → runtime-configs.6d4dd513.js} +1 -1
  57. package/dist/client/_nuxt/{server-routes.2022f4ba.js → server-routes.b5fc14db.js} +1 -1
  58. package/dist/client/_nuxt/{settings.ab7b45b3.js → settings.04d1166d.js} +1 -1
  59. package/dist/client/_nuxt/shellscript.e25d1410.js +4 -0
  60. package/dist/client/_nuxt/{state-components.1d5849c5.js → state-components.c2be3414.js} +1 -1
  61. package/dist/client/_nuxt/{state-modules.78318316.js → state-modules.5bf4563c.js} +1 -1
  62. package/dist/client/_nuxt/{storage-options.8ca9ecbc.js → storage-options.2224e06b.js} +1 -1
  63. package/dist/client/_nuxt/{storage.cb6d643c.js → storage.8cd70b69.js} +1 -1
  64. package/dist/client/_nuxt/{terminals.06dde221.js → terminals.ce3bbf0e.js} +1 -1
  65. package/dist/client/_nuxt/{timeline.5add59be.js → timeline.23647b38.js} +1 -1
  66. package/dist/client/_nuxt/{unocss-runtime.1dfe0ac4.js → unocss-runtime.41db0d67.js} +1 -1
  67. package/dist/client/_nuxt/{virtual-files.804fdba7.js → virtual-files.bc5e9072.js} +1 -1
  68. package/dist/client/_nuxt/{vitesse-dark.ab479e3d.js → vitesse-dark.ff0e7dcb.js} +1 -1
  69. package/dist/client/_nuxt/{vitesse-light.696edcfd.js → vitesse-light.c6996724.js} +1 -1
  70. package/dist/client/_nuxt/{vue-html.0806679f.js → vue-html.88dda4a8.js} +1 -1
  71. package/dist/client/_nuxt/{vue.24311fdc.js → vue.7ad3b25a.js} +3 -3
  72. package/dist/client/index.html +24 -24
  73. package/dist/client/modules/analyze-build/index.html +24 -24
  74. package/dist/client/modules/assets/index.html +24 -24
  75. package/dist/client/modules/components/index.html +24 -24
  76. package/dist/client/modules/hooks/index.html +24 -24
  77. package/dist/client/modules/imports/index.html +24 -24
  78. package/dist/client/modules/middleware/index.html +24 -24
  79. package/dist/client/modules/modules/index.html +24 -24
  80. package/dist/client/modules/open-graph/index.html +24 -24
  81. package/dist/client/modules/overview/index.html +24 -24
  82. package/dist/client/modules/pages/index.html +24 -24
  83. package/dist/client/modules/payload/index.html +24 -24
  84. package/dist/client/modules/plugins/index.html +24 -24
  85. package/dist/client/modules/runtime-configs/index.html +24 -24
  86. package/dist/client/modules/server-routes/index.html +24 -24
  87. package/dist/client/modules/storage/index.html +24 -24
  88. package/dist/client/modules/terminals/index.html +24 -24
  89. package/dist/client/modules/timeline/index.html +24 -24
  90. package/dist/client/modules/virtual-files/index.html +24 -24
  91. package/dist/client/settings/index.html +24 -24
  92. package/dist/module.json +1 -1
  93. package/package.json +8 -8
  94. package/dist/client/_nuxt/NNavbar.vue.0f176f87.js +0 -1
  95. package/dist/client/_nuxt/assets.41fcf77e.js +0 -16
  96. package/dist/client/_nuxt/custom-_name_.3060f125.js +0 -1
  97. package/dist/client/_nuxt/entry.9effa704.js +0 -27
  98. package/dist/client/_nuxt/open-graph.6cf823d3.js +0 -3
  99. package/dist/client/_nuxt/pages.23eb0566.js +0 -1
  100. package/dist/client/_nuxt/shellscript.9d056341.js +0 -4
@@ -1,3 +0,0 @@
1
- import{d as M,a as S,aS as oe,e as ne,a8 as U,r as A,f as e,h as I,j as g,p as $,o,k as t,m as n,n as R,G as N,t as h,F as T,i as d,v as k,al as z,_ as J,a5 as B,aT as P,aU as ae,aV as se,b as re,aW as ie,aX as ce,aY as le,aZ as G,av as de,ab as pe,l as me,ac as ue,I as V,W as ge}from"./entry.9effa704.js";import{_ as he}from"./NNavbar.vue.0f176f87.js";import{_ as H}from"./NLink.vue.c05eef3c.js";import{_ as K}from"./NSectionBlock.43816001.js";import{_ as _e}from"./NCodeBlock.vue.d4a74ca4.js";import{_ as fe}from"./HelpFab.vue.074157ff.js";import"./NIconTitle.vue.5caf9fc5.js";import"./client.ab169146.js";const W=[{name:"title",suggestion:"required",head:{title:"[title]"},seoMeta:{title:"[title]"},docs:"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/title",description:"A concise and descriptive title for the browser that accurately summarizes the content of the page."},{name:"description",suggestion:"required",head:{meta:[{name:"description",content:"[description]"}]},seoMeta:{description:"[description]"},description:"A one to two sentence summary for search engines that includes relevant keywords to improve visibility in search results."},{name:"icon",suggestion:"recommended",head:{link:[{rel:"icon",type:"image/png",href:"/favicon.png"}]},description:"A small image that appears in the browser tab and bookmark menu to help users easily identify the page."},{name:"lang",suggestion:"recommended",head:{htmlAttrs:{lang:"en"}},description:"The primary language of the page to help search engines and browsers understand the content."},{name:"og:title",suggestion:"recommended",head:{meta:[{property:"og:title",content:"[og:title]"}]},seoMeta:{ogTitle:"[og:title]"},docs:"https://ogp.me/#metadata",description:"A title for the link preview used by social media platforms."},{name:"og:description",suggestion:"recommended",head:{meta:[{property:"og:description",content:"[og:description]"}]},seoMeta:{ogDescription:"[og:description]"},docs:"https://ogp.me/#metadata",description:"A description for the link preview used by social media platforms."},{name:"og:image",suggestion:"recommended",head:{meta:[{property:"og:image",content:"[og:image]"}]},seoMeta:{ogImage:"[og:image]"},docs:"https://ogp.me/#metadata",description:"An image for the link preview used by social media platforms."},{name:"og:url",suggestion:"recommended",head:{meta:[{property:"og:url",content:"[og:url]"}]},seoMeta:{ogUrl:"[og:url]"},docs:"https://ogp.me/#metadata",description:"A canonical URL for the link preview used to specify the preferred URL to display in search engine results and social media previews when multiple URLs may point to the same page."},{name:"twitter:title",suggestion:"recommended",head:{meta:[{name:"twitter:title",content:"[twitter:title]"}]},seoMeta:{twitterTitle:"[twitter:title]"},docs:"https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/abouts-cards",description:"A title for the Twitter card used to provide a preview of the content shared on the page."},{name:"twitter:description",suggestion:"recommended",head:{meta:[{name:"twitter:description",content:"[twitter:description]"}]},seoMeta:{twitterDescription:"[twitter:description]"},docs:"https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/abouts-cards",description:"A description for the Twitter card used to provide a preview of the content shared on the page."},{name:"twitter:image",suggestion:"recommended",head:{meta:[{name:"twitter:image",content:"[twitter:image]"}]},seoMeta:{twitterImage:"[twitter:image]"},docs:"https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/abouts-cards",description:"An image for the Twitter card used to provide a preview of the content shared on the page."},{name:"twitter:card",suggestion:"recommended",head:{meta:[{name:"twitter:card",content:"summary"}]},seoMeta:{twitterCard:"summary"},docs:"https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/abouts-cards",description:"The type of Twitter card to use, which determines the type of card to display in link previews on Twitter."}],ve={flex:"~ wrap","mt--2":"","w-full":"","flex-none":""},be=["onClick"],we=t("div",{border:"b base","flex-auto":""},null,-1),xe={key:0,"x-divider":""},ye={key:1,"x-divider":""},ke={flex:"~ gap-1 items-center",px4:"",py2:""},$e=t("div",{"i-carbon-warning":"","text-orange":""},null,-1),Te={"w-full":"",p2:"",op75:""},Se={key:1,m4:"",flex:"~ col gap-2"},Ce={flex:"~ gap-1 wrap items-center"},Ne={key:1},Me={flex:"~ gap-2",n:"sm primary",absolute:"","right-2":"","top-2":""},Oe=M({__name:"OpenGraphMissingTabs",props:{tags:{},matchedRouteFilepath:{}},setup(b){const i=b,c=S(()=>W.filter(a=>!i.tags?.some(p=>p.name===a.name))),l=S(()=>{let a={};const p={};c.value.forEach(u=>{u.seoMeta?Object.assign(p,u.seoMeta):a=oe(a,u.head)});const v=[];if(Object.keys(p).length){const u=JSON.stringify(p,null,2).replace(/"([^"]+)":/g,"$1:").replace(/"/g,"'");v.push(`useSeoMeta(${u})`)}if(Object.keys(a).length){const u=JSON.stringify(a,null,2).replace(/"([^"]+)":/g,"$1:").replace(/"/g,"'");v.push(`useHead(${u})`)}return v.join(`
2
-
3
- `)}),m=ne(),x=U(),y=["Missing Tags","Code Snippet"],_=A(y[0]);return(a,p)=>{const v=H,u=z,C=J,O=_e,L=K;return e(c).length?(o(),I(L,{key:0,text:"Missing Tags",description:`${e(c).length} missing tags`,icon:"carbon:warning-other","header-class":"text-orange op100! [[open]_&]:text-inherit",padding:!1},{default:g(()=>[t("div",ve,[(o(),n(T,null,R(y,(s,r)=>t("button",{key:r,px4:"",py2:"",border:"r t base",hover:"bg-active",class:N(s===e(_)?"":"border-b"),onClick:f=>_.value=s},[t("div",{class:N(s===e(_)?"":"op30"),capitalize:""},h(s),3)],10,be)),64)),we]),e(_)===y[0]?(o(),I(u,{key:0,grid:"~ cols-[max-content_1fr]",m4:"","items-center":"","justify-between":"","of-hidden":""},{default:g(()=>[(o(!0),n(T,null,R(e(c),(s,r)=>(o(),n(T,{key:r},[r?(o(),n("div",xe)):$("",!0),r?(o(),n("div",ye)):$("",!0),t("div",ke,[$e,d(v,{"op-50":"",href:s.docs,target:"_blank",n:"orange"},{default:g(()=>[k(h(s.name),1)]),_:2},1032,["href"])]),t("div",Te,h(s.description),1)],64))),128))]),_:1})):(o(),n("div",Se,[t("p",Ce,[d(C,{icon:"carbon-copy",n:"xs","px-2":"",onClick:p[0]||(p[0]=s=>e(m)(e(l)))},{default:g(()=>[k(" Copy ")]),_:1}),k(" the following code snippet and paste it into your "),a.matchedRouteFilepath?(o(),I(C,{key:0,icon:"carbon-launch",n:"xs","px-2":"",onClick:p[1]||(p[1]=s=>e(x)(a.matchedRouteFilepath))},{default:g(()=>[k(" page component ")]),_:1})):(o(),n("span",Ne,"page component")),k(" to full fill the missing tags. ")]),d(u,{relative:"","n-code-block":""},{default:g(()=>[d(O,{code:e(l),lang:"ts",lines:!1,"w-full":"","of-auto":"",p3:""},null,8,["code"]),t("div",Me,[d(C,{icon:"carbon-copy",onClick:p[2]||(p[2]=s=>e(m)(e(l)))},{default:g(()=>[k(" Copy ")]),_:1})])]),_:1})]))]),_:1},8,["description"])):$("",!0)}}}),Ae={class:"max-w-[524px] min-w-[524px] cursor-pointer bg-base"},Ie={class:"break-words border border-base px-[12px] py-[10px] antialiased"},Re={class:"overflow-hidden truncate whitespace-nowrap text-[12px] leading-[11px] uppercase op50"},Be={class:"block h-[46px] max-h-[46px] border-separate select-none overflow-hidden break-words text-left",style:{"border-spacing":"0px"}},Le={class:"mt-[3px] truncate pt-[2px] text-[16px] font-semibold leading-[20px]"},Fe={class:"mt-[3px] block h-[18px] max-h-[80px] border-separate select-none overflow-hidden truncate whitespace-nowrap break-words text-left text-[14px] leading-[20px] op50",style:{"-webkit-line-clamp":"1","border-spacing":"0px","-webkit-box-orient":"vertical"}},je=M({__name:"SocialFacebook",props:{card:{}},setup(b){return(i,c)=>(o(),n("div",Ae,[t("div",{class:"h-[274px] border border-b-0 border-base bg-cover bg-center bg-no-repeat",style:B({backgroundImage:`url(${JSON.stringify(i.card.image)})`})},null,4),t("div",Ie,[t("div",Re,h(i.card.url),1),t("div",Be,[t("div",Le,h(i.card.title),1),t("div",Fe,h(i.card.description),1)])])]))}}),De={class:"max-w-[438px] min-w-[438px] of-hidden border border-base rounded-[16px] bg-base -outline-offset-1",style:{"font-family":"TwitterChirp, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif"}},Ve={class:"break-words border-base p-[0.75em] antialiased",flex:"~ col justify-center gap-[2px]"},Ee={class:"overflow-hidden truncate whitespace-nowrap text-[15px] leading-[20px] lowercase op50"},Ge={class:"m-0 truncate text-[15px] font-semibold leading-[20px]"},Ue={class:"line-clamp-2 select-none overflow-hidden break-words text-left text-[15px] leading-[20px] op50"},ze=M({__name:"SocialTwitter",props:{tags:{}},setup(b){const i=b,c=S(()=>P(i.tags,{title:[{tag:"title"}],image:[{tag:"meta",name:"twitter:image"},{tag:"meta",name:"og:image"}],imageAlt:[{tag:"meta",name:"twitter:image:alt"}],description:[{tag:"meta",name:"twitter:description"},{tag:"meta",name:"description"}],favicon:[{tag:"link",name:"icon"}]})),l=S(()=>c.value.image?i.tags.find(m=>m.tag==="meta"&&m.name==="twitter:card")?.value||"summary_large_image":"summary");return(m,x)=>(o(),n("div",De,[t("div",{class:N(["cursor-pointer overflow-hidden leading-[1.3em]",e(l)==="summary_large_image"?"":"flex"]),hover:"bg-[#88888805]"},[e(l)==="summary_large_image"?(o(),n("div",{key:0,class:"h-[220px] border-b border-base bg-cover bg-center bg-no-repeat",style:B({backgroundImage:`url(${JSON.stringify(e(c).image)})`})},null,4)):(o(),n("div",{key:1,class:"h-[129px] w-[129px] flex-none border-r border-base bg-cover bg-center bg-no-repeat",style:B({backgroundImage:`url(${JSON.stringify(e(c).image)})`})},null,4)),t("div",Ve,[t("div",Ee,h(e(c).url),1),t("div",Ge,h(e(c).title),1),t("div",Ue,h(e(c).description),1)])],2)]))}}),Je={class:"max-w-[520px] min-w-[520px] cursor-pointer overflow-hidden border border-base rounded-[2px] shadow-md bg-base"},Pe={class:"break-words p-[10px] antialiased"},He={class:"block h-auto max-h-[50px] border-separate select-none break-words text-left",style:{"border-spacing":"0px"}},Ke={class:"pb-[2px] text-[16px] font-semibold leading-[24px]"},We={class:"overflow-hidden truncate whitespace-nowrap text-xs font-normal uppercase op85"},qe=M({__name:"SocialLinkedin",props:{card:{}},setup(b){return(i,c)=>(o(),n("div",Je,[t("div",{class:"h-[270px] border-b border-base bg-cover bg-center bg-no-repeat",style:B({backgroundImage:`url(${JSON.stringify(i.card.image)})`})},null,4),t("div",Pe,[t("div",He,[t("div",Ke,h(i.card.title),1),t("div",We,h(i.card.url),1)])])]))}}),Ye={"h-full":"","w-520":"",flex:"~ col"},Xe={flex:"~ wrap","w-full":"","flex-none":""},Ze=["onClick"],Qe=t("div",{border:"b base","flex-auto":""},null,-1),et={flex:"~ items-center justify-center","flex-auto":"",p4:"","n-panel-grids":""},tt={key:0},ot={key:1},nt={key:2},at=M({__name:"SocialPreviewGroup",props:{tags:{}},setup(b){const i=b,c=["twitter","facebook","linkedin"],l=A(c[0]),m=S(()=>P(i.tags,{title:[{tag:"title"}],image:[{tag:"meta",name:"og:image"}],imageAlt:[{tag:"meta",name:"og:image:alt"}],description:[{tag:"meta",name:"og:description"},{tag:"meta",name:"description"}],favicon:[{tag:"link",name:"icon"}]}));return(x,y)=>{const _=je,a=ze,p=qe;return o(),n("div",Ye,[t("div",Xe,[(o(),n(T,null,R(c,(v,u)=>t("button",{key:u,px4:"",py2:"",border:"r base",hover:"bg-active",class:N(v===e(l)?"":"border-b"),onClick:C=>l.value=v},[t("div",{class:N(v===e(l)?"":"op30"),capitalize:""},h(v),3)],10,Ze)),64)),Qe]),t("div",et,[e(l)==="facebook"?(o(),n("div",tt,[d(_,{card:e(m)},null,8,["card"])])):e(l)==="twitter"?(o(),n("div",ot,[d(a,{tags:x.tags},null,8,["tags"])])):e(l)==="linkedin"?(o(),n("div",nt,[d(p,{card:e(m)},null,8,["card"])])):$("",!0)])])}}}),st={class:"markdown-body"},rt=ae('<h1>Open Graph</h1><p>Nuxt provides several different ways to manage your meta tags using <a href="https://unhead.harlanzw.com/" target="_blank" rel="noopener"><code>unhead</code></a>. Improve your Nuxt app’s SEO with powerful head config, composables and components.</p><p><a href="https://nuxt.com/docs/getting-started/seo-meta" target="_blank" rel="noopener">Learn more on the documentation</a></p><hr><p>You can also find how open graph specs are defined in:</p><ul><li><a href="https://ogp.me/" target="_blank" rel="noopener">The Open Graph protocol</a></li><li><a href="https://developer.twitter.com/en/docs/twitter-for-websites/cards/guides/getting-started" target="_blank" rel="noopener">Twitter Cards</a></li></ul>',6),it=[rt],ct={__name:"open-graph",setup(b,{expose:i}){return i({frontmatter:{}}),(l,m)=>(o(),n("div",st,it))}},lt={flex:"~","h-full":"","w-full":"","of-hidden":""},dt={"h-full":"","flex-auto":"","of-auto":""},pt={"flex-none":"",flex:"~ gap2 items-center"},mt={flex:"~ col"},ut={key:0,"x-divider":""},gt={key:1,"x-divider":""},ht={mr2:"",px4:"",py2:""},$t=M({__name:"open-graph",setup(b){const i=A(0),c=se(),l=re(async()=>(i.value,(await c.value?.resolveTags()).map(r=>{const f=r.props||{};return r.tag==="htmlAttrs"&&f.lang?{tag:"html",name:"lang",value:f.lang}:f.charset?{tag:"meta",name:"charset",value:f.charset}:{tag:r.tag,name:f.property??f.name??f.rel??r.tag,value:f.content??f.href??r.textContent??JSON.stringify(f)}})),[]),m=A(!0);function x(){i.value+=1}const y=ie(),_=ce(),a=A(""),p=le(),v=U();async function u(){a.value!==_.value.path&&y.value.push(a.value||"/")}const C=S(()=>a.value===_.value.path?[]:y.value.resolve(a.value||"/").matched),O=S(()=>{const s=p.value.find(r=>r.path===_.value?.matched?.[0]?.path);return s?.file||s?.meta?.file});function L(s){return W.find(r=>r.name===s.name)?.docs}return G(_).toBeTruthy().then(s=>{a.value=s.path}),G(y).toBeTruthy().then(s=>{s.afterEach(()=>{de(()=>{a.value=_.value.path,setTimeout(x,200),setTimeout(x,800)})})}),(s,r)=>{const f=ge,F=J,q=he,E=H,Y=z,X=K,Z=Oe,Q=at,ee=ct,te=fe,j=pe("tooltip");return o(),n(T,null,[t("div",lt,[t("div",dt,[d(q,null,{search:g(()=>[d(f,{modelValue:e(a),"onUpdate:modelValue":r[0]||(r[0]=w=>me(a)?a.value=w:null),placeholder:"Route",icon:"carbon-direction-right-01 scale-y--100",n:"primary","flex-auto":"","font-mono":"",class:N(["px-5 py-2",e(_)?.path===e(a)?"":e(C).length?"text-green":"text-orange"]),onKeydown:ue(u,["enter"])},null,8,["modelValue","class","onKeydown"])]),actions:g(()=>[t("div",pt,[e(O)?V((o(),I(F,{key:0,"text-lg":"",border:!1,icon:"carbon:launch",title:"Open file in editor",onClick:r[1]||(r[1]=w=>e(v)(e(O)))},null,512)),[[j,"Open file in editor"]]):$("",!0),V(d(F,{"text-lg":"",border:!1,icon:"carbon:reset",title:"Refresh Data",onClick:x},null,512),[[j,"Refresh Data"]]),V(d(F,{"text-lg":"",border:!1,icon:e(m)?"carbon:side-panel-open":"carbon:open-panel-right",title:"Toggle Preview",onClick:r[2]||(r[2]=w=>m.value=!e(m))},null,8,["icon"]),[[j,"Toggle Preview"]])])]),_:1}),t("div",mt,[d(X,{text:"Tags",icon:"carbon:tag-group"},{default:g(()=>[d(Y,{grid:"~ cols-[max-content_1fr]","items-center":"","justify-between":"","of-hidden":""},{default:g(()=>[(o(!0),n(T,null,R(e(l),(w,D)=>(o(),n(T,{key:D},[D?(o(),n("div",ut)):$("",!0),D?(o(),n("div",gt)):$("",!0),t("div",ht,[d(E,{op50:"",href:L(w),target:"_blank",n:"primary"},{default:g(()=>[k(h(w.name),1)]),_:2},1032,["href"])]),d(E,{href:w.value.match(/^https?:\/\//)?w.value:void 0,target:"_blank","w-full":"",p2:"","font-mono":"",n:"primary"},{default:g(()=>[k(h(w.value),1)]),_:2},1032,["href"])],64))),128))]),_:1})]),_:1}),d(Z,{tags:e(l),"matched-route-filepath":e(O)},null,8,["tags","matched-route-filepath"])])]),e(m)&&e(l)?.length?(o(),I(Q,{key:0,tags:e(l),border:"l base","w-540px":"","flex-none":""},null,8,["tags"])):$("",!0)]),d(te,null,{default:g(()=>[d(ee)]),_:1})],64)}}});export{$t as default};
@@ -1 +0,0 @@
1
- import{d as I,r as E,a as R,am as U,f as t,o as n,m as s,k as e,t as w,h as v,j as k,b8 as O,F as h,n as T,p as y,i as p,v as P,G as L,W as M,_ as G,a8 as H,b9 as j,aW as X,aX as Y,a9 as Z,aj as q,aY as J,aZ as A,av as Q,l as ee,ac as te,K as ne,L as oe}from"./entry.9effa704.js";import{_ as D}from"./NBadge.532c6829.js";import{_ as F}from"./FilepathItem.vue.66158bcd.js";import{_ as ae}from"./NSectionBlock.43816001.js";import{_ as se}from"./LaunchPage.vue.20d8d836.js";import{_ as re}from"./HelpFab.vue.074157ff.js";import"./NIconTitle.vue.5caf9fc5.js";import"./NMarkdown.vue.52b3ce56.js";import"./client.ab169146.js";const le={block:"","cursor-pointer":""},ie={p2:""},ue=["onSubmit"],ce=e("div",{px2:"","text-sm":"",op50:""}," Fill params and navigate: ",-1),de={flex:"~","items-center":"",p2:"","text-sm":"","font-mono":""},pe={key:1},_e=I({__name:"RoutePathItem",props:{route:{}},emits:["navigate"],setup(V,{emit:d}){const i=V,_=E([]),m=R(()=>{const u=b(i.route.path);return _.value=Array.from({length:u.length},()=>""),u});function b(u){return u.split(/(:\w+[\?\*]?(?:\(\))?)/).filter(Boolean).map(c=>c[0]===":"?c.replace(/\(\)$/,"?"):c)}const $=R(()=>m.value.map((u,c)=>u[0]===":"?_.value[c]:u).join("").replace(/\/+/g,"/")),r=R(()=>i.route.path.includes(":"));function a(){d("navigate",$.value)}return(u,c)=>{const N=M,o=G,l=U("VDropdown");return t(r)?(n(),v(l,{key:1},{popper:k(({hide:f})=>[e("div",ie,[e("form",{flex:"~ col",onSubmit:O(()=>{a(),f()},["prevent"])},[t(r)?(n(),s(h,{key:0},[ce,e("div",de,[(n(!0),s(h,null,T(t(m),(g,x)=>(n(),s(h,{key:x},[g[0]===":"?(n(),v(N,{key:0,modelValue:t(_)[x],"onUpdate:modelValue":B=>t(_)[x]=B,"w-20":"","n-sm":"",placeholder:g.slice(1)},null,8,["modelValue","onUpdate:modelValue","placeholder"])):(n(),s("span",pe,w(g),1))],64))),128))])],64)):y("",!0),p(o,{block:"",n:"primary"},{default:k(()=>[P(" Navigate ")]),_:1})],40,ue)])]),default:k(()=>[e("code",le,[(n(!0),s(h,null,T(t(m),(f,g)=>(n(),s("span",{key:g,class:L(f[0]===":"?"text-gray border border-dashed rounded border-gray:50 px1":"")},w(f[0]===":"?f.slice(1):f),3))),128))])]),_:1})):(n(),s("button",{key:0,onClick:a},[e("code",null,w(u.route.path),1)]))}}}),he={"w-full":""},me=e("thead",{border:"b base"},[e("tr",null,[e("th",{"text-left":""}),e("th",{"text-left":""}," Route Path "),e("th",{"text-left":""}," Name "),e("th",{"text-left":""}," Middleware "),e("th",null," Layout ")])],-1),fe={"w-20":"","pr-1":""},ge={flex:"","items-center":"","justify-end":""},ve={"text-sm":""},ye={flex:"inline gap3","items-center":""},be={op0:"","group-hover:op100":"",flex:"~ gap1"},xe=["onClick"],ke=e("div",{"i-carbon-script-reference":""},null,-1),we=[ke],$e={"w-0":"","ws-nowrap":"","pr-1":"","text-left":"","text-sm":"","font-mono":"",op50:""},Ne={"w-0":"","ws-nowrap":"","pr-1":"","text-center":"","text-sm":"","font-mono":"",op50:""},Ce={"w-0":"","ws-nowrap":"","text-center":"","text-sm":"","font-mono":""},Re={key:0},Ve=["onClick"],Pe=I({__name:"RoutesTable",props:{pages:{},layouts:{},matched:{},matchedPending:{}},emits:["navigate"],setup(V){const d=V,i=H(),_=j(),m=R(()=>[...d.pages].sort((r,a)=>r.path.localeCompare(a.path)));function b(r){const a=d.layouts.find(u=>u.name===r);a&&i(a.file)}function $(r){if(typeof r=="string")return _.value?.middleware.find(a=>a.name===r)?.path}return(r,a)=>{const u=D,c=_e,N=F;return n(),s("div",null,[e("table",he,[me,e("tbody",null,[(n(!0),s(h,null,T(t(m),o=>(n(),s("tr",{key:o.name,class:"group","h-7":"",border:"b dashed transparent hover:base"},[e("td",fe,[e("div",ge,[r.matched.find(l=>l.name===o.name)?(n(),v(u,{key:0,n:"green",title:"active",textContent:"active"})):y("",!0),r.matchedPending.find(l=>l.name===o.name)?(n(),v(u,{key:1,n:"teal",title:"next",textContent:"next"})):y("",!0)])]),e("td",ve,[e("div",ye,[p(c,{route:o,class:L(r.matched.find(l=>l.name===o.name)?"text-primary":r.matchedPending.find(l=>l.name===o.name)?"text-teal":""),onNavigate:a[0]||(a[0]=l=>r.$emit("navigate",l))},null,8,["route","class"]),e("div",be,[o.file||o.meta?.file?(n(),s("button",{key:0,"text-sm":"",op40:"",hover:"op100 text-primary",title:"Open in editor",onClick:l=>t(i)(o.file||o.meta?.file)},we,8,xe)):y("",!0)])])]),e("td",$e,w(o.name),1),e("td",Ne,[p(N,{filepath:$(o.meta.middleware),override:`${o.meta.middleware||"-"}`},null,8,["filepath","override"])]),e("td",Ce,[o.meta.layout===!1?(n(),s("span",Re,"-")):o.meta.layout?(n(),s("button",{key:1,onClick:l=>b(o.meta.layout)},w(o.meta.layout),9,Ve)):(n(),s("button",{key:2,"text-sm":"",op15:"",onClick:a[1]||(a[1]=l=>b("default"))}," (default) "))])]))),128))])])])}}}),Te={class:"markdown-body"},Be=e("h1",null,"Pages",-1),Ie=e("p",null,[P("Nuxt provides a file-based routing to create routes within your web application using Vue Router under the hood. Pages are Vue components and can have any valid extension that Nuxt supports (by default .vue, .js, .jsx, .mjs, .ts or .tsx). Nuxt will automatically create a route for every page in your "),e("code",null,"~/pages/"),P(" directory.")],-1),Le=e("p",null,[e("a",{href:"https://nuxt.com/docs/getting-started/routing",target:"_blank",rel:"noopener"},"Learn more in the documentation")],-1),Ae=e("hr",null,null,-1),Ee=e("h1",null,"Middlewares",-1),Me=e("p",null,"Nuxt provides a customizable route middleware framework that can be used throughout the application. This is ideal for extracting code that needs to run before navigating to a particular route.",-1),je=e("p",null,[e("a",{href:"https://nuxt.com/docs/guide/directory-structure/middleware",target:"_blank",rel:"noopener"},"Learn more in the documentation")],-1),De=[Be,Ie,Le,Ae,Ee,Me,je],Fe={__name:"pages",setup(V,{expose:d}){return d({frontmatter:{}}),(_,m)=>(n(),s("div",Te,De))}},Se={key:0,"h-full":"","of-auto":""},ze={border:"b base",flex:"~ col gap1",px4:"",py3:"","n-navbar-glass":""},Ke=e("span",{op50:""},"Navigate from ",-1),We={"font-mono":""},Ue=e("span",{op50:""}," to ",-1),Oe={key:1,op50:""},Ge=e("span",null,[P("Press "),e("b",{"font-bold":""},"Enter"),P(" to navigate")],-1),He={key:0,"text-orange":"",op75:""},Xe={key:1,op50:""},Ye={"w-full":""},Ze=e("thead",{border:"b base","h-7":""},[e("tr",null,[e("th",{"text-left":""}," Name "),e("th",{"text-left":""}," Path ")])],-1),qe={mr1:""},lt=I({__name:"pages",setup(V){const d=X(),i=Y(),_=Z(),m=j(),b=q(),$=J(),r=R(()=>m.value?.middleware||[]),a=E("");A(i).toBeTruthy().then(o=>{a.value=o.path}),A(d).toBeTruthy().then(o=>{o.afterEach(()=>{Q(()=>{a.value=i.value.path})})});async function u(){a.value!==i.value.path&&d.value.push(a.value||"/")}const c=R(()=>a.value===i.value.path?[]:d.value.resolve(a.value||"/").matched);function N(o){d.value.push(o)}return(o,l)=>{const f=M,g=Pe,x=ae,B=D,S=F,z=se,K=Fe,W=re;return n(),s(h,null,[t(_)?.pages&&t(d)?(n(),s("div",Se,[e("div",ze,[e("div",null,[t(i).path!==t(a)?(n(),s(h,{key:0},[Ke,e("span",We,w(t(i).path),1),Ue],64)):(n(),s("span",Oe,"Current route"))]),p(f,{modelValue:t(a),"onUpdate:modelValue":l[0]||(l[0]=C=>ee(a)?a.value=C:null),"font-mono":"",icon:"carbon-direction-right-01 scale-y--100",class:L(t(i).path===t(a)?"":t(c).length?"text-green":"text-orange"),onKeydown:te(u,["enter"])},null,8,["modelValue","class","onKeydown"]),e("div",null,[t(i).path!==t(a)?(n(),s(h,{key:0},[Ge,t(c).length?y("",!0):(n(),s("span",He," (no match)"))],64)):(n(),s("span",Xe,"Edit path above to navigate"))])]),t(c).length?(n(),v(x,{key:0,icon:"carbon-tree-view",text:"Matched Routes",padding:!1},{default:k(()=>[p(g,{pages:t(c),layouts:t(b)||[],matched:[],"matched-pending":t(c),onNavigate:N},null,8,["pages","layouts","matched-pending"])]),_:1})):y("",!0),p(x,{icon:"carbon-tree-view-alt",text:"All Routes",description:`${t($).length} routes registered in your application`,padding:"pr5"},{default:k(()=>[p(g,{pages:t($),layouts:t(b)||[],matched:t(i).matched,"matched-pending":t(c),onNavigate:N},null,8,["pages","layouts","matched","matched-pending"])]),_:1},8,["description"]),t(r).length?(n(),v(x,{key:1,icon:"carbon:ibm-watson-studio",text:"Middleware",description:`${t(r).length} middleware registered in your application`,padding:"px13"},{default:k(()=>[e("table",Ye,[Ze,(n(!0),s(h,null,T(t(r),C=>(n(),s("tr",{key:C.path,"h-7":""},[e("td",null,[e("span",qe,w(C.name),1),C.global?(n(),v(B,{key:0,n:"green",title:"Registered at runtime as a global component",textContent:"global"})):y("",!0)]),e("td",null,[p(S,{filepath:C.path},null,8,["filepath"])])]))),128))])]),_:1},8,["description"])):y("",!0)])):(n(),v(z,{key:1,icon:"carbon-tree-view-alt",name:"wizard-pages",title:"Nuxt Routing",description:"Create `./pages/index.vue` to enable routing",actions:[{label:"Learn more",src:"https://nuxt.com/docs/getting-started/routing",attrs:{n:"primary"}},{label:"Enable Routing",async handle(){return("rpc"in o?o.rpc:t(ne)).runWizard(await("ensureDevAuthToken"in o?o.ensureDevAuthToken:t(oe))(),"enablePages")}}]},null,8,["actions"])),p(W,null,{default:k(()=>[p(K)]),_:1})],64)}}});export{lt as default};
@@ -1,4 +0,0 @@
1
- const e=Object.freeze({information_for_contributors:["This file has been converted from https://github.com/jeff-hykin/better-shell-syntax/blob/master/autogenerated/shell.tmLanguage.json","If you want to provide a fix or improvement, please create a pull request against the original repository.","Once accepted there, we are happy to receive an update request."],version:"https://github.com/jeff-hykin/better-shell-syntax/commit/ce62ea59e8e522f8a07d8d8a2d1f992c6c600b91",name:"shellscript",scopeName:"source.shell",patterns:[{include:"#initial_context"}],repository:{alias_statement:{begin:"(alias)[ \\t]*+[ \\t]*+(?:((?<=^|;|&|[ \\t])(?:readonly|declare|typeset|export|local)(?=[ \\t]|;|&|$))[ \\t]*+)?((?<!\\w)[a-zA-Z_0-9-]+(?!\\w))(?:(\\[)((?:(?:(?:\\$)?(?<!\\w)[a-zA-Z_0-9-]+(?!\\w)|@)|\\*))(\\]))?(?:(?:(\\=)|(\\+\\=))|(\\-\\=))",end:"(?:(?= |\\t|$)|(?:(?:(?:(?:(;)|(&&))|(\\|\\|))|(&))|\\n))",beginCaptures:{1:{name:"storage.type.alias.shell"},2:{name:"storage.modifier.$2.shell"},3:{name:"variable.other.assignment.shell"},4:{name:"punctuation.definition.array.access.shell"},5:{name:"variable.other.assignment.shell"},6:{name:"punctuation.definition.array.access.shell"},7:{name:"keyword.operator.assignment.shell"},8:{name:"keyword.operator.assignment.compound.shell"},9:{name:"keyword.operator.assignment.compound.shell"}},endCaptures:{1:{name:"punctuation.terminator.statement.semicolon.shell"},2:{name:"punctuation.separator.statement.and.shell"},3:{name:"punctuation.separator.statement.or.shell"},4:{name:"punctuation.separator.statement.background.shell"}},name:"meta.expression.assignment.shell",patterns:[{include:"#normal_statement_context"}]},argument:{begin:"[ \\t]++(?!(?:&|\\||\\(|\\[|#|\\n|$|;))",end:"(?= |\\t|;|\\||&|$|\\n|\\)|\\`)",beginCaptures:{},endCaptures:{},name:"meta.argument.shell",patterns:[{include:"#argument_context"},{include:"#line_continuation"}]},argument_context:{patterns:[{match:`[ \\t]*+([^
2
- '&;<>\\(\\)\\$\`\\\\"\\|]+(?!>))`,captures:{1:{name:"string.unquoted.argument.shell",patterns:[{match:"\\*",name:"variable.language.special.wildcard.shell"},{include:"#variable"},{include:"#numeric_literal"},{match:"(?<!\\w)(\\b(?:true|false)\\b)(?!\\w)",captures:{1:{name:"constant.language.$1.shell"}}}]}}},{include:"#normal_statement_context"}]},assignment:{patterns:[{begin:"[ \\t]*+(?:((?<=^|;|&|[ \\t])(?:readonly|declare|typeset|export|local)(?=[ \\t]|;|&|$))[ \\t]*+)?((?<!\\w)[a-zA-Z_0-9-]+(?!\\w))(?:(\\[)((?:(?:(?:\\$)?(?<!\\w)[a-zA-Z_0-9-]+(?!\\w)|@)|\\*))(\\]))?(?:(?:(\\=)|(\\+\\=))|(\\-\\=))[ \\t]*+(\\()",end:"\\)",beginCaptures:{1:{name:"storage.modifier.$1.shell"},2:{name:"variable.other.assignment.shell"},3:{name:"punctuation.definition.array.access.shell"},4:{name:"variable.other.assignment.shell"},5:{name:"punctuation.definition.array.access.shell"},6:{name:"keyword.operator.assignment.shell"},7:{name:"keyword.operator.assignment.compound.shell"},8:{name:"keyword.operator.assignment.compound.shell"},9:{name:"punctuation.shell"}},endCaptures:{0:{name:"punctuation.shell"}},name:"meta.expression.assignment.shell",patterns:[{include:"#comment"},{include:"#argument_context"}]},{begin:"[ \\t]*+(?:((?<=^|;|&|[ \\t])(?:readonly|declare|typeset|export|local)(?=[ \\t]|;|&|$))[ \\t]*+)?((?<!\\w)[a-zA-Z_0-9-]+(?!\\w))(?:(\\[)((?:(?:(?:\\$)?(?<!\\w)[a-zA-Z_0-9-]+(?!\\w)|@)|\\*))(\\]))?(?:(?:(\\=)|(\\+\\=))|(\\-\\=))",end:"(?:(?= |\\t|$)|(?:(?:(?:(?:(;)|(&&))|(\\|\\|))|(&))|\\n))",beginCaptures:{1:{name:"storage.modifier.$1.shell"},2:{name:"variable.other.assignment.shell"},3:{name:"punctuation.definition.array.access.shell"},4:{name:"variable.other.assignment.shell"},5:{name:"punctuation.definition.array.access.shell"},6:{name:"keyword.operator.assignment.shell"},7:{name:"keyword.operator.assignment.compound.shell"},8:{name:"keyword.operator.assignment.compound.shell"}},endCaptures:{1:{name:"punctuation.terminator.statement.semicolon.shell"},2:{name:"punctuation.separator.statement.and.shell"},3:{name:"punctuation.separator.statement.or.shell"},4:{name:"punctuation.separator.statement.background.shell"}},name:"meta.expression.assignment.shell",patterns:[{include:"#comment"},{include:"#argument_context"}]}]},basic_command_name:{match:`(?!(?:!|&|\\||\\(|\\)|\\{|\\[|<|>|#|\\n|$|;|[ \\t]))(?!foreach\\b(?!\\/)|select\\b(?!\\/)|repeat\\b(?!\\/)|until\\b(?!\\/)|while\\b(?!\\/)|case\\b(?!\\/)|done\\b(?!\\/)|elif\\b(?!\\/)|else\\b(?!\\/)|esac\\b(?!\\/)|then\\b(?!\\/)|for\\b(?!\\/)|end\\b(?!\\/)|in\\b(?!\\/)|fi\\b(?!\\/)|do\\b(?!\\/)|if\\b(?!\\/))(?:((?<=^|;|&|[ \\t])(?:readonly|declare|typeset|export|local)(?=[ \\t]|;|&|$))|((?!"|'|\\\\\\n?$)[^!'" \\t\\n\\r]+?))(?:(?= |\\t)|(?=;|\\||&|\\n|\\)|\\\`|\\{|\\}|[ \\t]*#|\\])(?<!\\\\))`,captures:{1:{name:"storage.modifier.$1.shell"},2:{name:"entity.name.function.call.shell entity.name.command.shell",patterns:[{match:"(?<!\\w)(?:continue|return|break)(?!\\w)",name:"keyword.control.$0.shell"},{match:"(?<!\\w)(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|:|\\.)(?!\\/)(?!\\w)",name:"support.function.builtin.shell"},{include:"#variable"}]}},name:"meta.statement.command.name.basic.shell"},block_comment:{begin:"\\s*+(\\/\\*)",end:"\\*\\/",beginCaptures:{1:{name:"punctuation.definition.comment.begin.shell"}},endCaptures:{0:{name:"punctuation.definition.comment.end.shell"}},name:"comment.block.shell"},boolean:{match:"\\b(?:true|false)\\b",name:"constant.language.$0.shell"},"case-clause":{patterns:[{begin:"(?=\\S)",end:";;",endCaptures:{0:{name:"punctuation.terminator.case-clause.shell"}},name:"meta.scope.case-clause.shell",patterns:[{begin:"\\(|(?=\\S)",beginCaptures:{0:{name:"punctuation.definition.case-pattern.shell"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.case-pattern.shell"}},name:"meta.scope.case-pattern.shell",patterns:[{match:"\\|",name:"punctuation.separator.pipe-sign.shell"},{include:"#string"},{include:"#variable"},{include:"#interpolation"},{include:"#pathname"}]},{begin:"(?<=\\))",end:"(?=;;)",name:"meta.scope.case-clause-body.shell",patterns:[{include:"#initial_context"}]}]}]},comment:{match:"(?:^|[ \\t]++)(?:((#!).*)|((#).*))",captures:{1:{name:"comment.line.number-sign.shell meta.shebang.shell"},2:{name:"punctuation.definition.comment.shebang.shell"},3:{name:"comment.line.number-sign.shell"},4:{name:"punctuation.definition.comment.shell"}}},comments:{patterns:[{include:"#block_comment"},{include:"#line_comment"}]},"compound-command":{patterns:[{begin:"\\[{1,2}",beginCaptures:{0:{name:"punctuation.definition.logical-expression.shell"}},end:"\\]{1,2}",endCaptures:{0:{name:"punctuation.definition.logical-expression.shell"}},name:"meta.scope.logical-expression.shell",patterns:[{include:"#logical-expression"},{include:"#initial_context"}]},{begin:"\\({2}",beginCaptures:{0:{name:"punctuation.definition.string.begin.shell"}},end:"\\){2}",endCaptures:{0:{name:"punctuation.definition.string.end.shell"}},name:"string.other.math.shell",patterns:[{include:"#math"}]},{begin:"\\(",beginCaptures:{0:{name:"punctuation.definition.subshell.shell"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.subshell.shell"}},name:"meta.scope.subshell.shell",patterns:[{include:"#initial_context"}]},{begin:"(?<=\\s|^){(?=\\s|$)",beginCaptures:{0:{name:"punctuation.definition.group.shell"}},end:"(?<=^|;)\\s*(})",endCaptures:{1:{name:"punctuation.definition.group.shell"}},name:"meta.scope.group.shell",patterns:[{include:"#initial_context"}]}]},continuation_of_double_quoted_command_name:{begin:'\\G(?<=")',end:'"',beginCaptures:{},endCaptures:{0:{name:"string.quoted.double.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell"}},contentName:"meta.statement.command.name.continuation string.quoted.double entity.name.function.call entity.name.command",patterns:[{match:'\\\\[\\$\\n`"\\\\]',name:"constant.character.escape.shell"},{include:"#variable"},{include:"#interpolation"}]},continuation_of_single_quoted_command_name:{begin:"\\G(?<=')",end:"'",beginCaptures:{},endCaptures:{0:{name:"string.quoted.single.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell"}},contentName:"meta.statement.command.name.continuation string.quoted.single entity.name.function.call entity.name.command"},custom_command_names:{patterns:[]},custom_commands:{patterns:[]},double_quote_context:{patterns:[{match:'\\\\[\\$`"\\\\\\n]',name:"constant.character.escape.shell"},{include:"#variable"},{include:"#interpolation"}]},double_quote_escape_char:{match:'\\\\[\\$`"\\\\\\n]',name:"constant.character.escape.shell"},function_definition:{begin:"[ \\t]*+(?:(\\bfunction\\b)[ \\t]*+([^ \\t\\n\\r\\(\\)=]+)(?:(\\()[ \\t]*+(\\)))?|([^ \\t\\n\\r\\(\\)=]+)[ \\t]*+(\\()[ \\t]*+(\\)))",end:"(?<=\\}|\\))",beginCaptures:{1:{name:"storage.type.function.shell"},2:{name:"entity.name.function.shell"},3:{name:"punctuation.definition.arguments.shell"},4:{name:"punctuation.definition.arguments.shell"},5:{name:"entity.name.function.shell"},6:{name:"punctuation.definition.arguments.shell"},7:{name:"punctuation.definition.arguments.shell"}},endCaptures:{},name:"meta.function.shell",patterns:[{match:"\\G(?:\\t| |\\n)"},{begin:"\\{",end:"\\}",beginCaptures:{0:{name:"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},endCaptures:{0:{name:"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},name:"meta.function.body.shell",patterns:[{include:"#initial_context"}]},{begin:"\\(",end:"\\)",beginCaptures:{0:{name:"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},endCaptures:{0:{name:"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},name:"meta.function.body.shell",patterns:[{include:"#initial_context"}]}],applyEndPatternLast:1},heredoc:{patterns:[{begin:`((?<!<)<<-)[ \\t]*+("|')[ \\t]*+((?<!\\w)[a-zA-Z_0-9-]+(?!\\w))(?=\\s|;|&|<|"|')(?:\\2)(.*)`,end:"^\\t*(?:\\3)(?=\\s|;|&|$)",beginCaptures:{1:{name:"keyword.operator.heredoc.shell"},2:{},3:{name:"punctuation.definition.string.heredoc.shell"},4:{patterns:[{include:"#normal_statement_context"}]}},endCaptures:{0:{name:"punctuation.definition.string.heredoc.shell"}},contentName:"string.quoted.heredoc.indent",patterns:[]},{begin:`((?<!<)<<(?!<))[ \\t]*+("|')[ \\t]*+((?<!\\w)[a-zA-Z_0-9-]+(?!\\w))(?=\\s|;|&|<|"|')(?:\\2)(.*)`,end:"^(?:\\3)(?=\\s|;|&|$)",beginCaptures:{1:{name:"keyword.operator.heredoc.shell"},2:{},3:{name:"punctuation.definition.string.heredoc.shell"},4:{patterns:[{include:"#normal_statement_context"}]}},endCaptures:{0:{name:"punctuation.definition.string.heredoc.shell"}},contentName:"string.quoted.heredoc.no-indent",patterns:[]},{begin:`((?<!<)<<-)[ \\t]*+((?<!\\w)[a-zA-Z_0-9-]+(?!\\w))(?=\\s|;|&|<|"|')(.*)`,end:"^\\t*(?:\\2)(?=\\s|;|&|$)",beginCaptures:{1:{name:"keyword.operator.heredoc.shell"},2:{name:"punctuation.definition.string.heredoc.shell"},3:{patterns:[{include:"#normal_statement_context"}]}},endCaptures:{0:{name:"punctuation.definition.string.heredoc.shell"}},contentName:"string.unquoted.heredoc.indent",patterns:[{include:"#double_quote_escape_char"},{include:"#variable"},{include:"#interpolation"}]},{begin:`((?<!<)<<(?!<))[ \\t]*+((?<!\\w)[a-zA-Z_0-9-]+(?!\\w))(?=\\s|;|&|<|"|')(.*)`,end:"^(?:\\2)(?=\\s|;|&|$)",beginCaptures:{1:{name:"keyword.operator.heredoc.shell"},2:{name:"punctuation.definition.string.heredoc.shell"},3:{patterns:[{include:"#normal_statement_context"}]}},endCaptures:{0:{name:"punctuation.definition.string.heredoc.shell"}},contentName:"string.unquoted.heredoc.no-indent",patterns:[{include:"#double_quote_escape_char"},{include:"#variable"},{include:"#interpolation"}]}]},herestring:{patterns:[{begin:"(<<<)\\s*(('))",beginCaptures:{1:{name:"keyword.operator.herestring.shell"},2:{name:"string.quoted.single.shell"},3:{name:"punctuation.definition.string.begin.shell"}},end:"(')",endCaptures:{0:{name:"string.quoted.single.shell"},1:{name:"punctuation.definition.string.end.shell"}},name:"meta.herestring.shell",contentName:"string.quoted.single.shell"},{begin:'(<<<)\\s*(("))',beginCaptures:{1:{name:"keyword.operator.herestring.shell"},2:{name:"string.quoted.double.shell"},3:{name:"punctuation.definition.string.begin.shell"}},end:'(")',endCaptures:{0:{name:"string.quoted.double.shell"},1:{name:"punctuation.definition.string.end.shell"}},name:"meta.herestring.shell",contentName:"string.quoted.double.shell",patterns:[{include:"#double_quote_context"}]},{captures:{1:{name:"keyword.operator.herestring.shell"},2:{name:"string.unquoted.herestring.shell",patterns:[{include:"#initial_context"}]}},match:"(<<<)\\s*(([^\\s)\\\\]|\\\\.)+)",name:"meta.herestring.shell"}]},initial_context:{patterns:[{include:"#comment"},{include:"#pipeline"},{include:"#normal_statement_seperator"},{include:"#logical_expression_double"},{include:"#logical_expression_single"},{include:"#misc_ranges"},{include:"#loop"},{include:"#function_definition"},{include:"#variable"},{include:"#interpolation"},{include:"#heredoc"},{include:"#herestring"},{include:"#redirection"},{include:"#pathname"},{include:"#keyword"},{include:"#alias_statement"},{include:"#normal_statement"},{include:"#string"},{include:"#support"}]},inline_comment:{match:"(\\/\\*)((?:[^\\*]|(?:\\*)++[^\\/])*+((?:\\*)++\\/))",captures:{1:{name:"comment.block.shell punctuation.definition.comment.begin.shell"},2:{name:"comment.block.shell"},3:{patterns:[{match:"\\*\\/",name:"comment.block.shell punctuation.definition.comment.end.shell"},{match:"\\*",name:"comment.block.shell"}]}}},interpolation:{patterns:[{begin:"\\$\\({2}",beginCaptures:{0:{name:"punctuation.definition.evaluation.arithmetic.begin.shell"}},end:"\\)\\s*\\)",endCaptures:{0:{name:"punctuation.definition.evaluation.arithmetic.end.shell"}},name:"string.other.math.shell",patterns:[{include:"#math"}]},{begin:"`",beginCaptures:{0:{name:"punctuation.definition.evaluation.backticks.shell"}},end:"`",endCaptures:{0:{name:"punctuation.definition.evaluation.backticks.shell"}},name:"string.interpolated.backtick.shell",patterns:[{match:"\\\\[`\\\\$]",name:"constant.character.escape.shell"},{begin:"(?<=\\W)(?=#)(?!#{)",beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.shell"}},end:"(?!\\G)",patterns:[{begin:"#",beginCaptures:{0:{name:"punctuation.definition.comment.shell"}},end:"(?=`)",name:"comment.line.number-sign.shell"}]},{include:"#initial_context"}]},{begin:"\\$\\(",beginCaptures:{0:{name:"punctuation.definition.evaluation.parens.begin.shell"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.evaluation.parens.end.shell"}},name:"string.interpolated.dollar.shell",patterns:[{include:"#initial_context"}]}]},keyword:{patterns:[{match:"(?<=^|;|&| |\\t)(?:continue|foreach|return|select|repeat|break|until|while|case|done|elif|else|esac|then|for|end|do|if|fi|in)(?= |\\t|;|&|$)",name:"keyword.control.$0.shell"}]},line_comment:{begin:"\\s*+(\\/\\/)",end:"(?<=\\n)(?<!\\\\\\n)",beginCaptures:{1:{name:"punctuation.definition.comment.shell"}},endCaptures:{},name:"comment.line.double-slash.shell",patterns:[{include:"#line_continuation_character"}]},line_continuation:{match:"\\\\(?=\\n)",name:"constant.character.escape.line-continuation.shell"},"logical-expression":{patterns:[{comment:"do we want a special rule for ( expr )?",match:"=[=~]?|!=?|<|>|&&|\\|\\|",name:"keyword.operator.logical.shell"},{match:"(?<!\\S)-(nt|ot|ef|eq|ne|l[te]|g[te]|[a-hknoprstuwxzOGLSN])\\b",name:"keyword.operator.logical.shell"}]},logical_expression_context:{patterns:[{include:"#regex_comparison"},{include:"#logical-expression"},{include:"#logical_expression_single"},{include:"#logical_expression_double"},{include:"#comment"},{include:"#boolean"},{include:"#redirect_number"},{include:"#numeric_literal"},{include:"#pipeline"},{include:"#normal_statement_seperator"},{include:"#string"},{include:"#variable"},{include:"#interpolation"},{include:"#heredoc"},{include:"#herestring"},{include:"#pathname"},{include:"#keyword"},{include:"#support"}]},logical_expression_double:{begin:"\\[\\[",end:"\\]\\]",beginCaptures:{0:{name:"punctuation.definition.logical-expression.shell"}},endCaptures:{0:{name:"punctuation.definition.logical-expression.shell"}},name:"meta.scope.logical-expression.shell",patterns:[{include:"#logical_expression_context"}]},logical_expression_single:{begin:"\\[",end:"\\]",beginCaptures:{0:{name:"punctuation.definition.logical-expression.shell"}},endCaptures:{0:{name:"punctuation.definition.logical-expression.shell"}},name:"meta.scope.logical-expression.shell",patterns:[{include:"#logical_expression_context"}]},loop:{patterns:[{begin:"(?<=^|;|&|\\s)(for)\\s+(?=\\({2})",beginCaptures:{1:{name:"keyword.control.shell"}},end:"(?<=^|;|&|\\s)done(?=\\s|;|&|$|\\))",endCaptures:{0:{name:"keyword.control.shell"}},name:"meta.scope.for-loop.shell",patterns:[{include:"#initial_context"}]},{begin:"(?<=^|;|&|\\s)(for)\\s+(.+?)\\s+(in)(?=\\s|;|&|$)",beginCaptures:{1:{name:"keyword.control.shell"},2:{name:"variable.other.loop.shell",patterns:[{include:"#string"}]},3:{name:"keyword.control.shell"}},end:"(?<=^|;|&|\\s)done(?=\\s|;|&|$|\\))",endCaptures:{0:{name:"keyword.control.shell"}},name:"meta.scope.for-in-loop.shell",patterns:[{include:"#initial_context"}]},{begin:"(?<=^|;|&|\\s)(while|until)(?=\\s|;|&|$)",beginCaptures:{1:{name:"keyword.control.shell"}},end:"(?<=^|;|&|\\s)done(?=\\s|;|&|$|\\))",endCaptures:{0:{name:"keyword.control.shell"}},name:"meta.scope.while-loop.shell",patterns:[{include:"#initial_context"}]},{begin:"(?<=^|;|&|\\s)(select)\\s+((?:[^\\s\\\\]|\\\\.)+)(?=\\s|;|&|$)",beginCaptures:{1:{name:"keyword.control.shell"},2:{name:"variable.other.loop.shell"}},end:"(?<=^|;|&|\\s)(done)(?=\\s|;|&|$|\\))",endCaptures:{1:{name:"keyword.control.shell"}},name:"meta.scope.select-block.shell",patterns:[{include:"#initial_context"}]},{begin:"(?<=^|;|&|\\s)case(?=\\s|;|&|$)",beginCaptures:{0:{name:"keyword.control.shell"}},end:"(?<=^|;|&|\\s)esac(?=\\s|;|&|$)",endCaptures:{0:{name:"keyword.control.shell"}},name:"meta.scope.case-block.shell",patterns:[{begin:"(?<=^|;|&|\\s)in(?=\\s|;|&|$)",beginCaptures:{0:{name:"keyword.control.shell"}},end:"(?<=^|;|&|\\s)(?=esac(\\s|;|&|$))",name:"meta.scope.case-body.shell",patterns:[{include:"#comment"},{include:"#case-clause"}]},{include:"#initial_context"}]},{begin:"(?<=^|;|&|\\s)if(?=\\s|;|&|$)",beginCaptures:{0:{name:"keyword.control.shell"}},end:"(?<=^|;|&|\\s)fi(?=\\s|;|&|$)",endCaptures:{0:{name:"keyword.control.shell"}},name:"meta.scope.if-block.shell",patterns:[{include:"#initial_context"}]}]},math:{patterns:[{include:"#variable"},{match:"\\+{1,2}|-{1,2}|!|~|\\*{1,2}|/|%|<[<=]?|>[>=]?|==|!=|^|\\|{1,2}|&{1,2}|\\?|\\:|,|=|[*/%+\\-&^|]=|<<=|>>=",name:"keyword.operator.arithmetic.shell"},{match:"0[xX][0-9A-Fa-f]+",name:"constant.numeric.hex.shell"},{match:"0\\d+",name:"constant.numeric.octal.shell"},{match:"\\d{1,2}#[0-9a-zA-Z@_]+",name:"constant.numeric.other.shell"},{match:"\\d+",name:"constant.numeric.integer.shell"}]},misc_ranges:{patterns:[{include:"#logical_expression_single"},{include:"#logical_expression_double"},{begin:"\\(\\(",end:"\\)\\)",beginCaptures:{0:{name:"punctuation.section.arithmetic.shell"}},endCaptures:{0:{name:"punctuation.section.arithmetic.shell"}},name:"meta.arithmetic.shell",patterns:[{include:"#math"}]},{begin:"(?<!=)\\(",end:"\\)",beginCaptures:{0:{name:"punctuation.definition.subshell"}},endCaptures:{0:{name:"punctuation.definition.subshell"}},name:"meta.scope.subshell",patterns:[{include:"#initial_context"}]},{begin:"(?<![^ \\t])({)",end:"}",beginCaptures:{1:{name:"punctuation.definition.group.shell"}},endCaptures:{0:{name:"punctuation.definition.group.shell"}},name:"meta.scope.group.shell",patterns:[{include:"#initial_context"}]}]},modifiers:{match:"(?<=^|;|&|[ \\t])(?:readonly|declare|typeset|export|local)(?=[ \\t]|;|&|$)",name:"storage.modifier.$0.shell"},normal_statement:{begin:"(?!^[ \\t]*+$)(?:(?<=^until | until |\\tuntil |^while | while |\\twhile |^elif | elif |\\telif |^else | else |\\telse |^then | then |\\tthen |^do | do |\\tdo |^if | if |\\tif )|(?<=(?:^|;|\\||&|!|\\(|\\{|\\`)))[ \\t]*+(?!nocorrect\\W|nocorrect\\$|function\\W|function\\$|foreach\\W|foreach\\$|repeat\\W|repeat\\$|logout\\W|logout\\$|coproc\\W|coproc\\$|select\\W|select\\$|while\\W|while\\$|pushd\\W|pushd\\$|until\\W|until\\$|case\\W|case\\$|done\\W|done\\$|elif\\W|elif\\$|else\\W|else\\$|esac\\W|esac\\$|popd\\W|popd\\$|then\\W|then\\$|time\\W|time\\$|for\\W|for\\$|end\\W|end\\$|fi\\W|fi\\$|do\\W|do\\$|in\\W|in\\$|if\\W|if\\$)",end:"(?=;|\\||&|\\n|\\)|\\`|\\{|\\}|[ \\t]*#|\\])(?<!\\\\)",beginCaptures:{},endCaptures:{},name:"meta.statement.shell",patterns:[{include:"#function_definition"},{include:"#assignment"},{begin:"[ \\t]*+(?!(?:!|&|\\||\\(|\\)|\\{|\\[|<|>|#|\\n|$|;|[ \\t]))(?!foreach\\b(?!\\/)|select\\b(?!\\/)|repeat\\b(?!\\/)|until\\b(?!\\/)|while\\b(?!\\/)|case\\b(?!\\/)|done\\b(?!\\/)|elif\\b(?!\\/)|else\\b(?!\\/)|esac\\b(?!\\/)|then\\b(?!\\/)|for\\b(?!\\/)|end\\b(?!\\/)|in\\b(?!\\/)|fi\\b(?!\\/)|do\\b(?!\\/)|if\\b(?!\\/))(?!\\\\\\n?$)",end:"(?=;|\\||&|\\n|\\)|\\`|\\{|\\}|[ \\t]*#|\\])(?<!\\\\)",beginCaptures:{},endCaptures:{},name:"meta.statement.command.shell",patterns:[{begin:"\\G",end:"(?= |\\t|;|\\||&|$|\\n|\\)|\\`)",beginCaptures:{},endCaptures:{},name:"meta.statement.command.name.shell",patterns:[{include:"#modifiers"},{match:"(?<!\\w)(?:continue|return|break)(?!\\w)",name:"entity.name.function.call.shell entity.name.command.shell keyword.control.$0.shell"},{match:"(?<!\\w)(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|:|\\.)(?!\\/)(?!\\w)",name:"entity.name.function.call.shell entity.name.command.shell support.function.builtin.shell"},{include:"#variable"},{match:`(?<=\\G|'|"|\\}|\\))([^ \\n\\t\\r"'=;&\\|\`\\)\\{]+)`,captures:{1:{name:"entity.name.function.call.shell entity.name.command.shell"}}},{begin:`(?:\\G|(?<! |\\t|;|\\||&|\\n|\\{|#))((?:\\$)?)((?:(")|(')))`,end:"(?<!\\G)(?<=(?:\\2))",beginCaptures:{1:{name:"meta.statement.command.name.quoted.shell punctuation.definition.string.shell entity.name.function.call.shell entity.name.command.shell"},2:{},3:{name:"meta.statement.command.name.quoted.shell string.quoted.double.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"},4:{name:"meta.statement.command.name.quoted.shell string.quoted.single.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"}},endCaptures:{},patterns:[{include:"#continuation_of_single_quoted_command_name"},{include:"#continuation_of_double_quoted_command_name"}]},{include:"#line_continuation"}]},{include:"#line_continuation"},{include:"#option"},{include:"#argument"},{include:"#statement_context"},{include:"#string"}]},{include:"#line_continuation"},{include:"#normal_statement_context"}]},normal_statement_context:{patterns:[{include:"#comment"},{include:"#pipeline"},{include:"#normal_statement_seperator"},{include:"#misc_ranges"},{include:"#boolean"},{include:"#redirect_number"},{include:"#numeric_literal"},{include:"#string"},{include:"#variable"},{include:"#interpolation"},{include:"#heredoc"},{include:"#herestring"},{include:"#redirection"},{include:"#pathname"},{include:"#keyword"},{include:"#support"}]},normal_statement_seperator:{match:"(?:(?:(?:(?:(;)|(&&))|(\\|\\|))|(&))|\\n)",captures:{1:{name:"punctuation.terminator.statement.semicolon.shell"},2:{name:"punctuation.separator.statement.and.shell"},3:{name:"punctuation.separator.statement.or.shell"},4:{name:"punctuation.separator.statement.background.shell"}}},numeric_literal:{match:"[ \\t]*+(?<==| |\\t|^|\\{|\\(|\\[)(?:(?:(?:(?:(0[xX][0-9A-Fa-f]+)|(0\\d+))|(\\d{1,2}#[0-9a-zA-Z@_]+))|(-?\\d+\\.\\d+))|(-?\\d+))(?!>)",captures:{1:{name:"constant.numeric.shell constant.numeric.hex.shell"},2:{name:"constant.numeric.shell constant.numeric.octal.shell"},3:{name:"constant.numeric.shell constant.numeric.other.shell"},4:{name:"constant.numeric.shell constant.numeric.integer.shell"},5:{name:"constant.numeric.shell constant.numeric.integer.shell"}}},option:{begin:"[ \\t]++(-)((?!(?:!|&|\\||\\(|\\)|\\{|\\[|<|>|#|\\n|$|;|[ \\t])))",end:"(?:(?=[ \\t])|(?=;|\\||&|\\n|\\)|\\`|\\{|\\}|[ \\t]*#|\\])(?<!\\\\))",beginCaptures:{1:{name:"string.unquoted.argument.shell constant.other.option.dash.shell"},2:{name:"string.unquoted.argument.shell constant.other.option.shell"}},endCaptures:{},contentName:"string.unquoted.argument constant.other.option",patterns:[{include:"#option_context"}]},option_context:{patterns:[{include:"#misc_ranges"},{include:"#string"},{include:"#variable"},{include:"#interpolation"},{include:"#heredoc"},{include:"#herestring"},{include:"#redirection"},{include:"#pathname"},{include:"#keyword"},{include:"#support"}]},pathname:{patterns:[{match:"(?<=\\s|:|=|^)~",name:"keyword.operator.tilde.shell"},{match:"\\*|\\?",name:"keyword.operator.glob.shell"},{begin:"([?*+@!])(\\()",beginCaptures:{1:{name:"keyword.operator.extglob.shell"},2:{name:"punctuation.definition.extglob.shell"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.extglob.shell"}},name:"meta.structure.extglob.shell",patterns:[{include:"#initial_context"}]}]},pipeline:{patterns:[{match:"(?<=^|;|&|\\s)(time)(?=\\s|;|&|$)",name:"keyword.other.shell"},{match:"[|!]",name:"keyword.operator.pipe.shell"}]},redirect_number:{match:"(?<=[ \\t])(?:(1)|(2)|(\\d+))(?=>)",captures:{1:{name:"keyword.operator.redirect.stdout.shell"},2:{name:"keyword.operator.redirect.stderr.shell"},3:{name:"keyword.operator.redirect.$3.shell"}}},redirection:{patterns:[{begin:"[><]\\(",beginCaptures:{0:{name:"punctuation.definition.string.begin.shell"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.string.end.shell"}},name:"string.interpolated.process-substitution.shell",patterns:[{include:"#initial_context"}]},{match:"(?<![<>])(&>|\\d*>&\\d*|\\d*(>>|>|<)|\\d*<&|\\d*<>)(?![<>])",name:"keyword.operator.redirect.shell"}]},regex_comparison:{match:"\\=~",name:"keyword.operator.logical.regex.shell"},regexp:{patterns:[{match:".+"}]},simple_options:{match:"(?:[ \\t]++\\-\\w+)*",captures:{0:{patterns:[{match:"[ \\t]++(\\-)(\\w+)",captures:{1:{name:"string.unquoted.argument.shell constant.other.option.dash.shell"},2:{name:"string.unquoted.argument.shell constant.other.option.shell"}}}]}}},start_of_command:{match:"[ \\t]*+(?!(?:!|&|\\||\\(|\\)|\\{|\\[|<|>|#|\\n|$|;|[ \\t]))(?!foreach\\b(?!\\/)|select\\b(?!\\/)|repeat\\b(?!\\/)|until\\b(?!\\/)|while\\b(?!\\/)|case\\b(?!\\/)|done\\b(?!\\/)|elif\\b(?!\\/)|else\\b(?!\\/)|esac\\b(?!\\/)|then\\b(?!\\/)|for\\b(?!\\/)|end\\b(?!\\/)|in\\b(?!\\/)|fi\\b(?!\\/)|do\\b(?!\\/)|if\\b(?!\\/))(?!\\\\\\n?$)"},start_of_double_quoted_command_name:{match:`(?!(?:!|&|\\||\\(|\\)|\\{|\\[|<|>|#|\\n|$|;|[ \\t]))(?:[ \\t]*+([^
3
- '&;<>\\(\\)\\$\`\\\\"\\|]+(?!>)))?(?:(?:\\$")|")`,captures:{1:{name:"entity.name.function.call.shell entity.name.command.shell",patterns:[{match:"\\*",name:"variable.language.special.wildcard.shell"},{include:"#variable"},{include:"#numeric_literal"},{match:"(?<!\\w)(\\b(?:true|false)\\b)(?!\\w)",captures:{1:{name:"constant.language.$1.shell"}}}]}},name:"meta.statement.command.name.quoted.shell string.quoted.double.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"},start_of_single_quoted_command_name:{match:`(?!(?:!|&|\\||\\(|\\)|\\{|\\[|<|>|#|\\n|$|;|[ \\t]))(?:[ \\t]*+([^
4
- '&;<>\\(\\)\\$\`\\\\"\\|]+(?!>)))?(?:(?:\\$')|')`,captures:{1:{name:"entity.name.function.call.shell entity.name.command.shell",patterns:[{match:"\\*",name:"variable.language.special.wildcard.shell"},{include:"#variable"},{include:"#numeric_literal"},{match:"(?<!\\w)(\\b(?:true|false)\\b)(?!\\w)",captures:{1:{name:"constant.language.$1.shell"}}}]}},name:"meta.statement.command.name.quoted.shell string.quoted.single.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"},string:{patterns:[{match:"\\\\.",name:"constant.character.escape.shell"},{begin:"'",end:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.shell"}},endCaptures:{0:{name:"punctuation.definition.string.end.shell"}},name:"string.quoted.single.shell"},{begin:'\\$?"',end:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.shell"}},endCaptures:{0:{name:"punctuation.definition.string.end.shell"}},name:"string.quoted.double.shell",patterns:[{match:'\\\\[\\$\\n`"\\\\]',name:"constant.character.escape.shell"},{include:"#variable"},{include:"#interpolation"}]},{begin:"\\$'",end:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.shell"}},endCaptures:{0:{name:"punctuation.definition.string.end.shell"}},name:"string.quoted.single.dollar.shell",patterns:[{match:"\\\\(?:a|b|e|f|n|r|t|v|\\\\|')",name:"constant.character.escape.ansi-c.shell"},{match:'\\\\[0-9]{3}"',name:"constant.character.escape.octal.shell"},{match:'\\\\x[0-9a-fA-F]{2}"',name:"constant.character.escape.hex.shell"},{match:'\\\\c."',name:"constant.character.escape.control-char.shell"}]}]},support:{patterns:[{match:"(?<=^|;|&|\\s)(?::|\\.)(?=\\s|;|&|$)",name:"support.function.builtin.shell"}]},variable:{patterns:[{match:"(\\$)(\\@(?!\\w))",captures:{1:{name:"punctuation.definition.variable.shell variable.parameter.positional.all.shell"},2:{name:"variable.parameter.positional.all.shell"}}},{match:"(\\$)([0-9](?!\\w))",captures:{1:{name:"punctuation.definition.variable.shell variable.parameter.positional.shell"},2:{name:"variable.parameter.positional.shell"}}},{match:"(\\$)([-*#?$!0_](?!\\w))",captures:{1:{name:"punctuation.definition.variable.shell variable.language.special.shell"},2:{name:"variable.language.special.shell"}}},{begin:"(\\$)(\\{)[ \\t]*+(?=\\d)",end:"\\}",beginCaptures:{1:{name:"punctuation.definition.variable.shell variable.parameter.positional.shell"},2:{name:"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},endCaptures:{0:{name:"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},contentName:"meta.parameter-expansion",patterns:[{match:"!|:[-=?]?|\\*|@|##|#|%%|%|\\/",name:"keyword.operator.expansion.shell"},{match:"(\\[)[^\\]]+(\\])",captures:{1:{name:"punctuation.section.array.shell"},2:{name:"punctuation.section.array.shell"}}},{match:"[0-9]+",name:"variable.parameter.positional.shell"},{match:"(?<!\\w)[a-zA-Z_0-9-]+(?!\\w)",name:"variable.other.normal.shell"},{include:"#variable"},{include:"#string"}]},{begin:"(\\$)(\\{)",end:"\\}",beginCaptures:{1:{name:"punctuation.definition.variable.shell"},2:{name:"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell"}},endCaptures:{0:{name:"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell"}},contentName:"meta.parameter-expansion",patterns:[{match:"!|:[-=?]?|\\*|@|##|#|%%|%|\\/",name:"keyword.operator.expansion.shell"},{match:"(\\[)[^\\]]+(\\])",captures:{1:{name:"punctuation.section.array.shell"},2:{name:"punctuation.section.array.shell"}}},{match:"(?<!\\w)[a-zA-Z_0-9-]+(?!\\w)",name:"variable.other.normal.shell"},{include:"#variable"},{include:"#string"}]},{match:"(\\$)(\\w+(?!\\w))",captures:{1:{name:"punctuation.definition.variable.shell variable.other.normal.shell"},2:{name:"variable.other.normal.shell"}}}]}},displayName:"Shell",aliases:["bash","sh","shell","zsh"]});var n=[e];export{n as default};