From f368422d69235d9b368d8c7475dec0784eccaeae Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 4 Aug 2023 20:21:12 +0000 Subject: [PATCH] Deploy documentation --- docs/v2/404.html | 8 +- ...rator-31d6cfe0d16ae931b73c59d7e0c089c0.pdf | Bin ...rator-830efe54bd38d723a9428165d23996dc.zip | Bin 0 -> 1848 bytes docs/v2/assets/js/055152ce.3c145466.js | 1 + docs/v2/assets/js/122eb8d1.b55b1bd0.js | 1 + docs/v2/assets/js/12b7883a.4ebdab83.js | 1 + docs/v2/assets/js/12fc83b3.74b5908d.js | 1 + docs/v2/assets/js/1743b147.3179e368.js | 1 + docs/v2/assets/js/1df93b7f.f529636f.js | 1 + docs/v2/assets/js/3d8d21df.892708cd.js | 1 + docs/v2/assets/js/4acf0422.37cf1245.js | 1 + docs/v2/assets/js/935f2afb.75f3a023.js | 1 + docs/v2/assets/js/a084d1b4.82a0dd9b.js | 1 + docs/v2/assets/js/c1baf4a7.14836b55.js | 1 + docs/v2/assets/js/e5ad04d1.03c57310.js | 1 + docs/v2/assets/js/main.921ea347.js | 2 + .../v2/assets/js/main.921ea347.js.LICENSE.txt | 132 ++++++++++++++++++ docs/v2/assets/js/runtime~main.537cb3a2.js | 1 + docs/v2/blog.html | 8 +- docs/v2/blog/archive.html | 8 +- docs/v2/blog/first-blog-post.html | 8 +- docs/v2/blog/long-blog-post.html | 8 +- docs/v2/blog/mdx-blog-post.html | 8 +- docs/v2/blog/tags.html | 8 +- docs/v2/blog/tags/docusaurus.html | 8 +- docs/v2/blog/tags/facebook.html | 8 +- docs/v2/blog/tags/hello.html | 8 +- docs/v2/blog/tags/hola.html | 8 +- docs/v2/blog/welcome.html | 8 +- docs/v2/docs/ApparatusAOT.html | 10 +- docs/v2/docs/AutoCtor.html | 10 +- docs/v2/docs/AutoDeconstruct.html | 10 +- docs/v2/docs/AutoRegisterInject.html | 10 +- ...moAutomaticDisposeImplSourceGenerator.html | 28 ++++ docs/v2/docs/Breezy.html | 10 +- docs/v2/docs/CommunityToolkit.Mvvm.html | 10 +- docs/v2/docs/DeeDee.html | 10 +- docs/v2/docs/EmbedResourceCSharp.html | 10 +- docs/v2/docs/EnumClass.html | 10 +- docs/v2/docs/FastGenericNew.html | 10 +- docs/v2/docs/Gedaq.html | 10 +- docs/v2/docs/GeneratorEquals.html | 10 +- docs/v2/docs/Immutype.html | 10 +- docs/v2/docs/List-of-RSCG.html | 10 +- docs/v2/docs/Lombok.NET.html | 10 +- docs/v2/docs/Matryoshki.html | 10 +- docs/v2/docs/Mediator.html | 10 +- docs/v2/docs/MemoryPack.html | 10 +- .../v2/docs/Microsoft.Extensions.Logging.html | 10 +- ....Interop.JavaScript.JSImportGenerator.html | 10 +- ...rosoft.NET.Sdk.Razor.SourceGenerators.html | 10 +- ....Interop.JavaScript.JSExportGenerator.html | 10 +- ....Interop.JavaScript.JSImportGenerator.html | 10 +- ...rosoft.Interop.LibraryImportGenerator.html | 8 +- ...SourceGenerators.RazorSourceGenerator.html | 8 +- ....SourceGeneration.JsonSourceGenerator.html | 8 +- ...rExpressions.Generator.RegexGenerator.html | 8 +- docs/v2/docs/MorrisMoxy.html | 10 +- docs/v2/docs/NetEscapades.EnumGenerators.html | 10 +- docs/v2/docs/NoExamples.html | 8 +- docs/v2/docs/PartiallyApplied.html | 10 +- docs/v2/docs/Podimo.ConstEmbed.html | 10 +- docs/v2/docs/ProxyGen.html | 10 +- docs/v2/docs/QuickConstructor.html | 10 +- .../RSCG-Examples/ApparatusAOT_readme.html | 12 +- .../docs/RSCG-Examples/AutoCtor_readme.html | 10 +- .../RSCG-Examples/AutoDeconstruct_readme.html | 10 +- .../AutoRegisterInject_readme.html | 10 +- ...aticDisposeImplSourceGenerator_readme.html | 25 ++++ docs/v2/docs/RSCG-Examples/Breezy_readme.html | 12 +- .../CommunityToolkit.Mvvm_readme.html | 10 +- docs/v2/docs/RSCG-Examples/DeeDee_readme.html | 10 +- .../EmbedResourceCSharp_readme.html | 10 +- .../docs/RSCG-Examples/EnumClass_readme.html | 10 +- .../RSCG-Examples/FastGenericNew_readme.html | 10 +- docs/v2/docs/RSCG-Examples/Gedaq_readme.html | 10 +- .../RSCG-Examples/GeneratorEquals_readme.html | 10 +- .../docs/RSCG-Examples/Immutype_readme.html | 10 +- .../docs/RSCG-Examples/Lombok.NET_readme.html | 10 +- .../docs/RSCG-Examples/Matryoshki_readme.html | 10 +- .../docs/RSCG-Examples/Mediator_readme.html | 10 +- .../docs/RSCG-Examples/MemoryPack_readme.html | 10 +- .../Microsoft.Extensions.Logging_readme.html | 10 +- ...p.JavaScript.JSImportGenerator_readme.html | 10 +- ...NET.Sdk.Razor.SourceGenerators_readme.html | 10 +- .../docs/RSCG-Examples/MorrisMoxy_readme.html | 10 +- .../NetEscapades.EnumGenerators_readme.html | 10 +- .../PartiallyApplied_readme.html | 10 +- .../Podimo.ConstEmbed_readme.html | 10 +- .../docs/RSCG-Examples/ProxyGen_readme.html | 10 +- .../QuickConstructor_readme.html | 10 +- .../docs/RSCG-Examples/RSCG_AMS_readme.html | 10 +- .../RSCG_FunctionsWithDI_readme.html | 10 +- .../RSCG-Examples/RSCG_Static_readme.html | 10 +- .../RSCG_TimeBombComment_readme.html | 10 +- .../docs/RSCG-Examples/RSCG_Utils_readme.html | 10 +- .../docs/RSCG-Examples/RazorBlade_readme.html | 10 +- docs/v2/docs/RSCG-Examples/Refit_readme.html | 10 +- docs/v2/docs/RSCG-Examples/Rocks_readme.html | 10 +- .../SkinnyControllersCommon_readme.html | 10 +- ...System.Runtime.InteropServices_readme.html | 10 +- .../System.Text.Json_readme.html | 10 +- ...System.Text.RegularExpressions_readme.html | 10 +- .../RSCG-Examples/ThisAssembly_readme.html | 10 +- docs/v2/docs/RSCG-Examples/Vogen_readme.html | 10 +- docs/v2/docs/RSCG-Examples/Zomp_readme.html | 10 +- docs/v2/docs/RSCG-Examples/dunet_readme.html | 10 +- .../docs/RSCG-Examples/mapperly_readme.html | 10 +- .../RSCG-Examples/spreadcheetah_readme.html | 10 +- docs/v2/docs/RSCG_AMS.html | 10 +- docs/v2/docs/RSCG_FunctionsWithDI.html | 10 +- docs/v2/docs/RSCG_Static.html | 10 +- docs/v2/docs/RSCG_TimeBombComment.html | 10 +- docs/v2/docs/RSCG_Utils.html | 10 +- docs/v2/docs/RazorBlade.html | 10 +- docs/v2/docs/Refit.html | 10 +- docs/v2/docs/Rocks.html | 10 +- docs/v2/docs/SkinnyControllersCommon.html | 10 +- .../docs/System.Runtime.InteropServices.html | 10 +- docs/v2/docs/System.Text.Json.html | 10 +- .../docs/System.Text.RegularExpressions.html | 10 +- docs/v2/docs/ThisAssembly.html | 10 +- docs/v2/docs/Vogen.html | 10 +- docs/v2/docs/XDocusaurus/congratulations.html | 8 +- .../docs/XDocusaurus/create-a-blog-post.html | 8 +- .../docs/XDocusaurus/create-a-document.html | 8 +- docs/v2/docs/XDocusaurus/create-a-page.html | 8 +- .../v2/docs/XDocusaurus/deploy-your-site.html | 8 +- .../XDocusaurus/manage-docs-versions.html | 8 +- .../docs/XDocusaurus/markdown-features.html | 8 +- .../docs/XDocusaurus/translate-your-site.html | 8 +- docs/v2/docs/Zomp.html | 12 +- docs/v2/docs/about.html | 10 +- docs/v2/docs/category/docusaurus.html | 8 +- docs/v2/docs/category/microsoft-examples.html | 8 +- docs/v2/docs/category/rscg-examples.html | 10 +- docs/v2/docs/dunet.html | 10 +- docs/v2/docs/intro.html | 8 +- docs/v2/docs/mapperly.html | 10 +- docs/v2/docs/spreadcheetah.html | 10 +- docs/v2/docs/v1.html | 8 +- docs/v2/index.html | 10 +- docs/v2/markdown-page.html | 8 +- ...omoAutomaticDisposeImplSourceGenerator.pdf | Bin docs/v2/search-index-default.json | 2 +- .../v2/search-index-docs-default-current.json | 2 +- docs/v2/sitemap.xml | 2 +- ...omoAutomaticDisposeImplSourceGenerator.zip | Bin 0 -> 1848 bytes 148 files changed, 796 insertions(+), 596 deletions(-) create mode 100644 docs/v2/assets/files/BenutomoAutomaticDisposeImplSourceGenerator-31d6cfe0d16ae931b73c59d7e0c089c0.pdf create mode 100644 docs/v2/assets/files/BenutomoAutomaticDisposeImplSourceGenerator-830efe54bd38d723a9428165d23996dc.zip create mode 100644 docs/v2/assets/js/055152ce.3c145466.js create mode 100644 docs/v2/assets/js/122eb8d1.b55b1bd0.js create mode 100644 docs/v2/assets/js/12b7883a.4ebdab83.js create mode 100644 docs/v2/assets/js/12fc83b3.74b5908d.js create mode 100644 docs/v2/assets/js/1743b147.3179e368.js create mode 100644 docs/v2/assets/js/1df93b7f.f529636f.js create mode 100644 docs/v2/assets/js/3d8d21df.892708cd.js create mode 100644 docs/v2/assets/js/4acf0422.37cf1245.js create mode 100644 docs/v2/assets/js/935f2afb.75f3a023.js create mode 100644 docs/v2/assets/js/a084d1b4.82a0dd9b.js create mode 100644 docs/v2/assets/js/c1baf4a7.14836b55.js create mode 100644 docs/v2/assets/js/e5ad04d1.03c57310.js create mode 100644 docs/v2/assets/js/main.921ea347.js create mode 100644 docs/v2/assets/js/main.921ea347.js.LICENSE.txt create mode 100644 docs/v2/assets/js/runtime~main.537cb3a2.js create mode 100644 docs/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator.html create mode 100644 docs/v2/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme.html create mode 100644 docs/v2/pdfs/BenutomoAutomaticDisposeImplSourceGenerator.pdf create mode 100644 docs/v2/sources/BenutomoAutomaticDisposeImplSourceGenerator.zip diff --git a/docs/v2/404.html b/docs/v2/404.html index 853aa0da2..1d2b17cf9 100644 --- a/docs/v2/404.html +++ b/docs/v2/404.html @@ -5,13 +5,13 @@ Page Not Found | RSCG Examples - - + +
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

- - + + \ No newline at end of file diff --git a/docs/v2/assets/files/BenutomoAutomaticDisposeImplSourceGenerator-31d6cfe0d16ae931b73c59d7e0c089c0.pdf b/docs/v2/assets/files/BenutomoAutomaticDisposeImplSourceGenerator-31d6cfe0d16ae931b73c59d7e0c089c0.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/docs/v2/assets/files/BenutomoAutomaticDisposeImplSourceGenerator-830efe54bd38d723a9428165d23996dc.zip b/docs/v2/assets/files/BenutomoAutomaticDisposeImplSourceGenerator-830efe54bd38d723a9428165d23996dc.zip new file mode 100644 index 0000000000000000000000000000000000000000..a384e12826909c76b65b1a18feef3584c78f09d2 GIT binary patch literal 1848 zcmZ`(dpOg382{NO%q5p8#VL&l#a6PpHqk|shUS*zl6#q9h)U)@N+ERdkj$+*ZpGB( zr~=RBS7_j&*MKJVxKzMtpweqI6|3PS(@APK}Yz??g9 zh%AN}0C>XyKni@du@0hy>QjP4N*($`@==IbeZ{X-HeP!uk0jH%HkRtev^l1{W4Lf( zZ-UYTB(@b*`E=GVmaWZSeq9tK>q{SUqdPZTxD8`RjJgY@= z*5x0L7^*+?!lOzzW@?J*y3R>MbujTNF3Fuc(qC%Mau4VZP7`~?kh$O`-=5T_?z<#( z+tE0scO0frLi3WVow=YIYY@OMeKajKts-vRY~KT96swdVOPa?Mwi*U_tC0SlXC!__ zJNi#~^3xmlcw%?yy}Wbag@Tkz-Y1wf%m=5C0R-rXZ!du;Jw4vj)p_a{`zwv2DvBd7 z$o@f32ji+s-$Ij`qAKrn)w*9D=TgInb(H)9-pFqojcM=s=WXp8J9LX#~!5-#(N!23_a~Y#~Qf8sjN~Z4{)mZDxN5h;R*EtfU`s3zI z;WNz>-Riykg%{in-5bIi@NQjY#M$R@vzEDwf=c~T;$&BOT68z?iJn_;??}A$*&AQr zzCd^#al3BLq%-E3O(CQ`MkY{8u{o_-U1rdQW}l8kknJ|IHL3(K!m_wpM5r_Kfk|8n zC~7Sj%0I+4up)ibX*XPCqHqUDnoaUW_PzH91)3Qc5bUgUxs`_|1y zSt*j*FS|x-R(lyDEm{DiHpmufIavk^1M51Htfx|}iOJtsF&AU?hlMX%Nj zHmdnT4vZXvUmxJ?n+;Wf_xY%mZ;DN87$#)V?)a3YOB`2A{TQEiWGv30MRxGjF-+xk z&y~h`448Av&B7rXzp1u*lbVZqTf=k$c|htOoW3 zJs?M>@p8LmSd_bI)xNCqTx#7rI>T>zi^Qm#?vBGwTYX0`fn~=cy=+x_;!i(;M-Sb9 zg6Q*eAeSvh7p+Zqfa|{d`%xxmepp2x<*FW91xh~R4GK>(&mQs zRTnGa_xBmCdE#q(h)hx)Mzy^K=tNC;ptYl(?bKnvRz9pCM6W z3OoIh0+_F&=2}~MUpjBr%8^WO(A!>n+=`I4bY^ZVkdoPg8x`d3+&km{)smfU{LJNb zKdqk<6+Y~(AJ%|gmnnTf6jW&b*XDfQBgOotxDl&l(afnK%!)>`;3Pt!XVQv5ZCGH) zFKa{yCkKRklR)>7E~4SBCCr|R#N&$B{w8u>RLh+Rl~7ppX_A| zhj-QY=_q+fc=os|OIwx5f9|%$J%@ADKYx8P0;BW%*+rE7+9{pWDNi*fuO+4+Dk;}OvM$vy7&+Lilzj-_?mw+#KCI_()$4B0Kh-5 Cp6ZhT literal 0 HcmV?d00001 diff --git a/docs/v2/assets/js/055152ce.3c145466.js b/docs/v2/assets/js/055152ce.3c145466.js new file mode 100644 index 000000000..2c5ec3f8f --- /dev/null +++ b/docs/v2/assets/js/055152ce.3c145466.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[5426],{4137:(e,r,t)=>{t.d(r,{Zo:()=>l,kt:()=>f});var o=t(7294);function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function a(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function i(e){for(var r=1;r=0||(n[t]=e[t]);return n}(e,r);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}var p=o.createContext({}),c=function(e){var r=o.useContext(p),t=r;return e&&(t="function"==typeof e?e(r):i(i({},r),e)),t},l=function(e){var r=c(e.components);return o.createElement(p.Provider,{value:r},e.children)},S="mdxType",m={inlineCode:"code",wrapper:function(e){var r=e.children;return o.createElement(o.Fragment,{},r)}},u=o.forwardRef((function(e,r){var t=e.components,n=e.mdxType,a=e.originalType,p=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),S=c(t),u=n,f=S["".concat(p,".").concat(u)]||S[u]||m[u]||a;return t?o.createElement(f,i(i({ref:r},l),{},{components:t})):o.createElement(f,i({ref:r},l))}));function f(e,r){var t=arguments,n=r&&r.mdxType;if("string"==typeof e||n){var a=t.length,i=new Array(a);i[0]=u;var s={};for(var p in r)hasOwnProperty.call(r,p)&&(s[p]=r[p]);s.originalType=e,s[S]="string"==typeof e?e:n,i[1]=s;for(var c=2;c{t.r(r),t.d(r,{assets:()=>p,contentTitle:()=>i,default:()=>m,frontMatter:()=>a,metadata:()=>s,toc:()=>c});var o=t(7462),n=(t(7294),t(4137));const a={sidebar_position:9236,title:"9236 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",description:"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",slug:"/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator"},i="Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",s={unversionedId:"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",id:"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",title:"9236 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",description:"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",source:"@site/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator.md",sourceDirName:"Microsoft",slug:"/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",permalink:"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",draft:!1,tags:[],version:"current",sidebarPosition:9236,frontMatter:{sidebar_position:9236,title:"9236 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",description:"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",slug:"/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator"},sidebar:"tutorialSidebar",previous:{title:"9229 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",permalink:"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator"},next:{title:"9679 - System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator",permalink:"/RSCG_Examples/v2/docs/Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator"}},p={},c=[{value:"Original Code",id:"original-code",level:2},{value:"Generated Code",id:"generated-code",level:2},{value:"More details",id:"more-details",level:2}],l={toc:c},S="wrapper";function m(e){let{components:r,...a}=e;return(0,n.kt)(S,(0,o.Z)({},l,a,{components:r,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"microsoftinteropjavascriptjsimportgenerator_microsoftinteropjavascriptjsexportgenerator"},"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator"),(0,n.kt)("h2",{id:"original-code"},"Original Code"),(0,n.kt)("p",null,"The code that will be improved by generation is :"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'\n\nusing System.Runtime.InteropServices.JavaScript;\nusing System.Runtime.Versioning;\n\nnamespace TestBlazor.Pages;\n\n[SupportedOSPlatform("browser")]\npublic partial class CallJavaScript1\n{\n //Generator:JSImports.g.cs\n [JSImport("getMessage", "CallJavaScript1")]\n internal static partial string GetWelcomeMessage(string s);\n //Generator:JSExports.g.cs\n [JSExport]\n internal static string GetMessageFromDotnet(string s)\n {\n return " GetMessageFromDotnet => " + s;\n }\n}\n')),(0,n.kt)("h2",{id:"generated-code"},"Generated Code"),(0,n.kt)("p",null,"The code that is written is"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'// \nnamespace TestBlazor.Pages\n{\n public partial class CallJavaScript1\n {\n internal static unsafe void __Wrapper_GetMessageFromDotnet_1759475695(global::System.Runtime.InteropServices.JavaScript.JSMarshalerArgument* __arguments_buffer)\n {\n string s;\n ref global::System.Runtime.InteropServices.JavaScript.JSMarshalerArgument __arg_exception = ref __arguments_buffer[0];\n ref global::System.Runtime.InteropServices.JavaScript.JSMarshalerArgument __arg_return = ref __arguments_buffer[1];\n string __retVal;\n // Setup - Perform required setup.\n ref global::System.Runtime.InteropServices.JavaScript.JSMarshalerArgument __s_native__js_arg = ref __arguments_buffer[2];\n // Unmarshal - Convert native data to managed data.\n __s_native__js_arg.ToManaged(out s);\n try\n {\n __retVal = TestBlazor.Pages.CallJavaScript1.GetMessageFromDotnet(s);\n __arg_return.ToJS(__retVal);\n }\n catch (global::System.Exception ex)\n {\n __arg_exception.ToJS(ex);\n }\n }\n\n [global::System.Runtime.CompilerServices.ModuleInitializerAttribute]\n [global::System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute("__Wrapper_GetMessageFromDotnet_1759475695", typeof(TestBlazor.Pages.CallJavaScript1))]\n internal static void __Register_GetMessageFromDotnet_1759475695()\n {\n if (global::System.Runtime.InteropServices.RuntimeInformation.OSArchitecture != global::System.Runtime.InteropServices.Architecture.Wasm)\n return;\n global::System.Runtime.InteropServices.JavaScript.JSFunctionBinding.BindManagedFunction("[TestBlazor]TestBlazor.Pages.CallJavaScript1:GetMessageFromDotnet", 1759475695, new global::System.Runtime.InteropServices.JavaScript.JSMarshalerType[] { global::System.Runtime.InteropServices.JavaScript.JSMarshalerType.String, global::System.Runtime.InteropServices.JavaScript.JSMarshalerType.String });\n }\n }\n}\n\n')),(0,n.kt)("h2",{id:"more-details"},"More details"),(0,n.kt)("p",null,"Csharp Project: See TestBlazor.csproj from ",(0,n.kt)("a",{target:"_blank",href:t(2096).Z},"/sources/Microsoft.zip")),(0,n.kt)("p",null,"You can see the whole list at",(0,n.kt)("a",{target:"_blank",href:"https://ignatandrei.github.io/RSCG_Examples/v2/docs/List-of-RSCG"},"https://ignatandrei.github.io/RSCG_Examples/v2/docs/List-of-RSCG")))}m.isMDXComponent=!0},2096:(e,r,t)=>{t.d(r,{Z:()=>o});const o=t.p+"assets/files/Microsoft-385cd2ffcf8f095f697f6bd3011bc60a.zip"}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/122eb8d1.b55b1bd0.js b/docs/v2/assets/js/122eb8d1.b55b1bd0.js new file mode 100644 index 000000000..d2b1e2979 --- /dev/null +++ b/docs/v2/assets/js/122eb8d1.b55b1bd0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[1650],{4335:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>p,default:()=>k,frontMatter:()=>i,metadata:()=>l,toc:()=>d});var n=a(7462),r=(a(7294),a(4137)),o=a(3992),s=a(425),m=a(8839);const i={sidebar_position:440,title:"44 - Zomp",description:"Generating Sync method from async",slug:"/Zomp"},p="Zomp by Zomp Inc.",l={unversionedId:"RSCG-Examples/Zomp",id:"RSCG-Examples/Zomp",title:"44 - Zomp",description:"Generating Sync method from async",source:"@site/docs/RSCG-Examples/Zomp.md",sourceDirName:"RSCG-Examples",slug:"/Zomp",permalink:"/RSCG_Examples/v2/docs/Zomp",draft:!1,tags:[],version:"current",sidebarPosition:440,frontMatter:{sidebar_position:440,title:"44 - Zomp",description:"Generating Sync method from async",slug:"/Zomp"},sidebar:"tutorialSidebar",previous:{title:"43 - spreadcheetah",permalink:"/RSCG_Examples/v2/docs/spreadcheetah"},next:{title:"45 - BenutomoAutomaticDisposeImplSourceGenerator",permalink:"/RSCG_Examples/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator"}},c={},d=[{value:"Details",id:"details",level:2},{value:"Info",id:"info",level:3},{value:"Original Readme",id:"original-readme",level:3},{value:"About",id:"about",level:3},{value:"How to use",id:"how-to-use",level:2},{value:"Example ( source csproj, source files )",id:"example--source-csproj-source-files-",level:3},{value:"Generated Files",id:"generated-files",level:3},{value:"Usefull",id:"usefull",level:2},{value:"Download Example (.NET C# )",id:"download-example-net--c-",level:3},{value:"Download PDF",id:"download-pdf",level:3},{value:"Share Zomp",id:"share-zomp",level:3}],u={toc:d},h="wrapper";function k(e){let{components:t,...i}=e;return(0,r.kt)(h,(0,n.Z)({},u,i,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"zomp--by-zomp-inc"},"Zomp by Zomp Inc."),(0,r.kt)(m.Z,{toc:d,mdxType:"TOCInline"}),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://www.nuget.org/packages/Zomp.SyncMethodGenerator/"},(0,r.kt)("img",{parentName:"a",src:"https://img.shields.io/nuget/dt/Zomp.SyncMethodGenerator?label=Zomp.SyncMethodGenerator",alt:"Nuget"})),"\n",(0,r.kt)("a",{parentName:"p",href:"https://github.com/zompinc/sync-method-generator"},(0,r.kt)("img",{parentName:"a",src:"https://img.shields.io/github/last-commit/zompinc/sync-method-generator?label=updated",alt:"GitHub last commit"})),"\n",(0,r.kt)("img",{parentName:"p",src:"https://img.shields.io/github/stars/zompinc/sync-method-generator?style=social",alt:"GitHub Repo stars"})),(0,r.kt)("h2",{id:"details"},"Details"),(0,r.kt)("h3",{id:"info"},"Info"),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Name: ",(0,r.kt)("strong",{parentName:"p"},"Zomp")),(0,r.kt)("p",{parentName:"admonition"},"Image generator"),(0,r.kt)("p",{parentName:"admonition"},"Author: Zomp Inc."),(0,r.kt)("p",{parentName:"admonition"},"NuGet:\n",(0,r.kt)("em",{parentName:"p"},(0,r.kt)("a",{parentName:"em",href:"https://www.nuget.org/packages/Zomp.SyncMethodGenerator/"},"https://www.nuget.org/packages/Zomp.SyncMethodGenerator/"))," "),(0,r.kt)("p",{parentName:"admonition"},"You can find more details at ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/zompinc/sync-method-generator"},"https://github.com/zompinc/sync-method-generator")),(0,r.kt)("p",{parentName:"admonition"},"Source : ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/zompinc/sync-method-generator"},"https://github.com/zompinc/sync-method-generator"))),(0,r.kt)("h3",{id:"original-readme"},"Original Readme"),(0,r.kt)("admonition",{type:"note"},(0,r.kt)("h1",{parentName:"admonition",id:"sync-method-generator"},"Sync Method Generator"),(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("a",{parentName:"p",href:"https://github.com/zompinc/sync-method-generator/actions/workflows/build.yml"},(0,r.kt)("img",{parentName:"a",src:"https://github.com/zompinc/sync-method-generator/actions/workflows/build.yml/badge.svg",alt:"Build"})),"\n",(0,r.kt)("img",{parentName:"p",src:"https://img.shields.io/badge/dotnet%20version-.NET%20Standard%202.0-blue",alt:"Support .NET Standard 2.0"}),"\n",(0,r.kt)("a",{parentName:"p",href:"https://www.nuget.org/packages/Zomp.SyncMethodGenerator"},(0,r.kt)("img",{parentName:"a",src:"https://img.shields.io/nuget/v/Zomp.SyncMethodGenerator",alt:"Nuget"})),"\n",(0,r.kt)("a",{parentName:"p",href:"https://codecov.io/gh/zompinc/sync-method-generator"},(0,r.kt)("img",{parentName:"a",src:"https://codecov.io/gh/zompinc/sync-method-generator/branch/master/graph/badge.svg",alt:"codecov"}))),(0,r.kt)("p",{parentName:"admonition"},"This ",(0,r.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/en-us/dotnet/csharp/roslyn-sdk/source-generators-overview"},".NET source generator")," produces a sync method from an async one."),(0,r.kt)("h2",{parentName:"admonition",id:"use-cases"},"Use cases"),(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},"A library which exposes both sync and async version of a method"),(0,r.kt)("li",{parentName:"ul"},"An application has to process two kinds of data in the same way:",(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Large data from I/O which cannot be stored in memory before processing: Original async method"),(0,r.kt)("li",{parentName:"ul"},"Small sample of data in memory, usually a sample of the larger data: Generated sync method")))),(0,r.kt)("h2",{parentName:"admonition",id:"how-it-works"},"How it works"),(0,r.kt)("p",{parentName:"admonition"},"Add ",(0,r.kt)("inlineCode",{parentName:"p"},"CreateSyncVersionAttribute")," to your async method in your ",(0,r.kt)("inlineCode",{parentName:"p"},"partial")," class"),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre",className:"language-cs"},"[Zomp.SyncMethodGenerator.CreateSyncVersion]\nstatic async Task WriteAsync(ReadOnlyMemory buffer, Stream stream, \nCancellationToken ct)\n => await stream.WriteAsync(buffer, ct).ConfigureAwait(true);\n")),(0,r.kt)("p",{parentName:"admonition"},"And it will generate a sync version of the method:"),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre",className:"language-cs"},"static void Write(ReadOnlySpan buffer, Stream stream)\n => stream.Write(buffer);\n")),(0,r.kt)("p",{parentName:"admonition"},"A list of changes applied to the new synchronized method:"),(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Remove async modifier")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Remove await from methods as well as ",(0,r.kt)("inlineCode",{parentName:"p"},"foreach")," statement")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Change types"),(0,r.kt)("table",{parentName:"li"},(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"From"),(0,r.kt)("th",{parentName:"tr",align:null},"To"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task"},"Task")," or ",(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1"},"ValueTask")),(0,r.kt)("td",{parentName:"tr",align:null},"void")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1"},"Task")," or ",(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.valuetask-1"},"ValueTask")),(0,r.kt)("td",{parentName:"tr",align:null},"T")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.iasyncenumerable-1"},"IAsyncEnumerable")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1"},"IEnumerable"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.iasyncenumerator-1"},"IAsyncEnumerator")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerator-1"},"IEnumerator"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.memory-1"},"Memory")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.span-1"},"Span"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.readonlymemory-1"},"ReadOnlyMemory")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("a",{parentName:"td",href:"https://learn.microsoft.com/en-us/dotnet/api/system.readonlyspan-1"},"ReadOnlySpan")))))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Remove parameters"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/en-us/dotnet/api/system.threading.cancellationtoken"},"CancellationToken")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/en-us/dotnet/api/system.iprogress-1"},"IProgress")))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Invocation changes"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Remove ",(0,r.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task.configureawait"},"ConfigureAwait")),(0,r.kt)("li",{parentName:"ul"},"Remove ",(0,r.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.taskasyncenumerableextensions.withcancellation"},"WithCancellation")),(0,r.kt)("li",{parentName:"ul"},"Remove ",(0,r.kt)("inlineCode",{parentName:"li"},"Async")," suffix from method calls (e.g. ",(0,r.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.iasyncenumerator-1.movenextasync"},"MoveNextAsync")," becomes ",(0,r.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/en-us/dotnet/api/system.collections.ienumerator.movenext"},"MoveNext"),")"),(0,r.kt)("li",{parentName:"ul"},"Remove ",(0,r.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/en-us/dotnet/api/system.threading.cancellationtoken"},"CancellationToken")," parameter"),(0,r.kt)("li",{parentName:"ul"},"Remove ",(0,r.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/en-us/dotnet/api/system.iprogress-1.report"},"IProgress.Report(T)")," call"),(0,r.kt)("li",{parentName:"ul"},"Remove ",(0,r.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/en-us/dotnet/api/system.memory-1.span"},"Memory.Span")," property"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Remove ",(0,r.kt)("inlineCode",{parentName:"p"},"CreateSyncVersionAttribute"))),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Update XML documentation"))),(0,r.kt)("h2",{parentName:"admonition",id:"installation"},"Installation"),(0,r.kt)("p",{parentName:"admonition"},"To add the library use:"),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre",className:"language-sh"},"dotnet add package Zomp.SyncMethodGenerator\n"))),(0,r.kt)("h3",{id:"about"},"About"),(0,r.kt)("admonition",{type:"note"},(0,r.kt)("p",{parentName:"admonition"},"Generating Sync method from async")),(0,r.kt)("h2",{id:"how-to-use"},"How to use"),(0,r.kt)("h3",{id:"example--source-csproj-source-files-"},"Example ( source csproj, source files )"),(0,r.kt)(o.Z,{mdxType:"Tabs"},(0,r.kt)(s.Z,{value:"csproj",label:"CSharp Project",mdxType:"TabItem"},(0,r.kt)("p",null,"This is the CSharp Project that references ",(0,r.kt)("strong",{parentName:"p"},"Zomp")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-xml",metastring:"showLineNumbers {11}",showLineNumbers:!0,"{11}":!0},'\n\n \n Exe\n net7.0\n enable\n enable\n \n\n \n \n \n \n true\n $(BaseIntermediateOutputPath)\\GX\n \n\n\n'))),(0,r.kt)(s.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\zomp\\src\\ZompDemo\\Program.cs",label:"Program.cs",mdxType:"TabItem"},(0,r.kt)("p",null," This is the use of ",(0,r.kt)("strong",{parentName:"p"},"Zomp")," in ",(0,r.kt)("em",{parentName:"p"},"Program.cs")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'// See https://aka.ms/new-console-template for more information\nusing Zomp.SyncMethodGeneratorDemo;\n\nConsole.WriteLine("Hello, World!");\nWriter.Haha("a.txt", "Andrei Ignat");\nWriter.Write("a.txt", "andrei ignat");\n'))),(0,r.kt)(s.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\zomp\\src\\ZompDemo\\Writer.cs",label:"Writer.cs",mdxType:"TabItem"},(0,r.kt)("p",null," This is the use of ",(0,r.kt)("strong",{parentName:"p"},"Zomp")," in ",(0,r.kt)("em",{parentName:"p"},"Writer.cs")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},"namespace Zomp.SyncMethodGeneratorDemo;\n\npartial class Writer\n{\n [Zomp.SyncMethodGenerator.CreateSyncVersion]\n public static async Task WriteAsync(string file, string contents,\nCancellationToken ct)\n {\n await File.WriteAllTextAsync(file, contents, ct).ConfigureAwait(true);\n }\n [Zomp.SyncMethodGenerator.CreateSyncVersion]\n public static async Task HahaAsync(ReadOnlyMemory buffer, Stream stream,\nCancellationToken ct)\n => await stream.WriteAsync(buffer, ct).ConfigureAwait(true);\n}\n\n")))),(0,r.kt)("h3",{id:"generated-files"},"Generated Files"),(0,r.kt)("p",null,"Those are taken from $(BaseIntermediateOutputPath)\\GX"),(0,r.kt)(o.Z,{mdxType:"Tabs"},(0,r.kt)(s.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\zomp\\src\\ZompDemo\\obj\\GX\\Zomp.SyncMethodGenerator\\Zomp.SyncMethodGenerator.SyncMethodSourceGenerator\\CreateSyncVersionAttribute.g.cs",label:"CreateSyncVersionAttribute.g.cs",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},"// \nnamespace Zomp.SyncMethodGenerator\n{\n /// \n /// An attribute that can be used to automatically generate a synchronous version of an async method. Must be used in a partial class.\n /// \n [System.AttributeUsage(System.AttributeTargets.Method)]\n internal class CreateSyncVersionAttribute : System.Attribute\n {\n }\n}\n"))),(0,r.kt)(s.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\zomp\\src\\ZompDemo\\obj\\GX\\Zomp.SyncMethodGenerator\\Zomp.SyncMethodGenerator.SyncMethodSourceGenerator\\Zomp.SyncMethodGeneratorDemo.Writer.HahaAsync.g.cs",label:"Zomp.SyncMethodGeneratorDemo.Writer.HahaAsync.g.cs",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},"// \n#nullable enable\nnamespace Zomp.SyncMethodGeneratorDemo;\npartial class Writer\n{\n public static void Haha(global::System.ReadOnlySpan buffer, global::System.IO.Stream stream)\n => stream.Write(buffer);\n}\n\n"))),(0,r.kt)(s.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\zomp\\src\\ZompDemo\\obj\\GX\\Zomp.SyncMethodGenerator\\Zomp.SyncMethodGenerator.SyncMethodSourceGenerator\\Zomp.SyncMethodGeneratorDemo.Writer.WriteAsync.g.cs",label:"Zomp.SyncMethodGeneratorDemo.Writer.WriteAsync.g.cs",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},"// \n#nullable enable\nnamespace Zomp.SyncMethodGeneratorDemo;\npartial class Writer\n{\n public static void Write(string file, string contents)\n {\n global::System.IO.File.WriteAllText(file, contents);\n }\n}\n\n")))),(0,r.kt)("h2",{id:"usefull"},"Usefull"),(0,r.kt)("h3",{id:"download-example-net--c-"},"Download Example (.NET C# )"),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},(0,r.kt)("a",{target:"_blank",href:a(9567).Z},"Download Example project Zomp "))),(0,r.kt)("h3",{id:"download-pdf"},"Download PDF"),(0,r.kt)("p",null,(0,r.kt)("a",{target:"_blank",href:a(1065).Z},"Download PDF Zomp ")),(0,r.kt)("h3",{id:"share-zomp"},"Share Zomp"),(0,r.kt)("ul",null,(0,r.kt)("li",null,(0,r.kt)("a",{href:"https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FZomp"e=Zomp",title:"Share on Facebook",target:"_blank"},"Share on Facebook")),(0,r.kt)("li",null,(0,r.kt)("a",{href:"https://twitter.com/intent/tweet?source=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FZomp&text=Zomp:%20https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FZomp",target:"_blank",title:"Tweet"},"Share in Twitter")),(0,r.kt)("li",null,(0,r.kt)("a",{href:"http://www.reddit.com/submit?url=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FZomp&title=Zomp",target:"_blank",title:"Submit to Reddit"},"Share on Reddit")),(0,r.kt)("li",null,(0,r.kt)("a",{href:"http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FZomp&title=Zomp&summary=&source=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FZomp",target:"_blank",title:"Share on LinkedIn"},"Share on Linkedin"))),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Zomp"},"https://ignatandrei.github.io/RSCG_Examples/v2/docs/Zomp")))}k.isMDXComponent=!0},1065:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/files/Zomp-31d6cfe0d16ae931b73c59d7e0c089c0.pdf"},9567:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/files/Zomp-8bfb2010245512d71db10b8e4d4b3bd6.zip"}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/12b7883a.4ebdab83.js b/docs/v2/assets/js/12b7883a.4ebdab83.js new file mode 100644 index 000000000..fb6756caf --- /dev/null +++ b/docs/v2/assets/js/12b7883a.4ebdab83.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[1234],{4137:(e,r,t)=>{t.d(r,{Zo:()=>l,kt:()=>f});var o=t(7294);function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function a(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function i(e){for(var r=1;r=0||(n[t]=e[t]);return n}(e,r);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}var p=o.createContext({}),c=function(e){var r=o.useContext(p),t=r;return e&&(t="function"==typeof e?e(r):i(i({},r),e)),t},l=function(e){var r=c(e.components);return o.createElement(p.Provider,{value:r},e.children)},S="mdxType",m={inlineCode:"code",wrapper:function(e){var r=e.children;return o.createElement(o.Fragment,{},r)}},u=o.forwardRef((function(e,r){var t=e.components,n=e.mdxType,a=e.originalType,p=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),S=c(t),u=n,f=S["".concat(p,".").concat(u)]||S[u]||m[u]||a;return t?o.createElement(f,i(i({ref:r},l),{},{components:t})):o.createElement(f,i({ref:r},l))}));function f(e,r){var t=arguments,n=r&&r.mdxType;if("string"==typeof e||n){var a=t.length,i=new Array(a);i[0]=u;var s={};for(var p in r)hasOwnProperty.call(r,p)&&(s[p]=r[p]);s.originalType=e,s[S]="string"==typeof e?e:n,i[1]=s;for(var c=2;c{t.r(r),t.d(r,{assets:()=>p,contentTitle:()=>i,default:()=>m,frontMatter:()=>a,metadata:()=>s,toc:()=>c});var o=t(7462),n=(t(7294),t(4137));const a={sidebar_position:9229,title:"9229 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",description:"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",slug:"/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator"},i="Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",s={unversionedId:"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",id:"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",title:"9229 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",description:"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",source:"@site/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator.md",sourceDirName:"Microsoft",slug:"/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",permalink:"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",draft:!1,tags:[],version:"current",sidebarPosition:9229,frontMatter:{sidebar_position:9229,title:"9229 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",description:"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",slug:"/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator"},sidebar:"tutorialSidebar",previous:{title:"8661 - System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator",permalink:"/RSCG_Examples/v2/docs/Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator"},next:{title:"9236 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",permalink:"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator"}},p={},c=[{value:"Original Code",id:"original-code",level:2},{value:"Generated Code",id:"generated-code",level:2},{value:"More details",id:"more-details",level:2}],l={toc:c},S="wrapper";function m(e){let{components:r,...a}=e;return(0,n.kt)(S,(0,o.Z)({},l,a,{components:r,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"microsoftinteropjavascriptjsimportgenerator_microsoftinteropjavascriptjsimportgenerator"},"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator"),(0,n.kt)("h2",{id:"original-code"},"Original Code"),(0,n.kt)("p",null,"The code that will be improved by generation is :"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'\n\nusing System.Runtime.InteropServices.JavaScript;\nusing System.Runtime.Versioning;\n\nnamespace TestBlazor.Pages;\n\n[SupportedOSPlatform("browser")]\npublic partial class CallJavaScript1\n{\n //Generator:JSImports.g.cs\n [JSImport("getMessage", "CallJavaScript1")]\n internal static partial string GetWelcomeMessage(string s);\n //Generator:JSExports.g.cs\n [JSExport]\n internal static string GetMessageFromDotnet(string s)\n {\n return " GetMessageFromDotnet => " + s;\n }\n}\n')),(0,n.kt)("h2",{id:"generated-code"},"Generated Code"),(0,n.kt)("p",null,"The code that is written is"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'// \nnamespace TestBlazor.Pages\n{\n public partial class CallJavaScript1\n {\n [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Interop.JavaScript.JSImportGenerator", "7.0.8.32018")]\n internal static partial string GetWelcomeMessage(string s)\n {\n if (__signature_GetWelcomeMessage_1759475695 == null)\n {\n __signature_GetWelcomeMessage_1759475695 = global::System.Runtime.InteropServices.JavaScript.JSFunctionBinding.BindJSFunction("getMessage", "CallJavaScript1", new global::System.Runtime.InteropServices.JavaScript.JSMarshalerType[] { global::System.Runtime.InteropServices.JavaScript.JSMarshalerType.String, global::System.Runtime.InteropServices.JavaScript.JSMarshalerType.String });\n }\n\n global::System.Span __arguments_buffer = stackalloc global::System.Runtime.InteropServices.JavaScript.JSMarshalerArgument[3];\n ref global::System.Runtime.InteropServices.JavaScript.JSMarshalerArgument __arg_exception = ref __arguments_buffer[0];\n __arg_exception.Initialize();\n ref global::System.Runtime.InteropServices.JavaScript.JSMarshalerArgument __arg_return = ref __arguments_buffer[1];\n __arg_return.Initialize();\n string __retVal;\n // Setup - Perform required setup.\n ref global::System.Runtime.InteropServices.JavaScript.JSMarshalerArgument __s_native__js_arg = ref __arguments_buffer[2];\n __s_native__js_arg.ToJS(s);\n global::System.Runtime.InteropServices.JavaScript.JSFunctionBinding.InvokeJS(__signature_GetWelcomeMessage_1759475695, __arguments_buffer);\n // Unmarshal - Convert native data to managed data.\n __arg_return.ToManaged(out __retVal);\n return __retVal;\n }\n\n [global::System.ThreadStaticAttribute]\n static global::System.Runtime.InteropServices.JavaScript.JSFunctionBinding __signature_GetWelcomeMessage_1759475695;\n }\n}\n\n')),(0,n.kt)("h2",{id:"more-details"},"More details"),(0,n.kt)("p",null,"Csharp Project: See TestBlazor.csproj from ",(0,n.kt)("a",{target:"_blank",href:t(2096).Z},"/sources/Microsoft.zip")),(0,n.kt)("p",null,"You can see the whole list at",(0,n.kt)("a",{target:"_blank",href:"https://ignatandrei.github.io/RSCG_Examples/v2/docs/List-of-RSCG"},"https://ignatandrei.github.io/RSCG_Examples/v2/docs/List-of-RSCG")))}m.isMDXComponent=!0},2096:(e,r,t)=>{t.d(r,{Z:()=>o});const o=t.p+"assets/files/Microsoft-385cd2ffcf8f095f697f6bd3011bc60a.zip"}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/12fc83b3.74b5908d.js b/docs/v2/assets/js/12fc83b3.74b5908d.js new file mode 100644 index 000000000..cbf16f570 --- /dev/null +++ b/docs/v2/assets/js/12fc83b3.74b5908d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[8692],{2883:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>l,default:()=>D,frontMatter:()=>r,metadata:()=>m,toc:()=>u});var a=n(7462),o=(n(7294),n(4137)),s=n(3992),i=n(425),p=n(8839);const r={sidebar_position:450,title:"45 - BenutomoAutomaticDisposeImplSourceGenerator",description:"Automatic dispose resources",slug:"/BenutomoAutomaticDisposeImplSourceGenerator"},l="BenutomoAutomaticDisposeImplSourceGenerator by benutomo",m={unversionedId:"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator",id:"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator",title:"45 - BenutomoAutomaticDisposeImplSourceGenerator",description:"Automatic dispose resources",source:"@site/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator.md",sourceDirName:"RSCG-Examples",slug:"/BenutomoAutomaticDisposeImplSourceGenerator",permalink:"/RSCG_Examples/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator",draft:!1,tags:[],version:"current",sidebarPosition:450,frontMatter:{sidebar_position:450,title:"45 - BenutomoAutomaticDisposeImplSourceGenerator",description:"Automatic dispose resources",slug:"/BenutomoAutomaticDisposeImplSourceGenerator"},sidebar:"tutorialSidebar",previous:{title:"44 - Zomp",permalink:"/RSCG_Examples/v2/docs/Zomp"},next:{title:"AOT.Reflection is faster reflection powered via Source Generators",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/ApparatusAOT_readme"}},c={},u=[{value:"Details",id:"details",level:2},{value:"Info",id:"info",level:3},{value:"Original Readme",id:"original-readme",level:3},{value:"About",id:"about",level:3},{value:"How to use",id:"how-to-use",level:2},{value:"Example ( source csproj, source files )",id:"example--source-csproj-source-files-",level:3},{value:"Generated Files",id:"generated-files",level:3},{value:"Usefull",id:"usefull",level:2},{value:"Download Example (.NET C# )",id:"download-example-net--c-",level:3},{value:"Download PDF",id:"download-pdf",level:3},{value:"Share BenutomoAutomaticDisposeImplSourceGenerator",id:"share-benutomoautomaticdisposeimplsourcegenerator",level:3}],d={toc:u},b="wrapper";function D(e){let{components:t,...r}=e;return(0,o.kt)(b,(0,a.Z)({},d,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"benutomoautomaticdisposeimplsourcegenerator--by-benutomo"},"BenutomoAutomaticDisposeImplSourceGenerator by benutomo"),(0,o.kt)(p.Z,{toc:u,mdxType:"TOCInline"}),(0,o.kt)("p",null,(0,o.kt)("a",{parentName:"p",href:"https://www.nuget.org/packages/Benutomo.AutomaticDisposeImpl.SourceGenerator/"},(0,o.kt)("img",{parentName:"a",src:"https://img.shields.io/nuget/dt/Benutomo.AutomaticDisposeImpl.SourceGenerator?label=Benutomo.AutomaticDisposeImpl.SourceGenerator",alt:"Nuget"})),"\n",(0,o.kt)("a",{parentName:"p",href:"https://github.com/benutomo-dev/RoslynComponents"},(0,o.kt)("img",{parentName:"a",src:"https://img.shields.io/github/last-commit/benutomo-dev/RoslynComponents?label=updated",alt:"GitHub last commit"})),"\n",(0,o.kt)("img",{parentName:"p",src:"https://img.shields.io/github/stars/benutomo-dev/RoslynComponents?style=social",alt:"GitHub Repo stars"})),(0,o.kt)("h2",{id:"details"},"Details"),(0,o.kt)("h3",{id:"info"},"Info"),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Name: ",(0,o.kt)("strong",{parentName:"p"},"BenutomoAutomaticDisposeImplSourceGenerator")),(0,o.kt)("p",{parentName:"admonition"},"A Source Generator that automatically implements the Dispose method of IDisposable and the DisposeAsync method of IAsyncDisposable."),(0,o.kt)("p",{parentName:"admonition"},"Author: benutomo"),(0,o.kt)("p",{parentName:"admonition"},"NuGet:\n",(0,o.kt)("em",{parentName:"p"},(0,o.kt)("a",{parentName:"em",href:"https://www.nuget.org/packages/Benutomo.AutomaticDisposeImpl.SourceGenerator/"},"https://www.nuget.org/packages/Benutomo.AutomaticDisposeImpl.SourceGenerator/"))," "),(0,o.kt)("p",{parentName:"admonition"},"You can find more details at ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/benutomo-dev/RoslynComponents"},"https://github.com/benutomo-dev/RoslynComponents")),(0,o.kt)("p",{parentName:"admonition"},"Source : ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/benutomo-dev/RoslynComponents"},"https://github.com/benutomo-dev/RoslynComponents"))),(0,o.kt)("h3",{id:"original-readme"},"Original Readme"),(0,o.kt)("admonition",{type:"note"},(0,o.kt)("h1",{parentName:"admonition",id:"roslyncomponents"},"RoslynComponents"),(0,o.kt)("p",{parentName:"admonition"},"C#\u306eRoslyn\u30b3\u30f3\u30d1\u30a4\u30e9\u7528\u306e\u30a2\u30ca\u30e9\u30a4\u30b6/\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3067\u3059\u3002"),(0,o.kt)("h2",{parentName:"admonition",id:"\u4e00\u89a7"},"\u4e00\u89a7"),(0,o.kt)("ul",{parentName:"admonition"},(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"#automaticdisposeimpl"},"AutomaticDisposeImpl"),(0,o.kt)("br",null),"\nC#\u3067",(0,o.kt)("inlineCode",{parentName:"li"},"IDisposable"),"\u3068",(0,o.kt)("inlineCode",{parentName:"li"},"IAsyncDisposable"),"\u306e\u5b9f\u88c5\u30d1\u30bf\u30fc\u30f3\u306b\u5bfe\u5fdc\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u3092\u81ea\u52d5\u5b9f\u88c5\u3059\u308b\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf"),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"#automaticnotifypropertychangedimpl"},"AutomaticNotifyPropertyChangedImpl"),(0,o.kt)("br",null),"\nC#\u3067",(0,o.kt)("inlineCode",{parentName:"li"},"INotifyPropertyChanged"),"\u306a\u3069\u306e\u5909\u66f4\u901a\u77e5\u4ed8\u304d\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5b9f\u88c5\u3092\u88dc\u52a9\u3059\u308b\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf"),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"#cancellationanalyzer"},"CancellationAnalyzer"),(0,o.kt)("br",null),"\n\u30ad\u30e3\u30f3\u30bb\u30eb\u30c8\u30fc\u30af\u30f3\u306e\u9069\u5207\u306a\u5f15\u304d\u6e21\u3057\u3068\u30ad\u30e3\u30f3\u30bb\u30eb\u30c8\u30fc\u30af\u30f3\u4ed8\u304d\u306e\u30b7\u30b0\u30cd\u30c1\u30e3\u306e\u30e1\u30bd\u30c3\u30c9\u306e\u512a\u5148\u7684\u4f7f\u7528\u3092\u88dc\u52a9\u3059\u308b\u305f\u3081\u306e\u30a2\u30ca\u30e9\u30a4\u30b6"),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"#cs0436relaxation"},"Cs0436Relaxation"),(0,o.kt)("br",null),"\n\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u751f\u6210\u3057\u305f\u30af\u30e9\u30b9\u7b49\u3092\u542b\u3080\u30a2\u30bb\u30f3\u30d6\u30ea\u540c\u58eb\u3067InternalsVisbleTo\u5c5e\u6027\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u306b\u767a\u751f\u3059\u308b\u5834\u5408\u304c\u3042\u308bCS0436\u8b66\u544a\u3092\u9069\u5207\u306b\u7de9\u548c(\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u8d77\u56e0\u3067\u306a\u3044\u5831\u544a\u306e\u307f\u3092\u5225ID\u3067\u518d\u8b66\u544a)\u3059\u308b\u305f\u3081\u306e\u30a2\u30ca\u30e9\u30a4\u30b6")),(0,o.kt)("h2",{parentName:"admonition",id:"automaticdisposeimpl"},"AutomaticDisposeImpl"),(0,o.kt)("p",{parentName:"admonition"},"C#\u3067",(0,o.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u306e\u5b9f\u88c5\u30d1\u30bf\u30fc\u30f3\u306b\u5bfe\u5fdc\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u3092\u81ea\u52d5\u5b9f\u88c5\u3059\u308b\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3067\u3059\u3002"),(0,o.kt)("h3",{parentName:"admonition",id:"introduction"},"Introduction"),(0,o.kt)("p",{parentName:"admonition"},"\u4ee5\u4e0b\u306e\u30b5\u30f3\u30d7\u30eb\u3067\u793a\u3059\u3088\u3046\u306b\u3001",(0,o.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306e\u5c11\u306a\u304f\u3068\u3082\u4e00\u65b9\u3092\u5b9f\u88c5\u3059\u308b\u30af\u30e9\u30b9\u306b",(0,o.kt)("inlineCode",{parentName:"p"},"partial"),"\u30ad\u30fc\u30ef\u30fc\u30c9\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"AutomaticDisposeImpl"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3059\u308b\u3068\u3001\u30af\u30e9\u30b9\u5185\u306b\u542b\u307e\u308c\u308b",(0,o.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u5b9f\u88c5\u3057\u3066\u3044\u308b\u578b\u3092\u6301\u3064\u30e1\u30f3\u30d0\u3092\u7834\u68c4\u3059\u308b",(0,o.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u304c\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002"),(0,o.kt)("h4",{parentName:"admonition",id:"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9"},"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-cs"},'using System;\nusing System.Threading.Tasks;\nusing Benutomo;\n\nnamespace SampleCode\n{\n // \u81ea\u52d5\u5b9f\u88c5\u3092\u9069\u7528\u3059\u308b\u30af\u30e9\u30b9\n [AutomaticDisposeImpl]\n public partial class DisposeableTest : IDisposable, IAsyncDisposable\n {\n // DisposeableTest\u306eDipose()\u3068DiposeAsync()\u306f\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u305f\u3081\u3001\u5b9a\u7fa9\u4e0d\u8981\n\n // IDisposable.Dispose()\u306b\u3088\u308b\u7834\u68c4\u304c\u53ef\u80fd\u306a\u30d5\u30a3\u30fc\u30eb\u30c9\n [EnableAutomaticDispose]\n ConsoleOutputDisposable consoleOutputDisposable = new ConsoleOutputDisposable();\n\n // IDisposable.Dispose()\u3068IAsyncDisposable.DisposeAsync()\u306e\u3069\u3061\u3089\u3067\u3082\u7834\u68c4\u304c\u53ef\u80fd\u306a\u30d7\u30ed\u30d1\u30c6\u30a3\n [EnableAutomaticDispose]\n ConsoleOutputAsyncDisposable consoleOutputAsyncDisposable { get; } = new ConsoleOutputAsyncDisposable();\n\n public DisposeableTest()\n {\n Console.WriteLine("Created new DisposeableTest");\n }\n }\n\n // \u4ee5\u964d\u306f\u3001\u51fa\u529b\u4f8b\u306e\u305f\u3081\u306e\u30b3\u30fc\u30c9\n\n class Program\n {\n public static async Task Main()\n {\n var disposeTestInstance = new DisposeableTest();\n\n Console.WriteLine("Begin disposeTestInstance.Dispose()");\n disposeTestInstance.Dispose();\n Console.WriteLine("End disposeTestInstance.Dispose()");\n Console.WriteLine();\n\n var asyncDisposeTestInstance = new DisposeableTest();\n\n Console.WriteLine("Begin disposeTestInstance.DisposeAsync()");\n await asyncDisposeTestInstance.DisposeAsync();\n Console.WriteLine("End disposeTestInstance.DisposeAsync()");\n Console.WriteLine();\n }\n }\n\n class ConsoleOutputDisposable : IDisposable\n {\n public void Dispose()\n {\n Console.WriteLine(" Called Dispose() of ConsoleOutputDisposable.");\n }\n }\n\n class ConsoleOutputAsyncDisposable : IDisposable, IAsyncDisposable\n {\n public void Dispose()\n {\n Console.WriteLine(" Called Dispose() of ConsoleOutputAsyncDisposable.");\n }\n\n public ValueTask DisposeAsync()\n {\n Console.WriteLine(" Called DisposeAsync() of ConsoleOutputAsyncDisposable.");\n return default;\n }\n }\n}\n')),(0,o.kt)("h4",{parentName:"admonition",id:"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092\u5b9f\u884c\u3057\u305f\u969b\u306e\u51fa\u529b\u4f8b"},"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092\u5b9f\u884c\u3057\u305f\u969b\u306e\u51fa\u529b\u4f8b"),(0,o.kt)("p",{parentName:"admonition"},"\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u30af\u30e9\u30b9\u5185\u306b\u542b\u307e\u308c\u308b",(0,o.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u307e\u305f\u306f",(0,o.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u3092\u5b9f\u88c5\u3057\u305f\u30e1\u30f3\u30d0\u306e",(0,o.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u306f\u3001\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u305f\u30b3\u30fc\u30c9\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002\n\u81ea\u52d5\u5b9f\u88c5\u30af\u30e9\u30b9\u306e",(0,o.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u306f\u57fa\u672c\u7684\u306b\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u306b\u3082",(0,o.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u304c\u3001\u30e1\u30f3\u30d0\u304c",(0,o.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3057\u304b\u5b9f\u88c5\u3057\u3066\u3044\u306a\u3044\u5834\u5408\u306f",(0,o.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u3092\u4f7f\u7528\u3057\u3066\u7834\u68c4\u3057\u307e\u3059\u3002"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre"},"Created new DisposeableTest\nBegin disposeTestInstance.Dispose()\n Called Dispose() of ConsoleOutputDisposable.\n Called Dispose() of ConsoleOutputAsyncDisposable.\nEnd disposeTestInstance.Dispose()\n\nCreated new DisposeableTest\nBegin disposeTestInstance.DisposeAsync()\n Called DisposeAsync() of ConsoleOutputAsyncDisposable.\n Called Dispose() of ConsoleOutputDisposable.\nEnd disposeTestInstance.DisposeAsync()\n\n")),(0,o.kt)("h3",{parentName:"admonition",id:"\u4f7f\u7528\u65b9\u6cd5"},"\u4f7f\u7528\u65b9\u6cd5"),(0,o.kt)("h4",{parentName:"admonition",id:"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb"},"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb"),(0,o.kt)("p",{parentName:"admonition"},"\u26a0\ufe0f VisualStudio\u3092\u5229\u7528\u3059\u308b\u5834\u5408\u306f2022\u306e\u6700\u65b0\u7248\u304c\u5fc5\u8981\u3067\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},(0,o.kt)("a",{parentName:"p",href:"https://www.nuget.org/packages/Benutomo.AutomaticDisposeImpl.SourceGenerator/"},"Nuget"),"\u306a\u3069\u3092\u5229\u7528\u3057\u3066\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30a2\u30ca\u30e9\u30a4\u30b6\u306bBenutomo.AutomaticDisposeImpl.SourceGenerator.dll\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-ps"},"Install-Package Benutomo.AutomaticDisposeImpl.SourceGenerator\n")),(0,o.kt)("h4",{parentName:"admonition",id:"\u57fa\u672c"},"\u57fa\u672c"),(0,o.kt)("p",{parentName:"admonition"},"\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3001\u7834\u68c4\u306e\u81ea\u52d5\u5b9f\u88c5\u3092\u4f7f\u7528\u3057\u305f\u3044\u30af\u30e9\u30b9\u3092\u542b\u3080C#\u306e\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u306e\u5148\u982d\u90e8\u306b",(0,o.kt)("inlineCode",{parentName:"p"},"using Benutomo;"),"\u3092\u8ffd\u52a0\u3057\u3001",(0,o.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u306e\u5c11\u306a\u304f\u3068\u3082\u4e00\u65b9\u3092\u5b9f\u88c5\u3057\u3066\u3044\u308b\u30af\u30e9\u30b9\u306b",(0,o.kt)("inlineCode",{parentName:"p"},"partial"),"\u30ad\u30fc\u30ef\u30fc\u30c9\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"[AutomaticDisposeImpl]"),"\u5c5e\u6027\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\n",(0,o.kt)("inlineCode",{parentName:"p"},"EnableDisposeImpl"),"\u5c5e\u6027\u3092\u8ffd\u52a0\u3057\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u307e\u306f\u305f\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u30e1\u30f3\u30d0\u3092\u542b\u3080\u30af\u30e9\u30b9\u304c\u7834\u68c4\u3068\u540c\u6642\u306b\u81ea\u52d5\u7684\u306b\u7834\u68c4\u3055\u308c\u307e\u3059\u3002\n",(0,o.kt)("inlineCode",{parentName:"p"},"DisnableDisposeImpl"),"\u5c5e\u6027\u3092\u8ffd\u52a0\u3057\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u307e\u306f\u305f\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u81ea\u52d5\u7684\u306a\u7834\u68c4\u306e\u5bfe\u8c61\u5916\u3068\u306a\u308a\u307e\u3059\u3002\n\u81ea\u52d5\u5b9f\u88c5\u3059\u308b\u610f\u5473\u304c\u3042\u308a\u307e\u305b\u3093\u304c\u3001\u30e1\u30f3\u30d0\u306f\u7a7a\u3067\u3082\u554f\u984c\u3042\u308a\u307e\u305b\u3093\u3002"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-cs"},"using Benutomo;\nusing System;\n\n// \u540c\u671f\u7684\u306a\u7834\u68c4(IDisposable)\u3092\u81ea\u52d5\u5b9f\u88c5\n[AutomaticDisposeImpl]\npartial class Sample1 : IDisposable\n{\n // \u81ea\u52d5\u7834\u68c4\u3059\u308b\u30e1\u30f3\u30d0\u306b\u306fEnableAutomaticDispose\u5c5e\u6027\u3092\u4ed8\u4e0e\n [EnableAutomaticDispose]\n IDisposable _disposable;\n\n // \u81ea\u52d5\u7834\u68c4\u3057\u306a\u3044\u30e1\u30f3\u30d0\u306b\u306fDisableAutomaticDispose\u5c5e\u6027\u3092\u4ed8\u4e0e\n [DisableAutomaticDispose]\n IDisposable Disposable => _disposable;\n}\n\n// \u975e\u540c\u671f\u7684\u306a\u7834\u68c4(IAsyncDisposable)\u3092\u81ea\u52d5\u5b9f\u88c5\n[AutomaticDisposeImpl]\npartial class Sample2 : IAsyncDisposable\n{\n}\n\n// \u540c\u671f\u7684\u306a\u7834\u68c4(IDisposable)\u3068\u975e\u540c\u671f\u7684\u306a\u7834\u68c4(IAsyncDisposable)\u3092\u81ea\u52d5\u5b9f\u88c5\n[AutomaticDisposeImpl]\npartial class Sample3 : IDisposable, IAsyncDisposable\n{\n}\n\n// \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u304c\u660e\u793a\u7684\u306b\u5b9f\u88c5\u3055\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u3001NG\u3002IDisposable\u3068IAsyncDisposable\u306e\u5c11\u306a\u304f\u3068\u3069\u3061\u3089\u304b\u4e00\u65b9\u306e\u5b9f\u88c5\u304c\u5fc5\u8981\u3002\n[AutomaticDisposeImpl]\npartial class Sample4\n{\n}\n")),(0,o.kt)("p",{parentName:"admonition"},"\u2139 \u81ea\u52d5\u5b9f\u88c5\u30b3\u30fc\u30c9\u304b\u3089\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u304c\u884c\u308f\u308c\u308b\u306e\u306f\u547c\u3073\u51fa\u3057\u65b9\u306b\u95a2\u308f\u3089\u305a(\u81ea\u52d5\u5b9f\u88c5\u30af\u30e9\u30b9\u306e",(0,o.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"DisposeAysnc()"),"\u306e\u3069\u3061\u3089\u304c\u5148\u306b\u4f55\u56de\u547c\u3073\u51fa\u3055\u308c\u3066\u3082)\u3001\u6700\u5927\uff11\u56de\u3067\u3059\u3002\u6a19\u6e96\u306e",(0,o.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/ja-jp/dotnet/standard/garbage-collection/implementing-dispose#implement-the-dispose-pattern"},"Dispose\u30d1\u30bf\u30fc\u30f3"),"\u3068\u540c\u69d8\u306b\u91cd\u8907\u3059\u308b\u547c\u3073\u51fa\u3057\u306f\u7121\u8996\u3055\u308c\u307e\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u2139 \u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u305f\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u3067\u751f\u3058\u305f\u4f8b\u5916\u306f\u3001\u30ea\u30ea\u30fc\u30b9\u30d3\u30eb\u30c9\u6642\u306f\u7121\u8996\u3055\u308c\u3001\u30c7\u30d0\u30c3\u30b0\u30d3\u30eb\u30c9\u6642\u306fDebug.Fail()\u306b\u3088\u3063\u3066\u30c7\u30d0\u30c3\u30ac\u3092\u505c\u6b62\u3055\u305b\u307e\u3059\u3002\u6a19\u6e96\u7684\u306a",(0,o.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u7b49\u306f\u4f8b\u5916\u3092\u767a\u751f\u3055\u305b\u308b\u3053\u3068\u306a\u304f\u8907\u6570\u56de\u306e\u547c\u3073\u51fa\u3057\u304c\u53ef\u80fd\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059(",(0,o.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/ja-jp/dotnet/standard/garbage-collection/implementing-dispose"},"Dispose\u30e1\u30bd\u30c3\u30c9\u306e\u5b9f\u88c5"),")\u3002\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30b3\u30fc\u30c9\u306f\u305d\u308c\u304c\u5b88\u3089\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u671f\u5f85\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u7834\u68c4\u3067\u4f8b\u5916\u3092\u767a\u751f\u3055\u305b\u308b\u30e1\u30f3\u30d0\u304c\u5b58\u5728\u3059\u308b\u5834\u5408\u306f\u3001\u81ea\u52d5\u5b9f\u88c5\u5bfe\u8c61\u304b\u3089\u9664\u5916\u3057\u3001\u72ec\u81ea\u51e6\u7406\u30e1\u30bd\u30c3\u30c9\u306e\u4e2d\u3067\u7834\u68c4\u3068\u4f8b\u5916\u306e\u30cf\u30f3\u30c9\u30ea\u30f3\u30b0\u3092\u884c\u3063\u3066\u4e0b\u3055\u3044\u3002"),(0,o.kt)("h4",{parentName:"admonition",id:"dispose\u306a\u3069\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u30bf\u30a4\u30df\u30f3\u30b0\u3067\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u3068\u540c\u6642\u306b\u72ec\u81ea\u306e\u51e6\u7406\u3082\u5b9f\u884c\u3059\u308b"},"Dispose()\u306a\u3069\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u30bf\u30a4\u30df\u30f3\u30b0\u3067\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u3068\u540c\u6642\u306b\u72ec\u81ea\u306e\u51e6\u7406\u3082\u5b9f\u884c\u3059\u308b"),(0,o.kt)("p",{parentName:"admonition"},(0,o.kt)("inlineCode",{parentName:"p"},"[ManagedObjectDisposeMethod]"),"\u5c5e\u6027\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"[ManagedObjectAsyncDisposeMethod]"),"\u5c5e\u6027\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b",(0,o.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u304a\u3088\u3073\u3001",(0,o.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u306e\u4e2d\u304b\u3089\u30e6\u30fc\u30b6\u5074\u306e\u30b3\u30fc\u30c9\u3067\u5b9f\u88c5\u3055\u308c\u308b\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-cs"},"[AutomaticDisposeImpl]\npartial class UserDefinedDisposeImplSample : IDisposable, IAsyncDisposable\n{\n [ManagedObjectDisposeMethod]\n void ManagedObjectDisposeMethod() { } // \u81ea\u52d5\u5b9f\u88c5\u306eDispose()\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\u30e1\u30f3\u30d0\u306e\u81ea\u52d5\u7834\u68c4\u4ee5\u5916\u306e\u30e6\u30fc\u30b6\u72ec\u81ea\u306e\u51e6\u7406\u306f\u3053\u3053\u3067\u5b9f\u88c5\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002\n\n [ManagedObjectAsyncDisposeMethod]\n ValueTask ManagedObjectDisposeMethodAsync() => default; // \u81ea\u52d5\u5b9f\u88c5\u306eDisposeAsync()\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\u30e1\u30f3\u30d0\u306e\u81ea\u52d5\u7834\u68c4\u4ee5\u5916\u306e\u30e6\u30fc\u30b6\u72ec\u81ea\u306e\u51e6\u7406\u306f\u3053\u3053\u3067\u5b9f\u88c5\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002\n}\n")),(0,o.kt)("p",{parentName:"admonition"},(0,o.kt)("inlineCode",{parentName:"p"},"[ManagedObjectDisposeMethod]"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u306f\u623b\u308a\u5024\u304c",(0,o.kt)("inlineCode",{parentName:"p"},"void"),"\u304b\u3064\u5f15\u6570\u306e\u5b58\u5728\u3057\u306a\u3044\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u30e1\u30bd\u30c3\u30c9\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},(0,o.kt)("inlineCode",{parentName:"p"},"[ManagedObjectAsyncDisposeMethod]"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u306f\u623b\u308a\u5024\u304c",(0,o.kt)("inlineCode",{parentName:"p"},"ValueTask"),"\u307e\u305f\u306f",(0,o.kt)("inlineCode",{parentName:"p"},"Task"),"\u304b\u3064\u5f15\u6570\u306e\u5b58\u5728\u3057\u306a\u3044\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u30e1\u30bd\u30c3\u30c9\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u3069\u3061\u3089\u306e\u5834\u5408\u3082\u3001\u4e00\u3064\u306e\u30af\u30e9\u30b9\u5185\u3067\u540c\u3058\u5c5e\u6027\u3092\u8907\u6570\u306e\u30e1\u30bd\u30c3\u30c9\u306b\u4ed8\u4e0e\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u2139 \u3053\u306e\u6a5f\u80fd\u306e\u4ed5\u69d8\u3068\u3057\u3066\u3001\u81ea\u52d5\u5b9f\u88c5\u30b3\u30fc\u30c9\u304c\u5b9f\u884c\u3059\u308b\u7834\u68c4\u306f\u540c\u671f\u7684\u306a\u7834\u68c4\u3068\u975e\u540c\u671f\u306a\u7834\u68c4\u3092\u542b\u3081\u3066\u6700\u5927\uff11\u56de\u306e\u307f\u3067\u3042\u308b\u3053\u3068\u306b\u3054\u6ce8\u610f\u4e0b\u3055\u3044\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u4f8b\u3048\u3070\u3001\u81ea\u52d5\u5b9f\u88c5\u3057\u305f\u30af\u30e9\u30b9\u306e\u30e1\u30bd\u30c3\u30c9\u304c"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-cs"},"var sample = new UserDefinedDisposeImplSample();\nsample.Dipose(); // \u3053\u306e\u7834\u68c4\u306e\u307f\u304c\u6709\u52b9\u3002\u4ee5\u964d\u306e\u91cd\u8907\u547c\u3073\u51fa\u3057\u306f\u7121\u8996\u3055\u308c\u308b\u3002\nawait sample.DiposeAsync();\nsample.Dipose();\n")),(0,o.kt)("p",{parentName:"admonition"},"\u306e\u3088\u3046\u306b\u547c\u3073\u51fa\u3055\u308c\u305f\u5834\u5408\u3001\u30e6\u30fc\u30b6\u306e\u30e1\u30bd\u30c3\u30c9\u304c\u547c\u3070\u308c\u308b\u306e\u306f\u6700\u521d\u306e",(0,o.kt)("inlineCode",{parentName:"p"},"sample.Dispose()"),"\u306e\u30bf\u30a4\u30df\u30f3\u30b0\u3067",(0,o.kt)("inlineCode",{parentName:"p"},"ManagedObjectDisposeMethod()"),"\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\uff11\u56de\u306e\u307f\u3067\u3059\u3002\u305d\u306e\u3042\u3068\u306b\u7d9a\u304f",(0,o.kt)("inlineCode",{parentName:"p"},"await sample.DiposeAsync()"),"\u3068\uff12\u56de\u76ee\u306e",(0,o.kt)("inlineCode",{parentName:"p"},"sample.Dispose()"),"\u306f\u5b8c\u5168\u306b\u7121\u8996\u3055\u308c\u307e\u3059\u3002\u4e0a\u8a18\u306e\u4f8b\u3067",(0,o.kt)("inlineCode",{parentName:"p"},"ManagedObjectDisposeMethodAsync()"),"\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u3053\u3068\u306f\u3042\u308a\u307e\u305b\u3093\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u3082\u3057\u3001\u6700\u521d\u306e\u7834\u68c4\u304c",(0,o.kt)("inlineCode",{parentName:"p"},"await sample.DiposeAsync()"),"\u3067\u884c\u308f\u308c\u305f\u5834\u5408\u306f\u3001",(0,o.kt)("inlineCode",{parentName:"p"},"ManagedObjectDisposeMethodAsync()"),"\u304c\uff11\u56de\u306e\u307f\u547c\u3073\u51fa\u3055\u308c\u3001\u305d\u308c\u4ee5\u964d\u306f\u540c\u69d8\u306b\u7121\u8996\u3055\u308c\u307e\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u26a0 ",(0,o.kt)("strong",{parentName:"p"},"\u81ea\u52d5\u5b9f\u88c5\u306e\u30e1\u30f3\u30d0\u7834\u68c4\u3068\u72ec\u81ea\u306e\u51e6\u7406\u306e\u5b9f\u884c\u9806\u306f\u4e0d\u78ba\u5b9a\u3067\u3059"),"\u3002\u5c06\u6765\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u3067\u306f\u9806\u756a\u304c\u5165\u308c\u66ff\u308f\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u306e\u3067\u3001\u73fe\u5728\u306e\u81ea\u52d5\u5b9f\u88c5\u306e\u9806\u756a\u306b\u4f9d\u5b58\u3057\u306a\u3044\u3088\u3046\u306b\u6ce8\u610f\u3057\u3066\u4e0b\u3055\u3044\u3002"),(0,o.kt)("h4",{parentName:"admonition",id:"\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4"},"\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4"),(0,o.kt)("p",{parentName:"admonition"},(0,o.kt)("inlineCode",{parentName:"p"},"IDisposable.Dipose()"),"\u306a\u3069\u3067\u81ea\u52d5\u7834\u68c4\u3067\u304d\u308b\u30e1\u30f3\u30d0\u306e\u307b\u304b\u306b\u3001",(0,o.kt)("inlineCode",{parentName:"p"},"System.IntPtr"),"\u7b49\u3092\u5229\u7528\u3057\u3066\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u30cf\u30f3\u30c9\u30eb\u306a\u3069\u3092\u4fdd\u6301\u3057\u3066\u3044\u308b\u5834\u5408\u306f",(0,o.kt)("inlineCode",{parentName:"p"},"[UnmanagedResourceReleaseMethod]"),"\u5c5e\u6027\u3092\u5229\u7528\u3059\u308b\u3053\u3068\u3067\u3001\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4\u3092\u884c\u3046\u30e1\u30bd\u30c3\u30c9\u3092\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30b3\u30fc\u30c9\u304b\u3089\u547c\u3073\u51fa\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-cs"},"[AutomaticDisposeImpl]\npartial class UserDefinedFinalizeImplSample : IDisposable, IAsyncDisposable\n{\n [UnmanagedResourceReleaseMethod]\n void UnmanagedResourceReleaseMethod() { } // \u81ea\u52d5\u5b9f\u88c5\u306eDispose(),DiposeAsync(),~UserDefinedFinalizeImplSample()\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4\u306f\u3053\u3053\u3067\u5b9f\u88c5\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002\n}\n")),(0,o.kt)("p",{parentName:"admonition"},"\u2139 ",(0,o.kt)("inlineCode",{parentName:"p"},"[UnmanagedResourceReleaseMethod]"),"\u5c5e\u6027\u3092\u4f7f\u7528\u3057\u305f\u30af\u30e9\u30b9\u306f\u30d5\u30a1\u30a4\u30ca\u30e9\u30a4\u30b6\u3082\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u307e\u3059\u3002\u305d\u306e\u305f\u3081\u3001\u660e\u793a\u7684\u306b",(0,o.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u307e\u305f\u306f",(0,o.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u306e\u547c\u3073\u51fa\u3057\u304c\u3055\u308c\u305a\u306b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u30ac\u30fc\u30d9\u30b8\u30b3\u30ec\u30af\u30c8\u3055\u308c\u305f\u5834\u5408\u3082\u30ac\u30fc\u30d9\u30b8\u30b3\u30ec\u30af\u30bf\u306e\u30d5\u30a1\u30a4\u30ca\u30e9\u30a4\u30ba\u306e\u30bf\u30a4\u30df\u30f3\u30b0\u3067\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u305f\u30d5\u30a1\u30a4\u30ca\u30e9\u30a4\u30b6\u3092\u7d4c\u7531\u3057\u3066",(0,o.kt)("inlineCode",{parentName:"p"},"[UnmanagedResourceReleaseMethod]"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3057\u305f\u30e1\u30bd\u30c3\u30c9\u304c\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u2139 ",(0,o.kt)("inlineCode",{parentName:"p"},"[ManagedObjectDisposeMethod]"),"\u5c5e\u6027\u3067\u7834\u68c4\u3092\u81ea\u52d5\u5b9f\u88c5\u3057\u305f\u30af\u30e9\u30b9\u306f",(0,o.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,o.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u3092\u76f4\u63a5\u5b9f\u88c5\u3057\u3066\u3044\u308b",(0,o.kt)("inlineCode",{parentName:"p"},"seald"),"\u30af\u30e9\u30b9\u3067\u3042\u308b\u304b\u3001\u7d99\u627f\u95a2\u4fc2\u306b\u3042\u308b\u89aa\u30af\u30e9\u30b9\u30fb\u5b50\u30af\u30e9\u30b9\u304c",(0,o.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/ja-jp/dotnet/standard/garbage-collection/implementing-dispose#implement-the-dispose-pattern"},"\u540c\u671f"),"\u304a\u3088\u3073",(0,o.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/ja-jp/dotnet/standard/garbage-collection/implementing-disposeasync#implement-the-async-dispose-pattern"},"\u975e\u540c\u671f"),"\u306e\u7834\u68c4\u30d1\u30bf\u30fc\u30f3\u3092\u6b63\u3057\u304f\u5b9f\u88c5\u3057\u3066\u3044\u308b\u9650\u308a\u3001",(0,o.kt)("inlineCode",{parentName:"p"},"[UnmanagedResourceReleaseMethod]"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3057\u305f\u30e1\u30bd\u30c3\u30c9\u306f\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u751f\u6210\u3055\u308c\u3066\u304b\u3089\u6d88\u6ec5\u3059\u308b\u307e\u3067\u306b\u3001\u305d\u306e\u9593\u306e\u660e\u793a\u7684\u306a\u7834\u68c4\u306e\u6709\u7121\u3084\u56de\u6570\u306b\u95a2\u308f\u3089\u305a\u3001\u81ea\u52d5\u5b9f\u88c5\u5074\u304b\u3089\u306e\u547c\u3073\u51fa\u3057\u56de\u6570\u304c\u5fc5\u305a\uff11\u56de\u306a\u308b\u3053\u3068\u304c\u4fdd\u8a3c\u3055\u308c\u307e\u3059\u3002"),(0,o.kt)("h2",{parentName:"admonition",id:"automaticnotifypropertychangedimpl"},"AutomaticNotifyPropertyChangedImpl"),(0,o.kt)("p",{parentName:"admonition"},"TODO"),(0,o.kt)("h2",{parentName:"admonition",id:"cancellationanalyzer"},"CancellationAnalyzer"),(0,o.kt)("p",{parentName:"admonition"},"TODO"),(0,o.kt)("h2",{parentName:"admonition",id:"cs0436relaxation"},"Cs0436Relaxation"),(0,o.kt)("p",{parentName:"admonition"},"\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u751f\u6210\u3057\u305f\u30af\u30e9\u30b9\u7b49\u3092\u542b\u3080\u30a2\u30bb\u30f3\u30d6\u30ea\u540c\u58eb\u3067InternalsVisbleTo\u5c5e\u6027\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u306b\u767a\u751f\u3059\u308b\u5834\u5408\u304c\u3042\u308b",(0,o.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/dotnet/csharp/misc/cs0436"},"CS0436"),"\u8b66\u544a\u3092\u9069\u5207\u306b\u7de9\u548c\u3059\u308b\u305f\u3081\u306e\u30a2\u30ca\u30e9\u30a4\u30b6\u3067\u3059\u3002"),(0,o.kt)("h3",{parentName:"admonition",id:"introduction-1"},"Introduction"),(0,o.kt)("p",{parentName:"admonition"},"\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3092\u5229\u7528\u3059\u308b\u30a2\u30bb\u30f3\u30d6\u30ea\u540c\u58eb\u306e\u53c2\u7167\u306bInternalsVisbleTo\u5c5e\u6027\u304c\u9069\u7528\u3055\u308c\u3066\u3044\u308b\u3068\u3001InternalsVisbleTo\u306b\u6307\u5b9a\u3055\u308c\u305f\u30a2\u30bb\u30f3\u30d6\u30ea\u304b\u3089\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u751f\u6210\u3057\u305f\u5c5e\u6027\u306a\u3069\u3092\u5229\u7528\u3059\u308b\u7b87\u6240\u3067\u3001CS0436\u8b66\u544a\u304c\u767a\u751f\u3059\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3092\u5229\u7528\u3059\u308b\u5834\u5408\u3001\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u5c5e\u6027\u306a\u3069\u3092internal\u306a\u30af\u30e9\u30b9\u3068\u3057\u3066\u30bd\u30fc\u30b9\u751f\u6210\u3057\u3001\u30e6\u30fc\u30b6\u30b3\u30fc\u30c9\u5185\u3067\u305d\u308c\u3089\u3092\u30bd\u30fc\u30b9\u751f\u6210\u306b\u95a2\u3059\u308b\u30de\u30fc\u30af\u3068\u3057\u3066\u4f7f\u7528\u3059\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002\u901a\u5e38\u3001internal\u306a\u30af\u30e9\u30b9\u306f\u7570\u306a\u308b\u30a2\u30bb\u30f3\u30d6\u30ea\u3092\u8de8\u3044\u3067\u76f4\u63a5\u53c2\u7167\u3059\u308b\u3053\u3068\u304c\u51fa\u6765\u306a\u3044\u305f\u3081\u554f\u984c\u3068\u306a\u308a\u307e\u305b\u3093\u304c\u3001InternalsVisbleTo\u5c5e\u6027\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u306finternal\u30af\u30e9\u30b9\u3082\u53c2\u7167\u3067\u304d\u3066\u3057\u307e\u3046\u305f\u3081\u3001\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u751f\u6210\u3057\u305f\u578b\u304c\u3001\u81ea\u5206\u81ea\u8eab\u3068\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306e\u4e21\u65b9\u306b\u5168\u304f\u540c\u4e00\u306e\u540d\u524d\u7a7a\u9593\u3068\u8b58\u5225\u5b50\u3067\u5b58\u5728\u3059\u308b\u72b6\u614b\u3068\u306a\u3063\u3066\u3057\u307e\u3044\u3001\u4ee5\u4e0b\u306e\u4f8b\u306e\u4e2d\u306b\u3042\u308b\u3088\u3046\u306a\u5f62\u3067\u7af6\u5408(CS0436)\u304c\u767a\u751f\u3057\u307e\u3059\u3002"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-cs"},"// \u3053\u306e\u4f8b\u3067\u3001A.dll,B.dll,C.dll\u30a2\u30bb\u30f3\u30d6\u30ea\u306b\u5bfe\u3057\u3066\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u6697\u9ed9\u7684\u306b\u751f\u6210\u3057\u3066\u3044\u308b\u5c5e\u6027\u30af\u30e9\u30b9\n\nnamespace SourceGen;\n\ninternal ExampleMarkerAttribute : Attribute\n{}\n")),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-cs"},'// A.dll\n\n[assembly: InternalsVisibleTo("C")]\n\nnamespace A;\n\n// A.dll\u3067\u306f\u81ea\u5206\u81ea\u8eab\u306e\u4e2d\u3067\u751f\u6210\u3055\u308c\u3066\u3044\u308b\u30bd\u30fc\u30b9\u304c\n// \u552f\u4e00\u306eExampleMarker\u5c5e\u6027\u306e\u5b9a\u7fa9\u3067\u3042\u308b\u306e\u3067\u3001\n// ExampleMarker\u304c\u7af6\u5408\u3059\u308b\u3053\u3068\u306f\u306a\u3044\n[SourceGen.ExampleMarker]\nclass ClassA {}\n')),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-cs"},"// B.dll (A.dll\u3092\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306b\u542b\u3080)\n\nnamespace B;\n\n// B.dll\u3067\u306f\u3001\u81ea\u5206\u81ea\u8eab\u3068\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306eA.dll\u3067\n// ExampleMarker\u306e\u5b9a\u7fa9\u304c\u91cd\u8907\u3057\u3066\u3044\u308b\u304c\u3001\n// ExampleMarker\u304cinternal\u3067B.dll\u304b\u3089\u30a2\u30af\u30bb\u30b9\u304c\u51fa\u6765\u306a\u3044\u305f\u3081\u3001\n// A.dll\u3068B.dll\u306eExampleMarker\u306f\u7af6\u5408\u3057\u306a\u3044\n[SourceGen.ExampleMarker]\nclass ClassB {}\n")),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-cs"},"// C.dll (A.dll\u3092\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306b\u542b\u3080)\n\nnamespace C;\n\n// C.dll\u3067\u306f\u3001\u81ea\u5206\u81ea\u8eab\u3068\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306eA.dll\u3067\n// ExampleMarker\u306e\u5b9a\u7fa9\u304c\u91cd\u8907\u3057\u3066\u3044\u308b\u4e0a\u306b\u3001\n// C.dll\u304b\u3089A.dll\u306einternal\u306a\u578b\u3084\u30e1\u30f3\u30d0\u306b\u3082\u30a2\u30af\u30bb\u30b9\u304c\u51fa\u6765\u3066\u3057\u307e\u3046\u305f\u3081\u3001\n// A.dll\u3068C.dll\u306eExampleMarker\u304c\u7af6\u5408\u3059\u308b\n[SourceGen.ExampleMarker] // CS0436\u304c\u767a\u751f\u3059\u308b\nclass ClassC {}\n")),(0,o.kt)("p",{parentName:"admonition"},"Cs0436Relaxation\u306f\u3001CS0436\u3092\u4e00\u65e6\u6291\u6b62(suggestion\u5316)\u3059\u308b\u4ee3\u308f\u308a\u306b\u3001Cs0436Relaxationga\u304c\u4e0a\u8a18\u306e\u69d8\u306a\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u90fd\u5408\u4ee5\u5916\u3067\u767a\u751f\u3059\u308b\u6291\u6b62\u3059\u308b\u5fc5\u8981\u306e\u306a\u304b\u3063\u305fCS0436\u3092\u5225\u306eID(RX_CS0436_1)\u306ewarning\u3068\u3057\u3066\u5831\u544a\u3059\u308b\u3053\u3068\u3067\u3001\u5b9f\u8cea\u7684\u306b\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306b\u95a2\u308f\u308bCS0436\u3060\u3051\u3092\u6291\u6b62\u3059\u308b\u3053\u3068\u304c\u51fa\u6765\u307e\u3059\u3002"),(0,o.kt)("h3",{parentName:"admonition",id:"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb-1"},"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb"),(0,o.kt)("p",{parentName:"admonition"},"\u26a0\ufe0f VisualStudio\u3092\u5229\u7528\u3059\u308b\u5834\u5408\u306f2022\u306e\u6700\u65b0\u7248\u304c\u5fc5\u8981\u3067\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},"Cs0436Relaxation\u3092\u5229\u7528\u3059\u308b\u305f\u3081\u306b\u306fCs0436Relaxation\u81ea\u4f53\u3092\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306ePackageReference\u306b\u52a0\u3048\u308b\u3060\u3051\u3067\u306a\u304f\u3001\u751f\u306eCS0436\u3092warning\u304b\u3089suggestion\u306b\u5909\u66f4\u3059\u308beditorconfig\u306e\u8a2d\u5b9a\u3082\u5fc5\u8981\u306b\u306a\u308a\u307e\u3059\u3002\u307e\u305f\u3001Cs0436Relaxation\u304c\u6a5f\u80fd\u3057\u3066\u3044\u306a\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067editorconfig\u306e\u8a2d\u5b9a\u306e\u65b9\u3060\u3051\u304c\u6709\u52b9\u3068\u306a\u3063\u3066\u3057\u307e\u3046\u3068\u305d\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u306f\u5358\u7d14\u306bCS0436\u304c\u8b66\u544a\u5bfe\u8c61\u304b\u3089\u5916\u308c\u305f\u307e\u307e\u3068\u306a\u3063\u3066\u3057\u307e\u3046\u306e\u3067\u3001\u3069\u3061\u3089\u306e\u8a2d\u5b9a\u3082\u5168\u3066\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u5171\u901a\u5316\u3055\u308c\u308b\u3088\u3046\u306b\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u3092\u304a\u52e7\u3081\u3057\u307e\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u4ee5\u4e0b\u306e\u624b\u9806\u306f\u3001\u5168\u3066\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u5171\u901a\u3067\u8a2d\u5b9a\u3059\u308b\u524d\u63d0\u306e\u3082\u306e\u3067\u3059\u3002"),(0,o.kt)("h4",{parentName:"admonition",id:"\u624b\u9806\uff11-directorybuildprops\u306e\u914d\u7f6e\u7de8\u96c6"},"\u624b\u9806\uff11 Directory.Build.props\u306e\u914d\u7f6e(\u7de8\u96c6)"),(0,o.kt)("p",{parentName:"admonition"},"\u4ee5\u4e0b\u306eDirectory.Build.props\u3092\u5168\u3066\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u542b\u3080\u30eb\u30fc\u30c8\u30d5\u30a9\u30eb\u30c0\u306b\u914d\u7f6e\u3057\u307e\u3059\u3002"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-xml"},'\n \n \n \n\n')),(0,o.kt)("p",{parentName:"admonition"},"\u65e2\u306bDirectory.Build.props\u304c\u5b58\u5728\u3057\u3066\u3044\u308b\u5834\u5408\u306f\u3001\u65e2\u5b58\u306eDirectory.Build.props\u306e\u4e2d\u306b\u4e0a\u8a18\u306ePackageReference\u3092\u52a0\u3048\u307e\u3059\u3002"),(0,o.kt)("p",{parentName:"admonition"},"\u6700\u65b0\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u306f",(0,o.kt)("a",{parentName:"p",href:"https://www.nuget.org/packages/Benutomo.Cs0436Relaxation/"},"NuGet"),"\u3092\u3054\u53c2\u7167\u304f\u3060\u3055\u3044\u3002"),(0,o.kt)("h5",{parentName:"admonition",id:"\u53c2\u8003"},"\u53c2\u8003"),(0,o.kt)("ul",{parentName:"admonition"},(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"https://docs.microsoft.com/visualstudio/msbuild/customize-your-build"},"\u30d3\u30eb\u30c9\u306e\u30ab\u30b9\u30bf\u30de\u30a4\u30ba"))),(0,o.kt)("h4",{parentName:"admonition",id:"\u624b\u9806\uff12-editorconfig\u306e\u914d\u7f6e\u7de8\u96c6"},"\u624b\u9806\uff12 editorconfig\u306e\u914d\u7f6e(\u7de8\u96c6)"),(0,o.kt)("p",{parentName:"admonition"},"\u4ee5\u4e0b\u306e.editorconfig\u3092\u5168\u3066\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u542b\u3080\u30eb\u30fc\u30c8\u30d5\u30a9\u30eb\u30c0\u306b\u914d\u7f6e\u3057\u307e\u3059\u3002"),(0,o.kt)("pre",{parentName:"admonition"},(0,o.kt)("code",{parentName:"pre",className:"language-conf"},"# CS0436(\u578b\u304c\u30a4\u30f3\u30dd\u30fc\u30c8\u3055\u308c\u305f\u578b\u3068\u7af6\u5408\u3057\u3066\u3044\u307e\u3059)\u3092\u6291\u6b62\u3002\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u8d77\u56e0\u4ee5\u5916\u306eCS0436\u306fCs0436Relaxation\u304cRX_CS0436_1\u3068\u3057\u3066warning\u3002\ndotnet_diagnostic.CS0436.severity = suggestion\n")),(0,o.kt)("p",{parentName:"admonition"},"\u65e2\u5b58\u306e.editorconfig\u304c\u65e2\u306b\u5b58\u5728\u3059\u308b\u5834\u5408\u306f\u305d\u306e\u4e2d\u306b\u4ed8\u3051\u52a0\u3048\u307e\u3059\u3002Cs0436Relaxation\u304c\u50cd\u304f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u5bfe\u3057\u3066CS0436\u306e\u91cd\u8981\u5ea6\u3092warning\u304b\u3089suggestion\u307e\u3067\u843d\u3068\u3057\u307e\u3059\u3002"),(0,o.kt)("h5",{parentName:"admonition",id:"\u53c2\u8003-1"},"\u53c2\u8003"),(0,o.kt)("ul",{parentName:"admonition"},(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"https://editorconfig.org/"},"EditorConfig.org")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"https://docs.microsoft.com/visualstudio/ide/create-portable-custom-editor-options"},"EditorConfig \u3067\u79fb\u690d\u53ef\u80fd\u306a\u30ab\u30b9\u30bf\u30e0 \u30a8\u30c7\u30a3\u30bf\u30fc\u8a2d\u5b9a\u3092\u4f5c\u6210\u3059\u308b"))),(0,o.kt)("h3",{parentName:"admonition",id:"cs0436relaxation\u304c\u6b63\u3057\u304f\u6a5f\u80fd\u3057\u3066\u3044\u308b\u5834\u5408\u306e\u8b66\u544a\u306b\u3064\u3044\u3066"},"Cs0436Relaxation\u304c\u6b63\u3057\u304f\u6a5f\u80fd\u3057\u3066\u3044\u308b\u5834\u5408\u306e\u8b66\u544a\u306b\u3064\u3044\u3066"),(0,o.kt)("p",{parentName:"admonition"},"Cs0436Relaxation\u304c\u6a5f\u80fd\u3057\u3066\u3044\u308b\u74b0\u5883\u3067\u306f\u4ee5\u4e0b\u306e\u8b66\u544a\u304c\u767a\u751f\u3057\u307e\u3059\u3002\u4e0b\u8a18\u306e\u901a\u308a\u3001\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u8d77\u56e0\u3067\u306a\u3044CS0436\u306e\u307f\u304c\u3001RX_CS0436_1\u3068\u3057\u3066\u5831\u544a\u3055\u308c\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002"),(0,o.kt)("table",{parentName:"admonition"},(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:null},"ID"),(0,o.kt)("th",{parentName:"tr",align:null},"\u6982\u8981"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"RX_CS0436_0"),(0,o.kt)("td",{parentName:"tr",align:null},"Cs0436Relaxation\u304c\u6a5f\u80fd\u3057\u3066\u3044\u308b\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30b3\u30f3\u30d1\u30a4\u30eb\u3067CS0436\u304cwarning\u3068\u3057\u3066\u767a\u751f\u3057\u305f\u5834\u5408\u306b\u767a\u751f\u3059\u308bwarning\u3067\u3059\u3002Cs0436Relaxation\u3092\u53d6\u308a\u9664\u304f\u304b.editroconfig\u3092\u7de8\u96c6\u3057\u3066CS0436\u3092suggestion\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"RX_CS0436_1"),(0,o.kt)("td",{parentName:"tr",align:null},"\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306b\u8d77\u56e0\u3059\u308b\u5b9a\u7fa9\u4ee5\u5916\u306b\u5bfe\u3057\u3066CS0436\u304c\u767a\u751f\u3057\u305f\u3053\u3068\u3092warning\u3067\u77e5\u3089\u305b\u307e\u3059\u3002\u751f\u306eCS0436\u304c\u767a\u751f\u3057\u305f\u5834\u5408\u3068\u540c\u69d8\u306e\u5bfe\u51e6\u304c\u5fc5\u8981\u3067\u3059\u3002"))))),(0,o.kt)("h3",{id:"about"},"About"),(0,o.kt)("admonition",{type:"note"},(0,o.kt)("p",{parentName:"admonition"},"Automatic dispose resources")),(0,o.kt)("h2",{id:"how-to-use"},"How to use"),(0,o.kt)("h3",{id:"example--source-csproj-source-files-"},"Example ( source csproj, source files )"),(0,o.kt)(s.Z,{mdxType:"Tabs"},(0,o.kt)(i.Z,{value:"csproj",label:"CSharp Project",mdxType:"TabItem"},(0,o.kt)("p",null,"This is the CSharp Project that references ",(0,o.kt)("strong",{parentName:"p"},"BenutomoAutomaticDisposeImplSourceGenerator")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-xml",metastring:"showLineNumbers {11}",showLineNumbers:!0,"{11}":!0},'\n\n \n Exe\n net7.0\n enable\n enable\n \n\n \n \n all\n runtime; build; native; contentfiles; analyzers; buildtransitive\n \n \n \n \n true\n $(BaseIntermediateOutputPath)\\GX\n \n\n\n\n'))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\Program.cs",label:"Program.cs",mdxType:"TabItem"},(0,o.kt)("p",null," This is the use of ",(0,o.kt)("strong",{parentName:"p"},"BenutomoAutomaticDisposeImplSourceGenerator")," in ",(0,o.kt)("em",{parentName:"p"},"Program.cs")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'using IDisposableGeneratorDemo;\n//https://github.com/benutomo-dev/RoslynComponents\nusing (var db = new DALDB())\n{\n Console.WriteLine("before releasing");\n}\nConsole.WriteLine("after releasing");\n'))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\DALDB.cs",label:"DALDB.cs",mdxType:"TabItem"},(0,o.kt)("p",null," This is the use of ",(0,o.kt)("strong",{parentName:"p"},"BenutomoAutomaticDisposeImplSourceGenerator")," in ",(0,o.kt)("em",{parentName:"p"},"DALDB.cs")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},"namespace IDisposableGeneratorDemo;\nusing Benutomo;\n\n[AutomaticDisposeImpl]\npartial class DALDB :IDisposable\n{\n [EnableAutomaticDispose]\n private readonly ConnectionDB cn;\n [EnableAutomaticDispose]\n private readonly ConnectionDB cn1;\n\n public DALDB()\n {\n cn = new ConnectionDB();\n cn1=new ConnectionDB();\n }\n}\n\n"))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\ConnectionDB.cs",label:"ConnectionDB.cs",mdxType:"TabItem"},(0,o.kt)("p",null," This is the use of ",(0,o.kt)("strong",{parentName:"p"},"BenutomoAutomaticDisposeImplSourceGenerator")," in ",(0,o.kt)("em",{parentName:"p"},"ConnectionDB.cs")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'namespace IDisposableGeneratorDemo;\n\nclass ConnectionDB : IDisposable\n{\n public void Dispose()\n {\n Console.WriteLine("disposing connectiondb");\n }\n}\n\n')))),(0,o.kt)("h3",{id:"generated-files"},"Generated Files"),(0,o.kt)("p",null,"Those are taken from $(BaseIntermediateOutputPath)\\GX"),(0,o.kt)(s.Z,{mdxType:"Tabs"},(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\obj\\GX\\Benutomo.AutomaticDisposeImpl.SourceGenerator\\Benutomo.AutomaticDisposeImpl.SourceGenerator.AutomaticDisposeGenerator\\AutomaticDisposeImplAttribute.cs",label:"AutomaticDisposeImplAttribute.cs",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'#pragma warning disable CS0436\n#nullable enable\n\nnamespace Benutomo\n{\n /// \n /// \u6307\u5b9a\u3057\u305f\u30af\u30e9\u30b9\u306b\u7834\u68c4(,)\u3092\u30b5\u30dd\u30fc\u30c8\u3059\u308b\u30e1\u30f3\u30d0\u3092\u7834\u68c4\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u304a\u3088\u3073\u30e1\u30bd\u30c3\u30c9(\u5f53\u8a72\u30af\u30e9\u30b9\u306b\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u304c\u542b\u307e\u308c\u3066\u3044\u308b\u5834\u5408\u306e\u307f)\u3092\u81ea\u52d5\u5b9f\u88c5\u3059\u308b\u3002\n /// \n [global::System.AttributeUsage(global::System.AttributeTargets.Class)]\n internal class AutomaticDisposeImplAttribute : global::System.Attribute\n {\n /// \n /// \u81ea\u52d5\u7834\u68c4\u5b9f\u88c5\u306e\u65e2\u5b9a\u52d5\u4f5c\u3092\u8a2d\u5b9a\u3059\u308b\u3002\n /// \n public AutomaticDisposeImplMode Mode { get; set; }\n }\n}\n'))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\obj\\GX\\Benutomo.AutomaticDisposeImpl.SourceGenerator\\Benutomo.AutomaticDisposeImpl.SourceGenerator.AutomaticDisposeGenerator\\AutomaticDisposeImplMode.cs",label:"AutomaticDisposeImplMode.cs",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'#pragma warning disable CS0436\n#nullable enable\n\nnamespace Benutomo\n{\n /// \n /// \u7834\u68c4(,)\u3092\u30b5\u30dd\u30fc\u30c8\u3059\u308b\u30e1\u30f3\u30d0\u3092\u81ea\u52d5\u5b9f\u88c5Dispose\u306e\u5bfe\u8c61\u3068\u3059\u308b\u3053\u3068\u306b\u95a2\u3059\u308b\u632f\u308b\u821e\u3044\u306e\u6307\u5b9a\u3002\n /// \n internal enum AutomaticDisposeImplMode\n {\n /// \n /// ,\u3092\u7d99\u627f\u3059\u308b\u578b\u3092\u6301\u3064\u30e1\u30f3\u30d0\u306f\u6697\u9ed9\u7684\u306b\u81ea\u52d5Dispose\u547c\u3073\u51fa\u3057\u306e\u5bfe\u8c61\u3068\u306a\u308b\u3002\n /// \n Implicit,\n\n /// \n /// ,\u3092\u7d99\u627f\u3059\u308b\u578b\u3092\u6301\u3064\u30e1\u30f3\u30d0\u306f\u81ea\u52d5Dispose\u547c\u3073\u51fa\u3057\u306e\u5bfe\u8c61\u3068\u306a\u308b\u3002\n /// \n Explicit,\n }\n}\n'))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\obj\\GX\\Benutomo.AutomaticDisposeImpl.SourceGenerator\\Benutomo.AutomaticDisposeImpl.SourceGenerator.AutomaticDisposeGenerator\\DisableAutomaticDisposeAttribute.cs",label:"DisableAutomaticDisposeAttribute.cs",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'#pragma warning disable CS0436\n#nullable enable\n\nnamespace Benutomo\n{\n /// \n /// \u3053\u306e\u30e1\u30f3\u30d0\u306b\u5bfe\u3057\u3066\u3001\u30e1\u30bd\u30c3\u30c9\u307e\u305f\u306f\u30e1\u30bd\u30c3\u30c9\u306e\u81ea\u52d5\u547c\u51fa\u3057\u306f\u884c\u3044\u307e\u305b\u3093\u3002\u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3067\u7834\u68c4\u3059\u308b\u306e\u304c\u4e0d\u9069\u5f53\u3067\u3042\u308b\u304b\u30e6\u30fc\u30b6\u81ea\u8eab\u304c\u30e1\u30bd\u30c3\u30c9\u307e\u305f\u306f\u30e1\u30bd\u30c3\u30c9\u306e\u547c\u3073\u51fa\u3057\u3092\u5b9f\u88c5\u3059\u308b\u30e1\u30f3\u30d0\u3067\u3059\u3002\n /// \n [global::System.AttributeUsage(global::System.AttributeTargets.Field | global::System.AttributeTargets.Property)]\n internal class DisableAutomaticDisposeAttribute : global::System.Attribute\n {\n }\n}\n'))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\obj\\GX\\Benutomo.AutomaticDisposeImpl.SourceGenerator\\Benutomo.AutomaticDisposeImpl.SourceGenerator.AutomaticDisposeGenerator\\EnableAutomaticDisposeAttribute.cs",label:"EnableAutomaticDisposeAttribute.cs",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'#pragma warning disable CS0436\n#nullable enable\n\nnamespace Benutomo\n{\n /// \n /// \u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u7834\u68c4\u3068\u540c\u6642\u306b\u81ea\u52d5\u7684\u306b\u30e1\u30bd\u30c3\u30c9\u307e\u305f\u306f\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002\n /// \n [global::System.AttributeUsage(global::System.AttributeTargets.Field | global::System.AttributeTargets.Property)]\n internal class EnableAutomaticDisposeAttribute : global::System.Attribute\n {\n public EnableAutomaticDisposeAttribute() { }\n\n /// \n /// \u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u7834\u68c4\u3068\u540c\u6642\u306b\u81ea\u52d5\u7684\u306b\u30e1\u30bd\u30c3\u30c9\u307e\u305f\u306f\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002\n /// \n /// \u3053\u306e\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u306b\u9023\u52d5\u3057\u3066\u7834\u68c4\u3055\u308c\u308b\u30e1\u30f3\u30d0(\u3053\u3053\u3067\u5217\u6319\u3055\u308c\u305f\u30e1\u30f3\u30d0\u306fEnable/DisableAutomaticDispose\u5c5e\u6027\u3092\u7701\u7565\u53ef\u80fd)\n public EnableAutomaticDisposeAttribute(params string[] dependencyMembers) { }\n }\n}\n'))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\obj\\GX\\Benutomo.AutomaticDisposeImpl.SourceGenerator\\Benutomo.AutomaticDisposeImpl.SourceGenerator.AutomaticDisposeGenerator\\gen_DALDB_IDisposableGeneratorDemo_AutomaticDisposeImpl.cs",label:"gen_DALDB_IDisposableGeneratorDemo_AutomaticDisposeImpl.cs",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'#nullable enable\n#pragma warning disable CS0612,CS0618,CS0619\nnamespace IDisposableGeneratorDemo\n{\n partial class DALDB // This is implementation class by AutomaticDisposeImpl.\n {\n [global::System.ComponentModel.Browsable(false)]\n [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)]\n [global::System.Obsolete("AutomaticDisposeImpl\u306b\u3088\u3063\u3066\u751f\u6210\u3055\u308c\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u3067\u3059\u3002\u4e00\u822c\u306e\u30b3\u30fc\u30c9\u304b\u3089\u53c2\u7167\u3057\u3066\u306f\u3044\u3051\u307e\u305b\u3093\u3002")]\n private const int __generator_internal_BeNotInitiatedAnyDispose = 0;\n [global::System.ComponentModel.Browsable(false)]\n [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)]\n [global::System.Obsolete("AutomaticDisposeImpl\u306b\u3088\u3063\u3066\u751f\u6210\u3055\u308c\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u3067\u3059\u3002\u4e00\u822c\u306e\u30b3\u30fc\u30c9\u304b\u3089\u53c2\u7167\u3057\u3066\u306f\u3044\u3051\u307e\u305b\u3093\u3002")]\n private const int __generator_internal_InitiatedSyncDispose = 1;\n [global::System.ComponentModel.Browsable(false)]\n [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)]\n [global::System.Obsolete("AutomaticDisposeImpl\u306b\u3088\u3063\u3066\u751f\u6210\u3055\u308c\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u3067\u3059\u3002\u4e00\u822c\u306e\u30b3\u30fc\u30c9\u304b\u3089\u53c2\u7167\u3057\u3066\u306f\u3044\u3051\u307e\u305b\u3093\u3002")]\n private const int __generator_internal_InitiatedAsyncDispose = 2;\n [global::System.ComponentModel.Browsable(false)]\n [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)]\n [global::System.Obsolete("AutomaticDisposeImpl\u306b\u3088\u3063\u3066\u751f\u6210\u3055\u308c\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u3067\u3059\u3002\u4e00\u822c\u306e\u30b3\u30fc\u30c9\u304b\u3089\u53c2\u7167\u3057\u3066\u306f\u3044\u3051\u307e\u305b\u3093\u3002")]\n private const int __generator_internal_DisposeAlreadyCompleted = 9;\n [global::System.ComponentModel.Browsable(false)]\n [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)]\n [global::System.Obsolete("AutomaticDisposeImpl\u306b\u3088\u3063\u3066\u751f\u6210\u3055\u308c\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u3067\u3059\u3002\u4e00\u822c\u306e\u30b3\u30fc\u30c9\u304b\u3089\u53c2\u7167\u3057\u3066\u306f\u3044\u3051\u307e\u305b\u3093\u3002")]\n private int __generator_internal_disposeState = __generator_internal_BeNotInitiatedAnyDispose;\n\n public bool IsDisposed => (global::System.Threading.Thread.VolatileRead(ref __generator_internal_disposeState) != __generator_internal_BeNotInitiatedAnyDispose);\n\n [global::System.ComponentModel.Browsable(false)]\n [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)]\n [global::System.Obsolete("AutomaticDisposeImpl\u306b\u3088\u3063\u3066\u751f\u6210\u3055\u308c\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u3067\u3059\u3002\u4e00\u822c\u306e\u30b3\u30fc\u30c9\u304b\u3089\u53c2\u7167\u3057\u3066\u306f\u3044\u3051\u307e\u305b\u3093\u3002")]\n private int __generator_internal_managedObjectDisposeState = 0;\n\n protected virtual void Dispose(bool disposing)\n {\n if (disposing)\n {\n var managedObjectDisposeState = global::System.Threading.Interlocked.Exchange(ref __generator_internal_managedObjectDisposeState, 1);\n if (managedObjectDisposeState == 0)\n {\n try\n {\n (this.cn as global::System.IDisposable)?.Dispose();\n }\n catch (global::System.Exception ex)\n {\n global::System.Diagnostics.Debug.Fail($"Caught an exception in the cn.Dispose() calling. Message=\\"{ex.Message}\\"");\n }\n try\n {\n (this.cn1 as global::System.IDisposable)?.Dispose();\n }\n catch (global::System.Exception ex)\n {\n global::System.Diagnostics.Debug.Fail($"Caught an exception in the cn1.Dispose() calling. Message=\\"{ex.Message}\\"");\n }\n }\n }\n }\n\n public void Dispose()\n {\n var dispose_state = global::System.Threading.Interlocked.CompareExchange(ref __generator_internal_disposeState, __generator_internal_InitiatedSyncDispose, __generator_internal_BeNotInitiatedAnyDispose);\n if (dispose_state == __generator_internal_BeNotInitiatedAnyDispose)\n {\n\n // Dispose managed members and release unmaneged resources.\n Dispose(disposing: true);\n\n global::System.Threading.Thread.VolatileWrite(ref __generator_internal_disposeState, __generator_internal_DisposeAlreadyCompleted);\n }\n }\n }\n}\n\n'))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\obj\\GX\\Benutomo.AutomaticDisposeImpl.SourceGenerator\\Benutomo.AutomaticDisposeImpl.SourceGenerator.AutomaticDisposeGenerator\\ManagedObjectAsyncDisposeMethodAttribute.cs",label:"ManagedObjectAsyncDisposeMethodAttribute.cs",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'#pragma warning disable CS0436\n#nullable enable\n\nnamespace Benutomo\n{\n /// \n /// \u3092\u5229\u7528\u3057\u3066\u3044\u308b\u30af\u30e9\u30b9\u3067\u3001\u30e6\u30fc\u30b6\u304c\u5b9f\u88c5\u3059\u308b\u30de\u30cd\u30fc\u30b8\u30c9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u975e\u540c\u671f\u7684\u306a\u51e6\u7406\u306b\u3088\u308b\u7834\u68c4\u3092\u884c\u3046\u30e1\u30bd\u30c3\u30c9\u306b\u4ed8\u4e0e\u3059\u308b\u3002\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u304b\u3089\u306f\u547c\u3073\u51fa\u3055\u308c\u306a\u3044\u3002\u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u304b\u3089\u3082\u547c\u3073\u51fa\u3055\u308c\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u3067\u5fc5\u8981\u306a\u51e6\u7406\u3092\u5168\u3066\u540c\u671f\u7684\u306b\u884c\u3046\u3088\u3046\u306b\u3057\u305f\u4e0a\u3067\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3002\u3053\u306e\u5c5e\u6027\u3092\u4ed8\u4e0e\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u306f\u5f15\u6570\u306a\u3057\u3067\u623b\u308a\u5024\u306f\u306a\u3069await\u53ef\u80fd\u306a\u578b\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308b\u3002\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306eDisposeAsync()\u304c\u521d\u3081\u3066\u5b9f\u884c\u3055\u308c\u305f\u6642\u306b\u81ea\u52d5\u5b9f\u88c5\u30b3\u30fc\u30c9\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\u305f\u3060\u3057\u3001\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u3092\u6240\u6709\u3059\u308b\u30af\u30e9\u30b9\u304cIDisposable\u3082\u5b9f\u88c5\u3057\u3066\u3044\u3066\u3001\u304b\u3064\u3001Dispose()\u306b\u3088\u3063\u3066\u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u7834\u68c4\u3055\u308c\u305f\u5834\u5408\u306f\u3001\u3053\u306e\u5c5e\u6027\u304c\u4ed8\u4e0e\u3055\u308c\u3066\u3044\u308b\u30e1\u30bd\u30c3\u30c9\u306f\u547c\u3073\u51fa\u3055\u308c\u305a\u3001\u304c\u4ed8\u4e0e\u3055\u308c\u3066\u3044\u308b\u30e1\u30bd\u30c3\u30c9\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\n /// \n [global::System.AttributeUsage(global::System.AttributeTargets.Method)]\n internal class ManagedObjectAsyncDisposeMethodAttribute : global::System.Attribute\n {\n /// \n /// \n /// \n public ManagedObjectAsyncDisposeMethodAttribute() { }\n }\n}\n'))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\obj\\GX\\Benutomo.AutomaticDisposeImpl.SourceGenerator\\Benutomo.AutomaticDisposeImpl.SourceGenerator.AutomaticDisposeGenerator\\ManagedObjectDisposeMethodAttribute.cs",label:"ManagedObjectDisposeMethodAttribute.cs",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'#pragma warning disable CS0436\n#nullable enable\n\nnamespace Benutomo\n{\n /// \n /// \u3092\u5229\u7528\u3057\u3066\u3044\u308b\u30af\u30e9\u30b9\u3067\u3001\u30e6\u30fc\u30b6\u304c\u5b9f\u88c5\u3059\u308b\u30de\u30cd\u30fc\u30b8\u30c9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u540c\u671f\u7684\u306a\u51e6\u7406\u306b\u3088\u308b\u7834\u68c4\u3092\u884c\u3046\u30e1\u30bd\u30c3\u30c9\u306b\u4ed8\u4e0e\u3059\u308b\u3002\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u304b\u3089\u306f\u547c\u3073\u51fa\u3055\u308c\u306a\u3044\u3002\u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u304b\u3089\u3082\u547c\u3073\u51fa\u3055\u308c\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3002\u3053\u306e\u5c5e\u6027\u3092\u4ed8\u4e0e\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u306f\u5f15\u6570\u306a\u3057\u3067\u623b\u308a\u5024\u306fvoid\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308b\u3002\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306eDispose()\u304c\u521d\u3081\u3066\u5b9f\u884c\u3055\u308c\u305f\u6642\u306b\u81ea\u52d5\u5b9f\u88c5\u30b3\u30fc\u30c9\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\u305f\u3060\u3057\u3001\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u3092\u6240\u6709\u3059\u308b\u30af\u30e9\u30b9\u304cIAsyncDisposable\u3082\u5b9f\u88c5\u3057\u3066\u3044\u3066\u3001\u304b\u3064\u3001DisposeAsync()\u306b\u3088\u3063\u3066\u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u7834\u68c4\u3055\u308c\u305f\u5834\u5408\u306f\u3001\u3053\u306e\u5c5e\u6027\u304c\u4ed8\u4e0e\u3055\u308c\u3066\u3044\u308b\u30e1\u30bd\u30c3\u30c9\u306f\u547c\u3073\u51fa\u3055\u308c\u305a\u3001\u304c\u4ed8\u4e0e\u3055\u308c\u3066\u3044\u308b\u30e1\u30bd\u30c3\u30c9\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\n /// \n [global::System.AttributeUsage(global::System.AttributeTargets.Method)]\n internal class ManagedObjectDisposeMethodAttribute : global::System.Attribute\n {\n /// \n /// \n /// \n public ManagedObjectDisposeMethodAttribute() { }\n }\n}\n'))),(0,o.kt)(i.Z,{value:"C:\\gth\\RSCG_Examples\\v2\\rscg_examples\\IDisp\\src\\IDisp\\obj\\GX\\Benutomo.AutomaticDisposeImpl.SourceGenerator\\Benutomo.AutomaticDisposeImpl.SourceGenerator.AutomaticDisposeGenerator\\UnmanagedResourceReleaseMethodAttribute.cs",label:"UnmanagedResourceReleaseMethodAttribute.cs",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-csharp",metastring:"showLineNumbers",showLineNumbers:!0},'#pragma warning disable CS0436\n#nullable enable\n\nnamespace Benutomo\n{\n /// \n /// \u3092\u5229\u7528\u3057\u3066\u3044\u308b\u30af\u30e9\u30b9\u3067\u3001\u30e6\u30fc\u30b6\u304c\u5b9f\u88c5\u3059\u308b\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u89e3\u653e\u3092\u884c\u3046\u30e1\u30bd\u30c3\u30c9(\u5f15\u6570\u306a\u3057\u3067\u623b\u308a\u5024\u306fvoid)\u306b\u4ed8\u4e0e\u3059\u308b\u3002\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u306f\u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306eDispose()\u307e\u305f\u306fDisposeAsync()\u3001\u30c7\u30b9\u30c8\u30e9\u30af\u30bf\u306e\u3044\u305a\u308c\u304b\u304c\u521d\u3081\u3066\u5b9f\u884c\u3055\u308c\u305f\u6642\u306b\u81ea\u52d5\u5b9f\u88c5\u30b3\u30fc\u30c9\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\u3053\u306e\u5c5e\u6027\u3092\u4ed8\u4e0e\u3057\u305f\u30e1\u30bd\u30c3\u30c9\u306f\u3001\u5b9f\u88c5\u8005\u306e\u8cac\u4efb\u3067GC\u306e\u30d5\u30a1\u30a4\u30ca\u30e9\u30a4\u30ba\u30b9\u30ec\u30c3\u30c9\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u3066\u3082\u554f\u984c\u7121\u3044\u3088\u3046\u306b\u5b9f\u88c5\u3057\u306a\u3051\u308c\u3070\u306a\u3089\u306a\u3044\u3053\u3068\u306b\u6ce8\u610f\u3059\u308b\u3053\u3068\u3002\n /// \n [global::System.AttributeUsage(global::System.AttributeTargets.Method)]\n internal class UnmanagedResourceReleaseMethodAttribute : global::System.Attribute\n {\n /// \n /// \n /// \n public UnmanagedResourceReleaseMethodAttribute() { }\n }\n}\n')))),(0,o.kt)("h2",{id:"usefull"},"Usefull"),(0,o.kt)("h3",{id:"download-example-net--c-"},"Download Example (.NET C# )"),(0,o.kt)("admonition",{type:"tip"},(0,o.kt)("p",{parentName:"admonition"},(0,o.kt)("a",{target:"_blank",href:n(476).Z},"Download Example project BenutomoAutomaticDisposeImplSourceGenerator "))),(0,o.kt)("h3",{id:"download-pdf"},"Download PDF"),(0,o.kt)("p",null,(0,o.kt)("a",{target:"_blank",href:n(5192).Z},"Download PDF BenutomoAutomaticDisposeImplSourceGenerator ")),(0,o.kt)("h3",{id:"share-benutomoautomaticdisposeimplsourcegenerator"},"Share BenutomoAutomaticDisposeImplSourceGenerator"),(0,o.kt)("ul",null,(0,o.kt)("li",null,(0,o.kt)("a",{href:"https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FBenutomoAutomaticDisposeImplSourceGenerator"e=BenutomoAutomaticDisposeImplSourceGenerator",title:"Share on Facebook",target:"_blank"},"Share on Facebook")),(0,o.kt)("li",null,(0,o.kt)("a",{href:"https://twitter.com/intent/tweet?source=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FBenutomoAutomaticDisposeImplSourceGenerator&text=BenutomoAutomaticDisposeImplSourceGenerator:%20https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FBenutomoAutomaticDisposeImplSourceGenerator",target:"_blank",title:"Tweet"},"Share in Twitter")),(0,o.kt)("li",null,(0,o.kt)("a",{href:"http://www.reddit.com/submit?url=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FBenutomoAutomaticDisposeImplSourceGenerator&title=BenutomoAutomaticDisposeImplSourceGenerator",target:"_blank",title:"Submit to Reddit"},"Share on Reddit")),(0,o.kt)("li",null,(0,o.kt)("a",{href:"http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FBenutomoAutomaticDisposeImplSourceGenerator&title=BenutomoAutomaticDisposeImplSourceGenerator&summary=&source=https%3A%2F%2Fignatandrei.github.io%2FRSCG_Examples%2Fv2%2Fdocs%2FBenutomoAutomaticDisposeImplSourceGenerator",target:"_blank",title:"Share on LinkedIn"},"Share on Linkedin"))),(0,o.kt)("p",null,(0,o.kt)("a",{parentName:"p",href:"https://ignatandrei.github.io/RSCG_Examples/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator"},"https://ignatandrei.github.io/RSCG_Examples/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator")))}D.isMDXComponent=!0},5192:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/files/BenutomoAutomaticDisposeImplSourceGenerator-31d6cfe0d16ae931b73c59d7e0c089c0.pdf"},476:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/files/BenutomoAutomaticDisposeImplSourceGenerator-830efe54bd38d723a9428165d23996dc.zip"}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/1743b147.3179e368.js b/docs/v2/assets/js/1743b147.3179e368.js new file mode 100644 index 000000000..1c976a9ad --- /dev/null +++ b/docs/v2/assets/js/1743b147.3179e368.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[2862],{4137:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>f});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),u=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},p=function(e){var t=u(e.components);return r.createElement(l.Provider,{value:t},e.children)},c="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,l=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),c=u(n),d=a,f=c["".concat(l,".").concat(d)]||c[d]||m[d]||i;return n?r.createElement(f,o(o({ref:t},p),{},{components:n})):r.createElement(f,o({ref:t},p))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=d;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[c]="string"==typeof e?e:a,o[1]=s;for(var u=2;u{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>m,frontMatter:()=>i,metadata:()=>s,toc:()=>u});var r=n(7462),a=(n(7294),n(4137));const i={},o="AOT.Reflection is faster reflection powered via Source Generators",s={unversionedId:"RSCG-Examples/ApparatusAOT_readme",id:"RSCG-Examples/ApparatusAOT_readme",title:"AOT.Reflection is faster reflection powered via Source Generators",description:"This library aims to create a subset of reflection that will be faster than the default one and will not break at the platforms with the AOT compilation support. The source generators will help us with that.",source:"@site/docs/RSCG-Examples/ApparatusAOT_readme.md",sourceDirName:"RSCG-Examples",slug:"/RSCG-Examples/ApparatusAOT_readme",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/ApparatusAOT_readme",draft:!1,tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"45 - BenutomoAutomaticDisposeImplSourceGenerator",permalink:"/RSCG_Examples/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator"},next:{title:"AutoCtor_readme",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/AutoCtor_readme"}},l={},u=[],p={toc:u},c="wrapper";function m(e){let{components:t,...n}=e;return(0,a.kt)(c,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"aotreflection-is-faster-reflection-powered-via-source-generators"},"AOT.Reflection is faster reflection powered via Source Generators"),(0,a.kt)("p",null,"This library aims to create a subset of reflection that will be faster than the default one and will not break at the platforms with the AOT compilation support. The source generators will help us with that."),(0,a.kt)("h1",{id:"how-to-use"},"How to use"),(0,a.kt)("p",null,"To make it work, you will need to install a NuGet package ",(0,a.kt)("inlineCode",{parentName:"p"},"Apparatus.AOT.Reflection"),":"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"dotnet add package Apparatus.AOT.Reflection\n")),(0,a.kt)("p",null,"Then you can use it like that:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"public class User\n{\n [Required]\n public string FirstName { get; set; }\n [Required]\n public string LastName { get; set; }\n}\n\npublic static void Main()\n{\n var user = new User();\n var properties = user.GetProperties().Values;\n foreach (var property in properties)\n {\n Console.WriteLine(property.Name);\n }\n}\n")),(0,a.kt)("p",null,"This sample will print the names of properties."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"FirstName\nLastName\n")),(0,a.kt)("p",null,"Also, it works for enums too:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"\npublic enum UserKind \n{\n User,\n Admin\n}\n\n// ...\n\npublic static void Main()\n{\n var values = EnumHelper.GetEnumInfo();\n foreach (var value in values)\n {\n Console.WriteLine(value.Name);\n }\n}\n\n")),(0,a.kt)("p",null,"You will see:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"User\nAdmin\n")),(0,a.kt)("p",null,"It does not end with the only property names. You can get property values and assigned attributes. "),(0,a.kt)("p",null,"Here is an example:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},'var requiredProperties = _user\n .GetProperties()\n .Values\n .Where(o => o.Attributes.Any(attr => attr is RequiredAttribute))\n .ToArray();\n\nforeach (var requiredProperty in requiredProperties)\n{\n if (requiredProperty.TryGetValue(_user, out var value))\n {\n Console.WriteLine($"{requiredProperty.Name} => {value}");\n }\n}\n')),(0,a.kt)("p",null,"The same applies to enums too. Let have a look at the following sample:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},'public enum AccountKind\n{\n [Description("User account")]\n User,\n [Description("Admin account")]\n Admin,\n [Description("Customer account")]\n Customer,\n [Description("Manager account")]\n Manager\n}\n\n// ...\n\nvar values = EnumHelper.GetEnumInfo();\nforeach (var value in values)\n{\n var description = value.Attributes\n .OfType()\n .First();\n \n Console.WriteLine($"{value.Name} => {description.Description}");\n}\n')),(0,a.kt)("h1",{id:"keyof"},"KeyOf"),(0,a.kt)("p",null,"The AOT.Reflection contains a way to express the intention safely when you want to pass the property inside the method. It works similarly to ",(0,a.kt)("inlineCode",{parentName:"p"},"keyof")," from TypeScript. Here is an example:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},'using Apparatus.AOT.Reflection;\n\nvar user = new User {FirstName = "Jon", LastName = "Smith"};\nvar firstName = DoIt (user, "FirstName"); // no error\nvar lastName = DoIt (user, "LastName"); // no error\nvar missingProperty = DoIt (user, "Test"); // compilation error\n\n\nobject DoIt (T value, KeyOf propertyName)\n{\n var property = value.GetProperties () [propertyName];\n if (property.TryGetValue (value, out var propertyValue))\n {\n return propertyValue;\n }\n\n return null;\n}\n\nclass User\n{\n public string FirstName {get; set; }\n public string LastName {get; set; }\n}\n')),(0,a.kt)("p",null,"More information you can find in separate ",(0,a.kt)("a",{parentName:"p",href:"https://dev.to/byme8/improving-c-with-typescript-keyof-t-1jea"},"article"),"."),(0,a.kt)("h1",{id:"performance"},"Performance"),(0,a.kt)("p",null,"Let's imagine that we need to find a property with ",(0,a.kt)("inlineCode",{parentName:"p"},"Required")," attribute and the name ",(0,a.kt)("inlineCode",{parentName:"p"},"FirstName"),".\nIf it exists, then print the value of the property, otherwise return the empty string. The implementation will be messy because I don't want to measure the LINQ performance, but the overall idea must be clear."),(0,a.kt)("p",null,"Here is the source code with default reflection:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"var type = _user.GetType();\nvar property = type.GetProperty(nameof(User.FirstName));\n\nvar required = false;\nforeach (var o in property.GetCustomAttributes())\n{\n if (o.GetType() == typeof(RequiredAttribute))\n {\n required = true;\n break;\n }\n}\n\nif (required)\n{\n return (string)property.GetMethod?.Invoke(_user, null);\n}\n\nreturn string.Empty;\n\n")),(0,a.kt)("p",null,"Here the source code with aot reflection:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"var entries = _user.GetProperties();\nvar firstName = entries[nameof(User.FirstName)];\n\nvar required = false;\nforeach (var o in firstName.Attributes)\n{\n if (o is RequiredAttribute)\n {\n required = true;\n break;\n }\n}\n\nif (required)\n{\n if (firstName.TryGetValue(_user, out var value))\n {\n return (string)value;\n }\n\n return string.Empty;\n}\n\nreturn string.Empty;\n")),(0,a.kt)("p",null,"Here are the benchmark results:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"BenchmarkDotNet=v0.13.1, OS=Windows 10.0.19043.1165 (21H1/May2021Update)\n11th Gen Intel Core i7-11700KF 3.60GHz, 1 CPU, 16 logical and 8 physical cores\n.NET SDK=6.0.100-preview.7.21379.14\n [Host] : .NET 5.0.7 (5.0.721.25508), X64 RyuJIT\n DefaultJob : .NET 5.0.7 (5.0.721.25508), X64 RyuJIT\n\n\n| Method | Mean | Error | StdDev | Gen 0 | Allocated |\n|-------------- |------------:|---------:|---------:|-------:|----------:|\n| Reflection | 1,758.91 ns | 2.714 ns | 2.406 ns | 0.1278 | 1,072 B |\n| AOTReflection | 16.01 ns | 0.090 ns | 0.075 ns | - | - |\n")),(0,a.kt)("p",null,"As you can see, the AOT.Reflection is significantly faster comparing to default reflection."),(0,a.kt)("p",null,"Now let's have a look at enums performance. Imagine that we have the enum value, and we need to get a description associated with it.\nHere how it will look:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},'var attributes = _account.GetEnumValueInfo().Attributes;\nfor (int i = 0; i < attributes.Length; i++)\n{\n var attribute = attributes[i];\n if (attribute is DescriptionAttribute descriptionAttribute)\n {\n return descriptionAttribute.Description;\n }\n}\n\nreturn "";\n')),(0,a.kt)("p",null,"Here is the results:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"| Method | Mean | Error | StdDev | Gen 0 | Allocated |\n|-------------------- |-----------:|----------:|----------:|-------:|----------:|\n| GetValuesAOT | 6.253 ns | 0.0394 ns | 0.0329 ns | - | - |\n| GetValuesReflection | 734.563 ns | 2.3173 ns | 1.9351 ns | 0.0324 | 272 B |\n")),(0,a.kt)("p",null,"And again, the AOT reflection works much faster."),(0,a.kt)("p",null,"The complete source code of benchmarks you can find ",(0,a.kt)("a",{parentName:"p",href:"https://github.com/byme8/Apparatus.AOT.Reflection/blob/master/src/Apparatus.AOT.Reflection.Benchmark/Program.cs"},"here"),"."),(0,a.kt)("h1",{id:"limitations"},"Limitations"),(0,a.kt)("p",null,"I would recommend being careful when you try to use these APIs inside the generic methods because, at this point, there is no easy way to analyze them and identify the correct signatures. It means the source generation will not happen. As a result, we will have an error at runtime.\nLet's have a look at the following sample:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"public class Program\n{\n public static string? GetDescription(T enumValue)\n where T : Enum\n {\n return enumValue\n .GetEnumValueInfo()\n .Attributes\n .OfType()\n .FirstOrDefault()\n ?.Description;\n }\n \n public static void Main()\n {\n var account = AccountKind.Admin;\n Console.WriteLine(GetDescription(account));\n }\n}\n")),(0,a.kt)("p",null,"We will have an exception if we run it because the source generator could not figure out the signatures. The type ",(0,a.kt)("inlineCode",{parentName:"p"},"T")," is the mystery for it.\nBut we can fix it with a small trick:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"public class Program\n{\n private void DontCallMe()\n {\n EnumHelper.GetEnumInfo();\n }\n \n public static string? GetDescription(T enumValue)\n where T : Enum\n {\n return enumValue\n .GetEnumValueInfo()\n .Attributes\n .OfType()\n .FirstOrDefault()\n ?.Description;\n }\n \n public static void Main()\n {\n var account = AccountKind.Admin;\n Console.WriteLine(GetDescription(account));\n }\n}\n\n")),(0,a.kt)("p",null,"Pay attention to the ",(0,a.kt)("inlineCode",{parentName:"p"},"DontCallMe ")," method. We do not have any intention to use it anywhere. It is here to help the source generator to analyze the source code. Now, if we run it, everything works as expected.\nThe same issue exists for the properties reflection, and we can use the same trick to avoid it."),(0,a.kt)("h1",{id:"support"},"Support"),(0,a.kt)("p",null,"Right now, only public properties and enums are supported. Regarding the private members, I doubt them because they would ruin the performance, but we will see."))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/1df93b7f.f529636f.js b/docs/v2/assets/js/1df93b7f.f529636f.js new file mode 100644 index 000000000..37b80dd2a --- /dev/null +++ b/docs/v2/assets/js/1df93b7f.f529636f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[3237],{1733:(e,a,t)=>{t.d(a,{Z:()=>c});var l,r=t(7294);function n(){return n=Object.assign?Object.assign.bind():function(e){for(var a=1;a{let{title:a,titleId:t,...c}=e;return r.createElement("svg",n({xmlns:"http://www.w3.org/2000/svg",width:1088,height:687.962,viewBox:"0 0 1088 687.962","aria-labelledby":t},c),void 0===a?r.createElement("title",{id:t},"Easy to Use"):a?r.createElement("title",{id:t},a):null,l||(l=r.createElement("g",{"data-name":"Group 12"},r.createElement("g",{"data-name":"Group 11"},r.createElement("path",{fill:"#3f3d56",d:"M961.81 454.442c-5.27 45.15-16.22 81.4-31.25 110.31-20 38.52-54.21 54.04-84.77 70.28a193.275 193.275 0 0 1-27.46 11.94c-55.61 19.3-117.85 14.18-166.74 3.99a657.282 657.282 0 0 0-104.09-13.16q-14.97-.675-29.97-.67c-15.42.02-293.07 5.29-360.67-131.57-16.69-33.76-28.13-75-32.24-125.27-11.63-142.12 52.29-235.46 134.74-296.47 155.97-115.41 369.76-110.57 523.43 7.88 102.36 78.9 198.2 198.31 179.02 362.74Z","data-name":"Path 83"}),r.createElement("path",{fill:"#f2f2f2",d:"M930.56 564.752c-20 38.52-47.21 64.04-77.77 80.28a193.272 193.272 0 0 1-27.46 11.94c-55.61 19.3-117.85 14.18-166.74 3.99a657.3 657.3 0 0 0-104.09-13.16q-14.97-.675-29.97-.67-23.13.03-46.25 1.72c-100.17 7.36-253.82-6.43-321.42-143.29L326 177.962l62.95 161.619 20.09 51.59 55.37-75.98L493 275.962l130.2 149.27 36.8-81.27 254.78 207.919 14.21 11.59Z","data-name":"Path 84"}),r.createElement("path",{d:"m302 282.962 26-57 36 83-31-60Z","data-name":"Path 85",opacity:.1}),r.createElement("path",{d:"M554.5 647.802q-14.97-.675-29.97-.67l-115.49-255.96Z","data-name":"Path 86",opacity:.1}),r.createElement("path",{d:"M464.411 315.191 493 292.962l130 150-132-128Z","data-name":"Path 87",opacity:.1}),r.createElement("path",{d:"M852.79 645.032a193.265 193.265 0 0 1-27.46 11.94L623.2 425.232Z","data-name":"Path 88",opacity:.1}),r.createElement("circle",{cx:3,cy:3,r:3,fill:"#f2f2f2","data-name":"Ellipse 11",transform:"translate(479 98.962)"}),r.createElement("circle",{cx:3,cy:3,r:3,fill:"#f2f2f2","data-name":"Ellipse 12",transform:"translate(396 201.962)"}),r.createElement("circle",{cx:2,cy:2,r:2,fill:"#f2f2f2","data-name":"Ellipse 13",transform:"translate(600 220.962)"}),r.createElement("circle",{cx:2,cy:2,r:2,fill:"#f2f2f2","data-name":"Ellipse 14",transform:"translate(180 265.962)"}),r.createElement("circle",{cx:2,cy:2,r:2,fill:"#f2f2f2","data-name":"Ellipse 15",transform:"translate(612 96.962)"}),r.createElement("circle",{cx:2,cy:2,r:2,fill:"#f2f2f2","data-name":"Ellipse 16",transform:"translate(736 192.962)"}),r.createElement("circle",{cx:2,cy:2,r:2,fill:"#f2f2f2","data-name":"Ellipse 17",transform:"translate(858 344.962)"}),r.createElement("path",{fill:"#f2f2f2",d:"M306 121.222h-2.76v-2.76h-1.48v2.76H299v1.478h2.76v2.759h1.48V122.7H306Z","data-name":"Path 89"}),r.createElement("path",{fill:"#f2f2f2",d:"M848 424.222h-2.76v-2.76h-1.48v2.76H841v1.478h2.76v2.759h1.48V425.7H848Z","data-name":"Path 90"}),r.createElement("path",{fill:"#3f3d56",d:"M1088 613.962c0 16.569-243.557 74-544 74s-544-57.431-544-74 243.557 14 544 14 544-30.568 544-14Z","data-name":"Path 91"}),r.createElement("path",{d:"M1088 613.962c0 16.569-243.557 74-544 74s-544-57.431-544-74 243.557 14 544 14 544-30.568 544-14Z","data-name":"Path 92",opacity:.1}),r.createElement("ellipse",{cx:544,cy:30,fill:"#3f3d56","data-name":"Ellipse 18",rx:544,ry:30,transform:"translate(0 583.962)"}),r.createElement("path",{fill:"#ff6584",d:"M568 571.962c0 33.137-14.775 24-33 24s-33 9.137-33-24 33-96 33-96 33 62.863 33 96Z","data-name":"Path 93"}),r.createElement("path",{d:"M550 584.641c0 15.062-6.716 10.909-15 10.909s-15 4.153-15-10.909 15-43.636 15-43.636 15 28.576 15 43.636Z","data-name":"Path 94",opacity:.1}),r.createElement("rect",{width:92,height:18,fill:"#2f2e41","data-name":"Rectangle 97",rx:9,transform:"translate(489 604.962)"}),r.createElement("rect",{width:92,height:18,fill:"#2f2e41","data-name":"Rectangle 98",rx:9,transform:"translate(489 586.962)"}),r.createElement("path",{fill:"#3f3d56",d:"M137 490.528c0 55.343 34.719 100.126 77.626 100.126","data-name":"Path 95"}),r.createElement("path",{fill:"#6c63ff",d:"M214.626 590.654c0-55.965 38.745-101.251 86.626-101.251","data-name":"Path 96"}),r.createElement("path",{fill:"#6c63ff",d:"M165.125 495.545c0 52.57 22.14 95.109 49.5 95.109","data-name":"Path 97"}),r.createElement("path",{fill:"#3f3d56",d:"M214.626 590.654c0-71.511 44.783-129.377 100.126-129.377","data-name":"Path 98"}),r.createElement("path",{fill:"#a8a8a8",d:"M198.3 591.36s11.009-.339 14.326-2.7 16.934-5.183 17.757-1.395 16.544 18.844 4.115 18.945-28.879-1.936-32.19-3.953-4.008-10.897-4.008-10.897Z","data-name":"Path 99"}),r.createElement("path",{d:"M234.716 604.89c-12.429.1-28.879-1.936-32.19-3.953-2.522-1.536-3.527-7.048-3.863-9.591l-.368.014s.7 8.879 4.009 10.9 19.761 4.053 32.19 3.953c3.588-.029 4.827-1.305 4.759-3.2-.498 1.142-1.867 1.855-4.537 1.877Z","data-name":"Path 100",opacity:.2}),r.createElement("path",{fill:"#3f3d56",d:"M721.429 527.062c0 38.029 23.857 68.8 53.341 68.8","data-name":"Path 101"}),r.createElement("path",{fill:"#6c63ff",d:"M774.769 595.863c0-38.456 26.623-69.575 59.525-69.575","data-name":"Path 102"}),r.createElement("path",{fill:"#6c63ff",d:"M740.755 530.509c0 36.124 15.213 65.354 34.014 65.354","data-name":"Path 103"}),r.createElement("path",{fill:"#3f3d56",d:"M774.769 595.863c0-49.139 30.773-88.9 68.8-88.9","data-name":"Path 104"}),r.createElement("path",{fill:"#a8a8a8",d:"M763.548 596.348s7.565-.233 9.844-1.856 11.636-3.562 12.2-.958 11.368 12.949 2.828 13.018-19.844-1.33-22.119-2.716-2.753-7.488-2.753-7.488Z","data-name":"Path 105"}),r.createElement("path",{d:"M788.574 605.645c-8.54.069-19.844-1.33-22.119-2.716-1.733-1.056-2.423-4.843-2.654-6.59l-.253.01s.479 6.1 2.755 7.487 13.579 2.785 22.119 2.716c2.465-.02 3.317-.9 3.27-2.2-.343.788-1.283 1.278-3.118 1.293Z","data-name":"Path 106",opacity:.2}),r.createElement("path",{fill:"#a8a8a8",d:"M893.813 618.699s11.36-1.729 14.5-4.591 16.89-7.488 18.217-3.667 19.494 17.447 6.633 19.107-30.153 1.609-33.835-.065-5.515-10.784-5.515-10.784Z","data-name":"Path 107"}),r.createElement("path",{d:"M933.228 628.154c-12.86 1.659-30.153 1.609-33.835-.065-2.8-1.275-4.535-6.858-5.2-9.45l-.379.061s1.833 9.109 5.516 10.783 20.975 1.725 33.835.065c3.712-.479 4.836-1.956 4.529-3.906-.375 1.246-1.703 2.156-4.466 2.512Z","data-name":"Path 108",opacity:.2}),r.createElement("path",{fill:"#a8a8a8",d:"M614.26 617.881s9.587-1.459 12.237-3.875 14.255-6.32 15.374-3.095 16.452 14.725 5.6 16.125-25.448 1.358-28.555-.055-4.656-9.1-4.656-9.1Z","data-name":"Path 109"}),r.createElement("path",{d:"M647.524 625.856c-10.853 1.4-25.448 1.358-28.555-.055-2.367-1.076-3.827-5.788-4.39-7.976l-.32.051s1.547 7.687 4.655 9.1 17.7 1.456 28.555.055c3.133-.4 4.081-1.651 3.822-3.3-.314 1.057-1.435 1.825-3.767 2.125Z","data-name":"Path 110",opacity:.2}),r.createElement("path",{fill:"#a8a8a8",d:"M122.389 613.09s7.463-1.136 9.527-3.016 11.1-4.92 11.969-2.409 12.808 11.463 4.358 12.553-19.811 1.057-22.23-.043-3.624-7.085-3.624-7.085Z","data-name":"Path 111"}),r.createElement("path",{d:"M148.285 619.302c-8.449 1.09-19.811 1.057-22.23-.043-1.842-.838-2.979-4.506-3.417-6.209l-.249.04s1.2 5.984 3.624 7.085 13.781 1.133 22.23.043c2.439-.315 3.177-1.285 2.976-2.566-.246.818-1.119 1.416-2.934 1.65Z","data-name":"Path 112",opacity:.2}),r.createElement("path",{d:"M383.7 601.318c0 30.22-42.124 20.873-93.7 20.873s-93.074 9.347-93.074-20.873 42.118-36.793 93.694-36.793 93.08 6.573 93.08 36.793Z","data-name":"Path 113",opacity:.1}),r.createElement("path",{fill:"#3f3d56",d:"M383.7 593.881c0 30.22-42.124 20.873-93.7 20.873s-93.074 9.347-93.074-20.873 42.114-36.8 93.69-36.8 93.084 6.576 93.084 36.8Z","data-name":"Path 114"})),r.createElement("path",{fill:"#fff",fillRule:"evenodd",d:"M360.175 475.732h91.791v37.153h-91.791Z","data-name":"Path 40"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M277.126 597.026a21.828 21.828 0 0 1-18.908-10.927 21.829 21.829 0 0 0 18.908 32.782h21.855v-21.855Z","data-name":"Path 41"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"m375.451 481.607 76.514-4.782v-10.928a21.854 21.854 0 0 0-21.855-21.855h-98.347l-2.732-4.735a3.154 3.154 0 0 0-5.464 0l-2.732 4.732-2.732-4.732a3.154 3.154 0 0 0-5.464 0l-2.732 4.732-2.731-4.732a3.154 3.154 0 0 0-5.464 0l-2.732 4.735h-.071l-4.526-4.525a3.153 3.153 0 0 0-5.276 1.414l-1.5 5.577-5.674-1.521a3.154 3.154 0 0 0-3.863 3.864l1.52 5.679-5.575 1.494a3.155 3.155 0 0 0-1.416 5.278l4.526 4.526v.07l-4.735 2.731a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.732a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.731a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.727a3.154 3.154 0 0 0 0 5.464l4.735 2.736-4.735 2.732a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.732a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.731a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.732a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.731a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.731a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.735a3.154 3.154 0 0 0 0 5.464l4.732 2.732-4.732 2.728a3.154 3.154 0 0 0 0 5.464l4.732 2.732a21.854 21.854 0 0 0 21.858 21.855h131.13a21.854 21.854 0 0 0 21.855-21.855v-87.42l-76.514-4.782a11.632 11.632 0 0 1 0-23.219","data-name":"Path 42"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M408.255 618.882h32.782v-43.71h-32.782Z","data-name":"Path 43"}),r.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M462.893 591.563a5.438 5.438 0 0 0-.7.07c-.042-.164-.081-.329-.127-.493a5.457 5.457 0 1 0-5.4-9.372q-.181-.185-.366-.367a5.454 5.454 0 1 0-9.384-5.4c-.162-.046-.325-.084-.486-.126a5.467 5.467 0 1 0-10.788 0c-.162.042-.325.08-.486.126a5.457 5.457 0 1 0-9.384 5.4 21.843 21.843 0 1 0 36.421 21.02 5.452 5.452 0 1 0 .7-10.858","data-name":"Path 44"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M419.183 553.317h32.782v-21.855h-32.782Z","data-name":"Path 45"}),r.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M462.893 545.121a2.732 2.732 0 1 0 0-5.464 2.811 2.811 0 0 0-.349.035c-.022-.082-.04-.164-.063-.246a2.733 2.733 0 0 0-1.052-5.253 2.7 2.7 0 0 0-1.648.566q-.09-.093-.184-.184a2.7 2.7 0 0 0 .553-1.633 2.732 2.732 0 0 0-5.245-1.07 10.928 10.928 0 1 0 0 21.031 2.732 2.732 0 0 0 5.245-1.07 2.7 2.7 0 0 0-.553-1.633q.093-.09.184-.184a2.7 2.7 0 0 0 1.648.566 2.732 2.732 0 0 0 1.052-5.253c.023-.081.042-.164.063-.246a2.814 2.814 0 0 0 .349.035","data-name":"Path 46"}),r.createElement("path",{fillRule:"evenodd",d:"M320.836 479.556a2.732 2.732 0 0 1-2.732-2.732 8.2 8.2 0 0 0-16.391 0 2.732 2.732 0 0 1-5.464 0 13.66 13.66 0 0 1 27.319 0 2.732 2.732 0 0 1-2.732 2.732","data-name":"Path 47"}),r.createElement("path",{fill:"#ffff50",fillRule:"evenodd",d:"M364.546 618.881h65.565a21.854 21.854 0 0 0 21.855-21.855v-76.492h-65.565a21.854 21.854 0 0 0-21.855 21.855Z","data-name":"Path 48"}),r.createElement("path",{fillRule:"evenodd",d:"M435.596 554.41h-54.681a1.093 1.093 0 1 1 0-2.185h54.681a1.093 1.093 0 0 1 0 2.185m0 21.855h-54.681a1.093 1.093 0 1 1 0-2.186h54.681a1.093 1.093 0 0 1 0 2.186m0 21.855h-54.681a1.093 1.093 0 1 1 0-2.185h54.681a1.093 1.093 0 0 1 0 2.185m0-54.434h-54.681a1.093 1.093 0 1 1 0-2.185h54.681a1.093 1.093 0 0 1 0 2.185m0 21.652h-54.681a1.093 1.093 0 1 1 0-2.186h54.681a1.093 1.093 0 0 1 0 2.186m0 21.855h-54.681a1.093 1.093 0 1 1 0-2.186h54.681a1.093 1.093 0 0 1 0 2.186m16.369-100.959c-.013 0-.024-.007-.037-.005-3.377.115-4.974 3.492-6.384 6.472-1.471 3.114-2.608 5.139-4.473 5.078-2.064-.074-3.244-2.406-4.494-4.874-1.436-2.835-3.075-6.049-6.516-5.929-3.329.114-4.932 3.053-6.346 5.646-1.5 2.762-2.529 4.442-4.5 4.364-2.106-.076-3.225-1.972-4.52-4.167-1.444-2.443-3.112-5.191-6.487-5.1-3.272.113-4.879 2.606-6.3 4.808-1.5 2.328-2.552 3.746-4.551 3.662-2.156-.076-3.27-1.65-4.558-3.472-1.447-2.047-3.077-4.363-6.442-4.251-3.2.109-4.807 2.153-6.224 3.954-1.346 1.709-2.4 3.062-4.621 2.977a1.094 1.094 0 0 0-.079 2.186c3.3.11 4.967-1.967 6.417-3.81 1.286-1.635 2.4-3.045 4.582-3.12 2.1-.09 3.091 1.218 4.584 3.327 1.417 2 3.026 4.277 6.263 4.394 3.391.114 5.022-2.42 6.467-4.663 1.292-2 2.406-3.734 4.535-3.807 1.959-.073 3.026 1.475 4.529 4.022 1.417 2.4 3.023 5.121 6.324 5.241 3.415.118 5.064-2.863 6.5-5.5 1.245-2.282 2.419-4.437 4.5-4.509 1.959-.046 2.981 1.743 4.492 4.732 1.412 2.79 3.013 5.95 6.365 6.071h.185c3.348 0 4.937-3.36 6.343-6.331 1.245-2.634 2.423-5.114 4.444-5.216Z","data-name":"Path 49"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M342.691 618.882h43.71v-43.71h-43.71Z","data-name":"Path 50"}),r.createElement("g",{"data-name":"Group 8",transform:"rotate(-14.98 2188.845 -1120.376)"},r.createElement("rect",{width:92.361,height:36.462,fill:"#d8d8d8","data-name":"Rectangle 3",rx:2}),r.createElement("g",{"data-name":"Group 2",transform:"translate(1.531 23.03)",fill:"#4a4a4a"},r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 4",rx:1,transform:"translate(16.797)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 5",rx:1,transform:"translate(23.12)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 6",rx:1,transform:"translate(29.444)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 7",rx:1,transform:"translate(35.768)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 8",rx:1,transform:"translate(42.091)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 9",rx:1,transform:"translate(48.415)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 10",rx:1,transform:"translate(54.739)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 11",rx:1,transform:"translate(61.063)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 12",rx:1,transform:"translate(67.386)"}),r.createElement("path",{fillRule:"evenodd",d:"M1.093 0h13.425a1.093 1.093 0 0 1 1.093 1.093v3.15a1.093 1.093 0 0 1-1.093 1.093H1.093A1.093 1.093 0 0 1 0 4.243v-3.15A1.093 1.093 0 0 1 1.093 0ZM75 0h13.426a1.093 1.093 0 0 1 1.093 1.093v3.15a1.093 1.093 0 0 1-1.093 1.093H75a1.093 1.093 0 0 1-1.093-1.093v-3.15A1.093 1.093 0 0 1 75 0Z","data-name":"Path 51"})),r.createElement("g",{"data-name":"Group 3",transform:"translate(1.531 10.261)",fill:"#4a4a4a"},r.createElement("path",{fillRule:"evenodd",d:"M1.093 0h5.125A1.093 1.093 0 0 1 7.31 1.093v3.149a1.093 1.093 0 0 1-1.092 1.093H1.093A1.093 1.093 0 0 1 0 4.242V1.093A1.093 1.093 0 0 1 1.093 0Z","data-name":"Path 52"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 13",rx:1,transform:"translate(8.299)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 14",rx:1,transform:"translate(14.623)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 15",rx:1,transform:"translate(20.947)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 16",rx:1,transform:"translate(27.271)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 17",rx:1,transform:"translate(33.594)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 18",rx:1,transform:"translate(39.918)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 19",rx:1,transform:"translate(46.242)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 20",rx:1,transform:"translate(52.565)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 21",rx:1,transform:"translate(58.888)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 22",rx:1,transform:"translate(65.212)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 23",rx:1,transform:"translate(71.536)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 24",rx:1,transform:"translate(77.859)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 25",rx:1,transform:"translate(84.183)"})),r.createElement("g",{"data-name":"Group 4",transform:"rotate(180 45.525 4.773)",fill:"#4a4a4a"},r.createElement("path",{fillRule:"evenodd",d:"M1.093 0h5.126a1.093 1.093 0 0 1 1.093 1.093v3.15a1.093 1.093 0 0 1-1.093 1.093H1.093A1.093 1.093 0 0 1 0 4.243v-3.15A1.093 1.093 0 0 1 1.093 0Z","data-name":"Path 53"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 26",rx:1,transform:"translate(8.299)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 27",rx:1,transform:"translate(14.623)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 28",rx:1,transform:"translate(20.947)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 29",rx:1,transform:"translate(27.271)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 30",rx:1,transform:"translate(33.594)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 31",rx:1,transform:"translate(39.918)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 32",rx:1,transform:"translate(46.242)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 33",rx:1,transform:"translate(52.565)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 34",rx:1,transform:"translate(58.889)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 35",rx:1,transform:"translate(65.213)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 36",rx:1,transform:"translate(71.537)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 37",rx:1,transform:"translate(77.86)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 38",rx:1,transform:"translate(84.183)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 39",rx:1,transform:"translate(8.299)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 40",rx:1,transform:"translate(14.623)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 41",rx:1,transform:"translate(20.947)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 42",rx:1,transform:"translate(27.271)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 43",rx:1,transform:"translate(33.594)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 44",rx:1,transform:"translate(39.918)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 45",rx:1,transform:"translate(46.242)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 46",rx:1,transform:"translate(52.565)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 47",rx:1,transform:"translate(58.889)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 48",rx:1,transform:"translate(65.213)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 49",rx:1,transform:"translate(71.537)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 50",rx:1,transform:"translate(77.86)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 51",rx:1,transform:"translate(84.183)"})),r.createElement("g",{"data-name":"Group 6",fill:"#4a4a4a"},r.createElement("path",{fillRule:"evenodd",d:"M2.624 16.584h7.3a1.093 1.093 0 0 1 1.092 1.093v3.15a1.093 1.093 0 0 1-1.093 1.093h-7.3a1.093 1.093 0 0 1-1.092-1.093v-3.149a1.093 1.093 0 0 1 1.093-1.094Z","data-name":"Path 54"}),r.createElement("g",{"data-name":"Group 5",transform:"translate(12.202 16.584)"},r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 52",rx:1}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 53",rx:1,transform:"translate(6.324)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 54",rx:1,transform:"translate(12.647)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 55",rx:1,transform:"translate(18.971)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 56",rx:1,transform:"translate(25.295)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 57",rx:1,transform:"translate(31.619)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 58",rx:1,transform:"translate(37.942)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 59",rx:1,transform:"translate(44.265)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 60",rx:1,transform:"translate(50.589)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 61",rx:1,transform:"translate(56.912)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 62",rx:1,transform:"translate(63.236)"})),r.createElement("path",{fillRule:"evenodd",d:"M83.053 16.584h6.906a1.093 1.093 0 0 1 1.091 1.093v3.15a1.093 1.093 0 0 1-1.091 1.093h-6.907a1.093 1.093 0 0 1-1.093-1.093v-3.149a1.093 1.093 0 0 1 1.093-1.094Z","data-name":"Path 55"})),r.createElement("g",{"data-name":"Group 7",transform:"translate(1.531 29.627)",fill:"#4a4a4a"},r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 63",rx:1}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 64",rx:1,transform:"translate(6.324)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 65",rx:1,transform:"translate(12.647)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 66",rx:1,transform:"translate(18.971)"}),r.createElement("path",{fillRule:"evenodd",d:"M26.387 0h30.422a1.093 1.093 0 0 1 1.093 1.093v3.151a1.093 1.093 0 0 1-1.093 1.093H26.387a1.093 1.093 0 0 1-1.093-1.093V1.093A1.093 1.093 0 0 1 26.387 0Zm33.594 0h3.942a1.093 1.093 0 0 1 1.093 1.093v3.151a1.093 1.093 0 0 1-1.093 1.093h-3.942a1.093 1.093 0 0 1-1.093-1.093V1.093A1.093 1.093 0 0 1 59.981 0Z","data-name":"Path 56"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 67",rx:1,transform:"translate(66.003)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 68",rx:1,transform:"translate(72.327)"}),r.createElement("rect",{width:5.336,height:5.336,"data-name":"Rectangle 69",rx:1,transform:"translate(84.183)"}),r.createElement("path",{d:"M78.254 2.273v-1.18A1.093 1.093 0 0 1 79.347 0h3.15a1.093 1.093 0 0 1 1.093 1.093v1.18Z","data-name":"Path 57"}),r.createElement("path",{d:"M83.591 3.063v1.18a1.093 1.093 0 0 1-1.093 1.093h-3.15a1.093 1.093 0 0 1-1.093-1.093v-1.18Z","data-name":"Path 58"})),r.createElement("rect",{width:88.927,height:2.371,fill:"#4a4a4a","data-name":"Rectangle 70",rx:1.085,transform:"translate(1.925 1.17)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 71",opacity:.136,rx:.723,transform:"translate(4.1 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 72",opacity:.136,rx:.723,transform:"translate(10.923 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 73",opacity:.136,rx:.723,transform:"translate(16.173 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 74",opacity:.136,rx:.723,transform:"translate(21.421 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 75",opacity:.136,rx:.723,transform:"translate(26.671 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 76",opacity:.136,rx:.723,transform:"translate(33.232 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 77",opacity:.136,rx:.723,transform:"translate(38.48 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 78",opacity:.136,rx:.723,transform:"translate(43.73 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 79",opacity:.136,rx:.723,transform:"translate(48.978 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 80",opacity:.136,rx:.723,transform:"translate(55.54 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 81",opacity:.136,rx:.723,transform:"translate(60.788 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 82",opacity:.136,rx:.723,transform:"translate(66.038 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 83",opacity:.136,rx:.723,transform:"translate(72.599 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 84",opacity:.136,rx:.723,transform:"translate(77.847 1.566)"}),r.createElement("rect",{width:4.986,height:1.581,fill:"#d8d8d8","data-name":"Rectangle 85",opacity:.136,rx:.723,transform:"translate(83.097 1.566)"})),r.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M408.256 591.563a5.439 5.439 0 0 0-.7.07c-.042-.164-.081-.329-.127-.493a5.457 5.457 0 1 0-5.4-9.372q-.181-.185-.366-.367a5.454 5.454 0 1 0-9.384-5.4c-.162-.046-.325-.084-.486-.126a5.467 5.467 0 1 0-10.788 0c-.162.042-.325.08-.486.126a5.457 5.457 0 1 0-9.384 5.4 21.843 21.843 0 1 0 36.421 21.02 5.452 5.452 0 1 0 .7-10.858","data-name":"Path 59"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M342.691 553.317h43.71v-21.855h-43.71Z","data-name":"Path 60"}),r.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M397.328 545.121a2.732 2.732 0 1 0 0-5.464 2.811 2.811 0 0 0-.349.035c-.022-.082-.04-.164-.063-.246a2.733 2.733 0 0 0-1.052-5.253 2.7 2.7 0 0 0-1.648.566q-.09-.093-.184-.184a2.7 2.7 0 0 0 .553-1.633 2.732 2.732 0 0 0-5.245-1.07 10.928 10.928 0 1 0 0 21.031 2.732 2.732 0 0 0 5.245-1.07 2.7 2.7 0 0 0-.553-1.633q.093-.09.184-.184a2.7 2.7 0 0 0 1.648.566 2.732 2.732 0 0 0 1.052-5.253c.023-.081.042-.164.063-.246a2.811 2.811 0 0 0 .349.035","data-name":"Path 61"}),r.createElement("path",{fillRule:"evenodd",d:"M408.256 464.531a2.967 2.967 0 0 1-.535-.055 2.754 2.754 0 0 1-.514-.153 2.838 2.838 0 0 1-.471-.251 4.139 4.139 0 0 1-.415-.339 3.2 3.2 0 0 1-.338-.415 2.7 2.7 0 0 1-.459-1.517 2.968 2.968 0 0 1 .055-.535 3.152 3.152 0 0 1 .152-.514 2.874 2.874 0 0 1 .252-.47 2.633 2.633 0 0 1 .753-.754 2.837 2.837 0 0 1 .471-.251 2.753 2.753 0 0 1 .514-.153 2.527 2.527 0 0 1 1.071 0 2.654 2.654 0 0 1 .983.4 4.139 4.139 0 0 1 .415.339 4.019 4.019 0 0 1 .339.415 2.786 2.786 0 0 1 .251.47 2.864 2.864 0 0 1 .208 1.049 2.77 2.77 0 0 1-.8 1.934 4.139 4.139 0 0 1-.415.339 2.722 2.722 0 0 1-1.519.459m21.855-1.366a2.789 2.789 0 0 1-1.935-.8 4.162 4.162 0 0 1-.338-.415 2.7 2.7 0 0 1-.459-1.519 2.789 2.789 0 0 1 .8-1.934 4.139 4.139 0 0 1 .415-.339 2.838 2.838 0 0 1 .471-.251 2.752 2.752 0 0 1 .514-.153 2.527 2.527 0 0 1 1.071 0 2.654 2.654 0 0 1 .983.4 4.139 4.139 0 0 1 .415.339 2.79 2.79 0 0 1 .8 1.934 3.069 3.069 0 0 1-.055.535 2.779 2.779 0 0 1-.153.514 3.885 3.885 0 0 1-.251.47 4.02 4.02 0 0 1-.339.415 4.138 4.138 0 0 1-.415.339 2.722 2.722 0 0 1-1.519.459","data-name":"Path 62"}))))}},7113:(e,a,t)=>{t.d(a,{Z:()=>c});var l,r=t(7294);function n(){return n=Object.assign?Object.assign.bind():function(e){for(var a=1;a{let{title:a,titleId:t,...c}=e;return r.createElement("svg",n({xmlns:"http://www.w3.org/2000/svg",width:1041.277,height:554.141,viewBox:"0 0 1041.277 554.141","aria-labelledby":t},c),void 0===a?r.createElement("title",{id:t},"Powered by React"):a?r.createElement("title",{id:t},a):null,l||(l=r.createElement("g",{"data-name":"Group 24"},r.createElement("g",{"data-name":"Group 23",transform:"translate(-.011 -.035)"},r.createElement("path",{fill:"#f2f2f2",d:"M961.48 438.21q-1.74 3.75-3.47 7.4-2.7 5.67-5.33 11.12c-.78 1.61-1.56 3.19-2.32 4.77-8.6 17.57-16.63 33.11-23.45 45.89a73.21 73.21 0 0 1-63.81 38.7l-151.65 1.65h-1.6l-13 .14-11.12.12-34.1.37h-1.38l-17.36.19h-.53l-107 1.16-95.51 1-11.11.12-69 .75h-.08l-44.75.48h-.48l-141.5 1.53-42.33.46a87.991 87.991 0 0 1-10.79-.54c-1.22-.14-2.44-.3-3.65-.49a87.38 87.38 0 0 1-51.29-27.54c-18.21-20.03-31.46-43.4-40.36-68.76q-1.93-5.49-3.6-11.12c-30.81-104.15 6.75-238.52 74.35-328.44q4.25-5.64 8.64-11l.07-.08c20.79-25.52 44.1-46.84 68.93-62 44-26.91 92.75-34.49 140.7-11.9 40.57 19.12 78.45 28.11 115.17 30.55 3.71.24 7.42.42 11.11.53 84.23 2.65 163.17-27.7 255.87-47.29 3.69-.78 7.39-1.55 11.12-2.28C763 .54 836.36-6.4 923.6 8.19a189.089 189.089 0 0 1 26.76 6.4q5.77 1.86 11.12 4c41.64 16.94 64.35 48.24 74 87.46q1.37 5.46 2.37 11.11c17.11 94.34-33 228.16-76.37 321.05Z","data-name":"Path 299"}),r.createElement("path",{d:"M497.02 445.61a95.21 95.21 0 0 1-1.87 11.12h93.7v-11.12Zm-78.25 62.81 11.11-.09v-27.47c-3.81-.17-7.52-.34-11.11-.52Zm-232.92-62.81v11.12h198.5v-11.12Zm849.68-339.52h-74V18.6q-5.35-2.17-11.12-4v91.49H696.87V13.67c-3.73.73-7.43 1.5-11.12 2.28v90.14H429.88V63.24c-3.69-.11-7.4-.29-11.11-.53v43.38H162.9v-62c-24.83 15.16-48.14 36.48-68.93 62h-.07v.08q-4.4 5.4-8.64 11h8.64v328.44h-83q1.66 5.63 3.6 11.12h79.39v93.62a87 87 0 0 0 12.2 2.79c1.21.19 2.43.35 3.65.49a87.991 87.991 0 0 0 10.79.54l42.33-.46v-97h255.91v94.21l11.11-.12v-94.07h255.87v91.36l11.12-.12v-91.24h253.49v4.77c.76-1.58 1.54-3.16 2.32-4.77q2.63-5.45 5.33-11.12 1.73-3.64 3.47-7.4v-321h76.42q-1.01-5.69-2.37-11.12ZM162.9 445.61V117.17h255.87v328.44Zm267 0V117.17h255.85v328.44Zm520.48 0H696.87V117.17h253.49Z","data-name":"Path 300",opacity:.1}),r.createElement("path",{fill:"#65617d",d:"M863.09 533.65v13l-151.92 1.4-1.62.03-57.74.53-1.38.02-17.55.15h-.52l-106.98.99-175.61 1.63h-.15l-44.65.42-.48.01-198.4 1.82v-15l46.65-28 93.6-.78 2-.01.66-.01 2-.03 44.94-.37 2.01-.01.64-.01 2-.01 14.41-.12.38-.01 35.55-.3h.29l277.4-2.34 6.79-.05h.68l5.18-.05 37.65-.31 2-.03 1.85-.02h.96l11.71-.09 2.32-.03 3.11-.02 9.75-.09 15.47-.13 2-.02 3.48-.02h.65l74.71-.64Z","data-name":"Path 301"}),r.createElement("path",{d:"M863.09 533.65v13l-151.92 1.4-1.62.03-57.74.53-1.38.02-17.55.15h-.52l-106.98.99-175.61 1.63h-.15l-44.65.42-.48.01-198.4 1.82v-15l46.65-28 93.6-.78 2-.01.66-.01 2-.03 44.94-.37 2.01-.01.64-.01 2-.01 14.41-.12.38-.01 35.55-.3h.29l277.4-2.34 6.79-.05h.68l5.18-.05 37.65-.31 2-.03 1.85-.02h.96l11.71-.09 2.32-.03 3.11-.02 9.75-.09 15.47-.13 2-.02 3.48-.02h.65l74.71-.64Z","data-name":"Path 302",opacity:.2}),r.createElement("path",{fill:"#3f3d56",d:"M296.1 483.66v24.49a6.13 6.13 0 0 1-3.5 5.54 6 6 0 0 1-2.5.6l-34.9.74a6 6 0 0 1-2.7-.57 6.12 6.12 0 0 1-3.57-5.57v-25.23Z","data-name":"Path 303"}),r.createElement("path",{d:"M296.1 483.66v24.49a6.13 6.13 0 0 1-3.5 5.54 6 6 0 0 1-2.5.6l-34.9.74a6 6 0 0 1-2.7-.57 6.12 6.12 0 0 1-3.57-5.57v-25.23Z","data-name":"Path 304",opacity:.1}),r.createElement("path",{fill:"#3f3d56",d:"M298.1 483.66v24.49a6.13 6.13 0 0 1-3.5 5.54 6 6 0 0 1-2.5.6l-34.9.74a6 6 0 0 1-2.7-.57 6.12 6.12 0 0 1-3.57-5.57v-25.23Z","data-name":"Path 305"}),r.createElement("path",{fill:"#3f3d56","data-name":"Rectangle 137",d:"M680.92 483.65h47.17v31.5h-47.17z"}),r.createElement("path",{"data-name":"Rectangle 138",opacity:.1,d:"M680.92 483.65h47.17v31.5h-47.17z"}),r.createElement("path",{fill:"#3f3d56","data-name":"Rectangle 139",d:"M678.92 483.65h47.17v31.5h-47.17z"}),r.createElement("path",{d:"M298.09 483.65v4.97l-47.17 1.26v-6.23Z","data-name":"Path 306",opacity:.1}),r.createElement("path",{fill:"#65617d",d:"M381.35 312.36v168.2a4 4 0 0 1-3.85 3.95l-191.65 5.1h-.05a4 4 0 0 1-3.95-3.95v-173.3a4 4 0 0 1 3.95-3.95h191.6a4 4 0 0 1 3.95 3.95Z","data-name":"Path 307"}),r.createElement("path",{d:"M185.85 308.41v181.2h-.05a4 4 0 0 1-3.95-3.95v-173.3a4 4 0 0 1 3.95-3.95Z","data-name":"Path 308",opacity:.1}),r.createElement("path",{fill:"#39374d",d:"M194.59 319.15h177.5V467.4l-177.5 4Z","data-name":"Path 309"}),r.createElement("path",{d:"M726.09 483.65v6.41l-47.17-1.26v-5.15Z","data-name":"Path 310",opacity:.1}),r.createElement("path",{fill:"#65617d",d:"M788.35 312.36v173.3a4 4 0 0 1-4 3.95l-191.69-5.1a4 4 0 0 1-3.85-3.95v-168.2a4 4 0 0 1 3.95-3.95h191.6a4 4 0 0 1 3.99 3.95Z","data-name":"Path 311"}),r.createElement("path",{d:"M788.35 312.36v173.3a4 4 0 0 1-4 3.95v-181.2a4 4 0 0 1 4 3.95Z","data-name":"Path 312",opacity:.1}),r.createElement("path",{fill:"#39374d",d:"M775.59 319.15h-177.5V467.4l177.5 4Z","data-name":"Path 313"}),r.createElement("path",{fill:"#65617d",d:"M583.85 312.36v168.2a4 4 0 0 1-3.85 3.95l-191.65 5.1a4 4 0 0 1-4-3.95v-173.3a4 4 0 0 1 3.95-3.95h191.6a4 4 0 0 1 3.95 3.95Z","data-name":"Path 314"}),r.createElement("path",{fill:"#4267b2",d:"M397.09 319.15h177.5V467.4l-177.5 4Z","data-name":"Path 315"}),r.createElement("path",{d:"M863.09 533.65v13l-151.92 1.4-1.62.03-57.74.53-1.38.02-17.55.15h-.52l-106.98.99-175.61 1.63h-.15l-44.65.42-.48.01-198.4 1.82v-15l202.51-1.33h.48l40.99-.28h.19l283.08-1.87h.29l.17-.01h.47l4.79-.03h1.46l74.49-.5 4.4-.02.98-.01Z","data-name":"Path 316",opacity:.1}),r.createElement("circle",{cx:51.33,cy:51.33,r:51.33,fill:"#fbbebe","data-name":"Ellipse 111",transform:"translate(435.93 246.82)"}),r.createElement("path",{fill:"#fbbebe",d:"M538.6 377.16s-99.5 12-90 0c3.44-4.34 4.39-17.2 4.2-31.85-.06-4.45-.22-9.06-.45-13.65-1.1-22-3.75-43.5-3.75-43.5s87-41 77-8.5c-4 13.13-2.69 31.57.35 48.88.89 5.05 1.92 10 3 14.7a344.66 344.66 0 0 0 9.65 33.92Z","data-name":"Path 317"}),r.createElement("path",{fill:"#ff6584",d:"M506.13 373.09c11.51-2.13 23.7-6 34.53-1.54 2.85 1.17 5.47 2.88 8.39 3.86s6.12 1.22 9.16 1.91c10.68 2.42 19.34 10.55 24.9 20s8.44 20.14 11.26 30.72l6.9 25.83c6 22.45 12 45.09 13.39 68.3a2437.506 2437.506 0 0 1-250.84 1.43c5.44-10.34 11-21.31 10.54-33s-7.19-23.22-4.76-34.74c1.55-7.34 6.57-13.39 9.64-20.22 8.75-19.52 1.94-45.79 17.32-60.65 6.92-6.68 17-9.21 26.63-8.89 12.28.41 24.85 4.24 37 6.11 15.56 2.36 30.26 3.76 45.94.88Z","data-name":"Path 318"}),r.createElement("path",{d:"m637.03 484.26-.1 1.43v.1l-.17 2.3-1.33 18.51-1.61 22.3-.46 6.28-1 13.44v.17l-107 1-175.59 1.9v.84h-.14v-1.12l.45-14.36.86-28.06.74-23.79.07-2.37a10.53 10.53 0 0 1 11.42-10.17c4.72.4 10.85.89 18.18 1.41l3 .22c42.33 2.94 120.56 6.74 199.5 2 1.66-.09 3.33-.19 5-.31 12.24-.77 24.47-1.76 36.58-3a10.53 10.53 0 0 1 11.6 11.23Z","data-name":"Path 319",opacity:.1}),r.createElement("path",{fill:"#3f3d56",d:"M349.74 552.53v-.84l175.62-1.91 107-1h.3v-.17l1-13.44.43-6 1.64-22.61 1.29-17.9v-.44a10.617 10.617 0 0 0-.11-2.47.3.3 0 0 0 0-.1 10.391 10.391 0 0 0-2-4.64 10.54 10.54 0 0 0-9.42-4 937.419 937.419 0 0 1-36.58 3c-1.67.12-3.34.22-5 .31-78.94 4.69-157.17.89-199.5-2l-3-.22c-7.33-.52-13.46-1-18.18-1.41a10.54 10.54 0 0 0-11.24 8.53 11 11 0 0 0-.18 1.64l-.68 22.16-.93 28.07-.44 14.36v1.12Z","data-name":"Path 320"}),r.createElement("path",{d:"m637.33 491.27-1.23 15.33-1.83 22.85-.46 5.72-1 12.81-.06.64v.17l-.15 1.48.11-1.48h-.29l-107 1-175.65 1.9v-.28l.49-14.36 1-28.06.64-18.65a6.36 6.36 0 0 1 3.06-5.25 6.25 6.25 0 0 1 3.78-.9c2.1.17 4.68.37 7.69.59 4.89.36 10.92.78 17.94 1.22 13 .82 29.31 1.7 48 2.42 52 2 122.2 2.67 188.88-3.17 3-.26 6.1-.55 9.13-.84a6.26 6.26 0 0 1 3.48.66 5.159 5.159 0 0 1 .86.54 6.14 6.14 0 0 1 2 2.46 3.564 3.564 0 0 1 .25.61 6.279 6.279 0 0 1 .36 2.59Z","data-name":"Path 321",opacity:.1}),r.createElement("path",{d:"M298.1 504.96v3.19a6.13 6.13 0 0 1-3.5 5.54l-40.1.77a6.12 6.12 0 0 1-3.57-5.57v-3Z","data-name":"Path 322",opacity:.1}),r.createElement("path",{fill:"#3f3d56",d:"m298.59 515.57-52.25 1v-8.67l52.25-1Z","data-name":"Path 323"}),r.createElement("path",{d:"m298.59 515.57-52.25 1v-8.67l52.25-1Z","data-name":"Path 324",opacity:.1}),r.createElement("path",{fill:"#3f3d56",d:"m300.59 515.57-52.25 1v-8.67l52.25-1Z","data-name":"Path 325"}),r.createElement("path",{d:"M679.22 506.96v3.19a6.13 6.13 0 0 0 3.5 5.54l40.1.77a6.12 6.12 0 0 0 3.57-5.57v-3Z","data-name":"Path 326",opacity:.1}),r.createElement("path",{d:"m678.72 517.57 52.25 1v-8.67l-52.25-1Z","data-name":"Path 327",opacity:.1}),r.createElement("path",{fill:"#3f3d56",d:"m676.72 517.57 52.25 1v-8.67l-52.25-1Z","data-name":"Path 328"}),r.createElement("path",{fill:"#3f3d56",d:"M454.79 313.88c.08 7-3.16 13.6-5.91 20.07a163.491 163.491 0 0 0-12.66 74.71c.73 11 2.58 22 .73 32.9s-8.43 21.77-19 24.9c17.53 10.45 41.26 9.35 57.76-2.66 8.79-6.4 15.34-15.33 21.75-24.11a97.86 97.86 0 0 1-13.31 44.75 103.43 103.43 0 0 0 73.51-40.82c4.31-5.81 8.06-12.19 9.72-19.23 3.09-13-1.22-26.51-4.51-39.5a266.055 266.055 0 0 1-6.17-33c-.43-3.56-.78-7.22.1-10.7 1-4.07 3.67-7.51 5.64-11.22 5.6-10.54 5.73-23.3 2.86-34.88s-8.49-22.26-14.06-32.81c-4.46-8.46-9.3-17.31-17.46-22.28-5.1-3.1-11-4.39-16.88-5.64l-25.37-5.43c-5.55-1.19-11.26-2.38-16.87-1.51-9.47 1.48-16.14 8.32-22 15.34-4.59 5.46-15.81 15.71-16.6 22.86-.72 6.59 5.1 17.63 6.09 24.58 1.3 9 2.22 6 7.3 11.52 3.21 3.42 5.28 7.37 5.34 12.16Z","data-name":"Path 329"})),r.createElement("path",{fill:"#fff",fillRule:"evenodd",d:"M280.139 370.832h43.635v17.662h-43.635Z","data-name":"Path 40"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M240.66 428.493a10.377 10.377 0 0 1-8.989-5.195 10.377 10.377 0 0 0 8.988 15.584h10.391v-10.389Z","data-name":"Path 41"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"m287.402 373.625 36.373-2.273v-5.195a10.389 10.389 0 0 0-10.39-10.389h-46.75l-1.3-2.249a1.5 1.5 0 0 0-2.6 0l-1.3 2.249-1.3-2.249a1.5 1.5 0 0 0-2.6 0l-1.3 2.249-1.3-2.249a1.5 1.5 0 0 0-2.6 0l-1.3 2.249h-.034l-2.152-2.151a1.5 1.5 0 0 0-2.508.672l-.696 2.653-2.7-.723a1.5 1.5 0 0 0-1.836 1.837l.722 2.7-2.65.71a1.5 1.5 0 0 0-.673 2.509l2.152 2.152v.033l-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.25 1.282-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3-2.249 1.3a1.5 1.5 0 0 0 0 2.6l2.249 1.3a10.389 10.389 0 0 0 10.389 10.34h62.335a10.389 10.389 0 0 0 10.39-10.39v-41.557l-36.373-2.273a5.53 5.53 0 0 1 0-11.038","data-name":"Path 42"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M302.996 438.882h15.584v-20.779h-15.584Z","data-name":"Path 43"}),r.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M328.97 425.895a2.582 2.582 0 0 0-.332.033c-.02-.078-.038-.156-.06-.234a2.594 2.594 0 1 0-2.567-4.455q-.086-.088-.174-.175a2.593 2.593 0 1 0-4.461-2.569c-.077-.022-.154-.04-.231-.06a2.6 2.6 0 1 0-5.128 0c-.077.02-.154.038-.231.06a2.594 2.594 0 1 0-4.461 2.569 10.384 10.384 0 1 0 17.314 9.992 2.592 2.592 0 1 0 .332-5.161","data-name":"Path 44"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M308.191 407.713h15.584v-10.389h-15.584Z","data-name":"Path 45"}),r.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M328.969 403.818a1.3 1.3 0 1 0 0-2.6 1.336 1.336 0 0 0-.166.017l-.03-.117a1.3 1.3 0 0 0-.5-2.5 1.285 1.285 0 0 0-.783.269l-.087-.087a1.285 1.285 0 0 0 .263-.776 1.3 1.3 0 0 0-2.493-.509 5.195 5.195 0 1 0 0 10 1.3 1.3 0 0 0 2.493-.509 1.285 1.285 0 0 0-.263-.776l.087-.087a1.285 1.285 0 0 0 .783.269 1.3 1.3 0 0 0 .5-2.5c.011-.038.02-.078.03-.117a1.337 1.337 0 0 0 .166.017","data-name":"Path 46"}),r.createElement("path",{fillRule:"evenodd",d:"M261.439 372.65a1.3 1.3 0 0 1-1.3-1.3 3.9 3.9 0 0 0-7.792 0 1.3 1.3 0 1 1-2.6 0 6.494 6.494 0 0 1 12.987 0 1.3 1.3 0 0 1-1.3 1.3","data-name":"Path 47"}),r.createElement("path",{fill:"#ffff50",fillRule:"evenodd",d:"M282.217 438.882h31.168a10.389 10.389 0 0 0 10.389-10.389V392.13h-31.168a10.389 10.389 0 0 0-10.389 10.389Z","data-name":"Path 48"}),r.createElement("path",{fillRule:"evenodd",d:"M315.993 408.233h-25.994a.52.52 0 1 1 0-1.039h25.994a.52.52 0 0 1 0 1.039m0 10.389h-25.994a.52.52 0 1 1 0-1.039h25.994a.52.52 0 0 1 0 1.039m0 10.389h-25.994a.52.52 0 1 1 0-1.039h25.994a.52.52 0 0 1 0 1.039m0-25.877h-25.994a.52.52 0 1 1 0-1.039h25.994a.52.52 0 0 1 0 1.039m0 10.293h-25.994a.52.52 0 1 1 0-1.039h25.994a.52.52 0 0 1 0 1.039m0 10.389h-25.994a.52.52 0 1 1 0-1.039h25.994a.52.52 0 0 1 0 1.039m7.782-47.993h-.018c-1.605.055-2.365 1.66-3.035 3.077-.7 1.48-1.24 2.443-2.126 2.414-.981-.035-1.542-1.144-2.137-2.317-.683-1.347-1.462-2.876-3.1-2.819-1.582.054-2.344 1.451-3.017 2.684-.715 1.313-1.2 2.112-2.141 2.075-1-.036-1.533-.938-2.149-1.981-.686-1.162-1.479-2.467-3.084-2.423-1.555.053-2.319 1.239-2.994 2.286-.713 1.106-1.213 1.781-2.164 1.741-1.025-.036-1.554-.784-2.167-1.65-.688-.973-1.463-2.074-3.062-2.021a3.815 3.815 0 0 0-2.959 1.879c-.64.812-1.14 1.456-2.2 1.415a.52.52 0 0 0-.037 1.039 3.588 3.588 0 0 0 3.05-1.811c.611-.777 1.139-1.448 2.178-1.483 1-.043 1.47.579 2.179 1.582.674.953 1.438 2.033 2.977 2.089 1.612.054 2.387-1.151 3.074-2.217.614-.953 1.144-1.775 2.156-1.81.931-.035 1.438.7 2.153 1.912.674 1.141 1.437 2.434 3.006 2.491 1.623.056 2.407-1.361 3.09-2.616.592-1.085 1.15-2.109 2.14-2.143.931-.022 1.417.829 2.135 2.249.671 1.326 1.432 2.828 3.026 2.886h.088c1.592 0 2.347-1.6 3.015-3.01.592-1.252 1.152-2.431 2.113-2.479Z","data-name":"Path 49"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M271.828 438.882h20.779v-20.779h-20.779Z","data-name":"Path 50"}),r.createElement("g",{"data-name":"Group 8",transform:"rotate(-14.98 1643.944 -873.93)"},r.createElement("rect",{width:43.906,height:17.333,fill:"#d8d8d8","data-name":"Rectangle 3",rx:2}),r.createElement("g",{"data-name":"Group 2",transform:"translate(.728 10.948)",fill:"#4a4a4a"},r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 4",rx:1,transform:"translate(7.985)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 5",rx:1,transform:"translate(10.991)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 6",rx:1,transform:"translate(13.997)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 7",rx:1,transform:"translate(17.003)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 8",rx:1,transform:"translate(20.009)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 9",rx:1,transform:"translate(23.015)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 10",rx:1,transform:"translate(26.021)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 11",rx:1,transform:"translate(29.028)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 12",rx:1,transform:"translate(32.034)"}),r.createElement("path",{fillRule:"evenodd",d:"M.519 0H6.9a.519.519 0 0 1 .521.52v1.5a.519.519 0 0 1-.519.519H.519A.519.519 0 0 1 0 2.017V.519A.519.519 0 0 1 .519 0Zm35.134 0h6.383a.519.519 0 0 1 .519.519v1.5a.519.519 0 0 1-.519.519h-6.384a.519.519 0 0 1-.519-.519v-1.5A.519.519 0 0 1 35.652 0Z","data-name":"Path 51"})),r.createElement("g",{"data-name":"Group 3",transform:"translate(.728 4.878)",fill:"#4a4a4a"},r.createElement("path",{fillRule:"evenodd",d:"M.519 0h2.437a.519.519 0 0 1 .519.519v1.5a.519.519 0 0 1-.519.519H.519A.519.519 0 0 1 0 2.017V.519A.519.519 0 0 1 .519 0Z","data-name":"Path 52"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 13",rx:1,transform:"translate(3.945)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 14",rx:1,transform:"translate(6.951)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 15",rx:1,transform:"translate(9.958)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 16",rx:1,transform:"translate(12.964)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 17",rx:1,transform:"translate(15.97)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 18",rx:1,transform:"translate(18.976)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 19",rx:1,transform:"translate(21.982)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 20",rx:1,transform:"translate(24.988)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 21",rx:1,transform:"translate(27.994)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 22",rx:1,transform:"translate(31)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 23",rx:1,transform:"translate(34.006)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 24",rx:1,transform:"translate(37.012)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 25",rx:1,transform:"translate(40.018)"})),r.createElement("g",{"data-name":"Group 4",transform:"rotate(180 21.642 2.269)",fill:"#4a4a4a"},r.createElement("path",{fillRule:"evenodd",d:"M.519 0h2.437a.519.519 0 0 1 .519.519v1.5a.519.519 0 0 1-.519.519H.519A.519.519 0 0 1 0 2.017V.519A.519.519 0 0 1 .519 0Z","data-name":"Path 53"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 26",rx:1,transform:"translate(3.945)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 27",rx:1,transform:"translate(6.951)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 28",rx:1,transform:"translate(9.958)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 29",rx:1,transform:"translate(12.964)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 30",rx:1,transform:"translate(15.97)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 31",rx:1,transform:"translate(18.976)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 32",rx:1,transform:"translate(21.982)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 33",rx:1,transform:"translate(24.988)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 34",rx:1,transform:"translate(27.994)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 35",rx:1,transform:"translate(31.001)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 36",rx:1,transform:"translate(34.007)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 37",rx:1,transform:"translate(37.013)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 38",rx:1,transform:"translate(40.018)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 39",rx:1,transform:"translate(3.945)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 40",rx:1,transform:"translate(6.951)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 41",rx:1,transform:"translate(9.958)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 42",rx:1,transform:"translate(12.964)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 43",rx:1,transform:"translate(15.97)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 44",rx:1,transform:"translate(18.976)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 45",rx:1,transform:"translate(21.982)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 46",rx:1,transform:"translate(24.988)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 47",rx:1,transform:"translate(27.994)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 48",rx:1,transform:"translate(31.001)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 49",rx:1,transform:"translate(34.007)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 50",rx:1,transform:"translate(37.013)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 51",rx:1,transform:"translate(40.018)"})),r.createElement("g",{"data-name":"Group 6",fill:"#4a4a4a"},r.createElement("path",{fillRule:"evenodd",d:"M1.247 7.883h3.47a.519.519 0 0 1 .519.519v1.5a.519.519 0 0 1-.519.519h-3.47A.519.519 0 0 1 .728 9.9V8.403a.519.519 0 0 1 .519-.52Z","data-name":"Path 54"}),r.createElement("g",{"data-name":"Group 5",transform:"translate(5.801 7.883)"},r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 52",rx:1}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 53",rx:1,transform:"translate(3.006)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 54",rx:1,transform:"translate(6.012)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 55",rx:1,transform:"translate(9.018)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 56",rx:1,transform:"translate(12.025)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 57",rx:1,transform:"translate(15.031)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 58",rx:1,transform:"translate(18.037)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 59",rx:1,transform:"translate(21.042)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 60",rx:1,transform:"translate(24.049)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 61",rx:1,transform:"translate(27.055)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 62",rx:1,transform:"translate(30.061)"})),r.createElement("path",{fillRule:"evenodd",d:"M39.482 7.883h3.28a.519.519 0 0 1 .519.519v1.5a.519.519 0 0 1-.519.519h-3.281a.519.519 0 0 1-.519-.521V8.403a.519.519 0 0 1 .519-.52Z","data-name":"Path 55"})),r.createElement("g",{"data-name":"Group 7",transform:"translate(.728 14.084)",fill:"#4a4a4a"},r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 63",rx:1}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 64",rx:1,transform:"translate(3.006)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 65",rx:1,transform:"translate(6.012)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 66",rx:1,transform:"translate(9.018)"}),r.createElement("path",{fillRule:"evenodd",d:"M12.543 0h14.462a.519.519 0 0 1 .519.519v1.5a.519.519 0 0 1-.519.519H12.543a.519.519 0 0 1-.519-.52V.519A.519.519 0 0 1 12.543 0Zm15.97 0h1.874a.519.519 0 0 1 .519.519v1.5a.519.519 0 0 1-.519.519h-1.874a.519.519 0 0 1-.519-.519v-1.5A.519.519 0 0 1 28.513 0Z","data-name":"Path 56"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 67",rx:1,transform:"translate(31.376)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 68",rx:1,transform:"translate(34.382)"}),r.createElement("rect",{width:2.537,height:2.537,"data-name":"Rectangle 69",rx:1,transform:"translate(40.018)"}),r.createElement("path",{d:"M37.199 1.08V.519A.519.519 0 0 1 37.718 0h1.499a.519.519 0 0 1 .519.519v.561Z","data-name":"Path 57"}),r.createElement("path",{d:"M39.737 1.456v.561a.519.519 0 0 1-.519.519h-1.499a.519.519 0 0 1-.519-.519v-.561Z","data-name":"Path 58"})),r.createElement("rect",{width:42.273,height:1.127,fill:"#4a4a4a","data-name":"Rectangle 70",rx:.564,transform:"translate(.915 .556)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 71",opacity:.136,rx:.376,transform:"translate(1.949 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 72",opacity:.136,rx:.376,transform:"translate(5.193 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 73",opacity:.136,rx:.376,transform:"translate(7.688 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 74",opacity:.136,rx:.376,transform:"translate(10.183 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 75",opacity:.136,rx:.376,transform:"translate(12.679 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 76",opacity:.136,rx:.376,transform:"translate(15.797 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 77",opacity:.136,rx:.376,transform:"translate(18.292 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 78",opacity:.136,rx:.376,transform:"translate(20.788 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 79",opacity:.136,rx:.376,transform:"translate(23.283 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 80",opacity:.136,rx:.376,transform:"translate(26.402 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 81",opacity:.136,rx:.376,transform:"translate(28.897 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 82",opacity:.136,rx:.376,transform:"translate(31.393 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 83",opacity:.136,rx:.376,transform:"translate(34.512 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 84",opacity:.136,rx:.376,transform:"translate(37.007 .744)"}),r.createElement("rect",{width:2.37,height:.752,fill:"#d8d8d8","data-name":"Rectangle 85",opacity:.136,rx:.376,transform:"translate(39.502 .744)"})),r.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M302.996 425.895a2.583 2.583 0 0 0-.332.033c-.02-.078-.038-.156-.06-.234a2.594 2.594 0 1 0-2.567-4.455q-.086-.088-.174-.175a2.593 2.593 0 1 0-4.461-2.569c-.077-.022-.154-.04-.231-.06a2.6 2.6 0 1 0-5.128 0c-.077.02-.154.038-.231.06a2.594 2.594 0 1 0-4.461 2.569 10.384 10.384 0 1 0 17.314 9.992 2.592 2.592 0 1 0 .332-5.161","data-name":"Path 59"}),r.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M271.828 407.713h20.779v-10.389h-20.779Z","data-name":"Path 60"}),r.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M297.801 403.818a1.3 1.3 0 1 0 0-2.6 1.338 1.338 0 0 0-.166.017l-.03-.117a1.3 1.3 0 0 0-.5-2.5 1.285 1.285 0 0 0-.783.269l-.087-.087a1.285 1.285 0 0 0 .263-.776 1.3 1.3 0 0 0-2.493-.509 5.195 5.195 0 1 0 0 10 1.3 1.3 0 0 0 2.493-.509 1.285 1.285 0 0 0-.263-.776l.087-.087a1.285 1.285 0 0 0 .783.269 1.3 1.3 0 0 0 .5-2.5c.011-.038.02-.078.03-.117a1.335 1.335 0 0 0 .166.017","data-name":"Path 61"}),r.createElement("path",{fillRule:"evenodd",d:"M302.997 365.507a1.41 1.41 0 0 1-.255-.026 1.309 1.309 0 0 1-.244-.073 1.349 1.349 0 0 1-.224-.119 1.967 1.967 0 0 1-.2-.161 1.52 1.52 0 0 1-.161-.2 1.282 1.282 0 0 1-.218-.722 1.41 1.41 0 0 1 .026-.255 1.5 1.5 0 0 1 .072-.244 1.364 1.364 0 0 1 .12-.223 1.252 1.252 0 0 1 .358-.358 1.349 1.349 0 0 1 .224-.119 1.309 1.309 0 0 1 .244-.073 1.2 1.2 0 0 1 .509 0 1.262 1.262 0 0 1 .468.192 1.968 1.968 0 0 1 .2.161 1.908 1.908 0 0 1 .161.2 1.322 1.322 0 0 1 .12.223 1.361 1.361 0 0 1 .1.5 1.317 1.317 0 0 1-.379.919 1.968 1.968 0 0 1-.2.161 1.346 1.346 0 0 1-.223.119 1.332 1.332 0 0 1-.5.1m10.389-.649a1.326 1.326 0 0 1-.92-.379 1.979 1.979 0 0 1-.161-.2 1.282 1.282 0 0 1-.218-.722 1.326 1.326 0 0 1 .379-.919 1.967 1.967 0 0 1 .2-.161 1.351 1.351 0 0 1 .224-.119 1.308 1.308 0 0 1 .244-.073 1.2 1.2 0 0 1 .509 0 1.262 1.262 0 0 1 .468.192 1.967 1.967 0 0 1 .2.161 1.326 1.326 0 0 1 .379.919 1.461 1.461 0 0 1-.026.255 1.323 1.323 0 0 1-.073.244 1.847 1.847 0 0 1-.119.223 1.911 1.911 0 0 1-.161.2 1.967 1.967 0 0 1-.2.161 1.294 1.294 0 0 1-.722.218","data-name":"Path 62"}),r.createElement("g",{transform:"translate(466.3 278.56)",fill:"#61dafb"},r.createElement("path",{d:"M263.668 117.179c0-5.827-7.3-11.35-18.487-14.775 2.582-11.4 1.434-20.477-3.622-23.382a7.861 7.861 0 0 0-4.016-1v4a4.152 4.152 0 0 1 2.044.466c2.439 1.4 3.5 6.724 2.672 13.574-.2 1.685-.52 3.461-.914 5.272a86.9 86.9 0 0 0-11.386-1.954 87.469 87.469 0 0 0-7.459-8.965c5.845-5.433 11.332-8.41 15.062-8.41V78c-4.931 0-11.386 3.514-17.913 9.611-6.527-6.061-12.982-9.539-17.913-9.539v4c3.712 0 9.216 2.959 15.062 8.356a84.687 84.687 0 0 0-7.405 8.947 83.732 83.732 0 0 0-11.4 1.972 54.136 54.136 0 0 1-.932-5.2c-.843-6.85.2-12.175 2.618-13.592a3.991 3.991 0 0 1 2.062-.466v-4a8 8 0 0 0-4.052 1c-5.039 2.9-6.168 11.96-3.568 23.328-11.153 3.443-18.415 8.947-18.415 14.757 0 5.828 7.3 11.35 18.487 14.775-2.582 11.4-1.434 20.477 3.622 23.382a7.882 7.882 0 0 0 4.034 1c4.931 0 11.386-3.514 17.913-9.611 6.527 6.061 12.982 9.539 17.913 9.539a8 8 0 0 0 4.052-1c5.039-2.9 6.168-11.96 3.568-23.328 11.111-3.42 18.373-8.943 18.373-14.752Zm-23.346-11.96a80.235 80.235 0 0 1-2.421 7.083 83.185 83.185 0 0 0-2.349-4.3 96.877 96.877 0 0 0-2.582-4.2c2.547.377 5.004.843 7.353 1.417Zm-8.212 19.1c-1.4 2.421-2.833 4.716-4.321 6.85a93.313 93.313 0 0 1-8.1.359c-2.708 0-5.415-.126-8.069-.341q-2.232-3.2-4.339-6.814-2.044-3.523-3.73-7.136a94.058 94.058 0 0 1 3.712-7.154c1.4-2.421 2.833-4.716 4.321-6.85a93.313 93.313 0 0 1 8.1-.359c2.708 0 5.415.126 8.069.341q2.232 3.2 4.339 6.814 2.044 3.523 3.73 7.136a101.198 101.198 0 0 1-3.712 7.15Zm5.792-2.331a76.525 76.525 0 0 1 2.474 7.136 80.22 80.22 0 0 1-7.387 1.434c.879-1.381 1.757-2.8 2.582-4.25a96.22 96.22 0 0 0 2.329-4.324Zm-18.182 19.128a73.921 73.921 0 0 1-4.985-5.738c1.614.072 3.263.126 4.931.126 1.685 0 3.353-.036 4.985-.126a69.993 69.993 0 0 1-4.931 5.738Zm-13.34-10.561c-2.546-.377-5-.843-7.352-1.417a80.235 80.235 0 0 1 2.421-7.083c.735 1.434 1.506 2.869 2.349 4.3s1.702 2.837 2.582 4.2Zm13.25-37.314a73.924 73.924 0 0 1 4.985 5.738 110.567 110.567 0 0 0-4.931-.126c-1.686 0-3.353.036-4.985.126a69.993 69.993 0 0 1 4.931-5.738ZM206.362 103.8a100.567 100.567 0 0 0-4.913 8.55 76.525 76.525 0 0 1-2.474-7.136 90.158 90.158 0 0 1 7.387-1.414Zm-16.227 22.449c-6.348-2.708-10.454-6.258-10.454-9.073s4.106-6.383 10.454-9.073c1.542-.663 3.228-1.255 4.967-1.811a86.122 86.122 0 0 0 4.034 10.92 84.9 84.9 0 0 0-3.981 10.866 53.804 53.804 0 0 1-5.021-1.826Zm9.647 25.623c-2.439-1.4-3.5-6.724-2.672-13.574.2-1.686.52-3.461.914-5.272a86.9 86.9 0 0 0 11.386 1.954 87.465 87.465 0 0 0 7.459 8.965c-5.845 5.433-11.332 8.41-15.062 8.41a4.279 4.279 0 0 1-2.026-.48Zm42.532-13.663c.843 6.85-.2 12.175-2.618 13.592a3.99 3.99 0 0 1-2.062.466c-3.712 0-9.216-2.959-15.062-8.356a84.689 84.689 0 0 0 7.405-8.947 83.731 83.731 0 0 0 11.4-1.972 50.194 50.194 0 0 1 .936 5.22Zm6.9-11.96c-1.542.663-3.228 1.255-4.967 1.811a86.12 86.12 0 0 0-4.034-10.92 84.9 84.9 0 0 0 3.981-10.866 56.777 56.777 0 0 1 5.039 1.829c6.348 2.708 10.454 6.258 10.454 9.073-.017 2.818-4.123 6.386-10.471 9.076Z","data-name":"Path 330"}),r.createElement("path",{d:"M201.718 78.072Z","data-name":"Path 331"}),r.createElement("circle",{cx:8.194,cy:8.194,r:8.194,"data-name":"Ellipse 112",transform:"translate(211.472 108.984)"}),r.createElement("path",{d:"M237.525 78.018Z","data-name":"Path 332"})))))}},2722:(e,a,t)=>{t.d(a,{Z:()=>z});var l,r,n,c,h,m,d,i,f,s,o,g,E,p,v,R,x,w,Z,u,M,P,y,b,q,V,A,H,G,N,O,S,_,j,C,k,B=t(7294);function F(){return F=Object.assign?Object.assign.bind():function(e){for(var a=1;a{let{title:a,titleId:t,...z}=e;return B.createElement("svg",F({xmlns:"http://www.w3.org/2000/svg",width:1129,height:663,viewBox:"0 0 1129 663","aria-labelledby":t},z),void 0===a?B.createElement("title",{id:t},"Focus on What Matters"):a?B.createElement("title",{id:t},a):null,l||(l=B.createElement("circle",{cx:321,cy:321,r:321,fill:"#f2f2f2"})),r||(r=B.createElement("ellipse",{cx:559,cy:635.5,fill:"#3f3d56",rx:514,ry:27.5})),n||(n=B.createElement("ellipse",{cx:558,cy:627,opacity:.2,rx:460,ry:22})),c||(c=B.createElement("path",{fill:"#3f3d56",d:"M131 152.5h840v50H131z"})),h||(h=B.createElement("path",{fill:"#3f3d56",d:"M131 608.83a21.67 21.67 0 0 0 21.67 21.67h796.66A21.67 21.67 0 0 0 971 608.83V177.5H131ZM949.33 117.5H152.67A21.67 21.67 0 0 0 131 139.17v38.33h840v-38.33a21.67 21.67 0 0 0-21.67-21.67Z"})),m||(m=B.createElement("path",{d:"M949.33 117.5H152.67A21.67 21.67 0 0 0 131 139.17v38.33h840v-38.33a21.67 21.67 0 0 0-21.67-21.67Z",opacity:.2})),d||(d=B.createElement("circle",{cx:181,cy:147.5,r:13,fill:"#3f3d56"})),i||(i=B.createElement("circle",{cx:217,cy:147.5,r:13,fill:"#3f3d56"})),f||(f=B.createElement("circle",{cx:253,cy:147.5,r:13,fill:"#3f3d56"})),s||(s=B.createElement("rect",{width:337,height:386,x:168,y:213.5,fill:"#606060",rx:5.335})),o||(o=B.createElement("rect",{width:284,height:22,x:603,y:272.5,fill:"#2e8555",rx:5.476})),g||(g=B.createElement("rect",{width:416,height:15,x:537,y:352.5,fill:"#2e8555",rx:5.476})),E||(E=B.createElement("rect",{width:416,height:15,x:537,y:396.5,fill:"#2e8555",rx:5.476})),p||(p=B.createElement("rect",{width:416,height:15,x:537,y:440.5,fill:"#2e8555",rx:5.476})),v||(v=B.createElement("rect",{width:416,height:15,x:537,y:484.5,fill:"#2e8555",rx:5.476})),R||(R=B.createElement("rect",{width:88,height:26,x:865,y:552.5,fill:"#3ecc5f",rx:7.028})),x||(x=B.createElement("path",{fill:"#3f3d56",d:"M1053.103 506.116a30.114 30.114 0 0 0 3.983-15.266c0-13.797-8.544-24.98-19.083-24.98s-19.082 11.183-19.082 24.98a30.114 30.114 0 0 0 3.983 15.266 31.248 31.248 0 0 0 0 30.532 31.248 31.248 0 0 0 0 30.532 31.248 31.248 0 0 0 0 30.532 30.114 30.114 0 0 0-3.983 15.266c0 13.797 8.543 24.981 19.082 24.981s19.083-11.184 19.083-24.98a30.114 30.114 0 0 0-3.983-15.267 31.248 31.248 0 0 0 0-30.532 31.248 31.248 0 0 0 0-30.532 31.248 31.248 0 0 0 0-30.532Z"})),w||(w=B.createElement("ellipse",{cx:1038.003,cy:460.318,fill:"#3f3d56",rx:19.083,ry:24.981})),Z||(Z=B.createElement("ellipse",{cx:1038.003,cy:429.786,fill:"#3f3d56",rx:19.083,ry:24.981})),u||(u=B.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M1109.439 220.845a91.61 91.61 0 0 0 7.106-10.461l-50.14-8.235 54.228.403a91.566 91.566 0 0 0 1.746-72.426l-72.755 37.742 67.097-49.321A91.413 91.413 0 1 0 965.75 220.845a91.458 91.458 0 0 0-10.425 16.67l65.087 33.814-69.4-23.292a91.46 91.46 0 0 0 14.738 85.837 91.406 91.406 0 1 0 143.689 0 91.418 91.418 0 0 0 0-113.03Z"})),M||(M=B.createElement("path",{d:"M946.188 277.36a91.013 91.013 0 0 0 19.562 56.514 91.406 91.406 0 1 0 143.689 0c12.25-15.553-163.25-66.774-163.25-56.515Z",opacity:.1})),P||(P=B.createElement("path",{fill:"#fff",fillRule:"evenodd",d:"M330.12 342.936h111.474v45.12H330.12Z"})),y||(y=B.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M229.263 490.241a26.51 26.51 0 0 1-22.963-13.27 26.51 26.51 0 0 0 22.963 39.812h26.541V490.24Z"})),b||(b=B.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"m348.672 350.07 92.922-5.807v-13.27a26.54 26.54 0 0 0-26.541-26.542H295.616l-3.318-5.746a3.83 3.83 0 0 0-6.635 0l-3.318 5.746-3.317-5.746a3.83 3.83 0 0 0-6.636 0l-3.317 5.746-3.318-5.746a3.83 3.83 0 0 0-6.635 0l-3.318 5.746c-.03 0-.056.004-.086.004l-5.497-5.495a3.83 3.83 0 0 0-6.407 1.717l-1.817 6.773-6.89-1.847a3.83 3.83 0 0 0-4.691 4.693l1.844 6.891-6.77 1.814a3.832 3.832 0 0 0-1.72 6.41l5.497 5.497c0 .028-.004.055-.004.085l-5.747 3.317a3.83 3.83 0 0 0 0 6.636l5.747 3.317-5.747 3.318a3.83 3.83 0 0 0 0 6.635l5.747 3.318-5.747 3.318a3.83 3.83 0 0 0 0 6.635l5.747 3.318-5.747 3.317a3.83 3.83 0 0 0 0 6.636l5.747 3.317-5.747 3.318a3.83 3.83 0 0 0 0 6.636l5.747 3.317-5.747 3.318a3.83 3.83 0 0 0 0 6.635l5.747 3.318-5.747 3.318a3.83 3.83 0 0 0 0 6.635l5.747 3.318-5.747 3.317a3.83 3.83 0 0 0 0 6.636l5.747 3.317-5.747 3.318a3.83 3.83 0 0 0 0 6.635l5.747 3.318-5.747 3.318a3.83 3.83 0 0 0 0 6.635l5.747 3.318-5.747 3.317a3.83 3.83 0 0 0 0 6.636l5.747 3.317-5.747 3.318a3.83 3.83 0 0 0 0 6.635l5.747 3.318a26.54 26.54 0 0 0 26.541 26.542h159.249a26.54 26.54 0 0 0 26.541-26.542V384.075l-92.922-5.807a14.126 14.126 0 0 1 0-28.197"})),q||(q=B.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M388.511 516.783h39.812V463.7h-39.812Z"})),V||(V=B.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M454.865 483.606a6.602 6.602 0 0 0-.848.085c-.05-.2-.099-.4-.154-.599a6.627 6.627 0 1 0-6.557-11.382q-.22-.225-.445-.446a6.624 6.624 0 1 0-11.397-6.564c-.196-.055-.394-.102-.59-.152a6.64 6.64 0 1 0-13.101 0c-.197.05-.394.097-.59.152a6.628 6.628 0 1 0-11.398 6.564 26.528 26.528 0 1 0 44.232 25.528 6.621 6.621 0 1 0 .848-13.186"})),A||(A=B.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M401.782 437.158h39.812v-26.541h-39.812Z"})),H||(H=B.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M454.865 427.205a3.318 3.318 0 0 0 0-6.635 3.411 3.411 0 0 0-.424.042c-.026-.1-.049-.199-.077-.298a3.319 3.319 0 0 0-1.278-6.38 3.282 3.282 0 0 0-2 .688q-.11-.113-.224-.223a3.282 3.282 0 0 0 .672-1.983 3.318 3.318 0 0 0-6.37-1.299 13.27 13.27 0 1 0 0 25.541 3.318 3.318 0 0 0 6.37-1.3 3.282 3.282 0 0 0-.672-1.982q.114-.11.223-.223a3.282 3.282 0 0 0 2.001.688 3.318 3.318 0 0 0 1.278-6.38c.028-.098.05-.199.077-.298a3.413 3.413 0 0 0 .424.042"})),G||(G=B.createElement("path",{fillRule:"evenodd",d:"M282.345 347.581a3.318 3.318 0 0 1-3.317-3.318 9.953 9.953 0 1 0-19.906 0 3.318 3.318 0 1 1-6.636 0 16.588 16.588 0 1 1 33.177 0 3.318 3.318 0 0 1-3.318 3.318"})),N||(N=B.createElement("path",{fill:"#ffff50",fillRule:"evenodd",d:"M335.428 516.783h79.625a26.54 26.54 0 0 0 26.541-26.542v-92.895H361.97a26.54 26.54 0 0 0-26.542 26.542Z"})),O||(O=B.createElement("path",{fillRule:"evenodd",d:"M421.714 438.485h-66.406a1.327 1.327 0 0 1 0-2.654h66.406a1.327 1.327 0 0 1 0 2.654m0 26.542h-66.406a1.327 1.327 0 1 1 0-2.654h66.406a1.327 1.327 0 0 1 0 2.654m0 26.541h-66.406a1.327 1.327 0 1 1 0-2.654h66.406a1.327 1.327 0 0 1 0 2.654m0-66.106h-66.406a1.327 1.327 0 0 1 0-2.655h66.406a1.327 1.327 0 0 1 0 2.655m0 26.294h-66.406a1.327 1.327 0 0 1 0-2.654h66.406a1.327 1.327 0 0 1 0 2.654m0 26.542h-66.406a1.327 1.327 0 0 1 0-2.655h66.406a1.327 1.327 0 0 1 0 2.655m19.88-122.607c-.016 0-.03-.008-.045-.007-4.1.14-6.04 4.241-7.753 7.86-1.786 3.783-3.168 6.242-5.432 6.167-2.506-.09-3.94-2.922-5.458-5.918-1.744-3.443-3.734-7.347-7.913-7.201-4.042.138-5.99 3.708-7.706 6.857-1.828 3.355-3.071 5.394-5.47 5.3-2.557-.093-3.916-2.395-5.488-5.06-1.753-2.967-3.78-6.304-7.878-6.19-3.973.137-5.925 3.166-7.648 5.84-1.822 2.826-3.098 4.549-5.527 4.447-2.618-.093-3.97-2.004-5.535-4.216-1.757-2.486-3.737-5.3-7.823-5.163-3.886.133-5.838 2.615-7.56 4.802-1.634 2.075-2.91 3.718-5.611 3.615a1.328 1.328 0 1 0-.096 2.654c4.004.134 6.032-2.389 7.793-4.628 1.562-1.985 2.91-3.698 5.564-3.789 2.556-.108 3.754 1.48 5.567 4.041 1.721 2.434 3.675 5.195 7.606 5.337 4.118.138 6.099-2.94 7.853-5.663 1.569-2.434 2.923-4.535 5.508-4.624 2.38-.088 3.674 1.792 5.5 4.885 1.722 2.916 3.671 6.22 7.68 6.365 4.147.143 6.15-3.477 7.895-6.682 1.511-2.77 2.938-5.388 5.466-5.475 2.38-.056 3.62 2.116 5.456 5.746 1.714 3.388 3.658 7.226 7.73 7.373l.224.004c4.066 0 5.996-4.08 7.704-7.689 1.511-3.198 2.942-6.21 5.397-6.334Z"})),S||(S=B.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M308.887 516.783h53.083V463.7h-53.083Z"})),_||(_=B.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M388.511 483.606a6.602 6.602 0 0 0-.848.085c-.05-.2-.098-.4-.154-.599a6.627 6.627 0 1 0-6.557-11.382q-.22-.225-.444-.446a6.624 6.624 0 1 0-11.397-6.564c-.197-.055-.394-.102-.59-.152a6.64 6.64 0 1 0-13.102 0c-.196.05-.394.097-.59.152a6.628 6.628 0 1 0-11.397 6.564 26.528 26.528 0 1 0 44.231 25.528 6.621 6.621 0 1 0 .848-13.186"})),j||(j=B.createElement("path",{fill:"#3ecc5f",fillRule:"evenodd",d:"M308.887 437.158h53.083v-26.541h-53.083Z"})),C||(C=B.createElement("path",{fill:"#44d860",fillRule:"evenodd",d:"M375.24 427.205a3.318 3.318 0 1 0 0-6.635 3.411 3.411 0 0 0-.423.042c-.026-.1-.05-.199-.077-.298a3.319 3.319 0 0 0-1.278-6.38 3.282 3.282 0 0 0-2.001.688q-.11-.113-.223-.223a3.282 3.282 0 0 0 .671-1.983 3.318 3.318 0 0 0-6.37-1.299 13.27 13.27 0 1 0 0 25.541 3.318 3.318 0 0 0 6.37-1.3 3.282 3.282 0 0 0-.671-1.982q.113-.11.223-.223a3.282 3.282 0 0 0 2.001.688 3.318 3.318 0 0 0 1.278-6.38c.028-.098.05-.199.077-.298a3.413 3.413 0 0 0 .423.042"})),k||(k=B.createElement("path",{fillRule:"evenodd",d:"M388.511 329.334a3.603 3.603 0 0 1-.65-.067 3.344 3.344 0 0 1-.624-.185 3.447 3.447 0 0 1-.572-.306 5.027 5.027 0 0 1-.504-.411 3.887 3.887 0 0 1-.41-.504 3.275 3.275 0 0 1-.558-1.845 3.602 3.602 0 0 1 .067-.65 3.826 3.826 0 0 1 .184-.624 3.489 3.489 0 0 1 .307-.57 3.197 3.197 0 0 1 .914-.916 3.447 3.447 0 0 1 .572-.305 3.344 3.344 0 0 1 .624-.186 3.07 3.07 0 0 1 1.3 0 3.223 3.223 0 0 1 1.195.49 5.028 5.028 0 0 1 .504.412 4.88 4.88 0 0 1 .411.504 3.382 3.382 0 0 1 .306.571 3.478 3.478 0 0 1 .252 1.274 3.364 3.364 0 0 1-.969 2.349 5.027 5.027 0 0 1-.504.411 3.306 3.306 0 0 1-1.845.558m26.542-1.66a3.388 3.388 0 0 1-2.35-.968 5.042 5.042 0 0 1-.41-.504 3.275 3.275 0 0 1-.558-1.845 3.387 3.387 0 0 1 .967-2.349 5.026 5.026 0 0 1 .505-.411 3.447 3.447 0 0 1 .572-.305 3.343 3.343 0 0 1 .623-.186 3.07 3.07 0 0 1 1.3 0 3.224 3.224 0 0 1 1.195.49 5.026 5.026 0 0 1 .504.412 3.388 3.388 0 0 1 .97 2.35 3.726 3.726 0 0 1-.067.65 3.374 3.374 0 0 1-.186.623 4.715 4.715 0 0 1-.305.57 4.88 4.88 0 0 1-.412.505 5.026 5.026 0 0 1-.504.412 3.305 3.305 0 0 1-1.844.557"})))}},2833:(e,a,t)=>{t.r(a),t.d(a,{default:()=>E});var l=t(7294),r=t(6010),n=t(3699),c=t(9962),h=t(6931),m=t(7462);const d={features:"features_t9lD",featureSvg:"featureSvg_GfXr"},i=[{title:"45 Examples (6 from MSFT)",Svg:t(1733).Z,description:l.createElement(l.Fragment,null,l.createElement("a",{href:"docs/List-of-RSCG/"},"Examples")," with code source and instructions to run them.")},{title:"Convenient - E-book and search",Svg:t(2722).Z,description:l.createElement(l.Fragment,null,"You can download the entire documentation as an e-book or search for keywords.")},{title:"New to Source Code Generation?",Svg:t(7113).Z,description:l.createElement(l.Fragment,null,"See ",l.createElement("a",{href:"docs/intro/"},"Intro")," to start with the basics in C#.")}];function f(e){let{title:a,Svg:t,description:n}=e;return l.createElement("div",{className:(0,r.Z)("col col--4")},l.createElement("div",{className:"text--center"},l.createElement(t,{className:d.featureSvg,role:"img"})),l.createElement("div",{className:"text--center padding-horiz--md"},l.createElement("h3",null,a),l.createElement("p",null,n)))}function s(){return l.createElement("section",{className:d.features},l.createElement("div",{className:"container"},l.createElement("div",{className:"row"},i.map(((e,a)=>l.createElement(f,(0,m.Z)({key:a},e)))))))}const o={heroBanner:"heroBanner_qdFl",buttons:"buttons_AeoN"};function g(){const{siteConfig:e}=(0,c.Z)();return l.createElement("header",{className:(0,r.Z)("hero hero--primary",o.heroBanner)},l.createElement("div",{className:"container"},l.createElement("h1",{className:"hero__title"},e.title),l.createElement("p",{className:"hero__subtitle"},e.tagline),l.createElement("div",{className:o.buttons},l.createElement(n.Z,{className:"button button--secondary button--lg",to:"/docs/category/rscg-examples"},"See examples"))))}function E(){const{siteConfig:e}=(0,c.Z)();return l.createElement(h.Z,{title:`Hello from ${e.title}`,description:"Description will go into a meta tag in "},l.createElement(g,null),l.createElement("main",null,l.createElement(s,null)))}}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/3d8d21df.892708cd.js b/docs/v2/assets/js/3d8d21df.892708cd.js new file mode 100644 index 000000000..1cdfd9408 --- /dev/null +++ b/docs/v2/assets/js/3d8d21df.892708cd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[6535],{4137:(e,t,o)=>{o.d(t,{Zo:()=>u,kt:()=>f});var n=o(7294);function a(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function r(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function i(e){for(var t=1;t=0||(a[o]=e[o]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(a[o]=e[o])}return a}var s=n.createContext({}),c=function(e){var t=n.useContext(s),o=t;return e&&(o="function"==typeof e?e(t):i(i({},t),e)),o},u=function(e){var t=c(e.components);return n.createElement(s.Provider,{value:t},e.children)},d="mdxType",h={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},p=n.forwardRef((function(e,t){var o=e.components,a=e.mdxType,r=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),d=c(o),p=a,f=d["".concat(s,".").concat(p)]||d[p]||h[p]||r;return o?n.createElement(f,i(i({ref:t},u),{},{components:o})):n.createElement(f,i({ref:t},u))}));function f(e,t){var o=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var r=o.length,i=new Array(r);i[0]=p;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:a,i[1]=l;for(var c=2;c{o.r(t),o.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>h,frontMatter:()=>r,metadata:()=>l,toc:()=>c});var n=o(7462),a=(o(7294),o(4137));const r={sidebar_position:20,title:"About"},i=void 0,l={unversionedId:"about",id:"about",title:"About",description:"Content",source:"@site/docs/about.md",sourceDirName:".",slug:"/about",permalink:"/RSCG_Examples/v2/docs/about",draft:!1,tags:[],version:"current",sidebarPosition:20,frontMatter:{sidebar_position:20,title:"About"},sidebar:"tutorialSidebar",previous:{title:"Introduction",permalink:"/RSCG_Examples/v2/docs/intro"},next:{title:"List of RSCG",permalink:"/RSCG_Examples/v2/docs/List-of-RSCG"}},s={},c=[{value:"Content",id:"content",level:2},{value:"Are those examples ready for production?",id:"are-those-examples-ready-for-production",level:2},{value:"How to read this book",id:"how-to-read-this-book",level:2},{value:"I have a suggestion for a new RSCG that is worth mentioning in this book. What can I do?",id:"i-have-a-suggestion-for-a-new-rscg-that-is-worth-mentioning-in-this-book-what-can-i-do",level:2},{value:"I want to make a RSCG that will be useful. How can I do?",id:"i-want-to-make-a-rscg-that-will-be-useful-how-can-i-do",level:2},{value:"I want to contribute to the book. How can I do?",id:"i-want-to-contribute-to-the-book-how-can-i-do",level:2},{value:"I want to see the previous version of the book. Where can I find it?",id:"i-want-to-see-the-previous-version-of-the-book-where-can-i-find-it",level:2}],u={toc:c},d="wrapper";function h(e){let{components:t,...o}=e;return(0,a.kt)(d,(0,n.Z)({},u,o,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"content"},"Content"),(0,a.kt)("p",null,"You will find here code examples\nof 45 Roslyn Source Code Generator (RSCG)\nthat can be useful for you. That means, you will write more elegant and concise code - even if the generators code is not always nice to look."),(0,a.kt)("h2",{id:"are-those-examples-ready-for-production"},"Are those examples ready for production?"),(0,a.kt)("p",null,"I have done due diligence to test the RSCG that I have shown to you here. However, I cannot guarantee that will fit your code. That means that you can test it for your case and, because all are open source on Github.com, you can contribute to improve them ."),(0,a.kt)("p",null,"Also I have selected only Incremental Source Code Generator.\nI have also verified that the RSCG are working with .NET 7.\nAlso verified that works with namespaces and classes."),(0,a.kt)("h2",{id:"how-to-read-this-book"},"How to read this book"),(0,a.kt)("p",null,"For each RSCG, you will find "),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Name of the RSCG and link to the NuGet package / GitHub repository"),(0,a.kt)("li",{parentName:"ol"},"What the RSCG can do"),(0,a.kt)("li",{parentName:"ol"},"What you need to include in .csproj file"),(0,a.kt)("li",{parentName:"ol"},"What will be the initial code"),(0,a.kt)("li",{parentName:"ol"},"Code Generated by RSCG"),(0,a.kt)("li",{parentName:"ol"},"Link to the downloadable code to practice")),(0,a.kt)("h2",{id:"i-have-a-suggestion-for-a-new-rscg-that-is-worth-mentioning-in-this-book-what-can-i-do"},"I have a suggestion for a new RSCG that is worth mentioning in this book. What can I do?"),(0,a.kt)("p",null,"Please send me an email to ",(0,a.kt)("a",{parentName:"p",href:"mailto:ignatandrei@yahoo.com"},"ignatandrei@yahoo.com")),(0,a.kt)("h2",{id:"i-want-to-make-a-rscg-that-will-be-useful-how-can-i-do"},"I want to make a RSCG that will be useful. How can I do?"),(0,a.kt)("p",null,"In the introduction I have put the links to get you started with RSCG. "),(0,a.kt)("h2",{id:"i-want-to-contribute-to-the-book-how-can-i-do"},"I want to contribute to the book. How can I do?"),(0,a.kt)("p",null,"Please send me an email to ",(0,a.kt)("a",{parentName:"p",href:"mailto:ignatandrei@yahoo.com"},"ignatandrei@yahoo.com")),(0,a.kt)("h2",{id:"i-want-to-see-the-previous-version-of-the-book-where-can-i-find-it"},"I want to see the previous version of the book. Where can I find it?"),(0,a.kt)("p",null,"For v1 with .NET 5 see (docs/v1)"))}h.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/4acf0422.37cf1245.js b/docs/v2/assets/js/4acf0422.37cf1245.js new file mode 100644 index 000000000..d1c43acfc --- /dev/null +++ b/docs/v2/assets/js/4acf0422.37cf1245.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[3836],{4137:(e,n,t)=>{t.d(n,{Zo:()=>c,kt:()=>k});var a=t(7294);function s(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function l(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,a)}return t}function o(e){for(var n=1;n=0||(s[t]=e[t]);return s}(e,n);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(s[t]=e[t])}return s}var p=a.createContext({}),r=function(e){var n=a.useContext(p),t=n;return e&&(t="function"==typeof e?e(n):o(o({},n),e)),t},c=function(e){var n=r(e.components);return a.createElement(p.Provider,{value:n},e.children)},m="mdxType",d={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},u=a.forwardRef((function(e,n){var t=e.components,s=e.mdxType,l=e.originalType,p=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),m=r(t),u=s,k=m["".concat(p,".").concat(u)]||m[u]||d[u]||l;return t?a.createElement(k,o(o({ref:n},c),{},{components:t})):a.createElement(k,o({ref:n},c))}));function k(e,n){var t=arguments,s=n&&n.mdxType;if("string"==typeof e||s){var l=t.length,o=new Array(l);o[0]=u;var i={};for(var p in n)hasOwnProperty.call(n,p)&&(i[p]=n[p]);i.originalType=e,i[m]="string"==typeof e?e:s,o[1]=i;for(var r=2;r{t.r(n),t.d(n,{assets:()=>p,contentTitle:()=>o,default:()=>d,frontMatter:()=>l,metadata:()=>i,toc:()=>r});var a=t(7462),s=(t(7294),t(4137));const l={},o="RoslynComponents",i={unversionedId:"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme",id:"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme",title:"RoslynComponents",description:"C#\u306eRoslyn\u30b3\u30f3\u30d1\u30a4\u30e9\u7528\u306e\u30a2\u30ca\u30e9\u30a4\u30b6/\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3067\u3059\u3002",source:"@site/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme.md",sourceDirName:"RSCG-Examples",slug:"/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme",draft:!1,tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AutoRegisterInject",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/AutoRegisterInject_readme"},next:{title:"Breezy_readme",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/Breezy_readme"}},p={},r=[{value:"\u4e00\u89a7",id:"\u4e00\u89a7",level:2},{value:"AutomaticDisposeImpl",id:"automaticdisposeimpl",level:2},{value:"Introduction",id:"introduction",level:3},{value:"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9",id:"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9",level:4},{value:"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092\u5b9f\u884c\u3057\u305f\u969b\u306e\u51fa\u529b\u4f8b",id:"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092\u5b9f\u884c\u3057\u305f\u969b\u306e\u51fa\u529b\u4f8b",level:4},{value:"\u4f7f\u7528\u65b9\u6cd5",id:"\u4f7f\u7528\u65b9\u6cd5",level:3},{value:"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb",id:"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb",level:4},{value:"\u57fa\u672c",id:"\u57fa\u672c",level:4},{value:"Dispose()\u306a\u3069\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u30bf\u30a4\u30df\u30f3\u30b0\u3067\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u3068\u540c\u6642\u306b\u72ec\u81ea\u306e\u51e6\u7406\u3082\u5b9f\u884c\u3059\u308b",id:"dispose\u306a\u3069\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u30bf\u30a4\u30df\u30f3\u30b0\u3067\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u3068\u540c\u6642\u306b\u72ec\u81ea\u306e\u51e6\u7406\u3082\u5b9f\u884c\u3059\u308b",level:4},{value:"\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4",id:"\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4",level:4},{value:"AutomaticNotifyPropertyChangedImpl",id:"automaticnotifypropertychangedimpl",level:2},{value:"CancellationAnalyzer",id:"cancellationanalyzer",level:2},{value:"Cs0436Relaxation",id:"cs0436relaxation",level:2},{value:"Introduction",id:"introduction-1",level:3},{value:"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb",id:"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb-1",level:3},{value:"\u624b\u9806\uff11 Directory.Build.props\u306e\u914d\u7f6e(\u7de8\u96c6)",id:"\u624b\u9806\uff11-directorybuildprops\u306e\u914d\u7f6e\u7de8\u96c6",level:4},{value:"\u53c2\u8003",id:"\u53c2\u8003",level:5},{value:"\u624b\u9806\uff12 editorconfig\u306e\u914d\u7f6e(\u7de8\u96c6)",id:"\u624b\u9806\uff12-editorconfig\u306e\u914d\u7f6e\u7de8\u96c6",level:4},{value:"\u53c2\u8003",id:"\u53c2\u8003-1",level:5},{value:"Cs0436Relaxation\u304c\u6b63\u3057\u304f\u6a5f\u80fd\u3057\u3066\u3044\u308b\u5834\u5408\u306e\u8b66\u544a\u306b\u3064\u3044\u3066",id:"cs0436relaxation\u304c\u6b63\u3057\u304f\u6a5f\u80fd\u3057\u3066\u3044\u308b\u5834\u5408\u306e\u8b66\u544a\u306b\u3064\u3044\u3066",level:3}],c={toc:r},m="wrapper";function d(e){let{components:n,...t}=e;return(0,s.kt)(m,(0,a.Z)({},c,t,{components:n,mdxType:"MDXLayout"}),(0,s.kt)("h1",{id:"roslyncomponents"},"RoslynComponents"),(0,s.kt)("p",null,"C#\u306eRoslyn\u30b3\u30f3\u30d1\u30a4\u30e9\u7528\u306e\u30a2\u30ca\u30e9\u30a4\u30b6/\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3067\u3059\u3002"),(0,s.kt)("h2",{id:"\u4e00\u89a7"},"\u4e00\u89a7"),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("a",{parentName:"li",href:"#automaticdisposeimpl"},"AutomaticDisposeImpl"),(0,s.kt)("br",null),"\nC#\u3067",(0,s.kt)("inlineCode",{parentName:"li"},"IDisposable"),"\u3068",(0,s.kt)("inlineCode",{parentName:"li"},"IAsyncDisposable"),"\u306e\u5b9f\u88c5\u30d1\u30bf\u30fc\u30f3\u306b\u5bfe\u5fdc\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u3092\u81ea\u52d5\u5b9f\u88c5\u3059\u308b\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf"),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("a",{parentName:"li",href:"#automaticnotifypropertychangedimpl"},"AutomaticNotifyPropertyChangedImpl"),(0,s.kt)("br",null),"\nC#\u3067",(0,s.kt)("inlineCode",{parentName:"li"},"INotifyPropertyChanged"),"\u306a\u3069\u306e\u5909\u66f4\u901a\u77e5\u4ed8\u304d\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5b9f\u88c5\u3092\u88dc\u52a9\u3059\u308b\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf"),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("a",{parentName:"li",href:"#cancellationanalyzer"},"CancellationAnalyzer"),(0,s.kt)("br",null),"\n\u30ad\u30e3\u30f3\u30bb\u30eb\u30c8\u30fc\u30af\u30f3\u306e\u9069\u5207\u306a\u5f15\u304d\u6e21\u3057\u3068\u30ad\u30e3\u30f3\u30bb\u30eb\u30c8\u30fc\u30af\u30f3\u4ed8\u304d\u306e\u30b7\u30b0\u30cd\u30c1\u30e3\u306e\u30e1\u30bd\u30c3\u30c9\u306e\u512a\u5148\u7684\u4f7f\u7528\u3092\u88dc\u52a9\u3059\u308b\u305f\u3081\u306e\u30a2\u30ca\u30e9\u30a4\u30b6"),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("a",{parentName:"li",href:"#cs0436relaxation"},"Cs0436Relaxation"),(0,s.kt)("br",null),"\n\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u751f\u6210\u3057\u305f\u30af\u30e9\u30b9\u7b49\u3092\u542b\u3080\u30a2\u30bb\u30f3\u30d6\u30ea\u540c\u58eb\u3067InternalsVisbleTo\u5c5e\u6027\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u306b\u767a\u751f\u3059\u308b\u5834\u5408\u304c\u3042\u308bCS0436\u8b66\u544a\u3092\u9069\u5207\u306b\u7de9\u548c(\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u8d77\u56e0\u3067\u306a\u3044\u5831\u544a\u306e\u307f\u3092\u5225ID\u3067\u518d\u8b66\u544a)\u3059\u308b\u305f\u3081\u306e\u30a2\u30ca\u30e9\u30a4\u30b6")),(0,s.kt)("h2",{id:"automaticdisposeimpl"},"AutomaticDisposeImpl"),(0,s.kt)("p",null,"C#\u3067",(0,s.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u306e\u5b9f\u88c5\u30d1\u30bf\u30fc\u30f3\u306b\u5bfe\u5fdc\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u3092\u81ea\u52d5\u5b9f\u88c5\u3059\u308b\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3067\u3059\u3002"),(0,s.kt)("h3",{id:"introduction"},"Introduction"),(0,s.kt)("p",null,"\u4ee5\u4e0b\u306e\u30b5\u30f3\u30d7\u30eb\u3067\u793a\u3059\u3088\u3046\u306b\u3001",(0,s.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306e\u5c11\u306a\u304f\u3068\u3082\u4e00\u65b9\u3092\u5b9f\u88c5\u3059\u308b\u30af\u30e9\u30b9\u306b",(0,s.kt)("inlineCode",{parentName:"p"},"partial"),"\u30ad\u30fc\u30ef\u30fc\u30c9\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"AutomaticDisposeImpl"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3059\u308b\u3068\u3001\u30af\u30e9\u30b9\u5185\u306b\u542b\u307e\u308c\u308b",(0,s.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u5b9f\u88c5\u3057\u3066\u3044\u308b\u578b\u3092\u6301\u3064\u30e1\u30f3\u30d0\u3092\u7834\u68c4\u3059\u308b",(0,s.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u304c\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002"),(0,s.kt)("h4",{id:"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9"},"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-cs"},'using System;\nusing System.Threading.Tasks;\nusing Benutomo;\n\nnamespace SampleCode\n{\n // \u81ea\u52d5\u5b9f\u88c5\u3092\u9069\u7528\u3059\u308b\u30af\u30e9\u30b9\n [AutomaticDisposeImpl]\n public partial class DisposeableTest : IDisposable, IAsyncDisposable\n {\n // DisposeableTest\u306eDipose()\u3068DiposeAsync()\u306f\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u305f\u3081\u3001\u5b9a\u7fa9\u4e0d\u8981\n\n // IDisposable.Dispose()\u306b\u3088\u308b\u7834\u68c4\u304c\u53ef\u80fd\u306a\u30d5\u30a3\u30fc\u30eb\u30c9\n [EnableAutomaticDispose]\n ConsoleOutputDisposable consoleOutputDisposable = new ConsoleOutputDisposable();\n\n // IDisposable.Dispose()\u3068IAsyncDisposable.DisposeAsync()\u306e\u3069\u3061\u3089\u3067\u3082\u7834\u68c4\u304c\u53ef\u80fd\u306a\u30d7\u30ed\u30d1\u30c6\u30a3\n [EnableAutomaticDispose]\n ConsoleOutputAsyncDisposable consoleOutputAsyncDisposable { get; } = new ConsoleOutputAsyncDisposable();\n\n public DisposeableTest()\n {\n Console.WriteLine("Created new DisposeableTest");\n }\n }\n\n // \u4ee5\u964d\u306f\u3001\u51fa\u529b\u4f8b\u306e\u305f\u3081\u306e\u30b3\u30fc\u30c9\n\n class Program\n {\n public static async Task Main()\n {\n var disposeTestInstance = new DisposeableTest();\n\n Console.WriteLine("Begin disposeTestInstance.Dispose()");\n disposeTestInstance.Dispose();\n Console.WriteLine("End disposeTestInstance.Dispose()");\n Console.WriteLine();\n\n var asyncDisposeTestInstance = new DisposeableTest();\n\n Console.WriteLine("Begin disposeTestInstance.DisposeAsync()");\n await asyncDisposeTestInstance.DisposeAsync();\n Console.WriteLine("End disposeTestInstance.DisposeAsync()");\n Console.WriteLine();\n }\n }\n\n class ConsoleOutputDisposable : IDisposable\n {\n public void Dispose()\n {\n Console.WriteLine(" Called Dispose() of ConsoleOutputDisposable.");\n }\n }\n\n class ConsoleOutputAsyncDisposable : IDisposable, IAsyncDisposable\n {\n public void Dispose()\n {\n Console.WriteLine(" Called Dispose() of ConsoleOutputAsyncDisposable.");\n }\n\n public ValueTask DisposeAsync()\n {\n Console.WriteLine(" Called DisposeAsync() of ConsoleOutputAsyncDisposable.");\n return default;\n }\n }\n}\n')),(0,s.kt)("h4",{id:"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092\u5b9f\u884c\u3057\u305f\u969b\u306e\u51fa\u529b\u4f8b"},"\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092\u5b9f\u884c\u3057\u305f\u969b\u306e\u51fa\u529b\u4f8b"),(0,s.kt)("p",null,"\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u30af\u30e9\u30b9\u5185\u306b\u542b\u307e\u308c\u308b",(0,s.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u307e\u305f\u306f",(0,s.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u3092\u5b9f\u88c5\u3057\u305f\u30e1\u30f3\u30d0\u306e",(0,s.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u306f\u3001\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u305f\u30b3\u30fc\u30c9\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002\n\u81ea\u52d5\u5b9f\u88c5\u30af\u30e9\u30b9\u306e",(0,s.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u306f\u57fa\u672c\u7684\u306b\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u306b\u3082",(0,s.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u304c\u3001\u30e1\u30f3\u30d0\u304c",(0,s.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3057\u304b\u5b9f\u88c5\u3057\u3066\u3044\u306a\u3044\u5834\u5408\u306f",(0,s.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u3092\u4f7f\u7528\u3057\u3066\u7834\u68c4\u3057\u307e\u3059\u3002"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre"},"Created new DisposeableTest\nBegin disposeTestInstance.Dispose()\n Called Dispose() of ConsoleOutputDisposable.\n Called Dispose() of ConsoleOutputAsyncDisposable.\nEnd disposeTestInstance.Dispose()\n\nCreated new DisposeableTest\nBegin disposeTestInstance.DisposeAsync()\n Called DisposeAsync() of ConsoleOutputAsyncDisposable.\n Called Dispose() of ConsoleOutputDisposable.\nEnd disposeTestInstance.DisposeAsync()\n\n")),(0,s.kt)("h3",{id:"\u4f7f\u7528\u65b9\u6cd5"},"\u4f7f\u7528\u65b9\u6cd5"),(0,s.kt)("h4",{id:"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb"},"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb"),(0,s.kt)("p",null,"\u26a0\ufe0f VisualStudio\u3092\u5229\u7528\u3059\u308b\u5834\u5408\u306f2022\u306e\u6700\u65b0\u7248\u304c\u5fc5\u8981\u3067\u3059\u3002"),(0,s.kt)("p",null,(0,s.kt)("a",{parentName:"p",href:"https://www.nuget.org/packages/Benutomo.AutomaticDisposeImpl.SourceGenerator/"},"Nuget"),"\u306a\u3069\u3092\u5229\u7528\u3057\u3066\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30a2\u30ca\u30e9\u30a4\u30b6\u306bBenutomo.AutomaticDisposeImpl.SourceGenerator.dll\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-ps"},"Install-Package Benutomo.AutomaticDisposeImpl.SourceGenerator\n")),(0,s.kt)("h4",{id:"\u57fa\u672c"},"\u57fa\u672c"),(0,s.kt)("p",null,"\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3001\u7834\u68c4\u306e\u81ea\u52d5\u5b9f\u88c5\u3092\u4f7f\u7528\u3057\u305f\u3044\u30af\u30e9\u30b9\u3092\u542b\u3080C#\u306e\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u306e\u5148\u982d\u90e8\u306b",(0,s.kt)("inlineCode",{parentName:"p"},"using Benutomo;"),"\u3092\u8ffd\u52a0\u3057\u3001",(0,s.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u306e\u5c11\u306a\u304f\u3068\u3082\u4e00\u65b9\u3092\u5b9f\u88c5\u3057\u3066\u3044\u308b\u30af\u30e9\u30b9\u306b",(0,s.kt)("inlineCode",{parentName:"p"},"partial"),"\u30ad\u30fc\u30ef\u30fc\u30c9\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"[AutomaticDisposeImpl]"),"\u5c5e\u6027\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\n",(0,s.kt)("inlineCode",{parentName:"p"},"EnableDisposeImpl"),"\u5c5e\u6027\u3092\u8ffd\u52a0\u3057\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u307e\u306f\u305f\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u30e1\u30f3\u30d0\u3092\u542b\u3080\u30af\u30e9\u30b9\u304c\u7834\u68c4\u3068\u540c\u6642\u306b\u81ea\u52d5\u7684\u306b\u7834\u68c4\u3055\u308c\u307e\u3059\u3002\n",(0,s.kt)("inlineCode",{parentName:"p"},"DisnableDisposeImpl"),"\u5c5e\u6027\u3092\u8ffd\u52a0\u3057\u305f\u30d5\u30a3\u30fc\u30eb\u30c9\u307e\u306f\u305f\u30d7\u30ed\u30d1\u30c6\u30a3\u306f\u81ea\u52d5\u7684\u306a\u7834\u68c4\u306e\u5bfe\u8c61\u5916\u3068\u306a\u308a\u307e\u3059\u3002\n\u81ea\u52d5\u5b9f\u88c5\u3059\u308b\u610f\u5473\u304c\u3042\u308a\u307e\u305b\u3093\u304c\u3001\u30e1\u30f3\u30d0\u306f\u7a7a\u3067\u3082\u554f\u984c\u3042\u308a\u307e\u305b\u3093\u3002"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-cs"},"using Benutomo;\nusing System;\n\n// \u540c\u671f\u7684\u306a\u7834\u68c4(IDisposable)\u3092\u81ea\u52d5\u5b9f\u88c5\n[AutomaticDisposeImpl]\npartial class Sample1 : IDisposable\n{\n // \u81ea\u52d5\u7834\u68c4\u3059\u308b\u30e1\u30f3\u30d0\u306b\u306fEnableAutomaticDispose\u5c5e\u6027\u3092\u4ed8\u4e0e\n [EnableAutomaticDispose]\n IDisposable _disposable;\n\n // \u81ea\u52d5\u7834\u68c4\u3057\u306a\u3044\u30e1\u30f3\u30d0\u306b\u306fDisableAutomaticDispose\u5c5e\u6027\u3092\u4ed8\u4e0e\n [DisableAutomaticDispose]\n IDisposable Disposable => _disposable;\n}\n\n// \u975e\u540c\u671f\u7684\u306a\u7834\u68c4(IAsyncDisposable)\u3092\u81ea\u52d5\u5b9f\u88c5\n[AutomaticDisposeImpl]\npartial class Sample2 : IAsyncDisposable\n{\n}\n\n// \u540c\u671f\u7684\u306a\u7834\u68c4(IDisposable)\u3068\u975e\u540c\u671f\u7684\u306a\u7834\u68c4(IAsyncDisposable)\u3092\u81ea\u52d5\u5b9f\u88c5\n[AutomaticDisposeImpl]\npartial class Sample3 : IDisposable, IAsyncDisposable\n{\n}\n\n// \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u304c\u660e\u793a\u7684\u306b\u5b9f\u88c5\u3055\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u3001NG\u3002IDisposable\u3068IAsyncDisposable\u306e\u5c11\u306a\u304f\u3068\u3069\u3061\u3089\u304b\u4e00\u65b9\u306e\u5b9f\u88c5\u304c\u5fc5\u8981\u3002\n[AutomaticDisposeImpl]\npartial class Sample4\n{\n}\n")),(0,s.kt)("p",null,"\u2139 \u81ea\u52d5\u5b9f\u88c5\u30b3\u30fc\u30c9\u304b\u3089\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u304c\u884c\u308f\u308c\u308b\u306e\u306f\u547c\u3073\u51fa\u3057\u65b9\u306b\u95a2\u308f\u3089\u305a(\u81ea\u52d5\u5b9f\u88c5\u30af\u30e9\u30b9\u306e",(0,s.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"DisposeAysnc()"),"\u306e\u3069\u3061\u3089\u304c\u5148\u306b\u4f55\u56de\u547c\u3073\u51fa\u3055\u308c\u3066\u3082)\u3001\u6700\u5927\uff11\u56de\u3067\u3059\u3002\u6a19\u6e96\u306e",(0,s.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/ja-jp/dotnet/standard/garbage-collection/implementing-dispose#implement-the-dispose-pattern"},"Dispose\u30d1\u30bf\u30fc\u30f3"),"\u3068\u540c\u69d8\u306b\u91cd\u8907\u3059\u308b\u547c\u3073\u51fa\u3057\u306f\u7121\u8996\u3055\u308c\u307e\u3059\u3002"),(0,s.kt)("p",null,"\u2139 \u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u305f\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u3067\u751f\u3058\u305f\u4f8b\u5916\u306f\u3001\u30ea\u30ea\u30fc\u30b9\u30d3\u30eb\u30c9\u6642\u306f\u7121\u8996\u3055\u308c\u3001\u30c7\u30d0\u30c3\u30b0\u30d3\u30eb\u30c9\u6642\u306fDebug.Fail()\u306b\u3088\u3063\u3066\u30c7\u30d0\u30c3\u30ac\u3092\u505c\u6b62\u3055\u305b\u307e\u3059\u3002\u6a19\u6e96\u7684\u306a",(0,s.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u7b49\u306f\u4f8b\u5916\u3092\u767a\u751f\u3055\u305b\u308b\u3053\u3068\u306a\u304f\u8907\u6570\u56de\u306e\u547c\u3073\u51fa\u3057\u304c\u53ef\u80fd\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059(",(0,s.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/ja-jp/dotnet/standard/garbage-collection/implementing-dispose"},"Dispose\u30e1\u30bd\u30c3\u30c9\u306e\u5b9f\u88c5"),")\u3002\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30b3\u30fc\u30c9\u306f\u305d\u308c\u304c\u5b88\u3089\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u671f\u5f85\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u7834\u68c4\u3067\u4f8b\u5916\u3092\u767a\u751f\u3055\u305b\u308b\u30e1\u30f3\u30d0\u304c\u5b58\u5728\u3059\u308b\u5834\u5408\u306f\u3001\u81ea\u52d5\u5b9f\u88c5\u5bfe\u8c61\u304b\u3089\u9664\u5916\u3057\u3001\u72ec\u81ea\u51e6\u7406\u30e1\u30bd\u30c3\u30c9\u306e\u4e2d\u3067\u7834\u68c4\u3068\u4f8b\u5916\u306e\u30cf\u30f3\u30c9\u30ea\u30f3\u30b0\u3092\u884c\u3063\u3066\u4e0b\u3055\u3044\u3002"),(0,s.kt)("h4",{id:"dispose\u306a\u3069\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u30bf\u30a4\u30df\u30f3\u30b0\u3067\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u3068\u540c\u6642\u306b\u72ec\u81ea\u306e\u51e6\u7406\u3082\u5b9f\u884c\u3059\u308b"},"Dispose()\u306a\u3069\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u30bf\u30a4\u30df\u30f3\u30b0\u3067\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30e1\u30f3\u30d0\u306e\u7834\u68c4\u3068\u540c\u6642\u306b\u72ec\u81ea\u306e\u51e6\u7406\u3082\u5b9f\u884c\u3059\u308b"),(0,s.kt)("p",null,(0,s.kt)("inlineCode",{parentName:"p"},"[ManagedObjectDisposeMethod]"),"\u5c5e\u6027\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"[ManagedObjectAsyncDisposeMethod]"),"\u5c5e\u6027\u3092\u4f7f\u7528\u3059\u308b\u3068\u3001\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b",(0,s.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u304a\u3088\u3073\u3001",(0,s.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u306e\u4e2d\u304b\u3089\u30e6\u30fc\u30b6\u5074\u306e\u30b3\u30fc\u30c9\u3067\u5b9f\u88c5\u3055\u308c\u308b\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-cs"},"[AutomaticDisposeImpl]\npartial class UserDefinedDisposeImplSample : IDisposable, IAsyncDisposable\n{\n [ManagedObjectDisposeMethod]\n void ManagedObjectDisposeMethod() { } // \u81ea\u52d5\u5b9f\u88c5\u306eDispose()\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\u30e1\u30f3\u30d0\u306e\u81ea\u52d5\u7834\u68c4\u4ee5\u5916\u306e\u30e6\u30fc\u30b6\u72ec\u81ea\u306e\u51e6\u7406\u306f\u3053\u3053\u3067\u5b9f\u88c5\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002\n\n [ManagedObjectAsyncDisposeMethod]\n ValueTask ManagedObjectDisposeMethodAsync() => default; // \u81ea\u52d5\u5b9f\u88c5\u306eDisposeAsync()\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\u30e1\u30f3\u30d0\u306e\u81ea\u52d5\u7834\u68c4\u4ee5\u5916\u306e\u30e6\u30fc\u30b6\u72ec\u81ea\u306e\u51e6\u7406\u306f\u3053\u3053\u3067\u5b9f\u88c5\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002\n}\n")),(0,s.kt)("p",null,(0,s.kt)("inlineCode",{parentName:"p"},"[ManagedObjectDisposeMethod]"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u306f\u623b\u308a\u5024\u304c",(0,s.kt)("inlineCode",{parentName:"p"},"void"),"\u304b\u3064\u5f15\u6570\u306e\u5b58\u5728\u3057\u306a\u3044\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u30e1\u30bd\u30c3\u30c9\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002"),(0,s.kt)("p",null,(0,s.kt)("inlineCode",{parentName:"p"},"[ManagedObjectAsyncDisposeMethod]"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3059\u308b\u30e1\u30bd\u30c3\u30c9\u306f\u623b\u308a\u5024\u304c",(0,s.kt)("inlineCode",{parentName:"p"},"ValueTask"),"\u307e\u305f\u306f",(0,s.kt)("inlineCode",{parentName:"p"},"Task"),"\u304b\u3064\u5f15\u6570\u306e\u5b58\u5728\u3057\u306a\u3044\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u30e1\u30bd\u30c3\u30c9\u3067\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002"),(0,s.kt)("p",null,"\u3069\u3061\u3089\u306e\u5834\u5408\u3082\u3001\u4e00\u3064\u306e\u30af\u30e9\u30b9\u5185\u3067\u540c\u3058\u5c5e\u6027\u3092\u8907\u6570\u306e\u30e1\u30bd\u30c3\u30c9\u306b\u4ed8\u4e0e\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093\u3002"),(0,s.kt)("p",null,"\u2139 \u3053\u306e\u6a5f\u80fd\u306e\u4ed5\u69d8\u3068\u3057\u3066\u3001\u81ea\u52d5\u5b9f\u88c5\u30b3\u30fc\u30c9\u304c\u5b9f\u884c\u3059\u308b\u7834\u68c4\u306f\u540c\u671f\u7684\u306a\u7834\u68c4\u3068\u975e\u540c\u671f\u306a\u7834\u68c4\u3092\u542b\u3081\u3066\u6700\u5927\uff11\u56de\u306e\u307f\u3067\u3042\u308b\u3053\u3068\u306b\u3054\u6ce8\u610f\u4e0b\u3055\u3044\u3002"),(0,s.kt)("p",null,"\u4f8b\u3048\u3070\u3001\u81ea\u52d5\u5b9f\u88c5\u3057\u305f\u30af\u30e9\u30b9\u306e\u30e1\u30bd\u30c3\u30c9\u304c"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-cs"},"var sample = new UserDefinedDisposeImplSample();\nsample.Dipose(); // \u3053\u306e\u7834\u68c4\u306e\u307f\u304c\u6709\u52b9\u3002\u4ee5\u964d\u306e\u91cd\u8907\u547c\u3073\u51fa\u3057\u306f\u7121\u8996\u3055\u308c\u308b\u3002\nawait sample.DiposeAsync();\nsample.Dipose();\n")),(0,s.kt)("p",null,"\u306e\u3088\u3046\u306b\u547c\u3073\u51fa\u3055\u308c\u305f\u5834\u5408\u3001\u30e6\u30fc\u30b6\u306e\u30e1\u30bd\u30c3\u30c9\u304c\u547c\u3070\u308c\u308b\u306e\u306f\u6700\u521d\u306e",(0,s.kt)("inlineCode",{parentName:"p"},"sample.Dispose()"),"\u306e\u30bf\u30a4\u30df\u30f3\u30b0\u3067",(0,s.kt)("inlineCode",{parentName:"p"},"ManagedObjectDisposeMethod()"),"\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\uff11\u56de\u306e\u307f\u3067\u3059\u3002\u305d\u306e\u3042\u3068\u306b\u7d9a\u304f",(0,s.kt)("inlineCode",{parentName:"p"},"await sample.DiposeAsync()"),"\u3068\uff12\u56de\u76ee\u306e",(0,s.kt)("inlineCode",{parentName:"p"},"sample.Dispose()"),"\u306f\u5b8c\u5168\u306b\u7121\u8996\u3055\u308c\u307e\u3059\u3002\u4e0a\u8a18\u306e\u4f8b\u3067",(0,s.kt)("inlineCode",{parentName:"p"},"ManagedObjectDisposeMethodAsync()"),"\u304c\u547c\u3073\u51fa\u3055\u308c\u308b\u3053\u3068\u306f\u3042\u308a\u307e\u305b\u3093\u3002"),(0,s.kt)("p",null,"\u3082\u3057\u3001\u6700\u521d\u306e\u7834\u68c4\u304c",(0,s.kt)("inlineCode",{parentName:"p"},"await sample.DiposeAsync()"),"\u3067\u884c\u308f\u308c\u305f\u5834\u5408\u306f\u3001",(0,s.kt)("inlineCode",{parentName:"p"},"ManagedObjectDisposeMethodAsync()"),"\u304c\uff11\u56de\u306e\u307f\u547c\u3073\u51fa\u3055\u308c\u3001\u305d\u308c\u4ee5\u964d\u306f\u540c\u69d8\u306b\u7121\u8996\u3055\u308c\u307e\u3059\u3002"),(0,s.kt)("p",null,"\u26a0 ",(0,s.kt)("strong",{parentName:"p"},"\u81ea\u52d5\u5b9f\u88c5\u306e\u30e1\u30f3\u30d0\u7834\u68c4\u3068\u72ec\u81ea\u306e\u51e6\u7406\u306e\u5b9f\u884c\u9806\u306f\u4e0d\u78ba\u5b9a\u3067\u3059"),"\u3002\u5c06\u6765\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u3067\u306f\u9806\u756a\u304c\u5165\u308c\u66ff\u308f\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u306e\u3067\u3001\u73fe\u5728\u306e\u81ea\u52d5\u5b9f\u88c5\u306e\u9806\u756a\u306b\u4f9d\u5b58\u3057\u306a\u3044\u3088\u3046\u306b\u6ce8\u610f\u3057\u3066\u4e0b\u3055\u3044\u3002"),(0,s.kt)("h4",{id:"\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4"},"\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4"),(0,s.kt)("p",null,(0,s.kt)("inlineCode",{parentName:"p"},"IDisposable.Dipose()"),"\u306a\u3069\u3067\u81ea\u52d5\u7834\u68c4\u3067\u304d\u308b\u30e1\u30f3\u30d0\u306e\u307b\u304b\u306b\u3001",(0,s.kt)("inlineCode",{parentName:"p"},"System.IntPtr"),"\u7b49\u3092\u5229\u7528\u3057\u3066\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u30cf\u30f3\u30c9\u30eb\u306a\u3069\u3092\u4fdd\u6301\u3057\u3066\u3044\u308b\u5834\u5408\u306f",(0,s.kt)("inlineCode",{parentName:"p"},"[UnmanagedResourceReleaseMethod]"),"\u5c5e\u6027\u3092\u5229\u7528\u3059\u308b\u3053\u3068\u3067\u3001\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4\u3092\u884c\u3046\u30e1\u30bd\u30c3\u30c9\u3092\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u308b\u30b3\u30fc\u30c9\u304b\u3089\u547c\u3073\u51fa\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-cs"},"[AutomaticDisposeImpl]\npartial class UserDefinedFinalizeImplSample : IDisposable, IAsyncDisposable\n{\n [UnmanagedResourceReleaseMethod]\n void UnmanagedResourceReleaseMethod() { } // \u81ea\u52d5\u5b9f\u88c5\u306eDispose(),DiposeAsync(),~UserDefinedFinalizeImplSample()\u304b\u3089\u547c\u3073\u51fa\u3055\u308c\u308b\u3002\u30a2\u30f3\u30de\u30cd\u30fc\u30b8\u30c9\u30ea\u30bd\u30fc\u30b9\u306e\u7834\u68c4\u306f\u3053\u3053\u3067\u5b9f\u88c5\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002\n}\n")),(0,s.kt)("p",null,"\u2139 ",(0,s.kt)("inlineCode",{parentName:"p"},"[UnmanagedResourceReleaseMethod]"),"\u5c5e\u6027\u3092\u4f7f\u7528\u3057\u305f\u30af\u30e9\u30b9\u306f\u30d5\u30a1\u30a4\u30ca\u30e9\u30a4\u30b6\u3082\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u307e\u3059\u3002\u305d\u306e\u305f\u3081\u3001\u660e\u793a\u7684\u306b",(0,s.kt)("inlineCode",{parentName:"p"},"Dispose()"),"\u307e\u305f\u306f",(0,s.kt)("inlineCode",{parentName:"p"},"DisposeAsync()"),"\u306e\u547c\u3073\u51fa\u3057\u304c\u3055\u308c\u305a\u306b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u30ac\u30fc\u30d9\u30b8\u30b3\u30ec\u30af\u30c8\u3055\u308c\u305f\u5834\u5408\u3082\u30ac\u30fc\u30d9\u30b8\u30b3\u30ec\u30af\u30bf\u306e\u30d5\u30a1\u30a4\u30ca\u30e9\u30a4\u30ba\u306e\u30bf\u30a4\u30df\u30f3\u30b0\u3067\u81ea\u52d5\u5b9f\u88c5\u3055\u308c\u305f\u30d5\u30a1\u30a4\u30ca\u30e9\u30a4\u30b6\u3092\u7d4c\u7531\u3057\u3066",(0,s.kt)("inlineCode",{parentName:"p"},"[UnmanagedResourceReleaseMethod]"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3057\u305f\u30e1\u30bd\u30c3\u30c9\u304c\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002"),(0,s.kt)("p",null,"\u2139 ",(0,s.kt)("inlineCode",{parentName:"p"},"[ManagedObjectDisposeMethod]"),"\u5c5e\u6027\u3067\u7834\u68c4\u3092\u81ea\u52d5\u5b9f\u88c5\u3057\u305f\u30af\u30e9\u30b9\u306f",(0,s.kt)("inlineCode",{parentName:"p"},"IDisposable"),"\u3068",(0,s.kt)("inlineCode",{parentName:"p"},"IAsyncDisposable"),"\u3092\u76f4\u63a5\u5b9f\u88c5\u3057\u3066\u3044\u308b",(0,s.kt)("inlineCode",{parentName:"p"},"seald"),"\u30af\u30e9\u30b9\u3067\u3042\u308b\u304b\u3001\u7d99\u627f\u95a2\u4fc2\u306b\u3042\u308b\u89aa\u30af\u30e9\u30b9\u30fb\u5b50\u30af\u30e9\u30b9\u304c",(0,s.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/ja-jp/dotnet/standard/garbage-collection/implementing-dispose#implement-the-dispose-pattern"},"\u540c\u671f"),"\u304a\u3088\u3073",(0,s.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/ja-jp/dotnet/standard/garbage-collection/implementing-disposeasync#implement-the-async-dispose-pattern"},"\u975e\u540c\u671f"),"\u306e\u7834\u68c4\u30d1\u30bf\u30fc\u30f3\u3092\u6b63\u3057\u304f\u5b9f\u88c5\u3057\u3066\u3044\u308b\u9650\u308a\u3001",(0,s.kt)("inlineCode",{parentName:"p"},"[UnmanagedResourceReleaseMethod]"),"\u5c5e\u6027\u3092\u4ed8\u4e0e\u3057\u305f\u30e1\u30bd\u30c3\u30c9\u306f\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u751f\u6210\u3055\u308c\u3066\u304b\u3089\u6d88\u6ec5\u3059\u308b\u307e\u3067\u306b\u3001\u305d\u306e\u9593\u306e\u660e\u793a\u7684\u306a\u7834\u68c4\u306e\u6709\u7121\u3084\u56de\u6570\u306b\u95a2\u308f\u3089\u305a\u3001\u81ea\u52d5\u5b9f\u88c5\u5074\u304b\u3089\u306e\u547c\u3073\u51fa\u3057\u56de\u6570\u304c\u5fc5\u305a\uff11\u56de\u306a\u308b\u3053\u3068\u304c\u4fdd\u8a3c\u3055\u308c\u307e\u3059\u3002"),(0,s.kt)("h2",{id:"automaticnotifypropertychangedimpl"},"AutomaticNotifyPropertyChangedImpl"),(0,s.kt)("p",null,"TODO"),(0,s.kt)("h2",{id:"cancellationanalyzer"},"CancellationAnalyzer"),(0,s.kt)("p",null,"TODO"),(0,s.kt)("h2",{id:"cs0436relaxation"},"Cs0436Relaxation"),(0,s.kt)("p",null,"\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u751f\u6210\u3057\u305f\u30af\u30e9\u30b9\u7b49\u3092\u542b\u3080\u30a2\u30bb\u30f3\u30d6\u30ea\u540c\u58eb\u3067InternalsVisbleTo\u5c5e\u6027\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u306b\u767a\u751f\u3059\u308b\u5834\u5408\u304c\u3042\u308b",(0,s.kt)("a",{parentName:"p",href:"https://docs.microsoft.com/dotnet/csharp/misc/cs0436"},"CS0436"),"\u8b66\u544a\u3092\u9069\u5207\u306b\u7de9\u548c\u3059\u308b\u305f\u3081\u306e\u30a2\u30ca\u30e9\u30a4\u30b6\u3067\u3059\u3002"),(0,s.kt)("h3",{id:"introduction-1"},"Introduction"),(0,s.kt)("p",null,"\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3092\u5229\u7528\u3059\u308b\u30a2\u30bb\u30f3\u30d6\u30ea\u540c\u58eb\u306e\u53c2\u7167\u306bInternalsVisbleTo\u5c5e\u6027\u304c\u9069\u7528\u3055\u308c\u3066\u3044\u308b\u3068\u3001InternalsVisbleTo\u306b\u6307\u5b9a\u3055\u308c\u305f\u30a2\u30bb\u30f3\u30d6\u30ea\u304b\u3089\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u751f\u6210\u3057\u305f\u5c5e\u6027\u306a\u3069\u3092\u5229\u7528\u3059\u308b\u7b87\u6240\u3067\u3001CS0436\u8b66\u544a\u304c\u767a\u751f\u3059\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002"),(0,s.kt)("p",null,"\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3092\u5229\u7528\u3059\u308b\u5834\u5408\u3001\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u5c5e\u6027\u306a\u3069\u3092internal\u306a\u30af\u30e9\u30b9\u3068\u3057\u3066\u30bd\u30fc\u30b9\u751f\u6210\u3057\u3001\u30e6\u30fc\u30b6\u30b3\u30fc\u30c9\u5185\u3067\u305d\u308c\u3089\u3092\u30bd\u30fc\u30b9\u751f\u6210\u306b\u95a2\u3059\u308b\u30de\u30fc\u30af\u3068\u3057\u3066\u4f7f\u7528\u3059\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002\u901a\u5e38\u3001internal\u306a\u30af\u30e9\u30b9\u306f\u7570\u306a\u308b\u30a2\u30bb\u30f3\u30d6\u30ea\u3092\u8de8\u3044\u3067\u76f4\u63a5\u53c2\u7167\u3059\u308b\u3053\u3068\u304c\u51fa\u6765\u306a\u3044\u305f\u3081\u554f\u984c\u3068\u306a\u308a\u307e\u305b\u3093\u304c\u3001InternalsVisbleTo\u5c5e\u6027\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u306finternal\u30af\u30e9\u30b9\u3082\u53c2\u7167\u3067\u304d\u3066\u3057\u307e\u3046\u305f\u3081\u3001\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u751f\u6210\u3057\u305f\u578b\u304c\u3001\u81ea\u5206\u81ea\u8eab\u3068\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306e\u4e21\u65b9\u306b\u5168\u304f\u540c\u4e00\u306e\u540d\u524d\u7a7a\u9593\u3068\u8b58\u5225\u5b50\u3067\u5b58\u5728\u3059\u308b\u72b6\u614b\u3068\u306a\u3063\u3066\u3057\u307e\u3044\u3001\u4ee5\u4e0b\u306e\u4f8b\u306e\u4e2d\u306b\u3042\u308b\u3088\u3046\u306a\u5f62\u3067\u7af6\u5408(CS0436)\u304c\u767a\u751f\u3057\u307e\u3059\u3002"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-cs"},"// \u3053\u306e\u4f8b\u3067\u3001A.dll,B.dll,C.dll\u30a2\u30bb\u30f3\u30d6\u30ea\u306b\u5bfe\u3057\u3066\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u304c\u6697\u9ed9\u7684\u306b\u751f\u6210\u3057\u3066\u3044\u308b\u5c5e\u6027\u30af\u30e9\u30b9\n\nnamespace SourceGen;\n\ninternal ExampleMarkerAttribute : Attribute\n{}\n")),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-cs"},'// A.dll\n\n[assembly: InternalsVisibleTo("C")]\n\nnamespace A;\n\n// A.dll\u3067\u306f\u81ea\u5206\u81ea\u8eab\u306e\u4e2d\u3067\u751f\u6210\u3055\u308c\u3066\u3044\u308b\u30bd\u30fc\u30b9\u304c\n// \u552f\u4e00\u306eExampleMarker\u5c5e\u6027\u306e\u5b9a\u7fa9\u3067\u3042\u308b\u306e\u3067\u3001\n// ExampleMarker\u304c\u7af6\u5408\u3059\u308b\u3053\u3068\u306f\u306a\u3044\n[SourceGen.ExampleMarker]\nclass ClassA {}\n')),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-cs"},"// B.dll (A.dll\u3092\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306b\u542b\u3080)\n\nnamespace B;\n\n// B.dll\u3067\u306f\u3001\u81ea\u5206\u81ea\u8eab\u3068\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306eA.dll\u3067\n// ExampleMarker\u306e\u5b9a\u7fa9\u304c\u91cd\u8907\u3057\u3066\u3044\u308b\u304c\u3001\n// ExampleMarker\u304cinternal\u3067B.dll\u304b\u3089\u30a2\u30af\u30bb\u30b9\u304c\u51fa\u6765\u306a\u3044\u305f\u3081\u3001\n// A.dll\u3068B.dll\u306eExampleMarker\u306f\u7af6\u5408\u3057\u306a\u3044\n[SourceGen.ExampleMarker]\nclass ClassB {}\n")),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-cs"},"// C.dll (A.dll\u3092\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306b\u542b\u3080)\n\nnamespace C;\n\n// C.dll\u3067\u306f\u3001\u81ea\u5206\u81ea\u8eab\u3068\u53c2\u7167\u30a2\u30bb\u30f3\u30d6\u30ea\u306eA.dll\u3067\n// ExampleMarker\u306e\u5b9a\u7fa9\u304c\u91cd\u8907\u3057\u3066\u3044\u308b\u4e0a\u306b\u3001\n// C.dll\u304b\u3089A.dll\u306einternal\u306a\u578b\u3084\u30e1\u30f3\u30d0\u306b\u3082\u30a2\u30af\u30bb\u30b9\u304c\u51fa\u6765\u3066\u3057\u307e\u3046\u305f\u3081\u3001\n// A.dll\u3068C.dll\u306eExampleMarker\u304c\u7af6\u5408\u3059\u308b\n[SourceGen.ExampleMarker] // CS0436\u304c\u767a\u751f\u3059\u308b\nclass ClassC {}\n")),(0,s.kt)("p",null,"Cs0436Relaxation\u306f\u3001CS0436\u3092\u4e00\u65e6\u6291\u6b62(suggestion\u5316)\u3059\u308b\u4ee3\u308f\u308a\u306b\u3001Cs0436Relaxationga\u304c\u4e0a\u8a18\u306e\u69d8\u306a\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u90fd\u5408\u4ee5\u5916\u3067\u767a\u751f\u3059\u308b\u6291\u6b62\u3059\u308b\u5fc5\u8981\u306e\u306a\u304b\u3063\u305fCS0436\u3092\u5225\u306eID(RX_CS0436_1)\u306ewarning\u3068\u3057\u3066\u5831\u544a\u3059\u308b\u3053\u3068\u3067\u3001\u5b9f\u8cea\u7684\u306b\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306b\u95a2\u308f\u308bCS0436\u3060\u3051\u3092\u6291\u6b62\u3059\u308b\u3053\u3068\u304c\u51fa\u6765\u307e\u3059\u3002"),(0,s.kt)("h3",{id:"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb-1"},"\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb"),(0,s.kt)("p",null,"\u26a0\ufe0f VisualStudio\u3092\u5229\u7528\u3059\u308b\u5834\u5408\u306f2022\u306e\u6700\u65b0\u7248\u304c\u5fc5\u8981\u3067\u3059\u3002"),(0,s.kt)("p",null,"Cs0436Relaxation\u3092\u5229\u7528\u3059\u308b\u305f\u3081\u306b\u306fCs0436Relaxation\u81ea\u4f53\u3092\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306ePackageReference\u306b\u52a0\u3048\u308b\u3060\u3051\u3067\u306a\u304f\u3001\u751f\u306eCS0436\u3092warning\u304b\u3089suggestion\u306b\u5909\u66f4\u3059\u308beditorconfig\u306e\u8a2d\u5b9a\u3082\u5fc5\u8981\u306b\u306a\u308a\u307e\u3059\u3002\u307e\u305f\u3001Cs0436Relaxation\u304c\u6a5f\u80fd\u3057\u3066\u3044\u306a\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067editorconfig\u306e\u8a2d\u5b9a\u306e\u65b9\u3060\u3051\u304c\u6709\u52b9\u3068\u306a\u3063\u3066\u3057\u307e\u3046\u3068\u305d\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u306f\u5358\u7d14\u306bCS0436\u304c\u8b66\u544a\u5bfe\u8c61\u304b\u3089\u5916\u308c\u305f\u307e\u307e\u3068\u306a\u3063\u3066\u3057\u307e\u3046\u306e\u3067\u3001\u3069\u3061\u3089\u306e\u8a2d\u5b9a\u3082\u5168\u3066\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u5171\u901a\u5316\u3055\u308c\u308b\u3088\u3046\u306b\u8a2d\u5b9a\u3059\u308b\u3053\u3068\u3092\u304a\u52e7\u3081\u3057\u307e\u3059\u3002"),(0,s.kt)("p",null,"\u4ee5\u4e0b\u306e\u624b\u9806\u306f\u3001\u5168\u3066\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u5171\u901a\u3067\u8a2d\u5b9a\u3059\u308b\u524d\u63d0\u306e\u3082\u306e\u3067\u3059\u3002"),(0,s.kt)("h4",{id:"\u624b\u9806\uff11-directorybuildprops\u306e\u914d\u7f6e\u7de8\u96c6"},"\u624b\u9806\uff11 Directory.Build.props\u306e\u914d\u7f6e(\u7de8\u96c6)"),(0,s.kt)("p",null,"\u4ee5\u4e0b\u306eDirectory.Build.props\u3092\u5168\u3066\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u542b\u3080\u30eb\u30fc\u30c8\u30d5\u30a9\u30eb\u30c0\u306b\u914d\u7f6e\u3057\u307e\u3059\u3002"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-xml"},'\n \n \n \n\n')),(0,s.kt)("p",null,"\u65e2\u306bDirectory.Build.props\u304c\u5b58\u5728\u3057\u3066\u3044\u308b\u5834\u5408\u306f\u3001\u65e2\u5b58\u306eDirectory.Build.props\u306e\u4e2d\u306b\u4e0a\u8a18\u306ePackageReference\u3092\u52a0\u3048\u307e\u3059\u3002"),(0,s.kt)("p",null,"\u6700\u65b0\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u306f",(0,s.kt)("a",{parentName:"p",href:"https://www.nuget.org/packages/Benutomo.Cs0436Relaxation/"},"NuGet"),"\u3092\u3054\u53c2\u7167\u304f\u3060\u3055\u3044\u3002"),(0,s.kt)("h5",{id:"\u53c2\u8003"},"\u53c2\u8003"),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("a",{parentName:"li",href:"https://docs.microsoft.com/visualstudio/msbuild/customize-your-build"},"\u30d3\u30eb\u30c9\u306e\u30ab\u30b9\u30bf\u30de\u30a4\u30ba"))),(0,s.kt)("h4",{id:"\u624b\u9806\uff12-editorconfig\u306e\u914d\u7f6e\u7de8\u96c6"},"\u624b\u9806\uff12 editorconfig\u306e\u914d\u7f6e(\u7de8\u96c6)"),(0,s.kt)("p",null,"\u4ee5\u4e0b\u306e.editorconfig\u3092\u5168\u3066\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u542b\u3080\u30eb\u30fc\u30c8\u30d5\u30a9\u30eb\u30c0\u306b\u914d\u7f6e\u3057\u307e\u3059\u3002"),(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-conf"},"# CS0436(\u578b\u304c\u30a4\u30f3\u30dd\u30fc\u30c8\u3055\u308c\u305f\u578b\u3068\u7af6\u5408\u3057\u3066\u3044\u307e\u3059)\u3092\u6291\u6b62\u3002\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u8d77\u56e0\u4ee5\u5916\u306eCS0436\u306fCs0436Relaxation\u304cRX_CS0436_1\u3068\u3057\u3066warning\u3002\ndotnet_diagnostic.CS0436.severity = suggestion\n")),(0,s.kt)("p",null,"\u65e2\u5b58\u306e.editorconfig\u304c\u65e2\u306b\u5b58\u5728\u3059\u308b\u5834\u5408\u306f\u305d\u306e\u4e2d\u306b\u4ed8\u3051\u52a0\u3048\u307e\u3059\u3002Cs0436Relaxation\u304c\u50cd\u304f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u5bfe\u3057\u3066CS0436\u306e\u91cd\u8981\u5ea6\u3092warning\u304b\u3089suggestion\u307e\u3067\u843d\u3068\u3057\u307e\u3059\u3002"),(0,s.kt)("h5",{id:"\u53c2\u8003-1"},"\u53c2\u8003"),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("a",{parentName:"li",href:"https://editorconfig.org/"},"EditorConfig.org")),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("a",{parentName:"li",href:"https://docs.microsoft.com/visualstudio/ide/create-portable-custom-editor-options"},"EditorConfig \u3067\u79fb\u690d\u53ef\u80fd\u306a\u30ab\u30b9\u30bf\u30e0 \u30a8\u30c7\u30a3\u30bf\u30fc\u8a2d\u5b9a\u3092\u4f5c\u6210\u3059\u308b"))),(0,s.kt)("h3",{id:"cs0436relaxation\u304c\u6b63\u3057\u304f\u6a5f\u80fd\u3057\u3066\u3044\u308b\u5834\u5408\u306e\u8b66\u544a\u306b\u3064\u3044\u3066"},"Cs0436Relaxation\u304c\u6b63\u3057\u304f\u6a5f\u80fd\u3057\u3066\u3044\u308b\u5834\u5408\u306e\u8b66\u544a\u306b\u3064\u3044\u3066"),(0,s.kt)("p",null,"Cs0436Relaxation\u304c\u6a5f\u80fd\u3057\u3066\u3044\u308b\u74b0\u5883\u3067\u306f\u4ee5\u4e0b\u306e\u8b66\u544a\u304c\u767a\u751f\u3057\u307e\u3059\u3002\u4e0b\u8a18\u306e\u901a\u308a\u3001\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u8d77\u56e0\u3067\u306a\u3044CS0436\u306e\u307f\u304c\u3001RX_CS0436_1\u3068\u3057\u3066\u5831\u544a\u3055\u308c\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002"),(0,s.kt)("table",null,(0,s.kt)("thead",{parentName:"table"},(0,s.kt)("tr",{parentName:"thead"},(0,s.kt)("th",{parentName:"tr",align:null},"ID"),(0,s.kt)("th",{parentName:"tr",align:null},"\u6982\u8981"))),(0,s.kt)("tbody",{parentName:"table"},(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"RX_CS0436_0"),(0,s.kt)("td",{parentName:"tr",align:null},"Cs0436Relaxation\u304c\u6a5f\u80fd\u3057\u3066\u3044\u308b\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30b3\u30f3\u30d1\u30a4\u30eb\u3067CS0436\u304cwarning\u3068\u3057\u3066\u767a\u751f\u3057\u305f\u5834\u5408\u306b\u767a\u751f\u3059\u308bwarning\u3067\u3059\u3002Cs0436Relaxation\u3092\u53d6\u308a\u9664\u304f\u304b.editroconfig\u3092\u7de8\u96c6\u3057\u3066CS0436\u3092suggestion\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002")),(0,s.kt)("tr",{parentName:"tbody"},(0,s.kt)("td",{parentName:"tr",align:null},"RX_CS0436_1"),(0,s.kt)("td",{parentName:"tr",align:null},"\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306b\u8d77\u56e0\u3059\u308b\u5b9a\u7fa9\u4ee5\u5916\u306b\u5bfe\u3057\u3066CS0436\u304c\u767a\u751f\u3057\u305f\u3053\u3068\u3092warning\u3067\u77e5\u3089\u305b\u307e\u3059\u3002\u751f\u306eCS0436\u304c\u767a\u751f\u3057\u305f\u5834\u5408\u3068\u540c\u69d8\u306e\u5bfe\u51e6\u304c\u5fc5\u8981\u3067\u3059\u3002")))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/935f2afb.75f3a023.js b/docs/v2/assets/js/935f2afb.75f3a023.js new file mode 100644 index 000000000..c53bfdfa6 --- /dev/null +++ b/docs/v2/assets/js/935f2afb.75f3a023.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Introduction","href":"/RSCG_Examples/v2/docs/intro","docId":"intro"},{"type":"link","label":"About","href":"/RSCG_Examples/v2/docs/about","docId":"about"},{"type":"link","label":"List of RSCG","href":"/RSCG_Examples/v2/docs/List-of-RSCG","docId":"indexRSCG"},{"type":"category","label":"RSCG Examples","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"01 - ThisAssembly","href":"/RSCG_Examples/v2/docs/ThisAssembly","docId":"RSCG-Examples/ThisAssembly"},{"type":"link","label":"02 - RSCG_TimeBombComment","href":"/RSCG_Examples/v2/docs/RSCG_TimeBombComment","docId":"RSCG-Examples/RSCG_TimeBombComment"},{"type":"link","label":"03 - System.Text.Json","href":"/RSCG_Examples/v2/docs/System.Text.Json","docId":"RSCG-Examples/System.Text.Json"},{"type":"link","label":"04 - RSCG_Utils","href":"/RSCG_Examples/v2/docs/RSCG_Utils","docId":"RSCG-Examples/RSCG_Utils"},{"type":"link","label":"05 - System.Text.RegularExpressions","href":"/RSCG_Examples/v2/docs/System.Text.RegularExpressions","docId":"RSCG-Examples/System.Text.RegularExpressions"},{"type":"link","label":"06 - SkinnyControllersCommon","href":"/RSCG_Examples/v2/docs/SkinnyControllersCommon","docId":"RSCG-Examples/SkinnyControllersCommon"},{"type":"link","label":"07 - Microsoft.Extensions.Logging","href":"/RSCG_Examples/v2/docs/Microsoft.Extensions.Logging","docId":"RSCG-Examples/Microsoft.Extensions.Logging"},{"type":"link","label":"08 - RSCG_Static","href":"/RSCG_Examples/v2/docs/RSCG_Static","docId":"RSCG-Examples/RSCG_Static"},{"type":"link","label":"09 - CommunityToolkit.Mvvm","href":"/RSCG_Examples/v2/docs/CommunityToolkit.Mvvm","docId":"RSCG-Examples/CommunityToolkit.Mvvm"},{"type":"link","label":"10 - RSCG_AMS","href":"/RSCG_Examples/v2/docs/RSCG_AMS","docId":"RSCG-Examples/RSCG_AMS"},{"type":"link","label":"11 - AutoDeconstruct","href":"/RSCG_Examples/v2/docs/AutoDeconstruct","docId":"RSCG-Examples/AutoDeconstruct"},{"type":"link","label":"12 - System.Runtime.InteropServices","href":"/RSCG_Examples/v2/docs/System.Runtime.InteropServices","docId":"RSCG-Examples/System.Runtime.InteropServices"},{"type":"link","label":"13 - QuickConstructor","href":"/RSCG_Examples/v2/docs/QuickConstructor","docId":"RSCG-Examples/QuickConstructor"},{"type":"link","label":"14 - AutoCtor","href":"/RSCG_Examples/v2/docs/AutoCtor","docId":"RSCG-Examples/AutoCtor"},{"type":"link","label":"15 - dunet","href":"/RSCG_Examples/v2/docs/dunet","docId":"RSCG-Examples/dunet"},{"type":"link","label":"16 - Vogen","href":"/RSCG_Examples/v2/docs/Vogen","docId":"RSCG-Examples/Vogen"},{"type":"link","label":"17 - RazorBlade","href":"/RSCG_Examples/v2/docs/RazorBlade","docId":"RSCG-Examples/RazorBlade"},{"type":"link","label":"18 - PartiallyApplied","href":"/RSCG_Examples/v2/docs/PartiallyApplied","docId":"RSCG-Examples/PartiallyApplied"},{"type":"link","label":"19 - ApparatusAOT","href":"/RSCG_Examples/v2/docs/ApparatusAOT","docId":"RSCG-Examples/ApparatusAOT"},{"type":"link","label":"20 - NetEscapades.EnumGenerators","href":"/RSCG_Examples/v2/docs/NetEscapades.EnumGenerators","docId":"RSCG-Examples/NetEscapades.EnumGenerators"},{"type":"link","label":"21 - Microsoft.Interop.JavaScript.JSImportGenerator","href":"/RSCG_Examples/v2/docs/Microsoft.Interop.JavaScript.JSImportGenerator","docId":"RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator"},{"type":"link","label":"22 - RSCG_FunctionsWithDI","href":"/RSCG_Examples/v2/docs/RSCG_FunctionsWithDI","docId":"RSCG-Examples/RSCG_FunctionsWithDI"},{"type":"link","label":"23 - Microsoft.NET.Sdk.Razor.SourceGenerators","href":"/RSCG_Examples/v2/docs/Microsoft.NET.Sdk.Razor.SourceGenerators","docId":"RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators"},{"type":"link","label":"24 - Rocks","href":"/RSCG_Examples/v2/docs/Rocks","docId":"RSCG-Examples/Rocks"},{"type":"link","label":"25 - mapperly","href":"/RSCG_Examples/v2/docs/mapperly","docId":"RSCG-Examples/mapperly"},{"type":"link","label":"26 - Podimo.ConstEmbed","href":"/RSCG_Examples/v2/docs/Podimo.ConstEmbed","docId":"RSCG-Examples/Podimo.ConstEmbed"},{"type":"link","label":"27 - EmbedResourceCSharp","href":"/RSCG_Examples/v2/docs/EmbedResourceCSharp","docId":"RSCG-Examples/EmbedResourceCSharp"},{"type":"link","label":"28 - Lombok.NET","href":"/RSCG_Examples/v2/docs/Lombok.NET","docId":"RSCG-Examples/Lombok.NET"},{"type":"link","label":"29 - Gedaq","href":"/RSCG_Examples/v2/docs/Gedaq","docId":"RSCG-Examples/Gedaq"},{"type":"link","label":"30 - Refit","href":"/RSCG_Examples/v2/docs/Refit","docId":"RSCG-Examples/Refit"},{"type":"link","label":"31 - MorrisMoxy","href":"/RSCG_Examples/v2/docs/MorrisMoxy","docId":"RSCG-Examples/MorrisMoxy"},{"type":"link","label":"32 - Mediator","href":"/RSCG_Examples/v2/docs/Mediator","docId":"RSCG-Examples/Mediator"},{"type":"link","label":"33 - Matryoshki","href":"/RSCG_Examples/v2/docs/Matryoshki","docId":"RSCG-Examples/Matryoshki"},{"type":"link","label":"34 - MemoryPack","href":"/RSCG_Examples/v2/docs/MemoryPack","docId":"RSCG-Examples/MemoryPack"},{"type":"link","label":"35 - DeeDee","href":"/RSCG_Examples/v2/docs/DeeDee","docId":"RSCG-Examples/DeeDee"},{"type":"link","label":"36 - ProxyGen","href":"/RSCG_Examples/v2/docs/ProxyGen","docId":"RSCG-Examples/ProxyGen"},{"type":"link","label":"37 - AutoRegisterInject","href":"/RSCG_Examples/v2/docs/AutoRegisterInject","docId":"RSCG-Examples/AutoRegisterInject"},{"type":"link","label":"38 - EnumClass","href":"/RSCG_Examples/v2/docs/EnumClass","docId":"RSCG-Examples/EnumClass"},{"type":"link","label":"39 - Breezy","href":"/RSCG_Examples/v2/docs/Breezy","docId":"RSCG-Examples/Breezy"},{"type":"link","label":"40 - FastGenericNew","href":"/RSCG_Examples/v2/docs/FastGenericNew","docId":"RSCG-Examples/FastGenericNew"},{"type":"link","label":"41 - GeneratorEquals","href":"/RSCG_Examples/v2/docs/GeneratorEquals","docId":"RSCG-Examples/GeneratorEquals"},{"type":"link","label":"42 - Immutype","href":"/RSCG_Examples/v2/docs/Immutype","docId":"RSCG-Examples/Immutype"},{"type":"link","label":"43 - spreadcheetah","href":"/RSCG_Examples/v2/docs/spreadcheetah","docId":"RSCG-Examples/spreadcheetah"},{"type":"link","label":"44 - Zomp","href":"/RSCG_Examples/v2/docs/Zomp","docId":"RSCG-Examples/Zomp"},{"type":"link","label":"45 - BenutomoAutomaticDisposeImplSourceGenerator","href":"/RSCG_Examples/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator","docId":"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator"},{"type":"link","label":"AOT.Reflection is faster reflection powered via Source Generators","href":"/RSCG_Examples/v2/docs/RSCG-Examples/ApparatusAOT_readme","docId":"RSCG-Examples/ApparatusAOT_readme"},{"type":"link","label":"AutoCtor_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/AutoCtor_readme","docId":"RSCG-Examples/AutoCtor_readme"},{"type":"link","label":"AutoDeconstruct","href":"/RSCG_Examples/v2/docs/RSCG-Examples/AutoDeconstruct_readme","docId":"RSCG-Examples/AutoDeconstruct_readme"},{"type":"link","label":"AutoRegisterInject","href":"/RSCG_Examples/v2/docs/RSCG-Examples/AutoRegisterInject_readme","docId":"RSCG-Examples/AutoRegisterInject_readme"},{"type":"link","label":"RoslynComponents","href":"/RSCG_Examples/v2/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme","docId":"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme"},{"type":"link","label":"Breezy_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Breezy_readme","docId":"RSCG-Examples/Breezy_readme"},{"type":"link","label":"\ud83e\uddf0 .NET Community Toolkit","href":"/RSCG_Examples/v2/docs/RSCG-Examples/CommunityToolkit.Mvvm_readme","docId":"RSCG-Examples/CommunityToolkit.Mvvm_readme"},{"type":"link","label":"DeeDee","href":"/RSCG_Examples/v2/docs/RSCG-Examples/DeeDee_readme","docId":"RSCG-Examples/DeeDee_readme"},{"type":"link","label":"EmbedResourceCSharp","href":"/RSCG_Examples/v2/docs/RSCG-Examples/EmbedResourceCSharp_readme","docId":"RSCG-Examples/EmbedResourceCSharp_readme"},{"type":"link","label":"enum class Generator","href":"/RSCG_Examples/v2/docs/RSCG-Examples/EnumClass_readme","docId":"RSCG-Examples/EnumClass_readme"},{"type":"link","label":"FastGenericNew_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/FastGenericNew_readme","docId":"RSCG-Examples/FastGenericNew_readme"},{"type":"link","label":"Gedaq_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Gedaq_readme","docId":"RSCG-Examples/Gedaq_readme"},{"type":"link","label":"GeneratorEquals_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/GeneratorEquals_readme","docId":"RSCG-Examples/GeneratorEquals_readme"},{"type":"link","label":"Immutype","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Immutype_readme","docId":"RSCG-Examples/Immutype_readme"},{"type":"link","label":"Lombok.NET","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Lombok.NET_readme","docId":"RSCG-Examples/Lombok.NET_readme"},{"type":"link","label":"Matryoshki","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Matryoshki_readme","docId":"RSCG-Examples/Matryoshki_readme"},{"type":"link","label":"Mediator_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Mediator_readme","docId":"RSCG-Examples/Mediator_readme"},{"type":"link","label":"MemoryPack","href":"/RSCG_Examples/v2/docs/RSCG-Examples/MemoryPack_readme","docId":"RSCG-Examples/MemoryPack_readme"},{"type":"link","label":".NET Runtime","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.Extensions.Logging_readme","docId":"RSCG-Examples/Microsoft.Extensions.Logging_readme"},{"type":"link","label":"Microsoft.Interop.JavaScript.JSImportGenerator_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator_readme","docId":"RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator_readme"},{"type":"link","label":"Microsoft.NET.Sdk.Razor.SourceGenerators_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators_readme","docId":"RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators_readme"},{"type":"link","label":"Morris.Moxy","href":"/RSCG_Examples/v2/docs/RSCG-Examples/MorrisMoxy_readme","docId":"RSCG-Examples/MorrisMoxy_readme"},{"type":"link","label":"NetEscapades.EnumGenerators","href":"/RSCG_Examples/v2/docs/RSCG-Examples/NetEscapades.EnumGenerators_readme","docId":"RSCG-Examples/NetEscapades.EnumGenerators_readme"},{"type":"link","label":"PartiallyApplied","href":"/RSCG_Examples/v2/docs/RSCG-Examples/PartiallyApplied_readme","docId":"RSCG-Examples/PartiallyApplied_readme"},{"type":"link","label":"Podimo.ConstEmbed","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Podimo.ConstEmbed_readme","docId":"RSCG-Examples/Podimo.ConstEmbed_readme"},{"type":"link","label":"ProxyGen.NET [![Build status](https://ci.appveyor.com/api/projects/status/caw7qqtf5tbaa1fq/branch/master?svg=true)](https://ci.appveyor.com/project/Sholtee/proxygen/branch/master) ![AppVeyor tests](https://img.shields.io/appveyor/tests/sholtee/proxygen/master) [![Coverage Status](https://coveralls.io/repos/github/Sholtee/proxygen/badge.svg?branch=master)](https://coveralls.io/github/Sholtee/proxygen?branch=master) [![Nuget (with prereleases)](https://img.shields.io/nuget/vpre/proxygen.net)](https://www.nuget.org/packages/proxygen.net) ![GitHub last commit (branch)](https://img.shields.io/github/last-commit/sholtee/proxygen/master)","href":"/RSCG_Examples/v2/docs/RSCG-Examples/ProxyGen_readme","docId":"RSCG-Examples/ProxyGen_readme"},{"type":"link","label":"QuickConstructor","href":"/RSCG_Examples/v2/docs/RSCG-Examples/QuickConstructor_readme","docId":"RSCG-Examples/QuickConstructor_readme"},{"type":"link","label":"RSCG_AMS","href":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_AMS_readme","docId":"RSCG-Examples/RSCG_AMS_readme"},{"type":"link","label":"FunctionsDI","href":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_FunctionsWithDI_readme","docId":"RSCG-Examples/RSCG_FunctionsWithDI_readme"},{"type":"link","label":"RSCG_Static","href":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_Static_readme","docId":"RSCG-Examples/RSCG_Static_readme"},{"type":"link","label":"RSCG_TimeBombComment aka Time Bomb comment for technical debt","href":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_TimeBombComment_readme","docId":"RSCG-Examples/RSCG_TimeBombComment_readme"},{"type":"link","label":"RSCG_Utils","href":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_Utils_readme","docId":"RSCG-Examples/RSCG_Utils_readme"},{"type":"link","label":"RazorBlade","href":"/RSCG_Examples/v2/docs/RSCG-Examples/RazorBlade_readme","docId":"RSCG-Examples/RazorBlade_readme"},{"type":"link","label":"Refit_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Refit_readme","docId":"RSCG-Examples/Refit_readme"},{"type":"link","label":"Rocks","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Rocks_readme","docId":"RSCG-Examples/Rocks_readme"},{"type":"link","label":"SkinnyControllersGenerator","href":"/RSCG_Examples/v2/docs/RSCG-Examples/SkinnyControllersCommon_readme","docId":"RSCG-Examples/SkinnyControllersCommon_readme"},{"type":"link","label":"System.Runtime.InteropServices_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/System.Runtime.InteropServices_readme","docId":"RSCG-Examples/System.Runtime.InteropServices_readme"},{"type":"link","label":".NET Runtime","href":"/RSCG_Examples/v2/docs/RSCG-Examples/System.Text.Json_readme","docId":"RSCG-Examples/System.Text.Json_readme"},{"type":"link","label":".NET Runtime","href":"/RSCG_Examples/v2/docs/RSCG-Examples/System.Text.RegularExpressions_readme","docId":"RSCG-Examples/System.Text.RegularExpressions_readme"},{"type":"link","label":"ThisAssembly","href":"/RSCG_Examples/v2/docs/RSCG-Examples/ThisAssembly_readme","docId":"RSCG-Examples/ThisAssembly_readme"},{"type":"link","label":"Vogen_readme","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Vogen_readme","docId":"RSCG-Examples/Vogen_readme"},{"type":"link","label":"Sync Method Generator","href":"/RSCG_Examples/v2/docs/RSCG-Examples/Zomp_readme","docId":"RSCG-Examples/Zomp_readme"},{"type":"link","label":"Dunet","href":"/RSCG_Examples/v2/docs/RSCG-Examples/dunet_readme","docId":"RSCG-Examples/dunet_readme"},{"type":"link","label":"Mapperly","href":"/RSCG_Examples/v2/docs/RSCG-Examples/mapperly_readme","docId":"RSCG-Examples/mapperly_readme"},{"type":"link","label":"SpreadCheetah","href":"/RSCG_Examples/v2/docs/RSCG-Examples/spreadcheetah_readme","docId":"RSCG-Examples/spreadcheetah_readme"}],"href":"/RSCG_Examples/v2/docs/category/rscg-examples"},{"type":"category","label":"Microsoft Examples","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"8243 - Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator","href":"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator","docId":"Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator"},{"type":"link","label":"8661 - System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator","href":"/RSCG_Examples/v2/docs/Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator","docId":"Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator"},{"type":"link","label":"9229 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator","href":"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator","docId":"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator"},{"type":"link","label":"9236 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator","href":"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator","docId":"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator"},{"type":"link","label":"9679 - System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator","href":"/RSCG_Examples/v2/docs/Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator","docId":"Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator"},{"type":"link","label":"9939 - Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator","href":"/RSCG_Examples/v2/docs/Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator","docId":"Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator"}],"href":"/RSCG_Examples/v2/docs/category/microsoft-examples"},{"type":"link","label":"v1","href":"/RSCG_Examples/v2/docs/v1","docId":"v1"},{"type":"category","label":"Docusaurus","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Create a Page","href":"/RSCG_Examples/v2/docs/XDocusaurus/create-a-page","docId":"XDocusaurus/create-a-page"},{"type":"link","label":"Manage Docs Versions","href":"/RSCG_Examples/v2/docs/XDocusaurus/manage-docs-versions","docId":"XDocusaurus/manage-docs-versions"},{"type":"link","label":"Create a Document","href":"/RSCG_Examples/v2/docs/XDocusaurus/create-a-document","docId":"XDocusaurus/create-a-document"},{"type":"link","label":"Translate your site","href":"/RSCG_Examples/v2/docs/XDocusaurus/translate-your-site","docId":"XDocusaurus/translate-your-site"},{"type":"link","label":"Create a Blog Post","href":"/RSCG_Examples/v2/docs/XDocusaurus/create-a-blog-post","docId":"XDocusaurus/create-a-blog-post"},{"type":"link","label":"Markdown Features","href":"/RSCG_Examples/v2/docs/XDocusaurus/markdown-features","docId":"XDocusaurus/markdown-features"},{"type":"link","label":"Deploy your site","href":"/RSCG_Examples/v2/docs/XDocusaurus/deploy-your-site","docId":"XDocusaurus/deploy-your-site"},{"type":"link","label":"Congratulations!","href":"/RSCG_Examples/v2/docs/XDocusaurus/congratulations","docId":"XDocusaurus/congratulations"}],"href":"/RSCG_Examples/v2/docs/category/docusaurus"},{"type":"link","label":"NoExamples","href":"/RSCG_Examples/v2/docs/NoExamples","docId":"NoExamples"}]},"docs":{"about":{"id":"about","title":"About","description":"Content","sidebar":"tutorialSidebar"},"indexRSCG":{"id":"indexRSCG","title":"List of RSCG","description":"the how list","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Introduction","description":"What is a Roslyn Source Code Generator?","sidebar":"tutorialSidebar"},"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator":{"id":"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator","title":"9236 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator","description":"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator","sidebar":"tutorialSidebar"},"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator":{"id":"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator","title":"9229 - Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator","description":"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator","sidebar":"tutorialSidebar"},"Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator":{"id":"Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator","title":"8243 - Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator","description":"Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator","sidebar":"tutorialSidebar"},"Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator":{"id":"Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator","title":"9939 - Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator","description":"Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator","sidebar":"tutorialSidebar"},"Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator":{"id":"Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator","title":"8661 - System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator","description":"System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator","sidebar":"tutorialSidebar"},"Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator":{"id":"Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator","title":"9679 - System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator","description":"System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator","sidebar":"tutorialSidebar"},"NoExamples":{"id":"NoExamples","title":"NoExamples","description":"---","sidebar":"tutorialSidebar"},"RSCG-Examples/ApparatusAOT":{"id":"RSCG-Examples/ApparatusAOT","title":"19 - ApparatusAOT","description":"This will generate code for investigating at runtime the properties of an object","sidebar":"tutorialSidebar"},"RSCG-Examples/ApparatusAOT_readme":{"id":"RSCG-Examples/ApparatusAOT_readme","title":"AOT.Reflection is faster reflection powered via Source Generators","description":"This library aims to create a subset of reflection that will be faster than the default one and will not break at the platforms with the AOT compilation support. The source generators will help us with that.","sidebar":"tutorialSidebar"},"RSCG-Examples/AutoCtor":{"id":"RSCG-Examples/AutoCtor","title":"14 - AutoCtor","description":"Generate constructor from non-initialized fields","sidebar":"tutorialSidebar"},"RSCG-Examples/AutoCtor_readme":{"id":"RSCG-Examples/AutoCtor_readme","title":"AutoCtor_readme","description":"\x3c!--","sidebar":"tutorialSidebar"},"RSCG-Examples/AutoDeconstruct":{"id":"RSCG-Examples/AutoDeconstruct","title":"11 - AutoDeconstruct","description":"Automatically add deconstruct for all types in an assembly","sidebar":"tutorialSidebar"},"RSCG-Examples/AutoDeconstruct_readme":{"id":"RSCG-Examples/AutoDeconstruct_readme","title":"AutoDeconstruct","description":"A library that automatically adds support for object deconstruction in C#.","sidebar":"tutorialSidebar"},"RSCG-Examples/AutoRegisterInject":{"id":"RSCG-Examples/AutoRegisterInject","title":"37 - AutoRegisterInject","description":"Generating class DI registration from attributes","sidebar":"tutorialSidebar"},"RSCG-Examples/AutoRegisterInject_readme":{"id":"RSCG-Examples/AutoRegisterInject_readme","title":"AutoRegisterInject","description":"AutoRegisterInject, also referred to as ARI, is a C# source generator that will automatically create Microsoft.Extensions.DependencyInjection registrations for types marked with attributes.","sidebar":"tutorialSidebar"},"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator":{"id":"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator","title":"45 - BenutomoAutomaticDisposeImplSourceGenerator","description":"Automatic dispose resources","sidebar":"tutorialSidebar"},"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme":{"id":"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme","title":"RoslynComponents","description":"C#\u306eRoslyn\u30b3\u30f3\u30d1\u30a4\u30e9\u7528\u306e\u30a2\u30ca\u30e9\u30a4\u30b6/\u30bd\u30fc\u30b9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3067\u3059\u3002","sidebar":"tutorialSidebar"},"RSCG-Examples/Breezy":{"id":"RSCG-Examples/Breezy","title":"39 - Breezy","description":"ORM Mapper","sidebar":"tutorialSidebar"},"RSCG-Examples/Breezy_readme":{"id":"RSCG-Examples/Breezy_readme","title":"Breezy_readme","description":"NuGet Badge","sidebar":"tutorialSidebar"},"RSCG-Examples/CommunityToolkit.Mvvm":{"id":"RSCG-Examples/CommunityToolkit.Mvvm","title":"09 - CommunityToolkit.Mvvm","description":"Shows how to implement INotifyPropertyChanged,ObservableProperty and RelayCommand","sidebar":"tutorialSidebar"},"RSCG-Examples/CommunityToolkit.Mvvm_readme":{"id":"RSCG-Examples/CommunityToolkit.Mvvm_readme","title":"\ud83e\uddf0 .NET Community Toolkit","description":".NET Community Toolkit is a collection of helpers and APIs that work for all .NET developers and are agnostic of any specific UI platform. The toolkit is maintained and published by Microsoft, and part of the .NET Foundation.","sidebar":"tutorialSidebar"},"RSCG-Examples/DeeDee":{"id":"RSCG-Examples/DeeDee","title":"35 - DeeDee","description":"Mediatr generated data","sidebar":"tutorialSidebar"},"RSCG-Examples/DeeDee_readme":{"id":"RSCG-Examples/DeeDee_readme","title":"DeeDee","description":"Mediator using source generation for .NET","sidebar":"tutorialSidebar"},"RSCG-Examples/dunet":{"id":"RSCG-Examples/dunet","title":"15 - dunet","description":"Add union types to C# - similar with F#/TS discriminated unions","sidebar":"tutorialSidebar"},"RSCG-Examples/dunet_readme":{"id":"RSCG-Examples/dunet_readme","title":"Dunet","description":"Build","sidebar":"tutorialSidebar"},"RSCG-Examples/EmbedResourceCSharp":{"id":"RSCG-Examples/EmbedResourceCSharp","title":"27 - EmbedResourceCSharp","description":"reading embedded resources fast","sidebar":"tutorialSidebar"},"RSCG-Examples/EmbedResourceCSharp_readme":{"id":"RSCG-Examples/EmbedResourceCSharp_readme","title":"EmbedResourceCSharp","description":"This is a C# Source Generator.","sidebar":"tutorialSidebar"},"RSCG-Examples/EnumClass":{"id":"RSCG-Examples/EnumClass","title":"38 - EnumClass","description":"enum 2 class","sidebar":"tutorialSidebar"},"RSCG-Examples/EnumClass_readme":{"id":"RSCG-Examples/EnumClass_readme","title":"enum class Generator","description":"Summary","sidebar":"tutorialSidebar"},"RSCG-Examples/FastGenericNew":{"id":"RSCG-Examples/FastGenericNew","title":"40 - FastGenericNew","description":"Creating instances fast. As generator show source code. Otherwise could be a dll","sidebar":"tutorialSidebar"},"RSCG-Examples/FastGenericNew_readme":{"id":"RSCG-Examples/FastGenericNew_readme","title":"FastGenericNew_readme","description":"\u2728 Features","sidebar":"tutorialSidebar"},"RSCG-Examples/Gedaq":{"id":"RSCG-Examples/Gedaq","title":"29 - Gedaq","description":"Generating code from attribute query","sidebar":"tutorialSidebar"},"RSCG-Examples/Gedaq_readme":{"id":"RSCG-Examples/Gedaq_readme","title":"Gedaq_readme","description":"Gedaq","sidebar":"tutorialSidebar"},"RSCG-Examples/GeneratorEquals":{"id":"RSCG-Examples/GeneratorEquals","title":"41 - GeneratorEquals","description":"Generating Equals from properties","sidebar":"tutorialSidebar"},"RSCG-Examples/GeneratorEquals_readme":{"id":"RSCG-Examples/GeneratorEquals_readme","title":"GeneratorEquals_readme","description":"Nuget","sidebar":"tutorialSidebar"},"RSCG-Examples/Immutype":{"id":"RSCG-Examples/Immutype","title":"42 - Immutype","description":"Immutable from constructors","sidebar":"tutorialSidebar"},"RSCG-Examples/Immutype_readme":{"id":"RSCG-Examples/Immutype_readme","title":"Immutype","description":"NuGet","sidebar":"tutorialSidebar"},"RSCG-Examples/Lombok.NET":{"id":"RSCG-Examples/Lombok.NET","title":"28 - Lombok.NET","description":"Generating toString from props/fields. Other demos on site","sidebar":"tutorialSidebar"},"RSCG-Examples/Lombok.NET_readme":{"id":"RSCG-Examples/Lombok.NET_readme","title":"Lombok.NET","description":"This library is to .NET what Lombok is to Java.","sidebar":"tutorialSidebar"},"RSCG-Examples/mapperly":{"id":"RSCG-Examples/mapperly","title":"25 - mapperly","description":"Mapping classes to/from DTO","sidebar":"tutorialSidebar"},"RSCG-Examples/mapperly_readme":{"id":"RSCG-Examples/mapperly_readme","title":"Mapperly","description":"Nuget","sidebar":"tutorialSidebar"},"RSCG-Examples/Matryoshki":{"id":"RSCG-Examples/Matryoshki","title":"33 - Matryoshki","description":"Adding decorators to an implementation of interface","sidebar":"tutorialSidebar"},"RSCG-Examples/Matryoshki_readme":{"id":"RSCG-Examples/Matryoshki_readme","title":"Matryoshki","description":"Matryoshki Nuget Matryoshki.Abstractions Nuget Matryoshki.Generators Nuget","sidebar":"tutorialSidebar"},"RSCG-Examples/Mediator":{"id":"RSCG-Examples/Mediator","title":"32 - Mediator","description":"Gnerating mediator data without reflection","sidebar":"tutorialSidebar"},"RSCG-Examples/Mediator_readme":{"id":"RSCG-Examples/Mediator_readme","title":"Mediator_readme","description":"GitHub Workflow Status","sidebar":"tutorialSidebar"},"RSCG-Examples/MemoryPack":{"id":"RSCG-Examples/MemoryPack","title":"34 - MemoryPack","description":"Efficient serializer","sidebar":"tutorialSidebar"},"RSCG-Examples/MemoryPack_readme":{"id":"RSCG-Examples/MemoryPack_readme","title":"MemoryPack","description":"NuGet","sidebar":"tutorialSidebar"},"RSCG-Examples/Microsoft.Extensions.Logging":{"id":"RSCG-Examples/Microsoft.Extensions.Logging","title":"07 - Microsoft.Extensions.Logging","description":"Logging defined and compiled","sidebar":"tutorialSidebar"},"RSCG-Examples/Microsoft.Extensions.Logging_readme":{"id":"RSCG-Examples/Microsoft.Extensions.Logging_readme","title":".NET Runtime","description":"Build Status","sidebar":"tutorialSidebar"},"RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator":{"id":"RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator","title":"21 - Microsoft.Interop.JavaScript.JSImportGenerator","description":"Generating partial JSimport / JSExport in C# form","sidebar":"tutorialSidebar"},"RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator_readme":{"id":"RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator_readme","title":"Microsoft.Interop.JavaScript.JSImportGenerator_readme","description":"","sidebar":"tutorialSidebar"},"RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators":{"id":"RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators","title":"23 - Microsoft.NET.Sdk.Razor.SourceGenerators","description":"Generating razor/cshtml pages to cs pages","sidebar":"tutorialSidebar"},"RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators_readme":{"id":"RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators_readme","title":"Microsoft.NET.Sdk.Razor.SourceGenerators_readme","description":"","sidebar":"tutorialSidebar"},"RSCG-Examples/MorrisMoxy":{"id":"RSCG-Examples/MorrisMoxy","title":"31 - MorrisMoxy","description":"Generate C# code for classes from template using attributes","sidebar":"tutorialSidebar"},"RSCG-Examples/MorrisMoxy_readme":{"id":"RSCG-Examples/MorrisMoxy_readme","title":"Morris.Moxy","description":"Morris.Moxy is a code mix-in code generator for Microsoft .NET","sidebar":"tutorialSidebar"},"RSCG-Examples/NetEscapades.EnumGenerators":{"id":"RSCG-Examples/NetEscapades.EnumGenerators","title":"20 - NetEscapades.EnumGenerators","description":"Running fast tostring and other features for enum","sidebar":"tutorialSidebar"},"RSCG-Examples/NetEscapades.EnumGenerators_readme":{"id":"RSCG-Examples/NetEscapades.EnumGenerators_readme","title":"NetEscapades.EnumGenerators","description":"Build status","sidebar":"tutorialSidebar"},"RSCG-Examples/PartiallyApplied":{"id":"RSCG-Examples/PartiallyApplied","title":"18 - PartiallyApplied","description":"If you need to curry functions, you can use this package","sidebar":"tutorialSidebar"},"RSCG-Examples/PartiallyApplied_readme":{"id":"RSCG-Examples/PartiallyApplied_readme","title":"PartiallyApplied","description":"A way to do partial function application in C#.","sidebar":"tutorialSidebar"},"RSCG-Examples/Podimo.ConstEmbed":{"id":"RSCG-Examples/Podimo.ConstEmbed","title":"26 - Podimo.ConstEmbed","description":"File content transformed to constants","sidebar":"tutorialSidebar"},"RSCG-Examples/Podimo.ConstEmbed_readme":{"id":"RSCG-Examples/Podimo.ConstEmbed_readme","title":"Podimo.ConstEmbed","description":"This project is a Source Generator which generates constant strings from files at compile-time.","sidebar":"tutorialSidebar"},"RSCG-Examples/ProxyGen":{"id":"RSCG-Examples/ProxyGen","title":"36 - ProxyGen","description":"intercepting and duck typing","sidebar":"tutorialSidebar"},"RSCG-Examples/ProxyGen_readme":{"id":"RSCG-Examples/ProxyGen_readme","title":"ProxyGen.NET [![Build status](https://ci.appveyor.com/api/projects/status/caw7qqtf5tbaa1fq/branch/master?svg=true)](https://ci.appveyor.com/project/Sholtee/proxygen/branch/master) ![AppVeyor tests](https://img.shields.io/appveyor/tests/sholtee/proxygen/master) [![Coverage Status](https://coveralls.io/repos/github/Sholtee/proxygen/badge.svg?branch=master)](https://coveralls.io/github/Sholtee/proxygen?branch=master) [![Nuget (with prereleases)](https://img.shields.io/nuget/vpre/proxygen.net)](https://www.nuget.org/packages/proxygen.net) ![GitHub last commit (branch)](https://img.shields.io/github/last-commit/sholtee/proxygen/master)","description":".NET proxy generator powered by Roslyn","sidebar":"tutorialSidebar"},"RSCG-Examples/QuickConstructor":{"id":"RSCG-Examples/QuickConstructor","title":"13 - QuickConstructor","description":"Fast add constructors that are read only FIELDS","sidebar":"tutorialSidebar"},"RSCG-Examples/QuickConstructor_readme":{"id":"RSCG-Examples/QuickConstructor_readme","title":"QuickConstructor","description":"QuickConstructor","sidebar":"tutorialSidebar"},"RSCG-Examples/RazorBlade":{"id":"RSCG-Examples/RazorBlade","title":"17 - RazorBlade","description":"Fast templating with Razor syntax","sidebar":"tutorialSidebar"},"RSCG-Examples/RazorBlade_readme":{"id":"RSCG-Examples/RazorBlade_readme","title":"RazorBlade","description":"Build","sidebar":"tutorialSidebar"},"RSCG-Examples/Refit":{"id":"RSCG-Examples/Refit","title":"30 - Refit","description":"Generates code for retrieving data from HTTP API","sidebar":"tutorialSidebar"},"RSCG-Examples/Refit_readme":{"id":"RSCG-Examples/Refit_readme","title":"Refit_readme","description":"Refit: The automatic type-safe REST library for .NET Core, Xamarin and .NET","sidebar":"tutorialSidebar"},"RSCG-Examples/Rocks":{"id":"RSCG-Examples/Rocks","title":"24 - Rocks","description":"Creating mocks for testing interfaces/classes","sidebar":"tutorialSidebar"},"RSCG-Examples/Rocks_readme":{"id":"RSCG-Examples/Rocks_readme","title":"Rocks","description":"A mocking library based on the Compiler APIs (Roslyn + Mocks)","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_AMS":{"id":"RSCG-Examples/RSCG_AMS","title":"10 - RSCG_AMS","description":"Automatically registering the version, ci, commit id","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_AMS_readme":{"id":"RSCG-Examples/RSCG_AMS_readme","title":"RSCG_AMS","description":"a Roslyn Source Code Generator for About My Software","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_FunctionsWithDI":{"id":"RSCG-Examples/RSCG_FunctionsWithDI","title":"22 - RSCG_FunctionsWithDI","description":"Generating functions that have parameters from services","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_FunctionsWithDI_readme":{"id":"RSCG-Examples/RSCG_FunctionsWithDI_readme","title":"FunctionsDI","description":"Nuget","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_Static":{"id":"RSCG-Examples/RSCG_Static","title":"08 - RSCG_Static","description":"Generate interfaces and classes from static classes","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_Static_readme":{"id":"RSCG-Examples/RSCG_Static_readme","title":"RSCG_Static","description":"Roslyn Source Code Generator - transform static classes into instances and interfaces","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_TimeBombComment":{"id":"RSCG-Examples/RSCG_TimeBombComment","title":"02 - RSCG_TimeBombComment","description":"This will generate an error from the comment after a certain date","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_TimeBombComment_readme":{"id":"RSCG-Examples/RSCG_TimeBombComment_readme","title":"RSCG_TimeBombComment aka Time Bomb comment for technical debt","description":"Reference the nuget package","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_Utils":{"id":"RSCG-Examples/RSCG_Utils","title":"04 - RSCG_Utils","description":"Add files as C# consts","sidebar":"tutorialSidebar"},"RSCG-Examples/RSCG_Utils_readme":{"id":"RSCG-Examples/RSCG_Utils_readme","title":"RSCG_Utils","description":"Roslyn Source Code Generators Utils","sidebar":"tutorialSidebar"},"RSCG-Examples/SkinnyControllersCommon":{"id":"RSCG-Examples/SkinnyControllersCommon","title":"06 - SkinnyControllersCommon","description":"Automatically add controllers actions for any class injected in constructor","sidebar":"tutorialSidebar"},"RSCG-Examples/SkinnyControllersCommon_readme":{"id":"RSCG-Examples/SkinnyControllersCommon_readme","title":"SkinnyControllersGenerator","description":"SkinnyControllers generates controller action for each field of your controller","sidebar":"tutorialSidebar"},"RSCG-Examples/spreadcheetah":{"id":"RSCG-Examples/spreadcheetah","title":"43 - spreadcheetah","description":"generating Excel from objects","sidebar":"tutorialSidebar"},"RSCG-Examples/spreadcheetah_readme":{"id":"RSCG-Examples/spreadcheetah_readme","title":"SpreadCheetah","description":"Nuget","sidebar":"tutorialSidebar"},"RSCG-Examples/System.Runtime.InteropServices":{"id":"RSCG-Examples/System.Runtime.InteropServices","title":"12 - System.Runtime.InteropServices","description":"Generate PInvoke calls","sidebar":"tutorialSidebar"},"RSCG-Examples/System.Runtime.InteropServices_readme":{"id":"RSCG-Examples/System.Runtime.InteropServices_readme","title":"System.Runtime.InteropServices_readme","description":"","sidebar":"tutorialSidebar"},"RSCG-Examples/System.Text.Json":{"id":"RSCG-Examples/System.Text.Json","title":"03 - System.Text.Json","description":"Json Serialize without reflection","sidebar":"tutorialSidebar"},"RSCG-Examples/System.Text.Json_readme":{"id":"RSCG-Examples/System.Text.Json_readme","title":".NET Runtime","description":"Build Status","sidebar":"tutorialSidebar"},"RSCG-Examples/System.Text.RegularExpressions":{"id":"RSCG-Examples/System.Text.RegularExpressions","title":"05 - System.Text.RegularExpressions","description":"Regex compiled","sidebar":"tutorialSidebar"},"RSCG-Examples/System.Text.RegularExpressions_readme":{"id":"RSCG-Examples/System.Text.RegularExpressions_readme","title":".NET Runtime","description":"Build Status","sidebar":"tutorialSidebar"},"RSCG-Examples/ThisAssembly":{"id":"RSCG-Examples/ThisAssembly","title":"01 - ThisAssembly","description":"The ThisAssembly.Info allows you access to the Assembly Information as constants, instead of going to reflection each time.","sidebar":"tutorialSidebar"},"RSCG-Examples/ThisAssembly_readme":{"id":"RSCG-Examples/ThisAssembly_readme","title":"ThisAssembly","description":"Version","sidebar":"tutorialSidebar"},"RSCG-Examples/Vogen":{"id":"RSCG-Examples/Vogen","title":"16 - Vogen","description":"Transform values( e.g. int) into classes","sidebar":"tutorialSidebar"},"RSCG-Examples/Vogen_readme":{"id":"RSCG-Examples/Vogen_readme","title":"Vogen_readme","description":"| Name | Operating System | Status | History |","sidebar":"tutorialSidebar"},"RSCG-Examples/Zomp":{"id":"RSCG-Examples/Zomp","title":"44 - Zomp","description":"Generating Sync method from async","sidebar":"tutorialSidebar"},"RSCG-Examples/Zomp_readme":{"id":"RSCG-Examples/Zomp_readme","title":"Sync Method Generator","description":"Build","sidebar":"tutorialSidebar"},"v1":{"id":"v1","title":"v1","description":"This was a previous version of the examples at https://ignatandrei.github.io/RSCG_Examples/v1 - and is not updated anymore","sidebar":"tutorialSidebar"},"XDocusaurus/congratulations":{"id":"XDocusaurus/congratulations","title":"Congratulations!","description":"You have just learned the basics of Docusaurus and made some changes to the initial template.","sidebar":"tutorialSidebar"},"XDocusaurus/create-a-blog-post":{"id":"XDocusaurus/create-a-blog-post","title":"Create a Blog Post","description":"Docusaurus creates a page for each blog post, but also a blog index page, a tag system, an RSS feed...","sidebar":"tutorialSidebar"},"XDocusaurus/create-a-document":{"id":"XDocusaurus/create-a-document","title":"Create a Document","description":"Documents are groups of pages connected through:","sidebar":"tutorialSidebar"},"XDocusaurus/create-a-page":{"id":"XDocusaurus/create-a-page","title":"Create a Page","description":"Add Markdown or React files to src/pages to create a standalone page:","sidebar":"tutorialSidebar"},"XDocusaurus/deploy-your-site":{"id":"XDocusaurus/deploy-your-site","title":"Deploy your site","description":"Docusaurus is a static-site-generator (also called Jamstack).","sidebar":"tutorialSidebar"},"XDocusaurus/manage-docs-versions":{"id":"XDocusaurus/manage-docs-versions","title":"Manage Docs Versions","description":"Docusaurus can manage multiple versions of your docs.","sidebar":"tutorialSidebar"},"XDocusaurus/markdown-features":{"id":"XDocusaurus/markdown-features","title":"Markdown Features","description":"Docusaurus supports Markdown and a few additional features.","sidebar":"tutorialSidebar"},"XDocusaurus/translate-your-site":{"id":"XDocusaurus/translate-your-site","title":"Translate your site","description":"Let\'s translate docs/intro.md to French.","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/a084d1b4.82a0dd9b.js b/docs/v2/assets/js/a084d1b4.82a0dd9b.js new file mode 100644 index 000000000..c0ed7bb3c --- /dev/null +++ b/docs/v2/assets/js/a084d1b4.82a0dd9b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[8230],{4137:(t,e,a)=>{a.d(e,{Zo:()=>d,kt:()=>N});var r=a(7294);function n(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,r)}return a}function o(t){for(var e=1;e=0||(n[a]=t[a]);return n}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}var i=r.createContext({}),m=function(t){var e=r.useContext(i),a=e;return t&&(a="function"==typeof t?t(e):o(o({},e),t)),a},d=function(t){var e=m(t.components);return r.createElement(i.Provider,{value:e},t.children)},u="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},k=r.forwardRef((function(t,e){var a=t.components,n=t.mdxType,l=t.originalType,i=t.parentName,d=p(t,["components","mdxType","originalType","parentName"]),u=m(a),k=n,N=u["".concat(i,".").concat(k)]||u[k]||s[k]||l;return a?r.createElement(N,o(o({ref:e},d),{},{components:a})):r.createElement(N,o({ref:e},d))}));function N(t,e){var a=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var l=a.length,o=new Array(l);o[0]=k;var p={};for(var i in e)hasOwnProperty.call(e,i)&&(p[i]=e[i]);p.originalType=t,p[u]="string"==typeof t?t:n,o[1]=p;for(var m=2;m{a.r(e),a.d(e,{assets:()=>i,contentTitle:()=>o,default:()=>s,frontMatter:()=>l,metadata:()=>p,toc:()=>m});var r=a(7462),n=(a(7294),a(4137));const l={sidebar_position:25,title:"List of RSCG",description:"the how list",slug:"/List-of-RSCG"},o=void 0,p={unversionedId:"indexRSCG",id:"indexRSCG",title:"List of RSCG",description:"the how list",source:"@site/docs/indexRSCG.md",sourceDirName:".",slug:"/List-of-RSCG",permalink:"/RSCG_Examples/v2/docs/List-of-RSCG",draft:!1,tags:[],version:"current",sidebarPosition:25,frontMatter:{sidebar_position:25,title:"List of RSCG",description:"the how list",slug:"/List-of-RSCG"},sidebar:"tutorialSidebar",previous:{title:"About",permalink:"/RSCG_Examples/v2/docs/about"},next:{title:"RSCG Examples",permalink:"/RSCG_Examples/v2/docs/category/rscg-examples"}},i={},m=[{value:"45 RSCG with examples",id:"45-rscg-with-examples",level:2},{value:"Created by Microsoft",id:"created-by-microsoft",level:2}],d={toc:m},u="wrapper";function s(t){let{components:e,...a}=t;return(0,n.kt)(u,(0,r.Z)({},d,a,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"45-rscg-with-examples"},"45 RSCG with examples"),(0,n.kt)("p",null,"This is the list of 45 ( 6 from Microsoft) RSCG with examples "),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"No"),(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:null},"Date"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"45"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/BenutomoAutomaticDisposeImplSourceGenerator"},"BenutomoAutomaticDisposeImplSourceGenerator")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-15 => 15 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"44"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Zomp"},"Zomp")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-14 => 14 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"43"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/spreadcheetah"},"spreadcheetah")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-13 => 13 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"42"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Immutype"},"Immutype")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-12 => 12 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"41"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/GeneratorEquals"},"GeneratorEquals")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-11 => 11 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"40"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/FastGenericNew"},"FastGenericNew")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-10 => 10 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"39"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Breezy"},"Breezy")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-09 => 09 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"38"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/EnumClass"},"EnumClass")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-08 => 08 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"37"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/AutoRegisterInject"},"AutoRegisterInject")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-07 => 07 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"36"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/ProxyGen"},"ProxyGen")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-06 => 06 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"35"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/DeeDee"},"DeeDee")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-05 => 05 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"34"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/MemoryPack"},"MemoryPack")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-04 => 04 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"33"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Matryoshki"},"Matryoshki")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-03 => 03 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"32"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Mediator"},"Mediator")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-02 => 02 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"31"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/MorrisMoxy"},"MorrisMoxy")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-08-01 => 01 August 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"30"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Refit"},"Refit")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-07-31 => 31 July 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"29"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Gedaq"},"Gedaq")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-07-29 => 29 July 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"28"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Lombok.NET"},"Lombok.NET")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"27"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/EmbedResourceCSharp"},"EmbedResourceCSharp")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"26"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Podimo.ConstEmbed"},"Podimo.ConstEmbed")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"25"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/mapperly"},"mapperly")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"24"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Rocks"},"Rocks")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"23"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Microsoft.NET.Sdk.Razor.SourceGenerators"},"Microsoft.NET.Sdk.Razor.SourceGenerators")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"22"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/RSCG_FunctionsWithDI"},"RSCG_FunctionsWithDI")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"21"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Microsoft.Interop.JavaScript.JSImportGenerator"},"Microsoft.Interop.JavaScript.JSImportGenerator")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"20"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/NetEscapades.EnumGenerators"},"NetEscapades.EnumGenerators")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"19"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/ApparatusAOT"},"ApparatusAOT")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"18"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/PartiallyApplied"},"PartiallyApplied")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"17"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/RazorBlade"},"RazorBlade")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"16"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Vogen"},"Vogen")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"15"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/dunet"},"dunet")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"14"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/AutoCtor"},"AutoCtor")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"13"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/QuickConstructor"},"QuickConstructor")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"12"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/System.Runtime.InteropServices"},"System.Runtime.InteropServices")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"11"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/AutoDeconstruct"},"AutoDeconstruct")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"10"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/RSCG_AMS"},"RSCG_AMS")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"9"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/CommunityToolkit.Mvvm"},"CommunityToolkit.Mvvm")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"8"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/RSCG_Static"},"RSCG_Static")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"7"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Microsoft.Extensions.Logging"},"Microsoft.Extensions.Logging")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"6"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/SkinnyControllersCommon"},"SkinnyControllersCommon")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"5"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/System.Text.RegularExpressions"},"System.Text.RegularExpressions")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"4"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/RSCG_Utils"},"RSCG_Utils")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"3"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/System.Text.Json"},"System.Text.Json")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"2"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/RSCG_TimeBombComment"},"RSCG_TimeBombComment")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"1"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/ThisAssembly"},"ThisAssembly")),(0,n.kt)("td",{parentName:"tr",align:null},"2023-04-16 => 16 April 2023")))),(0,n.kt)("h2",{id:"created-by-microsoft"},"Created by Microsoft"),(0,n.kt)("p",null,"If you are interested in Microsoft RSCG, please see"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"No"),(0,n.kt)("th",{parentName:"tr",align:null},"Name"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"9679"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator"},"System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"8661"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator"},"System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"8243"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator"},"Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"9229"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator"},"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"9236"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator"},"Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"9939"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"/docs/Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator"},"Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator"))))),(0,n.kt)("p",null,"If you want to study ,there are more at ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/search?q=repo%3Adotnet%2Fruntime%20IIncrementalGenerator&type=code"},"https://github.com/search?q=repo%3Adotnet%2Fruntime%20IIncrementalGenerator&type=code")," "),(0,n.kt)("p",null,"You can see also the ",(0,n.kt)("a",{parentName:"p",href:"/docs/v1"},"v1")))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/c1baf4a7.14836b55.js b/docs/v2/assets/js/c1baf4a7.14836b55.js new file mode 100644 index 000000000..2a43d89d7 --- /dev/null +++ b/docs/v2/assets/js/c1baf4a7.14836b55.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[3725],{4137:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>d});var a=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var o=a.createContext({}),p=function(e){var t=a.useContext(o),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=p(e.components);return a.createElement(o.Provider,{value:t},e.children)},c="mdxType",g={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,o=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),c=p(n),m=r,d=c["".concat(o,".").concat(m)]||c[m]||g[m]||l;return n?a.createElement(d,i(i({ref:t},u),{},{components:n})):a.createElement(d,i({ref:t},u))}));function d(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,i=new Array(l);i[0]=m;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s[c]="string"==typeof e?e:r,i[1]=s;for(var p=2;p{n.r(t),n.d(t,{assets:()=>o,contentTitle:()=>i,default:()=>g,frontMatter:()=>l,metadata:()=>s,toc:()=>p});var a=n(7462),r=(n(7294),n(4137));const l={},i=void 0,s={unversionedId:"RSCG-Examples/Breezy_readme",id:"RSCG-Examples/Breezy_readme",title:"Breezy_readme",description:"NuGet Badge",source:"@site/docs/RSCG-Examples/Breezy_readme.md",sourceDirName:"RSCG-Examples",slug:"/RSCG-Examples/Breezy_readme",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/Breezy_readme",draft:!1,tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"RoslynComponents",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme"},next:{title:"\ud83e\uddf0 .NET Community Toolkit",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/CommunityToolkit.Mvvm_readme"}},o={},p=[{value:"Installation",id:"installation",level:2},{value:"Nugget Package : https://www.nuget.org/packages/Breezy.SourceGenerator/",id:"nugget-package--httpswwwnugetorgpackagesbreezysourcegenerator",level:5},{value:"Getting Started",id:"getting-started",level:2},{value:"Mapping Objects with Relations (N to N || 1 to N)",id:"mapping-objects-with-relations-n-to-n--1-to-n",level:2},{value:"Vs Dapper",id:"vs-dapper",level:4},{value:"Mapping Objects with Reference Type(s)",id:"mapping-objects-with-reference-types",level:2},{value:"Querying with Anonymous Types",id:"querying-with-anonymous-types",level:2},{value:"Caching for Performance Optimization",id:"caching-for-performance-optimization",level:2},{value:"Execute a Command that return result",id:"execute-a-command-that-return-result",level:2},{value:"Execute a Command that return results with Transaction",id:"execute-a-command-that-return-results-with-transaction",level:2},{value:"Performance ~ 10k rows",id:"performance--10k-rows",level:2},{value:"Why Breezy ?",id:"why-breezy-",level:2}],u={toc:p},c="wrapper";function g(e){let{components:t,...n}=e;return(0,r.kt)(c,(0,a.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("div",null,(0,r.kt)("img",{src:"https://zupimages.net/up/23/23/na2b.png",width:"900",height:"300"})),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://www.nuget.org/packages/Breezy.SourceGenerator//1.0.1"},(0,r.kt)("img",{parentName:"a",src:"https://buildstats.info/nuget/Breezy.SourceGenerator/",alt:"NuGet Badge"})),"\n",(0,r.kt)("a",{parentName:"p",href:"https://opensource.org/licenses/MIT"},(0,r.kt)("img",{parentName:"a",src:"https://img.shields.io/badge/License-MIT-yellow.svg",alt:"License: MIT"}))),(0,r.kt)("p",null,"Breezy is a lightweight Object-Relational Mapping ",(0,r.kt)("b",null,"(ORM)")," library for mapping objects using ",(0,r.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/en-us/dotnet/csharp/roslyn-sdk/source-generators-overview"},(0,r.kt)("inlineCode",{parentName:"a"},"Source Generator"))," in C#. ",(0,r.kt)("br",null),"It provides seamless asynchronous operations for enhanced performance."),(0,r.kt)("h2",{id:"installation"},"Installation"),(0,r.kt)("h5",{id:"nugget-package--httpswwwnugetorgpackagesbreezysourcegenerator"},"Nugget Package : ",(0,r.kt)("a",{parentName:"h5",href:"https://www.nuget.org/packages/Breezy.SourceGenerator/"},"https://www.nuget.org/packages/Breezy.SourceGenerator/")),(0,r.kt)("p",null,"To install Breezy, simply add the package reference to your project using NuGet Package Manager or by adding the following line to your .csproj file:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-xml"},'\n\n\n')),(0,r.kt)("h2",{id:"getting-started"},"Getting Started"),(0,r.kt)("p",null,"Breezy simplifies the mapping of objects and performing database operations. Here's a simple example of querying houses using Breezy's asynchronous operations :"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},"public static async Task> QueryAsync(this DbConnection connection, string sql, object param, ICacheableQuery cacheableQuery, CancellationToken cancellationToken = default) where T : House\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'using Breezy;\n\nvar houses = await connection.QueryAsync("SELECT * FROM house");\n')),(0,r.kt)("p",null,"In the above example, the QueryAsync method executes the provided SQL query and maps the results to a list of House objects asynchronously."),(0,r.kt)("h2",{id:"mapping-objects-with-relations-n-to-n--1-to-n"},"Mapping Objects with Relations (N to N || 1 to N)"),(0,r.kt)("p",null,"Breezy supports mapping objects with relationships. Here's an example of querying posts with tags using Breezy's asynchronous operations :"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'using Breezy;\n\nvar posts = await connection.QueryAsync(\n @"SELECT * FROM test.post p INNER JOIN posts_tags pt ON p.id = pt.post_id INNER JOIN tag t ON t.id = pt.tag_id");\n')),(0,r.kt)("p",null,"The QueryAsync method executes the provided SQL query and maps the results to a list of Post objects. The Post class is defined as follows :"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'[Table("post")]\n[SplitOn(3, 4)]\npublic class Post\n{\n public int Id { get; set; }\n public string Title { get; set; }\n public string Body { get; set; }\n public List Tags { get; set; } = new();\n}\n\n[Table("tag")]\npublic class Tag\n{\n public int Id { get; set; }\n public string Name { get; set; }\n public List Posts { get; set; } = new();\n}\n')),(0,r.kt)("p",null,"In the Post class, the ",(0,r.kt)("b",null,"Table attribute")," specifies the table name, and the ",(0,r.kt)("b",null,"SplitOn attribute")," indicates the column indices to split when mapping the object from the database."),(0,r.kt)("i",null,"Circular reference doesn't throw exception ! "),(0,r.kt)("h4",{id:"vs-dapper"},"Vs Dapper"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'var sql = @"SELECT p.id, p.title, p.body, t.id, t.name\n FROM post p \n INNER JOIN posts_tags pt ON pt.post_id = p.id\n INNER JOIN tag t ON t.id = pt.tag_id";\n \n var posts = await connection.QueryAsync(sql, (post, tag) => { \n post.Tags.Add(tag);\n return post;\n }, splitOn: "id");\n \n var result = posts.GroupBy(p => p.PostId).Select(g =>\n {\n var groupedPost = g.First();\n groupedPost.Tags = g.Select(p => p.Tags.Single()).ToList();\n return groupedPost;\n });\n \n // Dapper is less user friendly for theses using case\n')),(0,r.kt)("h2",{id:"mapping-objects-with-reference-types"},"Mapping Objects with Reference Type(s)"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},"public class UserReference\n{\n public int Id { get; set; }\n public Position Position { get; set; }\n}\n\npublic sealed class Position\n{\n public string ZipCode { get; set; }\n public string City { get; set; }\n public string Address { get; set; }\n}\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'var users = await connection.QueryAsync("SELECT u.id, u.zip_code, u.city, u.address FROM user_ref u");\n')),(0,r.kt)("p",null,"The QueryAsync method executes the SQL query and automatically maps the result columns to the corresponding properties of the UserReference entity, including the reference type Position."),(0,r.kt)("h2",{id:"querying-with-anonymous-types"},"Querying with Anonymous Types"),(0,r.kt)("p",null,"Breezy allows you to query using anonymous types as parameters. Here's an example :"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'var houses = await connection.QueryAsync("SELECT * FROM house h WHERE h.id = @Id", new {Id = 1});\n')),(0,r.kt)("p",null,"The anonymous type is used to pass the ",(0,r.kt)("b",null,"Id")," parameter."),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},(0,r.kt)("em",{parentName:"p"},"IMPORTANT :"),"\nMake sure that the column index in the SQL query match the property index in any class for the mapping to work correctly."),(0,r.kt)("br",null),(0,r.kt)("b",null,"You need to add any relations at the end of you main object !")),(0,r.kt)("h2",{id:"caching-for-performance-optimization"},"Caching for Performance Optimization"),(0,r.kt)("p",null,"Breezy supports implementing caching mechanisms, such as in-memory or distributed caching, to reduce the memory footprint and improve query execution time. You can implement your own caching strategy based on your specific requirements."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},"public interface ICacheableQuery where T : class\n{\n public Task> GetCacheableResultsAsync(IdentityQuery identityQuery);\n \n public Task SetCacheableResultsAsync(IdentityQuery identityQuery, IEnumerable results);\n} \n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},"// Check if the query result is already cached\n\nvar identityQuery = new IdentityQuery(sql);\n\nvar cacheableResults = await cacheableQuery.GetCacheableResultsAsync(identityQuery);\n\nif (cacheableResults.Any())\n return cacheableResults;\n \n// Execute the query \n\nvar results = new List();\n\nwhile (await reader.ReadAsync(cancellationToken).ConfigureAwait(false)) \n{ \n // processing...\n}\n\n// Cache the query result for X ms/s\n\nawait cacheableQuery.SetCacheableResultsAsync(identityQuery, results);\n")),(0,r.kt)("details",null,(0,r.kt)("summary",null,"Example of implementation (Memory Cache)"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},"public sealed class MemoryCacheableQuery : ICacheableQuery where T : class\n{\n private readonly Dictionary>> _cacheableData = new();\n \n public Task> GetCacheableResultsAsync(IdentityQuery identityQuery)\n {\n if (_cacheableData.TryGetValue(identityQuery, out var results))\n {\n var (addDate, collection) = results;\n\n if ((DateTime.Now - addDate) < TimeSpan.FromSeconds(10))\n return Task.FromResult>(collection);\n\n _cacheableData.Remove(identityQuery);\n }\n\n return Task.FromResult>(Array.Empty());\n }\n\n public Task SetCacheableResultsAsync(IdentityQuery identityQuery, IEnumerable results)\n {\n _cacheableData.Add(identityQuery, new Tuple>(DateTime.Now, results));\n\n return Task.CompletedTask;\n }\n}\n"))),(0,r.kt)("h2",{id:"execute-a-command-that-return-result"},"Execute a Command that return result"),(0,r.kt)("p",null,"Breezy provides the ExecuteAsync method for executing SQL statements that can return results. Here's an example of using ExecuteAsync to insert data into a table and retrieve the last inserted ID:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},"public static async Task ExecuteAsync(this DbConnection connection, string sql, object param, CancellationToken cancellationToken = default)\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'var lastId = await connection.ExecuteAsync("INSERT INTO myTable (x, y) VALUES (x, y); SELECT LAST_INSERT_ID();");\n')),(0,r.kt)("h2",{id:"execute-a-command-that-return-results-with-transaction"},"Execute a Command that return results with Transaction"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},"public static async Task ExecuteAsync(this DbConnection connection, string[] sql, DbTransaction transaction, CancellationToken cancellationToken = default)\n")),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-csharp"},'var dbTransaction = await _mySqlConnection.BeginTransactionAsync();\n\nvar results = await connection.ExecuteAsync(new [] { "INSERT INTO myTable (x, y) VALUES (x, y); SELECT LAST_INSERT_ID();" }, { /* ... */ }, dbTransaction);\n')),(0,r.kt)("h2",{id:"performance--10k-rows"},"Performance ~ 10k rows"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"BenchmarkDotNet=v0.13.5, OS=Windows 10 (10.0.19044.2965/21H2/November2021Update)\nAMD Ryzen 5 3500X, 1 CPU, 6 logical and 6 physical cores\n.NET SDK=8.0.100-preview.2.23157.25\n[Host] : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2\nDefaultJob : .NET 7.0.5 (7.0.523.17405), X64 RyuJIT AVX2\n")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"ORM"),(0,r.kt)("th",{parentName:"tr",align:null},"Method"),(0,r.kt)("th",{parentName:"tr",align:null},"Return"),(0,r.kt)("th",{parentName:"tr",align:"right"},"Mean"),(0,r.kt)("th",{parentName:"tr",align:"right"},"StdDev"),(0,r.kt)("th",{parentName:"tr",align:"right"},"Gen0"),(0,r.kt)("th",{parentName:"tr",align:"right"},"Gen1"),(0,r.kt)("th",{parentName:"tr",align:"right"},"Gen2"),(0,r.kt)("th",{parentName:"tr",align:"right"},"Allocated"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Breezy"),(0,r.kt)("td",{parentName:"tr",align:null},"QueryAsync","<","T",">"),(0,r.kt)("td",{parentName:"tr",align:null},"No relation"),(0,r.kt)("td",{parentName:"tr",align:"right"},"491.1 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"4.08 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"0.0801"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"672 B")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Dapper"),(0,r.kt)("td",{parentName:"tr",align:null},"QueryAsync","<","T",">"),(0,r.kt)("td",{parentName:"tr",align:null},"No relation"),(0,r.kt)("td",{parentName:"tr",align:"right"},"14,005,807.3 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"85,785.13 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"437.5000"),(0,r.kt)("td",{parentName:"tr",align:"right"},"265.6250"),(0,r.kt)("td",{parentName:"tr",align:"right"},"125.0000"),(0,r.kt)("td",{parentName:"tr",align:"right"},"3899691 B")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Breezy"),(0,r.kt)("td",{parentName:"tr",align:null},"QueryFirstOrDefault","<","T",">"),(0,r.kt)("td",{parentName:"tr",align:null},"No relation"),(0,r.kt)("td",{parentName:"tr",align:"right"},"589.8 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"7.28 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"0.0935"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"784 B")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Dapper"),(0,r.kt)("td",{parentName:"tr",align:null},"QueryFirstOrDefault","<","T",">"),(0,r.kt)("td",{parentName:"tr",align:null},"No relation"),(0,r.kt)("td",{parentName:"tr",align:"right"},"540,714.1 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"44,717.07 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"0.9766"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"13081 B")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Breezy"),(0,r.kt)("td",{parentName:"tr",align:null},"QueryAsync","<","T",">"),(0,r.kt)("td",{parentName:"tr",align:null},"1 To N relations"),(0,r.kt)("td",{parentName:"tr",align:"right"},"588.5 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"9.26 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"0.0801"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"672 B")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Dapper"),(0,r.kt)("td",{parentName:"tr",align:null},"QueryAsync","<","T",">"),(0,r.kt)("td",{parentName:"tr",align:null},"1 To N relations"),(0,r.kt)("td",{parentName:"tr",align:"right"},"98,695,865.6 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"740,908.87 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"2000.0000"),(0,r.kt)("td",{parentName:"tr",align:"right"},"833.3333"),(0,r.kt)("td",{parentName:"tr",align:"right"},"500.0000"),(0,r.kt)("td",{parentName:"tr",align:"right"},"17760052 B")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Breezy"),(0,r.kt)("td",{parentName:"tr",align:null},"QueryFirstOrDefault","<","T",">"),(0,r.kt)("td",{parentName:"tr",align:null},"1 To N relations"),(0,r.kt)("td",{parentName:"tr",align:"right"},"690.7 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"13.41 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"0.0935"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"784 B")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Dapper"),(0,r.kt)("td",{parentName:"tr",align:null},"QueryFirstOrDefault","<","T",">"),(0,r.kt)("td",{parentName:"tr",align:null},"1 To N relations"),(0,r.kt)("td",{parentName:"tr",align:"right"},"14,866,187.7 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"385,888.24 ns"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"-"),(0,r.kt)("td",{parentName:"tr",align:"right"},"30835 B")))),(0,r.kt)("h2",{id:"why-breezy-"},"Why Breezy ?"),(0,r.kt)("p",null,"I wanted to offer similary fonctionalities faster than ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/DapperLib/Dapper"},(0,r.kt)("inlineCode",{parentName:"a"},"Dapper"))," with source generator"))}g.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/e5ad04d1.03c57310.js b/docs/v2/assets/js/e5ad04d1.03c57310.js new file mode 100644 index 000000000..7df33fea6 --- /dev/null +++ b/docs/v2/assets/js/e5ad04d1.03c57310.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[5863],{4137:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>g});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=r.createContext({}),c=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(s.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,s=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),u=c(n),m=a,g=u["".concat(s,".").concat(m)]||u[m]||d[m]||i;return n?r.createElement(g,l(l({ref:t},p),{},{components:n})):r.createElement(g,l({ref:t},p))}));function g(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,l=new Array(i);l[0]=m;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[u]="string"==typeof e?e:a,l[1]=o;for(var c=2;c{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>d,frontMatter:()=>i,metadata:()=>o,toc:()=>c});var r=n(7462),a=(n(7294),n(4137));const i={},l="AutoRegisterInject",o={unversionedId:"RSCG-Examples/AutoRegisterInject_readme",id:"RSCG-Examples/AutoRegisterInject_readme",title:"AutoRegisterInject",description:"AutoRegisterInject, also referred to as ARI, is a C# source generator that will automatically create Microsoft.Extensions.DependencyInjection registrations for types marked with attributes.",source:"@site/docs/RSCG-Examples/AutoRegisterInject_readme.md",sourceDirName:"RSCG-Examples",slug:"/RSCG-Examples/AutoRegisterInject_readme",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/AutoRegisterInject_readme",draft:!1,tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"AutoDeconstruct",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/AutoDeconstruct_readme"},next:{title:"RoslynComponents",permalink:"/RSCG_Examples/v2/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme"}},s={},c=[{value:"Installation",id:"installation",level:2},{value:"Usage",id:"usage",level:2},{value:"Register as interface",id:"register-as-interface",level:3},{value:"Multiple assemblies",id:"multiple-assemblies",level:3},{value:"License",id:"license",level:2}],p={toc:c},u="wrapper";function d(e){let{components:t,...n}=e;return(0,a.kt)(u,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"autoregisterinject"},"AutoRegisterInject"),(0,a.kt)("p",null,"AutoRegisterInject, also referred to as ARI, is a C# source generator that will automatically create Microsoft.Extensions.DependencyInjection registrations for types marked with attributes."),(0,a.kt)("p",null,"This is a compile time alternative to reflection/assembly scanning for your injections or manually adding to the ",(0,a.kt)("inlineCode",{parentName:"p"},"ServiceCollection")," every time a new type needs to be registered."),(0,a.kt)("p",null,"For example:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"namespace MyProject;\n\n[RegisterScoped]\npublic class Foo { }\n")),(0,a.kt)("p",null,"will automatically generate an extension method called ",(0,a.kt)("inlineCode",{parentName:"p"},"AutoRegister()")," for ",(0,a.kt)("inlineCode",{parentName:"p"},"IServiceProvider"),", that registers ",(0,a.kt)("inlineCode",{parentName:"p"},"Foo"),", as scoped."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"internal IServiceCollection AutoRegister(this IServiceCollection serviceCollection)\n{\n serviceCollection.AddScoped();\n return serviceCollection;\n}\n")),(0,a.kt)("p",null,"In larger projects, dependency injection registration becomes tedious and in team situations can lead to merge conflicts which can be easily avoided."),(0,a.kt)("p",null,"AutoRegisterInject moves the responsibility of service registration to the owning type rather than external service collection configuration, giving control and oversight of the type that is going to be registered with the container."),(0,a.kt)("h2",{id:"installation"},"Installation"),(0,a.kt)("p",null,"Install the ",(0,a.kt)("a",{parentName:"p",href:"https://www.nuget.org/packages/AutoRegisterInject"},"Nuget")," package, and start decorating classes with ARI attributes."),(0,a.kt)("p",null,"Use ",(0,a.kt)("inlineCode",{parentName:"p"},"dotnet add package AutoRegisterInject")," or add a package reference manually:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-xml"},'\n')),(0,a.kt)("h2",{id:"usage"},"Usage"),(0,a.kt)("p",null,"Classes should be decorated with one of four attributes:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"[RegisterScoped]")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"[RegisterSingleton]")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"[RegisterTransient]")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"[RegisterHostedService]"))),(0,a.kt)("p",null,"Register a class:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"[RegisterScoped]\nclass Foo;\n")),(0,a.kt)("p",null,"and get the following output:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"serviceCollection.AddScoped();\n")),(0,a.kt)("p",null,"Update the service collection by invoking:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"var serviceCollection = new ServiceCollection();\nserviceCollection.AutoRegister();\nserviceCollection.BuildServiceProvider();\n")),(0,a.kt)("p",null,"You can now inject ",(0,a.kt)("inlineCode",{parentName:"p"},"Foo")," as a dependency and have this resolved as scoped."),(0,a.kt)("p",null,"Alternatively, you can register hosted services by:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"[RegisterHostedService]\nclass Foo;\n")),(0,a.kt)("p",null,"and get:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"serviceCollection.AddHostedService();\n")),(0,a.kt)("h3",{id:"register-as-interface"},"Register as interface"),(0,a.kt)("p",null,"Implement one or many interfaces on your target class:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"[RegisterTransient]\nclass Bar : IBar;\n")),(0,a.kt)("p",null,"and get the following output:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"serviceCollection.AddTransient();\n")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},"Important note:")," AutoRegisterInject is opinionated and ",(0,a.kt)("inlineCode",{parentName:"p"},"Bar")," will only be registered with its implemented interface. ARI will ",(0,a.kt)("strong",{parentName:"p"},"not")," register ",(0,a.kt)("inlineCode",{parentName:"p"},"Bar"),". ",(0,a.kt)("inlineCode",{parentName:"p"},"Bar")," will always need to be resolved from ",(0,a.kt)("inlineCode",{parentName:"p"},"IBar")," in your code."),(0,a.kt)("p",null,"Implementing multiple interfaces will have the implementing type be registered for each distinct interface."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"[RegisterTransient]\nclass Bar : IBar, IFoo, IBaz;\n")),(0,a.kt)("p",null,"will output the following:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"serviceCollection.AddTransient();\nserviceCollection.AddTransient();\nserviceCollection.AddTransient();\n")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},"Important note:")," AutoRegisterInject is opinionated and ",(0,a.kt)("inlineCode",{parentName:"p"},"Bar")," will only be registered with its implemented interfaces. ARI will ",(0,a.kt)("strong",{parentName:"p"},"not")," register ",(0,a.kt)("inlineCode",{parentName:"p"},"Bar"),". ",(0,a.kt)("inlineCode",{parentName:"p"},"Bar")," will always need to be resolved from ",(0,a.kt)("inlineCode",{parentName:"p"},"IBar"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"IFoo")," or ",(0,a.kt)("inlineCode",{parentName:"p"},"IBaz")," in your code."),(0,a.kt)("h3",{id:"multiple-assemblies"},"Multiple assemblies"),(0,a.kt)("p",null,"In addition to the ",(0,a.kt)("inlineCode",{parentName:"p"},"AutoRegister")," extension method, every assembly that AutoRegisterInject is a part of, a ",(0,a.kt)("inlineCode",{parentName:"p"},"AutoRegisterFromAssemblyName")," will be generated. This allows you to configure your service collection from one, main, executing assembly."),(0,a.kt)("p",null,"Given 3 assemblies, ",(0,a.kt)("inlineCode",{parentName:"p"},"MyProject.Main"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"MyProject.Services"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"MyProject.Data"),", you can configure the ",(0,a.kt)("inlineCode",{parentName:"p"},"ServiceCollection")," as such:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-cs"},"var serviceCollection = new ServiceCollection();\nserviceCollection.AutoRegisterFromMyProjectMain();\nserviceCollection.AutoRegisterFromMyProjectServices();\nserviceCollection.AutoRegisterFromMyProjectData();\nserviceCollection.BuildServiceProvider();\n")),(0,a.kt)("p",null,"AutoRegisterInject will remove illegal characters from assembly names in order to generate legal C# method names. ",(0,a.kt)("inlineCode",{parentName:"p"},","),", ",(0,a.kt)("inlineCode",{parentName:"p"},".")," and ",(0,a.kt)("inlineCode",{parentName:"p"}," ")," will be removed."),(0,a.kt)("h2",{id:"license"},"License"),(0,a.kt)("p",null,"AutoRegisterInject is MIT licensed. Do with it what you please under the terms of MIT."))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/docs/v2/assets/js/main.921ea347.js b/docs/v2/assets/js/main.921ea347.js new file mode 100644 index 000000000..6aa522782 --- /dev/null +++ b/docs/v2/assets/js/main.921ea347.js @@ -0,0 +1,2 @@ +/*! For license information please see main.921ea347.js.LICENSE.txt */ +(self.webpackChunkrscg_examples=self.webpackChunkrscg_examples||[]).push([[179],{997:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(7294),o=n(7462),a=n(8356),i=n.n(a),s=n(6887);const l={"0174bc3d":[()=>n.e(2673).then(n.bind(n,5800)),"@site/docs/RSCG-Examples/AutoDeconstruct_readme.md",5800],"01a85c17":[()=>Promise.all([n.e(532),n.e(4013)]).then(n.bind(n,2864)),"@theme/BlogTagsListPage",2864],"01ce1798":[()=>n.e(5090).then(n.bind(n,5629)),"@site/docs/RSCG-Examples/RSCG_Utils_readme.md",5629],"04e19f73":[()=>n.e(9769).then(n.t.bind(n,5479,19)),"~blog/default/rscg-examples-v-2-blog-tags-hola-9d0-list.json",5479],"05010437":[()=>n.e(6338).then(n.t.bind(n,6410,19)),"~blog/default/rscg-examples-v-2-blog-tags-facebook-2be-list.json",6410],"055152ce":[()=>n.e(5426).then(n.bind(n,9974)),"@site/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator.md",9974],"05ac8088":[()=>Promise.all([n.e(532),n.e(3754),n.e(2047)]).then(n.bind(n,7633)),"@site/docs/RSCG-Examples/Vogen.md",7633],"0a5234d1":[()=>n.e(456).then(n.t.bind(n,6467,19)),"~blog/default/rscg-examples-v-2-blog-tags-facebook-2be.json",6467],"0c9f8a01":[()=>n.e(604).then(n.t.bind(n,2665,19)),"~blog/default/rscg-examples-v-2-blog-tags-hello-bb0-list.json",2665],"0e384e19":[()=>n.e(9671).then(n.bind(n,1039)),"@site/docs/intro.md",1039],"0f7dc261":[()=>Promise.all([n.e(532),n.e(3754),n.e(2128)]).then(n.bind(n,9779)),"@site/docs/RSCG-Examples/AutoDeconstruct.md",9779],"0fe2190d":[()=>n.e(7771).then(n.bind(n,9204)),"@site/docs/XDocusaurus/create-a-blog-post.md",9204],"122eb8d1":[()=>Promise.all([n.e(532),n.e(3754),n.e(1650)]).then(n.bind(n,4335)),"@site/docs/RSCG-Examples/Zomp.md",4335],"12b7883a":[()=>n.e(1234).then(n.bind(n,9705)),"@site/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator.md",9705],"12fc83b3":[()=>Promise.all([n.e(532),n.e(3754),n.e(8692)]).then(n.bind(n,2883)),"@site/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator.md",2883],"13a7b74d":[()=>n.e(6441).then(n.bind(n,8258)),"@site/docs/RSCG-Examples/DeeDee_readme.md",8258],"14eb3368":[()=>Promise.all([n.e(532),n.e(9817)]).then(n.bind(n,853)),"@theme/DocCategoryGeneratedIndexPage",853],"14f5d00b":[()=>n.e(3407).then(n.bind(n,1273)),"@site/docs/RSCG-Examples/dunet_readme.md",1273],"1743b147":[()=>n.e(2862).then(n.bind(n,5573)),"@site/docs/RSCG-Examples/ApparatusAOT_readme.md",5573],17896441:[()=>Promise.all([n.e(532),n.e(1013),n.e(7918)]).then(n.bind(n,2889)),"@theme/DocItem",2889],"1a6581ff":[()=>Promise.all([n.e(532),n.e(3754),n.e(8965)]).then(n.bind(n,8041)),"@site/docs/RSCG-Examples/Breezy.md",8041],"1be78505":[()=>Promise.all([n.e(532),n.e(9514)]).then(n.bind(n,1299)),"@theme/DocPage",1299],"1df93b7f":[()=>Promise.all([n.e(532),n.e(3237)]).then(n.bind(n,2833)),"@site/src/pages/index.tsx",2833],"1f391b9e":[()=>Promise.all([n.e(532),n.e(1013),n.e(3085)]).then(n.bind(n,6252)),"@theme/MDXPage",6252],"22534aa8":[()=>n.e(4768).then(n.t.bind(n,8315,19)),"~blog/default/rscg-examples-v-2-blog-tags-docusaurus-6a8-list.json",8315],"22c14bd2":[()=>n.e(4940).then(n.bind(n,455)),"@site/docs/RSCG-Examples/Immutype_readme.md",455],"25009f15":[()=>n.e(7058).then(n.bind(n,707)),"@site/docs/RSCG-Examples/RSCG_FunctionsWithDI_readme.md",707],"27f8f2e8":[()=>n.e(9845).then(n.t.bind(n,5763,19)),"~docs/default/category-rscg-examplesv-2-docs-tutorialsidebar-category-rscg-examples-ac9.json",5763],28746397:[()=>Promise.all([n.e(532),n.e(3754),n.e(9541)]).then(n.bind(n,7650)),"@site/docs/RSCG-Examples/CommunityToolkit.Mvvm.md",7650],"29d5c8d7":[()=>n.e(2061).then(n.bind(n,9047)),"@site/docs/RSCG-Examples/PartiallyApplied_readme.md",9047],"2cc79e91":[()=>Promise.all([n.e(532),n.e(3754),n.e(3514)]).then(n.bind(n,7290)),"@site/docs/RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators.md",7290],"2fe2114f":[()=>Promise.all([n.e(532),n.e(3754),n.e(647)]).then(n.bind(n,4332)),"@site/docs/RSCG-Examples/MorrisMoxy.md",4332],"328cada0":[()=>Promise.all([n.e(532),n.e(3754),n.e(433)]).then(n.bind(n,9062)),"@site/docs/RSCG-Examples/RSCG_FunctionsWithDI.md",9062],"33ab10c3":[()=>Promise.all([n.e(532),n.e(3754),n.e(2675)]).then(n.bind(n,8379)),"@site/docs/RSCG-Examples/Immutype.md",8379],"34590ee2":[()=>n.e(1085).then(n.t.bind(n,5411,19)),"~docs/default/category-rscg-examplesv-2-docs-tutorialsidebar-category-microsoft-examples-fc1.json",5411],36246753:[()=>Promise.all([n.e(532),n.e(3754),n.e(4866)]).then(n.bind(n,1784)),"@site/docs/RSCG-Examples/spreadcheetah.md",1784],"36c9b43d":[()=>n.e(9433).then(n.bind(n,2803)),"@site/docs/RSCG-Examples/spreadcheetah_readme.md",2803],"379dabd4":[()=>n.e(8632).then(n.bind(n,8667)),"@site/docs/v1.md",8667],"393be207":[()=>n.e(7414).then(n.bind(n,5049)),"@site/src/pages/markdown-page.md",5049],"3cbefd88":[()=>n.e(5953).then(n.bind(n,550)),"@site/docs/NoExamples.md",550],"3d8d21df":[()=>n.e(6535).then(n.bind(n,9029)),"@site/docs/about.md",9029],"3df6c009":[()=>Promise.all([n.e(532),n.e(3754),n.e(2396)]).then(n.bind(n,4700)),"@site/docs/RSCG-Examples/ProxyGen.md",4700],"3e739240":[()=>n.e(9061).then(n.t.bind(n,9033,19)),"~blog/default/rscg-examples-v-2-blog-tags-hola-9d0.json",9033],"3f748d9d":[()=>n.e(5564).then(n.bind(n,9254)),"@site/docs/RSCG-Examples/RSCG_TimeBombComment_readme.md",9254],"3fed8a26":[()=>n.e(1403).then(n.bind(n,4725)),"@site/docs/RSCG-Examples/Zomp_readme.md",4725],"400fcb2f":[()=>Promise.all([n.e(532),n.e(3754),n.e(6606)]).then(n.bind(n,2598)),"@site/docs/RSCG-Examples/EmbedResourceCSharp.md",2598],"421d36f1":[()=>n.e(9935).then(n.t.bind(n,3769,19)),"/home/runner/work/RSCG_Examples/RSCG_Examples/v2/rscg_examples_site/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json",3769],"4a39ce15":[()=>n.e(6628).then(n.bind(n,5410)),"@site/docs/RSCG-Examples/EmbedResourceCSharp_readme.md",5410],"4acf0422":[()=>n.e(3836).then(n.bind(n,2222)),"@site/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme.md",2222],"4cce87f9":[()=>Promise.all([n.e(532),n.e(3754),n.e(5162)]).then(n.bind(n,3878)),"@site/docs/RSCG-Examples/SkinnyControllersCommon.md",3878],"4faf0857":[()=>n.e(2188).then(n.bind(n,5413)),"@site/docs/RSCG-Examples/Mediator_readme.md",5413],51534691:[()=>Promise.all([n.e(532),n.e(3754),n.e(614)]).then(n.bind(n,6836)),"@site/docs/RSCG-Examples/DeeDee.md",6836],"54359f52":[()=>Promise.all([n.e(532),n.e(3754),n.e(3001)]).then(n.bind(n,8316)),"@site/docs/RSCG-Examples/mapperly.md",8316],"560e0995":[()=>n.e(3686).then(n.bind(n,7406)),"@site/docs/RSCG-Examples/System.Runtime.InteropServices_readme.md",7406],"56efebf8":[()=>n.e(2042).then(n.bind(n,9071)),"@site/docs/RSCG-Examples/SkinnyControllersCommon_readme.md",9071],59362658:[()=>n.e(2267).then(n.bind(n,1910)),"@site/blog/2021-08-01-mdx-blog-post.mdx",1910],"59f507f3":[()=>Promise.all([n.e(532),n.e(3754),n.e(9134)]).then(n.bind(n,4390)),"@site/docs/RSCG-Examples/RSCG_Utils.md",4390],"5b198698":[()=>n.e(7168).then(n.bind(n,2650)),"@site/docs/RSCG-Examples/EnumClass_readme.md",2650],"5b8a2f64":[()=>n.e(1114).then(n.bind(n,484)),"@site/docs/XDocusaurus/translate-your-site.md",484],"5df699ac":[()=>n.e(4069).then(n.bind(n,4930)),"@site/docs/RSCG-Examples/mapperly_readme.md",4930],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,6809)),"@generated/docusaurus.config",6809],"60892f8d":[()=>Promise.all([n.e(532),n.e(3754),n.e(8796)]).then(n.bind(n,4043)),"@site/docs/RSCG-Examples/AutoRegisterInject.md",4043],"618c2244":[()=>n.e(5598).then(n.bind(n,3137)),"@site/docs/RSCG-Examples/MorrisMoxy_readme.md",3137],"63f2c6f7":[()=>Promise.all([n.e(532),n.e(3754),n.e(9327)]).then(n.bind(n,5779)),"@site/docs/RSCG-Examples/RSCG_AMS.md",5779],"64d7634c":[()=>Promise.all([n.e(532),n.e(3754),n.e(989)]).then(n.bind(n,6542)),"@site/docs/RSCG-Examples/Podimo.ConstEmbed.md",6542],"65bf3f83":[()=>Promise.all([n.e(532),n.e(3754),n.e(5789)]).then(n.bind(n,6112)),"@site/docs/RSCG-Examples/EnumClass.md",6112],"6656f2d8":[()=>n.e(2060).then(n.bind(n,5595)),"@site/docs/RSCG-Examples/Podimo.ConstEmbed_readme.md",5595],"685d9df5":[()=>Promise.all([n.e(532),n.e(3754),n.e(6379)]).then(n.bind(n,8616)),"@site/docs/RSCG-Examples/RazorBlade.md",8616],"6875c492":[()=>Promise.all([n.e(532),n.e(1013),n.e(1791),n.e(8610)]).then(n.bind(n,4883)),"@theme/BlogTagsPostsPage",4883],"69e0db5a":[()=>n.e(4377).then(n.bind(n,2661)),"@site/docs/RSCG-Examples/Matryoshki_readme.md",2661],"6aea91c0":[()=>n.e(6277).then(n.bind(n,7612)),"@site/docs/RSCG-Examples/RSCG_AMS_readme.md",7612],"6bd82bad":[()=>Promise.all([n.e(532),n.e(3754),n.e(401)]).then(n.bind(n,1696)),"@site/docs/RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator.md",1696],"6c61e920":[()=>n.e(995).then(n.bind(n,3576)),"@site/docs/RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator_readme.md",3576],"708704fc":[()=>Promise.all([n.e(532),n.e(3754),n.e(757)]).then(n.bind(n,3963)),"@site/docs/RSCG-Examples/dunet.md",3963],71758229:[()=>n.e(4620).then(n.bind(n,3353)),"@site/docs/Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator.md",3353],"71c0a22a":[()=>Promise.all([n.e(532),n.e(3754),n.e(5658)]).then(n.bind(n,2203)),"@site/docs/RSCG-Examples/Mediator.md",2203],"73664a40":[()=>n.e(4036).then(n.bind(n,6866)),"@site/blog/2019-05-29-long-blog-post.md",6866],"73dd5323":[()=>n.e(6891).then(n.bind(n,5967)),"@site/docs/RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators_readme.md",5967],"7661071f":[()=>n.e(9642).then(n.bind(n,1362)),"@site/blog/2021-08-26-welcome/index.md?truncated=true",1362],"7a784411":[()=>n.e(6437).then(n.bind(n,1682)),"@site/docs/XDocusaurus/manage-docs-versions.md",1682],"7b374527":[()=>n.e(1729).then(n.bind(n,6950)),"@site/docs/RSCG-Examples/Vogen_readme.md",6950],"7bb64ebf":[()=>n.e(2838).then(n.bind(n,4711)),"@site/docs/RSCG-Examples/MemoryPack_readme.md",4711],"7deabe9b":[()=>n.e(6068).then(n.bind(n,8761)),"@site/docs/RSCG-Examples/Gedaq_readme.md",8761],"7f88bb64":[()=>n.e(5610).then(n.bind(n,2250)),"@site/docs/RSCG-Examples/RazorBlade_readme.md",2250],"814f3328":[()=>n.e(2535).then(n.t.bind(n,5641,19)),"~blog/default/blog-post-list-prop-default.json",5641],"820d8c7f":[()=>n.e(9342).then(n.t.bind(n,7138,19)),"~blog/default/rscg-examples-v-2-blog-2e2.json",7138],"822e4b2d":[()=>n.e(3091).then(n.t.bind(n,7813,19)),"~blog/default/rscg-examples-v-2-blog-tags-docusaurus-6a8.json",7813],"82e17084":[()=>n.e(4667).then(n.bind(n,3330)),"@site/docs/RSCG-Examples/System.Text.RegularExpressions_readme.md",3330],"8717b14a":[()=>n.e(948).then(n.bind(n,8812)),"@site/blog/2019-05-29-long-blog-post.md?truncated=true",8812],"890f4a28":[()=>n.e(2677).then(n.t.bind(n,9755,19)),"~docs/default/category-rscg-examplesv-2-docs-tutorialsidebar-category-docusaurus-fa0.json",9755],"899279a7":[()=>Promise.all([n.e(532),n.e(3754),n.e(1429)]).then(n.bind(n,4966)),"@site/docs/RSCG-Examples/System.Runtime.InteropServices.md",4966],"904a4183":[()=>n.e(5205).then(n.bind(n,8272)),"@site/docs/RSCG-Examples/ProxyGen_readme.md",8272],"906d0d20":[()=>n.e(7678).then(n.bind(n,794)),"@site/docs/XDocusaurus/create-a-page.md",794],"916cb886":[()=>Promise.all([n.e(532),n.e(3754),n.e(944)]).then(n.bind(n,2429)),"@site/docs/RSCG-Examples/AutoCtor.md",2429],"925b3f96":[()=>n.e(9003).then(n.bind(n,3858)),"@site/blog/2019-05-28-first-blog-post.md?truncated=true",3858],"9330328b":[()=>n.e(8223).then(n.t.bind(n,5680,19)),"~blog/default/rscg-examples-v-2-blog-archive-cdc.json",5680],"935f2afb":[()=>n.e(53).then(n.t.bind(n,1109,19)),"~docs/default/version-current-metadata-prop-751.json",1109],"939060fc":[()=>Promise.all([n.e(532),n.e(3754),n.e(1027)]).then(n.bind(n,2855)),"@site/docs/RSCG-Examples/RSCG_TimeBombComment.md",2855],97425823:[()=>n.e(8033).then(n.bind(n,5638)),"@site/docs/XDocusaurus/create-a-document.md",5638],"97aaab5f":[()=>Promise.all([n.e(532),n.e(3754),n.e(7093)]).then(n.bind(n,4290)),"@site/docs/RSCG-Examples/Refit.md",4290],"9d97b306":[()=>Promise.all([n.e(532),n.e(3754),n.e(8040)]).then(n.bind(n,2104)),"@site/docs/RSCG-Examples/GeneratorEquals.md",2104],"9e4087bc":[()=>n.e(3608).then(n.bind(n,8151)),"@theme/BlogArchivePage",8151],a01309b2:[()=>n.e(3897).then(n.bind(n,4425)),"@site/docs/RSCG-Examples/Rocks_readme.md",4425],a0398245:[()=>n.e(4947).then(n.bind(n,2401)),"@site/docs/RSCG-Examples/CommunityToolkit.Mvvm_readme.md",2401],a084d1b4:[()=>n.e(8230).then(n.bind(n,3831)),"@site/docs/indexRSCG.md",3831],a0ad4d69:[()=>Promise.all([n.e(532),n.e(3754),n.e(301)]).then(n.bind(n,7494)),"@site/docs/RSCG-Examples/PartiallyApplied.md",7494],a193b41d:[()=>Promise.all([n.e(532),n.e(3754),n.e(4197)]).then(n.bind(n,7212)),"@site/docs/RSCG-Examples/Matryoshki.md",7212],a6aa9e1f:[()=>Promise.all([n.e(532),n.e(1013),n.e(1791),n.e(3089)]).then(n.bind(n,9928)),"@theme/BlogListPage",9928],a9786e42:[()=>n.e(4902).then(n.bind(n,9186)),"@site/docs/Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator.md",9186],b05eb828:[()=>Promise.all([n.e(532),n.e(3754),n.e(3470)]).then(n.bind(n,5255)),"@site/docs/RSCG-Examples/System.Text.RegularExpressions.md",5255],b587bdf3:[()=>n.e(4898).then(n.bind(n,7794)),"@site/docs/Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator.md",7794],b793d595:[()=>n.e(6680).then(n.bind(n,7597)),"@site/docs/Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator.md",7597],b8f15389:[()=>n.e(7138).then(n.bind(n,1735)),"@site/docs/RSCG-Examples/Lombok.NET_readme.md",1735],bd01608d:[()=>n.e(6400).then(n.bind(n,9156)),"@site/docs/XDocusaurus/congratulations.md",9156],c0d4f99c:[()=>n.e(3103).then(n.t.bind(n,6384,19)),"~blog/default/rscg-examples-v-2-blog-tags-hello-bb0.json",6384],c1baf4a7:[()=>n.e(3725).then(n.bind(n,1810)),"@site/docs/RSCG-Examples/Breezy_readme.md",1810],c2968679:[()=>Promise.all([n.e(532),n.e(3754),n.e(6685)]).then(n.bind(n,608)),"@site/docs/RSCG-Examples/NetEscapades.EnumGenerators.md",608],c470e94a:[()=>Promise.all([n.e(532),n.e(3754),n.e(4955)]).then(n.bind(n,9889)),"@site/docs/RSCG-Examples/MemoryPack.md",9889],c7b12899:[()=>n.e(3071).then(n.t.bind(n,6944,19)),"~blog/default/rscg-examples-v-2-blog-tags-tags-ccd.json",6944],cb4a2df6:[()=>n.e(8131).then(n.bind(n,2373)),"@site/docs/RSCG-Examples/System.Text.Json_readme.md",2373],ccc49370:[()=>Promise.all([n.e(532),n.e(1013),n.e(1791),n.e(6103)]).then(n.bind(n,324)),"@theme/BlogPostPage",324],cd59916a:[()=>n.e(7395).then(n.bind(n,5124)),"@site/docs/RSCG-Examples/Refit_readme.md",5124],cdbf4c32:[()=>Promise.all([n.e(532),n.e(3754),n.e(6060)]).then(n.bind(n,2044)),"@site/docs/RSCG-Examples/Lombok.NET.md",2044],cee3c03b:[()=>Promise.all([n.e(532),n.e(3754),n.e(3264)]).then(n.bind(n,3655)),"@site/docs/RSCG-Examples/RSCG_Static.md",3655],cf621d9e:[()=>n.e(4001).then(n.t.bind(n,4469,19)),"/home/runner/work/RSCG_Examples/RSCG_Examples/v2/rscg_examples_site/.docusaurus/docusaurus-plugin-content-blog/default/plugin-route-context-module-100.json",4469],d0e12c23:[()=>Promise.all([n.e(532),n.e(3754),n.e(9900)]).then(n.bind(n,6069)),"@site/docs/RSCG-Examples/Gedaq.md",6069],d13097c2:[()=>n.e(1756).then(n.bind(n,8537)),"@site/docs/RSCG-Examples/FastGenericNew_readme.md",8537],d40cb628:[()=>n.e(3822).then(n.bind(n,5486)),"@site/docs/RSCG-Examples/GeneratorEquals_readme.md",5486],d589fafb:[()=>Promise.all([n.e(532),n.e(3754),n.e(2998)]).then(n.bind(n,2542)),"@site/docs/RSCG-Examples/Rocks.md",2542],d6979b02:[()=>n.e(5531).then(n.bind(n,66)),"@site/docs/RSCG-Examples/AutoCtor_readme.md",66],d80b50b8:[()=>Promise.all([n.e(532),n.e(3754),n.e(9325)]).then(n.bind(n,7428)),"@site/docs/RSCG-Examples/ApparatusAOT.md",7428],d9f32620:[()=>n.e(1914).then(n.bind(n,2152)),"@site/blog/2021-08-26-welcome/index.md",2152],da1b03bf:[()=>Promise.all([n.e(532),n.e(3754),n.e(8104)]).then(n.bind(n,2304)),"@site/docs/RSCG-Examples/System.Text.Json.md",2304],daaee7ee:[()=>n.e(9848).then(n.bind(n,7156)),"@site/docs/RSCG-Examples/ThisAssembly_readme.md",7156],dab71682:[()=>n.e(1015).then(n.bind(n,955)),"@site/docs/RSCG-Examples/NetEscapades.EnumGenerators_readme.md",955],daf0edfc:[()=>n.e(717).then(n.bind(n,2061)),"@site/docs/RSCG-Examples/QuickConstructor_readme.md",2061],e0d5d86a:[()=>Promise.all([n.e(532),n.e(3754),n.e(8814)]).then(n.bind(n,1410)),"@site/docs/RSCG-Examples/Microsoft.Extensions.Logging.md",1410],e0f2cae2:[()=>n.e(9956).then(n.bind(n,7893)),"@site/docs/XDocusaurus/markdown-features.mdx",7893],e273c56f:[()=>n.e(2362).then(n.bind(n,8502)),"@site/blog/2019-05-28-first-blog-post.md",8502],e5ad04d1:[()=>n.e(5863).then(n.bind(n,8444)),"@site/docs/RSCG-Examples/AutoRegisterInject_readme.md",8444],e7bbf1d8:[()=>Promise.all([n.e(532),n.e(3754),n.e(4187)]).then(n.bind(n,3008)),"@site/docs/RSCG-Examples/ThisAssembly.md",3008],e7f9498b:[()=>n.e(8833).then(n.t.bind(n,5745,19)),"/home/runner/work/RSCG_Examples/RSCG_Examples/v2/rscg_examples_site/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json",5745],e9c22185:[()=>Promise.all([n.e(532),n.e(3754),n.e(3569)]).then(n.bind(n,5139)),"@site/docs/RSCG-Examples/QuickConstructor.md",5139],ecbdd983:[()=>n.e(8759).then(n.bind(n,5024)),"@site/docs/RSCG-Examples/Microsoft.Extensions.Logging_readme.md",5024],f00458f8:[()=>Promise.all([n.e(532),n.e(3754),n.e(3954)]).then(n.bind(n,13)),"@site/docs/RSCG-Examples/FastGenericNew.md",13],f151db08:[()=>n.e(7390).then(n.bind(n,2466)),"@site/docs/XDocusaurus/deploy-your-site.md",2466],f4f34a3a:[()=>n.e(8636).then(n.bind(n,6712)),"@site/blog/2021-08-01-mdx-blog-post.mdx?truncated=true",6712],fd573be5:[()=>n.e(8587).then(n.bind(n,3630)),"@site/docs/RSCG-Examples/RSCG_Static_readme.md",3630]};function c(e){let{error:t,retry:n,pastDelay:o}=e;return t?r.createElement("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"}},r.createElement("p",null,String(t)),r.createElement("div",null,r.createElement("button",{type:"button",onClick:n},"Retry"))):o?r.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"}},r.createElement("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb"},r.createElement("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2"},r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"8"},r.createElement("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"}))))):null}var u=n(5304),d=n(9656);function p(e,t){if("*"===e)return i()({loading:c,loader:()=>n.e(4248).then(n.bind(n,4248)),modules:["@theme/NotFound"],webpack:()=>[4248],render(e,t){const n=e.default;return r.createElement(d.z,{value:{plugin:{name:"native",id:"default"}}},r.createElement(n,t))}});const a=s[`${e}-${t}`],p={},f=[],m=[],h=(0,u.Z)(a);return Object.entries(h).forEach((e=>{let[t,n]=e;const r=l[n];r&&(p[t]=r[0],f.push(r[1]),m.push(r[2]))})),i().Map({loading:c,loader:p,modules:f,webpack:()=>m,render(t,n){const i=JSON.parse(JSON.stringify(a));Object.entries(t).forEach((t=>{let[n,r]=t;const o=r.default;if(!o)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof o&&"function"!=typeof o||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{o[e]=r[e]}));let a=i;const s=n.split(".");s.slice(0,-1).forEach((e=>{a=a[e]})),a[s[s.length-1]]=o}));const s=i.__comp;delete i.__comp;const l=i.__context;return delete i.__context,r.createElement(d.z,{value:l},r.createElement(s,(0,o.Z)({},i,n)))}})}const f=[{path:"/RSCG_Examples/v2/blog",component:p("/RSCG_Examples/v2/blog","e83"),exact:!0},{path:"/RSCG_Examples/v2/blog/archive",component:p("/RSCG_Examples/v2/blog/archive","248"),exact:!0},{path:"/RSCG_Examples/v2/blog/first-blog-post",component:p("/RSCG_Examples/v2/blog/first-blog-post","385"),exact:!0},{path:"/RSCG_Examples/v2/blog/long-blog-post",component:p("/RSCG_Examples/v2/blog/long-blog-post","4e3"),exact:!0},{path:"/RSCG_Examples/v2/blog/mdx-blog-post",component:p("/RSCG_Examples/v2/blog/mdx-blog-post","980"),exact:!0},{path:"/RSCG_Examples/v2/blog/tags",component:p("/RSCG_Examples/v2/blog/tags","5d4"),exact:!0},{path:"/RSCG_Examples/v2/blog/tags/docusaurus",component:p("/RSCG_Examples/v2/blog/tags/docusaurus","e68"),exact:!0},{path:"/RSCG_Examples/v2/blog/tags/facebook",component:p("/RSCG_Examples/v2/blog/tags/facebook","033"),exact:!0},{path:"/RSCG_Examples/v2/blog/tags/hello",component:p("/RSCG_Examples/v2/blog/tags/hello","47e"),exact:!0},{path:"/RSCG_Examples/v2/blog/tags/hola",component:p("/RSCG_Examples/v2/blog/tags/hola","9df"),exact:!0},{path:"/RSCG_Examples/v2/blog/welcome",component:p("/RSCG_Examples/v2/blog/welcome","b15"),exact:!0},{path:"/RSCG_Examples/v2/markdown-page",component:p("/RSCG_Examples/v2/markdown-page","e6d"),exact:!0},{path:"/RSCG_Examples/v2/docs",component:p("/RSCG_Examples/v2/docs","9fd"),routes:[{path:"/RSCG_Examples/v2/docs/about",component:p("/RSCG_Examples/v2/docs/about","88f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/ApparatusAOT",component:p("/RSCG_Examples/v2/docs/ApparatusAOT","e18"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/AutoCtor",component:p("/RSCG_Examples/v2/docs/AutoCtor","ba9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/AutoDeconstruct",component:p("/RSCG_Examples/v2/docs/AutoDeconstruct","e70"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/AutoRegisterInject",component:p("/RSCG_Examples/v2/docs/AutoRegisterInject","0e3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator",component:p("/RSCG_Examples/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator","0a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Breezy",component:p("/RSCG_Examples/v2/docs/Breezy","764"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/category/docusaurus",component:p("/RSCG_Examples/v2/docs/category/docusaurus","97b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/category/microsoft-examples",component:p("/RSCG_Examples/v2/docs/category/microsoft-examples","e52"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/category/rscg-examples",component:p("/RSCG_Examples/v2/docs/category/rscg-examples","8b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/CommunityToolkit.Mvvm",component:p("/RSCG_Examples/v2/docs/CommunityToolkit.Mvvm","4fd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/DeeDee",component:p("/RSCG_Examples/v2/docs/DeeDee","ae1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/dunet",component:p("/RSCG_Examples/v2/docs/dunet","97b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/EmbedResourceCSharp",component:p("/RSCG_Examples/v2/docs/EmbedResourceCSharp","ed8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/EnumClass",component:p("/RSCG_Examples/v2/docs/EnumClass","901"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/FastGenericNew",component:p("/RSCG_Examples/v2/docs/FastGenericNew","51a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Gedaq",component:p("/RSCG_Examples/v2/docs/Gedaq","aa7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/GeneratorEquals",component:p("/RSCG_Examples/v2/docs/GeneratorEquals","285"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Immutype",component:p("/RSCG_Examples/v2/docs/Immutype","dc8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/intro",component:p("/RSCG_Examples/v2/docs/intro","fb4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/List-of-RSCG",component:p("/RSCG_Examples/v2/docs/List-of-RSCG","7aa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Lombok.NET",component:p("/RSCG_Examples/v2/docs/Lombok.NET","86f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/mapperly",component:p("/RSCG_Examples/v2/docs/mapperly","97f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Matryoshki",component:p("/RSCG_Examples/v2/docs/Matryoshki","f00"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Mediator",component:p("/RSCG_Examples/v2/docs/Mediator","415"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/MemoryPack",component:p("/RSCG_Examples/v2/docs/MemoryPack","8e1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Microsoft.Extensions.Logging",component:p("/RSCG_Examples/v2/docs/Microsoft.Extensions.Logging","3ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Microsoft.Interop.JavaScript.JSImportGenerator",component:p("/RSCG_Examples/v2/docs/Microsoft.Interop.JavaScript.JSImportGenerator","b9c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Microsoft.NET.Sdk.Razor.SourceGenerators",component:p("/RSCG_Examples/v2/docs/Microsoft.NET.Sdk.Razor.SourceGenerators","9b8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator",component:p("/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator","c7c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator",component:p("/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator","073"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator",component:p("/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator","74d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator",component:p("/RSCG_Examples/v2/docs/Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator","df0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator",component:p("/RSCG_Examples/v2/docs/Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator","338"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator",component:p("/RSCG_Examples/v2/docs/Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator","838"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/MorrisMoxy",component:p("/RSCG_Examples/v2/docs/MorrisMoxy","f95"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/NetEscapades.EnumGenerators",component:p("/RSCG_Examples/v2/docs/NetEscapades.EnumGenerators","326"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/NoExamples",component:p("/RSCG_Examples/v2/docs/NoExamples","867"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/PartiallyApplied",component:p("/RSCG_Examples/v2/docs/PartiallyApplied","841"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Podimo.ConstEmbed",component:p("/RSCG_Examples/v2/docs/Podimo.ConstEmbed","244"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/ProxyGen",component:p("/RSCG_Examples/v2/docs/ProxyGen","d0e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/QuickConstructor",component:p("/RSCG_Examples/v2/docs/QuickConstructor","517"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RazorBlade",component:p("/RSCG_Examples/v2/docs/RazorBlade","836"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Refit",component:p("/RSCG_Examples/v2/docs/Refit","e90"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Rocks",component:p("/RSCG_Examples/v2/docs/Rocks","15f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG_AMS",component:p("/RSCG_Examples/v2/docs/RSCG_AMS","043"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG_FunctionsWithDI",component:p("/RSCG_Examples/v2/docs/RSCG_FunctionsWithDI","0a3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG_Static",component:p("/RSCG_Examples/v2/docs/RSCG_Static","ba9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG_TimeBombComment",component:p("/RSCG_Examples/v2/docs/RSCG_TimeBombComment","101"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG_Utils",component:p("/RSCG_Examples/v2/docs/RSCG_Utils","842"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/ApparatusAOT_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/ApparatusAOT_readme","e7d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/AutoCtor_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/AutoCtor_readme","ecb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/AutoDeconstruct_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/AutoDeconstruct_readme","da1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/AutoRegisterInject_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/AutoRegisterInject_readme","f6e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme","eb2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Breezy_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Breezy_readme","89d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/CommunityToolkit.Mvvm_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/CommunityToolkit.Mvvm_readme","241"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/DeeDee_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/DeeDee_readme","365"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/dunet_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/dunet_readme","3f8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/EmbedResourceCSharp_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/EmbedResourceCSharp_readme","93a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/EnumClass_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/EnumClass_readme","874"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/FastGenericNew_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/FastGenericNew_readme","fbc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Gedaq_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Gedaq_readme","493"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/GeneratorEquals_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/GeneratorEquals_readme","ba1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Immutype_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Immutype_readme","f9a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Lombok.NET_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Lombok.NET_readme","74d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/mapperly_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/mapperly_readme","2e7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Matryoshki_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Matryoshki_readme","aca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Mediator_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Mediator_readme","12b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/MemoryPack_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/MemoryPack_readme","c3a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.Extensions.Logging_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.Extensions.Logging_readme","bce"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator_readme","c2c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators_readme","fe2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/MorrisMoxy_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/MorrisMoxy_readme","cd9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/NetEscapades.EnumGenerators_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/NetEscapades.EnumGenerators_readme","fbc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/PartiallyApplied_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/PartiallyApplied_readme","2d7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Podimo.ConstEmbed_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Podimo.ConstEmbed_readme","b07"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/ProxyGen_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/ProxyGen_readme","cfb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/QuickConstructor_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/QuickConstructor_readme","688"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/RazorBlade_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/RazorBlade_readme","5c5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Refit_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Refit_readme","145"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Rocks_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Rocks_readme","629"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_AMS_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_AMS_readme","bf0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_FunctionsWithDI_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_FunctionsWithDI_readme","746"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_Static_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_Static_readme","ecd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_TimeBombComment_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_TimeBombComment_readme","292"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_Utils_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_Utils_readme","0e4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/SkinnyControllersCommon_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/SkinnyControllersCommon_readme","d29"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/spreadcheetah_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/spreadcheetah_readme","b1d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/System.Runtime.InteropServices_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/System.Runtime.InteropServices_readme","033"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/System.Text.Json_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/System.Text.Json_readme","f81"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/System.Text.RegularExpressions_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/System.Text.RegularExpressions_readme","edf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/ThisAssembly_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/ThisAssembly_readme","c3e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Vogen_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Vogen_readme","14d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/RSCG-Examples/Zomp_readme",component:p("/RSCG_Examples/v2/docs/RSCG-Examples/Zomp_readme","697"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/SkinnyControllersCommon",component:p("/RSCG_Examples/v2/docs/SkinnyControllersCommon","5e2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/spreadcheetah",component:p("/RSCG_Examples/v2/docs/spreadcheetah","aef"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/System.Runtime.InteropServices",component:p("/RSCG_Examples/v2/docs/System.Runtime.InteropServices","5b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/System.Text.Json",component:p("/RSCG_Examples/v2/docs/System.Text.Json","ce5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/System.Text.RegularExpressions",component:p("/RSCG_Examples/v2/docs/System.Text.RegularExpressions","379"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/ThisAssembly",component:p("/RSCG_Examples/v2/docs/ThisAssembly","61e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/v1",component:p("/RSCG_Examples/v2/docs/v1","d0a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Vogen",component:p("/RSCG_Examples/v2/docs/Vogen","c64"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/XDocusaurus/congratulations",component:p("/RSCG_Examples/v2/docs/XDocusaurus/congratulations","3d9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/XDocusaurus/create-a-blog-post",component:p("/RSCG_Examples/v2/docs/XDocusaurus/create-a-blog-post","029"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/XDocusaurus/create-a-document",component:p("/RSCG_Examples/v2/docs/XDocusaurus/create-a-document","ba6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/XDocusaurus/create-a-page",component:p("/RSCG_Examples/v2/docs/XDocusaurus/create-a-page","5bf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/XDocusaurus/deploy-your-site",component:p("/RSCG_Examples/v2/docs/XDocusaurus/deploy-your-site","ca9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/XDocusaurus/manage-docs-versions",component:p("/RSCG_Examples/v2/docs/XDocusaurus/manage-docs-versions","b86"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/XDocusaurus/markdown-features",component:p("/RSCG_Examples/v2/docs/XDocusaurus/markdown-features","b2e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/XDocusaurus/translate-your-site",component:p("/RSCG_Examples/v2/docs/XDocusaurus/translate-your-site","f72"),exact:!0,sidebar:"tutorialSidebar"},{path:"/RSCG_Examples/v2/docs/Zomp",component:p("/RSCG_Examples/v2/docs/Zomp","af8"),exact:!0,sidebar:"tutorialSidebar"}]},{path:"/RSCG_Examples/v2/",component:p("/RSCG_Examples/v2/","403"),exact:!0},{path:"*",component:p("*")}]},5351:(e,t,n)=>{var r,o;!function(){var a,i,s,l,c,u,d,p,f,m,h,g,v,b,y,S,E,_,x,C,w,R,k,O,G,P,I,T,A,N,L=function(e){var t=new L.Builder;return t.pipeline.add(L.trimmer,L.stopWordFilter,L.stemmer),t.searchPipeline.add(L.stemmer),e.call(t,t),t.build()};L.version="2.3.9",L.utils={},L.utils.warn=(a=this,function(e){a.console&&console.warn&&console.warn(e)}),L.utils.asString=function(e){return null==e?"":e.toString()},L.utils.clone=function(e){if(null==e)return e;for(var t=Object.create(null),n=Object.keys(e),r=0;r0){var l=L.utils.clone(t)||{};l.position=[i,s],l.index=o.length,o.push(new L.Token(n.slice(i,a),l))}i=a+1}}return o},L.tokenizer.separator=/[\s\-]+/,L.Pipeline=function(){this._stack=[]},L.Pipeline.registeredFunctions=Object.create(null),L.Pipeline.registerFunction=function(e,t){t in this.registeredFunctions&&L.utils.warn("Overwriting existing registered function: "+t),e.label=t,L.Pipeline.registeredFunctions[e.label]=e},L.Pipeline.warnIfFunctionNotRegistered=function(e){e.label&&e.label in this.registeredFunctions||L.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},L.Pipeline.load=function(e){var t=new L.Pipeline;return e.forEach((function(e){var n=L.Pipeline.registeredFunctions[e];if(!n)throw new Error("Cannot load unregistered function: "+e);t.add(n)})),t},L.Pipeline.prototype.add=function(){Array.prototype.slice.call(arguments).forEach((function(e){L.Pipeline.warnIfFunctionNotRegistered(e),this._stack.push(e)}),this)},L.Pipeline.prototype.after=function(e,t){L.Pipeline.warnIfFunctionNotRegistered(t);var n=this._stack.indexOf(e);if(-1==n)throw new Error("Cannot find existingFn");n+=1,this._stack.splice(n,0,t)},L.Pipeline.prototype.before=function(e,t){L.Pipeline.warnIfFunctionNotRegistered(t);var n=this._stack.indexOf(e);if(-1==n)throw new Error("Cannot find existingFn");this._stack.splice(n,0,t)},L.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);-1!=t&&this._stack.splice(t,1)},L.Pipeline.prototype.run=function(e){for(var t=this._stack.length,n=0;n1&&(ae&&(n=o),a!=e);)r=n-t,o=t+Math.floor(r/2),a=this.elements[2*o];return a==e||a>e?2*o:as?c+=2:i==s&&(t+=n[l+1]*r[c+1],l+=2,c+=2);return t},L.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},L.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,n=0;t0){var a,i=o.str.charAt(0);i in o.node.edges?a=o.node.edges[i]:(a=new L.TokenSet,o.node.edges[i]=a),1==o.str.length&&(a.final=!0),r.push({node:a,editsRemaining:o.editsRemaining,str:o.str.slice(1)})}if(0!=o.editsRemaining){if("*"in o.node.edges)var s=o.node.edges["*"];else{s=new L.TokenSet;o.node.edges["*"]=s}if(0==o.str.length&&(s.final=!0),r.push({node:s,editsRemaining:o.editsRemaining-1,str:o.str}),o.str.length>1&&r.push({node:o.node,editsRemaining:o.editsRemaining-1,str:o.str.slice(1)}),1==o.str.length&&(o.node.final=!0),o.str.length>=1){if("*"in o.node.edges)var l=o.node.edges["*"];else{l=new L.TokenSet;o.node.edges["*"]=l}1==o.str.length&&(l.final=!0),r.push({node:l,editsRemaining:o.editsRemaining-1,str:o.str.slice(1)})}if(o.str.length>1){var c,u=o.str.charAt(0),d=o.str.charAt(1);d in o.node.edges?c=o.node.edges[d]:(c=new L.TokenSet,o.node.edges[d]=c),1==o.str.length&&(c.final=!0),r.push({node:c,editsRemaining:o.editsRemaining-1,str:u+o.str.slice(2)})}}}return n},L.TokenSet.fromString=function(e){for(var t=new L.TokenSet,n=t,r=0,o=e.length;r=e;t--){var n=this.uncheckedNodes[t],r=n.child.toString();r in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[r]:(n.child._str=r,this.minimizedNodes[r]=n.child),this.uncheckedNodes.pop()}},L.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},L.Index.prototype.search=function(e){return this.query((function(t){new L.QueryParser(e,t).parse()}))},L.Index.prototype.query=function(e){for(var t=new L.Query(this.fields),n=Object.create(null),r=Object.create(null),o=Object.create(null),a=Object.create(null),i=Object.create(null),s=0;s1?1:e},L.Builder.prototype.k1=function(e){this._k1=e},L.Builder.prototype.add=function(e,t){var n=e[this._ref],r=Object.keys(this._fields);this._documents[n]=t||{},this.documentCount+=1;for(var o=0;o=this.length)return L.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},L.QueryLexer.prototype.width=function(){return this.pos-this.start},L.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},L.QueryLexer.prototype.backup=function(){this.pos-=1},L.QueryLexer.prototype.acceptDigitRun=function(){var e,t;do{t=(e=this.next()).charCodeAt(0)}while(t>47&&t<58);e!=L.QueryLexer.EOS&&this.backup()},L.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(L.QueryLexer.TERM)),e.ignore(),e.more())return L.QueryLexer.lexText},L.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(L.QueryLexer.EDIT_DISTANCE),L.QueryLexer.lexText},L.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(L.QueryLexer.BOOST),L.QueryLexer.lexText},L.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(L.QueryLexer.TERM)},L.QueryLexer.termSeparator=L.tokenizer.separator,L.QueryLexer.lexText=function(e){for(;;){var t=e.next();if(t==L.QueryLexer.EOS)return L.QueryLexer.lexEOS;if(92!=t.charCodeAt(0)){if(":"==t)return L.QueryLexer.lexField;if("~"==t)return e.backup(),e.width()>0&&e.emit(L.QueryLexer.TERM),L.QueryLexer.lexEditDistance;if("^"==t)return e.backup(),e.width()>0&&e.emit(L.QueryLexer.TERM),L.QueryLexer.lexBoost;if("+"==t&&1===e.width())return e.emit(L.QueryLexer.PRESENCE),L.QueryLexer.lexText;if("-"==t&&1===e.width())return e.emit(L.QueryLexer.PRESENCE),L.QueryLexer.lexText;if(t.match(L.QueryLexer.termSeparator))return L.QueryLexer.lexTerm}else e.escapeCharacter()}},L.QueryParser=function(e,t){this.lexer=new L.QueryLexer(e),this.query=t,this.currentClause={},this.lexemeIdx=0},L.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=L.QueryParser.parseClause;e;)e=e(this);return this.query},L.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},L.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},L.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},L.QueryParser.parseClause=function(e){var t=e.peekLexeme();if(null!=t)switch(t.type){case L.QueryLexer.PRESENCE:return L.QueryParser.parsePresence;case L.QueryLexer.FIELD:return L.QueryParser.parseField;case L.QueryLexer.TERM:return L.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+t.type;throw t.str.length>=1&&(n+=" with value '"+t.str+"'"),new L.QueryParseError(n,t.start,t.end)}},L.QueryParser.parsePresence=function(e){var t=e.consumeLexeme();if(null!=t){switch(t.str){case"-":e.currentClause.presence=L.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=L.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+t.str+"'";throw new L.QueryParseError(n,t.start,t.end)}var r=e.peekLexeme();if(null==r){n="expecting term or field, found nothing";throw new L.QueryParseError(n,t.start,t.end)}switch(r.type){case L.QueryLexer.FIELD:return L.QueryParser.parseField;case L.QueryLexer.TERM:return L.QueryParser.parseTerm;default:n="expecting term or field, found '"+r.type+"'";throw new L.QueryParseError(n,r.start,r.end)}}},L.QueryParser.parseField=function(e){var t=e.consumeLexeme();if(null!=t){if(-1==e.query.allFields.indexOf(t.str)){var n=e.query.allFields.map((function(e){return"'"+e+"'"})).join(", "),r="unrecognised field '"+t.str+"', possible fields: "+n;throw new L.QueryParseError(r,t.start,t.end)}e.currentClause.fields=[t.str];var o=e.peekLexeme();if(null==o){r="expecting term, found nothing";throw new L.QueryParseError(r,t.start,t.end)}if(o.type===L.QueryLexer.TERM)return L.QueryParser.parseTerm;r="expecting term, found '"+o.type+"'";throw new L.QueryParseError(r,o.start,o.end)}},L.QueryParser.parseTerm=function(e){var t=e.consumeLexeme();if(null!=t){e.currentClause.term=t.str.toLowerCase(),-1!=t.str.indexOf("*")&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(null!=n)switch(n.type){case L.QueryLexer.TERM:return e.nextClause(),L.QueryParser.parseTerm;case L.QueryLexer.FIELD:return e.nextClause(),L.QueryParser.parseField;case L.QueryLexer.EDIT_DISTANCE:return L.QueryParser.parseEditDistance;case L.QueryLexer.BOOST:return L.QueryParser.parseBoost;case L.QueryLexer.PRESENCE:return e.nextClause(),L.QueryParser.parsePresence;default:var r="Unexpected lexeme type '"+n.type+"'";throw new L.QueryParseError(r,n.start,n.end)}else e.nextClause()}},L.QueryParser.parseEditDistance=function(e){var t=e.consumeLexeme();if(null!=t){var n=parseInt(t.str,10);if(isNaN(n)){var r="edit distance must be numeric";throw new L.QueryParseError(r,t.start,t.end)}e.currentClause.editDistance=n;var o=e.peekLexeme();if(null!=o)switch(o.type){case L.QueryLexer.TERM:return e.nextClause(),L.QueryParser.parseTerm;case L.QueryLexer.FIELD:return e.nextClause(),L.QueryParser.parseField;case L.QueryLexer.EDIT_DISTANCE:return L.QueryParser.parseEditDistance;case L.QueryLexer.BOOST:return L.QueryParser.parseBoost;case L.QueryLexer.PRESENCE:return e.nextClause(),L.QueryParser.parsePresence;default:r="Unexpected lexeme type '"+o.type+"'";throw new L.QueryParseError(r,o.start,o.end)}else e.nextClause()}},L.QueryParser.parseBoost=function(e){var t=e.consumeLexeme();if(null!=t){var n=parseInt(t.str,10);if(isNaN(n)){var r="boost must be numeric";throw new L.QueryParseError(r,t.start,t.end)}e.currentClause.boost=n;var o=e.peekLexeme();if(null!=o)switch(o.type){case L.QueryLexer.TERM:return e.nextClause(),L.QueryParser.parseTerm;case L.QueryLexer.FIELD:return e.nextClause(),L.QueryParser.parseField;case L.QueryLexer.EDIT_DISTANCE:return L.QueryParser.parseEditDistance;case L.QueryLexer.BOOST:return L.QueryParser.parseBoost;case L.QueryLexer.PRESENCE:return e.nextClause(),L.QueryParser.parsePresence;default:r="Unexpected lexeme type '"+o.type+"'";throw new L.QueryParseError(r,o.start,o.end)}else e.nextClause()}},void 0===(o="function"==typeof(r=function(){return L})?r.call(t,n,t,e):r)||(e.exports=o)}()},8121:(e,t,n)=>{"use strict";n.d(t,{_:()=>o,t:()=>a});var r=n(7294);const o=r.createContext(!1);function a(e){let{children:t}=e;const[n,a]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{a(!0)}),[]),r.createElement(o.Provider,{value:n},t)}},654:(e,t,n)=>{"use strict";var r=n(7294),o=n(3935),a=n(3727),i=n(405),s=n(6136);const l=[n(984),n(2251),n(9957),n(6930)];var c=n(997),u=n(6550),d=n(8790);function p(e){let{children:t}=e;return r.createElement(r.Fragment,null,t)}var f=n(7462),m=n(1514),h=n(9962),g=n(9524),v=n(107),b=n(5463),y=n(626),S=n(8181),E=n(246),_=n(3647);function x(){const{i18n:{defaultLocale:e,localeConfigs:t}}=(0,h.Z)(),n=(0,y.l)();return r.createElement(m.Z,null,Object.entries(t).map((e=>{let[t,{htmlLang:o}]=e;return r.createElement("link",{key:t,rel:"alternate",href:n.createUrl({locale:t,fullyQualified:!0}),hrefLang:o})})),r.createElement("link",{rel:"alternate",href:n.createUrl({locale:e,fullyQualified:!0}),hrefLang:"x-default"}))}function C(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,h.Z)(),o=function(){const{siteConfig:{url:e}}=(0,h.Z)(),{pathname:t}=(0,u.TH)();return e+(0,g.Z)(t)}(),a=t?`${n}${t}`:o;return r.createElement(m.Z,null,r.createElement("meta",{property:"og:url",content:a}),r.createElement("link",{rel:"canonical",href:a}))}function w(){const{i18n:{currentLocale:e}}=(0,h.Z)(),{metadata:t,image:n}=(0,v.L)();return r.createElement(r.Fragment,null,r.createElement(m.Z,null,r.createElement("meta",{name:"twitter:card",content:"summary_large_image"}),r.createElement("body",{className:S.h})),n&&r.createElement(b.d,{image:n}),r.createElement(C,null),r.createElement(x,null),r.createElement(_.Z,{tag:E.HX,locale:e}),r.createElement(m.Z,null,t.map(((e,t)=>r.createElement("meta",(0,f.Z)({key:t},e))))))}const R=new Map;function k(e){if(R.has(e.pathname))return{...e,pathname:R.get(e.pathname)};if((0,d.f)(c.Z,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return R.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return R.set(e.pathname,t),{...e,pathname:t}}var O=n(8121),G=n(694);function P(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{const r=t.default?.[e]??t[e];return r?.(...n)}));return()=>o.forEach((e=>e?.()))}const I=function(e){let{children:t,location:n,previousLocation:o}=e;return(0,r.useLayoutEffect)((()=>{o!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const r=t.pathname===n.pathname,o=t.hash===n.hash,a=t.search===n.search;if(r&&o&&!a)return;const{hash:i}=t;if(i){const e=decodeURIComponent(i.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:o}),P("onRouteDidUpdate",{previousLocation:o,location:n}))}),[o,n]),t};function T(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,d.f)(c.Z,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class A extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=s.Z.canUseDOM?P("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=P("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),T(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return r.createElement(I,{previousLocation:this.previousLocation,location:t},r.createElement(u.AW,{location:t,render:()=>e}))}}const N=A,L="docusaurus-base-url-issue-banner-container",j="docusaurus-base-url-issue-banner",D="docusaurus-base-url-issue-banner-suggestion-container",M="__DOCUSAURUS_INSERT_BASEURL_BANNER";function F(e){return`\nwindow['${M}'] = true;\n\ndocument.addEventListener('DOMContentLoaded', maybeInsertBanner);\n\nfunction maybeInsertBanner() {\n var shouldInsert = window['${M}'];\n shouldInsert && insertBanner();\n}\n\nfunction insertBanner() {\n var bannerContainer = document.getElementById('${L}');\n if (!bannerContainer) {\n return;\n }\n var bannerHtml = ${JSON.stringify(function(e){return`\n
\n

Your Docusaurus site did not load properly.

\n

A very common reason is a wrong site baseUrl configuration.

\n

Current configured baseUrl = ${e} ${"/"===e?" (default value)":""}

\n

We suggest trying baseUrl =

\n
\n`}(e)).replace(/{window[M]=!1}),[]),r.createElement(r.Fragment,null,!s.Z.canUseDOM&&r.createElement(m.Z,null,r.createElement("script",null,F(e))),r.createElement("div",{id:L}))}function z(){const{siteConfig:{baseUrl:e,baseUrlIssueBanner:t}}=(0,h.Z)(),{pathname:n}=(0,u.TH)();return t&&n===e?r.createElement(B,null):null}function U(){const{siteConfig:{favicon:e,title:t,noIndex:n},i18n:{currentLocale:o,localeConfigs:a}}=(0,h.Z)(),i=(0,g.Z)(e),{htmlLang:s,direction:l}=a[o];return r.createElement(m.Z,null,r.createElement("html",{lang:s,dir:l}),r.createElement("title",null,t),r.createElement("meta",{property:"og:title",content:t}),r.createElement("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),n&&r.createElement("meta",{name:"robots",content:"noindex, nofollow"}),e&&r.createElement("link",{rel:"icon",href:i}))}var $=n(3256);function H(){const e=(0,d.H)(c.Z),t=(0,u.TH)();return r.createElement($.Z,null,r.createElement(G.M,null,r.createElement(O.t,null,r.createElement(p,null,r.createElement(U,null),r.createElement(w,null),r.createElement(z,null),r.createElement(N,{location:k(t)},e)))))}var Z=n(6887);const V=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const r=document.createElement("link");r.setAttribute("rel","prefetch"),r.setAttribute("href",e),r.onload=()=>t(),r.onerror=()=>n();const o=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;o?.appendChild(r)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var Q=n(5304);const q=new Set,W=new Set,J=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,X={prefetch(e){if(!(e=>!J()&&!W.has(e)&&!q.has(e))(e))return!1;q.add(e);const t=(0,d.f)(c.Z,e).flatMap((e=>{return t=e.route.path,Object.entries(Z).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,Q.Z)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?V(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!J()&&!W.has(e))(e)&&(W.add(e),T(e))},Y=Object.freeze(X);if(s.Z.canUseDOM){window.docusaurus=Y;const e=o.hydrate;T(window.location.pathname).then((()=>{e(r.createElement(i.B6,null,r.createElement(a.VK,null,r.createElement(H,null))),document.getElementById("__docusaurus"))}))}},694:(e,t,n)=>{"use strict";n.d(t,{_:()=>u,M:()=>d});var r=n(7294),o=n(6809);const a=JSON.parse('{"@cmfcmf/docusaurus-search-local":{"default":{"titleBoost":5,"contentBoost":1,"tagsBoost":3,"parentCategoriesBoost":2,"indexDocSidebarParentCategories":0,"maxSearchResults":8}},"docusaurus-plugin-content-docs":{"default":{"path":"/RSCG_Examples/v2/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/RSCG_Examples/v2/docs","mainDocId":"intro","docs":[{"id":"about","path":"/RSCG_Examples/v2/docs/about","sidebar":"tutorialSidebar"},{"id":"indexRSCG","path":"/RSCG_Examples/v2/docs/List-of-RSCG","sidebar":"tutorialSidebar"},{"id":"intro","path":"/RSCG_Examples/v2/docs/intro","sidebar":"tutorialSidebar"},{"id":"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator","path":"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSExportGenerator","sidebar":"tutorialSidebar"},{"id":"Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator","path":"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.JavaScript.JSImportGenerator_Microsoft.Interop.JavaScript.JSImportGenerator","sidebar":"tutorialSidebar"},{"id":"Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator","path":"/RSCG_Examples/v2/docs/Microsoft/Microsoft.Interop.LibraryImportGenerator_Microsoft.Interop.LibraryImportGenerator","sidebar":"tutorialSidebar"},{"id":"Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator","path":"/RSCG_Examples/v2/docs/Microsoft/Microsoft.NET.Sdk.Razor.SourceGenerators_Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator","sidebar":"tutorialSidebar"},{"id":"Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator","path":"/RSCG_Examples/v2/docs/Microsoft/System.Text.Json.SourceGeneration_System.Text.Json.SourceGeneration.JsonSourceGenerator","sidebar":"tutorialSidebar"},{"id":"Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator","path":"/RSCG_Examples/v2/docs/Microsoft/System.Text.RegularExpressions.Generator_System.Text.RegularExpressions.Generator.RegexGenerator","sidebar":"tutorialSidebar"},{"id":"NoExamples","path":"/RSCG_Examples/v2/docs/NoExamples","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/ApparatusAOT","path":"/RSCG_Examples/v2/docs/ApparatusAOT","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/ApparatusAOT_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/ApparatusAOT_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/AutoCtor","path":"/RSCG_Examples/v2/docs/AutoCtor","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/AutoCtor_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/AutoCtor_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/AutoDeconstruct","path":"/RSCG_Examples/v2/docs/AutoDeconstruct","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/AutoDeconstruct_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/AutoDeconstruct_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/AutoRegisterInject","path":"/RSCG_Examples/v2/docs/AutoRegisterInject","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/AutoRegisterInject_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/AutoRegisterInject_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator","path":"/RSCG_Examples/v2/docs/BenutomoAutomaticDisposeImplSourceGenerator","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/BenutomoAutomaticDisposeImplSourceGenerator_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Breezy","path":"/RSCG_Examples/v2/docs/Breezy","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Breezy_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Breezy_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/CommunityToolkit.Mvvm","path":"/RSCG_Examples/v2/docs/CommunityToolkit.Mvvm","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/CommunityToolkit.Mvvm_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/CommunityToolkit.Mvvm_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/DeeDee","path":"/RSCG_Examples/v2/docs/DeeDee","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/DeeDee_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/DeeDee_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/dunet","path":"/RSCG_Examples/v2/docs/dunet","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/dunet_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/dunet_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/EmbedResourceCSharp","path":"/RSCG_Examples/v2/docs/EmbedResourceCSharp","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/EmbedResourceCSharp_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/EmbedResourceCSharp_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/EnumClass","path":"/RSCG_Examples/v2/docs/EnumClass","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/EnumClass_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/EnumClass_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/FastGenericNew","path":"/RSCG_Examples/v2/docs/FastGenericNew","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/FastGenericNew_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/FastGenericNew_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Gedaq","path":"/RSCG_Examples/v2/docs/Gedaq","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Gedaq_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Gedaq_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/GeneratorEquals","path":"/RSCG_Examples/v2/docs/GeneratorEquals","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/GeneratorEquals_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/GeneratorEquals_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Immutype","path":"/RSCG_Examples/v2/docs/Immutype","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Immutype_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Immutype_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Lombok.NET","path":"/RSCG_Examples/v2/docs/Lombok.NET","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Lombok.NET_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Lombok.NET_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/mapperly","path":"/RSCG_Examples/v2/docs/mapperly","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/mapperly_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/mapperly_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Matryoshki","path":"/RSCG_Examples/v2/docs/Matryoshki","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Matryoshki_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Matryoshki_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Mediator","path":"/RSCG_Examples/v2/docs/Mediator","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Mediator_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Mediator_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/MemoryPack","path":"/RSCG_Examples/v2/docs/MemoryPack","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/MemoryPack_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/MemoryPack_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Microsoft.Extensions.Logging","path":"/RSCG_Examples/v2/docs/Microsoft.Extensions.Logging","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Microsoft.Extensions.Logging_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.Extensions.Logging_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator","path":"/RSCG_Examples/v2/docs/Microsoft.Interop.JavaScript.JSImportGenerator","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.Interop.JavaScript.JSImportGenerator_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators","path":"/RSCG_Examples/v2/docs/Microsoft.NET.Sdk.Razor.SourceGenerators","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Microsoft.NET.Sdk.Razor.SourceGenerators_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/MorrisMoxy","path":"/RSCG_Examples/v2/docs/MorrisMoxy","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/MorrisMoxy_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/MorrisMoxy_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/NetEscapades.EnumGenerators","path":"/RSCG_Examples/v2/docs/NetEscapades.EnumGenerators","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/NetEscapades.EnumGenerators_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/NetEscapades.EnumGenerators_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/PartiallyApplied","path":"/RSCG_Examples/v2/docs/PartiallyApplied","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/PartiallyApplied_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/PartiallyApplied_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Podimo.ConstEmbed","path":"/RSCG_Examples/v2/docs/Podimo.ConstEmbed","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Podimo.ConstEmbed_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Podimo.ConstEmbed_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/ProxyGen","path":"/RSCG_Examples/v2/docs/ProxyGen","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/ProxyGen_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/ProxyGen_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/QuickConstructor","path":"/RSCG_Examples/v2/docs/QuickConstructor","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/QuickConstructor_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/QuickConstructor_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RazorBlade","path":"/RSCG_Examples/v2/docs/RazorBlade","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RazorBlade_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/RazorBlade_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Refit","path":"/RSCG_Examples/v2/docs/Refit","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Refit_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Refit_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Rocks","path":"/RSCG_Examples/v2/docs/Rocks","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Rocks_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Rocks_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_AMS","path":"/RSCG_Examples/v2/docs/RSCG_AMS","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_AMS_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_AMS_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_FunctionsWithDI","path":"/RSCG_Examples/v2/docs/RSCG_FunctionsWithDI","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_FunctionsWithDI_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_FunctionsWithDI_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_Static","path":"/RSCG_Examples/v2/docs/RSCG_Static","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_Static_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_Static_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_TimeBombComment","path":"/RSCG_Examples/v2/docs/RSCG_TimeBombComment","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_TimeBombComment_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_TimeBombComment_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_Utils","path":"/RSCG_Examples/v2/docs/RSCG_Utils","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/RSCG_Utils_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/RSCG_Utils_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/SkinnyControllersCommon","path":"/RSCG_Examples/v2/docs/SkinnyControllersCommon","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/SkinnyControllersCommon_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/SkinnyControllersCommon_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/spreadcheetah","path":"/RSCG_Examples/v2/docs/spreadcheetah","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/spreadcheetah_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/spreadcheetah_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/System.Runtime.InteropServices","path":"/RSCG_Examples/v2/docs/System.Runtime.InteropServices","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/System.Runtime.InteropServices_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/System.Runtime.InteropServices_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/System.Text.Json","path":"/RSCG_Examples/v2/docs/System.Text.Json","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/System.Text.Json_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/System.Text.Json_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/System.Text.RegularExpressions","path":"/RSCG_Examples/v2/docs/System.Text.RegularExpressions","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/System.Text.RegularExpressions_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/System.Text.RegularExpressions_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/ThisAssembly","path":"/RSCG_Examples/v2/docs/ThisAssembly","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/ThisAssembly_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/ThisAssembly_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Vogen","path":"/RSCG_Examples/v2/docs/Vogen","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Vogen_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Vogen_readme","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Zomp","path":"/RSCG_Examples/v2/docs/Zomp","sidebar":"tutorialSidebar"},{"id":"RSCG-Examples/Zomp_readme","path":"/RSCG_Examples/v2/docs/RSCG-Examples/Zomp_readme","sidebar":"tutorialSidebar"},{"id":"v1","path":"/RSCG_Examples/v2/docs/v1","sidebar":"tutorialSidebar"},{"id":"XDocusaurus/congratulations","path":"/RSCG_Examples/v2/docs/XDocusaurus/congratulations","sidebar":"tutorialSidebar"},{"id":"XDocusaurus/create-a-blog-post","path":"/RSCG_Examples/v2/docs/XDocusaurus/create-a-blog-post","sidebar":"tutorialSidebar"},{"id":"XDocusaurus/create-a-document","path":"/RSCG_Examples/v2/docs/XDocusaurus/create-a-document","sidebar":"tutorialSidebar"},{"id":"XDocusaurus/create-a-page","path":"/RSCG_Examples/v2/docs/XDocusaurus/create-a-page","sidebar":"tutorialSidebar"},{"id":"XDocusaurus/deploy-your-site","path":"/RSCG_Examples/v2/docs/XDocusaurus/deploy-your-site","sidebar":"tutorialSidebar"},{"id":"XDocusaurus/manage-docs-versions","path":"/RSCG_Examples/v2/docs/XDocusaurus/manage-docs-versions","sidebar":"tutorialSidebar"},{"id":"XDocusaurus/markdown-features","path":"/RSCG_Examples/v2/docs/XDocusaurus/markdown-features","sidebar":"tutorialSidebar"},{"id":"XDocusaurus/translate-your-site","path":"/RSCG_Examples/v2/docs/XDocusaurus/translate-your-site","sidebar":"tutorialSidebar"},{"id":"/category/rscg-examples","path":"/RSCG_Examples/v2/docs/category/rscg-examples","sidebar":"tutorialSidebar"},{"id":"/category/microsoft-examples","path":"/RSCG_Examples/v2/docs/category/microsoft-examples","sidebar":"tutorialSidebar"},{"id":"/category/docusaurus","path":"/RSCG_Examples/v2/docs/category/docusaurus","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/RSCG_Examples/v2/docs/intro","label":"intro"}}}}],"breadcrumbs":true}}}'),i=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var s=n(7529);const l=JSON.parse('{"docusaurusVersion":"2.4.0","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"2.4.0"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"2.4.0"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"2.4.0"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"2.4.0"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"2.4.0"},"@cmfcmf/docusaurus-search-local":{"type":"package","name":"@cmfcmf/docusaurus-search-local","version":"1.1.0"}}}'),c={siteConfig:o.default,siteMetadata:l,globalData:a,i18n:i,codeTranslations:s},u=r.createContext(c);function d(e){let{children:t}=e;return r.createElement(u.Provider,{value:c},t)}},3256:(e,t,n)=>{"use strict";n.d(t,{Z:()=>p});var r=n(7294),o=n(6136),a=n(1514),i=n(3905),s=n(6931);function l(e){let{error:t,tryAgain:n}=e;return r.createElement("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"}},r.createElement("h1",{style:{fontSize:"3rem"}},"This page crashed"),r.createElement("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"}},"Try again"),r.createElement(c,{error:t}))}function c(e){let{error:t}=e;const n=(0,i.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return r.createElement("p",{style:{whiteSpace:"pre-wrap"}},n)}function u(e){let{error:t,tryAgain:n}=e;return r.createElement(p,{fallback:()=>r.createElement(l,{error:t,tryAgain:n})},r.createElement(a.Z,null,r.createElement("title",null,"Page Error")),r.createElement(s.Z,null,r.createElement(l,{error:t,tryAgain:n})))}const d=e=>r.createElement(u,e);class p extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){o.Z.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??d)(e)}return e??null}}},6136:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,o={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},1514:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294),o=n(405);function a(e){return r.createElement(o.ql,e)}},3699:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(7462),o=n(7294),a=n(3727),i=n(3905),s=n(9962),l=n(2735),c=n(6136);const u=o.createContext({collectLink:()=>{}});var d=n(9524);function p(e,t){let{isNavLink:n,to:p,href:f,activeClassName:m,isActive:h,"data-noBrokenLinkCheck":g,autoAddBaseUrl:v=!0,...b}=e;const{siteConfig:{trailingSlash:y,baseUrl:S}}=(0,s.Z)(),{withBaseUrl:E}=(0,d.C)(),_=(0,o.useContext)(u),x=(0,o.useRef)(null);(0,o.useImperativeHandle)(t,(()=>x.current));const C=p||f;const w=(0,l.Z)(C),R=C?.replace("pathname://","");let k=void 0!==R?(O=R,v&&(e=>e.startsWith("/"))(O)?E(O):O):void 0;var O;k&&w&&(k=(0,i.applyTrailingSlash)(k,{trailingSlash:y,baseUrl:S}));const G=(0,o.useRef)(!1),P=n?a.OL:a.rU,I=c.Z.canUseIntersectionObserver,T=(0,o.useRef)(),A=()=>{G.current||null==k||(window.docusaurus.preload(k),G.current=!0)};(0,o.useEffect)((()=>(!I&&w&&null!=k&&window.docusaurus.prefetch(k),()=>{I&&T.current&&T.current.disconnect()})),[T,k,I,w]);const N=k?.startsWith("#")??!1,L=!k||!w||N;return L||g||_.collectLink(k),L?o.createElement("a",(0,r.Z)({ref:x,href:k},C&&!w&&{target:"_blank",rel:"noopener noreferrer"},b)):o.createElement(P,(0,r.Z)({},b,{onMouseEnter:A,onTouchStart:A,innerRef:e=>{x.current=e,I&&e&&w&&(T.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(T.current.unobserve(e),T.current.disconnect(),null!=k&&window.docusaurus.prefetch(k))}))})),T.current.observe(e))},to:k},n&&{isActive:h,activeClassName:m}))}const f=o.forwardRef(p)},7325:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l,I:()=>s});var r=n(7294);function o(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var a=n(7529);function i(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return a[t??n]??n??t}function s(e,t){let{message:n,id:r}=e;return o(i({message:n,id:r}),t)}function l(e){let{children:t,id:n,values:a}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");const s=i({message:t,id:n});return r.createElement(r.Fragment,null,o(s,a))}},6875:(e,t,n)=>{"use strict";n.d(t,{m:()=>r});const r="default"},2735:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function o(e){return void 0!==e&&!r(e)}n.d(t,{Z:()=>o,b:()=>r})},9524:(e,t,n)=>{"use strict";n.d(t,{C:()=>i,Z:()=>s});var r=n(7294),o=n(9962),a=n(2735);function i(){const{siteConfig:{baseUrl:e,url:t}}=(0,o.Z)(),n=(0,r.useCallback)(((n,r)=>function(e,t,n,r){let{forcePrependBaseUrl:o=!1,absolute:i=!1}=void 0===r?{}:r;if(!n||n.startsWith("#")||(0,a.b)(n))return n;if(o)return t+n.replace(/^\//,"");if(n===t.replace(/\/$/,""))return t;const s=n.startsWith(t)?n:t+n.replace(/^\//,"");return i?e+s:s}(t,e,n,r)),[t,e]);return{withBaseUrl:n}}function s(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},9962:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294),o=n(694);function a(){return(0,r.useContext)(o._)}},1610:(e,t,n)=>{"use strict";n.d(t,{OD:()=>a,eZ:()=>i});var r=n(9962),o=n(6875);function a(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,r.Z)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}function i(e,t,n){void 0===t&&(t=o.m),void 0===n&&(n={});const r=a(e),i=r?.[t];if(!i&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return i}},1048:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294),o=n(8121);function a(){return(0,r.useContext)(o._)}},5304:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});const r=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function o(e){const t={};return function e(n,o){Object.entries(n).forEach((n=>{let[a,i]=n;const s=o?`${o}.${a}`:a;r(i)?e(i,s):t[s]=i}))}(e),t}},9656:(e,t,n)=>{"use strict";n.d(t,{_:()=>o,z:()=>a});var r=n(7294);const o=r.createContext(null);function a(e){let{children:t,value:n}=e;const a=r.useContext(o),i=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...n?.data};return{plugin:t.plugin,data:r}}({parent:a,value:n})),[a,n]);return r.createElement(o.Provider,{value:i},t)}},868:(e,t,n)=>{"use strict";n.d(t,{Iw:()=>h,gA:()=>d,WS:()=>p,_r:()=>c,Jo:()=>g,zh:()=>u,yW:()=>m,gB:()=>f});var r=n(6550),o=n(1610);const a=e=>e.versions.find((e=>e.isLast));function i(e,t){const n=a(e);return[...e.versions.filter((e=>e!==n)),n].find((e=>!!(0,r.LX)(t,{path:e.path,exact:!1,strict:!1})))}function s(e,t){const n=i(e,t),o=n?.docs.find((e=>!!(0,r.LX)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:o,alternateDocVersions:o?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(o.id):{}}}const l={},c=()=>(0,o.OD)("docusaurus-plugin-content-docs")??l,u=e=>(0,o.eZ)("docusaurus-plugin-content-docs",e,{failfast:!0});function d(e){void 0===e&&(e={});const t=c(),{pathname:n}=(0,r.TH)();return function(e,t,n){void 0===n&&(n={});const o=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.LX)(t,{path:n.path,exact:!1,strict:!1})})),a=o?{pluginId:o[0],pluginData:o[1]}:void 0;if(!a&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return a}(t,n,e)}function p(e){void 0===e&&(e={});const t=d(e),{pathname:n}=(0,r.TH)();if(!t)return;return{activePlugin:t,activeVersion:i(t.pluginData,n)}}function f(e){return u(e).versions}function m(e){const t=u(e);return a(t)}function h(e){const t=u(e),{pathname:n}=(0,r.TH)();return s(t,n)}function g(e){const t=u(e),{pathname:n}=(0,r.TH)();return function(e,t){const n=a(e);return{latestDocSuggestion:s(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},9957:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>a});var r=n(4865),o=n.n(r);o().configure({showSpinner:!1});const a={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{o().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){o().done()}}},2251:(e,t,n)=>{"use strict";n.r(t);var r=n(7410),o=n(6809);!function(e){const{themeConfig:{prism:t}}=o.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{n(2549)(`./prism-${e}`)})),delete globalThis.Prism}(r.Z)},4082:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294);const o={iconExternalLink:"iconExternalLink_nPIU"};function a(e){let{width:t=13.5,height:n=13.5}=e;return r.createElement("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:o.iconExternalLink},r.createElement("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"}))}},6931:(e,t,n)=>{"use strict";n.d(t,{Z:()=>oi});var r=n(7294),o=n(6010),a=n(3256),i=n(5463),s=n(7462),l=n(6550),c=n(7325),u=n(3266);const d="docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function f(){const e=(0,r.useRef)(null),{action:t}=(0,l.k6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&p(t)}),[]);return(0,u.S)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const m=(0,c.I)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function h(e){const t=e.children??m,{containerRef:n,onClick:o}=f();return r.createElement("div",{ref:n,role:"region","aria-label":m},r.createElement("a",(0,s.Z)({},e,{href:`#${d}`,onClick:o}),t))}var g=n(3702),v=n(8181);const b={skipToContent:"skipToContent_fXgn"};function y(){return r.createElement(h,{className:b.skipToContent})}var S=n(107),E=n(5830);function _(e){let{width:t=21,height:n=21,color:o="currentColor",strokeWidth:a=1.2,className:i,...l}=e;return r.createElement("svg",(0,s.Z)({viewBox:"0 0 15 15",width:t,height:n},l),r.createElement("g",{stroke:o,strokeWidth:a},r.createElement("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})))}const x={closeButton:"closeButton_CVFx"};function C(e){return r.createElement("button",(0,s.Z)({type:"button","aria-label":(0,c.I)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"})},e,{className:(0,o.Z)("clean-btn close",x.closeButton,e.className)}),r.createElement(_,{width:14,height:14,strokeWidth:3.1}))}const w={content:"content_knG7"};function R(e){const{announcementBar:t}=(0,S.L)(),{content:n}=t;return r.createElement("div",(0,s.Z)({},e,{className:(0,o.Z)(w.content,e.className),dangerouslySetInnerHTML:{__html:n}}))}const k={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function O(){const{announcementBar:e}=(0,S.L)(),{isActive:t,close:n}=(0,E.nT)();if(!t)return null;const{backgroundColor:o,textColor:a,isCloseable:i}=e;return r.createElement("div",{className:k.announcementBar,style:{backgroundColor:o,color:a},role:"banner"},i&&r.createElement("div",{className:k.announcementBarPlaceholder}),r.createElement(R,{className:k.announcementBarContent}),i&&r.createElement(C,{onClick:n,className:k.announcementBarClose}))}var G=n(735),P=n(2957);var I=n(3768),T=n(3086);const A=r.createContext(null);function N(e){let{children:t}=e;const n=function(){const e=(0,G.e)(),t=(0,T.HY)(),[n,o]=(0,r.useState)(!1),a=null!==t.component,i=(0,I.D9)(a);return(0,r.useEffect)((()=>{a&&!i&&o(!0)}),[a,i]),(0,r.useEffect)((()=>{a?e.shown||o(!0):o(!1)}),[e.shown,a]),(0,r.useMemo)((()=>[n,o]),[n])}();return r.createElement(A.Provider,{value:n},t)}function L(e){if(e.component){const t=e.component;return r.createElement(t,e.props)}}function j(){const e=(0,r.useContext)(A);if(!e)throw new I.i6("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,o=(0,r.useCallback)((()=>n(!1)),[n]),a=(0,T.HY)();return(0,r.useMemo)((()=>({shown:t,hide:o,content:L(a)})),[o,a,t])}function D(e){let{header:t,primaryMenu:n,secondaryMenu:a}=e;const{shown:i}=j();return r.createElement("div",{className:"navbar-sidebar"},t,r.createElement("div",{className:(0,o.Z)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":i})},r.createElement("div",{className:"navbar-sidebar__item menu"},n),r.createElement("div",{className:"navbar-sidebar__item menu"},a)))}var M=n(9200),F=n(1048);function B(e){return r.createElement("svg",(0,s.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"}))}function z(e){return r.createElement("svg",(0,s.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"}))}const U={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function $(e){let{className:t,buttonClassName:n,value:a,onChange:i}=e;const s=(0,F.Z)(),l=(0,c.I)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===a?(0,c.I)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,c.I)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return r.createElement("div",{className:(0,o.Z)(U.toggle,t)},r.createElement("button",{className:(0,o.Z)("clean-btn",U.toggleButton,!s&&U.toggleButtonDisabled,n),type:"button",onClick:()=>i("dark"===a?"light":"dark"),disabled:!s,title:l,"aria-label":l,"aria-live":"polite"},r.createElement(B,{className:(0,o.Z)(U.toggleIcon,U.lightToggleIcon)}),r.createElement(z,{className:(0,o.Z)(U.toggleIcon,U.darkToggleIcon)})))}const H=r.memo($),Z={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function V(e){let{className:t}=e;const n=(0,S.L)().navbar.style,o=(0,S.L)().colorMode.disableSwitch,{colorMode:a,setColorMode:i}=(0,M.I)();return o?null:r.createElement(H,{className:t,buttonClassName:"dark"===n?Z.darkNavbarColorModeToggle:void 0,value:a,onChange:i})}var Q=n(6811);function q(){return r.createElement(Q.Z,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function W(){const e=(0,G.e)();return r.createElement("button",{type:"button","aria-label":(0,c.I)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle()},r.createElement(_,{color:"var(--ifm-color-emphasis-600)"}))}function J(){return r.createElement("div",{className:"navbar-sidebar__brand"},r.createElement(q,null),r.createElement(V,{className:"margin-right--md"}),r.createElement(W,null))}var X=n(3699),Y=n(9524),K=n(2735);function ee(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var te=n(4082);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:o,href:a,label:i,html:l,isDropdownLink:c,prependBaseUrlToHref:u,...d}=e;const p=(0,Y.Z)(o),f=(0,Y.Z)(t),m=(0,Y.Z)(a,{forcePrependBaseUrl:!0}),h=i&&a&&!(0,K.Z)(a),g=l?{dangerouslySetInnerHTML:{__html:l}}:{children:r.createElement(r.Fragment,null,i,h&&r.createElement(te.Z,c&&{width:12,height:12}))};return a?r.createElement(X.Z,(0,s.Z)({href:u?m:a},d,g)):r.createElement(X.Z,(0,s.Z)({to:p,isNavLink:!0},(t||n)&&{isActive:(e,t)=>n?ee(n,t.pathname):t.pathname.startsWith(f)},d,g))}function re(e){let{className:t,isDropdownItem:n=!1,...a}=e;const i=r.createElement(ne,(0,s.Z)({className:(0,o.Z)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n},a));return n?r.createElement("li",null,i):i}function oe(e){let{className:t,isDropdownItem:n,...a}=e;return r.createElement("li",{className:"menu__list-item"},r.createElement(ne,(0,s.Z)({className:(0,o.Z)("menu__link",t)},a)))}function ae(e){let{mobile:t=!1,position:n,...o}=e;const a=t?oe:re;return r.createElement(a,(0,s.Z)({},o,{activeClassName:o.activeClassName??(t?"menu__link--active":"navbar__link--active")}))}var ie=n(4639),se=n(9003),le=n(9962);function ce(e,t){return e.some((e=>function(e,t){return!!(0,se.Mg)(e.to,t)||!!ee(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function ue(e){let{items:t,position:n,className:a,onClick:i,...l}=e;const c=(0,r.useRef)(null),[u,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{c.current&&!c.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[c]),r.createElement("div",{ref:c,className:(0,o.Z)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":u})},r.createElement(ne,(0,s.Z)({"aria-haspopup":"true","aria-expanded":u,role:"button",href:l.to?void 0:"#",className:(0,o.Z)("navbar__link",a)},l,{onClick:l.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!u))}}),l.children??l.label),r.createElement("ul",{className:"dropdown__menu"},t.map(((e,t)=>r.createElement(va,(0,s.Z)({isDropdownItem:!0,activeClassName:"dropdown__link--active"},e,{key:t}))))))}function de(e){let{items:t,className:n,position:a,onClick:i,...c}=e;const u=function(){const{siteConfig:{baseUrl:e}}=(0,le.Z)(),{pathname:t}=(0,l.TH)();return t.replace(e,"/")}(),d=ce(t,u),{collapsed:p,toggleCollapsed:f,setCollapsed:m}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&m(!d)}),[u,d,m]),r.createElement("li",{className:(0,o.Z)("menu__list-item",{"menu__list-item--collapsed":p})},r.createElement(ne,(0,s.Z)({role:"button",className:(0,o.Z)("menu__link menu__link--sublist menu__link--sublist-caret",n)},c,{onClick:e=>{e.preventDefault(),f()}}),c.children??c.label),r.createElement(ie.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:p},t.map(((e,t)=>r.createElement(va,(0,s.Z)({mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active"},e,{key:t}))))))}function pe(e){let{mobile:t=!1,...n}=e;const o=t?de:ue;return r.createElement(o,n)}var fe=n(626);function me(e){let{width:t=20,height:n=20,...o}=e;return r.createElement("svg",(0,s.Z)({viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0},o),r.createElement("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"}))}const he="iconLanguage_nlXk";var ge=n(3935);function ve(e,t){var n=void 0;return function(){for(var r=arguments.length,o=new Array(r),a=0;ae.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function Ie(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Te(e){for(var t=1;t=3||2===n&&r>=4||1===n&&r>=10}(e);function n(n,r,o){if(t&&void 0!==o){var a=o[0].__autocomplete_algoliaCredentials,i={"X-Algolia-Application-Id":a.appId,"X-Algolia-API-Key":a.apiKey};e.apply(void 0,[n].concat(Oe(r),[{headers:i}]))}else e.apply(void 0,[n].concat(Oe(r)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&n("clickedObjectIDsAfterSearch",Ne(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&n("clickedObjectIDs",Ne(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&n("convertedObjectIDsAfterSearch",Ne(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&n("convertedObjectIDs",Ne(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&t.reduce((function(e,t){var n=t.items,r=Pe(t,Re);return[].concat(Oe(e),Oe(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,n=[],r=0;r0&&e.apply(void 0,["viewedFilters"].concat(n))}}}function je(e){var t=e.items.reduce((function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function De(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function Me(e){return Me="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Me(e)}function Fe(e){return function(e){if(Array.isArray(e))return Be(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Be(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Be(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Be(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&Ve({onItemsChange:r,items:n,insights:s,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,n=e.onSelect,r=e.onActive;i("addAlgoliaAgent","insights-plugin"),t({algoliaInsightsPlugin:{__algoliaSearchParameters:{clickAnalytics:!0},insights:s}}),n((function(e){var t=e.item,n=e.state,r=e.event,a=e.source;De(t)&&o({state:n,event:r,insights:s,item:t,insightsEvents:[Ue({eventName:"Item Selected"},_e({item:t,items:a.getItems().filter(De)}))]})})),r((function(e){var t=e.item,n=e.source,r=e.state,o=e.event;De(t)&&a({state:r,event:o,insights:s,item:t,insightsEvents:[Ue({eventName:"Item Active"},_e({item:t,items:n.getItems().filter(De)}))]})}))},onStateChange:function(e){var t=e.state;c({state:t})},__autocomplete_pluginOptions:e}}function qe(e){return qe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},qe(e)}function We(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Je(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==qe(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==qe(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===qe(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Xe(e,t,n){var r,o=t.initialState;return{getState:function(){return o},dispatch:function(r,a){var i=function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n0},reshape:function(e){return e.sources}},e),{},{id:null!==(n=e.id)&&void 0!==n?n:at(),plugins:o,initialState:mt({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var n;null===(n=e.onStateChange)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onStateChange)||void 0===n?void 0:n.call(e,t)}))},onSubmit:function(t){var n;null===(n=e.onSubmit)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onSubmit)||void 0===n?void 0:n.call(e,t)}))},onReset:function(t){var n;null===(n=e.onReset)||void 0===n||n.call(e,t),o.forEach((function(e){var n;return null===(n=e.onReset)||void 0===n?void 0:n.call(e,t)}))},getSources:function(n){return Promise.all([].concat(dt(o.map((function(e){return e.getSources}))),[e.getSources]).filter(Boolean).map((function(e){return function(e,t){var n=[];return Promise.resolve(e(t)).then((function(e){return Array.isArray(e),Promise.all(e.filter((function(e){return Boolean(e)})).map((function(e){if(e.sourceId,n.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));n.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:Ee,onResolve:Ee};Object.keys(t).forEach((function(e){t[e].__default=!0}));var r=st(st({},t),e);return Promise.resolve(r)})))}))}(e,n)}))).then((function(e){return Ye(e)})).then((function(e){return e.map((function(e){return mt(mt({},e),{},{onSelect:function(n){e.onSelect(n),t.forEach((function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,n)}))},onActive:function(n){e.onActive(n),t.forEach((function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,n)}))},onResolve:function(n){e.onResolve(n),t.forEach((function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,n)}))}})}))}))},navigator:mt({navigate:function(e){var t=e.itemUrl;r.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,n=r.open(t,"_blank","noopener");null==n||n.focus()},navigateNewWindow:function(e){var t=e.itemUrl;r.open(t,"_blank","noopener")}},e.navigator)})}function vt(e){return vt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},vt(e)}function bt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function yt(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var Ut,$t,Ht,Zt=null,Vt=(Ut=-1,$t=-1,Ht=void 0,function(e){var t=++Ut;return Promise.resolve(e).then((function(e){return Ht&&t<$t?Ht:($t=t,Ht=e,e)}))});function Qt(e){var t=e.event,n=e.nextState,r=void 0===n?{}:n,o=e.props,a=e.query,i=e.refresh,s=e.store,l=zt(e,Dt);Zt&&o.environment.clearTimeout(Zt);var c=l.setCollections,u=l.setIsOpen,d=l.setQuery,p=l.setActiveItemId,f=l.setStatus;if(d(a),p(o.defaultActiveItemId),!a&&!1===o.openOnFocus){var m,h=s.getState().collections.map((function(e){return Ft(Ft({},e),{},{items:[]})}));f("idle"),c(h),u(null!==(m=r.isOpen)&&void 0!==m?m:o.shouldPanelOpen({state:s.getState()}));var g=At(Vt(h).then((function(){return Promise.resolve()})));return s.pendingRequests.add(g)}f("loading"),Zt=o.environment.setTimeout((function(){f("stalled")}),o.stallThreshold);var v=At(Vt(o.getSources(Ft({query:a,refresh:i,state:s.getState()},l)).then((function(e){return Promise.all(e.map((function(e){return Promise.resolve(e.getItems(Ft({query:a,refresh:i,state:s.getState()},l))).then((function(t){return Ot(t,e.sourceId,s.getState())}))}))).then(Gt).then((function(t){return Pt(t,e,s)})).then((function(e){return function(e){var t=e.collections,n=e.props,r=e.state,o=t.reduce((function(e,t){return yt(yt({},e),{},St({},t.source.sourceId,yt(yt({},t.source),{},{getItems:function(){return Ye(t.items)}})))}),{}),a=n.plugins.reduce((function(e,t){return t.reshape?t.reshape(e):e}),{sourcesBySourceId:o,state:r}).sourcesBySourceId;return Ye(n.reshape({sourcesBySourceId:a,sources:Object.values(a),state:r})).filter(Boolean).map((function(e){return{source:e,items:e.getItems()}}))}({collections:e,props:o,state:s.getState()})}))})))).then((function(e){var n;f("idle"),c(e);var d=o.shouldPanelOpen({state:s.getState()});u(null!==(n=r.isOpen)&&void 0!==n?n:o.openOnFocus&&!a&&d||d);var p=Lt(s.getState());if(null!==s.getState().activeItemId&&p){var m=p.item,h=p.itemInputValue,g=p.itemUrl,v=p.source;v.onActive(Ft({event:t,item:m,itemInputValue:h,itemUrl:g,refresh:i,source:v,state:s.getState()},l))}})).finally((function(){f("idle"),Zt&&o.environment.clearTimeout(Zt)}));return s.pendingRequests.add(v)}function qt(e){return qt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},qt(e)}var Wt=["event","props","refresh","store"];function Jt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Xt(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var en=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function tn(e){return tn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},tn(e)}var nn=["props","refresh","store"],rn=["inputElement","formElement","panelElement"],on=["inputElement"],an=["inputElement","maxLength"],sn=["sourceIndex"],ln=["sourceIndex"],cn=["item","source","sourceIndex"];function un(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function dn(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function mn(e){var t=e.props,n=e.refresh,r=e.store,o=fn(e,nn),a=function(e,t){return void 0!==t?"".concat(e,"-").concat(t):e};return{getEnvironmentProps:function(e){var n=e.inputElement,o=e.formElement,a=e.panelElement;function i(e){!r.getState().isOpen&&r.pendingRequests.isEmpty()||e.target===n||!1===[o,a].some((function(t){return n=t,r=e.target,n===r||n.contains(r);var n,r}))&&(r.dispatch("blur",null),t.debug||r.pendingRequests.cancelAll())}return dn({onTouchStart:i,onMouseDown:i,onTouchMove:function(e){!1!==r.getState().isOpen&&n===t.environment.document.activeElement&&e.target!==n&&n.blur()}},fn(e,rn))},getRootProps:function(e){return dn({role:"combobox","aria-expanded":r.getState().isOpen,"aria-haspopup":"listbox","aria-owns":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label")},e)},getFormProps:function(e){e.inputElement;return dn({action:"",noValidate:!0,role:"search",onSubmit:function(a){var i;a.preventDefault(),t.onSubmit(dn({event:a,refresh:n,state:r.getState()},o)),r.dispatch("submit",null),null===(i=e.inputElement)||void 0===i||i.blur()},onReset:function(a){var i;a.preventDefault(),t.onReset(dn({event:a,refresh:n,state:r.getState()},o)),r.dispatch("reset",null),null===(i=e.inputElement)||void 0===i||i.focus()}},fn(e,on))},getLabelProps:function(e){var n=e||{},r=n.sourceIndex,o=fn(n,sn);return dn({htmlFor:"".concat(a(t.id,r),"-input"),id:"".concat(a(t.id,r),"-label")},o)},getInputProps:function(e){var a;function i(e){(t.openOnFocus||Boolean(r.getState().query))&&Qt(dn({event:e,props:t,query:r.getState().completion||r.getState().query,refresh:n,store:r},o)),r.dispatch("focus",null)}var s=e||{},l=(s.inputElement,s.maxLength),c=void 0===l?512:l,u=fn(s,an),d=Lt(r.getState()),p=function(e){return Boolean(e&&e.match(en))}((null===(a=t.environment.navigator)||void 0===a?void 0:a.userAgent)||""),f=t.enterKeyHint||(null!=d&&d.itemUrl&&!p?"go":"search");return dn({"aria-autocomplete":"both","aria-activedescendant":r.getState().isOpen&&null!==r.getState().activeItemId?"".concat(t.id,"-item-").concat(r.getState().activeItemId):void 0,"aria-controls":r.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label"),value:r.getState().completion||r.getState().query,id:"".concat(t.id,"-input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:f,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:c,type:"search",onChange:function(e){Qt(dn({event:e,props:t,query:e.currentTarget.value.slice(0,c),refresh:n,store:r},o))},onKeyDown:function(e){!function(e){var t=e.event,n=e.props,r=e.refresh,o=e.store,a=Kt(e,Wt);if("ArrowUp"===t.key||"ArrowDown"===t.key){var i=function(){var e=n.environment.document.getElementById("".concat(n.id,"-item-").concat(o.getState().activeItemId));e&&(e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded(!1):e.scrollIntoView(!1))},s=function(){var e=Lt(o.getState());if(null!==o.getState().activeItemId&&e){var n=e.item,i=e.itemInputValue,s=e.itemUrl,l=e.source;l.onActive(Xt({event:t,item:n,itemInputValue:i,itemUrl:s,refresh:r,source:l,state:o.getState()},a))}};t.preventDefault(),!1===o.getState().isOpen&&(n.openOnFocus||Boolean(o.getState().query))?Qt(Xt({event:t,props:n,query:o.getState().query,refresh:r,store:o},a)).then((function(){o.dispatch(t.key,{nextActiveItemId:n.defaultActiveItemId}),s(),setTimeout(i,0)})):(o.dispatch(t.key,{}),s(),i())}else if("Escape"===t.key)t.preventDefault(),o.dispatch(t.key,null),o.pendingRequests.cancelAll();else if("Tab"===t.key)o.dispatch("blur",null),o.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===o.getState().activeItemId||o.getState().collections.every((function(e){return 0===e.items.length})))return void(n.debug||o.pendingRequests.cancelAll());t.preventDefault();var l=Lt(o.getState()),c=l.item,u=l.itemInputValue,d=l.itemUrl,p=l.source;if(t.metaKey||t.ctrlKey)void 0!==d&&(p.onSelect(Xt({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:p,state:o.getState()},a)),n.navigator.navigateNewTab({itemUrl:d,item:c,state:o.getState()}));else if(t.shiftKey)void 0!==d&&(p.onSelect(Xt({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:p,state:o.getState()},a)),n.navigator.navigateNewWindow({itemUrl:d,item:c,state:o.getState()}));else if(t.altKey);else{if(void 0!==d)return p.onSelect(Xt({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:p,state:o.getState()},a)),void n.navigator.navigate({itemUrl:d,item:c,state:o.getState()});Qt(Xt({event:t,nextState:{isOpen:!1},props:n,query:u,refresh:r,store:o},a)).then((function(){p.onSelect(Xt({event:t,item:c,itemInputValue:u,itemUrl:d,refresh:r,source:p,state:o.getState()},a))}))}}}(dn({event:e,props:t,refresh:n,store:r},o))},onFocus:i,onBlur:Ee,onClick:function(n){e.inputElement!==t.environment.document.activeElement||r.getState().isOpen||i(n)}},u)},getPanelProps:function(e){return dn({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){r.dispatch("mouseleave",null)}},e)},getListProps:function(e){var n=e||{},r=n.sourceIndex,o=fn(n,ln);return dn({role:"listbox","aria-labelledby":"".concat(a(t.id,r),"-label"),id:"".concat(a(t.id,r),"-list")},o)},getItemProps:function(e){var i=e.item,s=e.source,l=e.sourceIndex,c=fn(e,cn);return dn({id:"".concat(a(t.id,l),"-item-").concat(i.__autocomplete_id),role:"option","aria-selected":r.getState().activeItemId===i.__autocomplete_id,onMouseMove:function(e){if(i.__autocomplete_id!==r.getState().activeItemId){r.dispatch("mousemove",i.__autocomplete_id);var t=Lt(r.getState());if(null!==r.getState().activeItemId&&t){var a=t.item,s=t.itemInputValue,l=t.itemUrl,c=t.source;c.onActive(dn({event:e,item:a,itemInputValue:s,itemUrl:l,refresh:n,source:c,state:r.getState()},o))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var a=s.getItemInputValue({item:i,state:r.getState()}),l=s.getItemUrl({item:i,state:r.getState()});(l?Promise.resolve():Qt(dn({event:e,nextState:{isOpen:!1},props:t,query:a,refresh:n,store:r},o))).then((function(){s.onSelect(dn({event:e,item:i,itemInputValue:a,itemUrl:l,refresh:n,source:s,state:r.getState()},o))}))}},c)}}}var hn="1.10.0",gn=[{segment:"autocomplete-core",version:hn}];function vn(e){return vn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},vn(e)}function bn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function yn(e){for(var t=1;t=n?null===r?null:0:o}function Cn(e){return Cn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Cn(e)}function wn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Rn(e){for(var t=1;t=5&&((o||!e&&5===r)&&(i.push(r,0,o,n),r=6),e&&(i.push(r,e,0,n),r=6)),o=""},l=0;l"===t?(r=1,o=""):o=t+o[0]:a?t===a?a="":o+=t:'"'===t||"'"===t?a=t:">"===t?(s(),r=1):r&&("="===t?(r=5,n=o,o=""):"/"===t&&(r<5||">"===e[l][c+1])?(s(),3===r&&(i=i[0]),r=i,(i=i[0]).push(2,0,r),r=0):" "===t||"\t"===t||"\n"===t||"\r"===t?(s(),r=2):o+=t),3===r&&"!--"===o&&(r=4,i=i[0])}return s(),i}(e)),t),arguments,[])).length>1?t:t[0]}var Dn=function(e){var t=e.environment,n=t.document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("class","aa-SubmitIcon"),n.setAttribute("viewBox","0 0 24 24"),n.setAttribute("width","20"),n.setAttribute("height","20"),n.setAttribute("fill","currentColor");var r=t.document.createElementNS("http://www.w3.org/2000/svg","path");return r.setAttribute("d","M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z"),n.appendChild(r),n},Mn=function(e){var t=e.environment,n=t.document.createElementNS("http://www.w3.org/2000/svg","svg");n.setAttribute("class","aa-ClearIcon"),n.setAttribute("viewBox","0 0 24 24"),n.setAttribute("width","18"),n.setAttribute("height","18"),n.setAttribute("fill","currentColor");var r=t.document.createElementNS("http://www.w3.org/2000/svg","path");return r.setAttribute("d","M5.293 6.707l5.293 5.293-5.293 5.293c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0l5.293-5.293 5.293 5.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-5.293-5.293 5.293-5.293c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-5.293 5.293-5.293-5.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414z"),n.appendChild(r),n},Fn=function(e){var t=e.environment.document.createElementNS("http://www.w3.org/2000/svg","svg");return t.setAttribute("class","aa-LoadingIcon"),t.setAttribute("viewBox","0 0 100 100"),t.setAttribute("width","20"),t.setAttribute("height","20"),t.innerHTML='\n \n',t},Bn=["ontouchstart","ontouchend","ontouchmove","ontouchcancel"];function zn(e,t,n){e[t]=null===n?"":"number"!=typeof n?n:n+"px"}function Un(e){this._listeners[e.type](e)}function $n(e,t,n){var r,o,a=e[t];if("style"===t)if("string"==typeof n)e.style=n;else if(null===n)e.style="";else for(t in n)a&&n[t]===a[t]||zn(e.style,t,n[t]);else"o"===t[0]&&"n"===t[1]?(r=t!==(t=t.replace(/Capture$/,"")),((o=t.toLowerCase())in e||Bn.includes(o))&&(t=o),t=t.slice(2),e._listeners||(e._listeners={}),e._listeners[t]=n,n?a||e.addEventListener(t,Un,r):e.removeEventListener(t,Un,r)):"list"!==t&&"tagName"!==t&&"form"!==t&&"type"!==t&&"size"!==t&&"download"!==t&&"href"!==t&&t in e?e[t]=null==n?"":n:"function"!=typeof n&&"dangerouslySetInnerHTML"!==t&&(null==n||!1===n&&!/^ar/.test(t)?e.removeAttribute(t):e.setAttribute(t,n))}function Hn(e){return"onChange"===e?"onInput":e}function Zn(e,t){for(var n in t)$n(e,Hn(n),t[n])}function Vn(e,t){for(var n in t)"o"===n[0]&&"n"===n[1]||$n(e,Hn(n),t[n])}var Qn=["children"];function qn(e){return function(e){if(Array.isArray(e))return Wn(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Wn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Wn(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Wn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function Xn(e){return function(t,n){var r=n.children,o=void 0===r?[]:r,a=Jn(n,Qn),i=e.document.createElement(t);return Zn(i,a),i.append.apply(i,qn(o)),i}}function Yn(e){return Yn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Yn(e)}var Kn=["autocompleteScopeApi","environment","classNames","getInputProps","getInputPropsCore","isDetached","state"];function er(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function tr(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var or=function(e){var t=e.autocompleteScopeApi,n=e.environment,r=(e.classNames,e.getInputProps),o=e.getInputPropsCore,a=e.isDetached,i=e.state,s=rr(e,Kn),l=Xn(n)("input",s),c=r(tr({state:i,props:o({inputElement:l}),inputElement:l},t));return Zn(l,tr(tr({},c),{},{onKeyDown:function(e){a&&"Tab"===e.key||c.onKeyDown(e)}})),l};function ar(e){return ar="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ar(e)}function ir(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function sr(e){for(var t=1;t2&&(i.children=arguments.length>3?cr.call(arguments,2):n),"function"==typeof e&&null!=e.defaultProps)for(a in e.defaultProps)void 0===i[a]&&(i[a]=e.defaultProps[a]);return xr(e,i,r,o,null)}function xr(e,t,n,r,o){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:null==o?++dr:o};return null==o&&null!=ur.vnode&&ur.vnode(a),a}function Cr(e){return e.children}function wr(e,t){this.props=e,this.context=t}function Rr(e,t){if(null==t)return e.__?Rr(e.__,e.__.__k.indexOf(e)+1):null;for(var n;tt&&pr.sort(hr));Gr.__r=0}function Pr(e,t,n,r,o,a,i,s,l,c,u){var d,p,f,m,h,g,v,b,y,S,E=0,_=r&&r.__k||vr,x=_.length,C=x,w=t.length;for(n.__k=[],d=0;d0?xr(m.type,m.props,m.key,m.ref?m.ref:null,m.__v):m)&&(m.__=n,m.__b=n.__b+1,-1===(b=Ar(m,_,v=d+E,C))?f=gr:(f=_[b]||gr,_[b]=void 0,C--),Mr(e,m,f,o,a,i,s,l,c,u),h=m.__e,(p=m.ref)&&f.ref!=p&&(f.ref&&zr(f.ref,null,m),u.push(p,m.__c||h,m)),null!=h&&(null==g&&(g=h),S=!(y=f===gr||null===f.__v)&&b===v,y?-1==b&&E--:b!==v&&(b===v+1?(E++,S=!0):b>v?C>w-v?(E+=b-v,S=!0):E--:E=b(null!=l?1:0))for(;i>=0||s=0){if((l=t[i])&&o==l.key&&a===l.type)return i;i--}if(s0&&void 0!==arguments[0]?arguments[0]:[];return{get:function(){return e},add:function(t){var n=e[e.length-1];(null==n?void 0:n.isHighlighted)===t.isHighlighted?e[e.length-1]={value:n.value+t.value,isHighlighted:n.isHighlighted}:e.push(t)}}}(n?[{value:n,isHighlighted:!1}]:[]);return t.forEach((function(e){var t=e.split(Qr);r.add({value:t[0],isHighlighted:!0}),""!==t[1]&&r.add({value:t[1],isHighlighted:!1})})),r.get()}function Wr(e){return function(e){if(Array.isArray(e))return Jr(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Jr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Jr(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Jr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n",""":'"',"'":"'"},eo=new RegExp(/\w/i),to=/&(amp|quot|lt|gt|#39);/g,no=RegExp(to.source);function ro(e,t){var n,r,o,a=e[t],i=(null===(n=e[t+1])||void 0===n?void 0:n.isHighlighted)||!0,s=(null===(r=e[t-1])||void 0===r?void 0:r.isHighlighted)||!0;return eo.test((o=a.value)&&no.test(o)?o.replace(to,(function(e){return Kr[e]})):o)||s!==i?a.isHighlighted:s}function oo(e){return oo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},oo(e)}function ao(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function io(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var Co={clearButton:"aa-ClearButton",detachedCancelButton:"aa-DetachedCancelButton",detachedContainer:"aa-DetachedContainer",detachedFormContainer:"aa-DetachedFormContainer",detachedOverlay:"aa-DetachedOverlay",detachedSearchButton:"aa-DetachedSearchButton",detachedSearchButtonIcon:"aa-DetachedSearchButtonIcon",detachedSearchButtonPlaceholder:"aa-DetachedSearchButtonPlaceholder",detachedSearchButtonQuery:"aa-DetachedSearchButtonQuery",form:"aa-Form",input:"aa-Input",inputWrapper:"aa-InputWrapper",inputWrapperPrefix:"aa-InputWrapperPrefix",inputWrapperSuffix:"aa-InputWrapperSuffix",item:"aa-Item",label:"aa-Label",list:"aa-List",loadingIndicator:"aa-LoadingIndicator",panel:"aa-Panel",panelLayout:"aa-PanelLayout aa-Panel--scrollable",root:"aa-Autocomplete",source:"aa-Source",sourceFooter:"aa-SourceFooter",sourceHeader:"aa-SourceHeader",sourceNoResults:"aa-SourceNoResults",submitButton:"aa-SubmitButton"},wo=function(e,t){var n=e.children;(0,e.render)(n,t)},Ro={createElement:_r,Fragment:Cr,render:Hr};function ko(e){var t=e.panelPlacement,n=e.container,r=e.form,o=e.environment,a=n.getBoundingClientRect(),i=(o.pageYOffset||o.document.documentElement.scrollTop||o.document.body.scrollTop||0)+a.top+a.height;switch(t){case"start":return{top:i,left:a.left};case"end":return{top:i,right:o.document.documentElement.clientWidth-(a.left+a.width)};case"full-width":return{top:i,left:0,right:0,width:"unset",maxWidth:"unset"};case"input-wrapper-width":var s=r.getBoundingClientRect();return{top:i,left:s.left,right:o.document.documentElement.clientWidth-(s.left+s.width),width:"unset",maxWidth:"unset"};default:throw new Error("[Autocomplete] The `panelPlacement` value ".concat(JSON.stringify(t)," is not valid."))}}function Oo(e){return Oo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Oo(e)}function Go(){return Go=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function qo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Wo(e){for(var t=1;t0;if(!p.value.core.openOnFocus&&!t.query)return n;var r=Boolean(c.current||p.value.renderer.renderNoResults);return!n&&r||n},__autocomplete_metadata:{userAgents:Ao,options:e}}))})),h=be(Wo({collections:[],completion:null,context:{},isOpen:!1,query:"",activeItemId:null,status:"idle"},p.value.core.initialState)),g={getEnvironmentProps:p.value.renderer.getEnvironmentProps,getFormProps:p.value.renderer.getFormProps,getInputProps:p.value.renderer.getInputProps,getItemProps:p.value.renderer.getItemProps,getLabelProps:p.value.renderer.getLabelProps,getListProps:p.value.renderer.getListProps,getPanelProps:p.value.renderer.getPanelProps,getRootProps:p.value.renderer.getRootProps},v={setActiveItemId:m.value.setActiveItemId,setQuery:m.value.setQuery,setCollections:m.value.setCollections,setIsOpen:m.value.setIsOpen,setStatus:m.value.setStatus,setContext:m.value.setContext,refresh:m.value.refresh,navigator:m.value.navigator},b=s((function(){return jn.bind(p.value.renderer.renderer.createElement)})),y=s((function(){return function(e){var t=e.autocomplete,n=e.autocompleteScopeApi,r=e.classNames,o=e.environment,a=e.isDetached,i=e.placeholder,s=void 0===i?"Search":i,l=e.propGetters,c=e.setIsModalOpen,u=e.state,d=e.translations,p=Xn(o),f=l.getRootProps(sr({state:u,props:t.getRootProps({})},n)),m=p("div",sr({class:r.root},f)),h=p("div",{class:r.detachedContainer,onMouseDown:function(e){e.stopPropagation()}}),g=p("div",{class:r.detachedOverlay,children:[h],onMouseDown:function(){c(!1),t.setIsOpen(!1)}}),v=l.getLabelProps(sr({state:u,props:t.getLabelProps({})},n)),b=p("button",{class:r.submitButton,type:"submit",title:d.submitButtonTitle,children:[Dn({environment:o})]}),y=p("label",sr({class:r.label,children:[b]},v)),S=p("button",{class:r.clearButton,type:"reset",title:d.clearButtonTitle,children:[Mn({environment:o})]}),E=p("div",{class:r.loadingIndicator,children:[Fn({environment:o})]}),_=or({class:r.input,environment:o,state:u,getInputProps:l.getInputProps,getInputPropsCore:t.getInputProps,autocompleteScopeApi:n,isDetached:a}),x=p("div",{class:r.inputWrapperPrefix,children:[y,E]}),C=p("div",{class:r.inputWrapperSuffix,children:[S]}),w=p("div",{class:r.inputWrapper,children:[_]}),R=l.getFormProps(sr({state:u,props:t.getFormProps({inputElement:_})},n)),k=p("form",sr({class:r.form,children:[x,w,C]},R)),O=l.getPanelProps(sr({state:u,props:t.getPanelProps({})},n)),G=p("div",sr({class:r.panel},O)),P=p("div",{class:r.detachedSearchButtonQuery,textContent:u.query}),I=p("div",{class:r.detachedSearchButtonPlaceholder,hidden:Boolean(u.query),textContent:s});if(a){var T=p("div",{class:r.detachedSearchButtonIcon,children:[Dn({environment:o})]}),A=p("button",{type:"button",class:r.detachedSearchButton,onClick:function(){c(!0)},children:[T,I,P]}),N=p("button",{type:"button",class:r.detachedCancelButton,textContent:d.detachedCancelButtonText,onTouchStart:function(e){e.stopPropagation()},onClick:function(){t.setIsOpen(!1),c(!1)}}),L=p("div",{class:r.detachedFormContainer,children:[k,N]});h.appendChild(L),m.appendChild(A)}else m.appendChild(k);return{detachedContainer:h,detachedOverlay:g,detachedSearchButtonQuery:P,detachedSearchButtonPlaceholder:I,inputWrapper:w,input:_,root:m,form:k,label:y,submitButton:b,clearButton:S,loadingIndicator:E,panel:G}}({autocomplete:m.value,autocompleteScopeApi:v,classNames:p.value.renderer.classNames,environment:p.value.core.environment,isDetached:f.value,placeholder:p.value.core.placeholder,propGetters:g,setIsModalOpen:x,state:h.current,translations:p.value.renderer.translations})}));function S(){Zn(y.value.panel,{style:f.value?{}:ko({panelPlacement:p.value.renderer.panelPlacement,container:y.value.root,form:y.value.form,environment:p.value.core.environment})})}function E(e){h.current=e;var t={autocomplete:m.value,autocompleteScopeApi:v,classNames:p.value.renderer.classNames,components:p.value.renderer.components,container:p.value.renderer.container,html:b.value,dom:y.value,panelContainer:f.value?y.value.detachedContainer:p.value.renderer.panelContainer,propGetters:g,state:h.current,renderer:p.value.renderer.renderer},n=!rt(e)&&!c.current&&p.value.renderer.renderNoResults||p.value.renderer.render;!function(e){var t=e.autocomplete,n=e.autocompleteScopeApi,r=e.dom,o=e.propGetters,a=e.state;Vn(r.root,o.getRootProps(Io({state:a,props:t.getRootProps({})},n))),Vn(r.input,o.getInputProps(Io({state:a,props:t.getInputProps({inputElement:r.input}),inputElement:r.input},n))),Zn(r.label,{hidden:"stalled"===a.status}),Zn(r.loadingIndicator,{hidden:"stalled"!==a.status}),Zn(r.clearButton,{hidden:!a.query}),Zn(r.detachedSearchButtonQuery,{textContent:a.query}),Zn(r.detachedSearchButtonPlaceholder,{hidden:Boolean(a.query)})}(t),function(e,t){var n=t.autocomplete,r=t.autocompleteScopeApi,o=t.classNames,a=t.html,i=t.dom,s=t.panelContainer,l=t.propGetters,c=t.state,u=t.components,d=t.renderer;if(c.isOpen){s.contains(i.panel)||"loading"===c.status||s.appendChild(i.panel),i.panel.classList.toggle("aa-Panel--stalled","stalled"===c.status);var p=c.collections.filter((function(e){var t=e.source,n=e.items;return t.templates.noResults||n.length>0})).map((function(e,t){var i=e.source,s=e.items;return d.createElement("section",{key:t,className:o.source,"data-autocomplete-source-id":i.sourceId},i.templates.header&&d.createElement("div",{className:o.sourceHeader},i.templates.header({components:u,createElement:d.createElement,Fragment:d.Fragment,items:s,source:i,state:c,html:a})),i.templates.noResults&&0===s.length?d.createElement("div",{className:o.sourceNoResults},i.templates.noResults({components:u,createElement:d.createElement,Fragment:d.Fragment,source:i,state:c,html:a})):d.createElement("ul",Go({className:o.list},l.getListProps(Io({state:c,props:n.getListProps({sourceIndex:t})},r))),s.map((function(e){var s=n.getItemProps({item:e,source:i,sourceIndex:t});return d.createElement("li",Go({key:s.id,className:o.item},l.getItemProps(Io({state:c,props:s},r))),i.templates.item({components:u,createElement:d.createElement,Fragment:d.Fragment,item:e,state:c,html:a}))}))),i.templates.footer&&d.createElement("div",{className:o.sourceFooter},i.templates.footer({components:u,createElement:d.createElement,Fragment:d.Fragment,items:s,source:i,state:c,html:a})))})),f=d.createElement(d.Fragment,null,d.createElement("div",{className:o.panelLayout},p),d.createElement("div",{className:"aa-GradientBottom"})),m=p.reduce((function(e,t){return e[t.props["data-autocomplete-source-id"]]=t,e}),{});e(Io(Io({children:f,state:c,sections:p,elements:m},d),{},{components:u,html:a},r),i.panel)}else s.contains(i.panel)&&s.removeChild(i.panel)}(n,t)}function _(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};o();var t,n,r=p.value.renderer,i=r.components,s=Qo(r,Zo);u.current=Mo(s,p.value.core,{components:(t=i,n=function(e){return!e.value.hasOwnProperty("__autocomplete_componentName")},Object.entries(t).reduce((function(e,t){var r=$o(t,2),o=r[0],a=r[1];return n({key:o,value:a})?zo(zo({},e),{},Uo({},o,a)):e}),{})),initialState:h.current},e),l(),a(),m.value.refresh().then((function(){E(h.current)}))}function x(e){requestAnimationFrame((function(){var t=p.value.core.environment.document.body.contains(y.value.detachedOverlay);e!==t&&(e?(p.value.core.environment.document.body.appendChild(y.value.detachedOverlay),p.value.core.environment.document.body.classList.add("aa-Detached"),y.value.input.focus()):(p.value.core.environment.document.body.removeChild(y.value.detachedOverlay),p.value.core.environment.document.body.classList.remove("aa-Detached")))}))}return r((function(){var e=m.value.getEnvironmentProps({formElement:y.value.form,panelElement:y.value.panel,inputElement:y.value.input});return Zn(p.value.core.environment,e),function(){Zn(p.value.core.environment,Object.keys(e).reduce((function(e,t){return Wo(Wo({},e),{},Jo({},t,void 0))}),{}))}})),r((function(){var e=f.value?p.value.core.environment.document.body:p.value.renderer.panelContainer,t=f.value?y.value.detachedOverlay:y.value.panel;return f.value&&h.current.isOpen&&x(!0),E(h.current),function(){e.contains(t)&&e.removeChild(t)}})),r((function(){var e=p.value.renderer.container;return e.appendChild(y.value.root),function(){e.removeChild(y.value.root)}})),r((function(){var e=ve((function(e){E(e.state)}),0);return d.current=function(t){var n=t.state,r=t.prevState;(f.value&&r.isOpen!==n.isOpen&&x(n.isOpen),f.value||!n.isOpen||r.isOpen||S(),n.query!==r.query)&&p.value.core.environment.document.querySelectorAll(".aa-Panel--scrollable").forEach((function(e){0!==e.scrollTop&&(e.scrollTop=0)}));e({state:n})},function(){d.current=void 0}})),r((function(){var e=ve((function(){var e=f.value;f.value=p.value.core.environment.matchMedia(p.value.renderer.detachedMediaQuery).matches,e!==f.value?_({}):requestAnimationFrame(S)}),20);return p.value.core.environment.addEventListener("resize",e),function(){p.value.core.environment.removeEventListener("resize",e)}})),r((function(){if(!f.value)return function(){};function e(e){y.value.detachedContainer.classList.toggle("aa-DetachedContainer--modal",e)}function t(t){e(t.matches)}var n=p.value.core.environment.matchMedia(getComputedStyle(p.value.core.environment.document.documentElement).getPropertyValue("--aa-detached-modal-media-query"));e(n.matches);var r=Boolean(n.addEventListener);return r?n.addEventListener("change",t):n.addListener(t),function(){r?n.removeEventListener("change",t):n.removeListener(t)}})),r((function(){return requestAnimationFrame(S),function(){}})),Wo(Wo({},v),{},{update:_,destroy:function(){o()}})}var Yo=n(1514);const Ko=n(5351),ea=Ko;var ta=n(813),na=n.n(ta);function ra(){const e=(0,l.TH)(),t=(0,l.k6)(),{siteConfig:{baseUrl:n}}=(0,le.Z)(),[o,a]=(0,r.useState)({terms:[],isDocsOrBlog:!1});return(0,r.useEffect)((()=>{if(!e.state?.cmfcmfhighlight||0===e.state.cmfcmfhighlight.terms.length)return;a(e.state.cmfcmfhighlight);const{cmfcmfhighlight:n,...r}=e.state;t.replace({...e,state:r})}),[e.state?.cmfcmfhighlight,t,e]),(0,r.useEffect)((()=>{if(0===o.terms.length)return;const e=o.isDocsOrBlog?document.getElementsByTagName("article")[0]:document.getElementsByTagName("main")[0];if(!e)return;const t=new(na())(e),n={ignoreJoiners:!0};return t.mark(o.terms,n),()=>t.unmark(n)}),[o,n]),null}var oa=n(1610),aa=n(246);function ia(e){let{document:t}=e;const[n,r]=t.sectionRoute.split("#");let o=n;return r&&(o+="#"+r),o}const sa={documents:[],index:ea((function(){this.ref("id"),this.field("title"),this.field("content")}))};const la=()=>{const e=(0,F.Z)(),[t,n]=(0,r.useState)((()=>!!e&&"dark"===document.documentElement.getAttribute("data-theme")));(0,r.useEffect)((()=>{const e=new MutationObserver((()=>{n("dark"===document.documentElement.getAttribute("data-theme"))}));return e.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>e.disconnect()}),[]);const{siteConfig:{baseUrl:o}}=(0,le.Z)(),{titleBoost:a,contentBoost:i,tagsBoost:s,parentCategoriesBoost:u,indexDocSidebarParentCategories:d,maxSearchResults:p}=(0,oa.eZ)("@cmfcmf/docusaurus-search-local"),f=(0,l.k6)(),{tags:m}=(0,aa._q)(),h=(0,r.useRef)(m);(0,r.useEffect)((()=>{h.current=m}),[m]);const g=(0,r.useRef)({}),v=async e=>{const t=g.current[e];switch(t?.state){case"ready":return t;case void 0:{const t=[];g.current[e]={state:"loading",callbacks:t};const n=await async function(e,t){{let r;try{const n=await fetch(`${e}search-index-${t}.json`);if(!n.ok)return sa;r=await n.json()}catch(n){return sa}return{documents:r.documents,index:ea.Index.load(r.index)}}}(o,e);return t.forEach((e=>e(n))),g.current[e]={state:"ready",...n}}case"loading":return new Promise((e=>{t.callbacks.push(e)}))}},b=(0,c.I)({message:"cmfcmf/d-s-l.searchBar.placeholder",description:"Placeholder shown in the searchbar"}),y=(0,r.useRef)(null),S=(0,r.useRef)(null);return(0,r.useEffect)((()=>{if(y.current)return S.current=Xo({container:y.current,placeholder:b,renderer:{createElement:r.createElement,Fragment:r.Fragment,render:ge.render},navigator:{navigate(e){let{item:t,itemUrl:n}=e;f.push(n,{cmfcmfhighlight:{terms:t.terms,isDocsOrBlog:"docs"===t.document.type||"blog"===t.document.type}})}},detachedMediaQuery:"",defaultActiveItemId:0,translations:{clearButtonTitle:(0,c.I)({message:"cmfcmf/d-s-l.searchBar.clearButtonTitle",description:"Title of the button to clear the current search input"}),detachedCancelButtonText:(0,c.I)({message:"cmfcmf/d-s-l.searchBar.detachedCancelButtonText",description:"Text of the button to close the detached search window"}),submitButtonTitle:(0,c.I)({message:"cmfcmf/d-s-l.searchBar.submitButtonTitle",description:"Title of the button to submit a new search"})},getSources(e){let{query:t}=e;return[{sourceId:"search-results",templates:{item(e){let{item:t}=e;const n=ia(t);return r.createElement("a",{href:n,className:"aa-ItemLink",onClick:e=>{e.preventDefault(),f.push(n,{cmfcmfhighlight:{terms:t.terms,isDocsOrBlog:"docs"===t.document.type||"blog"===t.document.type}})}},r.createElement("div",{className:"aa-ItemContent"},r.createElement("div",{className:"aa-ItemContentBody"},r.createElement("div",{className:"aa-ItemContentTitle"},t.document.sectionTitle),t.document.pageTitle!==t.document.sectionTitle&&r.createElement("div",{className:"aa-ItemContentDescription"},t.document.pageTitle))),r.createElement("div",{className:"aa-ItemActions"},r.createElement("button",{className:"aa-ItemActionButton aa-DesktopOnly aa-ActiveOnly",type:"button",title:"Select"},r.createElement("svg",{viewBox:"0 0 24 24",width:"20",height:"20",fill:"currentColor"},r.createElement("path",{d:"M18.984 6.984h2.016v6h-15.188l3.609 3.609-1.406 1.406-6-6 6-6 1.406 1.406-3.609 3.609h13.172v-4.031z"})))))},noResults:()=>r.createElement("div",{className:"aa-ItemContent"},r.createElement("div",{className:"aa-ItemContentBody"},(0,c.I)({message:"cmfcmf/d-s-l.searchBar.noResults",description:"message shown if no results are found"})))},getItemUrl(e){let{item:t}=e;return ia(t)},async getItems(){const e=h.current,n=await Promise.all(e.map((e=>v(e)))),r=(e=>Ko.tokenizer(e).map((e=>e.str)))(t);return n.flatMap((e=>{let{index:t,documents:n}=e;return t.query((e=>{e.term(r,{fields:["title"],boost:a}),e.term(r,{fields:["title"],boost:a,wildcard:ea.Query.wildcard.TRAILING}),e.term(r,{fields:["content"],boost:i}),e.term(r,{fields:["content"],boost:i,wildcard:ea.Query.wildcard.TRAILING}),e.term(r,{fields:["tags"],boost:s}),e.term(r,{fields:["tags"],boost:s,wildcard:ea.Query.wildcard.TRAILING}),d&&(e.term(r,{fields:["sidebarParentCategories"],boost:u}),e.term(r,{fields:["sidebarParentCategories"],boost:u,wildcard:ea.Query.wildcard.TRAILING}))})).slice(0,p).map((e=>({document:n.find((t=>t.id.toString()===e.ref)),score:e.score,terms:r})))})).sort(((e,t)=>t.score-e.score)).slice(0,p)}}]}}),()=>S.current?.destroy()}),[p]),r.createElement(r.Fragment,null,r.createElement(Yo.Z,null,r.createElement("body",{"data-theme":t?"dark":"light"})),r.createElement(ra,null),r.createElement("div",{className:"dsla-search-wrapper"},r.createElement("div",{className:"dsla-search-field",ref:y,"data-tags":m.join(",")})))},ca={searchBox:"searchBox_ZlJk"};function ua(e){let{children:t,className:n}=e;return r.createElement("div",{className:(0,o.Z)(n,ca.searchBox)},t)}var da=n(868),pa=n(8259);var fa=n(6409);const ma=e=>e.docs.find((t=>t.id===e.mainDocId));const ha={default:ae,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:o,...a}=e;const{i18n:{currentLocale:i,locales:u,localeConfigs:d}}=(0,le.Z)(),p=(0,fe.l)(),{search:f,hash:m}=(0,l.TH)(),h=[...n,...u.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${f}${m}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...o],g=t?(0,c.I)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return r.createElement(pe,(0,s.Z)({},a,{mobile:t,label:r.createElement(r.Fragment,null,r.createElement(me,{className:he}),g),items:h}))},search:function(e){let{mobile:t,className:n}=e;return t?null:r.createElement(ua,{className:n},r.createElement(la,null))},dropdown:pe,html:function(e){let{value:t,className:n,mobile:a=!1,isDropdownItem:i=!1}=e;const s=i?"li":"div";return r.createElement(s,{className:(0,o.Z)({navbar__item:!a&&!i,"menu__list-item":a},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:o,...a}=e;const{activeDoc:i}=(0,da.Iw)(o),l=(0,pa.vY)(t,o);return null===l?null:r.createElement(ae,(0,s.Z)({exact:!0},a,{isActive:()=>i?.path===l.path||!!i?.sidebar&&i.sidebar===l.sidebar,label:n??l.id,to:l.path}))},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:o,...a}=e;const{activeDoc:i}=(0,da.Iw)(o),l=(0,pa.oz)(t,o).link;if(!l)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return r.createElement(ae,(0,s.Z)({exact:!0},a,{isActive:()=>i?.sidebar===t,label:n??l.label,to:l.path}))},docsVersion:function(e){let{label:t,to:n,docsPluginId:o,...a}=e;const i=(0,pa.lO)(o)[0],l=t??i.label,c=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(i).path;return r.createElement(ae,(0,s.Z)({},a,{label:l,to:c}))},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:o,dropdownItemsBefore:a,dropdownItemsAfter:i,...u}=e;const{search:d,hash:p}=(0,l.TH)(),f=(0,da.Iw)(n),m=(0,da.gB)(n),{savePreferredVersionName:h}=(0,fa.J)(n),g=m.map((e=>{const t=f.alternateDocVersions[e.name]??ma(e);return{label:e.label,to:`${t.path}${d}${p}`,isActive:()=>e===f.activeVersion,onClick:()=>h(e.name)}})),v=[...a,...g,...i],b=(0,pa.lO)(n)[0],y=t&&v.length>1?(0,c.I)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):b.label,S=t&&v.length>1?void 0:ma(b).path;return v.length<=1?r.createElement(ae,(0,s.Z)({},u,{mobile:t,label:y,to:S,isActive:o?()=>!1:void 0})):r.createElement(pe,(0,s.Z)({},u,{mobile:t,label:y,to:S,items:v,isActive:o?()=>!1:void 0}))}},ga=ha;function va(e){let{type:t,...n}=e;const o=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),a=ga[o];if(!a)throw new Error(`No NavbarItem component found for type "${t}".`);return r.createElement(a,n)}function ba(){const e=(0,G.e)(),t=(0,S.L)().navbar.items;return r.createElement("ul",{className:"menu__list"},t.map(((t,n)=>r.createElement(va,(0,s.Z)({mobile:!0},t,{onClick:()=>e.toggle(),key:n})))))}function ya(e){return r.createElement("button",(0,s.Z)({},e,{type:"button",className:"clean-btn navbar-sidebar__back"}),r.createElement(c.Z,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"},"\u2190 Back to main menu"))}function Sa(){const e=0===(0,S.L)().navbar.items.length,t=j();return r.createElement(r.Fragment,null,!e&&r.createElement(ya,{onClick:()=>t.hide()}),t.content)}function Ea(){const e=(0,G.e)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?r.createElement(D,{header:r.createElement(J,null),primaryMenu:r.createElement(ba,null),secondaryMenu:r.createElement(Sa,null)}):null}const _a={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function xa(e){return r.createElement("div",(0,s.Z)({role:"presentation"},e,{className:(0,o.Z)("navbar-sidebar__backdrop",e.className)}))}function Ca(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:a}}=(0,S.L)(),i=(0,G.e)(),{navbarRef:s,isNavbarVisible:l}=function(e){const[t,n]=(0,r.useState)(e),o=(0,r.useRef)(!1),a=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(a.current=e.getBoundingClientRect().height)}),[]);return(0,P.RF)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i=s?n(!1):i+c{if(!e)return;const r=t.location.hash;if(r?document.getElementById(r.substring(1)):void 0)return o.current=!0,void n(!1);n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return r.createElement("nav",{ref:s,"aria-label":(0,c.I)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,o.Z)("navbar","navbar--fixed-top",n&&[_a.navbarHideable,!l&&_a.navbarHidden],{"navbar--dark":"dark"===a,"navbar--primary":"primary"===a,"navbar-sidebar--show":i.shown})},t,r.createElement(xa,{onClick:i.toggle}),r.createElement(Ea,null))}var wa=n(3905);const Ra={errorBoundaryError:"errorBoundaryError_a6uf"};function ka(e){return r.createElement("button",(0,s.Z)({type:"button"},e),r.createElement(c.Z,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error"},"Try again"))}function Oa(e){let{error:t}=e;const n=(0,wa.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return r.createElement("p",{className:Ra.errorBoundaryError},n)}class Ga extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const Pa="right";function Ia(e){let{width:t=30,height:n=30,className:o,...a}=e;return r.createElement("svg",(0,s.Z)({className:o,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true"},a),r.createElement("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"}))}function Ta(){const{toggle:e,shown:t}=(0,G.e)();return r.createElement("button",{onClick:e,"aria-label":(0,c.I)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button"},r.createElement(Ia,null))}const Aa={colorModeToggle:"colorModeToggle_DEke"};function Na(e){let{items:t}=e;return r.createElement(r.Fragment,null,t.map(((e,t)=>r.createElement(Ga,{key:t,onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t})},r.createElement(va,e)))))}function La(e){let{left:t,right:n}=e;return r.createElement("div",{className:"navbar__inner"},r.createElement("div",{className:"navbar__items"},t),r.createElement("div",{className:"navbar__items navbar__items--right"},n))}function ja(){const e=(0,G.e)(),t=(0,S.L)().navbar.items,[n,o]=function(e){function t(e){return"left"===(e.position??Pa)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),a=t.find((e=>"search"===e.type));return r.createElement(La,{left:r.createElement(r.Fragment,null,!e.disabled&&r.createElement(Ta,null),r.createElement(q,null),r.createElement(Na,{items:n})),right:r.createElement(r.Fragment,null,r.createElement(Na,{items:o}),r.createElement(V,{className:Aa.colorModeToggle}),!a&&r.createElement(ua,null,r.createElement(la,null)))})}function Da(){return r.createElement(Ca,null,r.createElement(ja,null))}function Ma(e){let{item:t}=e;const{to:n,href:o,label:a,prependBaseUrlToHref:i,...l}=t,c=(0,Y.Z)(n),u=(0,Y.Z)(o,{forcePrependBaseUrl:!0});return r.createElement(X.Z,(0,s.Z)({className:"footer__link-item"},o?{href:i?u:o}:{to:c},l),a,o&&!(0,K.Z)(o)&&r.createElement(te.Z,null))}function Fa(e){let{item:t}=e;return t.html?r.createElement("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement("li",{key:t.href??t.to,className:"footer__item"},r.createElement(Ma,{item:t}))}function Ba(e){let{column:t}=e;return r.createElement("div",{className:"col footer__col"},r.createElement("div",{className:"footer__title"},t.title),r.createElement("ul",{className:"footer__items clean-list"},t.items.map(((e,t)=>r.createElement(Fa,{key:t,item:e})))))}function za(e){let{columns:t}=e;return r.createElement("div",{className:"row footer__links"},t.map(((e,t)=>r.createElement(Ba,{key:t,column:e}))))}function Ua(){return r.createElement("span",{className:"footer__link-separator"},"\xb7")}function $a(e){let{item:t}=e;return t.html?r.createElement("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement(Ma,{item:t})}function Ha(e){let{links:t}=e;return r.createElement("div",{className:"footer__links text--center"},r.createElement("div",{className:"footer__links"},t.map(((e,n)=>r.createElement(r.Fragment,{key:n},r.createElement($a,{item:e}),t.length!==n+1&&r.createElement(Ua,null))))))}function Za(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?r.createElement(za,{columns:t}):r.createElement(Ha,{links:t})}var Va=n(7909);const Qa={footerLogoLink:"footerLogoLink_BH7S"};function qa(e){let{logo:t}=e;const{withBaseUrl:n}=(0,Y.C)(),a={light:n(t.src),dark:n(t.srcDark??t.src)};return r.createElement(Va.Z,{className:(0,o.Z)("footer__logo",t.className),alt:t.alt,sources:a,width:t.width,height:t.height,style:t.style})}function Wa(e){let{logo:t}=e;return t.href?r.createElement(X.Z,{href:t.href,className:Qa.footerLogoLink,target:t.target},r.createElement(qa,{logo:t})):r.createElement(qa,{logo:t})}function Ja(e){let{copyright:t}=e;return r.createElement("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function Xa(e){let{style:t,links:n,logo:a,copyright:i}=e;return r.createElement("footer",{className:(0,o.Z)("footer",{"footer--dark":"dark"===t})},r.createElement("div",{className:"container container-fluid"},n,(a||i)&&r.createElement("div",{className:"footer__bottom text--center"},a&&r.createElement("div",{className:"margin-bottom--sm"},a),i)))}function Ya(){const{footer:e}=(0,S.L)();if(!e)return null;const{copyright:t,links:n,logo:o,style:a}=e;return r.createElement(Xa,{style:a,links:n&&n.length>0&&r.createElement(Za,{links:n}),logo:o&&r.createElement(Wa,{logo:o}),copyright:t&&r.createElement(Ja,{copyright:t})})}const Ka=r.memo(Ya),ei=(0,I.Qc)([M.S,E.pl,P.OC,fa.L5,i.VC,function(e){let{children:t}=e;return r.createElement(T.n2,null,r.createElement(G.M,null,r.createElement(N,null,t)))}]);function ti(e){let{children:t}=e;return r.createElement(ei,null,t)}function ni(e){let{error:t,tryAgain:n}=e;return r.createElement("main",{className:"container margin-vert--xl"},r.createElement("div",{className:"row"},r.createElement("div",{className:"col col--6 col--offset-3"},r.createElement("h1",{className:"hero__title"},r.createElement(c.Z,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed"},"This page crashed.")),r.createElement("div",{className:"margin-vert--lg"},r.createElement(ka,{onClick:n,className:"button button--primary shadow--lw"})),r.createElement("hr",null),r.createElement("div",{className:"margin-vert--md"},r.createElement(Oa,{error:t})))))}const ri={mainWrapper:"mainWrapper_z2l0"};function oi(e){const{children:t,noFooter:n,wrapperClassName:s,title:l,description:c}=e;return(0,v.t)(),r.createElement(ti,null,r.createElement(i.d,{title:l,description:c}),r.createElement(y,null),r.createElement(O,null),r.createElement(Da,null),r.createElement("div",{id:d,className:(0,o.Z)(g.k.wrapper.main,ri.mainWrapper,s)},r.createElement(a.Z,{fallback:e=>r.createElement(ni,e)},t)),!n&&r.createElement(Ka,null))}},6811:(e,t,n)=>{"use strict";n.d(t,{Z:()=>d});var r=n(7462),o=n(7294),a=n(3699),i=n(9524),s=n(9962),l=n(107),c=n(7909);function u(e){let{logo:t,alt:n,imageClassName:r}=e;const a={light:(0,i.Z)(t.src),dark:(0,i.Z)(t.srcDark||t.src)},s=o.createElement(c.Z,{className:t.className,sources:a,height:t.height,width:t.width,alt:n,style:t.style});return r?o.createElement("div",{className:r},s):s}function d(e){const{siteConfig:{title:t}}=(0,s.Z)(),{navbar:{title:n,logo:c}}=(0,l.L)(),{imageClassName:d,titleClassName:p,...f}=e,m=(0,i.Z)(c?.href||"/"),h=n?"":t,g=c?.alt??h;return o.createElement(a.Z,(0,r.Z)({to:m},f,c?.target&&{target:c.target}),c&&o.createElement(u,{logo:c,alt:g,imageClassName:d}),null!=n&&o.createElement("b",{className:p},n))}},3647:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294),o=n(1514);function a(e){let{locale:t,version:n,tag:a}=e;const i=t;return r.createElement(o.Z,null,t&&r.createElement("meta",{name:"docusaurus_locale",content:t}),n&&r.createElement("meta",{name:"docusaurus_version",content:n}),a&&r.createElement("meta",{name:"docusaurus_tag",content:a}),i&&r.createElement("meta",{name:"docsearch:language",content:i}),n&&r.createElement("meta",{name:"docsearch:version",content:n}),a&&r.createElement("meta",{name:"docsearch:docusaurus_tag",content:a}))}},7909:(e,t,n)=>{"use strict";n.d(t,{Z:()=>c});var r=n(7462),o=n(7294),a=n(6010),i=n(1048),s=n(9200);const l={themedImage:"themedImage_ToTc","themedImage--light":"themedImage--light_HNdA","themedImage--dark":"themedImage--dark_i4oU"};function c(e){const t=(0,i.Z)(),{colorMode:n}=(0,s.I)(),{sources:c,className:u,alt:d,...p}=e,f=t?"dark"===n?["dark"]:["light"]:["light","dark"];return o.createElement(o.Fragment,null,f.map((e=>o.createElement("img",(0,r.Z)({key:e,src:c[e],alt:d,className:(0,a.Z)(l.themedImage,l[`themedImage--${e}`],u)},p)))))}},4639:(e,t,n)=>{"use strict";n.d(t,{u:()=>s,z:()=>g});var r=n(7462),o=n(7294),a=n(6136);const i="ease-in-out";function s(e){let{initialState:t}=e;const[n,r]=(0,o.useState)(t??!1),a=(0,o.useCallback)((()=>{r((e=>!e))}),[]);return{collapsed:n,setCollapsed:r,toggleCollapsed:a}}const l={display:"none",overflow:"hidden",height:"0px"},c={display:"block",overflow:"visible",height:"auto"};function u(e,t){const n=t?l:c;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function d(e){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return 0;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}function p(e){let{collapsibleRef:t,collapsed:n,animation:r}=e;const a=(0,o.useRef)(!1);(0,o.useEffect)((()=>{const e=t.current;function o(){const t=function(){const t=e.scrollHeight;return{transition:`height ${r?.duration??d(t)}ms ${r?.easing??i}`,height:`${t}px`}}();e.style.transition=t.transition,e.style.height=t.height}if(!a.current)return u(e,n),void(a.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(o(),requestAnimationFrame((()=>{e.style.height=l.height,e.style.overflow=l.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{o()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,r])}function f(e){if(!a.Z.canUseDOM)return e?l:c}function m(e){let{as:t="div",collapsed:n,children:r,animation:a,onCollapseTransitionEnd:i,className:s,disableSSRStyle:l}=e;const c=(0,o.useRef)(null);return p({collapsibleRef:c,collapsed:n,animation:a}),o.createElement(t,{ref:c,style:l?void 0:f(n),onTransitionEnd:e=>{"height"===e.propertyName&&(u(c.current,n),i?.(n))},className:s},r)}function h(e){let{collapsed:t,...n}=e;const[a,i]=(0,o.useState)(!t),[s,l]=(0,o.useState)(t);return(0,o.useLayoutEffect)((()=>{t||i(!0)}),[t]),(0,o.useLayoutEffect)((()=>{a&&l(t)}),[a,t]),a?o.createElement(m,(0,r.Z)({},n,{collapsed:s})):null}function g(e){let{lazy:t,...n}=e;const r=t?h:m;return o.createElement(r,n)}},5830:(e,t,n)=>{"use strict";n.d(t,{nT:()=>m,pl:()=>f});var r=n(7294),o=n(1048),a=n(2560),i=n(3768),s=n(107);const l=(0,a.WA)("docusaurus.announcement.dismiss"),c=(0,a.WA)("docusaurus.announcement.id"),u=()=>"true"===l.get(),d=e=>l.set(String(e)),p=r.createContext(null);function f(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,s.L)(),t=(0,o.Z)(),[n,a]=(0,r.useState)((()=>!!t&&u()));(0,r.useEffect)((()=>{a(u())}),[]);const i=(0,r.useCallback)((()=>{d(!0),a(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=c.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;c.set(t),r&&d(!1),!r&&u()||a(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return r.createElement(p.Provider,{value:n},t)}function m(){const e=(0,r.useContext)(p);if(!e)throw new i.i6("AnnouncementBarProvider");return e}},9200:(e,t,n)=>{"use strict";n.d(t,{I:()=>g,S:()=>h});var r=n(7294),o=n(6136),a=n(3768),i=n(2560),s=n(107);const l=r.createContext(void 0),c="theme",u=(0,i.WA)(c),d={light:"light",dark:"dark"},p=e=>e===d.dark?d.dark:d.light,f=e=>o.Z.canUseDOM?p(document.documentElement.getAttribute("data-theme")):p(e),m=e=>{u.set(p(e))};function h(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,s.L)(),[o,a]=(0,r.useState)(f(e));(0,r.useEffect)((()=>{t&&u.del()}),[t]);const i=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:o=!0}=r;t?(a(t),o&&m(t)):(a(n?window.matchMedia("(prefers-color-scheme: dark)").matches?d.dark:d.light:e),u.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",p(o))}),[o]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==c)return;const t=u.get();null!==t&&i(p(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const l=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||l.current?l.current=window.matchMedia("print").matches:i(null)};return e.addListener(r),()=>e.removeListener(r)}),[i,t,n]),(0,r.useMemo)((()=>({colorMode:o,setColorMode:i,get isDarkTheme(){return o===d.dark},setLightTheme(){i(d.light)},setDarkTheme(){i(d.dark)}})),[o,i])}();return r.createElement(l.Provider,{value:n},t)}function g(){const e=(0,r.useContext)(l);if(null==e)throw new a.i6("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},6409:(e,t,n)=>{"use strict";n.d(t,{J:()=>b,L5:()=>g,Oh:()=>y});var r=n(7294),o=n(868),a=n(6875),i=n(107),s=n(8259),l=n(3768),c=n(2560);const u=e=>`docs-preferred-version-${e}`,d={save:(e,t,n)=>{(0,c.WA)(u(e),{persistence:t}).set(n)},read:(e,t)=>(0,c.WA)(u(e),{persistence:t}).get(),clear:(e,t)=>{(0,c.WA)(u(e),{persistence:t}).del()}},p=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const f=r.createContext(null);function m(){const e=(0,o._r)(),t=(0,i.L)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[a,s]=(0,r.useState)((()=>p(n)));(0,r.useEffect)((()=>{s(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function o(e){const t=d.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(d.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,o(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[a,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){d.save(e,t,n),s((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function h(e){let{children:t}=e;const n=m();return r.createElement(f.Provider,{value:n},t)}function g(e){let{children:t}=e;return s.cE?r.createElement(h,null,t):r.createElement(r.Fragment,null,t)}function v(){const e=(0,r.useContext)(f);if(!e)throw new l.i6("DocsPreferredVersionContextProvider");return e}function b(e){void 0===e&&(e=a.m);const t=(0,o.zh)(e),[n,i]=v(),{preferredVersionName:s}=n[e];return{preferredVersion:t.versions.find((e=>e.name===s))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}function y(){const e=(0,o._r)(),[t]=v();function n(n){const r=e[n],{preferredVersionName:o}=t[n];return r.versions.find((e=>e.name===o))??null}const r=Object.keys(e);return Object.fromEntries(r.map((e=>[e,n(e)])))}},4432:(e,t,n)=>{"use strict";n.d(t,{V:()=>l,b:()=>s});var r=n(7294),o=n(3768);const a=Symbol("EmptyContext"),i=r.createContext(a);function s(e){let{children:t,name:n,items:o}=e;const a=(0,r.useMemo)((()=>n&&o?{name:n,items:o}:null),[n,o]);return r.createElement(i.Provider,{value:a},t)}function l(){const e=(0,r.useContext)(i);if(e===a)throw new o.i6("DocsSidebarProvider");return e}},8801:(e,t,n)=>{"use strict";n.d(t,{E:()=>s,q:()=>i});var r=n(7294),o=n(3768);const a=r.createContext(null);function i(e){let{children:t,version:n}=e;return r.createElement(a.Provider,{value:n},t)}function s(){const e=(0,r.useContext)(a);if(null===e)throw new o.i6("DocsVersionProvider");return e}},735:(e,t,n)=>{"use strict";n.d(t,{M:()=>d,e:()=>p});var r=n(7294),o=n(3086),a=n(3488),i=n(5238),s=n(107),l=n(3768);const c=r.createContext(void 0);function u(){const e=function(){const e=(0,o.HY)(),{items:t}=(0,s.L)().navbar;return 0===t.length&&!e.component}(),t=(0,a.i)(),n=!e&&"mobile"===t,[l,c]=(0,r.useState)(!1);(0,i.Rb)((()=>{if(l)return c(!1),!1}));const u=(0,r.useCallback)((()=>{c((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&c(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:u,shown:l})),[e,n,u,l])}function d(e){let{children:t}=e;const n=u();return r.createElement(c.Provider,{value:n},t)}function p(){const e=r.useContext(c);if(void 0===e)throw new l.i6("NavbarMobileSidebarProvider");return e}},3086:(e,t,n)=>{"use strict";n.d(t,{HY:()=>s,Zo:()=>l,n2:()=>i});var r=n(7294),o=n(3768);const a=r.createContext(null);function i(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return r.createElement(a.Provider,{value:n},t)}function s(){const e=(0,r.useContext)(a);if(!e)throw new o.i6("NavbarSecondaryMenuContentProvider");return e[0]}function l(e){let{component:t,props:n}=e;const i=(0,r.useContext)(a);if(!i)throw new o.i6("NavbarSecondaryMenuContentProvider");const[,s]=i,l=(0,o.Ql)(n);return(0,r.useEffect)((()=>{s({component:t,props:l})}),[s,t,l]),(0,r.useEffect)((()=>()=>s({component:null,props:null})),[s]),null}},8181:(e,t,n)=>{"use strict";n.d(t,{h:()=>o,t:()=>a});var r=n(7294);const o="navigation-with-keyboard";function a(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(o),"mousedown"===e.type&&document.body.classList.remove(o)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(o),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},3488:(e,t,n)=>{"use strict";n.d(t,{i:()=>c});var r=n(7294),o=n(6136);const a={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function s(){return o.Z.canUseDOM?window.innerWidth>i?a.desktop:a.mobile:a.ssr}const l=!1;function c(){const[e,t]=(0,r.useState)((()=>l?"ssr":s()));return(0,r.useEffect)((()=>{function e(){t(s())}const n=l?window.setTimeout(e,1e3):void 0;return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e),clearTimeout(n)}}),[]),e}},3702:(e,t,n)=>{"use strict";n.d(t,{k:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{}}},8259:(e,t,n)=>{"use strict";n.d(t,{MN:()=>w,Wl:()=>m,_F:()=>b,cE:()=>p,hI:()=>C,jA:()=>h,lO:()=>E,oz:()=>_,s1:()=>S,vY:()=>x,xz:()=>f});var r=n(7294),o=n(6550),a=n(8790),i=n(868),s=n(6409),l=n(8801),c=n(4432),u=n(3609),d=n(9003);const p=!!i._r;function f(e){const t=(0,l.E)();if(!e)return;const n=t.docs[e];if(!n)throw new Error(`no version doc found by id=${e}`);return n}function m(e){if(e.href)return e.href;for(const t of e.items){if("link"===t.type)return t.href;if("category"===t.type){const e=m(t);if(e)return e}}}function h(){const{pathname:e}=(0,o.TH)(),t=(0,c.V)();if(!t)throw new Error("Unexpected: cant find current sidebar in context");const n=y({sidebarItems:t.items,pathname:e,onlyCategories:!0}).slice(-1)[0];if(!n)throw new Error(`${e} is not associated with a category. useCurrentSidebarCategory() should only be used on category index pages.`);return n}const g=(e,t)=>void 0!==e&&(0,d.Mg)(e,t),v=(e,t)=>e.some((e=>b(e,t)));function b(e,t){return"link"===e.type?g(e.href,t):"category"===e.type&&(g(e.href,t)||v(e.items,t))}function y(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const o=[];return function e(t){for(const a of t)if("category"===a.type&&((0,d.Mg)(a.href,n)||e(a.items))||"link"===a.type&&(0,d.Mg)(a.href,n)){return r&&"category"!==a.type||o.unshift(a),!0}return!1}(t),o}function S(){const e=(0,c.V)(),{pathname:t}=(0,o.TH)(),n=(0,i.gA)()?.pluginData.breadcrumbs;return!1!==n&&e?y({sidebarItems:e.items,pathname:t}):null}function E(e){const{activeVersion:t}=(0,i.Iw)(e),{preferredVersion:n}=(0,s.J)(e),o=(0,i.yW)(e);return(0,r.useMemo)((()=>(0,u.j)([t,n,o].filter(Boolean))),[t,n,o])}function _(e,t){const n=E(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${Object.keys(t).join("\n- ")}`);return r[1]}),[e,n])}function x(e,t){const n=E(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${(0,u.j)(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function C(e){let{route:t,versionMetadata:n}=e;const r=(0,o.TH)(),i=t.routes,s=i.find((e=>(0,o.LX)(r.pathname,e)));if(!s)return null;const l=s.sidebar,c=l?n.docsSidebars[l]:void 0;return{docElement:(0,a.H)(i),sidebarName:l,sidebarItems:c}}function w(e){return e.filter((e=>"category"!==e.type||!!m(e)))}},5238:(e,t,n)=>{"use strict";n.d(t,{Rb:()=>s,_X:()=>l});var r=n(7294),o=n(6550),a=n(1688),i=n(3768);function s(e){!function(e){const t=(0,o.k6)(),n=(0,i.zX)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}function l(e){return function(e){const t=(0,o.k6)();return(0,a.useSyncExternalStore)(t.listen,(()=>e(t)),(()=>e(t)))}((t=>null===e?null:new URLSearchParams(t.location.search).get(e)))}},3609:(e,t,n)=>{"use strict";function r(e,t){return void 0===t&&(t=(e,t)=>e===t),e.filter(((n,r)=>e.findIndex((e=>t(e,n)))!==r))}function o(e){return Array.from(new Set(e))}n.d(t,{j:()=>o,l:()=>r})},5463:(e,t,n)=>{"use strict";n.d(t,{FG:()=>p,d:()=>u,VC:()=>f});var r=n(7294),o=n(6010),a=n(1514),i=n(9656);function s(){const e=r.useContext(i._);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var l=n(9524),c=n(9962);function u(e){let{title:t,description:n,keywords:o,image:i,children:s}=e;const u=function(e){const{siteConfig:t}=(0,c.Z)(),{title:n,titleDelimiter:r}=t;return e?.trim().length?`${e.trim()} ${r} ${n}`:n}(t),{withBaseUrl:d}=(0,l.C)(),p=i?d(i,{absolute:!0}):void 0;return r.createElement(a.Z,null,t&&r.createElement("title",null,u),t&&r.createElement("meta",{property:"og:title",content:u}),n&&r.createElement("meta",{name:"description",content:n}),n&&r.createElement("meta",{property:"og:description",content:n}),o&&r.createElement("meta",{name:"keywords",content:Array.isArray(o)?o.join(","):o}),p&&r.createElement("meta",{property:"og:image",content:p}),p&&r.createElement("meta",{name:"twitter:image",content:p}),s)}const d=r.createContext(void 0);function p(e){let{className:t,children:n}=e;const i=r.useContext(d),s=(0,o.Z)(i,t);return r.createElement(d.Provider,{value:s},r.createElement(a.Z,null,r.createElement("html",{className:s})),n)}function f(e){let{children:t}=e;const n=s(),a=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const i=`plugin-id-${n.plugin.id}`;return r.createElement(p,{className:(0,o.Z)(a,i)},t)}},3768:(e,t,n)=>{"use strict";n.d(t,{D9:()=>i,Qc:()=>c,Ql:()=>l,i6:()=>s,zX:()=>a});var r=n(7294);const o=n(6136).Z.canUseDOM?r.useLayoutEffect:r.useEffect;function a(e){const t=(0,r.useRef)(e);return o((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function i(e){const t=(0,r.useRef)();return o((()=>{t.current=e})),t.current}class s extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function l(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,r.useMemo)((()=>e),t.flat())}function c(e){return t=>{let{children:n}=t;return r.createElement(r.Fragment,null,e.reduceRight(((e,t)=>r.createElement(t,null,e)),n))}}},9003:(e,t,n)=>{"use strict";n.d(t,{Mg:()=>i,Ns:()=>s});var r=n(7294),o=n(997),a=n(9962);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function s(){const{baseUrl:e}=(0,a.Z)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function o(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(o).flatMap((e=>e.routes??[])))}(n)}({routes:o.Z,baseUrl:e})),[e])}},2957:(e,t,n)=>{"use strict";n.d(t,{Ct:()=>f,OC:()=>l,RF:()=>d,o5:()=>p});var r=n(7294),o=n(6136),a=n(1048),i=n(3768);const s=r.createContext(void 0);function l(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return r.createElement(s.Provider,{value:n},t)}function c(){const e=(0,r.useContext)(s);if(null==e)throw new i.i6("ScrollControllerProvider");return e}const u=()=>o.Z.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function d(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=c(),o=(0,r.useRef)(u()),a=(0,i.zX)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=u();a(e,o.current),o.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[a,n,...t])}function p(){const e=c(),t=function(){const e=(0,r.useRef)({elem:null,top:0}),t=(0,r.useCallback)((t=>{e.current={elem:t,top:t.getBoundingClientRect().top}}),[]),n=(0,r.useCallback)((()=>{const{current:{elem:t,top:n}}=e;if(!t)return{restored:!1};const r=t.getBoundingClientRect().top-n;return r&&window.scrollBy({left:0,top:r}),e.current={elem:null,top:0},{restored:0!==r}}),[]);return(0,r.useMemo)((()=>({save:t,restore:n})),[n,t])}(),n=(0,r.useRef)(void 0),o=(0,r.useCallback)((r=>{t.save(r),e.disableScrollEvents(),n.current=()=>{const{restored:r}=t.restore();if(n.current=void 0,r){const t=()=>{e.enableScrollEvents(),window.removeEventListener("scroll",t)};window.addEventListener("scroll",t)}else e.enableScrollEvents()}}),[e,t]);return(0,r.useLayoutEffect)((()=>{queueMicrotask((()=>n.current?.()))})),{blockElementScrollPositionUntilNextRender:o}}function f(){const e=(0,r.useRef)(null),t=(0,a.Z)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const o=document.documentElement.scrollTop;(n&&o>e||!n&&ot&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},246:(e,t,n)=>{"use strict";n.d(t,{HX:()=>i,_q:()=>l,os:()=>s});var r=n(868),o=n(9962),a=n(6409);const i="default";function s(e,t){return`docs-${e}-${t}`}function l(){const{i18n:e}=(0,o.Z)(),t=(0,r._r)(),n=(0,r.WS)(),l=(0,a.Oh)();const c=[i,...Object.keys(t).map((function(e){const r=n?.activePlugin.pluginId===e?n.activeVersion:void 0,o=l[e],a=t[e].versions.find((e=>e.isLast));return s(e,(r??o??a).name)}))];return{locale:e.currentLocale,tags:c}}},2560:(e,t,n)=>{"use strict";n.d(t,{Nk:()=>d,WA:()=>u});var r=n(7294),o=n(1688);const a="localStorage";function i(e){let{key:t,oldValue:n,newValue:r,storage:o}=e;if(n===r)return;const a=document.createEvent("StorageEvent");a.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,o),window.dispatchEvent(a)}function s(e){if(void 0===e&&(e=a),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,l||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),l=!0),null}var t}let l=!1;const c={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function u(e,t){if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(e);const n=s(t?.persistence);return null===n?c:{get:()=>{try{return n.getItem(e)}catch(t){return console.error(`Docusaurus storage error, can't get key=${e}`,t),null}},set:t=>{try{const r=n.getItem(e);n.setItem(e,t),i({key:e,oldValue:r,newValue:t,storage:n})}catch(r){console.error(`Docusaurus storage error, can't set ${e}=${t}`,r)}},del:()=>{try{const t=n.getItem(e);n.removeItem(e),i({key:e,oldValue:t,newValue:null,storage:n})}catch(t){console.error(`Docusaurus storage error, can't delete key=${e}`,t)}},listen:t=>{try{const r=r=>{r.storageArea===n&&r.key===e&&t(r)};return window.addEventListener("storage",r),()=>window.removeEventListener("storage",r)}catch(r){return console.error(`Docusaurus storage error, can't listen for changes of key=${e}`,r),()=>{}}}}}function d(e,t){const n=(0,r.useRef)((()=>null===e?c:u(e,t))).current(),a=(0,r.useCallback)((e=>"undefined"==typeof window?()=>{}:n.listen(e)),[n]);return[(0,o.useSyncExternalStore)(a,(()=>"undefined"==typeof window?null:n.get()),(()=>null)),n]}},626:(e,t,n)=>{"use strict";n.d(t,{l:()=>a});var r=n(9962),o=n(6550);function a(){const{siteConfig:{baseUrl:e,url:t},i18n:{defaultLocale:n,currentLocale:a}}=(0,r.Z)(),{pathname:i}=(0,o.TH)(),s=a===n?e:e.replace(`/${a}/`,"/"),l=i.replace(e,"");return{createUrl:function(e){let{locale:r,fullyQualified:o}=e;return`${o?t:""}${function(e){return e===n?`${s}`:`${s}${e}/`}(r)}${l}`}}}},3266:(e,t,n)=>{"use strict";n.d(t,{S:()=>i});var r=n(7294),o=n(6550),a=n(3768);function i(e){const t=(0,o.TH)(),n=(0,a.D9)(t),i=(0,a.zX)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},107:(e,t,n)=>{"use strict";n.d(t,{L:()=>o});var r=n(9962);function o(){return(0,r.Z)().siteConfig.themeConfig}},4136:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[o]=e.split(/[#?]/),a="/"===o||o===r?o:(i=o,n?function(e){return e.endsWith("/")?e:`${e}/`}(i):function(e){return e.endsWith("/")?e.slice(0,-1):e}(i));var i;return e.replace(o,a)}},5806:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=void 0,t.getErrorCausalChain=function e(t){return t.cause?[t,...e(t.cause)]:[t]}},3905:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=t.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="post-content";var o=n(4136);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(o).default}});var a=n(5806);Object.defineProperty(t,"getErrorCausalChain",{enumerable:!0,get:function(){return a.getErrorCausalChain}})},6010:(e,t,n)=>{"use strict";function r(e){var t,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;to});const o=function(){for(var e,t,n=0,o="";n{"use strict";n.d(t,{lX:()=>S,q_:()=>R,ob:()=>f,PP:()=>O,Ep:()=>p});var r=n(7462);function o(e){return"/"===e.charAt(0)}function a(e,t){for(var n=t,r=n+1,o=e.length;r=0;p--){var f=i[p];"."===f?a(i,p):".."===f?(a(i,p),d++):d&&(a(i,p),d--)}if(!c)for(;d--;d)i.unshift("..");!c||""===i[0]||i[0]&&o(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var s=n(8776);function l(e){return"/"===e.charAt(0)?e:"/"+e}function c(e){return"/"===e.charAt(0)?e.substr(1):e}function u(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,r=e.hash,o=t||"/";return n&&"?"!==n&&(o+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(o+="#"===r.charAt(0)?r:"#"+r),o}function f(e,t,n,o){var a;"string"==typeof e?(a=function(e){var t=e||"/",n="",r="",o=t.indexOf("#");-1!==o&&(r=t.substr(o),t=t.substr(0,o));var a=t.indexOf("?");return-1!==a&&(n=t.substr(a),t=t.substr(0,a)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),a.state=t):(void 0===(a=(0,r.Z)({},e)).pathname&&(a.pathname=""),a.search?"?"!==a.search.charAt(0)&&(a.search="?"+a.search):a.search="",a.hash?"#"!==a.hash.charAt(0)&&(a.hash="#"+a.hash):a.hash="",void 0!==t&&void 0===a.state&&(a.state=t));try{a.pathname=decodeURI(a.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+a.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(a.key=n),o?a.pathname?"/"!==a.pathname.charAt(0)&&(a.pathname=i(a.pathname,o.pathname)):a.pathname=o.pathname:a.pathname||(a.pathname="/"),a}function m(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,o){if(null!=e){var a="function"==typeof e?e(t,n):e;"string"==typeof a?"function"==typeof r?r(a,o):o(!0):o(!1!==a)}else o(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;rt?n.splice(t,n.length-t,o):n.push(o),d({action:r,location:o,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",o=f(e,t,h(),S.location);u.confirmTransitionTo(o,r,n,(function(e){e&&(S.entries[S.index]=o,d({action:r,location:o}))}))},go:y,goBack:function(){y(-1)},goForward:function(){y(1)},canGo:function(e){var t=S.index+e;return t>=0&&t{"use strict";var r=n(9864),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return r.isMemo(e)?i:s[e.$$typeof]||o}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var o=f(n);o&&o!==m&&e(t,o,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var s=l(t),h=l(n),g=0;g{"use strict";e.exports=function(e,t,n,r,o,a,i,s){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,a,i,s],u=0;(l=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}}},5826:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},813:function(e){e.exports=function(){"use strict";var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},n=function(){function e(e,t){for(var n=0;n1&&void 0!==arguments[1])||arguments[1],o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:5e3;t(this,e),this.ctx=n,this.iframes=r,this.exclude=o,this.iframesTimeout=a}return n(e,[{key:"getContexts",value:function(){var e=[];return(void 0!==this.ctx&&this.ctx?NodeList.prototype.isPrototypeOf(this.ctx)?Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?this.ctx:"string"==typeof this.ctx?Array.prototype.slice.call(document.querySelectorAll(this.ctx)):[this.ctx]:[]).forEach((function(t){var n=e.filter((function(e){return e.contains(t)})).length>0;-1!==e.indexOf(t)||n||e.push(t)})),e}},{key:"getIframeContents",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},r=void 0;try{var o=e.contentWindow;if(r=o.document,!o||!r)throw new Error("iframe inaccessible")}catch(a){n()}r&&t(r)}},{key:"isIframeBlank",value:function(e){var t="about:blank",n=e.getAttribute("src").trim();return e.contentWindow.location.href===t&&n!==t&&n}},{key:"observeIframeLoad",value:function(e,t,n){var r=this,o=!1,a=null,i=function i(){if(!o){o=!0,clearTimeout(a);try{r.isIframeBlank(e)||(e.removeEventListener("load",i),r.getIframeContents(e,t,n))}catch(s){n()}}};e.addEventListener("load",i),a=setTimeout(i,this.iframesTimeout)}},{key:"onIframeReady",value:function(e,t,n){try{"complete"===e.contentWindow.document.readyState?this.isIframeBlank(e)?this.observeIframeLoad(e,t,n):this.getIframeContents(e,t,n):this.observeIframeLoad(e,t,n)}catch(r){n()}}},{key:"waitForIframes",value:function(e,t){var n=this,r=0;this.forEachIframe(e,(function(){return!0}),(function(e){r++,n.waitForIframes(e.querySelector("html"),(function(){--r||t()}))}),(function(e){e||t()}))}},{key:"forEachIframe",value:function(t,n,r){var o=this,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){},i=t.querySelectorAll("iframe"),s=i.length,l=0;i=Array.prototype.slice.call(i);var c=function(){--s<=0&&a(l)};s||c(),i.forEach((function(t){e.matches(t,o.exclude)?c():o.onIframeReady(t,(function(e){n(t)&&(l++,r(e)),c()}),c)}))}},{key:"createIterator",value:function(e,t,n){return document.createNodeIterator(e,t,n,!1)}},{key:"createInstanceOnIframe",value:function(t){return new e(t.querySelector("html"),this.iframes)}},{key:"compareNodeIframe",value:function(e,t,n){if(e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_PRECEDING){if(null===t)return!0;if(t.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING)return!0}return!1}},{key:"getIteratorNode",value:function(e){var t=e.previousNode();return{prevNode:t,node:(null===t||e.nextNode())&&e.nextNode()}}},{key:"checkIframeFilter",value:function(e,t,n,r){var o=!1,a=!1;return r.forEach((function(e,t){e.val===n&&(o=t,a=e.handled)})),this.compareNodeIframe(e,t,n)?(!1!==o||a?!1===o||a||(r[o].handled=!0):r.push({val:n,handled:!0}),!0):(!1===o&&r.push({val:n,handled:!1}),!1)}},{key:"handleOpenIframes",value:function(e,t,n,r){var o=this;e.forEach((function(e){e.handled||o.getIframeContents(e.val,(function(e){o.createInstanceOnIframe(e).forEachNode(t,n,r)}))}))}},{key:"iterateThroughNodes",value:function(e,t,n,r,o){for(var a=this,i=this.createIterator(t,e,r),s=[],l=[],c=void 0,u=void 0,d=function(){var e=a.getIteratorNode(i);return u=e.prevNode,c=e.node};d();)this.iframes&&this.forEachIframe(t,(function(e){return a.checkIframeFilter(c,u,e,s)}),(function(t){a.createInstanceOnIframe(t).forEachNode(e,(function(e){return l.push(e)}),r)})),l.push(c);l.forEach((function(e){n(e)})),this.iframes&&this.handleOpenIframes(s,e,n,r),o()}},{key:"forEachNode",value:function(e,t,n){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){},a=this.getContexts(),i=a.length;i||o(),a.forEach((function(a){var s=function(){r.iterateThroughNodes(e,a,t,n,(function(){--i<=0&&o()}))};r.iframes?r.waitForIframes(a,s):s()}))}}],[{key:"matches",value:function(e,t){var n="string"==typeof t?[t]:t,r=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;if(r){var o=!1;return n.every((function(t){return!r.call(e,t)||(o=!0,!1)})),o}return!1}}]),e}(),a=function(){function a(e){t(this,a),this.ctx=e,this.ie=!1;var n=window.navigator.userAgent;(n.indexOf("MSIE")>-1||n.indexOf("Trident")>-1)&&(this.ie=!0)}return n(a,[{key:"log",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"debug",r=this.opt.log;this.opt.debug&&"object"===(void 0===r?"undefined":e(r))&&"function"==typeof r[n]&&r[n]("mark.js: "+t)}},{key:"escapeStr",value:function(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}},{key:"createRegExp",value:function(e){return"disabled"!==this.opt.wildcards&&(e=this.setupWildcardsRegExp(e)),e=this.escapeStr(e),Object.keys(this.opt.synonyms).length&&(e=this.createSynonymsRegExp(e)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),this.opt.diacritics&&(e=this.createDiacriticsRegExp(e)),e=this.createMergedBlanksRegExp(e),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.createJoinersRegExp(e)),"disabled"!==this.opt.wildcards&&(e=this.createWildcardsRegExp(e)),e=this.createAccuracyRegExp(e)}},{key:"createSynonymsRegExp",value:function(e){var t=this.opt.synonyms,n=this.opt.caseSensitive?"":"i",r=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(var o in t)if(t.hasOwnProperty(o)){var a=t[o],i="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(o):this.escapeStr(o),s="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(a):this.escapeStr(a);""!==i&&""!==s&&(e=e.replace(new RegExp("("+this.escapeStr(i)+"|"+this.escapeStr(s)+")","gm"+n),r+"("+this.processSynomyms(i)+"|"+this.processSynomyms(s)+")"+r))}return e}},{key:"processSynomyms",value:function(e){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),e}},{key:"setupWildcardsRegExp",value:function(e){return(e=e.replace(/(?:\\)*\?/g,(function(e){return"\\"===e.charAt(0)?"?":"\x01"}))).replace(/(?:\\)*\*/g,(function(e){return"\\"===e.charAt(0)?"*":"\x02"}))}},{key:"createWildcardsRegExp",value:function(e){var t="withSpaces"===this.opt.wildcards;return e.replace(/\u0001/g,t?"[\\S\\s]?":"\\S?").replace(/\u0002/g,t?"[\\S\\s]*?":"\\S*")}},{key:"setupIgnoreJoinersRegExp",value:function(e){return e.replace(/[^(|)\\]/g,(function(e,t,n){var r=n.charAt(t+1);return/[(|)\\]/.test(r)||""===r?e:e+"\0"}))}},{key:"createJoinersRegExp",value:function(e){var t=[],n=this.opt.ignorePunctuation;return Array.isArray(n)&&n.length&&t.push(this.escapeStr(n.join(""))),this.opt.ignoreJoiners&&t.push("\\u00ad\\u200b\\u200c\\u200d"),t.length?e.split(/\u0000+/).join("["+t.join("")+"]*"):e}},{key:"createDiacriticsRegExp",value:function(e){var t=this.opt.caseSensitive?"":"i",n=this.opt.caseSensitive?["a\xe0\xe1\u1ea3\xe3\u1ea1\u0103\u1eb1\u1eaf\u1eb3\u1eb5\u1eb7\xe2\u1ea7\u1ea5\u1ea9\u1eab\u1ead\xe4\xe5\u0101\u0105","A\xc0\xc1\u1ea2\xc3\u1ea0\u0102\u1eb0\u1eae\u1eb2\u1eb4\u1eb6\xc2\u1ea6\u1ea4\u1ea8\u1eaa\u1eac\xc4\xc5\u0100\u0104","c\xe7\u0107\u010d","C\xc7\u0106\u010c","d\u0111\u010f","D\u0110\u010e","e\xe8\xe9\u1ebb\u1ebd\u1eb9\xea\u1ec1\u1ebf\u1ec3\u1ec5\u1ec7\xeb\u011b\u0113\u0119","E\xc8\xc9\u1eba\u1ebc\u1eb8\xca\u1ec0\u1ebe\u1ec2\u1ec4\u1ec6\xcb\u011a\u0112\u0118","i\xec\xed\u1ec9\u0129\u1ecb\xee\xef\u012b","I\xcc\xcd\u1ec8\u0128\u1eca\xce\xcf\u012a","l\u0142","L\u0141","n\xf1\u0148\u0144","N\xd1\u0147\u0143","o\xf2\xf3\u1ecf\xf5\u1ecd\xf4\u1ed3\u1ed1\u1ed5\u1ed7\u1ed9\u01a1\u1edf\u1ee1\u1edb\u1edd\u1ee3\xf6\xf8\u014d","O\xd2\xd3\u1ece\xd5\u1ecc\xd4\u1ed2\u1ed0\u1ed4\u1ed6\u1ed8\u01a0\u1ede\u1ee0\u1eda\u1edc\u1ee2\xd6\xd8\u014c","r\u0159","R\u0158","s\u0161\u015b\u0219\u015f","S\u0160\u015a\u0218\u015e","t\u0165\u021b\u0163","T\u0164\u021a\u0162","u\xf9\xfa\u1ee7\u0169\u1ee5\u01b0\u1eeb\u1ee9\u1eed\u1eef\u1ef1\xfb\xfc\u016f\u016b","U\xd9\xda\u1ee6\u0168\u1ee4\u01af\u1eea\u1ee8\u1eec\u1eee\u1ef0\xdb\xdc\u016e\u016a","y\xfd\u1ef3\u1ef7\u1ef9\u1ef5\xff","Y\xdd\u1ef2\u1ef6\u1ef8\u1ef4\u0178","z\u017e\u017c\u017a","Z\u017d\u017b\u0179"]:["a\xe0\xe1\u1ea3\xe3\u1ea1\u0103\u1eb1\u1eaf\u1eb3\u1eb5\u1eb7\xe2\u1ea7\u1ea5\u1ea9\u1eab\u1ead\xe4\xe5\u0101\u0105A\xc0\xc1\u1ea2\xc3\u1ea0\u0102\u1eb0\u1eae\u1eb2\u1eb4\u1eb6\xc2\u1ea6\u1ea4\u1ea8\u1eaa\u1eac\xc4\xc5\u0100\u0104","c\xe7\u0107\u010dC\xc7\u0106\u010c","d\u0111\u010fD\u0110\u010e","e\xe8\xe9\u1ebb\u1ebd\u1eb9\xea\u1ec1\u1ebf\u1ec3\u1ec5\u1ec7\xeb\u011b\u0113\u0119E\xc8\xc9\u1eba\u1ebc\u1eb8\xca\u1ec0\u1ebe\u1ec2\u1ec4\u1ec6\xcb\u011a\u0112\u0118","i\xec\xed\u1ec9\u0129\u1ecb\xee\xef\u012bI\xcc\xcd\u1ec8\u0128\u1eca\xce\xcf\u012a","l\u0142L\u0141","n\xf1\u0148\u0144N\xd1\u0147\u0143","o\xf2\xf3\u1ecf\xf5\u1ecd\xf4\u1ed3\u1ed1\u1ed5\u1ed7\u1ed9\u01a1\u1edf\u1ee1\u1edb\u1edd\u1ee3\xf6\xf8\u014dO\xd2\xd3\u1ece\xd5\u1ecc\xd4\u1ed2\u1ed0\u1ed4\u1ed6\u1ed8\u01a0\u1ede\u1ee0\u1eda\u1edc\u1ee2\xd6\xd8\u014c","r\u0159R\u0158","s\u0161\u015b\u0219\u015fS\u0160\u015a\u0218\u015e","t\u0165\u021b\u0163T\u0164\u021a\u0162","u\xf9\xfa\u1ee7\u0169\u1ee5\u01b0\u1eeb\u1ee9\u1eed\u1eef\u1ef1\xfb\xfc\u016f\u016bU\xd9\xda\u1ee6\u0168\u1ee4\u01af\u1eea\u1ee8\u1eec\u1eee\u1ef0\xdb\xdc\u016e\u016a","y\xfd\u1ef3\u1ef7\u1ef9\u1ef5\xffY\xdd\u1ef2\u1ef6\u1ef8\u1ef4\u0178","z\u017e\u017c\u017aZ\u017d\u017b\u0179"],r=[];return e.split("").forEach((function(o){n.every((function(n){if(-1!==n.indexOf(o)){if(r.indexOf(n)>-1)return!1;e=e.replace(new RegExp("["+n+"]","gm"+t),"["+n+"]"),r.push(n)}return!0}))})),e}},{key:"createMergedBlanksRegExp",value:function(e){return e.replace(/[\s]+/gim,"[\\s]+")}},{key:"createAccuracyRegExp",value:function(e){var t=this,n="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~\xa1\xbf",r=this.opt.accuracy,o="string"==typeof r?r:r.value,a="string"==typeof r?[]:r.limiters,i="";switch(a.forEach((function(e){i+="|"+t.escapeStr(e)})),o){case"partially":default:return"()("+e+")";case"complementary":return"()([^"+(i="\\s"+(i||this.escapeStr(n)))+"]*"+e+"[^"+i+"]*)";case"exactly":return"(^|\\s"+i+")("+e+")(?=$|\\s"+i+")"}}},{key:"getSeparatedKeywords",value:function(e){var t=this,n=[];return e.forEach((function(e){t.opt.separateWordSearch?e.split(" ").forEach((function(e){e.trim()&&-1===n.indexOf(e)&&n.push(e)})):e.trim()&&-1===n.indexOf(e)&&n.push(e)})),{keywords:n.sort((function(e,t){return t.length-e.length})),length:n.length}}},{key:"isNumeric",value:function(e){return Number(parseFloat(e))==e}},{key:"checkRanges",value:function(e){var t=this;if(!Array.isArray(e)||"[object Object]"!==Object.prototype.toString.call(e[0]))return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(e),[];var n=[],r=0;return e.sort((function(e,t){return e.start-t.start})).forEach((function(e){var o=t.callNoMatchOnInvalidRanges(e,r),a=o.start,i=o.end;o.valid&&(e.start=a,e.length=i-a,n.push(e),r=i)})),n}},{key:"callNoMatchOnInvalidRanges",value:function(e,t){var n=void 0,r=void 0,o=!1;return e&&void 0!==e.start?(r=(n=parseInt(e.start,10))+parseInt(e.length,10),this.isNumeric(e.start)&&this.isNumeric(e.length)&&r-t>0&&r-n>0?o=!0:(this.log("Ignoring invalid or overlapping range: "+JSON.stringify(e)),this.opt.noMatch(e))):(this.log("Ignoring invalid range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:n,end:r,valid:o}}},{key:"checkWhitespaceRanges",value:function(e,t,n){var r=void 0,o=!0,a=n.length,i=t-a,s=parseInt(e.start,10)-i;return(r=(s=s>a?a:s)+parseInt(e.length,10))>a&&(r=a,this.log("End range automatically set to the max value of "+a)),s<0||r-s<0||s>a||r>a?(o=!1,this.log("Invalid range: "+JSON.stringify(e)),this.opt.noMatch(e)):""===n.substring(s,r).replace(/\s+/g,"")&&(o=!1,this.log("Skipping whitespace only range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:s,end:r,valid:o}}},{key:"getTextNodes",value:function(e){var t=this,n="",r=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,(function(e){r.push({start:n.length,end:(n+=e.textContent).length,node:e})}),(function(e){return t.matchesExclude(e.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}),(function(){e({value:n,nodes:r})}))}},{key:"matchesExclude",value:function(e){return o.matches(e,this.opt.exclude.concat(["script","style","title","head","html"]))}},{key:"wrapRangeInTextNode",value:function(e,t,n){var r=this.opt.element?this.opt.element:"mark",o=e.splitText(t),a=o.splitText(n-t),i=document.createElement(r);return i.setAttribute("data-markjs","true"),this.opt.className&&i.setAttribute("class",this.opt.className),i.textContent=o.textContent,o.parentNode.replaceChild(i,o),a}},{key:"wrapRangeInMappedTextNode",value:function(e,t,n,r,o){var a=this;e.nodes.every((function(i,s){var l=e.nodes[s+1];if(void 0===l||l.start>t){if(!r(i.node))return!1;var c=t-i.start,u=(n>i.end?i.end:n)-i.start,d=e.value.substr(0,i.start),p=e.value.substr(u+i.start);if(i.node=a.wrapRangeInTextNode(i.node,c,u),e.value=d+p,e.nodes.forEach((function(t,n){n>=s&&(e.nodes[n].start>0&&n!==s&&(e.nodes[n].start-=u),e.nodes[n].end-=u)})),n-=u,o(i.node.previousSibling,i.start),!(n>i.end))return!1;t=i.end}return!0}))}},{key:"wrapMatches",value:function(e,t,n,r,o){var a=this,i=0===t?0:t+1;this.getTextNodes((function(t){t.nodes.forEach((function(t){t=t.node;for(var o=void 0;null!==(o=e.exec(t.textContent))&&""!==o[i];)if(n(o[i],t)){var s=o.index;if(0!==i)for(var l=1;l{"use strict";n.r(t)},6930:(e,t,n)=>{"use strict";n.r(t)},4865:function(e,t,n){var r,o;r=function(){var e,t,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};function o(e,t,n){return en?n:e}function a(e){return 100*(-1+e)}function i(e,t,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+a(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+a(e)+"%,0)"}:{"margin-left":a(e)+"%"}).transition="all "+t+"ms "+n,o}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=o(e,r.minimum,1),n.status=1===e?null:e;var a=n.render(!t),c=a.querySelector(r.barSelector),u=r.speed,d=r.easing;return a.offsetWidth,s((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),l(c,i(e,u,d)),1===e?(l(a,{transition:"none",opacity:1}),a.offsetWidth,setTimeout((function(){l(a,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),u)}),u)):setTimeout(t,u)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*o(Math.random()*t,.1,.95)),t=o(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var o,i=t.querySelector(r.barSelector),s=e?"-100":a(n.status||0),c=document.querySelector(r.parent);return l(i,{transition:"all 0 linear",transform:"translate3d("+s+"%,0,0)"}),r.showSpinner||(o=t.querySelector(r.spinnerSelector))&&f(o),c!=document.body&&u(c,"nprogress-custom-parent"),c.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&f(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var s=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),l=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,o=e.length,a=t.charAt(0).toUpperCase()+t.slice(1);o--;)if((r=e[o]+a)in n)return r;return t}function o(e){return e=n(e),t[e]||(t[e]=r(e))}function a(e,t,n){t=o(t),e.style[t]=n}return function(e,t){var n,r,o=arguments;if(2==o.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&a(e,n,r);else a(e,o[1],o[2])}}();function c(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=p(e),r=n+t;c(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);c(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function f(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(o="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=o)},7418:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(o){return!1}}()?Object.assign:function(e,o){for(var a,i,s=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),l=1;l{var r=n(5826);e.exports=f,e.exports.parse=a,e.exports.compile=function(e,t){return s(a(e,t),t)},e.exports.tokensToFunction=s,e.exports.tokensToRegExp=p;var o=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function a(e,t){for(var n,r=[],a=0,i=0,s="",u=t&&t.delimiter||"/";null!=(n=o.exec(e));){var d=n[0],p=n[1],f=n.index;if(s+=e.slice(i,f),i=f+d.length,p)s+=p[1];else{var m=e[i],h=n[2],g=n[3],v=n[4],b=n[5],y=n[6],S=n[7];s&&(r.push(s),s="");var E=null!=h&&null!=m&&m!==h,_="+"===y||"*"===y,x="?"===y||"*"===y,C=n[2]||u,w=v||b;r.push({name:g||a++,prefix:h||"",delimiter:C,optional:x,repeat:_,partial:E,asterisk:!!S,pattern:w?c(w):S?".*":"[^"+l(C)+"]+?"})}}return i{"use strict";n.d(t,{Z:()=>a});var r=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},r={util:{encode:function e(t){return t instanceof o?new o(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/=d.reach);x+=_.value.length,_=_.next){var C=_.value;if(t.length>e.length)return;if(!(C instanceof o)){var w,R=1;if(b){if(!(w=a(E,x,e,v))||w.index>=e.length)break;var k=w.index,O=w.index+w[0].length,G=x;for(G+=_.value.length;k>=G;)G+=(_=_.next).value.length;if(x=G-=_.value.length,_.value instanceof o)continue;for(var P=_;P!==t.tail&&(Gd.reach&&(d.reach=N);var L=_.prev;if(T&&(L=l(t,L,T),x+=T.length),c(t,L,R),_=l(t,L,new o(p,g?r.tokenize(I,g):I,y,I)),A&&l(t,_,A),R>1){var j={cause:p+","+m,reach:N};i(e,t,n,_.prev,x,j),d&&j.reach>d.reach&&(d.reach=j.reach)}}}}}}function s(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function l(e,t,n){var r=t.next,o={value:n,prev:t,next:r};return t.next=o,r.prev=o,e.length++,o}function c(e,t,n){for(var r=t.next,o=0;o"+a.content+""},r}(),o=r;r.default=r,o.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},o.languages.markup.tag.inside["attr-value"].inside.entity=o.languages.markup.entity,o.languages.markup.doctype.inside["internal-subset"].inside=o.languages.markup,o.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(o.languages.markup.tag,"addInlined",{value:function(e,t){var n={};n["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:o.languages[t]},n.cdata=/^$/i;var r={"included-cdata":{pattern://i,inside:n}};r["language-"+t]={pattern:/[\s\S]+/,inside:o.languages[t]};var a={};a[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:r},o.languages.insertBefore("markup","cdata",a)}}),Object.defineProperty(o.languages.markup.tag,"addAttribute",{value:function(e,t){o.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:o.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),o.languages.html=o.languages.markup,o.languages.mathml=o.languages.markup,o.languages.svg=o.languages.markup,o.languages.xml=o.languages.extend("markup",{}),o.languages.ssml=o.languages.xml,o.languages.atom=o.languages.xml,o.languages.rss=o.languages.xml,function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var o=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],a=r.variable[1].inside,i=0;i]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},o.languages.c=o.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),o.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),o.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},o.languages.c.string],char:o.languages.c.char,comment:o.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:o.languages.c}}}}),o.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete o.languages.c.boolean,function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(o),function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var n=e.languages.markup;n&&(n.tag.addInlined("style","css"),n.tag.addAttribute("style","css"))}(o),function(e){var t,n=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css.selector={pattern:e.languages.css.selector.pattern,lookbehind:!0,inside:t={"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+/,class:/\.[-\w]+/,id:/#[-\w]+/,attribute:{pattern:RegExp("\\[(?:[^[\\]\"']|"+n.source+")*\\]"),greedy:!0,inside:{punctuation:/^\[|\]$/,"case-sensitivity":{pattern:/(\s)[si]$/i,lookbehind:!0,alias:"keyword"},namespace:{pattern:/^(\s*)(?:(?!\s)[-*\w\xA0-\uFFFF])*\|(?!=)/,lookbehind:!0,inside:{punctuation:/\|$/}},"attr-name":{pattern:/^(\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+/,lookbehind:!0},"attr-value":[n,{pattern:/(=\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+(?=\s*$)/,lookbehind:!0}],operator:/[|~*^$]?=/}},"n-th":[{pattern:/(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/,lookbehind:!0,inside:{number:/[\dn]+/,operator:/[+-]/}},{pattern:/(\(\s*)(?:even|odd)(?=\s*\))/i,lookbehind:!0}],combinator:/>|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}});var r={pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0},o={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0};e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:r,number:o,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:r,number:o})}(o),o.languages.javascript=o.languages.extend("clike",{"class-name":[o.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),o.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,o.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:o.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:o.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:o.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:o.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:o.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),o.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:o.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),o.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),o.languages.markup&&(o.languages.markup.tag.addInlined("script","javascript"),o.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),o.languages.js=o.languages.javascript,function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:e.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(o),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",o=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),a=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function i(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,(function(){return r})).replace(/<>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,(function(){return r}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,(function(){return r})).replace(/<>/g,(function(){return"(?:"+o+"|"+a+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:i(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:i(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:i(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:i(a),lookbehind:!0,greedy:!0},number:{pattern:i(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(o),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(//g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,o=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return r})),a=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+o+a+"(?:"+o+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+o+a+")(?:"+o+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+o+")"+a+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+o+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)|_(?:(?!_))+_)+__\b|\*\*(?:(?!\*)|\*(?:(?!\*))+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)|__(?:(?!_))+__)+_\b|\*(?:(?!\*)|\*\*(?:(?!\*))+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~))+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\]))+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\]))+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n",quot:'"'},l=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(o),o.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:o.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},o.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n0)){var s=p(/^\{$/,/^\}$/);if(-1===s)continue;for(var l=n;l=0&&f(c,"variable-input")}}}}function u(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,r=t.inside.interpolation,o=r.inside["interpolation-punctuation"],a=r.pattern.source;function i(t,r){if(e.languages[t])return{pattern:RegExp("((?:"+r+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function s(e,t){return"___"+t.toUpperCase()+"_"+e+"___"}function l(t,n,r){var o={code:t,grammar:n,language:r};return e.hooks.run("before-tokenize",o),o.tokens=e.tokenize(o.code,o.grammar),e.hooks.run("after-tokenize",o),o.tokens}function c(t){var n={};n["interpolation-punctuation"]=o;var a=e.tokenize(t,n);if(3===a.length){var i=[1,1];i.push.apply(i,l(a[1],e.languages.javascript,"javascript")),a.splice.apply(a,i)}return new e.Token("interpolation",a,r.alias,t)}function u(t,n,r){var o=e.tokenize(t,{interpolation:{pattern:RegExp(a),lookbehind:!0}}),i=0,u={},d=l(o.map((function(e){if("string"==typeof e)return e;for(var n,o=e.content;-1!==t.indexOf(n=s(i++,r)););return u[n]=o,n})).join(""),n,r),p=Object.keys(u);return i=0,function e(t){for(var n=0;n=p.length)return;var r=t[n];if("string"==typeof r||"string"==typeof r.content){var o=p[i],a="string"==typeof r?r:r.content,s=a.indexOf(o);if(-1!==s){++i;var l=a.substring(0,s),d=c(u[o]),f=a.substring(s+o.length),m=[];if(l&&m.push(l),m.push(d),f){var h=[f];e(h),m.push.apply(m,h)}"string"==typeof r?(t.splice.apply(t,[n,1].concat(m)),n+=m.length-1):r.content=m}}else{var g=r.content;Array.isArray(g)?e(g):e([g])}}}(d),new e.Token(r,d,"language-"+r,t)}e.languages.javascript["template-string"]=[i("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),i("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),i("svg",/\bsvg/.source),i("markdown",/\b(?:markdown|md)/.source),i("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),i("sql",/\bsql/.source),t].filter(Boolean);var d={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function p(e){return"string"==typeof e?e:Array.isArray(e)?e.map(p).join(""):p(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in d&&function t(n){for(var r=0,o=n.length;r]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(o),function(e){function t(e,t){return RegExp(e.replace(//g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:(?:\s*,\s*(?:\*\s*as\s+|\{[^{}]*\}))?|\*\s*as\s+|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],r=0;r*\.{3}(?:[^{}]|)*\})/.source;function a(e,t){return e=e.replace(//g,(function(){return n})).replace(//g,(function(){return r})).replace(//g,(function(){return o})),RegExp(e,t)}o=a(o).source,e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=a(/<\/?(?:[\w.:-]+(?:+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|))?|))**\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:a(//.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:a(/=/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var i=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(i).join(""):""},s=function(t){for(var n=[],r=0;r0&&n[n.length-1].tagName===i(o.content[0].content[1])&&n.pop():"/>"===o.content[o.content.length-1].content||n.push({tagName:i(o.content[0].content[1]),openedBraces:0}):n.length>0&&"punctuation"===o.type&&"{"===o.content?n[n.length-1].openedBraces++:n.length>0&&n[n.length-1].openedBraces>0&&"punctuation"===o.type&&"}"===o.content?n[n.length-1].openedBraces--:a=!0),(a||"string"==typeof o)&&n.length>0&&0===n[n.length-1].openedBraces){var l=i(o);r0&&("string"==typeof t[r-1]||"plain-text"===t[r-1].type)&&(l=i(t[r-1])+l,t.splice(r-1,1),r--),t[r]=new e.Token("plain-text",l,null,l)}o.content&&"string"!=typeof o.content&&s(o.content)}};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||s(e.tokens)}))}(o),function(e){e.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d.*$/m]};var t={"deleted-sign":"-","deleted-arrow":"<","inserted-sign":"+","inserted-arrow":">",unchanged:" ",diff:"!"};Object.keys(t).forEach((function(n){var r=t[n],o=[];/^\w+$/.test(n)||o.push(/\w+/.exec(n)[0]),"diff"===n&&o.push("bold"),e.languages.diff[n]={pattern:RegExp("^(?:["+r+"].*(?:\r\n?|\n|(?![\\s\\S])))+","m"),alias:o,inside:{line:{pattern:/(.)(?=[\s\S]).*(?:\r\n?|\n)?/,lookbehind:!0},prefix:{pattern:/[\s\S]/,alias:/\w+/.exec(n)[0]}}}})),Object.defineProperty(e.languages.diff,"PREFIXES",{value:t})}(o),o.languages.git={comment:/^#.*/m,deleted:/^[-\u2013].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/}},coord:/^@@.*@@$/m,"commit-sha1":/^commit \w{40}$/m},o.languages.go=o.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),o.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete o.languages.go["class-name"],function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,o,a){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(o,(function(e){if("function"==typeof a&&!a(e))return e;for(var o,s=i.length;-1!==n.code.indexOf(o=t(r,s));)++s;return i[s]=e,o})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var o=0,a=Object.keys(n.tokenStack);!function i(s){for(var l=0;l=a.length);l++){var c=s[l];if("string"==typeof c||c.content&&"string"==typeof c.content){var u=a[o],d=n.tokenStack[u],p="string"==typeof c?c:c.content,f=t(r,u),m=p.indexOf(f);if(m>-1){++o;var h=p.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),v=p.substring(m+f.length),b=[];h&&b.push.apply(b,i([h])),b.push(g),v&&b.push.apply(b,i([v])),"string"==typeof c?s.splice.apply(s,[l,1].concat(b)):c.content=b}}else c.content&&i(c.content)}return s}(n.tokens)}}}})}(o),function(e){e.languages.handlebars={comment:/\{\{![\s\S]*?\}\}/,delimiter:{pattern:/^\{\{\{?|\}\}\}?$/,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][+-]?\d+)?/,boolean:/\b(?:false|true)\b/,block:{pattern:/^(\s*(?:~\s*)?)[#\/]\S+?(?=\s*(?:~\s*)?$|\s)/,lookbehind:!0,alias:"keyword"},brackets:{pattern:/\[[^\]]+\]/,inside:{punctuation:/\[|\]/,variable:/[\s\S]+/}},punctuation:/[!"#%&':()*+,.\/;<=>@\[\\\]^`{|}~]/,variable:/[^!"#%&'()*+,\/;<=>@\[\\\]^`{|}~\s]+/},e.hooks.add("before-tokenize",(function(t){e.languages["markup-templating"].buildPlaceholders(t,"handlebars",/\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g)})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"handlebars")})),e.languages.hbs=e.languages.handlebars}(o),o.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},o.languages.webmanifest=o.languages.json,o.languages.less=o.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/,operator:/[+\-*\/]/}),o.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:"function"}}),o.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"builtin-target":{pattern:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,alias:"builtin"},target:{pattern:/^(?:[^:=\s]|[ \t]+(?![\s:]))+(?=\s*:(?!=))/m,alias:"symbol",inside:{variable:/\$+(?:(?!\$)[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:(?!\$)[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,function:{pattern:/(\()(?:abspath|addsuffix|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:list|s)?)(?=[ \t])/,lookbehind:!0},operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/},o.languages.objectivec=o.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete o.languages.objectivec["class-name"],o.languages.objc=o.languages.objectivec,o.languages.ocaml={comment:{pattern:/\(\*[\s\S]*?\*\)/,greedy:!0},char:{pattern:/'(?:[^\\\r\n']|\\(?:.|[ox]?[0-9a-f]{1,3}))'/i,greedy:!0},string:[{pattern:/"(?:\\(?:[\s\S]|\r\n)|[^\\\r\n"])*"/,greedy:!0},{pattern:/\{([a-z_]*)\|[\s\S]*?\|\1\}/,greedy:!0}],number:[/\b(?:0b[01][01_]*|0o[0-7][0-7_]*)\b/i,/\b0x[a-f0-9][a-f0-9_]*(?:\.[a-f0-9_]*)?(?:p[+-]?\d[\d_]*)?(?!\w)/i,/\b\d[\d_]*(?:\.[\d_]*)?(?:e[+-]?\d[\d_]*)?(?!\w)/i],directive:{pattern:/\B#\w+/,alias:"property"},label:{pattern:/\B~\w+/,alias:"property"},"type-variable":{pattern:/\B'\w+/,alias:"function"},variant:{pattern:/`\w+/,alias:"symbol"},keyword:/\b(?:as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|match|method|module|mutable|new|nonrec|object|of|open|private|rec|sig|struct|then|to|try|type|val|value|virtual|when|where|while|with)\b/,boolean:/\b(?:false|true)\b/,"operator-like-punctuation":{pattern:/\[[<>|]|[>|]\]|\{<|>\}/,alias:"punctuation"},operator:/\.[.~]|:[=>]|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lsl|lsr|lxor|mod|or)\b/,punctuation:/;;|::|[(){}\[\].,:;#]|\b_\b/},o.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},o.languages.python["string-interpolation"].inside.interpolation.inside.rest=o.languages.python,o.languages.py=o.languages.python,o.languages.reason=o.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),o.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete o.languages.reason.function,function(e){e.languages.sass=e.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,lookbehind:!0,greedy:!0}}),e.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,greedy:!0,inside:{atrule:/(?:@[\w-]+|[+=])/}}}),delete e.languages.sass.atrule;var t=/\$[-\w]+|#\{\$[-\w]+\}/,n=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,greedy:!0,inside:{punctuation:/:/,variable:t,operator:n}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,greedy:!0,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:t,operator:n,important:e.languages.sass.important}}}),delete e.languages.sass.property,delete e.languages.sass.important,e.languages.insertBefore("sass","punctuation",{selector:{pattern:/^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,lookbehind:!0,greedy:!0}})}(o),o.languages.scss=o.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),o.languages.insertBefore("scss","atrule",{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),o.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),o.languages.insertBefore("scss","function",{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:"keyword"},placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),o.languages.scss.atrule.inside.rest=o.languages.scss,function(e){var t={pattern:/(\b\d+)(?:%|[a-z]+)/,lookbehind:!0},n={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0},r={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},url:{pattern:/\burl\((["']?).*?\1\)/i,greedy:!0},string:{pattern:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,greedy:!0},interpolation:null,func:null,important:/\B!(?:important|optional)\b/i,keyword:{pattern:/(^|\s+)(?:(?:else|for|if|return|unless)(?=\s|$)|@[\w-]+)/,lookbehind:!0},hexcode:/#[\da-f]{3,6}/i,color:[/\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i,{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,boolean:/\b(?:false|true)\b/,operator:[/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.{2,3}|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/],number:n,punctuation:/[{}()\[\];:,]/};r.interpolation={pattern:/\{[^\r\n}:]+\}/,alias:"variable",inside:{delimiter:{pattern:/^\{|\}$/,alias:"punctuation"},rest:r}},r.func={pattern:/[\w-]+\([^)]*\).*/,inside:{function:/^[^(]+/,rest:r}},e.languages.stylus={"atrule-declaration":{pattern:/(^[ \t]*)@.+/m,lookbehind:!0,inside:{atrule:/^@[\w-]+/,rest:r}},"variable-declaration":{pattern:/(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:\{[^{}]*\}|\S.*|$)/m,lookbehind:!0,inside:{variable:/^\S+/,rest:r}},statement:{pattern:/(^[ \t]*)(?:else|for|if|return|unless)[ \t].+/m,lookbehind:!0,inside:{keyword:/^\S+/,rest:r}},"property-declaration":{pattern:/((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)(?!\s)[^{\r\n]*(?:;|[^{\r\n,]$(?!(?:\r?\n|\r)(?:\{|\2[ \t])))/m,lookbehind:!0,inside:{property:{pattern:/^[^\s:]+/,inside:{interpolation:r.interpolation}},rest:r}},selector:{pattern:/(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t])))/m,lookbehind:!0,inside:{interpolation:r.interpolation,comment:r.comment,punctuation:/[{},]/}},func:r.func,string:r.string,comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0,greedy:!0},interpolation:r.interpolation,punctuation:/[{}()\[\];:.]/}}(o),function(e){var t=e.util.clone(e.languages.typescript);e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"];var n=e.languages.tsx.tag;n.pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+n.pattern.source+")",n.pattern.flags),n.lookbehind=!0}(o),o.languages.wasm={comment:[/\(;[\s\S]*?;\)/,{pattern:/;;.*/,greedy:!0}],string:{pattern:/"(?:\\[\s\S]|[^"\\])*"/,greedy:!0},keyword:[{pattern:/\b(?:align|offset)=/,inside:{operator:/=/}},{pattern:/\b(?:(?:f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|neg?|nearest|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|sqrt|store(?:8|16|32)?|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))?|memory\.(?:grow|size))\b/,inside:{punctuation:/\./}},/\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/],variable:/\$[\w!#$%&'*+\-./:<=>?@\\^`|~]+/,number:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/,punctuation:/[()]/};const a=o},9016:()=>{!function(e){function t(e,t){return e.replace(/<<(\d+)>>/g,(function(e,n){return"(?:"+t[+n]+")"}))}function n(e,n,r){return RegExp(t(e,n),r||"")}function r(e,t){for(var n=0;n>/g,(function(){return"(?:"+e+")"}));return e.replace(/<>/g,"[^\\s\\S]")}var o="bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void",a="class enum interface record struct",i="add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)",s="abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield";function l(e){return"\\b(?:"+e.trim().replace(/ /g,"|")+")\\b"}var c=l(a),u=RegExp(l(o+" "+a+" "+i+" "+s)),d=l(a+" "+i+" "+s),p=l(o+" "+a+" "+s),f=r(/<(?:[^<>;=+\-*/%&|^]|<>)*>/.source,2),m=r(/\((?:[^()]|<>)*\)/.source,2),h=/@?\b[A-Za-z_]\w*\b/.source,g=t(/<<0>>(?:\s*<<1>>)?/.source,[h,f]),v=t(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source,[d,g]),b=/\[\s*(?:,\s*)*\]/.source,y=t(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source,[v,b]),S=t(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source,[f,m,b]),E=t(/\(<<0>>+(?:,<<0>>+)+\)/.source,[S]),_=t(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source,[E,v,b]),x={keyword:u,punctuation:/[<>()?,.:[\]]/},C=/'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source,w=/"(?:\\.|[^\\"\r\n])*"/.source,R=/@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;e.languages.csharp=e.languages.extend("clike",{string:[{pattern:n(/(^|[^$\\])<<0>>/.source,[R]),lookbehind:!0,greedy:!0},{pattern:n(/(^|[^@$\\])<<0>>/.source,[w]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:n(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source,[v]),lookbehind:!0,inside:x},{pattern:n(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source,[h,_]),lookbehind:!0,inside:x},{pattern:n(/(\busing\s+)<<0>>(?=\s*=)/.source,[h]),lookbehind:!0},{pattern:n(/(\b<<0>>\s+)<<1>>/.source,[c,g]),lookbehind:!0,inside:x},{pattern:n(/(\bcatch\s*\(\s*)<<0>>/.source,[v]),lookbehind:!0,inside:x},{pattern:n(/(\bwhere\s+)<<0>>/.source,[h]),lookbehind:!0},{pattern:n(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source,[y]),lookbehind:!0,inside:x},{pattern:n(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source,[_,p,h]),inside:x}],keyword:u,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),e.languages.insertBefore("csharp","number",{range:{pattern:/\.\./,alias:"operator"}}),e.languages.insertBefore("csharp","punctuation",{"named-parameter":{pattern:n(/([(,]\s*)<<0>>(?=\s*:)/.source,[h]),lookbehind:!0,alias:"punctuation"}}),e.languages.insertBefore("csharp","class-name",{namespace:{pattern:n(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source,[h]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:n(/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source,[m]),lookbehind:!0,alias:"class-name",inside:x},"return-type":{pattern:n(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source,[_,v]),inside:x,alias:"class-name"},"constructor-invocation":{pattern:n(/(\bnew\s+)<<0>>(?=\s*[[({])/.source,[_]),lookbehind:!0,inside:x,alias:"class-name"},"generic-method":{pattern:n(/<<0>>\s*<<1>>(?=\s*\()/.source,[h,f]),inside:{function:n(/^<<0>>/.source,[h]),generic:{pattern:RegExp(f),alias:"class-name",inside:x}}},"type-list":{pattern:n(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source,[c,g,h,_,u.source,m,/\bnew\s*\(\s*\)/.source]),lookbehind:!0,inside:{"record-arguments":{pattern:n(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source,[g,m]),lookbehind:!0,greedy:!0,inside:e.languages.csharp},keyword:u,"class-name":{pattern:RegExp(_),greedy:!0,inside:x},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}});var k=w+"|"+C,O=t(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source,[k]),G=r(t(/[^"'/()]|<<0>>|\(<>*\)/.source,[O]),2),P=/\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source,I=t(/<<0>>(?:\s*\(<<1>>*\))?/.source,[v,G]);e.languages.insertBefore("csharp","class-name",{attribute:{pattern:n(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source,[P,I]),lookbehind:!0,greedy:!0,inside:{target:{pattern:n(/^<<0>>(?=\s*:)/.source,[P]),alias:"keyword"},"attribute-arguments":{pattern:n(/\(<<0>>*\)/.source,[G]),inside:e.languages.csharp},"class-name":{pattern:RegExp(v),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var T=/:[^}\r\n]+/.source,A=r(t(/[^"'/()]|<<0>>|\(<>*\)/.source,[O]),2),N=t(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[A,T]),L=r(t(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<>*\)/.source,[k]),2),j=t(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[L,T]);function D(t,r){return{interpolation:{pattern:n(/((?:^|[^{])(?:\{\{)*)<<0>>/.source,[t]),lookbehind:!0,inside:{"format-string":{pattern:n(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source,[r,T]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-csharp",inside:e.languages.csharp}}},string:/[\s\S]+/}}e.languages.insertBefore("csharp","string",{"interpolation-string":[{pattern:n(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source,[N]),lookbehind:!0,greedy:!0,inside:D(N,A)},{pattern:n(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source,[j]),lookbehind:!0,greedy:!0,inside:D(j,L)}],char:{pattern:RegExp(C),greedy:!0}}),e.languages.dotnet=e.languages.cs=e.languages.csharp}(Prism)},2549:(e,t,n)=>{var r={"./prism-csharp":9016};function o(e){var t=a(e);return n(t)}function a(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=a,e.exports=o,o.id=2549},2703:(e,t,n)=>{"use strict";var r=n(414);function o(){}function a(){}a.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,a,i){if(i!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:o};return n.PropTypes=n,n}},5697:(e,t,n)=>{e.exports=n(2703)()},414:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},4448:(e,t,n)=>{"use strict";var r=n(7294),o=n(7418),a=n(3840);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n