From 44d26d8d9400ad0625735fea9a9eb09d983063f0 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 17:39:53 -0500 Subject: [PATCH 01/40] Update Styling --- docs/docfx.json | 3 +- .../api_wiki/partials/affix.tmpl.partial | 40 ++ .../api_wiki/partials/footer.tmpl.partial | 29 ++ .../api_wiki/partials/head.tmpl.partial | 20 + .../api_wiki/public/fonts/dpcomic.ttf | Bin 0 -> 13432 bytes docs/template/api_wiki/public/main.css | 6 + docs/template/api_wiki/styles/main.css | 470 ++++++++++++++++++ docs/template/api_wiki/styles/toggle-theme.js | 35 ++ 8 files changed, 602 insertions(+), 1 deletion(-) create mode 100644 docs/template/api_wiki/partials/affix.tmpl.partial create mode 100644 docs/template/api_wiki/partials/footer.tmpl.partial create mode 100644 docs/template/api_wiki/partials/head.tmpl.partial create mode 100644 docs/template/api_wiki/public/fonts/dpcomic.ttf create mode 100644 docs/template/api_wiki/public/main.css create mode 100644 docs/template/api_wiki/styles/main.css create mode 100644 docs/template/api_wiki/styles/toggle-theme.js diff --git a/docs/docfx.json b/docs/docfx.json index 9e8a1497..d2b018bc 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -66,7 +66,8 @@ "default", "modern", "template/darkfx", - "template/no_inherited_members" + "template/no_inherited_members", + "template/api_wiki" ] } } diff --git a/docs/template/api_wiki/partials/affix.tmpl.partial b/docs/template/api_wiki/partials/affix.tmpl.partial new file mode 100644 index 00000000..11caeb3d --- /dev/null +++ b/docs/template/api_wiki/partials/affix.tmpl.partial @@ -0,0 +1,40 @@ +{{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} + + diff --git a/docs/template/api_wiki/partials/footer.tmpl.partial b/docs/template/api_wiki/partials/footer.tmpl.partial new file mode 100644 index 00000000..a9da7c3b --- /dev/null +++ b/docs/template/api_wiki/partials/footer.tmpl.partial @@ -0,0 +1,29 @@ +{{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} + + \ No newline at end of file diff --git a/docs/template/api_wiki/partials/head.tmpl.partial b/docs/template/api_wiki/partials/head.tmpl.partial new file mode 100644 index 00000000..83fc5f91 --- /dev/null +++ b/docs/template/api_wiki/partials/head.tmpl.partial @@ -0,0 +1,20 @@ +{{!Copyright (c) Oscar Vasquez. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} + + + + + {{#title}}{{title}}{{/title}}{{^title}}{{>partials/title}}{{/title}} {{#_appTitle}}| {{_appTitle}} {{/_appTitle}} + + + + {{#_description}}{{/_description}} + + + + + + + {{#_noindex}}{{/_noindex}} + {{#_enableSearch}}{{/_enableSearch}} + {{#_enableNewTab}}{{/_enableNewTab}} + \ No newline at end of file diff --git a/docs/template/api_wiki/public/fonts/dpcomic.ttf b/docs/template/api_wiki/public/fonts/dpcomic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..3707903dda7bc602c516d5efb3e47a212fb0f3e0 GIT binary patch literal 13432 zcmcIreQ;dWbwBs5R$5z2y39(xGX}C?*AkK%&V|(&;n|(+=&7%TUHmu(rS7 zIrqMOyOJILpl`kJ-S=_N`JLbSxc6PH#feCrJSHhwbN%(3Zr<_Z4@O0nZN=5r^|$r( z-g@P`%S7BdoZqo?|G=TTpU#^ll6n=_j@>hG-=Sg=J!RP@+|S%I_|TqrzPqGWr23G^ zg3i6W2X@ue{`y_qdmZ29dvPH>7_CCzDx7!j-9Pl;>F*U6;`~{WsB`e(&Vet>pFAa! zhJM$)f8fDG@^iTj?Jhjuc3@!t?!w?d&K2ny0ft8p9lUSo_k(vV5Xm*;nKeRNT=ccK zpLp(_yBb#ikJM6)$XoBc20V5w9xtwpj-{64G$RqOVne@Zytq=fM!&)Rr=w#k$?nMDh9JzT)2EoyE&kHtN6>Tg0q#)%g0G4(CzGw9o-JQ&s8en#{E6 zwRQC~8XB`Ro0?l@&7SkQ3odNEXzs;r?U!_P&bxGe*MiFyE?V5(vt(&+Zdrc$ip#H9 zxoY*5S6#j4n!an-UU&Ts>u&7-{7pCCvVOy@8*kfm`yF>~{=$|oZr!&1t{nq%@0a!; zeBhDCgT_B_9DKC$f!%lOm7Pe=J^Q{~dDoxsJ#^0>9k_4k$l-?`mIojE${$xgRwtM1 z=N8#3-<3Dr9Jj&ka1Xl?_e1wf_n!MWilWYFU9>A2j{YWkEBZJ!H?<~pDD~~si>V){ zKCGHibyd~9RWDSXs`@zHmhMjvrk_fmOuv=>xAa7HSM}=Z9o3IlzgRt1eWs?fW<$;1 znnKMBHNVcx$Slfi&g{+nS?1}?%bC&4c;=I7mrPqX?ZC9}OglO4U#Cq>pEZ5?^exlx zoqlxsi_^!Ze^@)Kw!8M0+P$?;)IMMPX6+|+opo#K?yfsfceL(>x>xGw)E}<@%lcFG zAI<2Vv17)_j5izV8n!e%(eSqoryDPAT+_IvvC#N@yb!oOe%l5=PMosY*Hx`Y{g>tb-Q+rDe zpAP%vbNcDX<2;{h!u39v>El-5Zj_BeG_I`z&v1VBr2@U7a-|TBpf;lpH|4S&*<6Ye z*cZJ<&YpH-XHWBCJnM#CKc20T20lye`P>SBq*&F}7mbXffsgiq^o_v1P&gAUk(u^KF>ELssXK)y2LHLP-WOHY$+vIW`L#|^W{n;nf1 zkv&mr;E{=w_FM_iIHICMFxE3NvWf&Y@<=T0d3aUT=VrI$@+scP7fcJp7Yacjl#L=# zCeA>v=RBBK1f&_*jF!)dXM@;v=I$hss9Rn2{~B^ zrEb&gV-OV4czpY!jr0>8<@LkP0zTlOECcYc=PBdHz!iCFht&3buFnnkO$>3*Fjd{6 zG7we74`38d4lUPbD<(zcanXzVas9@o?HR4{MtsOs^c@C2O#&$vrJhyr!)R#9=CTYf zdYZdvV+btQ&z9?_h*%EzL3JQMup|!;aSxpujF1p*oam(-MpfuH2K^VAcGVsCRvXmA zkO5A?GKj%OKmeiv$a7{!%oXaN`I~%dY#SEln@NN;f>%S>6W!J0+U7ZBmAI(~JK|`I z+C&*O6pXr~5wAT!42mTs0Gsy@dJ)U#U|YaqkrU(q50N1HfCZ_eKq$^5L5L)9%=Rpq zRVK-MiHHCzkH}MJ1xx5Hlg8@By9r;>cbnMdWia7|waGTN3 zs;h~E+ES_v0FJ5*Q+UZou#V(r8v2;;K^!@25WE*qGqN2XHBA>eYT_7Sk${1%@9ayX zqX-B{!GIU?VMMaX_Av7zW=2IjrFgWJxu8QdGE*^fHpJ0Rw}~?lZvNCdLSC#wD>5@4 z=BtLl2{W9KxHk>}6>S>M8ypW}d&gjJHdNj)n#O3&ba3lQD^aR!61YO;q+k?6!x%84 zBT1+$9$#RAHGox)M|PwrZotM-z9a(`H?B=8gELN6OW&UzeBX&PIzh0$w5fdxo{)#< zV2YeqQpIb5tCCz~Ax8oISm5O_NEcYWF@TJm9dsGRGRm@TwusG{IVJ)>?c{S96ZAgD zZ^oR?DdJI=0gVwZgfA@o2`r!0taA# zDe-Qzd(AZBH8*j35570rbC^$!=$OWuqG5ek2rP$^e?xi7)w8eOWFVKd6wUy72N&1u#k3AcZty-8e zzLAKNdIXo&0>%g9#ATSmU=g!_&eb_|CF0NL7-nqB6(*mW3Ca-JVJ4uPJXY9{l^7m!r{0NoCTE6J|zYgHZg_Bw@bj)Lr9? zH!5&0)|mzQRjgo_S!;}YU*`1+Eg|a(J)U2^Lh`tgb-S)*wX6=KhT8bAtU#*zz~0$C zWO#xRjA?u(p0jFxw}a16!-+>Lf@1QxITyxcN!6oP*{mMveG)_%s1jWAtM7Z`VfMw@ z6`tZ-a=dsgLfp8hFtT`0Hx<@hk%qD{*m@42X^H0YDtghLxMFk@a(gsj1$ic zMj+0?RR=jzKYMzVBLrCBNPT90PH;;J)}Nh2SM>6^1^o?SEhG`eWm#J0UXI<2vfx|D z@$ph2hn#22<(M5xHT?`WbWtPZ`eZqbw>-UFE+-Lg7$6H}cr4HRVVA{=`b;B6-)kB5 zAc6}tN$#*JOBKu)oR^@V=;+;gvXBd(b*!F4oLH-^ti3*P;#R6-8s984{IF+bZ(>CElZ;7HuRLr2Xd~=R%%@u> zNh!xcJZg)IgEW&^CR5|D9d;QOpDjri$t$sHRYYI0QI>gvu9kTHr@7ctJkNthXR(+8y;9fD6)fAg4vvR>} zXy znn;y|GqI>D{6`i@Busbagq zHS75(KH-RF$9lWewH_yWvul1O=B5Nz%aWEDC;c8iD?a6OUD#Ba9=+N(40#M&FMoQ- z<`c}<{NJ+Dcq1tB8Bh~I)I&u>no&|LGg=4?d1GfMzVkX85;o-L;g0`4a!y+sP!Z>uPO?mn zsBdbX9^SgOr-$F05_*<(cjHRWw!;-Vs+dUbC#hCl+f*%9B}1N^ON;9s!RKcq-QViD zJE5nw+qNxJ>KRV;=$Kw&5O&ZSaK~|!L6o1G!B18S;3U*D;c=I~O2FxORwvUNy~ z4-#uhqXeL0_I4wJx=EEX4=Dq`_uC|B4%)F(N!dR9QZi`|tV9&GVbPnwq-i zuqa!W;#7JzjZPb~> z%qEIoQo%!NIrC%(WMVT0w6;+$^BE&}oO$Pv>v}2prAooeECG{(0XJY~{`H(E`_7^3 z2S~kn$iI2(@LgP~vOEdPG+T}Os?QJnjX~%6@EqcWk()agYrl)rV^gKNQjV0Vk_f-4 z5qVYl!wfMM{GwxEM6%Z6n=*p@+GRzbrnuU1Uim8fJU&IA_n_yuTFd-Y(X3*; z)u`TES)5q4ZbYMjvdY-7MwY`};Py_^}7fx(88;IHA+GcTG{YxI!M{X$)L9@GnQy zfNZ2k)vK&Q{4n!467fSuU);78g>+kY_g-}!Y+&@KO4YSuX*B#j0$kIk4rq$K%6g;r z`TXX(rY3&&FX*=gv?sQPyfZQGvWa8anxw@jZSgwd%%cV8(BZyDC9hQ~@!2kn2?5@8!B~|1=e}(Y`|*7!pUB<@eo+1Sl^93*IKEz zT8n`)Sxqglte27=n04y$jhhjGSf z^pw_AR3763VpTGiX!*+y0#7ck7}hZzi>^3-RbizeM=h)~s5aV;Gu_PywS@!Kx-c=~ z`-c_L@^MRn5g@-dE%I@cz(TI5i<+R3Gb4O-Y&bubbP~(eld(k4@d5u`c1|o(!2B`A z-}&*q+unuY7d)TpEnJ{uW+V>t%%AH#^M+41&(zV>@Y9}P9on>&%;s}1Po8VmgDD0J zDf3>Pda~)?`S740YekynW2tZ%2~0(XsXS4*q=l59f%BeEOEhvX2BZL(7i$^p3_?Za}P z?9;P0Ie|O9vIL);e`Xh+*e?TkHiuu^c8hE}d}Q~ghYsy-+j;Q7{ksp}x9{MAwi9i= zOP1ttW!LWg0|#=KRC!fW`*d zgDcm`E<8U3-7E1emr>r+p6CUp#j+gVfEvH~AGmJUzM;02ZCI#g{Dd5$<$;#0+ZAbg9K}=<5;t4fwTvR%YU_K+UNAvoK!I z!CdwNj4iGBJIq|X>$PD%b_r&;oyhJ>F`w?j9Pu*D&=w&|y79h7xAh{Lmq{LxvjP!x z1)^=0td=X~D!E$L$TiZ3*jiEA?mr{Hli%0guyfzxok#ZX8QlFK*}?xQAd8OF W{o;7nhdln>+W&oqNBn=B%l{8!Gy|^y literal 0 HcmV?d00001 diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css new file mode 100644 index 00000000..c7935515 --- /dev/null +++ b/docs/template/api_wiki/public/main.css @@ -0,0 +1,6 @@ +@font-face { + font-family: 'DPComic'; + src: url('fonts/dpcomic.ttf') format('ttf'); + font-weight: normal; + font-style: normal; +} diff --git a/docs/template/api_wiki/styles/main.css b/docs/template/api_wiki/styles/main.css new file mode 100644 index 00000000..078adc77 --- /dev/null +++ b/docs/template/api_wiki/styles/main.css @@ -0,0 +1,470 @@ +:root, body.dark-theme { + --color-foreground: #ccd5dc; + --color-navbar: #66666d; + --color-breadcrumb: #999; + --color-underline: #ddd; + --color-toc-hover: #fff; + --color-background: #2d2d30; + --color-background-subnav: #333337; + --color-background-dark: #1e1e1e; + --color-background-table-alt: #212123; + --color-background-quote: #69696e; +} + +body.light-theme { + --color-foreground: #171717; + --color-breadcrumb: #4a4a4a; + --color-toc-hover: #4c4c4c; + --color-background: #ffffff; + --color-background-subnav: #f5f5f5; + --color-background-dark: #ddd; + --color-background-table-alt: #f9f9f9; +} + +body { + color: var(--color-foreground); + line-height: 1.5; + font-size: 14px; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; + word-wrap: break-word; + background-color: var(--color-background); +} + +.btn.focus, .btn:focus, .btn:hover { + color: var(--color-foreground); +} + +h1 { + font-weight: 600; + font-size: 32px; +} + +h2 { + font-weight: 600; + font-size: 24px; + line-height: 1.8; +} + +h3 { + font-weight: 600; + font-size: 20px; + line-height: 1.8; +} + +h5 { + font-size: 14px; + padding: 10px 0px; +} + +article h1, article h2, article h3, article h4 { + margin-top: 35px; + margin-bottom: 15px; +} + +article h4 { + padding-bottom: 8px; + border-bottom: 2px solid var(--color-underline); +} + +.navbar-brand>img { + color: var(--color-background); +} + +.navbar { + border: none; +} + +.subnav { + border-top: 1px solid var(--color-underline); + background-color: var(--color-background-subnav); +} + +.sidenav, .fixed_header, .toc { + background-color: var(--color-background); +} + +.navbar-inverse { + background-color: var(--color-background-dark); + z-index: 100; +} + +.navbar-inverse .navbar-nav>li>a, .navbar-inverse .navbar-text { + color: var(--color-navbar); + background-color: var(--color-background-dark); + border-bottom: 3px solid transparent; + padding-bottom: 12px; +} + +.navbar-inverse .navbar-nav>li>a:focus, .navbar-inverse .navbar-nav>li>a:hover { + color: var(--color-foreground); + background-color: var(--color-background-dark); + border-bottom: 3px solid var(--color-background-subnav); + transition: all ease 0.25s; +} + +.navbar-inverse .navbar-nav>.active>a, .navbar-inverse .navbar-nav>.active>a:focus, .navbar-inverse .navbar-nav>.active>a:hover { + color: var(--color-foreground); + background-color: var(--color-background-dark); + border-bottom: 3px solid var(--color-foreground); + transition: all ease 0.25s; +} + +.navbar-form .form-control { + border: none; + border-radius: 0; +} + +.light-theme .navbar-brand svg { + filter: brightness(20%); +} + +.toc .level1>li { + font-weight: 400; +} + +.toc .nav>li>a { + color: var(--color-foreground); +} + +.sidefilter { + background-color: var(--color-background); + border-left: none; + border-right: none; +} + +.sidefilter { + background-color: var(--color-background); + border-left: none; + border-right: none; +} + +.toc-filter { + padding: 10px; + margin: 0; + background-color: var(--color-background); +} + +.toc-filter>input { + border: none; + border-radius: unset; + background-color: var(--color-background-subnav); + padding: 5px 0 5px 20px; + font-size: 90% +} + +.toc-filter>.clear-icon { + position: absolute; + top: 17px; + right: 15px; +} + +.toc-filter>input:focus { + color: var(--color-foreground); + transition: all ease 0.25s; +} + +.toc-filter>.filter-icon { + display: none; +} + +.sidetoc>.toc { + background-color: var(--color-background); + overflow-x: hidden; +} + +.sidetoc { + background-color: var(--color-background); + border: none; +} + +.alert { + background-color: inherit; + border: none; + padding: 10px 0; + border-radius: 0; +} + +.alert>p { + margin-bottom: 0; + padding: 5px 10px; + border-bottom: 1px solid; + background-color: var(--color-background-dark); +} + +.alert>h5 { + padding: 10px 15px; + margin-top: 0; + margin-bottom: 0; + text-transform: uppercase; + font-weight: bold; + border-top: 2px solid; + background-color: var(--color-background-dark); + border-radius: none; +} + +.alert>ul { + margin-bottom: 0; + padding: 5px 40px; +} + +.alert-info { + color: #1976d2; +} + +.alert-warning { + color: #f57f17; +} + +.alert-danger { + color: #d32f2f; +} + +pre { + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + word-break: break-all; + word-wrap: break-word; + background-color: var(--color-background-dark); + border-radius: 0; + border: none; +} + +code { + background: var(--color-background-dark) !important; + border-radius: 2px; +} + +.hljs { + color: var(--color-foreground); +} + +.toc .nav>li.active>.expand-stub::before, .toc .nav>li.in>.expand-stub::before, .toc .nav>li.in.active>.expand-stub::before, .toc .nav>li.filtered>.expand-stub::before { + content: "▾"; +} + +.toc .nav>li>.expand-stub::before, .toc .nav>li.active>.expand-stub::before { + content: "▸"; +} + +.affix ul ul>li>a:before { + content: "|"; +} + +.breadcrumb { + background-color: var(--color-background-subnav); +} + +.breadcrumb .label.label-primary { + background: #444; + border-radius: 0; + font-weight: normal; + font-size: 100%; +} + +#breadcrumb .breadcrumb>li a { + border-radius: 0; + font-weight: normal; + font-size: 85%; + display: inline; + padding: 0 .6em 0; + line-height: 1; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + color: var(--color-breadcrumb); +} + +#breadcrumb .breadcrumb>li a:hover { + color: var(--color-foreground); + transition: all ease 0.25s; +} + +.breadcrumb>li+li:before { + content: "⯈"; + font-size: 75%; + color: var(--color-background-dark); + padding: 0; +} + +.light-theme .breadcrumb>li+li:before { + color: var(--color-foreground) + } + +.toc .level1>li { + font-weight: 600; + font-size: 130%; + padding-left: 5px; +} + +.footer { + border-top: none; + background-color: var(--color-background-dark); + padding: 15px 0; + font-size: 90%; +} + +.toc .nav>li>a:hover, .toc .nav>li>a:focus { + color: var(--color-toc-hover); + transition: all ease 0.1s; +} + +.form-control { + background-color: var(--color-background-subnav); + border: none; + border-radius: 0; + -webkit-box-shadow: none; + box-shadow: none; +} + +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: none; + box-shadow: none; +} + +input#search-query:focus { + color: var(--color-foreground); +} + +.table-bordered, .table-bordered>tbody>tr>td, .table-bordered>tbody>tr>th, .table-bordered>tfoot>tr>td, .table-bordered>tfoot>tr>th, .table-bordered>thead>tr>td, .table-bordered>thead>tr>th { + border: 1px solid var(--color-background-dark); +} + +.table-striped>tbody>tr:nth-of-type(odd) { + background-color: var(--color-background-table-alt); +} + +blockquote { + padding: 10px 20px; + margin: 0 0 10px; + font-size: 110%; + border-left: 5px solid var(--color-background-quote); + color: var(--color-background-quote); +} + +.pagination>.disabled>a, .pagination>.disabled>a:focus, .pagination>.disabled>a:hover, .pagination>.disabled>span, .pagination>.disabled>span:focus, .pagination>.disabled>span:hover { + background-color: var(--color-background-subnav); + border-color: var(--color-background-subnav); +} + +.breadcrumb>li, .pagination { + display: inline; +} + +.tabGroup a[role="tab"] { + border-bottom: 2px solid var(--color-background-dark); +} + +.tabGroup a[role="tab"][aria-selected="true"] { + color: var(--color-foreground); +} + +.tabGroup section[role="tabpanel"] { + border: 1px solid var(--color-background-dark); +} + +.sideaffix > div.contribution > ul > li > a.contribution-link:hover { + background-color: var(--color-background); +} + +.switch { + position: relative; + display: inline-block; + width: 40px; + height: 20px; +} + +.switch input { + opacity: 0; + width: 0; + height: 0; +} + +.slider { + position: absolute; + cursor: pointer; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: #ccc; + -webkit-transition: .4s; + transition: .4s; +} + +.slider:before { + position: absolute; + content: ""; + height: 14px; + width: 14px; + left: 4px; + bottom: 3px; + background-color: white; + -webkit-transition: .4s; + transition: .4s; +} + +input:checked + .slider { + background-color: #337ab7; +} + +input:focus + .slider { + box-shadow: 0 0 1px #337ab7; +} + +input:checked + .slider:before { + -webkit-transform: translateX(19px); + -ms-transform: translateX(19px); + transform: translateX(19px); +} + +/* Rounded sliders */ +.slider.round { + border-radius: 20px; +} + +.slider.round:before { + border-radius: 50%; +} +.toggle-mode .icon { + display: inline-block; +} + +.toggle-mode .icon i { + font-style: normal; + font-size: 17px; + display: inline-block; + padding-right: 7px; + padding-left: 7px; + vertical-align: middle; +} + +@media (min-width: 1600px) { + .container { + width: 100%; + } + .sidefilter { + width: 18%; + } + .sidetoc { + width: 18%; + } + .article.grid-right { + margin-left: 19%; + } + .sideaffix { + width: 11.5%; + } + .affix ul>li.active>a { + white-space: initial; + } + .affix ul>li>a { + width: 99%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + } +} \ No newline at end of file diff --git a/docs/template/api_wiki/styles/toggle-theme.js b/docs/template/api_wiki/styles/toggle-theme.js new file mode 100644 index 00000000..f2ea5f5f --- /dev/null +++ b/docs/template/api_wiki/styles/toggle-theme.js @@ -0,0 +1,35 @@ +const sw = document.getElementById("switch-style"), sw_mobile = document.getElementById("switch-style-m"), b = document.body; +if (b) { + function toggleTheme(target, dark) { + target.classList.toggle("dark-theme", dark) + target.classList.toggle("light-theme", !dark) + } + + function switchEventListener() { + toggleTheme(b, this.checked); + if (window.localStorage) { + this.checked ? localStorage.setItem("theme", "dark-theme") : localStorage.setItem("theme", "light-theme") + } + } + + var isDarkTheme = !window.localStorage || !window.localStorage.getItem("theme") || window.localStorage && localStorage.getItem("theme") === "dark-theme"; + + if(sw && sw_mobile){ + sw.checked = isDarkTheme; + sw_mobile.checked = isDarkTheme; + + sw.addEventListener("change", switchEventListener); + sw_mobile.addEventListener("change", switchEventListener); + + // sync state between switches + sw.addEventListener("change", function() { + sw_mobile.checked = this.checked; + }); + + sw_mobile.addEventListener("change", function() { + sw.checked = this.checked; + }); + } + + toggleTheme(b, isDarkTheme); +} \ No newline at end of file From 21fa0a80ea595e18d8bdda6b0b3cd1f4be13509a Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 17:44:15 -0500 Subject: [PATCH 02/40] Remove Styles folder from `api_wiki` --- docs/template/api_wiki/styles/main.css | 470 ------------------ docs/template/api_wiki/styles/toggle-theme.js | 35 -- 2 files changed, 505 deletions(-) delete mode 100644 docs/template/api_wiki/styles/main.css delete mode 100644 docs/template/api_wiki/styles/toggle-theme.js diff --git a/docs/template/api_wiki/styles/main.css b/docs/template/api_wiki/styles/main.css deleted file mode 100644 index 078adc77..00000000 --- a/docs/template/api_wiki/styles/main.css +++ /dev/null @@ -1,470 +0,0 @@ -:root, body.dark-theme { - --color-foreground: #ccd5dc; - --color-navbar: #66666d; - --color-breadcrumb: #999; - --color-underline: #ddd; - --color-toc-hover: #fff; - --color-background: #2d2d30; - --color-background-subnav: #333337; - --color-background-dark: #1e1e1e; - --color-background-table-alt: #212123; - --color-background-quote: #69696e; -} - -body.light-theme { - --color-foreground: #171717; - --color-breadcrumb: #4a4a4a; - --color-toc-hover: #4c4c4c; - --color-background: #ffffff; - --color-background-subnav: #f5f5f5; - --color-background-dark: #ddd; - --color-background-table-alt: #f9f9f9; -} - -body { - color: var(--color-foreground); - line-height: 1.5; - font-size: 14px; - -ms-text-size-adjust: 100%; - -webkit-text-size-adjust: 100%; - word-wrap: break-word; - background-color: var(--color-background); -} - -.btn.focus, .btn:focus, .btn:hover { - color: var(--color-foreground); -} - -h1 { - font-weight: 600; - font-size: 32px; -} - -h2 { - font-weight: 600; - font-size: 24px; - line-height: 1.8; -} - -h3 { - font-weight: 600; - font-size: 20px; - line-height: 1.8; -} - -h5 { - font-size: 14px; - padding: 10px 0px; -} - -article h1, article h2, article h3, article h4 { - margin-top: 35px; - margin-bottom: 15px; -} - -article h4 { - padding-bottom: 8px; - border-bottom: 2px solid var(--color-underline); -} - -.navbar-brand>img { - color: var(--color-background); -} - -.navbar { - border: none; -} - -.subnav { - border-top: 1px solid var(--color-underline); - background-color: var(--color-background-subnav); -} - -.sidenav, .fixed_header, .toc { - background-color: var(--color-background); -} - -.navbar-inverse { - background-color: var(--color-background-dark); - z-index: 100; -} - -.navbar-inverse .navbar-nav>li>a, .navbar-inverse .navbar-text { - color: var(--color-navbar); - background-color: var(--color-background-dark); - border-bottom: 3px solid transparent; - padding-bottom: 12px; -} - -.navbar-inverse .navbar-nav>li>a:focus, .navbar-inverse .navbar-nav>li>a:hover { - color: var(--color-foreground); - background-color: var(--color-background-dark); - border-bottom: 3px solid var(--color-background-subnav); - transition: all ease 0.25s; -} - -.navbar-inverse .navbar-nav>.active>a, .navbar-inverse .navbar-nav>.active>a:focus, .navbar-inverse .navbar-nav>.active>a:hover { - color: var(--color-foreground); - background-color: var(--color-background-dark); - border-bottom: 3px solid var(--color-foreground); - transition: all ease 0.25s; -} - -.navbar-form .form-control { - border: none; - border-radius: 0; -} - -.light-theme .navbar-brand svg { - filter: brightness(20%); -} - -.toc .level1>li { - font-weight: 400; -} - -.toc .nav>li>a { - color: var(--color-foreground); -} - -.sidefilter { - background-color: var(--color-background); - border-left: none; - border-right: none; -} - -.sidefilter { - background-color: var(--color-background); - border-left: none; - border-right: none; -} - -.toc-filter { - padding: 10px; - margin: 0; - background-color: var(--color-background); -} - -.toc-filter>input { - border: none; - border-radius: unset; - background-color: var(--color-background-subnav); - padding: 5px 0 5px 20px; - font-size: 90% -} - -.toc-filter>.clear-icon { - position: absolute; - top: 17px; - right: 15px; -} - -.toc-filter>input:focus { - color: var(--color-foreground); - transition: all ease 0.25s; -} - -.toc-filter>.filter-icon { - display: none; -} - -.sidetoc>.toc { - background-color: var(--color-background); - overflow-x: hidden; -} - -.sidetoc { - background-color: var(--color-background); - border: none; -} - -.alert { - background-color: inherit; - border: none; - padding: 10px 0; - border-radius: 0; -} - -.alert>p { - margin-bottom: 0; - padding: 5px 10px; - border-bottom: 1px solid; - background-color: var(--color-background-dark); -} - -.alert>h5 { - padding: 10px 15px; - margin-top: 0; - margin-bottom: 0; - text-transform: uppercase; - font-weight: bold; - border-top: 2px solid; - background-color: var(--color-background-dark); - border-radius: none; -} - -.alert>ul { - margin-bottom: 0; - padding: 5px 40px; -} - -.alert-info { - color: #1976d2; -} - -.alert-warning { - color: #f57f17; -} - -.alert-danger { - color: #d32f2f; -} - -pre { - padding: 9.5px; - margin: 0 0 10px; - font-size: 13px; - word-break: break-all; - word-wrap: break-word; - background-color: var(--color-background-dark); - border-radius: 0; - border: none; -} - -code { - background: var(--color-background-dark) !important; - border-radius: 2px; -} - -.hljs { - color: var(--color-foreground); -} - -.toc .nav>li.active>.expand-stub::before, .toc .nav>li.in>.expand-stub::before, .toc .nav>li.in.active>.expand-stub::before, .toc .nav>li.filtered>.expand-stub::before { - content: "▾"; -} - -.toc .nav>li>.expand-stub::before, .toc .nav>li.active>.expand-stub::before { - content: "▸"; -} - -.affix ul ul>li>a:before { - content: "|"; -} - -.breadcrumb { - background-color: var(--color-background-subnav); -} - -.breadcrumb .label.label-primary { - background: #444; - border-radius: 0; - font-weight: normal; - font-size: 100%; -} - -#breadcrumb .breadcrumb>li a { - border-radius: 0; - font-weight: normal; - font-size: 85%; - display: inline; - padding: 0 .6em 0; - line-height: 1; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - color: var(--color-breadcrumb); -} - -#breadcrumb .breadcrumb>li a:hover { - color: var(--color-foreground); - transition: all ease 0.25s; -} - -.breadcrumb>li+li:before { - content: "⯈"; - font-size: 75%; - color: var(--color-background-dark); - padding: 0; -} - -.light-theme .breadcrumb>li+li:before { - color: var(--color-foreground) - } - -.toc .level1>li { - font-weight: 600; - font-size: 130%; - padding-left: 5px; -} - -.footer { - border-top: none; - background-color: var(--color-background-dark); - padding: 15px 0; - font-size: 90%; -} - -.toc .nav>li>a:hover, .toc .nav>li>a:focus { - color: var(--color-toc-hover); - transition: all ease 0.1s; -} - -.form-control { - background-color: var(--color-background-subnav); - border: none; - border-radius: 0; - -webkit-box-shadow: none; - box-shadow: none; -} - -.form-control:focus { - border-color: #66afe9; - outline: 0; - -webkit-box-shadow: none; - box-shadow: none; -} - -input#search-query:focus { - color: var(--color-foreground); -} - -.table-bordered, .table-bordered>tbody>tr>td, .table-bordered>tbody>tr>th, .table-bordered>tfoot>tr>td, .table-bordered>tfoot>tr>th, .table-bordered>thead>tr>td, .table-bordered>thead>tr>th { - border: 1px solid var(--color-background-dark); -} - -.table-striped>tbody>tr:nth-of-type(odd) { - background-color: var(--color-background-table-alt); -} - -blockquote { - padding: 10px 20px; - margin: 0 0 10px; - font-size: 110%; - border-left: 5px solid var(--color-background-quote); - color: var(--color-background-quote); -} - -.pagination>.disabled>a, .pagination>.disabled>a:focus, .pagination>.disabled>a:hover, .pagination>.disabled>span, .pagination>.disabled>span:focus, .pagination>.disabled>span:hover { - background-color: var(--color-background-subnav); - border-color: var(--color-background-subnav); -} - -.breadcrumb>li, .pagination { - display: inline; -} - -.tabGroup a[role="tab"] { - border-bottom: 2px solid var(--color-background-dark); -} - -.tabGroup a[role="tab"][aria-selected="true"] { - color: var(--color-foreground); -} - -.tabGroup section[role="tabpanel"] { - border: 1px solid var(--color-background-dark); -} - -.sideaffix > div.contribution > ul > li > a.contribution-link:hover { - background-color: var(--color-background); -} - -.switch { - position: relative; - display: inline-block; - width: 40px; - height: 20px; -} - -.switch input { - opacity: 0; - width: 0; - height: 0; -} - -.slider { - position: absolute; - cursor: pointer; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: #ccc; - -webkit-transition: .4s; - transition: .4s; -} - -.slider:before { - position: absolute; - content: ""; - height: 14px; - width: 14px; - left: 4px; - bottom: 3px; - background-color: white; - -webkit-transition: .4s; - transition: .4s; -} - -input:checked + .slider { - background-color: #337ab7; -} - -input:focus + .slider { - box-shadow: 0 0 1px #337ab7; -} - -input:checked + .slider:before { - -webkit-transform: translateX(19px); - -ms-transform: translateX(19px); - transform: translateX(19px); -} - -/* Rounded sliders */ -.slider.round { - border-radius: 20px; -} - -.slider.round:before { - border-radius: 50%; -} -.toggle-mode .icon { - display: inline-block; -} - -.toggle-mode .icon i { - font-style: normal; - font-size: 17px; - display: inline-block; - padding-right: 7px; - padding-left: 7px; - vertical-align: middle; -} - -@media (min-width: 1600px) { - .container { - width: 100%; - } - .sidefilter { - width: 18%; - } - .sidetoc { - width: 18%; - } - .article.grid-right { - margin-left: 19%; - } - .sideaffix { - width: 11.5%; - } - .affix ul>li.active>a { - white-space: initial; - } - .affix ul>li>a { - width: 99%; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - } -} \ No newline at end of file diff --git a/docs/template/api_wiki/styles/toggle-theme.js b/docs/template/api_wiki/styles/toggle-theme.js deleted file mode 100644 index f2ea5f5f..00000000 --- a/docs/template/api_wiki/styles/toggle-theme.js +++ /dev/null @@ -1,35 +0,0 @@ -const sw = document.getElementById("switch-style"), sw_mobile = document.getElementById("switch-style-m"), b = document.body; -if (b) { - function toggleTheme(target, dark) { - target.classList.toggle("dark-theme", dark) - target.classList.toggle("light-theme", !dark) - } - - function switchEventListener() { - toggleTheme(b, this.checked); - if (window.localStorage) { - this.checked ? localStorage.setItem("theme", "dark-theme") : localStorage.setItem("theme", "light-theme") - } - } - - var isDarkTheme = !window.localStorage || !window.localStorage.getItem("theme") || window.localStorage && localStorage.getItem("theme") === "dark-theme"; - - if(sw && sw_mobile){ - sw.checked = isDarkTheme; - sw_mobile.checked = isDarkTheme; - - sw.addEventListener("change", switchEventListener); - sw_mobile.addEventListener("change", switchEventListener); - - // sync state between switches - sw.addEventListener("change", function() { - sw_mobile.checked = this.checked; - }); - - sw_mobile.addEventListener("change", function() { - sw.checked = this.checked; - }); - } - - toggleTheme(b, isDarkTheme); -} \ No newline at end of file From c40e02e00d49290765fa0a9402051ea5cb6f572d Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 17:57:36 -0500 Subject: [PATCH 03/40] Fix Style and implement Community Patch and APIPatcher to Docs --- docs/api/index.md | 6 ++--- docs/apipatcher/.gitignore | 5 +++++ docs/apipatcher/index.md | 4 ++++ docs/community/.gitignore | 5 +++++ docs/community/index.md | 4 ++++ docs/docfx.json | 31 +++++++++++++++++++++++--- docs/template/api_wiki/public/main.css | 7 +++++- docs/toc.yml | 8 ++++++- 8 files changed, 62 insertions(+), 8 deletions(-) create mode 100644 docs/apipatcher/.gitignore create mode 100644 docs/apipatcher/index.md create mode 100644 docs/community/.gitignore create mode 100644 docs/community/index.md diff --git a/docs/api/index.md b/docs/api/index.md index de6708af..0d4a8c88 100644 --- a/docs/api/index.md +++ b/docs/api/index.md @@ -1,4 +1,4 @@ -# API Documentation -Hello, and welcome to the documentation section of the Inscryption API! +# Inscryption API Documentation +Hello, and welcome to the documentation section for the Inscryption API! -This section documents the various classes and members of the API, providing information on what they do. \ No newline at end of file +This section documents the various classes and members of the Inscryption API, providing information on what they do. \ No newline at end of file diff --git a/docs/apipatcher/.gitignore b/docs/apipatcher/.gitignore new file mode 100644 index 00000000..e8079a3b --- /dev/null +++ b/docs/apipatcher/.gitignore @@ -0,0 +1,5 @@ +############### +# temp file # +############### +*.yml +.manifest diff --git a/docs/apipatcher/index.md b/docs/apipatcher/index.md new file mode 100644 index 00000000..4356acdd --- /dev/null +++ b/docs/apipatcher/index.md @@ -0,0 +1,4 @@ +# APIPatcher Documentation +Hello, and welcome to the documentation section for the APIPatcher! + +This section documents the various classes and members of the APIPatcher, providing information on what they do. \ No newline at end of file diff --git a/docs/community/.gitignore b/docs/community/.gitignore new file mode 100644 index 00000000..e8079a3b --- /dev/null +++ b/docs/community/.gitignore @@ -0,0 +1,5 @@ +############### +# temp file # +############### +*.yml +.manifest diff --git a/docs/community/index.md b/docs/community/index.md new file mode 100644 index 00000000..f79961e0 --- /dev/null +++ b/docs/community/index.md @@ -0,0 +1,4 @@ +# Inscryption Community Patch Documentation +Hello, and welcome to the documentation section for the Inscryption Community Patch! + +This section documents the various classes and members of the Inscryption Community Patch, providing information on what they do. \ No newline at end of file diff --git a/docs/docfx.json b/docs/docfx.json index d2b018bc..68eb5108 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -3,13 +3,32 @@ { "src": [ { - "files": ["**/*.csproj"], - "exclude": ["**/bin/**", "**/obj/**"], + "files": ["InscryptionAPI/InscryptionAPI.csproj"], "src": "../" } ], "dest": "api", "filter": "filter.yml" + }, + { + "src": [ + { + "files": ["InscryptionCommunityPatch/InscryptionCommunityPatch.csproj"], + "src": "../" + } + ], + "dest": "community", + "filter": "filter.yml" + }, + { + "src": [ + { + "files": ["APIPatcher/APIPatcher.csproj"], + "src": "../" + } + ], + "dest": "apipatcher", + "filter": "filter.yml" } ], "build": { @@ -18,7 +37,7 @@ "files": ["README.md"] }, { - "files": ["LICENSE"], + "files": ["LICENSE.md"], "src": "../" }, { @@ -29,6 +48,12 @@ { "files": ["api/**.yml", "api/index.md"] }, + { + "files": ["community/**.yml", "community/index.md"] + }, + { + "files": ["apipatcher/**.yml", "apipatcher/index.md"] + }, { "files": ["wiki/toc.yml", "wiki/**.md"] }, diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index c7935515..02fdf744 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -1,6 +1,11 @@ @font-face { font-family: 'DPComic'; - src: url('fonts/dpcomic.ttf') format('ttf'); + src: url('fonts/dpcomic.ttf') format('truetype'); font-weight: normal; font-style: normal; } + +:root { + --bs-font-sans-serif: 'DPComic', system-ui, -apple-system, sans-serif; + --bs-body-font-family: var(--bs-font-sans-serif); +} diff --git a/docs/toc.yml b/docs/toc.yml index baaba530..b686f693 100644 --- a/docs/toc.yml +++ b/docs/toc.yml @@ -5,4 +5,10 @@ homepage: wiki/index.md - name: API Documentation href: api/ - homepage: api/index.md \ No newline at end of file + homepage: api/index.md +- name: Community Patch Documentation + href: community/ + homepage: community/index.md +- name: APIPatcher Documentation + href: apipatcher/ + homepage: apipatcher/index.md \ No newline at end of file From 4a9176929a3bccdb662d817b73cd3cc3af3086c3 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 18:01:36 -0500 Subject: [PATCH 04/40] remove arbitrary exclusions for CSProj --- docs/filter.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/docs/filter.yml b/docs/filter.yml index ec615f88..288010f9 100644 --- a/docs/filter.yml +++ b/docs/filter.yml @@ -4,12 +4,6 @@ apiRules: uid: System.ComponentModel.EditorBrowsableAttribute ctorArguments: - System.ComponentModel.EditorBrowsableState.Never - - exclude: - uidRegex: ^APIPatcher - - exclude: - uidRegex: ^APIPlugin - - exclude: - uidRegex: ^InscryptionCommunityPatch attributeRules: - exclude: uidRegex: ^System\.ComponentModel\.Design$ From f4511a0ef3c01397fcff9a836264729428151032 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 18:05:41 -0500 Subject: [PATCH 05/40] Replace code block font to match --- docs/template/api_wiki/public/main.css | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 02fdf744..f73d5ca0 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -8,4 +8,5 @@ :root { --bs-font-sans-serif: 'DPComic', system-ui, -apple-system, sans-serif; --bs-body-font-family: var(--bs-font-sans-serif); + --bs-font-monospace: 'DPComic', system-ui, -apple-system, sans-serif; } From 672aa9da12098ab8b87fcc62bada9496d238ea8a Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 18:06:17 -0500 Subject: [PATCH 06/40] Update toc.yml --- docs/toc.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/toc.yml b/docs/toc.yml index b686f693..851dec51 100644 --- a/docs/toc.yml +++ b/docs/toc.yml @@ -1,9 +1,9 @@ - name: Home href: index.md -- name: Wiki +- name: Modding Wiki href: wiki/ homepage: wiki/index.md -- name: API Documentation +- name: Inscryption API Documentation href: api/ homepage: api/index.md - name: Community Patch Documentation From 6136b79e0196bc1c501c4f161d27e146e9f2e48a Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 18:32:54 -0500 Subject: [PATCH 07/40] Update main.css --- docs/template/api_wiki/public/main.css | 39 +++++++++++++++++++++----- 1 file changed, 32 insertions(+), 7 deletions(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index f73d5ca0..d4cabb17 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -1,12 +1,37 @@ @font-face { - font-family: 'DPComic'; - src: url('fonts/dpcomic.ttf') format('truetype'); - font-weight: normal; - font-style: normal; + font-family: 'DPComic'; + src: url('fonts/dpcomic.ttf') format('truetype'); + font-weight: normal; + font-style: normal; } :root { - --bs-font-sans-serif: 'DPComic', system-ui, -apple-system, sans-serif; - --bs-body-font-family: var(--bs-font-sans-serif); - --bs-font-monospace: 'DPComic', system-ui, -apple-system, sans-serif; + --bs-font-sans-serif: 'DPComic', system-ui, -apple-system, sans-serif; + --bs-body-font-family: var(--bs-font-sans-serif); + --bs-font-monospace: 'DPComic', system-ui, -apple-system, sans-serif; } + +.navbar { + --bs-navbar-brand-margin-end: 2.5rem; + --bs-navbar-brand-font-size: 1.5rem; +} + +.navbar-brand logo { + padding-right: 1.5rem; +} + +.container, .container-fluid, .container-xxl { + --bs-gutter-x: 5rem; +} + +:root, [data-bs-theme="light"] { + --bs-body-line-height: null; +} + +body[data-yaml-mime="ManagedReference"] article h2.section, body[data-yaml-mime="ApiPage"] article h2.section { + margin-top: 1rem; +} + +b, strong { + font-weight: normal; +} \ No newline at end of file From 2ef9bdf0c63070260ab9faa4fa9c99254fdcd6f9 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 18:36:16 -0500 Subject: [PATCH 08/40] Update main.css --- docs/template/api_wiki/public/main.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index d4cabb17..60ba1769 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -16,7 +16,7 @@ --bs-navbar-brand-font-size: 1.5rem; } -.navbar-brand logo { +.navbar-brand .logo { padding-right: 1.5rem; } From 0e2689f518e8f697dd15d829bbea26eb3e379ad8 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 18:40:17 -0500 Subject: [PATCH 09/40] Update main.css --- docs/template/api_wiki/public/main.css | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 60ba1769..51d93df3 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -16,7 +16,7 @@ --bs-navbar-brand-font-size: 1.5rem; } -.navbar-brand .logo { +#logo { padding-right: 1.5rem; } @@ -34,4 +34,8 @@ body[data-yaml-mime="ManagedReference"] article h2.section, body[data-yaml-mime= b, strong { font-weight: normal; +} + +.toc ul { + font-size: 20px !important; } \ No newline at end of file From 0811ff6a127f6f532e59bcb038b83fc643ab6f2e Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 18:49:58 -0500 Subject: [PATCH 10/40] Update main.css --- docs/template/api_wiki/public/main.css | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 51d93df3..85669209 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -38,4 +38,12 @@ b, strong { .toc ul { font-size: 20px !important; +} + +code { + font-size: 18px !important; +} + +.content { + font-size: 20px !important; } \ No newline at end of file From ef3fe92a64b93551a24aa62725d3fbbace11e73a Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 19:10:28 -0500 Subject: [PATCH 11/40] Update main.css --- docs/template/api_wiki/public/main.css | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 85669209..64dd4d97 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -46,4 +46,14 @@ code { .content { font-size: 20px !important; +} + +body > header, body[data-layout="landing"] > header { + height: 90px; +} + +body > footer, body[data-layout="landing"] > footer { + height: 90px; + display: flex; + align-items: stretch; } \ No newline at end of file From 0dfd9a0f2c7a38a5ff3d7e27c9fbc14023e42666 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 19:14:47 -0500 Subject: [PATCH 12/40] Update main.css --- docs/template/api_wiki/public/main.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 64dd4d97..3e60af8e 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -56,4 +56,8 @@ body > footer, body[data-layout="landing"] > footer { height: 90px; display: flex; align-items: stretch; +} + +.affix { + font-size: 20px; } \ No newline at end of file From 031cb92d7a5dac2171a649fc3a76a13a90b95858 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 19:31:42 -0500 Subject: [PATCH 13/40] Remove unneeded Partials folder carried over from DarkFX Copy --- .../api_wiki/partials/affix.tmpl.partial | 40 ------------------- .../api_wiki/partials/footer.tmpl.partial | 29 -------------- .../api_wiki/partials/head.tmpl.partial | 20 ---------- 3 files changed, 89 deletions(-) delete mode 100644 docs/template/api_wiki/partials/affix.tmpl.partial delete mode 100644 docs/template/api_wiki/partials/footer.tmpl.partial delete mode 100644 docs/template/api_wiki/partials/head.tmpl.partial diff --git a/docs/template/api_wiki/partials/affix.tmpl.partial b/docs/template/api_wiki/partials/affix.tmpl.partial deleted file mode 100644 index 11caeb3d..00000000 --- a/docs/template/api_wiki/partials/affix.tmpl.partial +++ /dev/null @@ -1,40 +0,0 @@ -{{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} - - diff --git a/docs/template/api_wiki/partials/footer.tmpl.partial b/docs/template/api_wiki/partials/footer.tmpl.partial deleted file mode 100644 index a9da7c3b..00000000 --- a/docs/template/api_wiki/partials/footer.tmpl.partial +++ /dev/null @@ -1,29 +0,0 @@ -{{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} - -
-
- - -
\ No newline at end of file diff --git a/docs/template/api_wiki/partials/head.tmpl.partial b/docs/template/api_wiki/partials/head.tmpl.partial deleted file mode 100644 index 83fc5f91..00000000 --- a/docs/template/api_wiki/partials/head.tmpl.partial +++ /dev/null @@ -1,20 +0,0 @@ -{{!Copyright (c) Oscar Vasquez. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} - - - - - {{#title}}{{title}}{{/title}}{{^title}}{{>partials/title}}{{/title}} {{#_appTitle}}| {{_appTitle}} {{/_appTitle}} - - - - {{#_description}}{{/_description}} - - - - - - - {{#_noindex}}{{/_noindex}} - {{#_enableSearch}}{{/_enableSearch}} - {{#_enableNewTab}}{{/_enableNewTab}} - \ No newline at end of file From 108e122cf35d5bc3e7c6da8e7aafe22b3f0ffb5f Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 19:55:10 -0500 Subject: [PATCH 14/40] Typo fix and Prettify class.header.tmpl.partial --- .../partials/class.header.tmpl.partial | 93 +++++++++++++++---- 1 file changed, 76 insertions(+), 17 deletions(-) diff --git a/docs/template/no_inherited_members/partials/class.header.tmpl.partial b/docs/template/no_inherited_members/partials/class.header.tmpl.partial index 3ca2c8b3..a90e65e4 100644 --- a/docs/template/no_inherited_members/partials/class.header.tmpl.partial +++ b/docs/template/no_inherited_members/partials/class.header.tmpl.partial @@ -1,38 +1,70 @@ {{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} -

{{>partials/title}}

+

+ {{>partials/title}} +

+
{{{summary}}}
{{{conceptual}}}
+ {{#inClass}}
{{__global.inheritance}}
+ {{#inheritance}} -
{{{specName.0.value}}}
+
+ {{{specName.0.value}}} +
{{/inheritance}} -
{{name.0.value}}
+ +
+ {{name.0.value}} +
+ {{#derivedClasses}} -
{{{specName.0.value}}}
+
+ {{{specName.0.value}}} +
{{/derivedClasses}}
{{/inClass}} + {{#implements.0}} -
+
{{__global.implements}}
{{/implements.0}} + {{#implements}} -
{{{specName.0.value}}}
+
+ {{{specName.0.value}}} +
{{/implements}} + {{#implements.0}}
{{/implements.0}} -
{{__global.namespace}}: {{{namespace.specName.0.value}}}
-
{{__global.assembly}}: {{assemblies.0}}.dll
-
{{__global.syntax}}
+ +
+ {{__global.namespace}}: {{{namespace.specName.0.value}}} +
+ +
+ {{__global.assembly}}: {{assemblies.0}}.dll +
+ +
+ {{__global.syntax}} +
+
{{syntax.content.0.value}}
+ {{#syntax.parameters.0}} -
{{__global.parameters}}
+
+ {{__global.parameters}} +
+ @@ -41,21 +73,30 @@ + {{/syntax.parameters.0}} + {{#syntax.parameters}} - + {{/syntax.parameters}} + {{#syntax.parameters.0}}
{{__global.description}}
{{{type.specName.0.value}}}{{{id}}} + {{{id}}} + {{{description}}}
{{/syntax.parameters.0}} + {{#syntax.return}} -
{{__global.returns}}
+
+ {{__global.returns}} +
+ @@ -63,6 +104,7 @@ + @@ -71,8 +113,12 @@
{{__global.description}}
{{{type.specName.0.value}}}
{{/syntax.return}} + {{#syntax.typeParameters.0}} -
{{__global.typeParameters}}
+
+ {{__global.typeParameters}} +
+ @@ -80,25 +126,38 @@ + {{/syntax.typeParameters.0}} + {{#syntax.typeParameters}} - + {{/syntax.typeParameters}} + {{#syntax.typeParameters.0}}
{{__global.description}}
{{{id}}} + {{{id}}} + {{{description}}}
{{/syntax.typeParameters.0}} + {{#remarks}} -
{{__global.remarks}}
+
+ {{__global.remarks}} +
+
{{{remarks}}}
{{/remarks}} + {{#example.0}} -
{{__global.examples}}
+
+ {{__global.examples}} +
{{/example.0}} + {{#example}} {{{.}}} -{{/example}} +{{/example}} \ No newline at end of file From be2ad2af9169d6b37ea6d7f7e5439d549a244e40 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 20:09:38 -0500 Subject: [PATCH 15/40] Fix up inheritence related look --- docs/template/api_wiki/public/main.css | 51 +++++++++++++++++++ .../partials/class.header.tmpl.partial | 30 ++++++----- 2 files changed, 67 insertions(+), 14 deletions(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 3e60af8e..9d4f5018 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -60,4 +60,55 @@ body > footer, body[data-layout="landing"] > footer { .affix { font-size: 20px; +} + +.inheritance { + margin-bottom: 1rem; +} + +.inheritance h5 { + margin-bottom: 0.35rem; +} + +.inheritance-tree { + border-top: 1px solid currentColor; + padding-top: 0.35rem; +} + +.inheritance-level { + position: relative; + min-height: 1.25rem; + line-height: 1.25rem; + padding-left: 1.25rem; +} + +.inheritance-level::before { + content: "↳"; + position: absolute; + left: 0; + opacity: 0.75; +} + +.inheritance-level.level0 { + padding-left: 1.25rem; +} + +.inheritance-level.level1 { + padding-left: 2.5rem; +} + +.inheritance-level.level2 { + padding-left: 3.75rem; +} + +.inheritance-level.level3 { + padding-left: 5rem; +} + +.inheritance-level.level4 { + padding-left: 6.25rem; +} + +.inheritance-level.level5 { + padding-left: 7.5rem; } \ No newline at end of file diff --git a/docs/template/no_inherited_members/partials/class.header.tmpl.partial b/docs/template/no_inherited_members/partials/class.header.tmpl.partial index a90e65e4..e07621f6 100644 --- a/docs/template/no_inherited_members/partials/class.header.tmpl.partial +++ b/docs/template/no_inherited_members/partials/class.header.tmpl.partial @@ -11,21 +11,23 @@
{{__global.inheritance}}
- {{#inheritance}} -
- {{{specName.0.value}}} -
- {{/inheritance}} - -
- {{name.0.value}} -
- - {{#derivedClasses}} -
- {{{specName.0.value}}} +
+ {{#inheritance}} +
+ {{{specName.0.value}}} +
+ {{/inheritance}} + +
+ {{name.0.value}} +
+ + {{#derivedClasses}} +
+ {{{specName.0.value}}} +
+ {{/derivedClasses}}
- {{/derivedClasses}}
{{/inClass}} From 6639d2dc0f57bb277acf722b64cfe61ebd7a0129 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 20:14:08 -0500 Subject: [PATCH 16/40] Update main.css --- docs/template/api_wiki/public/main.css | 39 ++++++-------------------- 1 file changed, 9 insertions(+), 30 deletions(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 9d4f5018..747dcc96 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -76,39 +76,18 @@ body > footer, body[data-layout="landing"] > footer { } .inheritance-level { - position: relative; - min-height: 1.25rem; - line-height: 1.25rem; - padding-left: 1.25rem; + line-height: 1.4; + padding-left: 0; } .inheritance-level::before { - content: "↳"; - position: absolute; - left: 0; + content: "↳ "; opacity: 0.75; } -.inheritance-level.level0 { - padding-left: 1.25rem; -} - -.inheritance-level.level1 { - padding-left: 2.5rem; -} - -.inheritance-level.level2 { - padding-left: 3.75rem; -} - -.inheritance-level.level3 { - padding-left: 5rem; -} - -.inheritance-level.level4 { - padding-left: 6.25rem; -} - -.inheritance-level.level5 { - padding-left: 7.5rem; -} \ No newline at end of file +.inheritance-level.level0 { padding-left: 0; } +.inheritance-level.level1 { padding-left: 1.25rem; } +.inheritance-level.level2 { padding-left: 2.5rem; } +.inheritance-level.level3 { padding-left: 3.75rem; } +.inheritance-level.level4 { padding-left: 5rem; } +.inheritance-level.level5 { padding-left: 6.25rem; } \ No newline at end of file From c23b6200e2230161832e67cf517e08b38cbc0d7f Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 20:19:29 -0500 Subject: [PATCH 17/40] Update main.css --- docs/template/api_wiki/public/main.css | 42 +++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 747dcc96..58842c30 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -90,4 +90,44 @@ body > footer, body[data-layout="landing"] > footer { .inheritance-level.level2 { padding-left: 2.5rem; } .inheritance-level.level3 { padding-left: 3.75rem; } .inheritance-level.level4 { padding-left: 5rem; } -.inheritance-level.level5 { padding-left: 6.25rem; } \ No newline at end of file +.inheritance-level.level5 { padding-left: 6.25rem; } + +/* API Documentation Tables */ +table.table { + width: 100%; + margin-bottom: 1rem; + border-collapse: collapse; + border: 1px solid var(--bs-border-color, #777); +} + +/* Table Headers */ +table.table thead th { + padding: 0.65rem 0.75rem; + text-align: left; + font-weight: 600; + border: 1px solid var(--bs-border-color, #777); + background-color: rgba(127, 127, 127, 0.12); +} + +/* Table Cells */ +table.table tbody td { + padding: 0.55rem 0.75rem; + border: 1px solid var(--bs-border-color, #777); + vertical-align: top; +} + +/* Alternating Rows */ +table.table-striped tbody tr:nth-child(even) { + background-color: rgba(127, 127, 127, 0.06); +} + +/* Parameter Names */ +table.table .parametername { + font-family: monospace; + font-weight: 600; +} + +/* Table Hover */ +table.table tbody tr:hover { + background-color: rgba(127, 127, 127, 0.12); +} \ No newline at end of file From df2af838dc09be4ed9fb31fc8ba3b53319255819 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 20:27:00 -0500 Subject: [PATCH 18/40] Update main.css --- docs/template/api_wiki/public/main.css | 55 +++++++++++++++++++++++--- 1 file changed, 49 insertions(+), 6 deletions(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 58842c30..c517b8a4 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -92,7 +92,6 @@ body > footer, body[data-layout="landing"] > footer { .inheritance-level.level4 { padding-left: 5rem; } .inheritance-level.level5 { padding-left: 6.25rem; } -/* API Documentation Tables */ table.table { width: 100%; margin-bottom: 1rem; @@ -100,7 +99,6 @@ table.table { border: 1px solid var(--bs-border-color, #777); } -/* Table Headers */ table.table thead th { padding: 0.65rem 0.75rem; text-align: left; @@ -109,25 +107,70 @@ table.table thead th { background-color: rgba(127, 127, 127, 0.12); } -/* Table Cells */ table.table tbody td { padding: 0.55rem 0.75rem; border: 1px solid var(--bs-border-color, #777); vertical-align: top; } -/* Alternating Rows */ table.table-striped tbody tr:nth-child(even) { background-color: rgba(127, 127, 127, 0.06); } -/* Parameter Names */ table.table .parametername { font-family: monospace; font-weight: 600; } -/* Table Hover */ table.table tbody tr:hover { background-color: rgba(127, 127, 127, 0.12); +} + +dl.parameters { + display: grid; + grid-template-columns: minmax(12rem, 35%) minmax(0, 1fr); + margin: 0 0 1rem; + border: 1px solid var(--bs-border-color, #777); + border-radius: 4px; + overflow: hidden; +} + +dl.parameters dt { + margin: 0; + padding: 0.75rem; + font-weight: 600; + background-color: rgba(127, 127, 127, 0.12); + border-bottom: 1px solid var(--bs-border-color, #777); + overflow-wrap: anywhere; +} + +dl.parameters dd { + margin: 0; + padding: 0.75rem; + min-width: 0; + border-bottom: 1px solid var(--bs-border-color, #777); +} + +dl.parameters dd p { + margin-bottom: 0; +} + +dl.parameters dt code { + font-weight: 600; +} + +dl.parameters dt a.xref, +dl.parameters dt span.xref { + overflow-wrap: anywhere; +} + +dl.parameters dt a, +dl.parameters dt span, +dl.parameters dt code { + white-space: normal; +} + +dl.parameters dt:nth-last-of-type(1), +dl.parameters dd:last-of-type { + border-bottom: none; } \ No newline at end of file From 32044767c7a321cce69f6d84446d188f02728c32 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 20:37:12 -0500 Subject: [PATCH 19/40] Update main.css --- docs/template/api_wiki/public/main.css | 61 ++++---------------------- 1 file changed, 9 insertions(+), 52 deletions(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index c517b8a4..0b105000 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -92,43 +92,9 @@ body > footer, body[data-layout="landing"] > footer { .inheritance-level.level4 { padding-left: 5rem; } .inheritance-level.level5 { padding-left: 6.25rem; } -table.table { - width: 100%; - margin-bottom: 1rem; - border-collapse: collapse; - border: 1px solid var(--bs-border-color, #777); -} - -table.table thead th { - padding: 0.65rem 0.75rem; - text-align: left; - font-weight: 600; - border: 1px solid var(--bs-border-color, #777); - background-color: rgba(127, 127, 127, 0.12); -} - -table.table tbody td { - padding: 0.55rem 0.75rem; - border: 1px solid var(--bs-border-color, #777); - vertical-align: top; -} - -table.table-striped tbody tr:nth-child(even) { - background-color: rgba(127, 127, 127, 0.06); -} - -table.table .parametername { - font-family: monospace; - font-weight: 600; -} - -table.table tbody tr:hover { - background-color: rgba(127, 127, 127, 0.12); -} - dl.parameters { - display: grid; - grid-template-columns: minmax(12rem, 35%) minmax(0, 1fr); + display: flex; + flex-wrap: wrap; margin: 0 0 1rem; border: 1px solid var(--bs-border-color, #777); border-radius: 4px; @@ -136,27 +102,23 @@ dl.parameters { } dl.parameters dt { + flex: 0 0 35%; + box-sizing: border-box; margin: 0; padding: 0.75rem; font-weight: 600; background-color: rgba(127, 127, 127, 0.12); - border-bottom: 1px solid var(--bs-border-color, #777); + border: 2px solid var(--bs-border-color, #777); overflow-wrap: anywhere; } dl.parameters dd { + flex: 1 1 65%; + box-sizing: border-box; + min-width: 0; margin: 0; padding: 0.75rem; - min-width: 0; - border-bottom: 1px solid var(--bs-border-color, #777); -} - -dl.parameters dd p { - margin-bottom: 0; -} - -dl.parameters dt code { - font-weight: 600; + border: 2px solid var(--bs-border-color, #777); } dl.parameters dt a.xref, @@ -168,9 +130,4 @@ dl.parameters dt a, dl.parameters dt span, dl.parameters dt code { white-space: normal; -} - -dl.parameters dt:nth-last-of-type(1), -dl.parameters dd:last-of-type { - border-bottom: none; } \ No newline at end of file From 2e8709bad5bec503e26c2e9f0b959b2c115114ef Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 20:50:06 -0500 Subject: [PATCH 20/40] Update Table Implementation to DL --- docs/template/api_wiki/public/main.css | 71 +++++++---- .../partials/class.header.tmpl.partial | 112 ++++++++---------- 2 files changed, 101 insertions(+), 82 deletions(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 0b105000..a30ac2d5 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -94,40 +94,69 @@ body > footer, body[data-layout="landing"] > footer { dl.parameters { display: flex; - flex-wrap: wrap; + flex-direction: column; margin: 0 0 1rem; border: 1px solid var(--bs-border-color, #777); border-radius: 4px; overflow: hidden; } -dl.parameters dt { - flex: 0 0 35%; - box-sizing: border-box; - margin: 0; - padding: 0.75rem; - font-weight: 600; - background-color: rgba(127, 127, 127, 0.12); - border: 2px solid var(--bs-border-color, #777); - overflow-wrap: anywhere; +dl.parameters .dl-header, +dl.parameters .dl-row { + display: grid; + align-items: stretch; } -dl.parameters dd { - flex: 1 1 65%; - box-sizing: border-box; +dl.parameters.three-column .dl-header, +dl.parameters.three-column .dl-row { + grid-template-columns: minmax(10rem, 20%) minmax(12rem, 25%) minmax(0, 1fr); +} + +dl.parameters.two-column .dl-header, +dl.parameters.two-column .dl-row { + grid-template-columns: minmax(10rem, 30%) minmax(0, 1fr); +} + +dl.parameters .dl-header { + font-weight: bold; + border-bottom: 1px solid var(--bs-border-color, #777); + background: var(--bs-tertiary-bg, #eee); +} + +dl.parameters .dl-header > span, +dl.parameters .dl-row > dt, +dl.parameters .dl-row > dd { min-width: 0; margin: 0; - padding: 0.75rem; - border: 2px solid var(--bs-border-color, #777); + padding: 0.5rem 0.75rem; +} + +dl.parameters .dl-header > span:not(:last-child), +dl.parameters .dl-row > *:not(:last-child) { + border-right: 1px solid var(--bs-border-color, #777); } -dl.parameters dt a.xref, -dl.parameters dt span.xref { +dl.parameters .dl-row { + border-bottom: 1px solid var(--bs-border-color, #777); +} + +dl.parameters .dl-row:last-child { + border-bottom: 0; +} + +dl.parameters .dl-row:nth-child(even) { + background: var(--bs-secondary-bg, #f8f8f8); +} + +dl.parameters .dl-row > dd { overflow-wrap: anywhere; } -dl.parameters dt a, -dl.parameters dt span, -dl.parameters dt code { - white-space: normal; +dl.parameters .parameter-type { + overflow-wrap: anywhere; +} + +dl.parameters .dl-header > span { + display: flex; + align-items: center; } \ No newline at end of file diff --git a/docs/template/no_inherited_members/partials/class.header.tmpl.partial b/docs/template/no_inherited_members/partials/class.header.tmpl.partial index e07621f6..5d395449 100644 --- a/docs/template/no_inherited_members/partials/class.header.tmpl.partial +++ b/docs/template/no_inherited_members/partials/class.header.tmpl.partial @@ -67,31 +67,27 @@ {{__global.parameters}} - - - - - - - - - - -{{/syntax.parameters.0}} - -{{#syntax.parameters}} - - - - - -{{/syntax.parameters}} +
+
+ {{__global.name}} + {{__global.type}} + {{__global.description}} +
-{{#syntax.parameters.0}} -
-
{{__global.type}}{{__global.name}}{{__global.description}}
{{{type.specName.0.value}}} - {{{id}}} - {{{description}}}
+ {{#syntax.parameters}} +
+
+ {{{id}}} +
+
+ {{{type.specName.0.value}}} +
+
+ {{{description}}} +
+
+ {{/syntax.parameters}} + {{/syntax.parameters.0}} {{#syntax.return}} @@ -99,21 +95,21 @@ {{__global.returns}} - - - - - - - - - - - - - - -
{{__global.type}}{{__global.description}}
{{{type.specName.0.value}}}{{{description}}}
+
+
+ {{__global.type}} + {{__global.description}} +
+ +
+
+ {{{type.specName.0.value}}} +
+
+ {{{description}}} +
+
+
{{/syntax.return}} {{#syntax.typeParameters.0}} @@ -121,29 +117,23 @@ {{__global.typeParameters}} - - - - - - - - - -{{/syntax.typeParameters.0}} - -{{#syntax.typeParameters}} - - - - -{{/syntax.typeParameters}} +
+
+ {{__global.name}} + {{__global.description}} +
-{{#syntax.typeParameters.0}} -
-
{{__global.name}}{{__global.description}}
- {{{id}}} - {{{description}}}
+ {{#syntax.typeParameters}} +
+
+ {{{id}}} +
+
+ {{{description}}} +
+
+ {{/syntax.typeParameters}} + {{/syntax.typeParameters.0}} {{#remarks}} From fd399d233858146f01756f2deba98ed2539298b9 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 21:03:23 -0500 Subject: [PATCH 21/40] Undo Table Changes Gonna look back into this with a fresh state of mind tommarrow --- docs/template/api_wiki/public/main.css | 69 ----------- .../partials/class.header.tmpl.partial | 112 ++++++++++-------- 2 files changed, 61 insertions(+), 120 deletions(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index a30ac2d5..4b51f041 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -91,72 +91,3 @@ body > footer, body[data-layout="landing"] > footer { .inheritance-level.level3 { padding-left: 3.75rem; } .inheritance-level.level4 { padding-left: 5rem; } .inheritance-level.level5 { padding-left: 6.25rem; } - -dl.parameters { - display: flex; - flex-direction: column; - margin: 0 0 1rem; - border: 1px solid var(--bs-border-color, #777); - border-radius: 4px; - overflow: hidden; -} - -dl.parameters .dl-header, -dl.parameters .dl-row { - display: grid; - align-items: stretch; -} - -dl.parameters.three-column .dl-header, -dl.parameters.three-column .dl-row { - grid-template-columns: minmax(10rem, 20%) minmax(12rem, 25%) minmax(0, 1fr); -} - -dl.parameters.two-column .dl-header, -dl.parameters.two-column .dl-row { - grid-template-columns: minmax(10rem, 30%) minmax(0, 1fr); -} - -dl.parameters .dl-header { - font-weight: bold; - border-bottom: 1px solid var(--bs-border-color, #777); - background: var(--bs-tertiary-bg, #eee); -} - -dl.parameters .dl-header > span, -dl.parameters .dl-row > dt, -dl.parameters .dl-row > dd { - min-width: 0; - margin: 0; - padding: 0.5rem 0.75rem; -} - -dl.parameters .dl-header > span:not(:last-child), -dl.parameters .dl-row > *:not(:last-child) { - border-right: 1px solid var(--bs-border-color, #777); -} - -dl.parameters .dl-row { - border-bottom: 1px solid var(--bs-border-color, #777); -} - -dl.parameters .dl-row:last-child { - border-bottom: 0; -} - -dl.parameters .dl-row:nth-child(even) { - background: var(--bs-secondary-bg, #f8f8f8); -} - -dl.parameters .dl-row > dd { - overflow-wrap: anywhere; -} - -dl.parameters .parameter-type { - overflow-wrap: anywhere; -} - -dl.parameters .dl-header > span { - display: flex; - align-items: center; -} \ No newline at end of file diff --git a/docs/template/no_inherited_members/partials/class.header.tmpl.partial b/docs/template/no_inherited_members/partials/class.header.tmpl.partial index 5d395449..e07621f6 100644 --- a/docs/template/no_inherited_members/partials/class.header.tmpl.partial +++ b/docs/template/no_inherited_members/partials/class.header.tmpl.partial @@ -67,27 +67,31 @@ {{__global.parameters}} -
-
- {{__global.name}} - {{__global.type}} - {{__global.description}} -
+ + + + + + + + + + +{{/syntax.parameters.0}} - {{#syntax.parameters}} -
-
- {{{id}}} -
-
- {{{type.specName.0.value}}} -
-
- {{{description}}} -
-
- {{/syntax.parameters}} - +{{#syntax.parameters}} + + + + + +{{/syntax.parameters}} + +{{#syntax.parameters.0}} + +
{{__global.type}}{{__global.name}}{{__global.description}}
{{{type.specName.0.value}}} + {{{id}}} + {{{description}}}
{{/syntax.parameters.0}} {{#syntax.return}} @@ -95,21 +99,21 @@ {{__global.returns}} -
-
- {{__global.type}} - {{__global.description}} -
- -
-
- {{{type.specName.0.value}}} -
-
- {{{description}}} -
-
-
+ + + + + + + + + + + + + + +
{{__global.type}}{{__global.description}}
{{{type.specName.0.value}}}{{{description}}}
{{/syntax.return}} {{#syntax.typeParameters.0}} @@ -117,23 +121,29 @@ {{__global.typeParameters}} -
-
- {{__global.name}} - {{__global.description}} -
+ + + + + + + - {{#syntax.typeParameters}} -
-
- {{{id}}} -
-
- {{{description}}} -
-
- {{/syntax.typeParameters}} - + +{{/syntax.typeParameters.0}} + +{{#syntax.typeParameters}} + + + + +{{/syntax.typeParameters}} + +{{#syntax.typeParameters.0}} + +
{{__global.name}}{{__global.description}}
+ {{{id}}} + {{{description}}}
{{/syntax.typeParameters.0}} {{#remarks}} From e4db6a5411a52e8814f3edcfa97789d1d3504fae Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Fri, 13 Nov 2026 21:09:41 -0500 Subject: [PATCH 22/40] Pop off API Patcher from Docs --- docs/apipatcher/.gitignore | 5 ----- docs/apipatcher/index.md | 4 ---- docs/docfx.json | 13 ------------- docs/toc.yml | 7 ++----- 4 files changed, 2 insertions(+), 27 deletions(-) delete mode 100644 docs/apipatcher/.gitignore delete mode 100644 docs/apipatcher/index.md diff --git a/docs/apipatcher/.gitignore b/docs/apipatcher/.gitignore deleted file mode 100644 index e8079a3b..00000000 --- a/docs/apipatcher/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -############### -# temp file # -############### -*.yml -.manifest diff --git a/docs/apipatcher/index.md b/docs/apipatcher/index.md deleted file mode 100644 index 4356acdd..00000000 --- a/docs/apipatcher/index.md +++ /dev/null @@ -1,4 +0,0 @@ -# APIPatcher Documentation -Hello, and welcome to the documentation section for the APIPatcher! - -This section documents the various classes and members of the APIPatcher, providing information on what they do. \ No newline at end of file diff --git a/docs/docfx.json b/docs/docfx.json index 68eb5108..bdfad888 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -19,16 +19,6 @@ ], "dest": "community", "filter": "filter.yml" - }, - { - "src": [ - { - "files": ["APIPatcher/APIPatcher.csproj"], - "src": "../" - } - ], - "dest": "apipatcher", - "filter": "filter.yml" } ], "build": { @@ -51,9 +41,6 @@ { "files": ["community/**.yml", "community/index.md"] }, - { - "files": ["apipatcher/**.yml", "apipatcher/index.md"] - }, { "files": ["wiki/toc.yml", "wiki/**.md"] }, diff --git a/docs/toc.yml b/docs/toc.yml index 851dec51..4d8c91dc 100644 --- a/docs/toc.yml +++ b/docs/toc.yml @@ -6,9 +6,6 @@ - name: Inscryption API Documentation href: api/ homepage: api/index.md -- name: Community Patch Documentation +- name: Inscryption Community Patch Documentation href: community/ - homepage: community/index.md -- name: APIPatcher Documentation - href: apipatcher/ - homepage: apipatcher/index.md \ No newline at end of file + homepage: community/index.md \ No newline at end of file From f90d966142aa973985eba4f6d8a7f5451ec66b8e Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 07:29:42 -0500 Subject: [PATCH 23/40] Move the class header partial under api_wiki and delete inheritence template --- docs/docfx.json | 11 ++++++++++- .../partials/class.header.tmpl.partial | 6 +++--- docs/template/api_wiki/public/main.css | 13 +++++++++++++ 3 files changed, 26 insertions(+), 4 deletions(-) rename docs/template/{no_inherited_members => api_wiki}/partials/class.header.tmpl.partial (93%) diff --git a/docs/docfx.json b/docs/docfx.json index bdfad888..95095ff9 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -32,6 +32,16 @@ }, { "files": ["images/**", "logo.svg", "favicon.ico"] + }, + { + "files": ["**"], + "src": "../InscryptionAPI/Assets", + "dest": "resources/api/assets" + }, + { + "files": ["**"], + "src": "../InscryptionCommunityPatch/Assets", + "dest": "resources/community/assets" } ], "content": [ @@ -78,7 +88,6 @@ "default", "modern", "template/darkfx", - "template/no_inherited_members", "template/api_wiki" ] } diff --git a/docs/template/no_inherited_members/partials/class.header.tmpl.partial b/docs/template/api_wiki/partials/class.header.tmpl.partial similarity index 93% rename from docs/template/no_inherited_members/partials/class.header.tmpl.partial rename to docs/template/api_wiki/partials/class.header.tmpl.partial index e07621f6..af3e4497 100644 --- a/docs/template/no_inherited_members/partials/class.header.tmpl.partial +++ b/docs/template/api_wiki/partials/class.header.tmpl.partial @@ -67,7 +67,7 @@ {{__global.parameters}} - +
@@ -99,7 +99,7 @@ {{__global.returns}} -
{{__global.type}}
+
@@ -121,7 +121,7 @@ {{__global.typeParameters}} -
{{__global.type}}
+
diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 4b51f041..0dccbe07 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -91,3 +91,16 @@ body > footer, body[data-layout="landing"] > footer { .inheritance-level.level3 { padding-left: 3.75rem; } .inheritance-level.level4 { padding-left: 5rem; } .inheritance-level.level5 { padding-left: 6.25rem; } + +.api-parameters, .api-returns { + width: 100%; + border-collapse: collapse; + margin-bottom: 1rem; +} + +.api-parameters th, .api-returns th, .api-type-parameters th +.api-parameters td, .api-returns td, .api-type-parameters td { + padding: 0.5rem 0.75rem; + border: 1px solid var(--bs-border-color, #444); + text-align: left; +} From 4773344cd9e4433b666592680b09192f563ae774 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 07:33:24 -0500 Subject: [PATCH 24/40] Experiment with disabling darkfx --- docs/docfx.json | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/docfx.json b/docs/docfx.json index 95095ff9..f1bccf2f 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -87,7 +87,6 @@ "template": [ "default", "modern", - "template/darkfx", "template/api_wiki" ] } From 00e350aa33fa5c563c3834ba458e9ecf70b59a8e Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 07:37:11 -0500 Subject: [PATCH 25/40] part 2 --- .../darkfx/partials/affix.tmpl.partial | 40 -- .../darkfx/partials/footer.tmpl.partial | 29 -- .../darkfx/partials/head.tmpl.partial | 20 - docs/template/darkfx/styles/main.css | 470 ------------------ docs/template/darkfx/styles/toggle-theme.js | 35 -- 5 files changed, 594 deletions(-) delete mode 100644 docs/template/darkfx/partials/affix.tmpl.partial delete mode 100644 docs/template/darkfx/partials/footer.tmpl.partial delete mode 100644 docs/template/darkfx/partials/head.tmpl.partial delete mode 100644 docs/template/darkfx/styles/main.css delete mode 100644 docs/template/darkfx/styles/toggle-theme.js diff --git a/docs/template/darkfx/partials/affix.tmpl.partial b/docs/template/darkfx/partials/affix.tmpl.partial deleted file mode 100644 index 11caeb3d..00000000 --- a/docs/template/darkfx/partials/affix.tmpl.partial +++ /dev/null @@ -1,40 +0,0 @@ -{{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} - - diff --git a/docs/template/darkfx/partials/footer.tmpl.partial b/docs/template/darkfx/partials/footer.tmpl.partial deleted file mode 100644 index a9da7c3b..00000000 --- a/docs/template/darkfx/partials/footer.tmpl.partial +++ /dev/null @@ -1,29 +0,0 @@ -{{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} - -
-
- - -
\ No newline at end of file diff --git a/docs/template/darkfx/partials/head.tmpl.partial b/docs/template/darkfx/partials/head.tmpl.partial deleted file mode 100644 index 83fc5f91..00000000 --- a/docs/template/darkfx/partials/head.tmpl.partial +++ /dev/null @@ -1,20 +0,0 @@ -{{!Copyright (c) Oscar Vasquez. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} - - - - - {{#title}}{{title}}{{/title}}{{^title}}{{>partials/title}}{{/title}} {{#_appTitle}}| {{_appTitle}} {{/_appTitle}} - - - - {{#_description}}{{/_description}} - - - - - - - {{#_noindex}}{{/_noindex}} - {{#_enableSearch}}{{/_enableSearch}} - {{#_enableNewTab}}{{/_enableNewTab}} - \ No newline at end of file diff --git a/docs/template/darkfx/styles/main.css b/docs/template/darkfx/styles/main.css deleted file mode 100644 index 078adc77..00000000 --- a/docs/template/darkfx/styles/main.css +++ /dev/null @@ -1,470 +0,0 @@ -:root, body.dark-theme { - --color-foreground: #ccd5dc; - --color-navbar: #66666d; - --color-breadcrumb: #999; - --color-underline: #ddd; - --color-toc-hover: #fff; - --color-background: #2d2d30; - --color-background-subnav: #333337; - --color-background-dark: #1e1e1e; - --color-background-table-alt: #212123; - --color-background-quote: #69696e; -} - -body.light-theme { - --color-foreground: #171717; - --color-breadcrumb: #4a4a4a; - --color-toc-hover: #4c4c4c; - --color-background: #ffffff; - --color-background-subnav: #f5f5f5; - --color-background-dark: #ddd; - --color-background-table-alt: #f9f9f9; -} - -body { - color: var(--color-foreground); - line-height: 1.5; - font-size: 14px; - -ms-text-size-adjust: 100%; - -webkit-text-size-adjust: 100%; - word-wrap: break-word; - background-color: var(--color-background); -} - -.btn.focus, .btn:focus, .btn:hover { - color: var(--color-foreground); -} - -h1 { - font-weight: 600; - font-size: 32px; -} - -h2 { - font-weight: 600; - font-size: 24px; - line-height: 1.8; -} - -h3 { - font-weight: 600; - font-size: 20px; - line-height: 1.8; -} - -h5 { - font-size: 14px; - padding: 10px 0px; -} - -article h1, article h2, article h3, article h4 { - margin-top: 35px; - margin-bottom: 15px; -} - -article h4 { - padding-bottom: 8px; - border-bottom: 2px solid var(--color-underline); -} - -.navbar-brand>img { - color: var(--color-background); -} - -.navbar { - border: none; -} - -.subnav { - border-top: 1px solid var(--color-underline); - background-color: var(--color-background-subnav); -} - -.sidenav, .fixed_header, .toc { - background-color: var(--color-background); -} - -.navbar-inverse { - background-color: var(--color-background-dark); - z-index: 100; -} - -.navbar-inverse .navbar-nav>li>a, .navbar-inverse .navbar-text { - color: var(--color-navbar); - background-color: var(--color-background-dark); - border-bottom: 3px solid transparent; - padding-bottom: 12px; -} - -.navbar-inverse .navbar-nav>li>a:focus, .navbar-inverse .navbar-nav>li>a:hover { - color: var(--color-foreground); - background-color: var(--color-background-dark); - border-bottom: 3px solid var(--color-background-subnav); - transition: all ease 0.25s; -} - -.navbar-inverse .navbar-nav>.active>a, .navbar-inverse .navbar-nav>.active>a:focus, .navbar-inverse .navbar-nav>.active>a:hover { - color: var(--color-foreground); - background-color: var(--color-background-dark); - border-bottom: 3px solid var(--color-foreground); - transition: all ease 0.25s; -} - -.navbar-form .form-control { - border: none; - border-radius: 0; -} - -.light-theme .navbar-brand svg { - filter: brightness(20%); -} - -.toc .level1>li { - font-weight: 400; -} - -.toc .nav>li>a { - color: var(--color-foreground); -} - -.sidefilter { - background-color: var(--color-background); - border-left: none; - border-right: none; -} - -.sidefilter { - background-color: var(--color-background); - border-left: none; - border-right: none; -} - -.toc-filter { - padding: 10px; - margin: 0; - background-color: var(--color-background); -} - -.toc-filter>input { - border: none; - border-radius: unset; - background-color: var(--color-background-subnav); - padding: 5px 0 5px 20px; - font-size: 90% -} - -.toc-filter>.clear-icon { - position: absolute; - top: 17px; - right: 15px; -} - -.toc-filter>input:focus { - color: var(--color-foreground); - transition: all ease 0.25s; -} - -.toc-filter>.filter-icon { - display: none; -} - -.sidetoc>.toc { - background-color: var(--color-background); - overflow-x: hidden; -} - -.sidetoc { - background-color: var(--color-background); - border: none; -} - -.alert { - background-color: inherit; - border: none; - padding: 10px 0; - border-radius: 0; -} - -.alert>p { - margin-bottom: 0; - padding: 5px 10px; - border-bottom: 1px solid; - background-color: var(--color-background-dark); -} - -.alert>h5 { - padding: 10px 15px; - margin-top: 0; - margin-bottom: 0; - text-transform: uppercase; - font-weight: bold; - border-top: 2px solid; - background-color: var(--color-background-dark); - border-radius: none; -} - -.alert>ul { - margin-bottom: 0; - padding: 5px 40px; -} - -.alert-info { - color: #1976d2; -} - -.alert-warning { - color: #f57f17; -} - -.alert-danger { - color: #d32f2f; -} - -pre { - padding: 9.5px; - margin: 0 0 10px; - font-size: 13px; - word-break: break-all; - word-wrap: break-word; - background-color: var(--color-background-dark); - border-radius: 0; - border: none; -} - -code { - background: var(--color-background-dark) !important; - border-radius: 2px; -} - -.hljs { - color: var(--color-foreground); -} - -.toc .nav>li.active>.expand-stub::before, .toc .nav>li.in>.expand-stub::before, .toc .nav>li.in.active>.expand-stub::before, .toc .nav>li.filtered>.expand-stub::before { - content: "▾"; -} - -.toc .nav>li>.expand-stub::before, .toc .nav>li.active>.expand-stub::before { - content: "▸"; -} - -.affix ul ul>li>a:before { - content: "|"; -} - -.breadcrumb { - background-color: var(--color-background-subnav); -} - -.breadcrumb .label.label-primary { - background: #444; - border-radius: 0; - font-weight: normal; - font-size: 100%; -} - -#breadcrumb .breadcrumb>li a { - border-radius: 0; - font-weight: normal; - font-size: 85%; - display: inline; - padding: 0 .6em 0; - line-height: 1; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - color: var(--color-breadcrumb); -} - -#breadcrumb .breadcrumb>li a:hover { - color: var(--color-foreground); - transition: all ease 0.25s; -} - -.breadcrumb>li+li:before { - content: "⯈"; - font-size: 75%; - color: var(--color-background-dark); - padding: 0; -} - -.light-theme .breadcrumb>li+li:before { - color: var(--color-foreground) - } - -.toc .level1>li { - font-weight: 600; - font-size: 130%; - padding-left: 5px; -} - -.footer { - border-top: none; - background-color: var(--color-background-dark); - padding: 15px 0; - font-size: 90%; -} - -.toc .nav>li>a:hover, .toc .nav>li>a:focus { - color: var(--color-toc-hover); - transition: all ease 0.1s; -} - -.form-control { - background-color: var(--color-background-subnav); - border: none; - border-radius: 0; - -webkit-box-shadow: none; - box-shadow: none; -} - -.form-control:focus { - border-color: #66afe9; - outline: 0; - -webkit-box-shadow: none; - box-shadow: none; -} - -input#search-query:focus { - color: var(--color-foreground); -} - -.table-bordered, .table-bordered>tbody>tr>td, .table-bordered>tbody>tr>th, .table-bordered>tfoot>tr>td, .table-bordered>tfoot>tr>th, .table-bordered>thead>tr>td, .table-bordered>thead>tr>th { - border: 1px solid var(--color-background-dark); -} - -.table-striped>tbody>tr:nth-of-type(odd) { - background-color: var(--color-background-table-alt); -} - -blockquote { - padding: 10px 20px; - margin: 0 0 10px; - font-size: 110%; - border-left: 5px solid var(--color-background-quote); - color: var(--color-background-quote); -} - -.pagination>.disabled>a, .pagination>.disabled>a:focus, .pagination>.disabled>a:hover, .pagination>.disabled>span, .pagination>.disabled>span:focus, .pagination>.disabled>span:hover { - background-color: var(--color-background-subnav); - border-color: var(--color-background-subnav); -} - -.breadcrumb>li, .pagination { - display: inline; -} - -.tabGroup a[role="tab"] { - border-bottom: 2px solid var(--color-background-dark); -} - -.tabGroup a[role="tab"][aria-selected="true"] { - color: var(--color-foreground); -} - -.tabGroup section[role="tabpanel"] { - border: 1px solid var(--color-background-dark); -} - -.sideaffix > div.contribution > ul > li > a.contribution-link:hover { - background-color: var(--color-background); -} - -.switch { - position: relative; - display: inline-block; - width: 40px; - height: 20px; -} - -.switch input { - opacity: 0; - width: 0; - height: 0; -} - -.slider { - position: absolute; - cursor: pointer; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: #ccc; - -webkit-transition: .4s; - transition: .4s; -} - -.slider:before { - position: absolute; - content: ""; - height: 14px; - width: 14px; - left: 4px; - bottom: 3px; - background-color: white; - -webkit-transition: .4s; - transition: .4s; -} - -input:checked + .slider { - background-color: #337ab7; -} - -input:focus + .slider { - box-shadow: 0 0 1px #337ab7; -} - -input:checked + .slider:before { - -webkit-transform: translateX(19px); - -ms-transform: translateX(19px); - transform: translateX(19px); -} - -/* Rounded sliders */ -.slider.round { - border-radius: 20px; -} - -.slider.round:before { - border-radius: 50%; -} -.toggle-mode .icon { - display: inline-block; -} - -.toggle-mode .icon i { - font-style: normal; - font-size: 17px; - display: inline-block; - padding-right: 7px; - padding-left: 7px; - vertical-align: middle; -} - -@media (min-width: 1600px) { - .container { - width: 100%; - } - .sidefilter { - width: 18%; - } - .sidetoc { - width: 18%; - } - .article.grid-right { - margin-left: 19%; - } - .sideaffix { - width: 11.5%; - } - .affix ul>li.active>a { - white-space: initial; - } - .affix ul>li>a { - width: 99%; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - } -} \ No newline at end of file diff --git a/docs/template/darkfx/styles/toggle-theme.js b/docs/template/darkfx/styles/toggle-theme.js deleted file mode 100644 index f2ea5f5f..00000000 --- a/docs/template/darkfx/styles/toggle-theme.js +++ /dev/null @@ -1,35 +0,0 @@ -const sw = document.getElementById("switch-style"), sw_mobile = document.getElementById("switch-style-m"), b = document.body; -if (b) { - function toggleTheme(target, dark) { - target.classList.toggle("dark-theme", dark) - target.classList.toggle("light-theme", !dark) - } - - function switchEventListener() { - toggleTheme(b, this.checked); - if (window.localStorage) { - this.checked ? localStorage.setItem("theme", "dark-theme") : localStorage.setItem("theme", "light-theme") - } - } - - var isDarkTheme = !window.localStorage || !window.localStorage.getItem("theme") || window.localStorage && localStorage.getItem("theme") === "dark-theme"; - - if(sw && sw_mobile){ - sw.checked = isDarkTheme; - sw_mobile.checked = isDarkTheme; - - sw.addEventListener("change", switchEventListener); - sw_mobile.addEventListener("change", switchEventListener); - - // sync state between switches - sw.addEventListener("change", function() { - sw_mobile.checked = this.checked; - }); - - sw_mobile.addEventListener("change", function() { - sw.checked = this.checked; - }); - } - - toggleTheme(b, isDarkTheme); -} \ No newline at end of file From fdc8b3077f3b0f2af498282ac121eb0b8d3dbdbc Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 07:45:14 -0500 Subject: [PATCH 26/40] fix css --- docs/template/api_wiki/public/main.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 0dccbe07..9b4bfde8 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -98,7 +98,7 @@ body > footer, body[data-layout="landing"] > footer { margin-bottom: 1rem; } -.api-parameters th, .api-returns th, .api-type-parameters th +.api-parameters th, .api-returns th, .api-type-parameters th, .api-parameters td, .api-returns td, .api-type-parameters td { padding: 0.5rem 0.75rem; border: 1px solid var(--bs-border-color, #444); From 436b99c2fd3f2bf0d58999dc550ee49569954896 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 07:54:22 -0500 Subject: [PATCH 27/40] switch to min-height --- docs/template/api_wiki/public/main.css | 4 ++-- docs/template/api_wiki/public/main.js | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) create mode 100644 docs/template/api_wiki/public/main.js diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 9b4bfde8..e87bde0c 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -49,11 +49,11 @@ code { } body > header, body[data-layout="landing"] > header { - height: 90px; + min-height: 90px; } body > footer, body[data-layout="landing"] > footer { - height: 90px; + min-height: 90px; display: flex; align-items: stretch; } diff --git a/docs/template/api_wiki/public/main.js b/docs/template/api_wiki/public/main.js new file mode 100644 index 00000000..4044b534 --- /dev/null +++ b/docs/template/api_wiki/public/main.js @@ -0,0 +1,3 @@ +export default { + defaultTheme: 'dark' +} From 89d10eae3a3e2b53bf7b73cae50ed04516f8c2d1 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 08:13:43 -0500 Subject: [PATCH 28/40] Update Templates --- .../partials/class.header.tmpl.partial | 105 ++++++-- .../api_wiki/partials/class.tmpl.partial | 243 ++++++++++++++++++ docs/template/api_wiki/public/main.css | 19 +- 3 files changed, 324 insertions(+), 43 deletions(-) create mode 100644 docs/template/api_wiki/partials/class.tmpl.partial diff --git a/docs/template/api_wiki/partials/class.header.tmpl.partial b/docs/template/api_wiki/partials/class.header.tmpl.partial index af3e4497..dffd2e4d 100644 --- a/docs/template/api_wiki/partials/class.header.tmpl.partial +++ b/docs/template/api_wiki/partials/class.header.tmpl.partial @@ -1,34 +1,42 @@ -{{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} +{{!Licensed to the .NET Foundation under one or more agreements. The .NET Foundation licenses this file to you under the MIT license.}}

{{>partials/title}} + {{#sourceurl}}{{/sourceurl}}

-
{{{summary}}}
-
{{{conceptual}}}
+
+
{{__global.namespace}}
{{{namespace.specName.0.value}}}
+ {{#assemblies.0}}
{{__global.assembly}}
{{assemblies.0}}.dll
{{/assemblies.0}} +
+ +
{{{summary}}}
+
{{{conceptual}}}
{{#inClass}} +{{#inheritance.0}}
{{__global.inheritance}}
{{#inheritance}} -
+
{{{specName.0.value}}}
{{/inheritance}} - -
+ +
{{name.0.value}}
- + {{#derivedClasses}} -
+
{{{specName.0.value}}}
{{/derivedClasses}}
+{{/inheritance.0}} {{/inClass}} {{#implements.0}} @@ -46,14 +54,7 @@
{{/implements.0}} -
- {{__global.namespace}}: {{{namespace.specName.0.value}}} -
- -
- {{__global.assembly}}: {{assemblies.0}}.dll -
- +{{#syntax.content.0.value}}
{{__global.syntax}}
@@ -61,6 +62,7 @@
{{syntax.content.0.value}}
+{{/syntax.content.0.value}} {{#syntax.parameters.0}}
@@ -146,20 +148,67 @@
{{__global.name}}
{{/syntax.typeParameters.0}} -{{#remarks}} -
- {{__global.remarks}} -
- -
{{{remarks}}}
-{{/remarks}} +{{#inheritedMembers.0}} +
+
{{__global.inheritedMembers}}
+
+{{/inheritedMembers.0}} +{{#inheritedMembers}} +
+ {{#definition}} + + {{/definition}} + {{^definition}} + + {{/definition}} +
+{{/inheritedMembers}} +{{#inheritedMembers.0}} +
+
+{{/inheritedMembers.0}} + +{{#extensionMethods.0}} +
+
{{__global.extensionMethods}}
+
+{{/extensionMethods.0}} +{{#extensionMethods}} +
+ {{#definition}} + + {{/definition}} + {{^definition}} + + {{/definition}} +
+{{/extensionMethods}} +{{#extensionMethods.0}} +
+
+{{/extensionMethods.0}} + +{{#isEnum}} +{{#children}} +

{{>partials/classSubtitle}}

+
+{{#children}} +
{{syntax.content.0.value}}
+ {{#remarks}}
{{{summary}}}{{{remarks}}}
{{/remarks}} + {{^remarks}}
{{{summary}}}
{{/remarks}} +{{/children}} +
+{{/children}} +{{/isEnum}} {{#example.0}} -
- {{__global.examples}} -
+

{{__global.examples}}

{{/example.0}} - {{#example}} {{{.}}} -{{/example}} \ No newline at end of file +{{/example}} + +{{#remarks}} +

{{__global.remarks}}

+
{{{remarks}}}
+{{/remarks}} \ No newline at end of file diff --git a/docs/template/api_wiki/partials/class.tmpl.partial b/docs/template/api_wiki/partials/class.tmpl.partial new file mode 100644 index 00000000..c5d1dd3e --- /dev/null +++ b/docs/template/api_wiki/partials/class.tmpl.partial @@ -0,0 +1,243 @@ +{{!Licensed to the .NET Foundation under one or more agreements by the .NET Foundation. The .NET Foundation licenses this file to you under the MIT license.}} + +{{>partials/class.header}} + +{{#children}} + +{{^_splitReference}} +

{{>partials/classSubtitle}}

+{{/_splitReference}} + +{{#children}} + +{{#overload}} + +{{/overload}} + +

+ {{name.0.value}} + {{#sourceurl}}{{/sourceurl}} +

+ +
{{{summary}}}
+
{{{conceptual}}}
+ +{{#syntax}} +
+
{{syntax.content.0.value}}
+
+ +{{#syntax.parameters.0}} +

{{__global.parameters}}

+ + + + + + + + + + + +{{/syntax.parameters.0}} + +{{#syntax.parameters}} + + + + + +{{/syntax.parameters}} + +{{#syntax.parameters.0}} + +
{{__global.type}}{{__global.name}}{{__global.description}}
{{{type.specName.0.value}}} + {{{id}}} + {{{description}}}
+{{/syntax.parameters.0}} + +{{#syntax.return}} +

{{__global.returns}}

+ + + + + + + + + + + + + + + +
{{__global.type}}{{__global.description}}
{{{type.specName.0.value}}}{{{description}}}
+{{/syntax.return}} + +{{#syntax.typeParameters.0}} +

{{__global.typeParameters}}

+ + + + + + + + + + +{{/syntax.typeParameters.0}} + +{{#syntax.typeParameters}} + + + + +{{/syntax.typeParameters}} + +{{#syntax.typeParameters.0}} + +
{{__global.name}}{{__global.description}}
+ {{{id}}} + {{{description}}}
+{{/syntax.typeParameters.0}} + +{{#fieldValue}} +

{{__global.fieldValue}}

+ + + + + + + + + + + + + + + +
{{__global.type}}{{__global.description}}
{{{type.specName.0.value}}}{{{description}}}
+{{/fieldValue}} + +{{#propertyValue}} +

{{__global.propertyValue}}

+ + + + + + + + + + + + + + + +
{{__global.type}}{{__global.description}}
{{{type.specName.0.value}}}{{{description}}}
+{{/propertyValue}} + +{{#eventType}} +

{{__global.eventType}}

+ + + + + + + + + + + + + + + +
{{__global.type}}{{__global.description}}
{{{type.specName.0.value}}}{{{description}}}
+{{/eventType}} + +{{/syntax}} + +{{#example.0}} +

{{__global.examples}}

+{{/example.0}} +{{#example}} +{{{.}}} +{{/example}} + +{{#remarks}} +

{{__global.remarks}}

+
{{{remarks}}}
+{{/remarks}} + +{{#exceptions.0}} +

{{__global.exceptions}}

+ + + + + + + + + + +{{/exceptions.0}} + +{{#exceptions}} + + + + +{{/exceptions}} + +{{#exceptions.0}} + +
{{__global.type}}{{__global.description}}
{{{type.specName.0.value}}}{{{description}}}
+{{/exceptions.0}} + +{{#seealso.0}} +
+
{{__global.seealso}}
+
+{{/seealso.0}} +{{#seealso}} + {{#isCref}} +
{{{type.specName.0.value}}}
+ {{/isCref}} + {{^isCref}} +
{{{url}}}
+ {{/isCref}} +{{/seealso}} +{{#seealso.0}} +
+
+{{/seealso.0}} + +{{/children}} +{{/children}} + +{{#seealso.0}} +

{{__global.seealso}}

+
+{{/seealso.0}} +{{#seealso}} + {{#isCref}} +
{{{type.specName.0.value}}}
+ {{/isCref}} + {{^isCref}} +
{{{url}}}
+ {{/isCref}} +{{/seealso}} +{{#seealso.0}} +
+{{/seealso.0}} \ No newline at end of file diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index e87bde0c..f3fdaec6 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -24,10 +24,6 @@ --bs-gutter-x: 5rem; } -:root, [data-bs-theme="light"] { - --bs-body-line-height: null; -} - body[data-yaml-mime="ManagedReference"] article h2.section, body[data-yaml-mime="ApiPage"] article h2.section { margin-top: 1rem; } @@ -77,7 +73,7 @@ body > footer, body[data-layout="landing"] > footer { .inheritance-level { line-height: 1.4; - padding-left: 0; + padding-left: calc(var(--inheritance-level, 0) * 1.25rem); } .inheritance-level::before { @@ -85,21 +81,14 @@ body > footer, body[data-layout="landing"] > footer { opacity: 0.75; } -.inheritance-level.level0 { padding-left: 0; } -.inheritance-level.level1 { padding-left: 1.25rem; } -.inheritance-level.level2 { padding-left: 2.5rem; } -.inheritance-level.level3 { padding-left: 3.75rem; } -.inheritance-level.level4 { padding-left: 5rem; } -.inheritance-level.level5 { padding-left: 6.25rem; } - -.api-parameters, .api-returns { +.api-parameters, .api-returns, .api-type-parameters, .api-exceptions { width: 100%; border-collapse: collapse; margin-bottom: 1rem; } -.api-parameters th, .api-returns th, .api-type-parameters th, -.api-parameters td, .api-returns td, .api-type-parameters td { +.api-parameters th, .api-returns th, .api-type-parameters th, .api-exceptions th, +.api-parameters td, .api-returns td, .api-type-parameters td, .api-exceptions td { padding: 0.5rem 0.75rem; border: 1px solid var(--bs-border-color, #444); text-align: left; From 5fb32a1cb378450661d9695c8d97c6609236239b Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 08:27:44 -0500 Subject: [PATCH 29/40] Some fixing --- .../api_wiki/partials/class.header.tmpl.partial | 6 ++---- docs/template/api_wiki/public/main.css | 10 +++++++++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/docs/template/api_wiki/partials/class.header.tmpl.partial b/docs/template/api_wiki/partials/class.header.tmpl.partial index dffd2e4d..750fc210 100644 --- a/docs/template/api_wiki/partials/class.header.tmpl.partial +++ b/docs/template/api_wiki/partials/class.header.tmpl.partial @@ -14,7 +14,6 @@
{{{conceptual}}}
{{#inClass}} -{{#inheritance.0}}
{{__global.inheritance}}
@@ -24,11 +23,11 @@ {{{specName.0.value}}}
{{/inheritance}} - +
{{name.0.value}}
- + {{#derivedClasses}}
{{{specName.0.value}}} @@ -36,7 +35,6 @@ {{/derivedClasses}}
-{{/inheritance.0}} {{/inClass}} {{#implements.0}} diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index f3fdaec6..bb05f5fc 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -20,8 +20,16 @@ padding-right: 1.5rem; } +:root { + --page-gutter: clamp(1rem, 4vw, 5rem); +} + .container, .container-fluid, .container-xxl { - --bs-gutter-x: 5rem; + --bs-gutter-x: var(--page-gutter); +} + +.container { + max-width: 100%; } body[data-yaml-mime="ManagedReference"] article h2.section, body[data-yaml-mime="ApiPage"] article h2.section { From b6b4b4af1e9ca4bf4f5199d605a2acef2acad853 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 08:35:09 -0500 Subject: [PATCH 30/40] 2col params, and fields table --- .../partials/class.header.tmpl.partial | 40 ++++++++++++++----- .../api_wiki/partials/class.tmpl.partial | 9 +++-- docs/template/api_wiki/public/main.css | 6 +-- 3 files changed, 39 insertions(+), 16 deletions(-) diff --git a/docs/template/api_wiki/partials/class.header.tmpl.partial b/docs/template/api_wiki/partials/class.header.tmpl.partial index 750fc210..be8f4aed 100644 --- a/docs/template/api_wiki/partials/class.header.tmpl.partial +++ b/docs/template/api_wiki/partials/class.header.tmpl.partial @@ -70,7 +70,6 @@ - @@ -81,9 +80,13 @@ {{#syntax.parameters}} - @@ -189,13 +192,30 @@ {{#isEnum}} {{#children}}

{{>partials/classSubtitle}}

-
-{{#children}} -
{{syntax.content.0.value}}
- {{#remarks}}
{{{summary}}}{{{remarks}}}
{{/remarks}} - {{^remarks}}
{{{summary}}}
{{/remarks}} -{{/children}} -
+ +
{{__global.type}} {{__global.name}} {{__global.description}}
{{{type.specName.0.value}}} - {{{id}}} +
+ {{{type.specName.0.value}}} +
+
+ {{{id}}} +
{{{description}}}
+ + + + + + + + + {{#children}} + + + + + {{/children}} + +
{{__global.name}}{{__global.description}}
+ {{syntax.content.0.value}} + + {{{summary}}} + {{#remarks}}{{{remarks}}}{{/remarks}} +
+ {{/children}} {{/isEnum}} diff --git a/docs/template/api_wiki/partials/class.tmpl.partial b/docs/template/api_wiki/partials/class.tmpl.partial index c5d1dd3e..004b8278 100644 --- a/docs/template/api_wiki/partials/class.tmpl.partial +++ b/docs/template/api_wiki/partials/class.tmpl.partial @@ -33,7 +33,6 @@ - @@ -44,9 +43,13 @@ {{#syntax.parameters}} - diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index bb05f5fc..1cbb15e6 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -89,14 +89,14 @@ body > footer, body[data-layout="landing"] > footer { opacity: 0.75; } -.api-parameters, .api-returns, .api-type-parameters, .api-exceptions { +.api-parameters, .api-returns, .api-type-parameters, .api-exceptions, .api-fields { width: 100%; border-collapse: collapse; margin-bottom: 1rem; } -.api-parameters th, .api-returns th, .api-type-parameters th, .api-exceptions th, -.api-parameters td, .api-returns td, .api-type-parameters td, .api-exceptions td { +.api-parameters th, .api-returns th, .api-type-parameters th, .api-exceptions th, .api-fields th, +.api-parameters td, .api-returns td, .api-type-parameters td, .api-exceptions td, .api-fields td { padding: 0.5rem 0.75rem; border: 1px solid var(--bs-border-color, #444); text-align: left; From 09e32dd163fd53e464c6a20097ee91baf78c7f48 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 08:46:07 -0500 Subject: [PATCH 31/40] CSS Cleaning and quick fix --- .../api_wiki/partials/class.tmpl.partial | 2 +- docs/template/api_wiki/public/main.css | 78 +++++++++---------- 2 files changed, 39 insertions(+), 41 deletions(-) diff --git a/docs/template/api_wiki/partials/class.tmpl.partial b/docs/template/api_wiki/partials/class.tmpl.partial index 004b8278..723686d8 100644 --- a/docs/template/api_wiki/partials/class.tmpl.partial +++ b/docs/template/api_wiki/partials/class.tmpl.partial @@ -129,7 +129,7 @@ {{/fieldValue}} {{#propertyValue}} -

{{__global.propertyValue}}

+

{{__global.returns}}

{{__global.type}} {{__global.name}} {{__global.description}}
{{{type.specName.0.value}}} - {{{id}}} +
+ {{{type.specName.0.value}}} +
+
+ {{{id}}} +
{{{description}}}
diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 1cbb15e6..b28503d8 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -9,19 +9,15 @@ --bs-font-sans-serif: 'DPComic', system-ui, -apple-system, sans-serif; --bs-body-font-family: var(--bs-font-sans-serif); --bs-font-monospace: 'DPComic', system-ui, -apple-system, sans-serif; + --page-gutter: clamp(1rem, 4vw, 5rem); } -.navbar { - --bs-navbar-brand-margin-end: 2.5rem; - --bs-navbar-brand-font-size: 1.5rem; -} - -#logo { - padding-right: 1.5rem; +b, strong { + font-weight: normal; } -:root { - --page-gutter: clamp(1rem, 4vw, 5rem); +code { + font-size: 18px !important; } .container, .container-fluid, .container-xxl { @@ -32,72 +28,74 @@ max-width: 100%; } -body[data-yaml-mime="ManagedReference"] article h2.section, body[data-yaml-mime="ApiPage"] article h2.section { - margin-top: 1rem; +body > header, body[data-layout="landing"] > header { + min-height: 90px; } -b, strong { - font-weight: normal; +body > footer, body[data-layout="landing"] > footer { + min-height: 90px; + display: flex; + align-items: stretch; } -.toc ul { - font-size: 20px !important; +.navbar { + --bs-navbar-brand-margin-end: 2.5rem; + --bs-navbar-brand-font-size: 1.5rem; } -code { - font-size: 18px !important; +#logo { + padding-right: 1.5rem; } .content { font-size: 20px !important; } -body > header, body[data-layout="landing"] > header { - min-height: 90px; -} - -body > footer, body[data-layout="landing"] > footer { - min-height: 90px; - display: flex; - align-items: stretch; +.toc ul { + font-size: 20px !important; } .affix { font-size: 20px; } +body[data-yaml-mime="ManagedReference"] article h2.section, +body[data-yaml-mime="ApiPage"] article h2.section { + margin-top: 1rem; +} + .inheritance { - margin-bottom: 1rem; + margin-bottom: 1rem; } .inheritance h5 { - margin-bottom: 0.35rem; + margin-bottom: 0.35rem; } .inheritance-tree { - border-top: 1px solid currentColor; - padding-top: 0.35rem; + border-top: 1px solid currentColor; + padding-top: 0.35rem; } .inheritance-level { - line-height: 1.4; - padding-left: calc(var(--inheritance-level, 0) * 1.25rem); + line-height: 1.4; + padding-left: calc(var(--inheritance-level, 0) * 1.25rem); } .inheritance-level::before { - content: "↳ "; - opacity: 0.75; + content: "↳ "; + opacity: 0.75; } .api-parameters, .api-returns, .api-type-parameters, .api-exceptions, .api-fields { - width: 100%; - border-collapse: collapse; - margin-bottom: 1rem; + width: 100%; + border-collapse: collapse; + margin-bottom: 1rem; } .api-parameters th, .api-returns th, .api-type-parameters th, .api-exceptions th, .api-fields th, .api-parameters td, .api-returns td, .api-type-parameters td, .api-exceptions td, .api-fields td { - padding: 0.5rem 0.75rem; - border: 1px solid var(--bs-border-color, #444); - text-align: left; -} + padding: 0.5rem 0.75rem; + border: 1px solid var(--bs-border-color, #444); + text-align: left; +} \ No newline at end of file From 686f246dc1aecaa9c921caecdf0fbfd7ef41a160 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 08:49:13 -0500 Subject: [PATCH 32/40] Inline code background --- docs/template/api_wiki/public/main.css | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index b28503d8..1644a20c 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -20,6 +20,12 @@ code { font-size: 18px !important; } +:not(pre) > code { + background-color: var(--bs-tertiary-bg, #e9ecef); + padding: 0.15em 0.35em; + border-radius: 4px; +} + .container, .container-fluid, .container-xxl { --bs-gutter-x: var(--page-gutter); } From d3f6c39904b4cacbc5894729895073f0d8d6ffb7 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 08:54:56 -0500 Subject: [PATCH 33/40] Underscore the page heading --- docs/template/api_wiki/public/main.css | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 1644a20c..85d1520d 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -104,4 +104,9 @@ body[data-yaml-mime="ApiPage"] article h2.section { padding: 0.5rem 0.75rem; border: 1px solid var(--bs-border-color, #444); text-align: left; +} + +h1, .h1 { + border-bottom: 1px solid currentColor; + padding-bottom: 0.35rem; } \ No newline at end of file From 71e88cfb1c641c541d2c6207c8518017e03e8273 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 08:55:56 -0500 Subject: [PATCH 34/40] Underscore H3 Headers --- docs/template/api_wiki/public/main.css | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 85d1520d..2a13c58d 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -109,4 +109,9 @@ body[data-yaml-mime="ApiPage"] article h2.section { h1, .h1 { border-bottom: 1px solid currentColor; padding-bottom: 0.35rem; +} + +h3, .h3 { + border-bottom: 1px solid currentColor; + padding-bottom: 0.35rem; } \ No newline at end of file From 782be3236ffb39c648d5fd4a25c45f7371744364 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 09:02:01 -0500 Subject: [PATCH 35/40] Fix borders --- docs/template/api_wiki/public/main.css | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 2a13c58d..53c09d02 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -12,6 +12,10 @@ --page-gutter: clamp(1rem, 4vw, 5rem); } +* { + border-width: 2px; +} + b, strong { font-weight: normal; } @@ -27,7 +31,12 @@ code { } .container, .container-fluid, .container-xxl { - --bs-gutter-x: var(--page-gutter); + width: 100%; + max-width: 100%; + padding-right: var(--page-gutter); + padding-left: var(--page-gutter); + margin-right: auto; + margin-left: auto; } .container { From 3e33a13bef24700acc683fd6f14108ddeff438e6 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 09:13:14 -0500 Subject: [PATCH 36/40] Update main.css --- docs/template/api_wiki/public/main.css | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 53c09d02..0b350cc3 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -13,7 +13,7 @@ } * { - border-width: 2px; + border-width: 4px !important; } b, strong { @@ -123,4 +123,9 @@ h1, .h1 { h3, .h3 { border-bottom: 1px solid currentColor; padding-bottom: 0.35rem; +} + +a.active { + font-style: italic; + text-decoration: underline; } \ No newline at end of file From 7aa75a5611a080ec933baeddc89c9710a937d6c3 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 09:22:39 -0500 Subject: [PATCH 37/40] Conditionalize H3 Headers --- docs/template/api_wiki/public/main.css | 5 ++++- docs/template/api_wiki/public/main.js | 16 +++++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 0b350cc3..1bf96c21 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -120,7 +120,10 @@ h1, .h1 { padding-bottom: 0.35rem; } -h3, .h3 { +html.api-documentation h3, +html.api-documentation .h3, +html.community-documentation h3, +html.community-documentation .h3 { border-bottom: 1px solid currentColor; padding-bottom: 0.35rem; } diff --git a/docs/template/api_wiki/public/main.js b/docs/template/api_wiki/public/main.js index 4044b534..688fe3ef 100644 --- a/docs/template/api_wiki/public/main.js +++ b/docs/template/api_wiki/public/main.js @@ -1,3 +1,17 @@ export default { - defaultTheme: 'dark' + defaultTheme: 'dark' } + +const docUrl = document.querySelector('meta[name="docfx:docurl"]')?.content || ''; + +if (docUrl.includes('/docs/api/')) { + document.documentElement.classList.add('api-documentation'); +} + +if (docUrl.includes('/docs/community/')) { + document.documentElement.classList.add('community-documentation'); +} + +if (docUrl.includes('/docs/wiki/')) { + document.documentElement.classList.add('wiki-documentation'); +} \ No newline at end of file From de098bf8f2edb1707c85cb0bfb521c501896aca4 Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 09:40:12 -0500 Subject: [PATCH 38/40] Overhaul Index.md --- docs/index.md | 278 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 269 insertions(+), 9 deletions(-) diff --git a/docs/index.md b/docs/index.md index 4795094f..bab34934 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,19 +1,275 @@ +# Inscryption API Wiki +--- +Hey there, and welcome to the Inscryption Modding and API Wiki. This is your one stop hub for all things related to the API. The following are some quick links: + +* [Inscryption API Documentation](api/index.md) +* [Inscryption Community Patch Documentation](community/index.md) +* [Inscryption Modding Wiki](wiki/index.md) + +Some other links you may find extremely valuable are as follows: +* [Inscryption Modding Discord](https://discord.gg/QrJEF5Denm) +* [Thunderstore Package](https://thunderstore.io/c/inscryption/p/API_dev/API/) +* [GitHub Repository](https://github.com/InscryptionModding/InscryptionAPI) + +How can you contribute to the wiki? Well for starters you can find the Wiki end of our setup [here](https://github.com/InscryptionModding/InscryptionAPI/tree/main/docs), the only relevant part of this setup you may need to interact with is `wiki` or any `index.md` files. The rest of it leave untouched unless you ***know*** what you are doing. Once you have a markdown file open its straight forward editing as long as you know how Markdown works. + +___ + ## Inscryption API + +This plugin is a BepInEx plugin made for Inscryption as an API. This is the de-facto standard API for Inscryption modders. + +It can currently create and modify: +- Cards +- Abilities +- Appearance behaviours +- Stat Icons +- Challenges +- Starter Decks +- Regions +- Encounters +- Totem Tops +- Consumable Items +- Gramophone Tracks +- Slot Modifications +- Talking Cards +- Custom Costs +- Custom Rulebook Pages +- Rulebook Redirects/Hyperlinks +- And much more! + +Additionally, a number of quality-of-life patches from the community are included with each release. + +___ + +## Getting Started: Installation +--- +To begin, we'll go over how to install BepInEx, the framework all Inscryption mods use. This is a necessary step to playing modded Inscryption, so be sure to follow this carefully. + +**FOR LINUX AND STEAMDECK:** Ensure that the game is set to run using `Proton` in he game settings on steam. Should be a setting like this: `Change launch behaviour` -> `Proton`. + +### Installing with a Mod Manager +1. Download and install [Thunderstore Mod Manager](https://www.overwolf.com/app/Thunderstore-Thunderstore_Mod_Manager), [Gale](https://thunderstore.io/c/inscryption/p/Kesomannen/GaleModManager/), [Pulsar](https://pulsarmods.com/) or [r2modman](https://thunderstore.io/c/inscryption/p/ebkr/r2modman/). +2. Click the **Install with Mod Manager** button on the top of [BepInEx's](https://thunderstore.io/c/inscryption/p/BepInEx/BepInExPack_Inscryption/) page. +3. Run the game via the mod manager. + +If you have issues with Mod Managers head to one of these discords; + +* **Thunderstore Support Discord:** [Here](https://discord.gg/Fbz54kQAxg) +* **R2ModMan Support Discord:** [Here](https://discord.gg/R85wjqa4WN) +* **Gale Mod Manager Support Discord:** [Here](https://discord.gg/sfuWXRfeTt) + +### Installing Manually +1. Install [BepInEx](https://thunderstore.io/package/download/BepInEx/BepInExPack_Inscryption/5.4.2305/) by pressing `Manual Download` and extract the contents into a folder. **Do not extract into the game folder!** +2. Move the contents of the `BepInExPack_Inscryption` folder into the game folder (where the game executable is; usually found here: `C:\Program Files (x86)\Steam\steamapps\common\Inscryption`). +3. Run the game. If everything was done correctly, you will see the BepInEx console appear on your desktop. Close the game after it finishes loading. +4. Install [MonoModLoader](https://inscryption.thunderstore.io/package/BepInEx/MonoMod_Loader_Inscryption/) and extract the contents into a folder. +5. Move the contents of the `patchers` folder into `BepInEx/patchers` (If any of the mentioned BepInEx folders don't exist, just create them). +6. Install [Inscryption API](https://inscryption.thunderstore.io/package/API_dev/API/) and extract the contents into a folder. +7. Move the contents of the `plugins` folder into `BepInEx/plugins` and the contents of the `monomod` folder into the `BepInEx/monomod` folder. +8. Run the game again. If everything runs correctly, a message will appear in the console telling you that the API was loaded. +9. For any additional mods create a new subfolder, it can be called anything and extract the zips archive into it and if there is a `BepInEx` folder within the zip instead drop the contents of that folder into the `BepInEx` root for the modding instance. EX; + ``` + BepInEx // These go within the BepInEx root folder + |-- config + |-- patchers + |-- plugins + |-- monomod + |-- core + plugins // Files within go into the created plugin subfolder that was created for the mod + |-- Art + |-- Scripts + |-- MyMod.dll + manifest.json // Ignorable, but if kept, goes in plugin subfolder + README.md // Ignorable, but if kept, goes in plugin subfolder + CHANGELOG.md // Ignorable, but if kept, goes in plugin subfolder + icon.png // Ignorable, but if kept, goes in plugin subfolder + ``` +10. Run the game once more and everything should be correct and working. + +### Installing Manually (XBOX Game-Pass) +1. Install [BepInEx](https://thunderstore.io/package/download/BepInEx/BepInExPack_Inscryption/5.4.2305/) by pressing `Manual Download` and extract the contents into a folder. **Do not extract into the game folder!** +2. Move the contents of the `BepInExPack_Inscryption` folder into the game folder (where the game executable is; usually found here: `C:\XboxGames\Inscryption\Content`). +3. Install the following package: [XboxSilencio](https://thunderstore.io/c/inscryption/p/CORE_API_TEAM/GamepassSilencio/), this is a package which aims to solve frictions with XBOX Gamepass specific installations, such as HueyFS related errors. +4. Run the game. If everything was done correctly, you will see the BepInEx console appear on your desktop. Close the game after it finishes loading. +5. Install [MonoModLoader](https://inscryption.thunderstore.io/package/BepInEx/MonoMod_Loader_Inscryption/) and extract the contents into a folder. +6. Move the contents of the `patchers` folder into `BepInEx/patchers` (If any of the mentioned BepInEx folders don't exist, just create them). +7. Install [Inscryption API](https://inscryption.thunderstore.io/package/API_dev/API/) and extract the contents into a folder. +8. Move the contents of the `plugins` folder into `BepInEx/plugins` and the contents of the `monomod` folder into the `BepInEx/monomod` folder. +9. Run the game again. If everything runs correctly, a message will appear in the console telling you that the API was loaded. +10. For any additional mods create a new subfolder, it can be called anything and extract the zips archive into it and if there is a `BepInEx` folder within the zip instead drop the contents of that folder into the `BepInEx` root for the modding instance. EX; + ``` + BepInEx // These go within the BepInEx root folder + |-- config + |-- patchers + |-- plugins + |-- monomod + |-- core + plugins // Files within go into the created plugin subfolder that was created for the mod + |-- Art + |-- Scripts + |-- MyMod.dll + manifest.json // Ignorable, but if kept, goes in plugin subfolder + README.md // Ignorable, but if kept, goes in plugin subfolder + CHANGELOG.md // Ignorable, but if kept, goes in plugin subfolder + icon.png // Ignorable, but if kept, goes in plugin subfolder + ``` +11. Run the game once more and everything should be correct and working. + +### Installing on the Steam Deck +1. Download [r2modman](https://thunderstore.io/c/inscryption/p/ebkr/r2modman/) on the Steam Deck's Desktop Mode and open it from its download using its `AppImage` file. +2. Download the mods you plan on using and their dependencies. +3. Go to the setting of the profile you are using for the mods and click `Browse Profile Folder`. +4. Copy the BepInEx folder, then go to Steam and open Inscryption's Properties menu +5. Go to `Installed Files` click `Browse` to open the folder containing Inscryption's local files; paste the BepInEx folder there. +6. Enter Gaming Mode and check 'Force the use of a specific Steam Play compatibility tool' in the Properties menu under `Compatibility`. +7. Go to the launch parameters and enter `WINEDLLOVERRIDES="winhttp.dll=n,b" %command%`. +8. Open Inscryption. If everything was done correctly, you should see a console appear on your screen. + +### Mac & Linux +1. Follow the steps here first: +2. Next do steps 4-10 of the Manual Installation +3. Your game should be setup for inscryption modding now + +If you have any issues with Mac/Linux, Steam Deck, or Manual head over to the discord for this game: + +* **Inscryption Modding Discord:** [Here](https://discord.gg/ZQPvfKEpwM) + +## Getting Started: Modding --- -Welcome to the site of the Inscryption Modding API! -You can find the wiki and API documentation here. +Modding Inscryption requires a knowledge of coding in C#, and in many cases an understanding of how to patch the game using HarmonyPatch. + +If you're unfamiliar with any of this, or just want to create cards and sigils, you can use [JSONLoader](https://inscryption.thunderstore.io/package/MADH95Mods/JSONCardLoader/). + +### Modding with JSONLoader +JSONLoader is a versatile mod that provides a more beginner-friendly way of creating new cards and abilities for Inscryption using JSON syntax, which is much simpler than C#. + +JSONLoader's documentation can be found [here](https://github.com/MADH95/JSONLoader). + +A video tutorial covering how to use JSONLoader in a basic form can be found [here](https://www.youtube.com/watch?v=grTSkpI4U7g). + +### Modding with C# +To begin modding with C#, you will need to create a new C# project using a code editor. +We recommend and assume you're using Microsoft's Visual Studio. + +Your project's target framework needs to be `netstandard2.0`. + +Once your project's created, go to `Project > Manage NuGet Packages`. +Click the dropdown menu for 'Package source' and check that 'BepInEx' and 'nuget' is there. + +If BepInEx or nuget aren't an available source, we need to add them. +To add a new package source, click on the gear icon next to the package source selector, then click the large green plus-sign. + +To add BepInEx, change the name to 'BepInEx' and the source link to 'https://nuget.bepinex.dev/v3/index.json'. +To add nuget, change the name to 'nuget' and the source link to 'https://nuget.windows10ce.com/nuget/v3/index.json'. -## Some Links +Change the package source to 'All' then click 'Browse'. +We want to install the following packages (**Make sure the version numbers match!**): +- BepInEx.Analyzers v1.0.8 +- BepInEx.Core v5.4.19 +- HarmonyX v2.9.0 +- Inscryption.GameLibs v1.9.0-r.0 +- UnityEngine.Modules v2019.4.24 + +You will also need to add the API as a reference. +There are a couple ways to do this, detailed below; whichever way you choose to do this, you'll also need to need to reference `InscryptionAPI.dll`, which should be in your BepInEx plugins folder; copy this path for future use. + +To do so, go to your 'BepInEx/plugins' folder and copy the folder path. +Then, navigate to `Project > Add Project Reference` and click 'Browse'. +Copy the folder path and add 'InscryptionAPI.dll' as a reference. +You can do this for other mods' .dll files if you want to reference them as a mod dependency (a separate mod that your mod relies on to work). + +An alternative method to adding the API (and other mods) as a reference is to use NuGet packages by adding 'https://nuget.bepinex.dev/v3/index.json' as a package source, and then adding 'API_dev-API' as a reference. + +With all this, you are now ready to begin creating your mod! +Some resources are provided below for you to use, including an example mod to look at for examples. +Otherwise, continue reading this wiki. + +### Modding Resources [Inscryption Modding Discord](https://discord.gg/QrJEF5Denm) -[Thunderstore Page](https://inscryption.thunderstore.io/package/API_dev/API/) +[BepInEx documentation](https://docs.bepinex.dev/) + +[Harmony patching article](https://harmony.pardeike.net/articles/patching.html) + +[Example Mod using C#](https://github.com/debugman18/InscryptionExampleMod) + +[Vanilla and Modded Enumerations](https://github.com/SaxbyMod/SabyModEnums) + +An example mod utilising this plugin can be found [here](https://github.com/debugman18/InscryptionExampleMod), +and the modding wiki and documentation can be found [here](https://inscryptionmodding.github.io/InscryptionAPI/wiki/index.html). + +___ + +## Modded Save File +With this API installed, an additional 'modded save file' will be created by the game. This file will be found in the 'BepInEx' subdirectory, and contains all save data created by mods that use this API. This file will not automatically be synced to the cloud by Steam. + +___ + +## Community Patches +The following patches from the Inscryption modding community have been included in this package to improve the overall quality-of-life for modding and compatibility. + +### SigilArtPatch by MADH95Mods +Fixes the art for abilities that previously only appeared in Act 2 so they appear correctly in Act 1 and Act 3 + +### Conduit Attack Fix by MADH95Mods +Fixes the behavior of conduits so they function correctly in Act 1. + +### Activated Sigil Fix by MADH95Mods +Allows activated sigils to work correctly in Act 1 and Act 3 by clicking the sigil icon on the card. + +### AnthonysLatchFix by AnthonyPython +Fixes latch sigils to work in Act 1 + +### Sigil Art Fix by Memez4Life +Allows up to 8 sigils to be displayed on cards and adds the option to display merged sigil stamps at the bottom of the card instead of over the artwork (see the config files for more information). + +### Visually Stackable Sigils by divisionbyz0rro +Combines multiple instances of the same sigil on a single card into a single sigil with a number to free up space on the card. + +### Cost Render Fix by Void Slime +Displays hybrid cost cards correctly and makes energy and mox show up on act 1 cards + +### Cost Choice Node fix by Void Slime +If energy/mox cards are in the Act 1 pool, energy and mox card choice nodes will be added to the cost choice node in Act 1. + +### Sniper Sigil Fix by SpecialAPI +Displays targets for attacks made with the sniper sigil in Act 1. + +### Act 1 Sentry Fixes by WhistleWind +Fixes a number of bugs caused by the Sentry ability being used in Act 1. + +### Multi-Act Sigil Compatibility Fixes by WhistleWind +Fixes a number of sigils to be usable in all Acts. Sigils include: Mental Gemnastics, Tidal Lock, Hoarder, Vessel Printer, Amorphous, Handy. + +### Fledgling Sigil Fixes by WhistleWind +Fixes Fledgling in Act 2 to show the correct number of turns until a card evolves, up to 3. Also changes its description to show the correct number of turns. + +### OverridePixelAbilityIcons by WhistleWind +Fixes the OverrideAbilityIcon method to work in Act 2. + +### Temporary Mod Fixes by WhistleWind +- Fixes issues related to using temporary mods in Act 2 or to add custom decals + +___ + +## Contribution + +### How can you help? +Use the plugin and report bugs you find! Ping us on the [Inscryption Modding Discord](https://discord.gg/QrJEF5Denm) server in the api channel with what you find. + +### But really, I want to help develop this mod! +Great! We're more than happy to accept help. Either make a pull request to the API's [GitHub page](https://github.com/InscryptionModding/InscryptionAPI) or come join us over in the [Inscryption Modding Discord](https://discord.gg/QrJEF5Denm). + +### Can I donate? +Donations are totally not needed, this is a passion project before anything else. -[GitHub Repository](https://github.com/InscryptionModding/InscryptionAPI) +___ -## Credits -Original version by cyantist. +## Contributors +Original version by cyantist -API 2.0 Contributors: +Contributors and builders of API 2.0: - BobbyShmurner - divisionbyz0rro - Eri @@ -25,4 +281,8 @@ API 2.0 Contributors: - SpecialAPI - Void Slime - WhistleWind -- Windows10CE \ No newline at end of file +- Windows10CE +- Keks307 +- Creator/Chaosyr/SaxbyMod/The Stoat Lord/ThinCreator3483 +- stillrinny +- R3b00t3d-kawaii \ No newline at end of file From ff0f617e94b21f2660e489812be62bd7fcc7feeb Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 09:43:06 -0500 Subject: [PATCH 39/40] Conditionalize H1 --- docs/template/api_wiki/public/main.css | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/template/api_wiki/public/main.css b/docs/template/api_wiki/public/main.css index 1bf96c21..b31e1abb 100644 --- a/docs/template/api_wiki/public/main.css +++ b/docs/template/api_wiki/public/main.css @@ -115,7 +115,10 @@ body[data-yaml-mime="ApiPage"] article h2.section { text-align: left; } -h1, .h1 { +html.api-documentation h1, +html.api-documentation .h1, +html.community-documentation h1, +html.community-documentation .h1 { border-bottom: 1px solid currentColor; padding-bottom: 0.35rem; } From 2e37ebdf8014abbba1f7cf0bda00e9c1b812085f Mon Sep 17 00:00:00 2001 From: Chaosyr Date: Sat, 14 Nov 2026 09:52:35 -0500 Subject: [PATCH 40/40] Make Wiki be named Wiki --- docs/docfx.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docfx.json b/docs/docfx.json index f1bccf2f..0875132e 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -65,7 +65,7 @@ ], "globalMetadata": { "_appTitle": "InscryptionAPI", - "_appName": "Inscryption Modding API", + "_appName": "Inscryption Modding Wiki", "_appLogoPath": "images/logo.svg", "_appFaviconPath": "images/favicon.ico", "_disableBreadcrumb": true,