diff --git a/VERSION b/VERSION index 35ff8e0d..8e03717d 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.5.1.d \ No newline at end of file +1.5.1 \ No newline at end of file diff --git a/assets/v1.5/js/primer_spec_plugin.min.js b/assets/v1.5/js/primer_spec_plugin.min.js index a890fba6..4b80a3b0 100644 --- a/assets/v1.5/js/primer_spec_plugin.min.js +++ b/assets/v1.5/js/primer_spec_plugin.min.js @@ -1,2 +1,2 @@ -!function(e){var t={};function o(r){if(t[r])return t[r].exports;var n=t[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,o),n.l=!0,n.exports}o.m=e,o.c=t,o.d=function(e,t,r){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(o.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)o.d(r,n,function(t){return e[t]}.bind(null,n));return r},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=1)}([function(e,t,o){var r,n,i;!function(o,c){"use strict";n=[],void 0===(i="function"==typeof(r=function(){return function(e){function t(e){e.icon=Object.prototype.hasOwnProperty.call(e,"icon")?e.icon:"",e.visible=Object.prototype.hasOwnProperty.call(e,"visible")?e.visible:"hover",e.placement=Object.prototype.hasOwnProperty.call(e,"placement")?e.placement:"right",e.ariaLabel=Object.prototype.hasOwnProperty.call(e,"ariaLabel")?e.ariaLabel:"Anchor",e.class=Object.prototype.hasOwnProperty.call(e,"class")?e.class:"",e.base=Object.prototype.hasOwnProperty.call(e,"base")?e.base:"",e.truncate=Object.prototype.hasOwnProperty.call(e,"truncate")?Math.floor(e.truncate):64,e.titleText=Object.prototype.hasOwnProperty.call(e,"titleText")?e.titleText:""}function o(e){var t;if("string"==typeof e||e instanceof String)t=[].slice.call(document.querySelectorAll(e));else{if(!(Array.isArray(e)||e instanceof NodeList))throw new TypeError("The selector provided to AnchorJS was invalid.");t=[].slice.call(e)}return t}this.options=e||{},this.elements=[],t(this.options),this.isTouchDevice=function(){return Boolean("ontouchstart"in window||window.TouchEvent||window.DocumentTouch&&document instanceof DocumentTouch)},this.add=function(e){var r,n,i,c,l,a,s,d,h,u,A,_,p=[];if(t(this.options),"touch"===(A=this.options.visible)&&(A=this.isTouchDevice()?"always":"hover"),e||(e="h2, h3, h4, h5, h6"),0===(r=o(e)).length)return this;for(function(){if(null!==document.head.querySelector("style.anchorjs"))return;var e,t=document.createElement("style");t.className="anchorjs",t.appendChild(document.createTextNode("")),void 0===(e=document.head.querySelector('[rel="stylesheet"],style'))?document.head.appendChild(t):document.head.insertBefore(t,e);t.sheet.insertRule(".anchorjs-link{opacity:0;text-decoration:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}",t.sheet.cssRules.length),t.sheet.insertRule(":hover>.anchorjs-link,.anchorjs-link:focus{opacity:1}",t.sheet.cssRules.length),t.sheet.insertRule("[data-anchorjs-icon]::after{content:attr(data-anchorjs-icon)}",t.sheet.cssRules.length),t.sheet.insertRule('@font-face{font-family:anchorjs-icons;src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype")}',t.sheet.cssRules.length)}(),n=document.querySelectorAll("[id]"),i=[].map.call(n,(function(e){return e.id})),l=0;l\]./()*\\\n\t\b\v\u00A0]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(e){var t=e.firstChild&&(" "+e.firstChild.className+" ").indexOf(" anchorjs-link ")>-1,o=e.lastChild&&(" "+e.lastChild.className+" ").indexOf(" anchorjs-link ")>-1;return t||o||!1}}})?r.apply(t,n):r)||(e.exports=i)}()},function(e,t,o){"use strict";o.r(t);var r,n,i,c,l,a=o(0),s={},d=[],h=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function u(e,t){for(var o in t)e[o]=t[o];return e}function A(e){var t=e.parentNode;t&&t.removeChild(e)}function _(e,t,o){var r,n,i,c=arguments,l={};for(i in t)"key"==i?r=t[i]:"ref"==i?n=t[i]:l[i]=t[i];if(arguments.length>3)for(o=[o],i=3;i1&&C(n,t,o),t=y(o,n,n,e.__k,null,n.__e,t),"function"==typeof e.type&&(e.__d=t)))}function M(e,t,o,n,i,c,l,a,s){var d,h,A,_,p,g,f,v,w,y,S,E=t.type;if(void 0!==t.constructor)return null;null!=o.__h&&(s=o.__h,a=t.__e=o.__e,t.__h=null,c=[a]),(d=r.__b)&&d(t);try{e:if("function"==typeof E){if(v=t.props,w=(d=E.contextType)&&n[d.__c],y=d?w?w.props.value:d.__:n,o.__c?f=(h=t.__c=o.__c).__=h.__E:("prototype"in E&&E.prototype.render?t.__c=h=new E(v,y):(t.__c=h=new b(v,y),h.constructor=E,h.render=O),w&&w.sub(h),h.props=v,h.state||(h.state={}),h.context=y,h.__n=n,A=h.__d=!0,h.__h=[]),null==h.__s&&(h.__s=h.state),null!=E.getDerivedStateFromProps&&(h.__s==h.state&&(h.__s=u({},h.__s)),u(h.__s,E.getDerivedStateFromProps(v,h.__s))),_=h.props,p=h.state,A)null==E.getDerivedStateFromProps&&null!=h.componentWillMount&&h.componentWillMount(),null!=h.componentDidMount&&h.__h.push(h.componentDidMount);else{if(null==E.getDerivedStateFromProps&&v!==_&&null!=h.componentWillReceiveProps&&h.componentWillReceiveProps(v,y),!h.__e&&null!=h.shouldComponentUpdate&&!1===h.shouldComponentUpdate(v,h.__s,y)||t.__v===o.__v){h.props=v,h.state=h.__s,t.__v!==o.__v&&(h.__d=!1),h.__v=t,t.__e=o.__e,t.__k=o.__k,h.__h.length&&l.push(h),C(t,a,e);break e}null!=h.componentWillUpdate&&h.componentWillUpdate(v,h.__s,y),null!=h.componentDidUpdate&&h.__h.push((function(){h.componentDidUpdate(_,p,g)}))}h.context=y,h.props=v,h.state=h.__s,(d=r.__r)&&d(t),h.__d=!1,h.__v=t,h.__P=e,d=h.render(h.props,h.state,h.context),h.state=h.__s,null!=h.getChildContext&&(n=u(u({},n),h.getChildContext())),A||null==h.getSnapshotBeforeUpdate||(g=h.getSnapshotBeforeUpdate(_,p)),S=null!=d&&d.type==m&&null==d.key?d.props.children:d,k(e,Array.isArray(S)?S:[S],t,o,n,i,c,l,a,s),h.base=t.__e,t.__h=null,h.__h.length&&l.push(h),f&&(h.__E=h.__=null),h.__e=!1}else null==c&&t.__v===o.__v?(t.__k=o.__k,t.__e=o.__e):t.__e=P(o.__e,t,o,n,i,c,l,s);(d=r.diffed)&&d(t)}catch(e){t.__v=null,(s||null!=c)&&(t.__e=a,t.__h=!!s,c[c.indexOf(a)]=null),r.__e(e,t,o)}return t.__e}function L(e,t){r.__c&&r.__c(t,e),e.some((function(t){try{e=t.__h,t.__h=[],e.some((function(e){e.call(t)}))}catch(e){r.__e(e,t.__v)}}))}function P(e,t,o,r,n,i,c,l){var a,h,u,A,_,p=o.props,m=t.props;if(n="svg"===t.type||n,null!=i)for(a=0;a=o.__.length&&o.__.push({}),o.__[e]}function W(e){return j=1,function(e,t,o){var r=q(R++,2);return r.t=e,r.__c||(r.__=[o?o(t):ne(void 0,t),function(e){var t=r.t(r.__[0],e);r.__[0]!==t&&(r.__=[t,r.__[1]],r.__c.setState({}))}],r.__c=B),r.__}(ne,e)}function K(e,t){var o=q(R++,3);!r.__s&&re(o.__H,t)&&(o.__=e,o.__H=t,B.__H.__h.push(o))}function z(e,t){var o=q(R++,4);!r.__s&&re(o.__H,t)&&(o.__=e,o.__H=t,B.__h.push(o))}function J(e){return j=5,V((function(){return{current:e}}),[])}function V(e,t){var o=q(R++,7);return re(o.__H,t)&&(o.__=e(),o.__H=t,o.__h=e),o.__}function X(e,t){return j=8,V((function(){return e}),t)}function Z(){U.forEach((function(e){if(e.__P)try{e.__H.__h.forEach(te),e.__H.__h.forEach(oe),e.__H.__h=[]}catch(t){e.__H.__h=[],r.__e(t,e.__v)}})),U=[]}r.__b=function(e){B=null,F&&F(e)},r.__r=function(e){$&&$(e),R=0;var t=(B=e.__c).__H;t&&(t.__h.forEach(te),t.__h.forEach(oe),t.__h=[])},r.diffed=function(e){Y&&Y(e);var t=e.__c;t&&t.__H&&t.__H.__h.length&&(1!==U.push(t)&&H===r.requestAnimationFrame||((H=r.requestAnimationFrame)||function(e){var t,o=function(){clearTimeout(r),ee&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(o,100);ee&&(t=requestAnimationFrame(o))})(Z)),B=void 0},r.__c=function(e,t){t.some((function(e){try{e.__h.forEach(te),e.__h=e.__h.filter((function(e){return!e.__||oe(e)}))}catch(o){t.some((function(e){e.__h&&(e.__h=[])})),t=[],r.__e(o,e.__v)}})),Q&&Q(e,t)},r.unmount=function(e){G&&G(e);var t=e.__c;if(t&&t.__H)try{t.__H.__.forEach(te)}catch(e){r.__e(e,t.__v)}};var ee="function"==typeof requestAnimationFrame;function te(e){var t=B;"function"==typeof e.__c&&e.__c(),B=t}function oe(e){var t=B;e.__c=e.__(),B=t}function re(e,t){return!e||e.length!==t.length||t.some((function(t,o){return t!==e[o]}))}function ne(e,t){return"function"==typeof t?t(e):t}const ie=["--sidebar-bg-color","--sidebar-border-color","--sidebar-heading-text-color","--sidebar-heading-link-color","--sidebar-toc-h1-link-color","--sidebar-toc-h1-border-color","--sidebar-toc-h2-link-color","--sidebar-active-toc-section-bg-color","--sidebar-active-toc-section-link-color","--sidebar-active-toc-h1-section-link-color","--sidebar-active-toc-h2-section-link-color","--sidebar-toc-section-link-color","--sidebar-tt-active-text-color","--sidebar-tt-active-bg-color","--sidebar-tt-active-border","--sidebar-tt-active-border-radius","--main-heading-text-color","--main-heading-link-color","--main-link-color","--hoverable-link-hover-color","--tt-text-color","--tt-bg-color","--tt-border","--tt-border-radius","--main-bg-color","--main-text-color","--main-table-pre-bg-color","--main-table-pre-text-color","--main-table-pre-border","--main-blockquote-text-color","--main-blockquote-text-border","--main-header-border-bottom-color","--primer-spec-callout-info-bg-color","--primer-spec-callout-info-text-color","--primer-spec-callout-info-border-color","--primer-spec-callout-warning-bg-color","--primer-spec-callout-warning-text-color","--primer-spec-callout-warning-border-color","--primer-spec-callout-danger-bg-color","--primer-spec-callout-danger-text-color","--primer-spec-callout-danger-border-color","--primer-spec-callout-success-bg-color","--primer-spec-callout-success-text-color","--primer-spec-callout-success-border-color"],ce=["color","background-color","font-style","font-weight"],le=["cm","cp","c1","cs","cd","c","err","gd","ge","gr","gh","gi","go","gp","gs","gu","gt","kc","kd","kn","kp","kr","kt","kv","k","mf","mh","il","mi","mo","mb","mx","m","sb","sc","sd","s2","se","sh","si","sx","sr","s1","ss","s","na","bp","nb","nc","no","nd","ni","ne","nf","nl","nn","nt","nx","vc","vg","vi","nv","ow","o","w","txt"];function ae(){const e=document.documentElement;le.map(t=>{ce.map(o=>{const r=`--primer-spec-rouge-${t}-${o}`;e.style.removeProperty(r)})})}function se(e,t){return{name:e,apply:()=>function(e){const t=document.documentElement;le.map(o=>{if(e[o])for(const[r,n]of Object.entries(e[o])){const e=`--primer-spec-rouge-${o}-${r}`;t.style.setProperty(e,null!=n?n:null)}})}(t),reset:ae}}const de="#ffffff";var he={cm:{color:"#868064"},cp:{color:"#aaaaaa"},c1:{color:"#868064"},cs:{color:"#868064"},cd:{color:"#868064"},c:{color:"#868064"},err:{color:"#960050"},gd:{color:"#49483e"},ge:{color:"#aaaaaa","font-style":"italic"},gr:{color:"#960050"},gh:{color:"#999999"},gi:{color:"#49483e"},go:{color:"#999999"},gp:{color:"#999999"},gs:{"font-weight":"bold"},gu:{color:"#aaaaaa"},gt:{color:"#960050"},kc:{color:"#66d9ef"},kd:{color:"#66d9ef","font-style":"italic"},kn:{color:"#f92672"},kp:{color:"#f92672"},kr:{color:"#66d9ef"},kt:{color:"#66d9ef","font-style":"italic"},kv:{color:"#f92672"},k:{color:"#f92672"},mf:{color:"#ae81ff"},mh:{color:"#ae81ff"},il:{color:"#ae81ff"},mi:{color:"#ae81ff"},mo:{color:"#ae81ff"},mb:{color:"#ae81ff"},mx:{color:"#ae81ff"},m:{color:"#ae81ff"},sb:{color:"#e6db74"},sc:{color:"#ae81ff"},sd:{color:"#e6db74"},s2:{color:"#e6db74"},se:{color:"#ae81ff"},sh:{color:"#e6db74"},si:{color:"#e6db74"},sx:{color:"#e6db74"},sr:{color:"#f6aa11"},s1:{color:"#e6db74"},ss:{color:"#ae81ff"},s:{color:"#e6db74"},na:{color:"#a6e22e"},bp:{color:de},nb:{color:"#f6aa11"},nc:{color:"#a6e22e"},no:{color:"#66d9ef"},nd:{color:"#a6e22e"},ni:{color:de},ne:{color:"#a6e22e"},nf:{color:"#a6e22e"},nl:{color:de},nn:{color:de},nt:{color:"#f92672"},nx:{color:de},vc:{color:de},vg:{color:de},vi:{color:de},nv:{color:de},ow:{color:"#f92672"},o:{color:de},w:{color:de},txt:{color:de,"background-color":"rgb(35, 37, 41)"}};var ue={default:se("default",{cm:{color:"#999988","font-style":"italic"},cp:{color:"#999999","font-weight":"bold"},c1:{color:"#999988","font-style":"italic"},cs:{color:"#999999","font-weight":"bold","font-style":"italic"},cd:{color:"#999988","font-style":"italic"},c:{color:"#999988","font-style":"italic"},err:{color:"#a61717","background-color":"#e3d2d2"},gd:{color:"#000000","background-color":"#ffdddd"},ge:{color:"#000000","font-style":"italic"},gr:{color:"#aa0000"},gh:{color:"#999999"},gi:{color:"#000000","background-color":"#ddffdd"},go:{color:"#888888"},gp:{color:"#555555"},gs:{"font-weight":"bold"},gu:{color:"#aaaaaa"},gt:{color:"#aa0000"},kc:{color:"#000000","font-weight":"bold"},kd:{color:"#000000","font-weight":" bold"},kn:{color:"#000000","font-weight":"bold"},kp:{color:"#000000","font-weight":"bold"},kr:{color:"#000000","font-weight":"bold"},kt:{color:"#445588","font-weight":"bold"},kv:{color:"#000000","font-weight":"bold"},k:{color:"#000000","font-weight":"bold"},mf:{color:"#009999"},mh:{color:"#009999"},il:{color:"#009999"},mi:{color:"#009999"},mo:{color:"#009999"},mb:{color:"#009999"},mx:{color:"#009999"},m:{color:"#009999"},sb:{color:"#d14"},sc:{color:"#d14"},sd:{color:"#d14"},s2:{color:"#d14"},se:{color:"#d14"},sh:{color:"#d14"},si:{color:"#d14"},sx:{color:"#d14"},sr:{color:"#009926"},s1:{color:"#d14"},ss:{color:"#990073"},s:{color:"#d14"},na:{color:"#008080"},bp:{color:"#999999"},nb:{color:"#0086B3"},nc:{color:"#445588","font-weight":"bold"},no:{color:"#008080"},nd:{color:"#3c5d5d","font-weight":"bold"},ni:{color:"#800080"},ne:{color:"#990000","font-weight":"bold"},nf:{color:"#990000","font-weight":"bold"},nl:{color:"#990000","font-weight":"bold"},nn:{color:"#555555"},nt:{color:"#000080"},nx:{color:"#000000"},vc:{color:"#008080"},vg:{color:"#008080"},vi:{color:"#008080"},nv:{color:"#008080"},ow:{color:"#000000","font-weight":"bold"},o:{color:"#000000","font-weight":"bold"},w:{color:"#bbbbbb"},txt:{"background-color":"#f8f8f8"}}),monokai:se("monokai",he)};function Ae(e,t,o){return{name:e,label:t,theme_definition:o,apply:e=>function(e,t){const o=e[t],r=document.body;for(const[e,t]of Object.entries(o))r.style.setProperty(e,t||null);let n=o.rouge_theme;n&&ue[n]||(n="default"),ue[n].apply()}(o,e),reset:e=>function(e,t){const o=e[t],r=document.body;ie.map(e=>{r.style.removeProperty(e)}),o.rouge_theme&&ue[o.rouge_theme]&&ue[o.rouge_theme].reset()}(o,e)}}var _e={"--sidebar-border-color":"#21262d","--main-text-color":"#c9d1d9","--main-table-pre-bg-color":"#161b22","--main-table-pre-text-color":"white","--main-table-pre-border":"1px solid rgb(60, 62, 66)","--tt-bg-color":"rgba(240, 246, 252, 0.15)","--tt-text-color":"#c9d1d9","--tt-border-radius":"6px","--sidebar-tt-active-bg-color":"rgba(0, 0, 0, 0)","--main-blockquote-text-color":"#8b949e","--main-blockquote-text-border":"#3b434b","--main-header-border-bottom-color":"#21262d","--primer-spec-callout-info-bg-color":"rgba(56, 139, 253, 0.1)","--primer-spec-callout-info-text-color":"#79c0ff","--primer-spec-callout-info-border-color":"rgba(56, 139, 253, 0.4)","--primer-spec-callout-warning-bg-color":"rgba(187, 128, 9, 0.1)","--primer-spec-callout-warning-text-color":"#e3b341","--primer-spec-callout-warning-border-color":"rgba(187, 128, 9, 0.4)","--primer-spec-callout-danger-bg-color":"rgba(248, 81, 73, 0.1)","--primer-spec-callout-danger-text-color":"#ff7b72","--primer-spec-callout-danger-border-color":"rgba(248, 81, 73, 0.4)","--primer-spec-callout-success-bg-color":"rgba(46, 160, 67, 0.1)","--primer-spec-callout-success-text-color":"#56d364","--primer-spec-callout-success-border-color":"rgba(46, 160, 67, 0.4)"};var pe={light:{rouge_theme:"default"},dark:Object.assign(Object.assign({"--sidebar-bg-color":"#0d1117","--sidebar-heading-text-color":"#cccccc","--sidebar-heading-link-color":"#cccccc","--sidebar-toc-h1-link-color":"#58a6ff","--sidebar-toc-h1-border-color":"#555","--sidebar-toc-h2-link-color":"#58a6ff","--sidebar-active-toc-section-bg-color":"#e4d93f","--sidebar-active-toc-section-link-color":"#0d1117","--sidebar-active-toc-h1-section-link-color":"#0d1117","--sidebar-active-toc-h2-section-link-color":"#0d1117","--sidebar-toc-section-link-color":"#cccccc","--sidebar-tt-active-text-color":"#0d1117","--main-heading-text-color":"#e7ebee","--main-heading-link-color":"#58a6ff","--main-link-color":"#58a6ff","--hoverable-link-hover-color":"#9dd2fb","--main-bg-color":"#0d1117"},_e),{rouge_theme:"monokai"})};var me={light:{"--sidebar-bg-color":"rgb(246, 246, 246)","--sidebar-heading-text-color":"rgb(69, 98, 115)","--sidebar-heading-link-color":"rgb(219, 71, 93)","--sidebar-toc-h1-link-color":"rgb(69, 98, 115)","--sidebar-toc-h1-border-color":"rgb(69, 98, 115)","--sidebar-toc-h2-link-color":"rgb(69, 98, 115)","--sidebar-active-toc-section-bg-color":"rgb(69, 98, 115)","--sidebar-active-toc-section-link-color":"white","--sidebar-active-toc-h1-section-link-color":"white","--sidebar-active-toc-h2-section-link-color":"white","--sidebar-toc-section-link-color":"rgb(58, 58, 58)","--main-heading-text-color":"rgb(69, 98, 115)","--main-heading-link-color":"rgb(219, 71, 93)","--main-link-color":"rgb(219, 71, 93)","--tt-border-radius":"3px","--hoverable-link-hover-color":"#731624",rouge_theme:"default"},dark:Object.assign(Object.assign({"--sidebar-bg-color":"rgb(58, 58, 60)","--sidebar-heading-text-color":"white","--sidebar-heading-link-color":"white","--sidebar-toc-h1-link-color":"#61a1a8","--sidebar-toc-h1-border-color":"#61a1a8","--sidebar-toc-h2-link-color":"white","--sidebar-active-toc-section-bg-color":"rgb(67, 116, 121)","--sidebar-active-toc-section-link-color":"white","--sidebar-active-toc-h1-section-link-color":"white","--sidebar-active-toc-h2-section-link-color":"white","--sidebar-toc-section-link-color":"white","--sidebar-tt-active-text-color":"white","--main-heading-text-color":"#61a1a8","--main-heading-link-color":"rgb(218, 128, 131)","--main-link-color":"rgb(218, 128, 131)","--hoverable-link-hover-color":"#fdf6f7","--main-bg-color":"rgb(28, 28, 30)"},_e),{rouge_theme:"monokai"})};var be={light:{"--sidebar-bg-color":"rgb(41, 82, 91)","--sidebar-heading-text-color":"rgb(114, 202, 195)","--sidebar-heading-link-color":"rgb(114, 202, 195)","--sidebar-toc-h1-link-color":"rgb(229, 214, 204)","--sidebar-toc-h1-border-color":"rgb(229, 214, 204)","--sidebar-toc-h2-link-color":"white","--sidebar-active-toc-section-bg-color":"rgb(248, 255, 248)","--sidebar-active-toc-section-link-color":"rgb(41, 82, 91)","--sidebar-active-toc-h1-section-link-color":"rgb(41, 82, 91)","--sidebar-active-toc-h2-section-link-color":"rgb(41, 82, 91)","--sidebar-toc-section-link-color":"white","--main-heading-text-color":"rgb(41, 82, 91)","--main-heading-link-color":"rgb(41, 82, 91)","--main-link-color":"rgb(233, 114, 110)","--tt-border-radius":"3px","--hoverable-link-hover-color":"#a51e19",rouge_theme:"default"},dark:Object.assign(Object.assign({"--sidebar-bg-color":"rgb(22, 60, 60)","--sidebar-heading-link-color":"rgb(114, 202, 195)","--sidebar-heading-text-color":"rgb(114, 202, 195)","--sidebar-toc-h1-link-color":"rgb(242, 224, 213)","--sidebar-toc-h1-border-color":"rgb(242, 224, 213)","--sidebar-toc-h2-link-color":"white","--sidebar-active-toc-section-bg-color":"rgb(248, 255, 248)","--sidebar-active-toc-section-link-color":"rgb(22, 60, 60)","--sidebar-active-toc-h1-section-link-color":"rgb(22, 60, 60)","--sidebar-active-toc-h2-section-link-color":"rgb(22, 60, 60)","--sidebar-toc-section-link-color":"white","--sidebar-tt-active-text-color":"rgb(22, 60, 60)","--main-heading-text-color":"rgb(79, 205, 196)","--main-heading-link-color":"rgb(79, 205, 196)","--main-link-color":"rgb(233, 114, 110)","--hoverable-link-hover-color":"#fdf3f3","--main-bg-color":"rgb(28, 28, 30)"},_e),{rouge_theme:"monokai"})};var ge={light:{"--sidebar-bg-color":"rgb(242, 243, 243)","--sidebar-heading-text-color":"rgb(58, 58, 58)","--sidebar-heading-link-color":"rgb(58, 58, 58)","--sidebar-border-color":"#555","--sidebar-toc-h1-link-color":"rgb(58, 58, 58)","--sidebar-toc-h1-border-color":"rgb(125, 125, 125)","--sidebar-toc-h2-link-color":"rgb(58, 58, 58)","--sidebar-active-toc-section-bg-color":"rgb(90, 151, 247)","--sidebar-active-toc-section-link-color":"white","--sidebar-active-toc-h1-section-link-color":"white","--sidebar-active-toc-h2-section-link-color":"white","--sidebar-toc-section-link-color":"rgb(58, 58, 58)","--main-heading-text-color":"rgb(137, 135, 205)","--main-heading-link-color":"rgb(137, 135, 205)","--main-link-color":"#ffae66","--hoverable-link-hover-color":"#cc6000","--main-bg-color":"rgb(40, 41, 35)","--main-text-color":"white","--main-table-pre-bg-color":"#f6f8fa","--main-table-pre-text-color":"black","--main-blockquote-text-color":"#ccc","--tt-text-color":"white","--tt-bg-color":"#696969","--tt-border-radius":"3px","--main-header-border-bottom-color":"#555","--primer-spec-callout-info-text-color":"black","--primer-spec-callout-warning-text-color":"black","--primer-spec-callout-danger-text-color":"black","--primer-spec-callout-success-text-color":"black",rouge_theme:"default"},dark:Object.assign(Object.assign({},_e),{"--sidebar-bg-color":"rgb(75, 77, 85)","--sidebar-heading-text-color":"white","--sidebar-heading-link-color":"white","--sidebar-border-color":"#555","--sidebar-toc-h1-link-color":"white","--sidebar-toc-h1-border-color":"rgb(125, 125, 125)","--sidebar-toc-h2-link-color":"white","--sidebar-active-toc-section-bg-color":"rgb(90, 151, 247)","--sidebar-active-toc-section-link-color":"white","--sidebar-active-toc-h1-section-link-color":"white","--sidebar-active-toc-h2-section-link-color":"white","--sidebar-toc-section-link-color":"white","--main-heading-text-color":"rgb(137, 135, 205)","--main-heading-link-color":"rgb(137, 135, 205)","--main-link-color":"#ffae66","--hoverable-link-hover-color":"white","--main-bg-color":"rgb(40, 41, 35)","--main-text-color":"white","--main-table-pre-bg-color":"rgb(40, 41, 35)","--main-table-pre-text-color":"white","--main-table-pre-border":"1px solid rgb(60, 62, 66)","--tt-text-color":"white","--tt-border-radius":"6px","--main-blockquote-text-color":"#999999","--main-header-border-bottom-color":"#555",rouge_theme:"monokai"})},fe={default:Ae("default","Primer",pe),bella:Ae("bella","Bella",me),modern:Ae("modern","Modern",be),"xcode-civic":Ae("xcode-civic","Xcode Civic",ge)};const ve={};window.addEventListener("storage",e=>{if(!e.key)return;const t=ve[e.key];t&&t.forEach(t=>t(e.newValue,e.oldValue))});const we=function(e){let t;try{t=window[e];const o="__storage_test__";return t.setItem(o,o),t.removeItem(o),!0}catch(e){return e instanceof DOMException&&(22===e.code||1014===e.code||"QuotaExceededError"===e.name||"NS_ERROR_DOM_QUOTA_REACHED"===e.name)&&t&&0!==t.length}}("localStorage");var ke={get:e=>we?window.localStorage.getItem(e):null,set(e,t){we&&window.localStorage.setItem(e,t)},getForPage(e){return this.get(ye(e))},setForPage(e,t){return this.set(ye(e),t)},addListener(e,t){ve[e]||(ve[e]=[]),ve[e].push(t)},removeListener(e,t){const o=ve[e];o&&(ve[e]=o.filter(e=>e!==t))},addListenerForPage(e,t){this.addListener(ye(e),t)},removeListenerForPage(e,t){this.removeListener(ye(e),t)}};function ye(e){return`${document.location.pathname}__${e}`}const Se=ke.get("spec_subtheme_name")||window.PrimerSpecConfig.defaultSubthemeName||"default",Ee=ke.get("spec_subtheme_mode")||window.PrimerSpecConfig.defaultSubthemeMode||"system",xe=function(){0;return!!window.PrimerSpecConfig.sitemapEnabled}();var Te={VERSION_RAW:"1.5.0",VERSION_MINOR_STR:"v1.5",BUILD_MODE:"production",HIDE_SIDEBAR_ON_LOAD:function(){const e=ke.getForPage("sidebar_hidden");let t=!1;null!==e?t="true"===e:(t=window.PrimerSpecConfig.hideSidebarOnLoad||window.PrimerSpecConfig.disableSidebar||!1,ke.setForPage("sidebar_hidden",t.toString()));return t}(),DISABLE_SIDEBAR:window.PrimerSpecConfig.disableSidebar||!1,INIT_SUBTHEME_NAME:Se,INIT_SUBTHEME_MODE:Ee,INIT_SITEMAP_ENABLED:xe,SITEMAP_URLS:window.PrimerSpecConfig.sitemapUrls||[],SITEMAP_LABEL:window.PrimerSpecConfig.sitemapLabel||"Supplemental Pages",SITEMAP_SITE_TITLE:window.PrimerSpecConfig.sitemapSiteTitle||"",PRIMER_SPEC_APP_NODE_ID:"primer-spec-app-container",PRIMER_SPEC_CONTENT_PLUGIN_NODE_ID:"primer-spec-plugin-main-content",PRIMER_SPEC_CONTENT_PREACT_NODE_ID:"primer-spec-preact-main-content",SUBTHEME_NAME_STORAGE_KEY:"spec_subtheme_name",SUBTHEME_MODE_STORAGE_KEY:"spec_subtheme_mode",DEFAULT_ACTIVE_SECTION_OFFSET_Y:10};function Ce({name:e,mode:t}={},o=!0){const{name:r,mode:n}={name:Me(),mode:Le()},i=Ne(null!=e?e:r),c=Ie(null!=t?t:n),l=Pe(c);if(o&&function({name:e,mode:t}){ke.set(Te.SUBTHEME_NAME_STORAGE_KEY,e),ke.set(Te.SUBTHEME_MODE_STORAGE_KEY,t)}({name:i,mode:c}),i===r&&l===n&&o)return;const a=fe[i];fe[r].reset(Pe(n)),a.apply(l)}function Me(){const e=ke.get(Te.SUBTHEME_NAME_STORAGE_KEY);return Ne(null!=e?e:Te.INIT_SUBTHEME_NAME)}function Le(){const e=ke.get(Te.SUBTHEME_MODE_STORAGE_KEY);return Ie(null!=e?e:Te.INIT_SUBTHEME_MODE)}function Pe(e){return"system"!==e?e:window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function Ne(e){return e&&fe[e]?e:(console.warn(`Primer Spec: Invalid subtheme name: ${e}. Reverting to 'default'`),fe.default.name)}function Ie(e){switch(e){case"light":case"dark":case"system":return e}return console.warn(`Primer Spec: Invalid subtheme mode: ${e}. Reverting to 'system'`),"system"}function Oe(){const[e,t]=W(!1),o=X(De,[]),r=X(Re,[]);return K(()=>o(()=>t(!0)),[o]),K(()=>r(()=>t(!1)),[r]),e}function De(e){let t;return window.matchMedia&&(t=t=>{t.matches&&e()},window.matchMedia("print").addListener(t)),window.addEventListener("beforeprint",e),()=>{window.matchMedia&&window.matchMedia("print").removeListener(t),window.removeEventListener("beforeprint",e)}}function Re(e){let t;return window.matchMedia&&(t=t=>{t.matches||e()},window.matchMedia("print").addListener(t)),window.addEventListener("afterprint",e),()=>{window.matchMedia&&window.matchMedia("print").removeListener(t),window.removeEventListener("afterprint",e)}}function Be(){return document.documentElement.clientWidth<900}function He(e){var t,o,r="";if("string"==typeof e||"number"==typeof e)r+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t{const t=document.createElement("label");t.innerHTML=e.innerHTML,e.innerHTML="",e.appendChild(t)});const t=[...e.current.querySelectorAll('.task-list-item input.task-list-item-checkbox[type="checkbox"]')];let o=!1;var r;t.length!==function(){const e=ke.getForPage("primer_spec_task_list_count")||"";return parseInt(e,10)||0}()&&(o=!0,r=t.length,ke.setForPage("primer_spec_task_list_count",""+r));let n=!0;const i=()=>{n=!1};ke.addListenerForPage("primer_spec_task_list_count",i);const c=[],l=[];return t.forEach((e,t)=>{e.disabled=!1,o?$e(t,e.checked):e.checked=Fe(t);const r=()=>{n&&$e(t,e.checked)};c.push(r),e.addEventListener("change",r);const i=()=>{n&&(e.checked=Fe(t))};var a,s;l.push(i),a=t,s=i,ke.addListenerForPage("primer_spec_task_list_"+a,s)}),()=>{t.forEach((e,t)=>{var o,r;e.removeEventListener("change",c[t]),o=t,r=l[t],ke.removeListenerForPage("primer_spec_task_list_"+o,r)}),ke.removeListenerForPage("primer_spec_task_list_count",i)}}function Fe(e){return"true"===ke.getForPage("primer_spec_task_list_"+e)}function $e(e,t){ke.setForPage("primer_spec_task_list_"+e,""+t)}function Ye(e){const t=Oe(),o=J(null),r=X(Ue,[e.innerHTML]);return K(()=>r(o),[r]),_("main",{ref:o,id:Te.PRIMER_SPEC_CONTENT_PREACT_NODE_ID,class:je("container-lg","px-3","my-5","markdown-body",{"primer-spec-content-margin-extra":e.sidebarShown&&!e.isSmallScreen&&!t,"primer-spec-content-mobile":e.isSmallScreen}),dangerouslySetInnerHTML:{__html:e.innerHTML}})}function Qe(e){const{theme_definition:t}=e.subtheme,{mode:o}=e,r=`primer-spec-theme-preview-${e.subtheme.name}-${e.mode}`,n=t[o]["--main-bg-color"]||"white",i=t[o]["--sidebar-bg-color"]||"white";return _("svg",{class:r,viewBox:"30.774 27.546 298.133 175.743",xmlns:"http://www.w3.org/2000/svg",style:`background-color: ${n};`,role:"img"},_("defs",null,_("style",null,`.${r} .sidebar-bg{fill:${i};stroke:${i};}`,`.${r} .sidebar-heading{fill:${t[o]["--sidebar-heading-text-color"]||"black"};}`,`.${r} .sidebar-toc-h1-link{fill:${t[o]["--sidebar-toc-h1-link-color"]||"#0366d6"};}`,`.${r} .sidebar-active-toc-section-bg{fill:${t[o]["--sidebar-active-toc-section-bg-color"]||"#faed27"};}`,`.${r} .sidebar-active-toc-section-link{fill:${t[o]["--sidebar-active-toc-section-link-color"]||"black"};}`,`.${r} .sidebar-toc-section-link{fill:${t[o]["--sidebar-toc-section-link-color"]||"black"};}`,`.${r} .sidebar-toc-h1-border-color{fill:${t[o]["--sidebar-toc-h1-border-color"]||"lightgrey"};}`,`.${r} .main-heading-link{fill:${t[o]["--main-heading-link-color"]||"#0366d6"};}`,`.${r} .main-text{fill:${t[o]["--main-text-color"]||"black"};}`,`.${r} .main-header-border-bottom{fill:none;stroke:${t[o]["--main-header-border-bottom-color"]||"#eaecef"};stroke-miterlimit:10;}`,`.${r} .main-link{fill:${t[o]["--main-link-color"]||"#0366d6"};}`,`.${r} .main-table-pre{fill:${t[o]["--main-table-pre-bg-color"]||"#f6f8fa"};stroke:${"light"===o?"none":"rgb(60, 62, 66)"};stroke-width:0.2}`,`.${r} .sidebar-border{fill:none;stroke:${t[o]["--sidebar-border-color"]||"#eaecef"};stroke-miterlimit:10;}`)),_("rect",{class:"sidebar-bg",x:"30.79",y:"27.669",width:"93.85",height:"175.646"}),_("rect",{class:"sidebar-heading",x:"43.588",y:"43.623",width:"41",height:"10.26",rx:"5"}),_("rect",{class:"sidebar-toc-h1-link",x:"43.588",y:"62.993",width:"58",height:"10.26",rx:"5"}),_("path",{class:"sidebar-active-toc-section-bg",d:"M 65.268 81.893 L 124.518 81.893 C 124.518 81.893 124.518 81.893 124.518 81.893 L 124.518 99.893 C 124.518 99.893 124.518 99.893 124.518 99.893 L 65.268 99.893 C 60.435 99.893 56.518 95.976 56.518 91.143 L 56.518 90.633 C 56.523 85.805 60.439 81.893 65.268 81.893 Z"}),_("rect",{class:"sidebar-active-toc-section-link",x:"64.748",y:"85.853",width:"47.77",height:"10.26",rx:"5.13"}),_("rect",{class:"sidebar-toc-section-link",x:"64.438",y:"105.573",width:"48.08",height:"10.26",rx:"5"}),_("rect",{class:"sidebar-toc-section-link",x:"64.438",y:"124.573",width:"48.08",height:"10.26",rx:"5.13"}),_("rect",{class:"sidebar-toc-h1-border-color",x:"-50.518",y:"-135.883",width:"2",height:"55",transform:"matrix(-1, 0, 0, -1, 0, 0)"}),_("rect",{class:"main-heading-link",x:"141.588",y:"43.623",width:"106.93",height:"21.26",rx:"4.49"}),_("rect",{class:"main-text",x:"141.518",y:"80.893",width:"162",height:"6",rx:"3"}),_("line",{class:"main-header-border-bottom",x1:"141.588",y1:"72.623",x2:"306.858",y2:"72.623"}),_("rect",{class:"main-text",x:"141.518",y:"103.893",width:"101",height:"6",rx:"3"}),_("rect",{class:"main-link",x:"245.388",y:"103.623",width:"28.13",height:"6.26",rx:"3.13"}),_("rect",{class:"main-text",x:"276.518",y:"103.623",width:"27",height:"6",rx:"3"}),_("rect",{class:"main-table-pre",x:"141.518",y:"170.893",width:"162",height:"32.424",style:""}),_("circle",{class:"main-text",cx:"144.088",cy:"136.123",r:"2"}),_("circle",{class:"main-text",cx:"144.088",cy:"160.123",r:"2"}),_("circle",{class:"main-text",cx:"144.088",cy:"148.123",r:"2"}),_("rect",{class:"main-link",x:"151.288",y:"133.063",width:"27.23",height:"6",rx:"3"}),_("rect",{class:"main-link",x:"151.288",y:"145.063",width:"27.23",height:"6",rx:"3"}),_("rect",{class:"sidebar-toc-h1-link",x:"43.638",y:"148.663",width:"58",height:"10.26",rx:"5"}),_("rect",{class:"sidebar-toc-h1-border-color",x:"-50.518",y:"-203.281",width:"1.95",height:"36.728",transform:"matrix(-1, 0, 0, -1, 0, 0)",style:""}),_("rect",{class:"sidebar-toc-section-link",x:"64.888",y:"166.803",width:"48.08",height:"10.26",rx:"5"}),_("rect",{class:"sidebar-toc-section-link",x:"64.888",y:"183.803",width:"48.08",height:"10.26",rx:"5.13"}),_("path",{class:"sidebar-toc-section-link",d:"M 65.248 203.3 C 66.2 202.04 67.796 201.283 69.504 201.283 L 107.283 201.283 C 108.94 201.285 110.459 202.119 111.424 203.317",style:""}),_("rect",{class:"main-text",x:"141.518",y:"92.893",width:"162",height:"6",rx:"3"}),_("rect",{class:"main-text",x:"141.518",y:"115.893",width:"162",height:"6",rx:"3"}),_("rect",{class:"main-link",x:"151.398",y:"157.243",width:"27.23",height:"6",rx:"3"}),_("line",{class:"sidebar-border",x1:"124.588",y1:"27.623",x2:"124.588",y2:"203.317",style:""}))}const Ge=[{name:"light",label:"Light"},{name:"dark",label:"Dark"},{name:"system",label:"Sync with OS setting"}];function qe(e){const t=Oe();!function(){const[e,t]=W(window.matchMedia("(prefers-color-scheme: dark)").matches);K(()=>{const e=e=>t(e.matches);return window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",e),()=>{window.matchMedia("(prefers-color-scheme: dark)").removeEventListener("change",e)}},[])}();const o=X(De,[]),r=X(Re,[]);if(K(()=>o(()=>Ce({name:"default",mode:"light"},!1)),[o]),K(()=>r(()=>Ce({name:e.currentSubthemeName,mode:e.currentSubthemeMode},!1)),[r,e.currentSubthemeName,e.currentSubthemeMode]),!e.settingsShown||t)return null;const n=Pe(e.currentSubthemeMode);return _("div",{class:"primer-spec-settings-container position-fixed top-0 left-0 width-full height-full"},_("div",{class:je("primer-spec-settings","container-lg","markdown-body","px-3","my-5",{"primer-spec-content-margin-extra":e.sidebarShown&&!e.isSmallScreen,"primer-spec-content-mobile":e.isSmallScreen})},_("h1",{class:"primer-spec-toc-ignore"},"Spec Theme Settings"),_("h2",null,"Colors"),_("form",{class:"primer-spec-settings-theme-preview-container",onSubmit:e=>e.preventDefault()},Object.values(fe).map(t=>_("label",{class:je("primer-spec-settings-theme-preview-box",{"primer-spec-settings-theme-preview-selected":e.currentSubthemeName===t.name})},_(Qe,{subtheme:t,mode:n}),_("div",{class:je("primer-spec-settings-theme-preview-title",{"primer-spec-settings-theme-preview-selected":e.currentSubthemeName===t.name})},_("input",{type:"radio",value:t.name,name:"primer-spec-settings-subtheme",checked:e.currentSubthemeName===t.name,onChange:t=>e.onSubthemeNameChange(t.target.value)})," ",t.label)))),_("h2",null,"Color mode"),_("form",{onSubmit:e=>e.preventDefault()},Ge.map(t=>_("label",{class:"primer-spec-settings-theme-mode-label"},_("input",{type:"radio",value:t.name,name:"primer-spec-settings-subtheme-mode",checked:e.currentSubthemeMode===t.name,onChange:t=>e.onSubthemeModeChange(t.target.value)})," ",t.label))),_("hr",null),_("p",null,_("small",null,"Does the spec display incorrectly? ",_("a",{href:"https://github.com/eecs485staff/primer-spec/issues"},'Let us know by adding a new "issue" here.'))),_("p",{class:"primer-spec-brand"},_("a",{href:"https://github.com/eecs485staff/primer-spec/",target:"_blank",rel:"noreferrer"},"Primer Spec v"+Te.VERSION_RAW))))}var We;!function(e){e.CLOSE="fas fa-times",e.HOME="fas fa-home",e.SETTINGS="fas fa-cog",e.SIDEBAR="fas fa-bars"}(We||(We={}));var Ke=We;function ze(e){var t;return _("span",{class:"primer-spec-hoverable "+(e.floatRight?"primer-spec-hoverable-float-right":"")},_("a",{href:null!==(t=e.href)&&void 0!==t?t:"#primer-spec-top",class:"primer-spec-hoverable no-print",onClick:e.onClick?t=>{t.preventDefault(),e.onClick&&e.onClick()}:void 0,"aria-label":e.ariaLabel},_("i",{class:e.icon})))}function Je(e){const[t,o]=W(window.scrollY||0);K(()=>{let e=!1;const t=()=>{e||(window.requestAnimationFrame(()=>{o(window.scrollY),e=!1}),e=!0)};return window.addEventListener("scroll",t,{passive:!0}),()=>{window.removeEventListener("scroll",t)}},[]);const r=function(e,t){const o=document.body.querySelector(e);if(!o)throw new Error("Primer Spec: TableOfContents: Main content node could not be found with selector: "+e);const r=[...o.querySelectorAll("h1, h2, h3, h4, h5, h6")].filter(e=>!e.classList.contains("primer-spec-toc-ignore"));let n=r.length-1;for(let e=0;e0){n=e-1;break}}return function(e,t){return _("ul",{class:"primer-spec-toc-list"},function(e,t=-1){if(!e.length)return[];const o=[];let r=1,n={heading:e[0],active:0===t,section:[]};const i=[];for(;rn.heading.tagName?(n.section.push(l),i.push(n),n=l,++r):i.length?n=i.pop():(o.push(n),n=l,++r)}return i.length?o.push(i[0]):o.push(n),o}(e,t).map(e=>function e(t){const o=t.heading,r=function(e){if(e.id&&Xe[e.id])return Xe[e.id];let t=null;try{const o=[];e.childNodes.forEach(e=>{switch(e.nodeType){case Node.TEXT_NODE:o.push(_(m,null,e.nodeValue));break;case Node.ELEMENT_NODE:if(!(e instanceof HTMLElement))throw new Error("getHeadingLabel expected HTML Element");"CODE"!==e.tagName&&"TT"!==e.tagName||o.push(_("code",{class:[...e.classList].join(" ")},e.innerText))}}),t=_(m,null,o)}catch(o){console.error("Primer Spec ToC: Errored while building heading label for heading",e),t=_(m,null,e.innerText)}e.id&&(Xe[e.id]=t);return t}(o);return _("li",null,_("div",{class:je("primer-spec-toc-item primer-spec-toc-"+o.tagName.toLowerCase(),{"primer-spec-toc-active":t.active})},_("a",{href:Ve(o)},r)),_("ul",{class:"primer-spec-toc-section primer-spec-toc-list"},t.section.map(t=>e(t))))}(e)))}(r,n)}(e.contentNodeSelector,e.activeSectionOffsetY);return _("nav",{class:"primer-spec-toc","aria-label":"Page contents"},_("div",{role:"presentation",onClick:()=>{e.isSmallScreen&&e.sidebarShown&&e.onToggleSidebar(),e.settingsShown&&e.onToggleSettings()}},r))}function Ve(e){const t=e.querySelector("a.anchorjs-link");return t?t.getAttribute("href")||"#":(console.error("Primer Spec: getAnchorLink expected heading to contain anchor while populating table of contents."),"#")}const Xe={};function Ze(e){return null==e.sitemap?_("div",{role:"presentation",onClick:()=>!0},e.children):_(m,null,_("details",{role:"navigation","aria-label":Te.SITEMAP_LABEL,open:!e.sitemap.rootPage.current||void 0},_("summary",null,Te.SITEMAP_LABEL),e.sitemap.siteUrls.map(t=>_(et,{page:t},t.current?e.children:void 0))),_("hr",null),_(et,{page:e.sitemap.rootPage,dedent:!0},e.sitemap.rootPage.current?e.children:void 0))}function et(e){const t=e.page.title||function(e){const t=(e=function(e){const t=e.split("/");return t[t.length-1]}(e)).lastIndexOf(".");return-1!==t&&(e=e.slice(0,t)),(e=e.replace(/[-_]/g," ")).replace(/\w\S*/g,(function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()}))}(e.page.path);return e.page.current?_("details",{open:!0,class:e.dedent?"left-space-fix":"primer-spec-toc-sitemap-item"},_("summary",{class:"left-space-fix primer-spec-toc-active"},t),e.children):_("a",{href:e.page.url,tabIndex:-1},_("details",{class:e.dedent?"":"primer-spec-toc-sitemap-item"},_("summary",{role:"link",onClick:t=>{t.preventDefault(),window.location.href=e.page.url}},t)))}function tt(e){const{isSmallScreen:t,sidebarShown:o,onToggleSidebar:r}=e,n=Oe(),i=J(null),c=V(()=>function(e){if(!e)return null;const t=Te.SITEMAP_URLS.filter(e=>!e.path.startsWith("assets"));if(0===t.length)return null;const o=t.findIndex(e=>/^(index|readme)\.(md|htm|html)$/.test(e.path.toLowerCase()));if(-1===o)return console.warn("PrimerSpec: processSitemapURLs: Expected to find a root page. Disabling sitemap."),null;const[r]=t.splice(o,1);return r.title=Te.SITEMAP_SITE_TITLE,{rootPage:r,siteUrls:t}}(e.sitemapEnabled),[e.sitemapEnabled]),l=X(()=>{(null==i?void 0:i.current)&&ot(i.current.scrollTop),r()},[r]);return K(()=>{const e=e=>{const t=null==e?void 0:e.target;t&&!t.matches(".primer-spec-sidebar, .primer-spec-sidebar *")&&document.body.contains(t)&&o&&l()};return t&&window.addEventListener("click",e),()=>{window.removeEventListener("click",e)}},[t,o,l]),z(()=>{const e=function(){const e=parseInt(ke.getForPage("primer_spec_sidebar_scroll_position")||"",10);return Number.isNaN(e)?null:e}();e&&(null==i?void 0:i.current)&&(i.current.scrollTop=e,ot(null))}),!e.sidebarShown||n?_("div",null):_("aside",{ref:i,class:"primer-spec-sidebar position-fixed top-0 py-5 no-print","aria-label":"Contents Sidebar",tabIndex:-1},_("h2",{class:"primer-spec-toc-ignore",id:"primer-spec-toc-contents"},null==c?void 0:_(m,null,_(ze,{icon:Ke.HOME,href:c.rootPage.url,ariaLabel:c.rootPage.title||"Home"})," "),"Contents",_(ze,{icon:Ke.SIDEBAR,floatRight:!0,onClick:l,ariaLabel:"Close navigation pane"})),_("br",null),_(Ze,{sitemap:c},_(Je,{contentNodeSelector:e.contentNodeSelector,isSmallScreen:e.isSmallScreen,sidebarShown:e.sidebarShown,settingsShown:e.settingsShown,activeSectionOffsetY:e.activeSectionOffsetY,onToggleSidebar:l,onToggleSettings:e.onToggleSettings})))}function ot(e){ke.setForPage("primer_spec_sidebar_scroll_position",""+e)}function rt(e){const t=J(null),{isSmallScreen:o,onActiveSectionOffsetChange:r}=e;z(()=>{o?t.current&&r(t.current.getBoundingClientRect().height):r(20)},[o,r]);let n=null;e.showSidebarToggle&&(n=e.sidebarShown?null:_("div",{class:"primer-spec-sidebar-toggle-fixed primer-spec-float-left"},_(ze,{icon:Ke.SIDEBAR,onClick:e.onToggleSidebar,ariaLabel:"Open navigation pane"})));let i=null;return e.showSettingsToggle&&(i=_("div",{class:"primer-spec-settings-toggle primer-spec-float-right"},_(ze,{icon:e.settingsShown?Ke.CLOSE:Ke.SETTINGS,onClick:e.onToggleSettings,ariaLabel:e.settingsShown?"Close settings pane":"Open settings pane"}))),_("header",{ref:t,class:je("primer-spec-topbar","position-fixed","width-full","top-0","left-0","py-2","no-print",{"primer-spec-topbar-mobile":e.isSmallScreen,"primer-spec-topbar-settings-shown":e.settingsShown})},n,i)}function nt(e){const t=function(){const[e,t]=W(Be());return z(()=>{const o=()=>{const o=Be();o!==e&&t(o)};return window.addEventListener("resize",o),()=>{window.removeEventListener("resize",o)}},[e]),e}(),[o,r]=W(!Te.HIDE_SIDEBAR_ON_LOAD&&!t),[n,i]=W(!1),[c,l]=W(Te.DEFAULT_ACTIVE_SECTION_OFFSET_Y),[a,s]=W(Te.INIT_SUBTHEME_NAME),[d,h]=W(Te.INIT_SUBTHEME_MODE),[u,A]=W(Te.INIT_SITEMAP_ENABLED),p=()=>{ke.setForPage("sidebar_hidden",o.toString()),r(!o)},b=()=>i(!n),g=e=>{Ce(e),s(Me()),h(Le())},f=X(De,[]),v=X(Re,[]);K(()=>f(()=>{it(!1)}),[f]),K(()=>v(()=>{it(!0)}),[v]),K(()=>{window.Debug=Object.freeze({toggleSitemap:()=>A(!u)})},[u]);const w=Te.DISABLE_SIDEBAR?null:_(tt,{contentNodeSelector:"#"+Te.PRIMER_SPEC_CONTENT_PREACT_NODE_ID,isSmallScreen:t,sidebarShown:o,settingsShown:n,activeSectionOffsetY:c,sitemapEnabled:u,onToggleSidebar:p,onToggleSettings:b});return _(m,null,_(rt,{isSmallScreen:t,showSidebarToggle:!Te.DISABLE_SIDEBAR,showSettingsToggle:!0,sidebarShown:o,settingsShown:n,onActiveSectionOffsetChange:l,onToggleSidebar:p,onToggleSettings:b}),_(Ye,{innerHTML:e.contentHTML,isSmallScreen:t,sidebarShown:o}),w,_(qe,{isSmallScreen:t,sidebarShown:o,settingsShown:n,currentSubthemeName:a,currentSubthemeMode:d,onSubthemeNameChange:e=>g({name:e}),onSubthemeModeChange:e=>g({mode:e})}))}function it(e){const t=function(){const e=navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);return!!e&&parseInt(e[2],10)}();if(!1===t||t>=82)return;const o=e?"italic":"inherit",r=document.querySelectorAll("em, dfn, .text-italic, dt, .highlight .cm, .highlight .c1, .highlight .cs, .highlight .cd, .highlight .ge, .primer-spec-toc-h4");Array.from(r).map(e=>{e.style.fontStyle=o})}!function(){const e=new a;e.add("h1"),e.add();const t=document.getElementById(Te.PRIMER_SPEC_CONTENT_PLUGIN_NODE_ID),o=document.getElementById(Te.PRIMER_SPEC_APP_NODE_ID);if(!t||"DIV"!==t.tagName||!o||"DIV"!==o.tagName)throw new Error("Primer Spec: This page included the Primer Spec plugin script, but was not compatible with the plugin!");const r=t.innerHTML;t.remove(),function(e,t,o){const r=document.createElement("link");r.rel="stylesheet",r.href=e,t&&(r.integrity=t),o&&(r.crossOrigin=o),document.head.appendChild(r)}("https://use.fontawesome.com/releases/v5.7.2/css/all.css","sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr","anonymous"),Ce({name:Te.INIT_SUBTHEME_NAME,mode:Te.INIT_SUBTHEME_MODE},!1),window.matchMedia("(prefers-color-scheme: dark)").addListener(()=>Ce()),D(_(nt,{contentHTML:r}),o),console.info("\nThis page is formatted using %cPrimer Spec.%c\n\nWould you like to contribute to the theme? Check out:\nhttps://github.com/eecs485staff/primer-spec\n","font-weight: bolder;","")}()}]); +!function(e){var t={};function o(r){if(t[r])return t[r].exports;var n=t[r]={i:r,l:!1,exports:{}};return e[r].call(n.exports,n,n.exports,o),n.l=!0,n.exports}o.m=e,o.c=t,o.d=function(e,t,r){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(o.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)o.d(r,n,function(t){return e[t]}.bind(null,n));return r},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=1)}([function(e,t,o){var r,n,i;!function(o,c){"use strict";n=[],void 0===(i="function"==typeof(r=function(){return function(e){function t(e){e.icon=Object.prototype.hasOwnProperty.call(e,"icon")?e.icon:"",e.visible=Object.prototype.hasOwnProperty.call(e,"visible")?e.visible:"hover",e.placement=Object.prototype.hasOwnProperty.call(e,"placement")?e.placement:"right",e.ariaLabel=Object.prototype.hasOwnProperty.call(e,"ariaLabel")?e.ariaLabel:"Anchor",e.class=Object.prototype.hasOwnProperty.call(e,"class")?e.class:"",e.base=Object.prototype.hasOwnProperty.call(e,"base")?e.base:"",e.truncate=Object.prototype.hasOwnProperty.call(e,"truncate")?Math.floor(e.truncate):64,e.titleText=Object.prototype.hasOwnProperty.call(e,"titleText")?e.titleText:""}function o(e){var t;if("string"==typeof e||e instanceof String)t=[].slice.call(document.querySelectorAll(e));else{if(!(Array.isArray(e)||e instanceof NodeList))throw new TypeError("The selector provided to AnchorJS was invalid.");t=[].slice.call(e)}return t}this.options=e||{},this.elements=[],t(this.options),this.isTouchDevice=function(){return Boolean("ontouchstart"in window||window.TouchEvent||window.DocumentTouch&&document instanceof DocumentTouch)},this.add=function(e){var r,n,i,c,l,a,s,d,u,h,A,_,p=[];if(t(this.options),"touch"===(A=this.options.visible)&&(A=this.isTouchDevice()?"always":"hover"),e||(e="h2, h3, h4, h5, h6"),0===(r=o(e)).length)return this;for(function(){if(null!==document.head.querySelector("style.anchorjs"))return;var e,t=document.createElement("style");t.className="anchorjs",t.appendChild(document.createTextNode("")),void 0===(e=document.head.querySelector('[rel="stylesheet"],style'))?document.head.appendChild(t):document.head.insertBefore(t,e);t.sheet.insertRule(".anchorjs-link{opacity:0;text-decoration:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}",t.sheet.cssRules.length),t.sheet.insertRule(":hover>.anchorjs-link,.anchorjs-link:focus{opacity:1}",t.sheet.cssRules.length),t.sheet.insertRule("[data-anchorjs-icon]::after{content:attr(data-anchorjs-icon)}",t.sheet.cssRules.length),t.sheet.insertRule('@font-face{font-family:anchorjs-icons;src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype")}',t.sheet.cssRules.length)}(),n=document.querySelectorAll("[id]"),i=[].map.call(n,(function(e){return e.id})),l=0;l\]./()*\\\n\t\b\v\u00A0]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(e){var t=e.firstChild&&(" "+e.firstChild.className+" ").indexOf(" anchorjs-link ")>-1,o=e.lastChild&&(" "+e.lastChild.className+" ").indexOf(" anchorjs-link ")>-1;return t||o||!1}}})?r.apply(t,n):r)||(e.exports=i)}()},function(e,t,o){"use strict";o.r(t);var r,n,i,c,l,a=o(0),s={},d=[],u=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function h(e,t){for(var o in t)e[o]=t[o];return e}function A(e){var t=e.parentNode;t&&t.removeChild(e)}function _(e,t,o){var r,n,i,c=arguments,l={};for(i in t)"key"==i?r=t[i]:"ref"==i?n=t[i]:l[i]=t[i];if(arguments.length>3)for(o=[o],i=3;i1&&C(n,t,o),t=y(o,n,n,e.__k,null,n.__e,t),"function"==typeof e.type&&(e.__d=t)))}function M(e,t,o,n,i,c,l,a,s){var d,u,A,_,p,g,f,v,w,y,S,E=t.type;if(void 0!==t.constructor)return null;null!=o.__h&&(s=o.__h,a=t.__e=o.__e,t.__h=null,c=[a]),(d=r.__b)&&d(t);try{e:if("function"==typeof E){if(v=t.props,w=(d=E.contextType)&&n[d.__c],y=d?w?w.props.value:d.__:n,o.__c?f=(u=t.__c=o.__c).__=u.__E:("prototype"in E&&E.prototype.render?t.__c=u=new E(v,y):(t.__c=u=new b(v,y),u.constructor=E,u.render=O),w&&w.sub(u),u.props=v,u.state||(u.state={}),u.context=y,u.__n=n,A=u.__d=!0,u.__h=[]),null==u.__s&&(u.__s=u.state),null!=E.getDerivedStateFromProps&&(u.__s==u.state&&(u.__s=h({},u.__s)),h(u.__s,E.getDerivedStateFromProps(v,u.__s))),_=u.props,p=u.state,A)null==E.getDerivedStateFromProps&&null!=u.componentWillMount&&u.componentWillMount(),null!=u.componentDidMount&&u.__h.push(u.componentDidMount);else{if(null==E.getDerivedStateFromProps&&v!==_&&null!=u.componentWillReceiveProps&&u.componentWillReceiveProps(v,y),!u.__e&&null!=u.shouldComponentUpdate&&!1===u.shouldComponentUpdate(v,u.__s,y)||t.__v===o.__v){u.props=v,u.state=u.__s,t.__v!==o.__v&&(u.__d=!1),u.__v=t,t.__e=o.__e,t.__k=o.__k,u.__h.length&&l.push(u),C(t,a,e);break e}null!=u.componentWillUpdate&&u.componentWillUpdate(v,u.__s,y),null!=u.componentDidUpdate&&u.__h.push((function(){u.componentDidUpdate(_,p,g)}))}u.context=y,u.props=v,u.state=u.__s,(d=r.__r)&&d(t),u.__d=!1,u.__v=t,u.__P=e,d=u.render(u.props,u.state,u.context),u.state=u.__s,null!=u.getChildContext&&(n=h(h({},n),u.getChildContext())),A||null==u.getSnapshotBeforeUpdate||(g=u.getSnapshotBeforeUpdate(_,p)),S=null!=d&&d.type==m&&null==d.key?d.props.children:d,k(e,Array.isArray(S)?S:[S],t,o,n,i,c,l,a,s),u.base=t.__e,t.__h=null,u.__h.length&&l.push(u),f&&(u.__E=u.__=null),u.__e=!1}else null==c&&t.__v===o.__v?(t.__k=o.__k,t.__e=o.__e):t.__e=P(o.__e,t,o,n,i,c,l,s);(d=r.diffed)&&d(t)}catch(e){t.__v=null,(s||null!=c)&&(t.__e=a,t.__h=!!s,c[c.indexOf(a)]=null),r.__e(e,t,o)}return t.__e}function L(e,t){r.__c&&r.__c(t,e),e.some((function(t){try{e=t.__h,t.__h=[],e.some((function(e){e.call(t)}))}catch(e){r.__e(e,t.__v)}}))}function P(e,t,o,r,n,i,c,l){var a,u,h,A,_,p=o.props,m=t.props;if(n="svg"===t.type||n,null!=i)for(a=0;a=o.__.length&&o.__.push({}),o.__[e]}function W(e){return j=1,function(e,t,o){var r=q(R++,2);return r.t=e,r.__c||(r.__=[o?o(t):ne(void 0,t),function(e){var t=r.t(r.__[0],e);r.__[0]!==t&&(r.__=[t,r.__[1]],r.__c.setState({}))}],r.__c=B),r.__}(ne,e)}function K(e,t){var o=q(R++,3);!r.__s&&re(o.__H,t)&&(o.__=e,o.__H=t,B.__H.__h.push(o))}function z(e,t){var o=q(R++,4);!r.__s&&re(o.__H,t)&&(o.__=e,o.__H=t,B.__h.push(o))}function J(e){return j=5,V((function(){return{current:e}}),[])}function V(e,t){var o=q(R++,7);return re(o.__H,t)&&(o.__=e(),o.__H=t,o.__h=e),o.__}function X(e,t){return j=8,V((function(){return e}),t)}function Z(){U.forEach((function(e){if(e.__P)try{e.__H.__h.forEach(te),e.__H.__h.forEach(oe),e.__H.__h=[]}catch(t){e.__H.__h=[],r.__e(t,e.__v)}})),U=[]}r.__b=function(e){B=null,F&&F(e)},r.__r=function(e){$&&$(e),R=0;var t=(B=e.__c).__H;t&&(t.__h.forEach(te),t.__h.forEach(oe),t.__h=[])},r.diffed=function(e){Y&&Y(e);var t=e.__c;t&&t.__H&&t.__H.__h.length&&(1!==U.push(t)&&H===r.requestAnimationFrame||((H=r.requestAnimationFrame)||function(e){var t,o=function(){clearTimeout(r),ee&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(o,100);ee&&(t=requestAnimationFrame(o))})(Z)),B=void 0},r.__c=function(e,t){t.some((function(e){try{e.__h.forEach(te),e.__h=e.__h.filter((function(e){return!e.__||oe(e)}))}catch(o){t.some((function(e){e.__h&&(e.__h=[])})),t=[],r.__e(o,e.__v)}})),Q&&Q(e,t)},r.unmount=function(e){G&&G(e);var t=e.__c;if(t&&t.__H)try{t.__H.__.forEach(te)}catch(e){r.__e(e,t.__v)}};var ee="function"==typeof requestAnimationFrame;function te(e){var t=B;"function"==typeof e.__c&&e.__c(),B=t}function oe(e){var t=B;e.__c=e.__(),B=t}function re(e,t){return!e||e.length!==t.length||t.some((function(t,o){return t!==e[o]}))}function ne(e,t){return"function"==typeof t?t(e):t}const ie=["--sidebar-bg-color","--sidebar-border-color","--sidebar-heading-text-color","--sidebar-heading-link-color","--sidebar-toc-h1-link-color","--sidebar-toc-h1-border-color","--sidebar-toc-h2-link-color","--sidebar-active-toc-section-bg-color","--sidebar-active-toc-section-link-color","--sidebar-active-toc-h1-section-link-color","--sidebar-active-toc-h2-section-link-color","--sidebar-toc-section-link-color","--sidebar-tt-active-text-color","--sidebar-tt-active-bg-color","--sidebar-tt-active-border","--sidebar-tt-active-border-radius","--main-heading-text-color","--main-heading-link-color","--main-link-color","--hoverable-link-hover-color","--tt-text-color","--tt-bg-color","--tt-border","--tt-border-radius","--main-bg-color","--main-text-color","--main-table-pre-bg-color","--main-table-pre-text-color","--main-table-pre-border","--main-blockquote-text-color","--main-blockquote-text-border","--main-header-border-bottom-color","--primer-spec-callout-neutral-bg-color","--primer-spec-callout-neutral-text-color","--primer-spec-callout-neutral-border-color","--primer-spec-callout-info-bg-color","--primer-spec-callout-info-text-color","--primer-spec-callout-info-border-color","--primer-spec-callout-warning-bg-color","--primer-spec-callout-warning-text-color","--primer-spec-callout-warning-border-color","--primer-spec-callout-danger-bg-color","--primer-spec-callout-danger-text-color","--primer-spec-callout-danger-border-color","--primer-spec-callout-success-bg-color","--primer-spec-callout-success-text-color","--primer-spec-callout-success-border-color"],ce=["color","background-color","font-style","font-weight"],le=["cm","cp","c1","cs","cd","c","err","gd","ge","gr","gh","gi","go","gp","gs","gu","gt","kc","kd","kn","kp","kr","kt","kv","k","mf","mh","il","mi","mo","mb","mx","m","sb","sc","sd","s2","se","sh","si","sx","sr","s1","ss","s","na","bp","nb","nc","no","nd","ni","ne","nf","nl","nn","nt","nx","vc","vg","vi","nv","ow","o","w","txt"];function ae(){const e=document.documentElement;le.map(t=>{ce.map(o=>{const r=`--primer-spec-rouge-${t}-${o}`;e.style.removeProperty(r)})})}function se(e,t){return{name:e,apply:()=>function(e){const t=document.documentElement;le.map(o=>{if(e[o])for(const[r,n]of Object.entries(e[o])){const e=`--primer-spec-rouge-${o}-${r}`;t.style.setProperty(e,null!=n?n:null)}})}(t),reset:ae}}const de="#ffffff";var ue={cm:{color:"#868064"},cp:{color:"#aaaaaa"},c1:{color:"#868064"},cs:{color:"#868064"},cd:{color:"#868064"},c:{color:"#868064"},err:{color:"#960050"},gd:{color:"#49483e"},ge:{color:"#aaaaaa","font-style":"italic"},gr:{color:"#960050"},gh:{color:"#999999"},gi:{color:"#49483e"},go:{color:"#999999"},gp:{color:"#999999"},gs:{"font-weight":"bold"},gu:{color:"#aaaaaa"},gt:{color:"#960050"},kc:{color:"#66d9ef"},kd:{color:"#66d9ef","font-style":"italic"},kn:{color:"#f92672"},kp:{color:"#f92672"},kr:{color:"#66d9ef"},kt:{color:"#66d9ef","font-style":"italic"},kv:{color:"#f92672"},k:{color:"#f92672"},mf:{color:"#ae81ff"},mh:{color:"#ae81ff"},il:{color:"#ae81ff"},mi:{color:"#ae81ff"},mo:{color:"#ae81ff"},mb:{color:"#ae81ff"},mx:{color:"#ae81ff"},m:{color:"#ae81ff"},sb:{color:"#e6db74"},sc:{color:"#ae81ff"},sd:{color:"#e6db74"},s2:{color:"#e6db74"},se:{color:"#ae81ff"},sh:{color:"#e6db74"},si:{color:"#e6db74"},sx:{color:"#e6db74"},sr:{color:"#f6aa11"},s1:{color:"#e6db74"},ss:{color:"#ae81ff"},s:{color:"#e6db74"},na:{color:"#a6e22e"},bp:{color:de},nb:{color:"#f6aa11"},nc:{color:"#a6e22e"},no:{color:"#66d9ef"},nd:{color:"#a6e22e"},ni:{color:de},ne:{color:"#a6e22e"},nf:{color:"#a6e22e"},nl:{color:de},nn:{color:de},nt:{color:"#f92672"},nx:{color:de},vc:{color:de},vg:{color:de},vi:{color:de},nv:{color:de},ow:{color:"#f92672"},o:{color:de},w:{color:de},txt:{color:de,"background-color":"rgb(35, 37, 41)"}};var he={default:se("default",{cm:{color:"#999988","font-style":"italic"},cp:{color:"#999999","font-weight":"bold"},c1:{color:"#999988","font-style":"italic"},cs:{color:"#999999","font-weight":"bold","font-style":"italic"},cd:{color:"#999988","font-style":"italic"},c:{color:"#999988","font-style":"italic"},err:{color:"#a61717","background-color":"#e3d2d2"},gd:{color:"#000000","background-color":"#ffdddd"},ge:{color:"#000000","font-style":"italic"},gr:{color:"#aa0000"},gh:{color:"#999999"},gi:{color:"#000000","background-color":"#ddffdd"},go:{color:"#888888"},gp:{color:"#555555"},gs:{"font-weight":"bold"},gu:{color:"#aaaaaa"},gt:{color:"#aa0000"},kc:{color:"#000000","font-weight":"bold"},kd:{color:"#000000","font-weight":" bold"},kn:{color:"#000000","font-weight":"bold"},kp:{color:"#000000","font-weight":"bold"},kr:{color:"#000000","font-weight":"bold"},kt:{color:"#445588","font-weight":"bold"},kv:{color:"#000000","font-weight":"bold"},k:{color:"#000000","font-weight":"bold"},mf:{color:"#009999"},mh:{color:"#009999"},il:{color:"#009999"},mi:{color:"#009999"},mo:{color:"#009999"},mb:{color:"#009999"},mx:{color:"#009999"},m:{color:"#009999"},sb:{color:"#d14"},sc:{color:"#d14"},sd:{color:"#d14"},s2:{color:"#d14"},se:{color:"#d14"},sh:{color:"#d14"},si:{color:"#d14"},sx:{color:"#d14"},sr:{color:"#009926"},s1:{color:"#d14"},ss:{color:"#990073"},s:{color:"#d14"},na:{color:"#008080"},bp:{color:"#999999"},nb:{color:"#0086B3"},nc:{color:"#445588","font-weight":"bold"},no:{color:"#008080"},nd:{color:"#3c5d5d","font-weight":"bold"},ni:{color:"#800080"},ne:{color:"#990000","font-weight":"bold"},nf:{color:"#990000","font-weight":"bold"},nl:{color:"#990000","font-weight":"bold"},nn:{color:"#555555"},nt:{color:"#000080"},nx:{color:"#000000"},vc:{color:"#008080"},vg:{color:"#008080"},vi:{color:"#008080"},nv:{color:"#008080"},ow:{color:"#000000","font-weight":"bold"},o:{color:"#000000","font-weight":"bold"},w:{color:"#bbbbbb"},txt:{"background-color":"#f8f8f8"}}),monokai:se("monokai",ue)};function Ae(e,t,o){return{name:e,label:t,theme_definition:o,apply:e=>function(e,t){const o=e[t],r=document.body;for(const[e,t]of Object.entries(o))r.style.setProperty(e,t||null);let n=o.rouge_theme;n&&he[n]||(n="default"),he[n].apply()}(o,e),reset:e=>function(e,t){const o=e[t],r=document.body;ie.map(e=>{r.style.removeProperty(e)}),o.rouge_theme&&he[o.rouge_theme]&&he[o.rouge_theme].reset()}(o,e)}}var _e={"--sidebar-border-color":"#21262d","--main-text-color":"#c9d1d9","--main-table-pre-bg-color":"#161b22","--main-table-pre-text-color":"white","--main-table-pre-border":"1px solid rgb(60, 62, 66)","--tt-bg-color":"rgba(240, 246, 252, 0.15)","--tt-text-color":"#c9d1d9","--tt-border-radius":"6px","--sidebar-tt-active-bg-color":"rgba(0, 0, 0, 0)","--main-blockquote-text-color":"#8b949e","--main-blockquote-text-border":"#3b434b","--main-header-border-bottom-color":"#21262d","--primer-spec-callout-neutral-bg-color":"rgba(22, 27, 34, 0.8)","--primer-spec-callout-neutral-text-color":"#c9d1d9","--primer-spec-callout-neutral-border-color":"rgb(48, 54, 61)","--primer-spec-callout-info-bg-color":"rgba(56, 139, 253, 0.1)","--primer-spec-callout-info-text-color":"#79c0ff","--primer-spec-callout-info-border-color":"rgba(56, 139, 253, 0.4)","--primer-spec-callout-warning-bg-color":"rgba(187, 128, 9, 0.1)","--primer-spec-callout-warning-text-color":"#e3b341","--primer-spec-callout-warning-border-color":"rgba(187, 128, 9, 0.4)","--primer-spec-callout-danger-bg-color":"rgba(248, 81, 73, 0.1)","--primer-spec-callout-danger-text-color":"#ff7b72","--primer-spec-callout-danger-border-color":"rgba(248, 81, 73, 0.4)","--primer-spec-callout-success-bg-color":"rgba(46, 160, 67, 0.1)","--primer-spec-callout-success-text-color":"#56d364","--primer-spec-callout-success-border-color":"rgba(46, 160, 67, 0.4)"};var pe={light:{rouge_theme:"default"},dark:Object.assign(Object.assign({"--sidebar-bg-color":"#0d1117","--sidebar-heading-text-color":"#cccccc","--sidebar-heading-link-color":"#cccccc","--sidebar-toc-h1-link-color":"#58a6ff","--sidebar-toc-h1-border-color":"#555","--sidebar-toc-h2-link-color":"#58a6ff","--sidebar-active-toc-section-bg-color":"#e4d93f","--sidebar-active-toc-section-link-color":"#0d1117","--sidebar-active-toc-h1-section-link-color":"#0d1117","--sidebar-active-toc-h2-section-link-color":"#0d1117","--sidebar-toc-section-link-color":"#cccccc","--sidebar-tt-active-text-color":"#0d1117","--main-heading-text-color":"#e7ebee","--main-heading-link-color":"#58a6ff","--main-link-color":"#58a6ff","--hoverable-link-hover-color":"#9dd2fb","--main-bg-color":"#0d1117"},_e),{rouge_theme:"monokai"})};var me={light:{"--sidebar-bg-color":"rgb(246, 246, 246)","--sidebar-heading-text-color":"rgb(69, 98, 115)","--sidebar-heading-link-color":"rgb(219, 71, 93)","--sidebar-toc-h1-link-color":"rgb(69, 98, 115)","--sidebar-toc-h1-border-color":"rgb(69, 98, 115)","--sidebar-toc-h2-link-color":"rgb(69, 98, 115)","--sidebar-active-toc-section-bg-color":"rgb(69, 98, 115)","--sidebar-active-toc-section-link-color":"white","--sidebar-active-toc-h1-section-link-color":"white","--sidebar-active-toc-h2-section-link-color":"white","--sidebar-toc-section-link-color":"rgb(58, 58, 58)","--main-heading-text-color":"rgb(69, 98, 115)","--main-heading-link-color":"rgb(219, 71, 93)","--main-link-color":"rgb(219, 71, 93)","--tt-border-radius":"3px","--hoverable-link-hover-color":"#731624",rouge_theme:"default"},dark:Object.assign(Object.assign({"--sidebar-bg-color":"rgb(58, 58, 60)","--sidebar-heading-text-color":"white","--sidebar-heading-link-color":"white","--sidebar-toc-h1-link-color":"#61a1a8","--sidebar-toc-h1-border-color":"#61a1a8","--sidebar-toc-h2-link-color":"white","--sidebar-active-toc-section-bg-color":"rgb(67, 116, 121)","--sidebar-active-toc-section-link-color":"white","--sidebar-active-toc-h1-section-link-color":"white","--sidebar-active-toc-h2-section-link-color":"white","--sidebar-toc-section-link-color":"white","--sidebar-tt-active-text-color":"white","--main-heading-text-color":"#61a1a8","--main-heading-link-color":"rgb(218, 128, 131)","--main-link-color":"rgb(218, 128, 131)","--hoverable-link-hover-color":"#fdf6f7","--main-bg-color":"rgb(28, 28, 30)"},_e),{rouge_theme:"monokai"})};var be={light:{"--sidebar-bg-color":"rgb(41, 82, 91)","--sidebar-heading-text-color":"rgb(114, 202, 195)","--sidebar-heading-link-color":"rgb(114, 202, 195)","--sidebar-toc-h1-link-color":"rgb(229, 214, 204)","--sidebar-toc-h1-border-color":"rgb(229, 214, 204)","--sidebar-toc-h2-link-color":"white","--sidebar-active-toc-section-bg-color":"rgb(248, 255, 248)","--sidebar-active-toc-section-link-color":"rgb(41, 82, 91)","--sidebar-active-toc-h1-section-link-color":"rgb(41, 82, 91)","--sidebar-active-toc-h2-section-link-color":"rgb(41, 82, 91)","--sidebar-toc-section-link-color":"white","--main-heading-text-color":"rgb(41, 82, 91)","--main-heading-link-color":"rgb(41, 82, 91)","--main-link-color":"rgb(233, 114, 110)","--tt-border-radius":"3px","--hoverable-link-hover-color":"#a51e19",rouge_theme:"default"},dark:Object.assign(Object.assign({"--sidebar-bg-color":"rgb(22, 60, 60)","--sidebar-heading-link-color":"rgb(114, 202, 195)","--sidebar-heading-text-color":"rgb(114, 202, 195)","--sidebar-toc-h1-link-color":"rgb(242, 224, 213)","--sidebar-toc-h1-border-color":"rgb(242, 224, 213)","--sidebar-toc-h2-link-color":"white","--sidebar-active-toc-section-bg-color":"rgb(248, 255, 248)","--sidebar-active-toc-section-link-color":"rgb(22, 60, 60)","--sidebar-active-toc-h1-section-link-color":"rgb(22, 60, 60)","--sidebar-active-toc-h2-section-link-color":"rgb(22, 60, 60)","--sidebar-toc-section-link-color":"white","--sidebar-tt-active-text-color":"rgb(22, 60, 60)","--main-heading-text-color":"rgb(79, 205, 196)","--main-heading-link-color":"rgb(79, 205, 196)","--main-link-color":"rgb(233, 114, 110)","--hoverable-link-hover-color":"#fdf3f3","--main-bg-color":"rgb(28, 28, 30)"},_e),{rouge_theme:"monokai"})};var ge={light:{"--sidebar-bg-color":"rgb(242, 243, 243)","--sidebar-heading-text-color":"rgb(58, 58, 58)","--sidebar-heading-link-color":"rgb(58, 58, 58)","--sidebar-border-color":"#555","--sidebar-toc-h1-link-color":"rgb(58, 58, 58)","--sidebar-toc-h1-border-color":"rgb(125, 125, 125)","--sidebar-toc-h2-link-color":"rgb(58, 58, 58)","--sidebar-active-toc-section-bg-color":"rgb(90, 151, 247)","--sidebar-active-toc-section-link-color":"white","--sidebar-active-toc-h1-section-link-color":"white","--sidebar-active-toc-h2-section-link-color":"white","--sidebar-toc-section-link-color":"rgb(58, 58, 58)","--main-heading-text-color":"rgb(137, 135, 205)","--main-heading-link-color":"rgb(137, 135, 205)","--main-link-color":"#ffae66","--hoverable-link-hover-color":"#cc6000","--main-bg-color":"rgb(40, 41, 35)","--main-text-color":"white","--main-table-pre-bg-color":"#f6f8fa","--main-table-pre-text-color":"black","--main-blockquote-text-color":"#ccc","--tt-text-color":"white","--tt-bg-color":"#696969","--tt-border-radius":"3px","--main-header-border-bottom-color":"#555","--primer-spec-callout-neutral-text-color":"black","--primer-spec-callout-info-text-color":"black","--primer-spec-callout-warning-text-color":"black","--primer-spec-callout-danger-text-color":"black","--primer-spec-callout-success-text-color":"black",rouge_theme:"default"},dark:Object.assign(Object.assign({},_e),{"--sidebar-bg-color":"rgb(75, 77, 85)","--sidebar-heading-text-color":"white","--sidebar-heading-link-color":"white","--sidebar-border-color":"#555","--sidebar-toc-h1-link-color":"white","--sidebar-toc-h1-border-color":"rgb(125, 125, 125)","--sidebar-toc-h2-link-color":"white","--sidebar-active-toc-section-bg-color":"rgb(90, 151, 247)","--sidebar-active-toc-section-link-color":"white","--sidebar-active-toc-h1-section-link-color":"white","--sidebar-active-toc-h2-section-link-color":"white","--sidebar-toc-section-link-color":"white","--main-heading-text-color":"rgb(137, 135, 205)","--main-heading-link-color":"rgb(137, 135, 205)","--main-link-color":"#ffae66","--hoverable-link-hover-color":"white","--main-bg-color":"rgb(40, 41, 35)","--main-text-color":"white","--main-table-pre-bg-color":"rgb(40, 41, 35)","--main-table-pre-text-color":"white","--main-table-pre-border":"1px solid rgb(60, 62, 66)","--tt-text-color":"white","--tt-border-radius":"6px","--main-blockquote-text-color":"#999999","--main-header-border-bottom-color":"#555",rouge_theme:"monokai"})},fe={default:Ae("default","Primer",pe),bella:Ae("bella","Bella",me),modern:Ae("modern","Modern",be),"xcode-civic":Ae("xcode-civic","Xcode Civic",ge)};const ve={};window.addEventListener("storage",e=>{if(!e.key)return;const t=ve[e.key];t&&t.forEach(t=>t(e.newValue,e.oldValue))});const we=function(e){let t;try{t=window[e];const o="__storage_test__";return t.setItem(o,o),t.removeItem(o),!0}catch(e){return e instanceof DOMException&&(22===e.code||1014===e.code||"QuotaExceededError"===e.name||"NS_ERROR_DOM_QUOTA_REACHED"===e.name)&&t&&0!==t.length}}("localStorage");var ke={get:e=>we?window.localStorage.getItem(e):null,set(e,t){we&&window.localStorage.setItem(e,t)},getForPage(e){return this.get(ye(e))},setForPage(e,t){return this.set(ye(e),t)},addListener(e,t){ve[e]||(ve[e]=[]),ve[e].push(t)},removeListener(e,t){const o=ve[e];o&&(ve[e]=o.filter(e=>e!==t))},addListenerForPage(e,t){this.addListener(ye(e),t)},removeListenerForPage(e,t){this.removeListener(ye(e),t)}};function ye(e){return`${document.location.pathname}__${e}`}const Se=ke.get("spec_subtheme_name")||window.PrimerSpecConfig.defaultSubthemeName||"default",Ee=ke.get("spec_subtheme_mode")||window.PrimerSpecConfig.defaultSubthemeMode||"system",xe=function(){0;return!!window.PrimerSpecConfig.sitemapEnabled}();var Te={VERSION_RAW:"1.5.1",VERSION_MINOR_STR:"v1.5",BUILD_MODE:"production",HIDE_SIDEBAR_ON_LOAD:function(){const e=ke.getForPage("sidebar_hidden");let t=!1;null!==e?t="true"===e:(t=window.PrimerSpecConfig.hideSidebarOnLoad||window.PrimerSpecConfig.disableSidebar||!1,ke.setForPage("sidebar_hidden",t.toString()));return t}(),DISABLE_SIDEBAR:window.PrimerSpecConfig.disableSidebar||!1,INIT_SUBTHEME_NAME:Se,INIT_SUBTHEME_MODE:Ee,INIT_SITEMAP_ENABLED:xe,SITEMAP_URLS:window.PrimerSpecConfig.sitemapUrls||[],SITEMAP_LABEL:window.PrimerSpecConfig.sitemapLabel||"Supplemental Pages",SITEMAP_SITE_TITLE:window.PrimerSpecConfig.sitemapSiteTitle||"",PRIMER_SPEC_APP_NODE_ID:"primer-spec-app-container",PRIMER_SPEC_CONTENT_PLUGIN_NODE_ID:"primer-spec-plugin-main-content",PRIMER_SPEC_CONTENT_PREACT_NODE_ID:"primer-spec-preact-main-content",SUBTHEME_NAME_STORAGE_KEY:"spec_subtheme_name",SUBTHEME_MODE_STORAGE_KEY:"spec_subtheme_mode",DEFAULT_ACTIVE_SECTION_OFFSET_Y:10};function Ce({name:e,mode:t}={},o=!0){const{name:r,mode:n}={name:Me(),mode:Le()},i=Ne(null!=e?e:r),c=Ie(null!=t?t:n),l=Pe(c);if(o&&function({name:e,mode:t}){ke.set(Te.SUBTHEME_NAME_STORAGE_KEY,e),ke.set(Te.SUBTHEME_MODE_STORAGE_KEY,t)}({name:i,mode:c}),i===r&&l===n&&o)return;const a=fe[i];fe[r].reset(Pe(n)),a.apply(l)}function Me(){const e=ke.get(Te.SUBTHEME_NAME_STORAGE_KEY);return Ne(null!=e?e:Te.INIT_SUBTHEME_NAME)}function Le(){const e=ke.get(Te.SUBTHEME_MODE_STORAGE_KEY);return Ie(null!=e?e:Te.INIT_SUBTHEME_MODE)}function Pe(e){return"system"!==e?e:window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function Ne(e){return e&&fe[e]?e:(console.warn(`Primer Spec: Invalid subtheme name: ${e}. Reverting to 'default'`),fe.default.name)}function Ie(e){switch(e){case"light":case"dark":case"system":return e}return console.warn(`Primer Spec: Invalid subtheme mode: ${e}. Reverting to 'system'`),"system"}function Oe(){const[e,t]=W(!1),o=X(De,[]),r=X(Re,[]);return K(()=>o(()=>t(!0)),[o]),K(()=>r(()=>t(!1)),[r]),e}function De(e){let t;return window.matchMedia&&(t=t=>{t.matches&&e()},window.matchMedia("print").addListener(t)),window.addEventListener("beforeprint",e),()=>{window.matchMedia&&window.matchMedia("print").removeListener(t),window.removeEventListener("beforeprint",e)}}function Re(e){let t;return window.matchMedia&&(t=t=>{t.matches||e()},window.matchMedia("print").addListener(t)),window.addEventListener("afterprint",e),()=>{window.matchMedia&&window.matchMedia("print").removeListener(t),window.removeEventListener("afterprint",e)}}function Be(){return document.documentElement.clientWidth<900}function He(e){var t,o,r="";if("string"==typeof e||"number"==typeof e)r+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t{const t=document.createElement("label");t.innerHTML=e.innerHTML,e.innerHTML="",e.appendChild(t)});const t=[...e.current.querySelectorAll('.task-list-item input.task-list-item-checkbox[type="checkbox"]')];let o=!1;var r;t.length!==function(){const e=ke.getForPage("primer_spec_task_list_count")||"";return parseInt(e,10)||0}()&&(o=!0,r=t.length,ke.setForPage("primer_spec_task_list_count",""+r));let n=!0;const i=()=>{n=!1};ke.addListenerForPage("primer_spec_task_list_count",i);const c=[],l=[];return t.forEach((e,t)=>{e.disabled=!1,o?$e(t,e.checked):e.checked=Fe(t);const r=()=>{n&&$e(t,e.checked)};c.push(r),e.addEventListener("change",r);const i=()=>{n&&(e.checked=Fe(t))};var a,s;l.push(i),a=t,s=i,ke.addListenerForPage("primer_spec_task_list_"+a,s)}),()=>{t.forEach((e,t)=>{var o,r;e.removeEventListener("change",c[t]),o=t,r=l[t],ke.removeListenerForPage("primer_spec_task_list_"+o,r)}),ke.removeListenerForPage("primer_spec_task_list_count",i)}}function Fe(e){return"true"===ke.getForPage("primer_spec_task_list_"+e)}function $e(e,t){ke.setForPage("primer_spec_task_list_"+e,""+t)}function Ye(e){const t=Oe(),o=J(null),r=X(Ue,[e.innerHTML]);return K(()=>r(o),[r]),_("main",{ref:o,id:Te.PRIMER_SPEC_CONTENT_PREACT_NODE_ID,class:je("container-lg","px-3","my-5","markdown-body",{"primer-spec-content-margin-extra":e.sidebarShown&&!e.isSmallScreen&&!t,"primer-spec-content-mobile":e.isSmallScreen}),dangerouslySetInnerHTML:{__html:e.innerHTML}})}function Qe(e){const{theme_definition:t}=e.subtheme,{mode:o}=e,r=`primer-spec-theme-preview-${e.subtheme.name}-${e.mode}`,n=t[o]["--main-bg-color"]||"white",i=t[o]["--sidebar-bg-color"]||"white";return _("svg",{class:r,viewBox:"30.774 27.546 298.133 175.743",xmlns:"http://www.w3.org/2000/svg",style:`background-color: ${n};`,role:"img"},_("defs",null,_("style",null,`.${r} .sidebar-bg{fill:${i};stroke:${i};}`,`.${r} .sidebar-heading{fill:${t[o]["--sidebar-heading-text-color"]||"black"};}`,`.${r} .sidebar-toc-h1-link{fill:${t[o]["--sidebar-toc-h1-link-color"]||"#0366d6"};}`,`.${r} .sidebar-active-toc-section-bg{fill:${t[o]["--sidebar-active-toc-section-bg-color"]||"#faed27"};}`,`.${r} .sidebar-active-toc-section-link{fill:${t[o]["--sidebar-active-toc-section-link-color"]||"black"};}`,`.${r} .sidebar-toc-section-link{fill:${t[o]["--sidebar-toc-section-link-color"]||"black"};}`,`.${r} .sidebar-toc-h1-border-color{fill:${t[o]["--sidebar-toc-h1-border-color"]||"lightgrey"};}`,`.${r} .main-heading-link{fill:${t[o]["--main-heading-link-color"]||"#0366d6"};}`,`.${r} .main-text{fill:${t[o]["--main-text-color"]||"black"};}`,`.${r} .main-header-border-bottom{fill:none;stroke:${t[o]["--main-header-border-bottom-color"]||"#eaecef"};stroke-miterlimit:10;}`,`.${r} .main-link{fill:${t[o]["--main-link-color"]||"#0366d6"};}`,`.${r} .main-table-pre{fill:${t[o]["--main-table-pre-bg-color"]||"#f6f8fa"};stroke:${"light"===o?"none":"rgb(60, 62, 66)"};stroke-width:0.2}`,`.${r} .sidebar-border{fill:none;stroke:${t[o]["--sidebar-border-color"]||"#eaecef"};stroke-miterlimit:10;}`)),_("rect",{class:"sidebar-bg",x:"30.79",y:"27.669",width:"93.85",height:"175.646"}),_("rect",{class:"sidebar-heading",x:"43.588",y:"43.623",width:"41",height:"10.26",rx:"5"}),_("rect",{class:"sidebar-toc-h1-link",x:"43.588",y:"62.993",width:"58",height:"10.26",rx:"5"}),_("path",{class:"sidebar-active-toc-section-bg",d:"M 65.268 81.893 L 124.518 81.893 C 124.518 81.893 124.518 81.893 124.518 81.893 L 124.518 99.893 C 124.518 99.893 124.518 99.893 124.518 99.893 L 65.268 99.893 C 60.435 99.893 56.518 95.976 56.518 91.143 L 56.518 90.633 C 56.523 85.805 60.439 81.893 65.268 81.893 Z"}),_("rect",{class:"sidebar-active-toc-section-link",x:"64.748",y:"85.853",width:"47.77",height:"10.26",rx:"5.13"}),_("rect",{class:"sidebar-toc-section-link",x:"64.438",y:"105.573",width:"48.08",height:"10.26",rx:"5"}),_("rect",{class:"sidebar-toc-section-link",x:"64.438",y:"124.573",width:"48.08",height:"10.26",rx:"5.13"}),_("rect",{class:"sidebar-toc-h1-border-color",x:"-50.518",y:"-135.883",width:"2",height:"55",transform:"matrix(-1, 0, 0, -1, 0, 0)"}),_("rect",{class:"main-heading-link",x:"141.588",y:"43.623",width:"106.93",height:"21.26",rx:"4.49"}),_("rect",{class:"main-text",x:"141.518",y:"80.893",width:"162",height:"6",rx:"3"}),_("line",{class:"main-header-border-bottom",x1:"141.588",y1:"72.623",x2:"306.858",y2:"72.623"}),_("rect",{class:"main-text",x:"141.518",y:"103.893",width:"101",height:"6",rx:"3"}),_("rect",{class:"main-link",x:"245.388",y:"103.623",width:"28.13",height:"6.26",rx:"3.13"}),_("rect",{class:"main-text",x:"276.518",y:"103.623",width:"27",height:"6",rx:"3"}),_("rect",{class:"main-table-pre",x:"141.518",y:"170.893",width:"162",height:"32.424",style:""}),_("circle",{class:"main-text",cx:"144.088",cy:"136.123",r:"2"}),_("circle",{class:"main-text",cx:"144.088",cy:"160.123",r:"2"}),_("circle",{class:"main-text",cx:"144.088",cy:"148.123",r:"2"}),_("rect",{class:"main-link",x:"151.288",y:"133.063",width:"27.23",height:"6",rx:"3"}),_("rect",{class:"main-link",x:"151.288",y:"145.063",width:"27.23",height:"6",rx:"3"}),_("rect",{class:"sidebar-toc-h1-link",x:"43.638",y:"148.663",width:"58",height:"10.26",rx:"5"}),_("rect",{class:"sidebar-toc-h1-border-color",x:"-50.518",y:"-203.281",width:"1.95",height:"36.728",transform:"matrix(-1, 0, 0, -1, 0, 0)",style:""}),_("rect",{class:"sidebar-toc-section-link",x:"64.888",y:"166.803",width:"48.08",height:"10.26",rx:"5"}),_("rect",{class:"sidebar-toc-section-link",x:"64.888",y:"183.803",width:"48.08",height:"10.26",rx:"5.13"}),_("path",{class:"sidebar-toc-section-link",d:"M 65.248 203.3 C 66.2 202.04 67.796 201.283 69.504 201.283 L 107.283 201.283 C 108.94 201.285 110.459 202.119 111.424 203.317",style:""}),_("rect",{class:"main-text",x:"141.518",y:"92.893",width:"162",height:"6",rx:"3"}),_("rect",{class:"main-text",x:"141.518",y:"115.893",width:"162",height:"6",rx:"3"}),_("rect",{class:"main-link",x:"151.398",y:"157.243",width:"27.23",height:"6",rx:"3"}),_("line",{class:"sidebar-border",x1:"124.588",y1:"27.623",x2:"124.588",y2:"203.317",style:""}))}const Ge=[{name:"light",label:"Light"},{name:"dark",label:"Dark"},{name:"system",label:"Sync with OS setting"}];function qe(e){const t=Oe();!function(){const[e,t]=W(window.matchMedia("(prefers-color-scheme: dark)").matches);K(()=>{const e=e=>t(e.matches);return window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",e),()=>{window.matchMedia("(prefers-color-scheme: dark)").removeEventListener("change",e)}},[])}();const o=X(De,[]),r=X(Re,[]);if(K(()=>o(()=>Ce({name:"default",mode:"light"},!1)),[o]),K(()=>r(()=>Ce({name:e.currentSubthemeName,mode:e.currentSubthemeMode},!1)),[r,e.currentSubthemeName,e.currentSubthemeMode]),!e.settingsShown||t)return null;const n=Pe(e.currentSubthemeMode);return _("div",{class:"primer-spec-settings-container position-fixed top-0 left-0 width-full height-full"},_("div",{class:je("primer-spec-settings","container-lg","markdown-body","px-3","my-5",{"primer-spec-content-margin-extra":e.sidebarShown&&!e.isSmallScreen,"primer-spec-content-mobile":e.isSmallScreen})},_("h1",{class:"primer-spec-toc-ignore"},"Spec Theme Settings"),_("h2",null,"Colors"),_("form",{class:"primer-spec-settings-theme-preview-container",onSubmit:e=>e.preventDefault()},Object.values(fe).map(t=>_("label",{class:je("primer-spec-settings-theme-preview-box",{"primer-spec-settings-theme-preview-selected":e.currentSubthemeName===t.name})},_(Qe,{subtheme:t,mode:n}),_("div",{class:je("primer-spec-settings-theme-preview-title",{"primer-spec-settings-theme-preview-selected":e.currentSubthemeName===t.name})},_("input",{type:"radio",value:t.name,name:"primer-spec-settings-subtheme",checked:e.currentSubthemeName===t.name,onChange:t=>e.onSubthemeNameChange(t.target.value)})," ",t.label)))),_("h2",null,"Color mode"),_("form",{onSubmit:e=>e.preventDefault()},Ge.map(t=>_("label",{class:"primer-spec-settings-theme-mode-label"},_("input",{type:"radio",value:t.name,name:"primer-spec-settings-subtheme-mode",checked:e.currentSubthemeMode===t.name,onChange:t=>e.onSubthemeModeChange(t.target.value)})," ",t.label))),_("hr",null),_("p",null,_("small",null,"Does the spec display incorrectly? ",_("a",{href:"https://github.com/eecs485staff/primer-spec/issues"},'Let us know by adding a new "issue" here.'))),_("p",{class:"primer-spec-brand"},_("a",{href:"https://github.com/eecs485staff/primer-spec/",target:"_blank",rel:"noreferrer"},"Primer Spec v"+Te.VERSION_RAW))))}var We;!function(e){e.CLOSE="fas fa-times",e.HOME="fas fa-home",e.SETTINGS="fas fa-cog",e.SIDEBAR="fas fa-bars"}(We||(We={}));var Ke=We;function ze(e){var t;return _("span",{class:"primer-spec-hoverable "+(e.floatRight?"primer-spec-hoverable-float-right":"")},_("a",{href:null!==(t=e.href)&&void 0!==t?t:"#primer-spec-top",class:"primer-spec-hoverable no-print",onClick:e.onClick?t=>{t.preventDefault(),e.onClick&&e.onClick()}:void 0,"aria-label":e.ariaLabel},_("i",{class:e.icon})))}function Je(e){const[t,o]=W(window.scrollY||0);K(()=>{let e=!1;const t=()=>{e||(window.requestAnimationFrame(()=>{o(window.scrollY),e=!1}),e=!0)};return window.addEventListener("scroll",t,{passive:!0}),()=>{window.removeEventListener("scroll",t)}},[]);const r=function(e,t){const o=document.body.querySelector(e);if(!o)throw new Error("Primer Spec: TableOfContents: Main content node could not be found with selector: "+e);const r=[...o.querySelectorAll("h1, h2, h3, h4, h5, h6")].filter(e=>!e.classList.contains("primer-spec-toc-ignore"));let n=r.length-1;for(let e=0;e0){n=e-1;break}}return function(e,t){return _("ul",{class:"primer-spec-toc-list"},function(e,t=-1){if(!e.length)return[];const o=[];let r=1,n={heading:e[0],active:0===t,section:[]};const i=[];for(;rn.heading.tagName?(n.section.push(l),i.push(n),n=l,++r):i.length?n=i.pop():(o.push(n),n=l,++r)}return i.length?o.push(i[0]):o.push(n),o}(e,t).map(e=>function e(t){const o=t.heading,r=function(e){if(e.id&&Xe[e.id])return Xe[e.id];let t=null;try{const o=[];e.childNodes.forEach(e=>{switch(e.nodeType){case Node.TEXT_NODE:o.push(_(m,null,e.nodeValue));break;case Node.ELEMENT_NODE:if(!(e instanceof HTMLElement))throw new Error("getHeadingLabel expected HTML Element");"CODE"!==e.tagName&&"TT"!==e.tagName||o.push(_("code",{class:[...e.classList].join(" ")},e.innerText))}}),t=_(m,null,o)}catch(o){console.error("Primer Spec ToC: Errored while building heading label for heading",e),t=_(m,null,e.innerText)}e.id&&(Xe[e.id]=t);return t}(o);return _("li",null,_("div",{class:je("primer-spec-toc-item primer-spec-toc-"+o.tagName.toLowerCase(),{"primer-spec-toc-active":t.active})},_("a",{href:Ve(o)},r)),_("ul",{class:"primer-spec-toc-section primer-spec-toc-list"},t.section.map(t=>e(t))))}(e)))}(r,n)}(e.contentNodeSelector,e.activeSectionOffsetY);return _("nav",{class:"primer-spec-toc","aria-label":"Page contents"},_("div",{role:"presentation",onClick:()=>{e.isSmallScreen&&e.sidebarShown&&e.onToggleSidebar(),e.settingsShown&&e.onToggleSettings()}},r))}function Ve(e){const t=e.querySelector("a.anchorjs-link");return t?t.getAttribute("href")||"#":(console.error("Primer Spec: getAnchorLink expected heading to contain anchor while populating table of contents."),"#")}const Xe={};function Ze(e){return null==e.sitemap?_("div",{role:"presentation",onClick:()=>!0},e.children):_(m,null,_("details",{role:"navigation","aria-label":Te.SITEMAP_LABEL,open:!e.sitemap.rootPage.current||void 0},_("summary",null,Te.SITEMAP_LABEL),e.sitemap.siteUrls.map(t=>_(et,{page:t},t.current?e.children:void 0))),_("hr",null),_(et,{page:e.sitemap.rootPage,dedent:!0},e.sitemap.rootPage.current?e.children:void 0))}function et(e){const t=e.page.title||function(e){const t=(e=function(e){const t=e.split("/");return t[t.length-1]}(e)).lastIndexOf(".");return-1!==t&&(e=e.slice(0,t)),(e=e.replace(/[-_]/g," ")).replace(/\w\S*/g,(function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()}))}(e.page.path);return e.page.current?_("details",{open:!0,class:e.dedent?"left-space-fix":"primer-spec-toc-sitemap-item"},_("summary",{class:"left-space-fix primer-spec-toc-active"},t),e.children):_("a",{href:e.page.url,tabIndex:-1},_("details",{class:e.dedent?"":"primer-spec-toc-sitemap-item"},_("summary",{role:"link",onClick:t=>{t.preventDefault(),window.location.href=e.page.url}},t)))}function tt(e){const{isSmallScreen:t,sidebarShown:o,onToggleSidebar:r}=e,n=Oe(),i=J(null),c=V(()=>function(e){if(!e)return null;const t=Te.SITEMAP_URLS.filter(e=>!e.path.startsWith("assets"));if(0===t.length)return null;const o=t.findIndex(e=>/^(index|readme)\.(md|htm|html)$/.test(e.path.toLowerCase()));if(-1===o)return console.warn("PrimerSpec: processSitemapURLs: Expected to find a root page. Disabling sitemap."),null;const[r]=t.splice(o,1);return r.title=Te.SITEMAP_SITE_TITLE,{rootPage:r,siteUrls:t}}(e.sitemapEnabled),[e.sitemapEnabled]),l=X(()=>{(null==i?void 0:i.current)&&ot(i.current.scrollTop),r()},[r]);return K(()=>{const e=e=>{const t=null==e?void 0:e.target;t&&!t.matches(".primer-spec-sidebar, .primer-spec-sidebar *")&&document.body.contains(t)&&o&&l()};return t&&window.addEventListener("click",e),()=>{window.removeEventListener("click",e)}},[t,o,l]),z(()=>{const e=function(){const e=parseInt(ke.getForPage("primer_spec_sidebar_scroll_position")||"",10);return Number.isNaN(e)?null:e}();e&&(null==i?void 0:i.current)&&(i.current.scrollTop=e,ot(null))}),!e.sidebarShown||n?_("div",null):_("aside",{ref:i,class:"primer-spec-sidebar position-fixed top-0 py-5 no-print","aria-label":"Contents Sidebar",tabIndex:-1},_("h2",{class:"primer-spec-toc-ignore",id:"primer-spec-toc-contents"},null==c?void 0:_(m,null,_(ze,{icon:Ke.HOME,href:c.rootPage.url,ariaLabel:c.rootPage.title||"Home"})," "),"Contents",_(ze,{icon:Ke.SIDEBAR,floatRight:!0,onClick:l,ariaLabel:"Close navigation pane"})),_("br",null),_(Ze,{sitemap:c},_(Je,{contentNodeSelector:e.contentNodeSelector,isSmallScreen:e.isSmallScreen,sidebarShown:e.sidebarShown,settingsShown:e.settingsShown,activeSectionOffsetY:e.activeSectionOffsetY,onToggleSidebar:l,onToggleSettings:e.onToggleSettings})))}function ot(e){ke.setForPage("primer_spec_sidebar_scroll_position",""+e)}function rt(e){const t=J(null),{isSmallScreen:o,onActiveSectionOffsetChange:r}=e;z(()=>{o?t.current&&r(t.current.getBoundingClientRect().height):r(20)},[o,r]);let n=null;e.showSidebarToggle&&(n=e.sidebarShown?null:_("div",{class:"primer-spec-sidebar-toggle-fixed primer-spec-float-left"},_(ze,{icon:Ke.SIDEBAR,onClick:e.onToggleSidebar,ariaLabel:"Open navigation pane"})));let i=null;return e.showSettingsToggle&&(i=_("div",{class:"primer-spec-settings-toggle primer-spec-float-right"},_(ze,{icon:e.settingsShown?Ke.CLOSE:Ke.SETTINGS,onClick:e.onToggleSettings,ariaLabel:e.settingsShown?"Close settings pane":"Open settings pane"}))),_("header",{ref:t,class:je("primer-spec-topbar","position-fixed","width-full","top-0","left-0","py-2","no-print",{"primer-spec-topbar-mobile":e.isSmallScreen,"primer-spec-topbar-settings-shown":e.settingsShown})},n,i)}function nt(e){const t=function(){const[e,t]=W(Be());return z(()=>{const o=()=>{const o=Be();o!==e&&t(o)};return window.addEventListener("resize",o),()=>{window.removeEventListener("resize",o)}},[e]),e}(),[o,r]=W(!Te.HIDE_SIDEBAR_ON_LOAD&&!t),[n,i]=W(!1),[c,l]=W(Te.DEFAULT_ACTIVE_SECTION_OFFSET_Y),[a,s]=W(Te.INIT_SUBTHEME_NAME),[d,u]=W(Te.INIT_SUBTHEME_MODE),[h,A]=W(Te.INIT_SITEMAP_ENABLED),p=()=>{ke.setForPage("sidebar_hidden",o.toString()),r(!o)},b=()=>i(!n),g=e=>{Ce(e),s(Me()),u(Le())},f=X(De,[]),v=X(Re,[]);K(()=>f(()=>{it(!1)}),[f]),K(()=>v(()=>{it(!0)}),[v]),K(()=>{window.Debug=Object.freeze({toggleSitemap:()=>A(!h)})},[h]);const w=Te.DISABLE_SIDEBAR?null:_(tt,{contentNodeSelector:"#"+Te.PRIMER_SPEC_CONTENT_PREACT_NODE_ID,isSmallScreen:t,sidebarShown:o,settingsShown:n,activeSectionOffsetY:c,sitemapEnabled:h,onToggleSidebar:p,onToggleSettings:b});return _(m,null,_(rt,{isSmallScreen:t,showSidebarToggle:!Te.DISABLE_SIDEBAR,showSettingsToggle:!0,sidebarShown:o,settingsShown:n,onActiveSectionOffsetChange:l,onToggleSidebar:p,onToggleSettings:b}),_(Ye,{innerHTML:e.contentHTML,isSmallScreen:t,sidebarShown:o}),w,_(qe,{isSmallScreen:t,sidebarShown:o,settingsShown:n,currentSubthemeName:a,currentSubthemeMode:d,onSubthemeNameChange:e=>g({name:e}),onSubthemeModeChange:e=>g({mode:e})}))}function it(e){const t=function(){const e=navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);return!!e&&parseInt(e[2],10)}();if(!1===t||t>=82)return;const o=e?"italic":"inherit",r=document.querySelectorAll("em, dfn, .text-italic, dt, .highlight .cm, .highlight .c1, .highlight .cs, .highlight .cd, .highlight .ge, .primer-spec-toc-h4");Array.from(r).map(e=>{e.style.fontStyle=o})}!function(){const e=new a;e.add("h1"),e.add();const t=document.getElementById(Te.PRIMER_SPEC_CONTENT_PLUGIN_NODE_ID),o=document.getElementById(Te.PRIMER_SPEC_APP_NODE_ID);if(!t||"DIV"!==t.tagName||!o||"DIV"!==o.tagName)throw new Error("Primer Spec: This page included the Primer Spec plugin script, but was not compatible with the plugin!");const r=t.innerHTML;t.remove(),function(e,t,o){const r=document.createElement("link");r.rel="stylesheet",r.href=e,t&&(r.integrity=t),o&&(r.crossOrigin=o),document.head.appendChild(r)}("https://use.fontawesome.com/releases/v5.7.2/css/all.css","sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr","anonymous"),Ce({name:Te.INIT_SUBTHEME_NAME,mode:Te.INIT_SUBTHEME_MODE},!1),window.matchMedia("(prefers-color-scheme: dark)").addListener(()=>Ce()),D(_(nt,{contentHTML:r}),o),console.info("\nThis page is formatted using %cPrimer Spec.%c\n\nWould you like to contribute to the theme? Check out:\nhttps://github.com/eecs485staff/primer-spec\n","font-weight: bolder;","")}()}]); //# sourceMappingURL=primer_spec_plugin.min.js.map \ No newline at end of file diff --git a/assets/v1.5/js/primer_spec_plugin.min.js.map b/assets/v1.5/js/primer_spec_plugin.min.js.map index b26cfd46..f275b3a2 100644 --- a/assets/v1.5/js/primer_spec_plugin.min.js.map +++ b/assets/v1.5/js/primer_spec_plugin.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///../node_modules/anchor-js/anchor.js","webpack:///../node_modules/preact/dist/preact.module.js","webpack:///../node_modules/preact/hooks/dist/hooks.module.js","webpack:///./subthemes/Subtheme.ts","webpack:///./subthemes/rouge_themes/createRougeTheme.ts","webpack:///./subthemes/rouge_themes/monokai.rouge.ts","webpack:///./subthemes/rouge_themes/index.ts","webpack:///./subthemes/rouge_themes/default.rouge.ts","webpack:///./subthemes/createSubtheme.ts","webpack:///./subthemes/definitions/common_dark_theme_colors.ts","webpack:///./subthemes/definitions/default.theme.ts","webpack:///./subthemes/definitions/bella.theme.ts","webpack:///./subthemes/definitions/modern.theme.ts","webpack:///./subthemes/definitions/xcode_civic.theme.ts","webpack:///./subthemes/RegisteredSubthemes.ts","webpack:///./utils/Storage.ts","webpack:///./Config.ts","webpack:///./subthemes/index.ts","webpack:///./utils/hooks/print.ts","webpack:///./utils/isSmallScreen.ts","webpack:///../node_modules/clsx/dist/clsx.m.js","webpack:///./components/main_content/useTaskListCheckboxes.ts","webpack:///./components/main_content/index.tsx","webpack:///./components/settings/ThemePreview.tsx","webpack:///./components/settings/index.tsx","webpack:///./utils/hooks/usePrefersDarkMode.ts","webpack:///./components/common/IconType.ts","webpack:///./components/common/InlineButton.tsx","webpack:///./components/sidebar/TableOfContents.tsx","webpack:///./components/sidebar/unflattenHeadings.ts","webpack:///./components/sidebar/SidebarContent.tsx","webpack:///./components/sidebar/getSitemapName.ts","webpack:///./components/sidebar/index.tsx","webpack:///./components/sidebar/getSitemapUrls.ts","webpack:///./components/Topbar.tsx","webpack:///./components/PrimerSpec.tsx","webpack:///./utils/hooks/useSmallScreen.ts","webpack:///./utils/getChromeVersion.ts","webpack:///./main.tsx"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","root","factory","options","_applyRemainingDefaultOptions","opts","icon","visible","placement","ariaLabel","class","base","truncate","Math","floor","titleText","_getElements","input","elements","String","slice","document","querySelectorAll","Array","isArray","NodeList","TypeError","this","isTouchDevice","Boolean","window","TouchEvent","DocumentTouch","add","selector","elsWithIds","idList","elementID","index","count","tidyText","newTidyText","anchor","visibleOptionToUse","hrefBase","indexesToDrop","length","head","querySelector","firstStyleEl","style","createElement","className","appendChild","createTextNode","undefined","insertBefore","sheet","insertRule","cssRules","_addBaselineStyles","map","el","id","hasAnchorJSLink","push","hasAttribute","getAttribute","urlify","textContent","indexOf","setAttribute","title","location","pathname","search","href","opacity","font","lineHeight","position","marginLeft","paddingRight","firstChild","paddingLeft","splice","concat","remove","domAnchor","removeChild","removeAll","text","textareaElement","innerHTML","trim","replace","substring","toLowerCase","hasLeftAnchor","hasRightAnchor","lastChild","f","u","a","parentNode","v","arguments","children","defaultProps","h","type","props","ref","__k","__","__b","__e","__d","__c","__h","constructor","__v","vnode","context","w","k","g","__r","debounceRendering","sort","some","__P","$","__n","ownerSVGElement","j","y","b","A","P","x","L","I","e","nextSibling","setProperty","test","C","cssText","N","z","addEventListener","removeEventListener","removeAttributeNS","setAttributeNS","removeAttribute","event","T","_","contextType","__E","render","M","sub","state","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","H","diffed","nodeType","localName","createElementNS","is","data","childNodes","dangerouslySetInnerHTML","attributes","__html","checked","current","unmount","componentWillUnmount","O","getDerivedStateFromError","setState","componentDidCatch","forceUpdate","Promise","then","resolve","setTimeout","__H","forEach","requestAnimationFrame","clearTimeout","cancelAnimationFrame","filter","SUBTHEME_VARS","ROUGE_STYLE_PROPS","ROUGE_CLASS_NAMES","documentEl","documentElement","class_name","style_prop","var_name","removeProperty","createRougeTheme","theme_vars","apply","entries","reset","white","monokai_rouge","cm","color","cp","c1","cs","cd","err","gd","ge","gr","gh","gi","go","gp","gs","gu","gt","kc","kd","kn","kp","kr","kt","kv","mf","mh","il","mi","mo","mb","mx","sb","sc","sd","s2","se","sh","si","sx","sr","s1","ss","na","bp","nb","nc","no","nd","ni","ne","nf","nl","nn","nt","nx","vc","vg","vi","nv","ow","txt","default","monokai","createSubtheme","label","theme_definition","bodyEl","body","theme_var","rouge_theme_name","default_theme","light","rouge_theme","dark","assign","common_dark_theme_colors","bella_theme","modern_theme","bella","modern","xcode_civic_theme","listener_callbacks","callbacks","callback","newValue","oldValue","local_storage_available","storage","setItem","removeItem","DOMException","code","isStorageAvailable","localStorage","getItem","mangleKeyWithPagePath","set","callbackToRemove","addListener","removeListener","INIT_SUBTHEME_NAME","Storage","PrimerSpecConfig","defaultSubthemeName","INIT_SUBTHEME_MODE","defaultSubthemeMode","INIT_SITEMAP_ENABLED","sitemapEnabled","getInitSitemapEnabled","VERSION_RAW","VERSION_MINOR_STR","BUILD_MODE","HIDE_SIDEBAR_ON_LOAD","sidebar_hidden_stored_value","getForPage","hideSidebar","hideSidebarOnLoad","disableSidebar","setForPage","toString","getHideSidebarOnLoad","DISABLE_SIDEBAR","SITEMAP_URLS","sitemapUrls","SITEMAP_LABEL","sitemapLabel","SITEMAP_SITE_TITLE","sitemapSiteTitle","PRIMER_SPEC_APP_NODE_ID","PRIMER_SPEC_CONTENT_PLUGIN_NODE_ID","PRIMER_SPEC_CONTENT_PREACT_NODE_ID","SUBTHEME_NAME_STORAGE_KEY","SUBTHEME_MODE_STORAGE_KEY","DEFAULT_ACTIVE_SECTION_OFFSET_Y","updateTheme","persistUpdate","stored_subtheme_name","stored_subtheme_mode","getStoredSubthemeName","getStoredSubthemeMode","normalized_name","verifySubthemeName","currently_selected_mode","verifySubthemeMode","normalized_mode","normalizeSubthemeMode","Config","storeSubtheme","new_subtheme","matchMedia","matches","console","warn","usePrintInProgress","isPrintInProgress","setIsPrintInProgress","beforePrint","useBeforePrint","afterPrint","useAfterPrint","handler","mql_listener","mql","clientWidth","toVal","mix","str","tmp","useTaskListCheckboxes","mainElRef","Error","task_list_item","task_checkboxes","should_use_default_values","num_checkboxes","raw_count","parseInt","getNumCheckboxesFromStorage","should_sync_checkbox_state","count_change_callback","addListenerForPage","change_listeners","storage_change_listeners","checkbox","disabled","setCheckboxState","getCheckboxState","checkbox_change_listener","storage_change_listener","removeListenerForPage","MainContent","is_print_in_progress","main_el_ref","taskListCheckboxEffect","sidebarShown","isSmallScreen","ThemePreview","subtheme","svgClassName","mainBgColor","sidebarBgColor","viewBox","xmlns","role","width","height","rx","transform","x1","y1","x2","y2","cx","cy","SUBTHEME_MODE_INFO","Settings","prefersDarkMode","setPrefersDarkMode","listener","usePrefersDarkMode","currentSubthemeName","currentSubthemeMode","settingsShown","normalizedMode","onSubmit","preventDefault","values","onChange","onSubthemeNameChange","target","modeInfo","onSubthemeModeChange","rel","IconType","InlineButton","_a","floatRight","onClick","TableOfContents","setWindowScrollDistance","scrollY","ticking","scrollHandler","passive","tocNodes","contentNodeSelector","threshold","contentNode","headings","heading","classList","contains","activeHeadingIndex","getBoundingClientRect","top","unflattened","headingsIndex","previousHeadingSection","active","section","stackOfSections","currentHeading","currentHeadingSection","tagName","pop","unflattenHeadings","generateTocNodesHelper","headingLabel","headingNode","headingLabelMemo","labelComponents","childNode","Node","TEXT_NODE","nodeValue","ELEMENT_NODE","HTMLElement","join","innerText","error","getHeadingLabel","getAnchorLink","_section","generateTocNodes","generateTocNodesForContentNode","activeSectionOffsetY","onToggleSidebar","onToggleSettings","anchorNode","SidebarContent","sitemap","open","rootPage","siteUrls","sitePage","SitemapPage","page","dedent","pathName","dotIndex","pathParts","split","getFilenameFromPath","lastIndexOf","charAt","toUpperCase","substr","getSitemapName","path","url","tabIndex","Sidebar","sidebar_ref","pageInfo","startsWith","rootIndex","findIndex","getSitemapUrls","saveScrollPositionThenToggleSidebar","setSidebarScrollPosition","scrollTop","window_click_listener","scrollPosition","Number","isNaN","getSidebarScrollPosition","HOME","SIDEBAR","Topbar","topbarRef","onActiveSectionOffsetChange","sidebar_toggle","showSidebarToggle","settings_toggle","showSettingsToggle","CLOSE","SETTINGS","PrimerSpec","is_small_screen","setIsSmallScreen","window_resize_listener","is_window_now_a_small_screen","useSmallScreen","sidebar_shown","setSidebarShown","settings_shown","setSettingsShown","active_section_offset_y","setActiveSectionOffsetY","subtheme_name","setSubthemeName","subtheme_mode","setSubthemeMode","sitemap_enabled","setSitemapEnabled","toggleSidebarShown","toggleSettingsShown","setTheme","themeDelta","toggleItalicsInChrome","Debug","freeze","toggleSitemap","sidebar","contentHTML","enableItalics","chromeVersion","raw","navigator","userAgent","match","getChromeVersion","font_style","nodes","from","fontStyle","anchors","main_content_node","getElementById","app_container_node","main_content_html","integrity","crossOrigin","link","injectStyleSheet","info","main"],"mappings":"aACE,IAAIA,EAAmB,GAGvB,SAASC,EAAoBC,GAG5B,GAAGF,EAAiBE,GACnB,OAAOF,EAAiBE,GAAUC,QAGnC,IAAIC,EAASJ,EAAiBE,GAAY,CACzCG,EAAGH,EACHI,GAAG,EACHH,QAAS,IAUV,OANAI,EAAQL,GAAUM,KAAKJ,EAAOD,QAASC,EAAQA,EAAOD,QAASF,GAG/DG,EAAOE,GAAI,EAGJF,EAAOD,QAKfF,EAAoBQ,EAAIF,EAGxBN,EAAoBS,EAAIV,EAGxBC,EAAoBU,EAAI,SAASR,EAASS,EAAMC,GAC3CZ,EAAoBa,EAAEX,EAASS,IAClCG,OAAOC,eAAeb,EAASS,EAAM,CAAEK,YAAY,EAAMC,IAAKL,KAKhEZ,EAAoBkB,EAAI,SAAShB,GACX,oBAAXiB,QAA0BA,OAAOC,aAC1CN,OAAOC,eAAeb,EAASiB,OAAOC,YAAa,CAAEC,MAAO,WAE7DP,OAAOC,eAAeb,EAAS,aAAc,CAAEmB,OAAO,KAQvDrB,EAAoBsB,EAAI,SAASD,EAAOE,GAEvC,GADU,EAAPA,IAAUF,EAAQrB,EAAoBqB,IAC/B,EAAPE,EAAU,OAAOF,EACpB,GAAW,EAAPE,GAA8B,iBAAVF,GAAsBA,GAASA,EAAMG,WAAY,OAAOH,EAChF,IAAII,EAAKX,OAAOY,OAAO,MAGvB,GAFA1B,EAAoBkB,EAAEO,GACtBX,OAAOC,eAAeU,EAAI,UAAW,CAAET,YAAY,EAAMK,MAAOA,IACtD,EAAPE,GAA4B,iBAATF,EAAmB,IAAI,IAAIM,KAAON,EAAOrB,EAAoBU,EAAEe,EAAIE,EAAK,SAASA,GAAO,OAAON,EAAMM,IAAQC,KAAK,KAAMD,IAC9I,OAAOF,GAIRzB,EAAoB6B,EAAI,SAAS1B,GAChC,IAAIS,EAAST,GAAUA,EAAOqB,WAC7B,WAAwB,OAAOrB,EAAgB,SAC/C,WAA8B,OAAOA,GAEtC,OADAH,EAAoBU,EAAEE,EAAQ,IAAKA,GAC5BA,GAIRZ,EAAoBa,EAAI,SAASiB,EAAQC,GAAY,OAAOjB,OAAOkB,UAAUC,eAAe1B,KAAKuB,EAAQC,IAGzG/B,EAAoBkC,EAAI,GAIjBlC,EAAoBA,EAAoBmC,EAAI,G,kBClFrD,WAIC,SAAUC,EAAMC,GACf,aAIE,EAAO,QAAW,0BAAP,EAWP,WAiVN,OA9UA,SAAkBC,GAQhB,SAASC,EAA8BC,GACrCA,EAAKC,KAAO3B,OAAOkB,UAAUC,eAAe1B,KAAKiC,EAAM,QAAUA,EAAKC,KAAO,IAC7ED,EAAKE,QAAU5B,OAAOkB,UAAUC,eAAe1B,KAAKiC,EAAM,WAAaA,EAAKE,QAAU,QACtFF,EAAKG,UAAY7B,OAAOkB,UAAUC,eAAe1B,KAAKiC,EAAM,aAAeA,EAAKG,UAAY,QAC5FH,EAAKI,UAAY9B,OAAOkB,UAAUC,eAAe1B,KAAKiC,EAAM,aAAeA,EAAKI,UAAY,SAC5FJ,EAAKK,MAAQ/B,OAAOkB,UAAUC,eAAe1B,KAAKiC,EAAM,SAAWA,EAAKK,MAAQ,GAChFL,EAAKM,KAAOhC,OAAOkB,UAAUC,eAAe1B,KAAKiC,EAAM,QAAUA,EAAKM,KAAO,GAE7EN,EAAKO,SAAWjC,OAAOkB,UAAUC,eAAe1B,KAAKiC,EAAM,YAAcQ,KAAKC,MAAMT,EAAKO,UAAY,GACrGP,EAAKU,UAAYpC,OAAOkB,UAAUC,eAAe1B,KAAKiC,EAAM,aAAeA,EAAKU,UAAY,GAwP9F,SAASC,EAAaC,GACpB,IAAIC,EACJ,GAAqB,iBAAVD,GAAsBA,aAAiBE,OAEhDD,EAAW,GAAGE,MAAMhD,KAAKiD,SAASC,iBAAiBL,QAE9C,MAAIM,MAAMC,QAAQP,IAAUA,aAAiBQ,UAGlD,MAAM,IAAIC,UAAU,kDAFpBR,EAAW,GAAGE,MAAMhD,KAAK6C,GAK3B,OAAOC,EApRTS,KAAKxB,QAAUA,GAAW,GAC1BwB,KAAKT,SAAW,GAkBhBd,EAA8BuB,KAAKxB,SAOnCwB,KAAKC,cAAgB,WACnB,OAAOC,QAAQ,iBAAkBC,QAAUA,OAAOC,YAAcD,OAAOE,eAAiBX,oBAAoBW,gBAS9GL,KAAKM,IAAM,SAASC,GAClB,IAAIhB,EACAiB,EACAC,EACAC,EACApE,EACAqE,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAAgB,GAoBpB,GAdAzC,EAA8BuB,KAAKxB,SAGR,WAD3BwC,EAAqBhB,KAAKxB,QAAQI,WAEhCoC,EAAqBhB,KAAKC,gBAAkB,SAAW,SAIpDM,IACHA,EAAW,sBAKW,KAFxBhB,EAAWF,EAAakB,IAEXY,OACX,OAAOnB,KAWT,IA0MF,WAEE,GAAsD,OAAlDN,SAAS0B,KAAKC,cAAc,kBAC9B,OAGF,IAsBIC,EAtBAC,EAAQ7B,SAAS8B,cAAc,SAwBnCD,EAAME,UAAY,WAClBF,EAAMG,YAAYhC,SAASiC,eAAe,UAMrBC,KADrBN,EAAe5B,SAAS0B,KAAKC,cAAc,6BAEzC3B,SAAS0B,KAAKM,YAAYH,GAE1B7B,SAAS0B,KAAKS,aAAaN,EAAOD,GAGpCC,EAAMO,MAAMC,WAnCR,sHAmC6BR,EAAMO,MAAME,SAASb,QACtDI,EAAMO,MAAMC,WA7BR,wDA6B8BR,EAAMO,MAAME,SAASb,QACvDI,EAAMO,MAAMC,WApBR,gEAoBoCR,EAAMO,MAAME,SAASb,QAC7DI,EAAMO,MAAMC,WA1BR,s4CA0ByCR,EAAMO,MAAME,SAASb,QAhQlEc,GAGAzB,EAAad,SAASC,iBAAiB,QACvCc,EAAS,GAAGyB,IAAIzF,KAAK+D,GAAY,SAAS2B,GACxC,OAAOA,EAAGC,MAGP9F,EAAI,EAAGA,EAAIiD,EAAS4B,OAAQ7E,IAC/B,GAAI0D,KAAKqC,gBAAgB9C,EAASjD,IAChC4E,EAAcoB,KAAKhG,OADrB,CAKA,GAAIiD,EAASjD,GAAGiG,aAAa,MAC3B7B,EAAYnB,EAASjD,GAAGkG,aAAa,WAChC,GAAIjD,EAASjD,GAAGiG,aAAa,kBAClC7B,EAAYnB,EAASjD,GAAGkG,aAAa,sBAChC,CAKL1B,EAJAD,EAAWb,KAAKyC,OAAOlD,EAASjD,GAAGoG,aAKnC9B,EAAQ,EACR,QACgBgB,IAAVjB,IACFG,EAAcD,EAAW,IAAMD,GAGjCD,EAAQF,EAAOkC,QAAQ7B,GACvBF,GAAS,SACS,IAAXD,GAETA,OAAQiB,EACRnB,EAAO6B,KAAKxB,GAEZvB,EAASjD,GAAGsG,aAAa,KAAM9B,GAC/BJ,EAAYI,GAUdC,EAASrB,SAAS8B,cAAc,MACzBC,UAAY,iBAAmBzB,KAAKxB,QAAQO,MACnDgC,EAAO6B,aAAa,aAAc5C,KAAKxB,QAAQM,WAC/CiC,EAAO6B,aAAa,qBAAsB5C,KAAKxB,QAAQG,MACnDqB,KAAKxB,QAAQY,YACf2B,EAAO8B,MAAQ7C,KAAKxB,QAAQY,WAI9B6B,EAAWvB,SAAS2B,cAAc,QAAUlB,OAAO2C,SAASC,SAAW5C,OAAO2C,SAASE,OAAS,GAChG/B,EAAWjB,KAAKxB,QAAQQ,MAAQiC,EAChCF,EAAOkC,KAAOhC,EAAW,IAAMP,EAEJ,WAAvBM,IACFD,EAAOQ,MAAM2B,QAAU,KAGC,MAAtBlD,KAAKxB,QAAQG,OACfoC,EAAOQ,MAAM4B,KAAO,uBAMW,SAA3BnD,KAAKxB,QAAQK,YACfkC,EAAOQ,MAAM6B,WAAa,YAIC,SAA3BpD,KAAKxB,QAAQK,WACfkC,EAAOQ,MAAM8B,SAAW,WACxBtC,EAAOQ,MAAM+B,WAAa,OAC1BvC,EAAOQ,MAAMgC,aAAe,OAC5BhE,EAASjD,GAAGuF,aAAad,EAAQxB,EAASjD,GAAGkH,cAE7CzC,EAAOQ,MAAMkC,YAAc,SAC3BlE,EAASjD,GAAGoF,YAAYX,IAI5B,IAAKzE,EAAI,EAAGA,EAAI4E,EAAcC,OAAQ7E,IACpCiD,EAASmE,OAAOxC,EAAc5E,GAAKA,EAAG,GAKxC,OAFA0D,KAAKT,SAAWS,KAAKT,SAASoE,OAAOpE,GAE9BS,MASTA,KAAK4D,OAAS,SAASrD,GAKrB,IAJA,IAAII,EACAkD,EACAtE,EAAWF,EAAakB,GAEnBjE,EAAI,EAAGA,EAAIiD,EAAS4B,OAAQ7E,KACnCuH,EAAYtE,EAASjD,GAAG+E,cAAc,sBAIrB,KADfV,EAAQX,KAAKT,SAASoD,QAAQpD,EAASjD,MAErC0D,KAAKT,SAASmE,OAAO/C,EAAO,GAI9BpB,EAASjD,GAAGwH,YAAYD,IAI5B,OAAO7D,MAMTA,KAAK+D,UAAY,WACf/D,KAAK4D,OAAO5D,KAAKT,WAYnBS,KAAKyC,OAAS,SAASuB,GAErB,IAAIC,EAAkBvE,SAAS8B,cAAc,YAC7CyC,EAAgBC,UAAYF,EAC5BA,EAAOC,EAAgB1G,MAuBvB,OAdKyC,KAAKxB,QAAQS,UAChBR,EAA8BuB,KAAKxB,SAK3BwF,EAAKG,OACZC,QAAQ,MAAO,IACfA,QAbgB,qDAaM,KACtBA,QAAQ,SAAU,KAClBC,UAAU,EAAGrE,KAAKxB,QAAQS,UAC1BmF,QAAQ,YAAa,IACrBE,eAWLtE,KAAKqC,gBAAkB,SAASF,GAC9B,IAAIoC,EAAgBpC,EAAGqB,aAAe,IAAMrB,EAAGqB,WAAW/B,UAAY,KAAKkB,QAAQ,oBAAsB,EACrG6B,EAAiBrC,EAAGsC,YAAc,IAAMtC,EAAGsC,UAAUhD,UAAY,KAAKkB,QAAQ,oBAAsB,EAExG,OAAO4B,GAAiBC,IAAkB,MA7Q1B,+BALtB,I,wCCJIzG,EAAI,EAAE,EAAE,EAAE,E,OAAI2G,EAAE,GAAG,EAAE,GAAG/H,EAAE,oEAAoE,SAAS0B,EAAEN,EAAExB,GAAG,IAAI,IAAIoI,KAAKpI,EAAEwB,EAAE4G,GAAGpI,EAAEoI,GAAG,OAAO5G,EAAE,SAAS6G,EAAE7G,GAAG,IAAIxB,EAAEwB,EAAE8G,WAAWtI,GAAGA,EAAEuH,YAAY/F,GAAG,SAAS+G,EAAE/G,EAAExB,EAAEoI,GAAG,IAAIrI,EAAEkB,EAAET,EAAEK,EAAE2H,UAAUL,EAAE,GAAG,IAAI3H,KAAKR,EAAE,OAAOQ,EAAET,EAAEC,EAAEQ,GAAG,OAAOA,EAAES,EAAEjB,EAAEQ,GAAG2H,EAAE3H,GAAGR,EAAEQ,GAAG,GAAGgI,UAAU5D,OAAO,EAAE,IAAIwD,EAAE,CAACA,GAAG5H,EAAE,EAAEA,EAAEgI,UAAU5D,OAAOpE,IAAI4H,EAAErC,KAAKlF,EAAEL,IAAI,GAAG,MAAM4H,IAAID,EAAEM,SAASL,GAAG,mBAAmB5G,GAAG,MAAMA,EAAEkH,aAAa,IAAIlI,KAAKgB,EAAEkH,kBAAa,IAASP,EAAE3H,KAAK2H,EAAE3H,GAAGgB,EAAEkH,aAAalI,IAAI,OAAOmI,EAAEnH,EAAE2G,EAAEpI,EAAEkB,EAAE,MAAM,SAAS0H,EAAE3I,EAAEoI,EAAErI,EAAEkB,EAAET,GAAG,IAAIK,EAAE,CAAC+H,KAAK5I,EAAE6I,MAAMT,EAAE9G,IAAIvB,EAAE+I,IAAI7H,EAAE8H,IAAI,KAAKC,GAAG,KAAKC,IAAI,EAAEC,IAAI,KAAKC,SAAI,EAAOC,IAAI,KAAKC,IAAI,KAAKC,iBAAY,EAAOC,IAAI,MAAM/I,IAAIgB,EAAE+H,IAAI/I,GAAG,OAAO,MAAMgB,EAAEgI,OAAOhI,EAAEgI,MAAM3I,GAAGA,EAAoC,SAASgB,EAAEL,GAAG,OAAOA,EAAEiH,SAAS,SAASpI,EAAEmB,EAAExB,GAAGyD,KAAKoF,MAAMrH,EAAEiC,KAAKgG,QAAQzJ,EAAE,SAAS,EAAEwB,EAAExB,GAAG,GAAG,MAAMA,EAAE,OAAOwB,EAAEwH,GAAG,EAAExH,EAAEwH,GAAGxH,EAAEwH,GAAGD,IAAI3C,QAAQ5E,GAAG,GAAG,KAAK,IAAI,IAAI4G,EAAEpI,EAAEwB,EAAEuH,IAAInE,OAAO5E,IAAI,GAAG,OAAOoI,EAAE5G,EAAEuH,IAAI/I,KAAK,MAAMoI,EAAEc,IAAI,OAAOd,EAAEc,IAAI,MAAM,mBAAmB1H,EAAEoH,KAAK,EAAEpH,GAAG,KAAK,SAASkI,EAAElI,GAAG,IAAIxB,EAAEoI,EAAE,GAAG,OAAO5G,EAAEA,EAAEwH,KAAK,MAAMxH,EAAE4H,IAAI,CAAC,IAAI5H,EAAE0H,IAAI1H,EAAE4H,IAAI3G,KAAK,KAAKzC,EAAE,EAAEA,EAAEwB,EAAEuH,IAAInE,OAAO5E,IAAI,GAAG,OAAOoI,EAAE5G,EAAEuH,IAAI/I,KAAK,MAAMoI,EAAEc,IAAI,CAAC1H,EAAE0H,IAAI1H,EAAE4H,IAAI3G,KAAK2F,EAAEc,IAAI,MAAM,OAAOQ,EAAElI,IAAI,SAASmI,EAAE3J,KAAKA,EAAEmJ,MAAMnJ,EAAEmJ,KAAI,IAAK,EAAEpD,KAAK/F,KAAK4J,EAAEC,OAAO,IAAIrI,EAAEsI,sBAAsB,EAAEtI,EAAEsI,oBAAoB,GAAGF,GAAG,SAASA,IAAI,IAAI,IAAIpI,EAAEoI,EAAEC,IAAI,EAAEjF,QAAQpD,EAAE,EAAEuI,MAAK,SAASvI,EAAExB,GAAG,OAAOwB,EAAE+H,IAAIN,IAAIjJ,EAAEuJ,IAAIN,OAAM,EAAE,GAAGzH,EAAEwI,MAAK,SAASxI,GAAG,IAAIxB,EAAEoI,EAAErI,EAAEkB,EAAET,EAAEK,EAAEsH,EAAE3G,EAAE2H,MAAMtI,GAAGL,GAAGR,EAAEwB,GAAG+H,KAAKL,KAAKf,EAAEnI,EAAEiK,OAAO7B,EAAE,IAAIrI,EAAE+B,EAAE,GAAGtB,IAAI+I,IAAI/I,EAAE+I,IAAI,EAAEtI,EAAEiJ,EAAE/B,EAAE3H,EAAET,EAAEC,EAAEmK,SAAI,IAAShC,EAAEiC,gBAAgB,MAAM5J,EAAE6I,IAAI,CAACxI,GAAG,KAAKuH,EAAE,MAAMvH,EAAE,EAAEL,GAAGK,EAAEL,EAAE6I,KAAKgB,EAAEjC,EAAE5H,GAAGS,GAAGJ,GAAG6I,EAAElJ,QAAO,SAASL,EAAEqB,EAAExB,EAAEoI,EAAErI,EAAEkB,EAAET,EAAEK,EAAET,EAAE0B,EAAEyG,GAAG,IAAI+B,EAAEjK,EAAEqJ,EAAEC,EAAEC,EAAEzJ,EAAEoK,EAAEC,EAAEzK,GAAGA,EAAEgJ,KAAK,EAAE0B,EAAED,EAAE5F,OAAO,IAAI9C,GAAGqG,IAAIrG,EAAE,MAAMjB,EAAEA,EAAE,GAAG4J,EAAE,EAAE1K,EAAE,GAAG,MAAMqI,EAAEW,IAAI,GAAGuB,EAAE,EAAEA,EAAEtK,EAAE4E,OAAO0F,IAAI,GAAG,OAAOX,EAAEvB,EAAEW,IAAIuB,GAAG,OAAOX,EAAE3J,EAAEsK,KAAK,kBAAkBX,EAAE,KAAK,iBAAiBA,GAAG,iBAAiBA,EAAEhB,EAAE,KAAKgB,EAAE,KAAK,KAAKA,GAAGtG,MAAMC,QAAQqG,GAAGhB,EAAE9G,EAAE,CAAC4G,SAASkB,GAAG,KAAK,KAAK,MAAM,MAAMA,EAAET,KAAK,MAAMS,EAAEP,IAAIT,EAAEgB,EAAEf,KAAKe,EAAEd,MAAMc,EAAErI,IAAI,KAAKqI,EAAEJ,KAAKI,GAAG,CAAC,GAAGA,EAAEX,GAAGZ,EAAEuB,EAAEV,IAAIb,EAAEa,IAAI,EAAE,QAAQS,EAAEc,EAAEF,KAAKZ,GAAGC,EAAErI,KAAKoI,EAAEpI,KAAKqI,EAAEf,OAAOc,EAAEd,KAAK4B,EAAEF,QAAG,OAAY,IAAIjK,EAAE,EAAEA,EAAEoK,EAAEpK,IAAI,CAAC,IAAIqJ,EAAEc,EAAEnK,KAAKsJ,EAAErI,KAAKoI,EAAEpI,KAAKqI,EAAEf,OAAOc,EAAEd,KAAK,CAAC4B,EAAEnK,QAAG,EAAO,MAAMqJ,EAAE,KAAKE,EAAEM,EAAE1I,EAAEmI,EAAED,EAAEA,GAAGvB,EAAElH,EAAET,EAAEK,EAAET,EAAE0B,EAAEyG,IAAIlI,EAAEsJ,EAAEb,MAAMY,EAAEZ,KAAKzI,IAAIkK,IAAIA,EAAE,IAAIb,EAAEZ,KAAKyB,EAAExE,KAAK2D,EAAEZ,IAAI,KAAKa,GAAGY,EAAExE,KAAK1F,EAAEsJ,EAAEP,KAAKQ,EAAED,IAAI,MAAMC,GAAG,MAAMzJ,IAAIA,EAAEyJ,GAAG9H,EAAE4I,EAAElJ,EAAEmI,EAAED,EAAEc,EAAE3J,EAAE+I,EAAE9H,GAAGyG,GAAG,UAAUH,EAAEQ,KAAK,mBAAmBR,EAAEQ,OAAOR,EAAEe,IAAIrH,GAAGN,EAAER,MAAM,IAAIc,GAAG4H,EAAER,KAAKpH,GAAGA,EAAEwG,YAAY9G,IAAIM,EAAE,EAAE4H,IAAI,GAAGtB,EAAEc,IAAI/I,EAAE,MAAMU,GAAG,mBAAmBuH,EAAEQ,KAAK,IAAI0B,EAAEzJ,EAAE+D,OAAO0F,KAAK,MAAMzJ,EAAEyJ,IAAIjC,EAAExH,EAAEyJ,IAAI,IAAIA,EAAEG,EAAEH,KAAK,MAAME,EAAEF,IAAIK,EAAEH,EAAEF,GAAGE,EAAEF,IAAI,GAAGC,EAAE,IAAID,EAAE,EAAEA,EAAEC,EAAE3F,OAAO0F,IAAIM,EAAEL,EAAED,GAAGC,IAAID,GAAGC,IAAID,IAA4H,SAASI,EAAElJ,EAAExB,EAAEoI,EAAErI,EAAEkB,EAAET,EAAEK,GAAG,IAAIsH,EAAE0C,EAAEzK,EAAE,QAAG,IAASJ,EAAEmJ,IAAIhB,EAAEnI,EAAEmJ,IAAInJ,EAAEmJ,SAAI,OAAY,GAAGlI,GAAGmH,GAAG5H,GAAGK,GAAG,MAAML,EAAE8H,WAAW9G,EAAE,GAAG,MAAMX,GAAGA,EAAEyH,aAAa9G,EAAEA,EAAE2D,YAAY3E,GAAG2H,EAAE,SAAS,CAAC,IAAI0C,EAAEhK,EAAET,EAAE,GAAGyK,EAAEA,EAAEC,cAAc1K,EAAEL,EAAE6E,OAAOxE,GAAG,EAAE,GAAGyK,GAAGrK,EAAE,MAAMgB,EAAEA,EAAE8D,aAAa9E,EAAEK,GAAGsH,EAAEtH,EAAE,YAAO,IAASsH,EAAEA,EAAE3H,EAAEsK,YAAuO,SAASL,EAAEjJ,EAAExB,EAAEoI,GAAG,MAAMpI,EAAE,GAAGwB,EAAEuJ,YAAY/K,EAAEoI,GAAG5G,EAAExB,GAAG,MAAMoI,EAAE,GAAG,iBAAiBA,GAAGhI,EAAE4K,KAAKhL,GAAGoI,EAAEA,EAAE,KAAK,SAAS6C,EAAEzJ,EAAExB,EAAEoI,EAAErI,EAAEkB,GAAG,IAAIT,EAAEK,EAAEsH,EAAE,GAAGlH,GAAG,aAAajB,IAAIA,EAAE,SAAS,UAAUA,EAAE,GAAG,iBAAiBoI,EAAE5G,EAAEwD,MAAMkG,QAAQ9C,MAAM,CAAC,GAAG,iBAAiBrI,IAAIyB,EAAEwD,MAAMkG,QAAQnL,EAAE,IAAIA,EAAE,IAAIC,KAAKD,EAAEqI,GAAGpI,KAAKoI,GAAGqC,EAAEjJ,EAAEwD,MAAMhF,EAAE,IAAI,GAAGoI,EAAE,IAAIpI,KAAKoI,EAAErI,GAAGqI,EAAEpI,KAAKD,EAAEC,IAAIyK,EAAEjJ,EAAEwD,MAAMhF,EAAEoI,EAAEpI,QAAQ,MAAMA,EAAE,IAAI,MAAMA,EAAE,IAAIQ,EAAER,KAAKA,EAAEA,EAAE6H,QAAQ,WAAW,MAAMhH,EAAEb,EAAE+H,iBAAiBvG,IAAIxB,EAAEa,GAAGb,EAAEA,EAAEkD,MAAM,GAAG1B,EAAExB,IAAIwB,EAAExB,EAAE,IAAIwB,EAAExB,EAAEA,EAAEQ,GAAG4H,EAAED,EAAE3H,EAAE2K,EAAEC,EAAEhD,EAAErI,GAAGyB,EAAE6J,iBAAiBrL,EAAEmI,EAAE3H,GAAGgB,EAAE8J,oBAAoBtL,EAAEmI,EAAE3H,IAAI,SAASR,GAAG,YAAYA,GAAG,SAASA,GAAG,SAASA,GAAG,SAASA,GAAG,aAAaA,GAAG,SAASA,IAAIiB,GAAGjB,KAAKwB,EAAEA,EAAExB,GAAG,MAAMoI,EAAE,GAAGA,EAAE,mBAAmBA,GAAG,4BAA4BpI,IAAIA,KAAKA,EAAEA,EAAE6H,QAAQ,UAAU,KAAK,MAAMO,IAAG,IAAKA,EAAE5G,EAAE+J,kBAAkB,+BAA+BvL,EAAE+H,eAAevG,EAAEgK,eAAe,+BAA+BxL,EAAE+H,cAAcK,GAAG,MAAMA,IAAG,IAAKA,IAAI,MAAM4C,KAAKhL,GAAGwB,EAAEiK,gBAAgBzL,GAAGwB,EAAE6E,aAAarG,EAAEoI,IAAI,SAASgD,EAAEpL,GAAGyD,KAAKzD,EAAEA,EAAE4I,MAAK,GAAIpH,EAAEkK,MAAMlK,EAAEkK,MAAM1L,GAAGA,GAAG,SAASmL,EAAEnL,GAAGyD,KAAKzD,EAAEA,EAAE4I,MAAK,GAAIpH,EAAEkK,MAAMlK,EAAEkK,MAAM1L,GAAGA,GAAG,SAAS2L,EAAEnK,EAAExB,EAAEoI,GAAG,IAAIrI,EAAEkB,EAAE,IAAIlB,EAAE,EAAEA,EAAEyB,EAAEuH,IAAInE,OAAO7E,KAAKkB,EAAEO,EAAEuH,IAAIhJ,MAAMkB,EAAE+H,GAAGxH,EAAEP,EAAEiI,MAAM,mBAAmBjI,EAAE2H,MAAM3H,EAAE8H,IAAInE,OAAO,GAAG+G,EAAE1K,EAAEjB,EAAEoI,GAAGpI,EAAE0K,EAAEtC,EAAEnH,EAAEA,EAAEO,EAAEuH,IAAI,KAAK9H,EAAEiI,IAAIlJ,GAAG,mBAAmBwB,EAAEoH,OAAOpH,EAAE2H,IAAInJ,KAAK,SAASkK,EAAElK,EAAEoI,EAAErI,EAAEkB,EAAET,EAAEK,EAAEsH,EAAE0C,EAAEzK,GAAG,IAAIiI,EAAEE,EAAEI,EAAE2B,EAAEsB,EAAElC,EAAEC,EAAEC,EAAEW,EAAEG,EAAEF,EAAEC,EAAErC,EAAEQ,KAAK,QAAG,IAASR,EAAEkB,YAAY,OAAO,KAAK,MAAMvJ,EAAEsJ,MAAMjJ,EAAEL,EAAEsJ,IAAIwB,EAAEzC,EAAEc,IAAInJ,EAAEmJ,IAAId,EAAEiB,IAAI,KAAKxI,EAAE,CAACgK,KAAKxC,EAAE7G,EAAEyH,MAAMZ,EAAED,GAAG,IAAI5G,EAAE,GAAG,mBAAmBiJ,EAAE,CAAC,GAAGb,EAAExB,EAAES,MAAM0B,GAAGlC,EAAEoC,EAAEoB,cAAc5K,EAAEoH,EAAEe,KAAKsB,EAAErC,EAAEkC,EAAEA,EAAE1B,MAAM7H,MAAMqH,EAAEW,GAAG/H,EAAElB,EAAEqJ,IAAIO,GAAGpB,EAAEH,EAAEgB,IAAIrJ,EAAEqJ,KAAKJ,GAAGT,EAAEuD,KAAK,cAAcrB,GAAGA,EAAE9I,UAAUoK,OAAO3D,EAAEgB,IAAIb,EAAE,IAAIkC,EAAEb,EAAEc,IAAItC,EAAEgB,IAAIb,EAAE,IAAIlI,EAAEuJ,EAAEc,GAAGnC,EAAEe,YAAYmB,EAAElC,EAAEwD,OAAOC,GAAGzB,GAAGA,EAAE0B,IAAI1D,GAAGA,EAAEM,MAAMe,EAAErB,EAAE2D,QAAQ3D,EAAE2D,MAAM,IAAI3D,EAAEkB,QAAQiB,EAAEnC,EAAE4B,IAAIlJ,EAAE0H,EAAEJ,EAAEY,KAAI,EAAGZ,EAAEc,IAAI,IAAI,MAAMd,EAAE4D,MAAM5D,EAAE4D,IAAI5D,EAAE2D,OAAO,MAAMzB,EAAE2B,2BAA2B7D,EAAE4D,KAAK5D,EAAE2D,QAAQ3D,EAAE4D,IAAIrK,EAAE,GAAGyG,EAAE4D,MAAMrK,EAAEyG,EAAE4D,IAAI1B,EAAE2B,yBAAyBxC,EAAErB,EAAE4D,OAAO7B,EAAE/B,EAAEM,MAAM+C,EAAErD,EAAE2D,MAAMvD,EAAE,MAAM8B,EAAE2B,0BAA0B,MAAM7D,EAAE8D,oBAAoB9D,EAAE8D,qBAAqB,MAAM9D,EAAE+D,mBAAmB/D,EAAEc,IAAItD,KAAKwC,EAAE+D,uBAAuB,CAAC,GAAG,MAAM7B,EAAE2B,0BAA0BxC,IAAIU,GAAG,MAAM/B,EAAEgE,2BAA2BhE,EAAEgE,0BAA0B3C,EAAEc,IAAInC,EAAEW,KAAK,MAAMX,EAAEiE,wBAAuB,IAAKjE,EAAEiE,sBAAsB5C,EAAErB,EAAE4D,IAAIzB,IAAItC,EAAEmB,MAAMxJ,EAAEwJ,IAAI,CAAChB,EAAEM,MAAMe,EAAErB,EAAE2D,MAAM3D,EAAE4D,IAAI/D,EAAEmB,MAAMxJ,EAAEwJ,MAAMhB,EAAEY,KAAI,GAAIZ,EAAEgB,IAAInB,EAAEA,EAAEc,IAAInJ,EAAEmJ,IAAId,EAAEW,IAAIhJ,EAAEgJ,IAAIR,EAAEc,IAAIzE,QAAQuD,EAAEpC,KAAKwC,GAAGoD,EAAEvD,EAAEyC,EAAE7K,GAAG,MAAMwB,EAAE,MAAM+G,EAAEkE,qBAAqBlE,EAAEkE,oBAAoB7C,EAAErB,EAAE4D,IAAIzB,GAAG,MAAMnC,EAAEmE,oBAAoBnE,EAAEc,IAAItD,MAAK,WAAWwC,EAAEmE,mBAAmBpC,EAAEsB,EAAElC,MAAKnB,EAAEkB,QAAQiB,EAAEnC,EAAEM,MAAMe,EAAErB,EAAE2D,MAAM3D,EAAE4D,KAAK9D,EAAE7G,EAAEqI,MAAMxB,EAAED,GAAGG,EAAEY,KAAI,EAAGZ,EAAEgB,IAAInB,EAAEG,EAAE0B,IAAIjK,EAAEqI,EAAEE,EAAEwD,OAAOxD,EAAEM,MAAMN,EAAE2D,MAAM3D,EAAEkB,SAASlB,EAAE2D,MAAM3D,EAAE4D,IAAI,MAAM5D,EAAEoE,kBAAkB1L,EAAEa,EAAEA,EAAE,GAAGb,GAAGsH,EAAEoE,oBAAoBhE,GAAG,MAAMJ,EAAEqE,0BAA0BlD,EAAEnB,EAAEqE,wBAAwBtC,EAAEsB,IAAIpB,EAAE,MAAMnC,GAAGA,EAAEO,MAAM/G,GAAG,MAAMwG,EAAE/G,IAAI+G,EAAEQ,MAAMJ,SAASJ,EAAElI,EAAEH,EAAEqD,MAAMC,QAAQkH,GAAGA,EAAE,CAACA,GAAGpC,EAAErI,EAAEkB,EAAET,EAAEK,EAAEsH,EAAE0C,EAAEzK,GAAGmI,EAAE9F,KAAK2F,EAAEc,IAAId,EAAEiB,IAAI,KAAKd,EAAEc,IAAIzE,QAAQuD,EAAEpC,KAAKwC,GAAGoB,IAAIpB,EAAEuD,IAAIvD,EAAES,GAAG,MAAMT,EAAEW,KAAI,OAAQ,MAAMrI,GAAGuH,EAAEmB,MAAMxJ,EAAEwJ,KAAKnB,EAAEW,IAAIhJ,EAAEgJ,IAAIX,EAAEc,IAAInJ,EAAEmJ,KAAKd,EAAEc,IAAI2D,EAAE9M,EAAEmJ,IAAId,EAAErI,EAAEkB,EAAET,EAAEK,EAAEsH,EAAE/H,IAAIiI,EAAE7G,EAAEsL,SAASzE,EAAED,GAAG,MAAMpI,GAAGoI,EAAEmB,IAAI,MAAMnJ,GAAG,MAAMS,KAAKuH,EAAEc,IAAI2B,EAAEzC,EAAEiB,MAAMjJ,EAAES,EAAEA,EAAEuF,QAAQyE,IAAI,MAAMrJ,EAAE0H,IAAIlJ,EAAEoI,EAAErI,GAAG,OAAOqI,EAAEc,IAAI,SAASmB,EAAErK,EAAEoI,GAAG5G,EAAE4H,KAAK5H,EAAE4H,IAAIhB,EAAEpI,GAAGA,EAAEgK,MAAK,SAAS5B,GAAG,IAAIpI,EAAEoI,EAAEiB,IAAIjB,EAAEiB,IAAI,GAAGrJ,EAAEgK,MAAK,SAASxI,GAAGA,EAAEtB,KAAKkI,MAAK,MAAMpI,GAAGwB,EAAE0H,IAAIlJ,EAAEoI,EAAEmB,SAAQ,SAASsD,EAAErL,EAAExB,EAAEoI,EAAErI,EAAEkB,EAAET,EAAEK,EAAET,GAAG,IAAI0B,EAAEuG,EAAEE,EAAEI,EAAE2B,EAAEzI,EAAEuG,EAAES,MAAMxI,EAAEL,EAAE6I,MAAM,GAAG5H,EAAE,QAAQjB,EAAE4I,MAAM3H,EAAE,MAAMT,EAAE,IAAIsB,EAAE,EAAEA,EAAEtB,EAAEoE,OAAO9C,IAAI,GAAG,OAAOuG,EAAE7H,EAAEsB,OAAO,OAAO9B,EAAE4I,KAAK,IAAIP,EAAE0E,SAAS1E,EAAE2E,YAAYhN,EAAE4I,OAAOpH,GAAG6G,GAAG,CAAC7G,EAAE6G,EAAE7H,EAAEsB,GAAG,KAAK,MAAM,GAAG,MAAMN,EAAE,CAAC,GAAG,OAAOxB,EAAE4I,KAAK,OAAOzF,SAASiC,eAAe/E,GAAGmB,EAAEP,EAAEkC,SAAS8J,gBAAgB,6BAA6BjN,EAAE4I,MAAMzF,SAAS8B,cAAcjF,EAAE4I,KAAKvI,EAAE6M,IAAI,CAACA,GAAG7M,EAAE6M,KAAK1M,EAAE,KAAKJ,GAAE,EAAG,GAAG,OAAOJ,EAAE4I,KAAK/G,IAAIxB,GAAGD,GAAGoB,EAAE2L,OAAO9M,IAAImB,EAAE2L,KAAK9M,OAAO,CAAC,GAAG,MAAMG,IAAIA,EAAE,EAAE0C,MAAMhD,KAAKsB,EAAE4L,aAAa7E,GAAG1G,EAAEuG,EAAES,OAAOV,GAAGkF,wBAAwB1E,EAAEtI,EAAEgN,yBAAyBjN,EAAE,CAAC,GAAG,MAAMI,EAAE,IAAIqB,EAAE,GAAGyI,EAAE,EAAEA,EAAE9I,EAAE8L,WAAW1I,OAAO0F,IAAIzI,EAAEL,EAAE8L,WAAWhD,GAAGhK,MAAMkB,EAAE8L,WAAWhD,GAAGtJ,OAAO2H,GAAGJ,KAAKI,IAAIJ,GAAGI,EAAE4E,QAAQhF,EAAEgF,QAAQ5E,EAAE4E,SAAS/L,EAAEmG,aAAanG,EAAEmG,UAAUgB,GAAGA,EAAE4E,QAAQ,MAAlvI,SAAW/L,EAAExB,EAAEoI,EAAErI,EAAEkB,GAAG,IAAIT,EAAE,IAAIA,KAAK4H,EAAE,aAAa5H,GAAG,QAAQA,GAAGA,KAAKR,GAAGiL,EAAEzJ,EAAEhB,EAAE,KAAK4H,EAAE5H,GAAGT,GAAG,IAAIS,KAAKR,EAAEiB,GAAG,mBAAmBjB,EAAEQ,IAAI,aAAaA,GAAG,QAAQA,GAAG,UAAUA,GAAG,YAAYA,GAAG4H,EAAE5H,KAAKR,EAAEQ,IAAIyK,EAAEzJ,EAAEhB,EAAER,EAAEQ,GAAG4H,EAAE5H,GAAGT,IAA+hIyK,CAAEhJ,EAAEnB,EAAEwB,EAAEZ,EAAEb,GAAGuI,EAAE3I,EAAE+I,IAAI,IAAIjH,EAAE9B,EAAE6I,MAAMJ,SAAStI,EAAEqB,EAAE6B,MAAMC,QAAQxB,GAAGA,EAAE,CAACA,GAAG9B,EAAEoI,EAAErI,EAAE,kBAAkBC,EAAE4I,MAAM3H,EAAET,EAAEK,EAAEsH,EAAE/H,IAAIA,IAAI,UAAUC,QAAG,KAAUyB,EAAEzB,EAAEW,SAASc,IAAIN,EAAER,OAAO,aAAahB,EAAE4I,OAAO9G,IAAImJ,EAAEzJ,EAAE,QAAQM,EAAED,EAAEb,OAAM,GAAI,YAAYX,QAAG,KAAUyB,EAAEzB,EAAEmN,UAAU1L,IAAIN,EAAEgM,SAASvC,EAAEzJ,EAAE,UAAUM,EAAED,EAAE2L,SAAQ,IAAK,OAAOhM,EAAE,SAASoJ,EAAE5K,EAAEoI,EAAErI,GAAG,IAAI,mBAAmBC,EAAEA,EAAEoI,GAAGpI,EAAEyN,QAAQrF,EAAE,MAAMpI,GAAGwB,EAAE0H,IAAIlJ,EAAED,IAAI,SAAS4K,EAAE3K,EAAEoI,EAAErI,GAAG,IAAIkB,EAAET,EAAEK,EAAE,GAAGW,EAAEkM,SAASlM,EAAEkM,QAAQ1N,IAAIiB,EAAEjB,EAAE8I,OAAO7H,EAAEwM,SAASxM,EAAEwM,UAAUzN,EAAEkJ,KAAK0B,EAAE3J,EAAE,KAAKmH,IAAIrI,GAAG,mBAAmBC,EAAE4I,OAAO7I,EAAE,OAAOS,EAAER,EAAEkJ,MAAMlJ,EAAEkJ,IAAIlJ,EAAEmJ,SAAI,EAAO,OAAOlI,EAAEjB,EAAEoJ,KAAK,CAAC,GAAGnI,EAAE0M,qBAAqB,IAAI1M,EAAE0M,uBAAuB,MAAM3N,GAAGwB,EAAE0H,IAAIlJ,EAAEoI,GAAGnH,EAAEwB,KAAKxB,EAAEgJ,IAAI,KAAK,GAAGhJ,EAAEjB,EAAE+I,IAAI,IAAIlI,EAAE,EAAEA,EAAEI,EAAE2D,OAAO/D,IAAII,EAAEJ,IAAI8J,EAAE1J,EAAEJ,GAAGuH,EAAErI,GAAG,MAAMS,GAAG6H,EAAE7H,GAAG,SAASwL,EAAExK,EAAExB,EAAEoI,GAAG,OAAO3E,KAAK6F,YAAY9H,EAAE4G,GAAG,SAASwF,EAAE5N,EAAEoI,EAAErI,GAAG,IAAIkB,EAAEJ,EAAET,EAAEoB,EAAEwH,IAAIxH,EAAEwH,GAAGhJ,EAAEoI,GAAGvH,GAAGI,EAAElB,IAAI,GAAG,KAAKA,GAAGA,EAAEgJ,KAAKX,EAAEW,IAAI/I,EAAEuI,EAAE1G,EAAE,KAAK,CAAC7B,IAAII,EAAE,GAAG8J,EAAE9B,GAAGnH,EAAEmH,EAAErI,GAAGqI,GAAGW,IAAI/I,EAAEa,GAAGsH,EAAEA,OAAE,IAASC,EAAEgC,gBAAgBrK,IAAIkB,EAAE,CAAClB,GAAGc,EAAE,KAAKuH,EAAEgF,WAAWxI,OAAO,EAAE1B,MAAMhD,KAAKkI,EAAEgF,YAAY,KAAKhN,EAAEL,GAAGoI,EAAElH,GAAGoJ,EAAEjK,EAAEJ,GAAkvBwB,EAAE,CAAC0H,IAAI,SAAS1H,EAAExB,GAAG,IAAI,IAAIoI,EAAErI,EAAEkB,EAAET,EAAER,EAAEqJ,IAAIrJ,EAAEA,EAAEgJ,IAAI,IAAIZ,EAAEpI,EAAEoJ,OAAOhB,EAAEY,GAAG,IAAI,IAAIjJ,EAAEqI,EAAEkB,cAAc,MAAMvJ,EAAE8N,2BAA2BzF,EAAE0F,SAAS/N,EAAE8N,yBAAyBrM,IAAIP,EAAEmH,EAAEe,KAAK,MAAMf,EAAE2F,oBAAoB3F,EAAE2F,kBAAkBvM,GAAGP,EAAEmH,EAAEe,KAAKlI,EAAE,OAAOjB,EAAEqJ,IAAI7I,EAAE4H,EAAE0D,IAAI1D,EAAE,MAAMpI,GAAGwB,EAAExB,EAAE,MAAMwB,GAAG+H,IAAI,GAAyDlJ,EAAEsB,UAAUmM,SAAS,SAAStM,EAAExB,GAAG,IAAIoI,EAAEA,EAAE,MAAM3E,KAAK0I,KAAK1I,KAAK0I,MAAM1I,KAAKyI,MAAMzI,KAAK0I,IAAI1I,KAAK0I,IAAIrK,EAAE,GAAG2B,KAAKyI,OAAO,mBAAmB1K,IAAIA,EAAEA,EAAEM,EAAE,GAAGsG,GAAG3E,KAAKoF,QAAQrH,GAAGM,EAAEsG,EAAE5G,GAAG,MAAMA,GAAGiC,KAAK8F,MAAMvJ,GAAGyD,KAAK4F,IAAItD,KAAK/F,GAAG2J,EAAElG,QAAQpD,EAAEsB,UAAUqM,YAAY,SAASxM,GAAGiC,KAAK8F,MAAM9F,KAAKyF,KAAI,EAAG1H,GAAGiC,KAAK4F,IAAItD,KAAKvE,GAAGmI,EAAElG,QAAQpD,EAAEsB,UAAUoK,OAAOlK,EAAE,EAAE,GAAG,EAAE,mBAAmBoM,QAAQA,QAAQtM,UAAUuM,KAAK3M,KAAK0M,QAAQE,WAAWC,WAAWxE,EAAEC,IAAI,EAAE,EAAE1B,ECApsT,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE3G,EAAEyH,IAAI,EAAEzH,EAAEqI,IAAI,EAAErI,EAAEsL,OAAO,EAAEtL,EAAE4H,IAAI,EAAE5H,EAAEkM,QAAQ,SAAS,EAAEzM,EAAEJ,GAAGW,EAAE6H,KAAK7H,EAAE6H,IAAI,EAAEpI,EAAE,GAAGJ,GAAG,EAAE,EAAE,IAAId,EAAE,EAAEsO,MAAM,EAAEA,IAAI,CAACrF,GAAG,GAAGK,IAAI,KAAK,OAAOpI,GAAGlB,EAAEiJ,GAAGpE,QAAQ7E,EAAEiJ,GAAGjD,KAAK,IAAIhG,EAAEiJ,GAAG/H,GAAG,SAAS,EAAEO,GAAG,OAAO,EAAE,EAAS,SAAWA,EAAEX,EAAEL,GAAG,IAAIT,EAAE,EAAE,IAAI,GAAG,OAAOA,EAAEkB,EAAEO,EAAEzB,EAAEqJ,MAAMrJ,EAAEiJ,GAAG,CAACxI,EAAEA,EAAEK,GAAG,QAAE,EAAOA,GAAG,SAASW,GAAG,IAAIP,EAAElB,EAAEkB,EAAElB,EAAEiJ,GAAG,GAAGxH,GAAGzB,EAAEiJ,GAAG,KAAK/H,IAAIlB,EAAEiJ,GAAG,CAAC/H,EAAElB,EAAEiJ,GAAG,IAAIjJ,EAAEqJ,IAAI0E,SAAS,OAAO/N,EAAEqJ,IAAI,GAAGrJ,EAAEiJ,GAAvL,CAAE,GAAExH,GAAsL,SAAS,EAAEX,EAAEL,GAAG,IAAIT,EAAE,EAAE,IAAI,IAAIyB,EAAE2K,KAAK,GAAEpM,EAAEsO,IAAI7N,KAAKT,EAAEiJ,GAAGnI,EAAEd,EAAEsO,IAAI7N,EAAE,EAAE6N,IAAIhF,IAAItD,KAAKhG,IAAI,SAAS,EAAEc,EAAEL,GAAG,IAAIT,EAAE,EAAE,IAAI,IAAIyB,EAAE2K,KAAK,GAAEpM,EAAEsO,IAAI7N,KAAKT,EAAEiJ,GAAGnI,EAAEd,EAAEsO,IAAI7N,EAAE,EAAE6I,IAAItD,KAAKhG,IAAI,SAAS,EAAEyB,GAAG,OAAO,EAAE,EAAE,GAAE,WAAW,MAAM,CAACiM,QAAQjM,KAAI,IAA8G,SAAS,EAAEA,EAAE4G,GAAG,IAAIvH,EAAE,EAAE,IAAI,GAAG,OAAO,GAAEA,EAAEwN,IAAIjG,KAAKvH,EAAEmI,GAAGxH,IAAIX,EAAEwN,IAAIjG,EAAEvH,EAAEwI,IAAI7H,GAAGX,EAAEmI,GAAG,SAAS,EAAExH,EAAEP,GAAG,OAAO,EAAE,EAAE,GAAE,WAAW,OAAOO,IAAGP,GAAmV,SAAS,IAAI,EAAEqN,SAAQ,SAASrN,GAAG,GAAGA,EAAEgJ,IAAI,IAAIhJ,EAAEoN,IAAIhF,IAAIiF,QAAQ,IAAGrN,EAAEoN,IAAIhF,IAAIiF,QAAQ,IAAGrN,EAAEoN,IAAIhF,IAAI,GAAG,MAAMjB,GAAGnH,EAAEoN,IAAIhF,IAAI,GAAG7H,EAAE0H,IAAId,EAAEnH,EAAEsI,SAAQ,EAAE,GAAG/H,EAAEyH,IAAI,SAASzH,GAAG,EAAE,KAAK,GAAG,EAAEA,IAAIA,EAAEqI,IAAI,SAASrI,GAAG,GAAG,EAAEA,GAAG,EAAE,EAAE,IAAIX,GAAG,EAAEW,EAAE4H,KAAKiF,IAAIxN,IAAIA,EAAEwI,IAAIiF,QAAQ,IAAGzN,EAAEwI,IAAIiF,QAAQ,IAAGzN,EAAEwI,IAAI,KAAK7H,EAAEsL,OAAO,SAAS7L,GAAG,GAAG,EAAEA,GAAG,IAAIT,EAAES,EAAEmI,IAAI5I,GAAGA,EAAE6N,KAAK7N,EAAE6N,IAAIhF,IAAIzE,SAAS,IAAI,EAAEmB,KAAKvF,IAAI,IAAIgB,EAAE+M,yBAAyB,EAAE/M,EAAE+M,wBAAwB,SAAS/M,GAAG,IAAIP,EAAEmH,EAAE,WAAWoG,aAAa3N,GAAG,IAAG4N,qBAAqBxN,GAAGmN,WAAW5M,IAAIX,EAAEuN,WAAWhG,EAAE,KAAK,KAAInH,EAAEsN,sBAAsBnG,MAAM,IAAI,OAAE,GAAQ5G,EAAE4H,IAAI,SAASnI,EAAEmH,GAAGA,EAAE4B,MAAK,SAAS/I,GAAG,IAAIA,EAAEoI,IAAIiF,QAAQ,IAAGrN,EAAEoI,IAAIpI,EAAEoI,IAAIqF,QAAO,SAASlN,GAAG,OAAOA,EAAEwH,IAAI,GAAExH,MAAK,MAAMX,GAAGuH,EAAE4B,MAAK,SAASxI,GAAGA,EAAE6H,MAAM7H,EAAE6H,IAAI,OAAMjB,EAAE,GAAG5G,EAAE0H,IAAIrI,EAAEI,EAAEsI,SAAQ,GAAG,EAAEtI,EAAEmH,IAAI5G,EAAEkM,QAAQ,SAASzM,GAAG,GAAG,EAAEA,GAAG,IAAImH,EAAEnH,EAAEmI,IAAI,GAAGhB,GAAGA,EAAEiG,IAAI,IAAIjG,EAAEiG,IAAIrF,GAAGsF,QAAQ,IAAG,MAAMrN,GAAGO,EAAE0H,IAAIjI,EAAEmH,EAAEmB,OAAO,IAAI,GAAE,mBAAmBgF,sBAAsB,SAAS,GAAE/M,GAAG,IAAIP,EAAE,EAAE,mBAAmBO,EAAE4H,KAAK5H,EAAE4H,MAAM,EAAEnI,EAAE,SAAS,GAAEO,GAAG,IAAIP,EAAE,EAAEO,EAAE4H,IAAI5H,EAAEwH,KAAK,EAAE/H,EAAE,SAAS,GAAEO,EAAEP,GAAG,OAAOO,GAAGA,EAAEoD,SAAS3D,EAAE2D,QAAQ3D,EAAE+I,MAAK,SAAS/I,EAAEmH,GAAG,OAAOnH,IAAIO,EAAE4G,MAAK,SAAS,GAAE5G,EAAEP,GAAG,MAAM,mBAAmBA,EAAEA,EAAEO,GAAGP,ECAx1E,MAAM0N,GAAgB,CACzB,qBACA,yBACA,+BACA,+BACA,8BACA,gCACA,8BACA,wCACA,0CACA,6CACA,6CACA,mCACA,iCACA,+BACA,6BACA,oCACA,4BACA,4BACA,oBACA,+BACA,kBACA,gBACA,cACA,qBACA,kBACA,oBACA,4BACA,8BACA,0BACA,+BACA,gCACA,oCACA,sCACA,wCACA,0CACA,yCACA,2CACA,6CACA,wCACA,0CACA,4CACA,yCACA,2CACA,8CAESC,GAAoB,CAC7B,QACA,mBACA,aACA,eAESC,GAAoB,CAC7B,KACA,KACA,KACA,KACA,KACA,IACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,OC1GJ,SAAS,KACL,MAAMC,EAAa3L,SAAS4L,gBAC5BF,GAAkBlJ,IAAKqJ,IACnBJ,GAAkBjJ,IAAKsJ,IACnB,MAAMC,EAAW,uBAAuBF,KAAcC,IACtDH,EAAW9J,MAAMmK,eAAeD,OAS7B,SAASE,GAAiB9O,EAAM+O,GAC3C,MAAO,CACH/O,OAGAgP,MAAO,IA9Bf,SAAeD,GACX,MAAMP,EAAa3L,SAAS4L,gBAC5BF,GAAkBlJ,IAAKqJ,IACnB,GAAIK,EAAWL,GACX,IAAK,MAAOC,EAAYjO,KAAUP,OAAO8O,QAAQF,EAAWL,IAAc,CACtE,MAAME,EAAW,uBAAuBF,KAAcC,IACtDH,EAAW9J,MAAM+F,YAAYmE,EAAUlO,QAAq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","file":"primer_spec_plugin.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n","/* eslint-env amd */\n/* globals module:false */\n\n// https://github.com/umdjs/umd/blob/master/templates/returnExports.js\n(function (root, factory) {\n 'use strict';\n\n if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define([], factory);\n } else if (typeof module === 'object' && module.exports) {\n // Node. Does not work with strict CommonJS, but\n // only CommonJS-like environments that support module.exports,\n // like Node.\n module.exports = factory();\n } else {\n // Browser globals (root is window)\n root.AnchorJS = factory();\n root.anchors = new root.AnchorJS();\n }\n}(this, function () {\n 'use strict';\n\n function AnchorJS(options) {\n this.options = options || {};\n this.elements = [];\n\n /**\n * Assigns options to the internal options object, and provides defaults.\n * @param {Object} opts - Options object\n */\n function _applyRemainingDefaultOptions(opts) {\n opts.icon = Object.prototype.hasOwnProperty.call(opts, 'icon') ? opts.icon : '\\ue9cb'; // Accepts characters (and also URLs?), like '#', '¶', '❡', or '§'.\n opts.visible = Object.prototype.hasOwnProperty.call(opts, 'visible') ? opts.visible : 'hover'; // Also accepts 'always' & 'touch'\n opts.placement = Object.prototype.hasOwnProperty.call(opts, 'placement') ? opts.placement : 'right'; // Also accepts 'left'\n opts.ariaLabel = Object.prototype.hasOwnProperty.call(opts, 'ariaLabel') ? opts.ariaLabel : 'Anchor'; // Accepts any text.\n opts.class = Object.prototype.hasOwnProperty.call(opts, 'class') ? opts.class : ''; // Accepts any class name.\n opts.base = Object.prototype.hasOwnProperty.call(opts, 'base') ? opts.base : ''; // Accepts any base URI.\n // Using Math.floor here will ensure the value is Number-cast and an integer.\n opts.truncate = Object.prototype.hasOwnProperty.call(opts, 'truncate') ? Math.floor(opts.truncate) : 64; // Accepts any value that can be typecast to a number.\n opts.titleText = Object.prototype.hasOwnProperty.call(opts, 'titleText') ? opts.titleText : ''; // Accepts any text.\n }\n\n _applyRemainingDefaultOptions(this.options);\n\n /**\n * Checks to see if this device supports touch. Uses criteria pulled from Modernizr:\n * https://github.com/Modernizr/Modernizr/blob/da22eb27631fc4957f67607fe6042e85c0a84656/feature-detects/touchevents.js#L40\n * @return {Boolean} - true if the current device supports touch.\n */\n this.isTouchDevice = function() {\n return Boolean('ontouchstart' in window || window.TouchEvent || window.DocumentTouch && document instanceof DocumentTouch);\n };\n\n /**\n * Add anchor links to page elements.\n * @param {String|Array|Nodelist} selector - A CSS selector for targeting the elements you wish to add anchor links\n * to. Also accepts an array or nodeList containing the relavant elements.\n * @return {this} - The AnchorJS object\n */\n this.add = function(selector) {\n var elements,\n elsWithIds,\n idList,\n elementID,\n i,\n index,\n count,\n tidyText,\n newTidyText,\n anchor,\n visibleOptionToUse,\n hrefBase,\n indexesToDrop = [];\n\n // We reapply options here because somebody may have overwritten the default options object when setting options.\n // For example, this overwrites all options but visible:\n //\n // anchors.options = { visible: 'always'; }\n _applyRemainingDefaultOptions(this.options);\n\n visibleOptionToUse = this.options.visible;\n if (visibleOptionToUse === 'touch') {\n visibleOptionToUse = this.isTouchDevice() ? 'always' : 'hover';\n }\n\n // Provide a sensible default selector, if none is given.\n if (!selector) {\n selector = 'h2, h3, h4, h5, h6';\n }\n\n elements = _getElements(selector);\n\n if (elements.length === 0) {\n return this;\n }\n\n _addBaselineStyles();\n\n // We produce a list of existing IDs so we don't generate a duplicate.\n elsWithIds = document.querySelectorAll('[id]');\n idList = [].map.call(elsWithIds, function(el) {\n return el.id;\n });\n\n for (i = 0; i < elements.length; i++) {\n if (this.hasAnchorJSLink(elements[i])) {\n indexesToDrop.push(i);\n continue;\n }\n\n if (elements[i].hasAttribute('id')) {\n elementID = elements[i].getAttribute('id');\n } else if (elements[i].hasAttribute('data-anchor-id')) {\n elementID = elements[i].getAttribute('data-anchor-id');\n } else {\n tidyText = this.urlify(elements[i].textContent);\n\n // Compare our generated ID to existing IDs (and increment it if needed)\n // before we add it to the page.\n newTidyText = tidyText;\n count = 0;\n do {\n if (index !== undefined) {\n newTidyText = tidyText + '-' + count;\n }\n\n index = idList.indexOf(newTidyText);\n count += 1;\n } while (index !== -1);\n\n index = undefined;\n idList.push(newTidyText);\n\n elements[i].setAttribute('id', newTidyText);\n elementID = newTidyText;\n }\n\n // The following code efficiently builds this DOM structure:\n // `\n // ;`\n anchor = document.createElement('a');\n anchor.className = 'anchorjs-link ' + this.options.class;\n anchor.setAttribute('aria-label', this.options.ariaLabel);\n anchor.setAttribute('data-anchorjs-icon', this.options.icon);\n if (this.options.titleText) {\n anchor.title = this.options.titleText;\n }\n\n // Adjust the href if there's a tag. See https://github.com/bryanbraun/anchorjs/issues/98\n hrefBase = document.querySelector('base') ? window.location.pathname + window.location.search : '';\n hrefBase = this.options.base || hrefBase;\n anchor.href = hrefBase + '#' + elementID;\n\n if (visibleOptionToUse === 'always') {\n anchor.style.opacity = '1';\n }\n\n if (this.options.icon === '\\ue9cb') {\n anchor.style.font = '1em/1 anchorjs-icons';\n\n // We set lineHeight = 1 here because the `anchorjs-icons` font family could otherwise affect the\n // height of the heading. This isn't the case for icons with `placement: left`, so we restore\n // line-height: inherit in that case, ensuring they remain positioned correctly. For more info,\n // see https://github.com/bryanbraun/anchorjs/issues/39.\n if (this.options.placement === 'left') {\n anchor.style.lineHeight = 'inherit';\n }\n }\n\n if (this.options.placement === 'left') {\n anchor.style.position = 'absolute';\n anchor.style.marginLeft = '-1em';\n anchor.style.paddingRight = '.5em';\n elements[i].insertBefore(anchor, elements[i].firstChild);\n } else { // if the option provided is `right` (or anything else).\n anchor.style.paddingLeft = '.375em';\n elements[i].appendChild(anchor);\n }\n }\n\n for (i = 0; i < indexesToDrop.length; i++) {\n elements.splice(indexesToDrop[i] - i, 1);\n }\n\n this.elements = this.elements.concat(elements);\n\n return this;\n };\n\n /**\n * Removes all anchorjs-links from elements targeted by the selector.\n * @param {String|Array|Nodelist} selector - A CSS selector string targeting elements with anchor links,\n * OR a nodeList / array containing the DOM elements.\n * @return {this} - The AnchorJS object\n */\n this.remove = function(selector) {\n var index,\n domAnchor,\n elements = _getElements(selector);\n\n for (var i = 0; i < elements.length; i++) {\n domAnchor = elements[i].querySelector('.anchorjs-link');\n if (domAnchor) {\n // Drop the element from our main list, if it's in there.\n index = this.elements.indexOf(elements[i]);\n if (index !== -1) {\n this.elements.splice(index, 1);\n }\n\n // Remove the anchor from the DOM.\n elements[i].removeChild(domAnchor);\n }\n }\n\n return this;\n };\n\n /**\n * Removes all anchorjs links. Mostly used for tests.\n */\n this.removeAll = function() {\n this.remove(this.elements);\n };\n\n /**\n * Urlify - Refine text so it makes a good ID.\n *\n * To do this, we remove apostrophes, replace non-safe characters with hyphens,\n * remove extra hyphens, truncate, trim hyphens, and make lowercase.\n *\n * @param {String} text - Any text. Usually pulled from the webpage element we are linking to.\n * @return {String} - hyphen-delimited text for use in IDs and URLs.\n */\n this.urlify = function(text) {\n // Decode HTML characters such as ' ' first.\n var textareaElement = document.createElement('textarea');\n textareaElement.innerHTML = text;\n text = textareaElement.value;\n\n // Regex for finding the non-safe URL characters (many need escaping):\n // & +$,:;=?@\"#{}|^~[`%!'<>]./()*\\ (newlines, tabs, backspace, vertical tabs, and non-breaking space)\n var nonsafeChars = /[& +$,:;=?@\"#{}|^~[`%!'<>\\]./()*\\\\\\n\\t\\b\\v\\u00A0]/g,\n urlText;\n\n // The reason we include this _applyRemainingDefaultOptions is so urlify can be called independently,\n // even after setting options. This can be useful for tests or other applications.\n if (!this.options.truncate) {\n _applyRemainingDefaultOptions(this.options);\n }\n\n // Note: we trim hyphens after truncating because truncating can cause dangling hyphens.\n // Example string: // \" ⚡⚡ Don't forget: URL fragments should be i18n-friendly, hyphenated, short, and clean.\"\n urlText = text.trim() // \"⚡⚡ Don't forget: URL fragments should be i18n-friendly, hyphenated, short, and clean.\"\n .replace(/'/gi, '') // \"⚡⚡ Dont forget: URL fragments should be i18n-friendly, hyphenated, short, and clean.\"\n .replace(nonsafeChars, '-') // \"⚡⚡-Dont-forget--URL-fragments-should-be-i18n-friendly--hyphenated--short--and-clean-\"\n .replace(/-{2,}/g, '-') // \"⚡⚡-Dont-forget-URL-fragments-should-be-i18n-friendly-hyphenated-short-and-clean-\"\n .substring(0, this.options.truncate) // \"⚡⚡-Dont-forget-URL-fragments-should-be-i18n-friendly-hyphenated-\"\n .replace(/^-+|-+$/gm, '') // \"⚡⚡-Dont-forget-URL-fragments-should-be-i18n-friendly-hyphenated\"\n .toLowerCase(); // \"⚡⚡-dont-forget-url-fragments-should-be-i18n-friendly-hyphenated\"\n\n return urlText;\n };\n\n /**\n * Determines if this element already has an AnchorJS link on it.\n * Uses this technique: http://stackoverflow.com/a/5898748/1154642\n * @param {HTMLElement} el - a DOM node\n * @return {Boolean} true/false\n */\n this.hasAnchorJSLink = function(el) {\n var hasLeftAnchor = el.firstChild && (' ' + el.firstChild.className + ' ').indexOf(' anchorjs-link ') > -1,\n hasRightAnchor = el.lastChild && (' ' + el.lastChild.className + ' ').indexOf(' anchorjs-link ') > -1;\n\n return hasLeftAnchor || hasRightAnchor || false;\n };\n\n /**\n * Turns a selector, nodeList, or array of elements into an array of elements (so we can use array methods).\n * It also throws errors on any other inputs. Used to handle inputs to .add and .remove.\n * @param {String|Array|Nodelist} input - A CSS selector string targeting elements with anchor links,\n * OR a nodeList / array containing the DOM elements.\n * @return {Array} - An array containing the elements we want.\n */\n function _getElements(input) {\n var elements;\n if (typeof input === 'string' || input instanceof String) {\n // See https://davidwalsh.name/nodelist-array for the technique transforming nodeList -> Array.\n elements = [].slice.call(document.querySelectorAll(input));\n // I checked the 'input instanceof NodeList' test in IE9 and modern browsers and it worked for me.\n } else if (Array.isArray(input) || input instanceof NodeList) {\n elements = [].slice.call(input);\n } else {\n throw new TypeError('The selector provided to AnchorJS was invalid.');\n }\n\n return elements;\n }\n\n /**\n * _addBaselineStyles\n * Adds baseline styles to the page, used by all AnchorJS links irregardless of configuration.\n */\n function _addBaselineStyles() {\n // We don't want to add global baseline styles if they've been added before.\n if (document.head.querySelector('style.anchorjs') !== null) {\n return;\n }\n\n var style = document.createElement('style'),\n linkRule =\n '.anchorjs-link{' +\n 'opacity:0;' +\n 'text-decoration:none;' +\n '-webkit-font-smoothing:antialiased;' +\n '-moz-osx-font-smoothing:grayscale' +\n '}',\n hoverRule =\n ':hover>.anchorjs-link,' +\n '.anchorjs-link:focus{' +\n 'opacity:1' +\n '}',\n anchorjsLinkFontFace =\n '@font-face{' +\n 'font-family:anchorjs-icons;' + // Icon from icomoon; 10px wide & 10px tall; 2 empty below & 4 above\n 'src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format(\"truetype\")' +\n '}',\n pseudoElContent =\n '[data-anchorjs-icon]::after{' +\n 'content:attr(data-anchorjs-icon)' +\n '}',\n firstStyleEl;\n\n style.className = 'anchorjs';\n style.appendChild(document.createTextNode('')); // Necessary for Webkit.\n\n // We place it in the head with the other style tags, if possible, so as to\n // not look out of place. We insert before the others so these styles can be\n // overridden if necessary.\n firstStyleEl = document.head.querySelector('[rel=\"stylesheet\"],style');\n if (firstStyleEl === undefined) {\n document.head.appendChild(style);\n } else {\n document.head.insertBefore(style, firstStyleEl);\n }\n\n style.sheet.insertRule(linkRule, style.sheet.cssRules.length);\n style.sheet.insertRule(hoverRule, style.sheet.cssRules.length);\n style.sheet.insertRule(pseudoElContent, style.sheet.cssRules.length);\n style.sheet.insertRule(anchorjsLinkFontFace, style.sheet.cssRules.length);\n }\n }\n\n return AnchorJS;\n}));\n","var n,l,u,i,t,o,r,f={},e=[],c=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function s(n,l){for(var u in l)n[u]=l[u];return n}function a(n){var l=n.parentNode;l&&l.removeChild(n)}function v(n,l,u){var i,t,o,r=arguments,f={};for(o in l)\"key\"==o?i=l[o]:\"ref\"==o?t=l[o]:f[o]=l[o];if(arguments.length>3)for(u=[u],o=3;o1&&T(t,l,u),l=x(u,t,t,n.__k,null,t.__e,l),\"function\"==typeof n.type&&(n.__d=l)))}function $(l,u,i,t,o,r,f,e,c){var a,v,h,y,_,w,k,g,b,x,A,P=u.type;if(void 0!==u.constructor)return null;null!=i.__h&&(c=i.__h,e=u.__e=i.__e,u.__h=null,r=[e]),(a=n.__b)&&a(u);try{n:if(\"function\"==typeof P){if(g=u.props,b=(a=P.contextType)&&t[a.__c],x=a?b?b.props.value:a.__:t,i.__c?k=(v=u.__c=i.__c).__=v.__E:(\"prototype\"in P&&P.prototype.render?u.__c=v=new P(g,x):(u.__c=v=new d(g,x),v.constructor=P,v.render=M),b&&b.sub(v),v.props=g,v.state||(v.state={}),v.context=x,v.__n=t,h=v.__d=!0,v.__h=[]),null==v.__s&&(v.__s=v.state),null!=P.getDerivedStateFromProps&&(v.__s==v.state&&(v.__s=s({},v.__s)),s(v.__s,P.getDerivedStateFromProps(g,v.__s))),y=v.props,_=v.state,h)null==P.getDerivedStateFromProps&&null!=v.componentWillMount&&v.componentWillMount(),null!=v.componentDidMount&&v.__h.push(v.componentDidMount);else{if(null==P.getDerivedStateFromProps&&g!==y&&null!=v.componentWillReceiveProps&&v.componentWillReceiveProps(g,x),!v.__e&&null!=v.shouldComponentUpdate&&!1===v.shouldComponentUpdate(g,v.__s,x)||u.__v===i.__v){v.props=g,v.state=v.__s,u.__v!==i.__v&&(v.__d=!1),v.__v=u,u.__e=i.__e,u.__k=i.__k,v.__h.length&&f.push(v),T(u,e,l);break n}null!=v.componentWillUpdate&&v.componentWillUpdate(g,v.__s,x),null!=v.componentDidUpdate&&v.__h.push(function(){v.componentDidUpdate(y,_,w)})}v.context=x,v.props=g,v.state=v.__s,(a=n.__r)&&a(u),v.__d=!1,v.__v=u,v.__P=l,a=v.render(v.props,v.state,v.context),v.state=v.__s,null!=v.getChildContext&&(t=s(s({},t),v.getChildContext())),h||null==v.getSnapshotBeforeUpdate||(w=v.getSnapshotBeforeUpdate(y,_)),A=null!=a&&a.type==p&&null==a.key?a.props.children:a,m(l,Array.isArray(A)?A:[A],u,i,t,o,r,f,e,c),v.base=u.__e,u.__h=null,v.__h.length&&f.push(v),k&&(v.__E=v.__=null),v.__e=!1}else null==r&&u.__v===i.__v?(u.__k=i.__k,u.__e=i.__e):u.__e=H(i.__e,u,i,t,o,r,f,c);(a=n.diffed)&&a(u)}catch(l){u.__v=null,(c||null!=r)&&(u.__e=e,u.__h=!!c,r[r.indexOf(e)]=null),n.__e(l,u,i)}return u.__e}function j(l,u){n.__c&&n.__c(u,l),l.some(function(u){try{l=u.__h,u.__h=[],l.some(function(n){n.call(u)})}catch(l){n.__e(l,u.__v)}})}function H(n,l,u,i,t,o,r,c){var s,a,v,h,y,p=u.props,d=l.props;if(t=\"svg\"===l.type||t,null!=o)for(s=0;s3)for(u=[u],o=3;o=i.__.length&&i.__.push({}),i.__[t]}function l(n){return o=1,p(w,n)}function p(n,r,o){var i=m(t++,2);return i.t=n,i.__c||(i.__=[o?o(r):w(void 0,r),function(n){var t=i.t(i.__[0],n);i.__[0]!==t&&(i.__=[t,i.__[1]],i.__c.setState({}))}],i.__c=u),i.__}function y(r,o){var i=m(t++,3);!n.__s&&k(i.__H,o)&&(i.__=r,i.__H=o,u.__H.__h.push(i))}function h(r,o){var i=m(t++,4);!n.__s&&k(i.__H,o)&&(i.__=r,i.__H=o,u.__h.push(i))}function s(n){return o=5,d(function(){return{current:n}},[])}function _(n,t,u){o=6,h(function(){\"function\"==typeof n?n(t()):n&&(n.current=t())},null==u?u:u.concat(n))}function d(n,u){var r=m(t++,7);return k(r.__H,u)&&(r.__=n(),r.__H=u,r.__h=n),r.__}function A(n,t){return o=8,d(function(){return n},t)}function F(n){var r=u.context[n.__c],o=m(t++,9);return o.__c=n,r?(null==o.__&&(o.__=!0,r.sub(u)),r.props.value):n.__}function T(t,u){n.useDebugValue&&n.useDebugValue(u?u(t):t)}function q(n){var r=m(t++,10),o=l();return r.__=n,u.componentDidCatch||(u.componentDidCatch=function(n){r.__&&r.__(n),o[1](n)}),[o[0],function(){o[1](void 0)}]}function x(){i.forEach(function(t){if(t.__P)try{t.__H.__h.forEach(g),t.__H.__h.forEach(j),t.__H.__h=[]}catch(u){t.__H.__h=[],n.__e(u,t.__v)}}),i=[]}n.__b=function(n){u=null,c&&c(n)},n.__r=function(n){f&&f(n),t=0;var r=(u=n.__c).__H;r&&(r.__h.forEach(g),r.__h.forEach(j),r.__h=[])},n.diffed=function(t){e&&e(t);var o=t.__c;o&&o.__H&&o.__H.__h.length&&(1!==i.push(o)&&r===n.requestAnimationFrame||((r=n.requestAnimationFrame)||function(n){var t,u=function(){clearTimeout(r),b&&cancelAnimationFrame(t),setTimeout(n)},r=setTimeout(u,100);b&&(t=requestAnimationFrame(u))})(x)),u=void 0},n.__c=function(t,u){u.some(function(t){try{t.__h.forEach(g),t.__h=t.__h.filter(function(n){return!n.__||j(n)})}catch(r){u.some(function(n){n.__h&&(n.__h=[])}),u=[],n.__e(r,t.__v)}}),a&&a(t,u)},n.unmount=function(t){v&&v(t);var u=t.__c;if(u&&u.__H)try{u.__H.__.forEach(g)}catch(t){n.__e(t,u.__v)}};var b=\"function\"==typeof requestAnimationFrame;function g(n){var t=u;\"function\"==typeof n.__c&&n.__c(),u=t}function j(n){var t=u;n.__c=n.__(),u=t}function k(n,t){return!n||n.length!==t.length||t.some(function(t,u){return t!==n[u]})}function w(n,t){return\"function\"==typeof t?t(n):t}export{l as useState,p as useReducer,y as useEffect,h as useLayoutEffect,s as useRef,_ as useImperativeHandle,d as useMemo,A as useCallback,F as useContext,T as useDebugValue,q as useErrorBoundary};\n//# sourceMappingURL=hooks.module.js.map\n","export const SUBTHEME_VARS = [\n '--sidebar-bg-color',\n '--sidebar-border-color',\n '--sidebar-heading-text-color',\n '--sidebar-heading-link-color',\n '--sidebar-toc-h1-link-color',\n '--sidebar-toc-h1-border-color',\n '--sidebar-toc-h2-link-color',\n '--sidebar-active-toc-section-bg-color',\n '--sidebar-active-toc-section-link-color',\n '--sidebar-active-toc-h1-section-link-color',\n '--sidebar-active-toc-h2-section-link-color',\n '--sidebar-toc-section-link-color',\n '--sidebar-tt-active-text-color',\n '--sidebar-tt-active-bg-color',\n '--sidebar-tt-active-border',\n '--sidebar-tt-active-border-radius',\n '--main-heading-text-color',\n '--main-heading-link-color',\n '--main-link-color',\n '--hoverable-link-hover-color',\n '--tt-text-color',\n '--tt-bg-color',\n '--tt-border',\n '--tt-border-radius',\n '--main-bg-color',\n '--main-text-color',\n '--main-table-pre-bg-color',\n '--main-table-pre-text-color',\n '--main-table-pre-border',\n '--main-blockquote-text-color',\n '--main-blockquote-text-border',\n '--main-header-border-bottom-color',\n '--primer-spec-callout-info-bg-color',\n '--primer-spec-callout-info-text-color',\n '--primer-spec-callout-info-border-color',\n '--primer-spec-callout-warning-bg-color',\n '--primer-spec-callout-warning-text-color',\n '--primer-spec-callout-warning-border-color',\n '--primer-spec-callout-danger-bg-color',\n '--primer-spec-callout-danger-text-color',\n '--primer-spec-callout-danger-border-color',\n '--primer-spec-callout-success-bg-color',\n '--primer-spec-callout-success-text-color',\n '--primer-spec-callout-success-border-color',\n];\nexport const ROUGE_STYLE_PROPS = [\n 'color',\n 'background-color',\n 'font-style',\n 'font-weight',\n];\nexport const ROUGE_CLASS_NAMES = [\n 'cm',\n 'cp',\n 'c1',\n 'cs',\n 'cd',\n 'c',\n 'err',\n 'gd',\n 'ge',\n 'gr',\n 'gh',\n 'gi',\n 'go',\n 'gp',\n 'gs',\n 'gu',\n 'gt',\n 'kc',\n 'kd',\n 'kn',\n 'kp',\n 'kr',\n 'kt',\n 'kv',\n 'k',\n 'mf',\n 'mh',\n 'il',\n 'mi',\n 'mo',\n 'mb',\n 'mx',\n 'm',\n 'sb',\n 'sc',\n 'sd',\n 's2',\n 'se',\n 'sh',\n 'si',\n 'sx',\n 'sr',\n 's1',\n 'ss',\n 's',\n 'na',\n 'bp',\n 'nb',\n 'nc',\n 'no',\n 'nd',\n 'ni',\n 'ne',\n 'nf',\n 'nl',\n 'nn',\n 'nt',\n 'nx',\n 'vc',\n 'vg',\n 'vi',\n 'nv',\n 'ow',\n 'o',\n 'w',\n 'txt',\n];\n","import { ROUGE_CLASS_NAMES, ROUGE_STYLE_PROPS, } from '../Subtheme';\nfunction apply(theme_vars) {\n const documentEl = document.documentElement;\n ROUGE_CLASS_NAMES.map((class_name) => {\n if (theme_vars[class_name]) {\n for (const [style_prop, value] of Object.entries(theme_vars[class_name])) {\n const var_name = `--primer-spec-rouge-${class_name}-${style_prop}`;\n documentEl.style.setProperty(var_name, value !== null && value !== void 0 ? value : null);\n }\n }\n });\n}\nfunction reset() {\n const documentEl = document.documentElement;\n ROUGE_CLASS_NAMES.map((class_name) => {\n ROUGE_STYLE_PROPS.map((style_prop) => {\n const var_name = `--primer-spec-rouge-${class_name}-${style_prop}`;\n documentEl.style.removeProperty(var_name);\n });\n });\n}\n/**\n * Create a Rouge (syntax highlighting) theme based on a given config\n * @param name The name of the subtheme\n * @param theme_vars The config describing this Rouge theme\n */\nexport default function createRougeTheme(name, theme_vars) {\n return {\n name,\n // TODO: Figure out why TypeScript is not able to unify RougeVarsType and\n // RougeVarsTypeInternal.\n apply: () => apply(theme_vars),\n reset,\n };\n}\n","// The styles in this file were partially generated using the command:\n// bundle exec rougify style monokai.sublime\n// Readability changes are based on the original Roguify source:\n// https://github.com/rouge-ruby/rouge/blob/184848ae363c41b7f8372791d6f4701bf601c722/lib/rouge/themes/monokai_sublime.rb\n// const black = '#000000';\nconst bright_green = '#a6e22e';\nconst bright_pink = '#f92672';\nconst carmine = '#960050';\nconst dark = '#49483e';\n// const dark_graphite = '#272822';\nconst dark_grey = '#999999';\n// const dark_red = '#aa0000';\nconst dimgrey = '#868064';\n// const emperor = '#555555';\nconst grey = '#999999';\nconst light_grey = '#aaaaaa';\nconst light_violet = '#ae81ff';\nconst soft_cyan = '#66d9ef';\nconst soft_yellow = '#e6db74';\n// const very_dark = '#1e0010';\n// const whitish = '#f8f8f2';\nconst orange = '#f6aa11';\nconst white = '#ffffff';\nconst monokai_rouge_style = {\n cm: {\n // Comment::Multiline\n color: dimgrey,\n },\n cp: {\n // Comment::Preproc\n color: light_grey,\n },\n c1: {\n // Comment::Single\n color: dimgrey,\n },\n cs: {\n // Comment::Special\n color: dimgrey,\n },\n cd: {\n // Comment\n color: dimgrey,\n },\n c: {\n // Comment\n color: dimgrey,\n },\n err: {\n // Error\n color: carmine,\n },\n gd: {\n // Generic::Deleted\n color: dark,\n },\n ge: {\n // Generic::Emph\n color: light_grey,\n 'font-style': 'italic',\n },\n gr: {\n // Generic::Error\n color: carmine,\n },\n gh: {\n // Generic::Heading\n color: grey,\n },\n gi: {\n // Generic::Inserted\n color: dark,\n },\n go: {\n // Generic::Output\n color: dark_grey,\n },\n gp: {\n // Generic::Prompt\n color: dark_grey,\n },\n gs: {\n // Generic::Strong\n 'font-weight': 'bold',\n },\n gu: {\n // Generic::Subheading\n color: light_grey,\n },\n gt: {\n // Generic::Traceback\n color: carmine,\n },\n kc: {\n // Keyword::Constant\n color: soft_cyan,\n },\n kd: {\n // Keyword::Declaration\n color: soft_cyan,\n 'font-style': 'italic',\n },\n kn: {\n // Keyword::Namespace\n color: bright_pink,\n },\n kp: {\n // Keyword::Pseudo\n color: bright_pink,\n },\n kr: {\n // Keyword::Reserved\n color: soft_cyan,\n },\n kt: {\n // Keyword::Type\n color: soft_cyan,\n 'font-style': 'italic',\n },\n kv: {\n // Keyword\n color: bright_pink,\n },\n k: {\n // Keyword\n color: bright_pink,\n },\n mf: {\n // Literal::Number::Float\n color: light_violet,\n },\n mh: {\n // Literal::Number::Hex\n color: light_violet,\n },\n il: {\n // Literal::Number::Integer::Long\n color: light_violet,\n },\n mi: {\n // Literal::Number::Integer\n color: light_violet,\n },\n mo: {\n // Literal::Number::Oct\n color: light_violet,\n },\n mb: {\n // Literal::Number\n color: light_violet,\n },\n mx: {\n // Literal::Number\n color: light_violet,\n },\n m: {\n // Literal::Number\n color: light_violet,\n },\n sb: {\n // Literal::String::Backtick\n color: soft_yellow,\n },\n sc: {\n // Literal::String::Char\n color: light_violet,\n },\n sd: {\n // Literal::String::Symbol\n color: soft_yellow,\n },\n s2: {\n // Literal::String::Double\n color: soft_yellow,\n },\n se: {\n // Literal::String::Escape\n color: light_violet,\n },\n sh: {\n // Literal::String::Heredoc\n color: soft_yellow,\n },\n si: {\n // Literal::String::Interpol\n color: soft_yellow,\n },\n sx: {\n // Literal::String::Other\n color: soft_yellow,\n },\n sr: {\n // Literal::String::Regex\n color: orange,\n },\n s1: {\n // Literal::String::Single\n color: soft_yellow,\n },\n ss: {\n // Literal::String::Symbol\n color: light_violet,\n },\n s: {\n // Literal::String\n color: soft_yellow,\n },\n na: {\n // Name::Attribute\n color: bright_green,\n },\n bp: {\n // Name::Builtin::Pseudo\n color: white,\n },\n nb: {\n // Name::Builtin\n color: orange,\n },\n nc: {\n // Name::Class\n color: bright_green,\n },\n no: {\n // Name::Constant\n color: soft_cyan,\n },\n nd: {\n // Name::Decorator\n color: bright_green,\n },\n ni: {\n // Name::Entity\n color: white,\n },\n ne: {\n // Name::Exception\n color: bright_green,\n },\n nf: {\n // Name::Function\n color: bright_green,\n },\n nl: {\n // Name::Label\n color: white,\n },\n nn: {\n // Name::Namespace\n color: white,\n },\n nt: {\n // Name::Tag\n color: bright_pink,\n },\n nx: {\n // Name::Other\n color: white,\n },\n vc: {\n // Name::Variable::Class\n color: white,\n },\n vg: {\n // Name::Variable::Global\n color: white,\n },\n vi: {\n // Name::Variable::Instance\n color: white,\n },\n nv: {\n // Name::Variable::Instance\n color: white,\n },\n ow: {\n // Operator::Word\n color: bright_pink,\n },\n o: {\n // Operator\n color: white,\n },\n w: {\n // Text::Whitespace\n color: white,\n },\n txt: {\n color: white,\n 'background-color': 'rgb(35, 37, 41)',\n },\n};\nexport default monokai_rouge_style;\n","import createRougeTheme from './createRougeTheme';\nimport default_rouge_theme from './default.rouge';\nimport monokai_rouge_theme from './monokai.rouge';\nconst registered_rouge_themes = {\n default: createRougeTheme('default', default_rouge_theme),\n monokai: createRougeTheme('monokai', monokai_rouge_theme),\n};\nexport default registered_rouge_themes;\n","const default_rouge_style = {\n cm: {\n // Comment::Multiline\n color: '#999988',\n 'font-style': 'italic',\n },\n cp: {\n // Comment::Preproc\n color: '#999999',\n 'font-weight': 'bold',\n },\n c1: {\n // Comment::Single\n color: '#999988',\n 'font-style': 'italic',\n },\n cs: {\n // Comment::Special\n color: '#999999',\n 'font-weight': 'bold',\n 'font-style': 'italic',\n },\n cd: {\n // Comment\n color: '#999988',\n 'font-style': 'italic',\n },\n c: {\n // Comment\n color: '#999988',\n 'font-style': 'italic',\n },\n err: {\n // Error\n color: '#a61717',\n 'background-color': '#e3d2d2',\n },\n gd: {\n // Generic::Deleted\n color: '#000000',\n 'background-color': '#ffdddd',\n },\n ge: {\n // Generic::Emph\n color: '#000000',\n 'font-style': 'italic',\n },\n gr: {\n // Generic::Error\n color: '#aa0000',\n },\n gh: {\n // Generic::Heading\n color: '#999999',\n },\n gi: {\n // Generic::Inserted\n color: '#000000',\n 'background-color': '#ddffdd',\n },\n go: {\n // Generic::Output\n color: '#888888',\n },\n gp: {\n // Generic::Prompt\n color: '#555555',\n },\n gs: {\n // Generic::Strong\n 'font-weight': 'bold',\n },\n gu: {\n // Generic::Subheading\n color: '#aaaaaa',\n },\n gt: {\n // Generic::Traceback\n color: '#aa0000',\n },\n kc: {\n // Keyword::Constant\n color: '#000000',\n 'font-weight': 'bold',\n },\n kd: {\n // Keyword::Declaration\n color: '#000000',\n 'font-weight': ' bold',\n },\n kn: {\n // Keyword::Namespace\n color: '#000000',\n 'font-weight': 'bold',\n },\n kp: {\n // Keyword::Pseudo\n color: '#000000',\n 'font-weight': 'bold',\n },\n kr: {\n // Keyword::Reserved\n color: '#000000',\n 'font-weight': 'bold',\n },\n kt: {\n // Keyword::Type\n color: '#445588',\n 'font-weight': 'bold',\n },\n kv: {\n // Keyword\n color: '#000000',\n 'font-weight': 'bold',\n },\n k: {\n // Keyword\n color: '#000000',\n 'font-weight': 'bold',\n },\n mf: {\n // Literal::Number::Float\n color: '#009999',\n },\n mh: {\n // Literal::Number::Hex\n color: '#009999',\n },\n il: {\n // Literal::Number::Integer::Long\n color: '#009999',\n },\n mi: {\n // Literal::Number::Integer\n color: '#009999',\n },\n mo: {\n // Literal::Number::Oct\n color: '#009999',\n },\n mb: {\n // Literal::Number\n color: '#009999',\n },\n mx: {\n // Literal::Number\n color: '#009999',\n },\n m: {\n // Literal::Number\n color: '#009999',\n },\n sb: {\n // Literal::String::Backtick\n color: '#d14',\n },\n sc: {\n // Literal::String::Char\n color: '#d14',\n },\n sd: {\n // Literal::String::Symbol\n color: '#d14',\n },\n s2: {\n // Literal::String::Double\n color: '#d14',\n },\n se: {\n // Literal::String::Escape\n color: '#d14',\n },\n sh: {\n // Literal::String::Heredoc\n color: '#d14',\n },\n si: {\n // Literal::String::Interpol\n color: '#d14',\n },\n sx: {\n // Literal::String::Other\n color: '#d14',\n },\n sr: {\n // Literal::String::Regex\n color: '#009926',\n },\n s1: {\n // Literal::String::Single\n color: '#d14',\n },\n ss: {\n // Literal::String::Symbol\n color: '#990073',\n },\n s: {\n // Literal::String\n color: '#d14',\n },\n na: {\n // Name::Attribute\n color: '#008080',\n },\n bp: {\n // Name::Builtin::Pseudo\n color: '#999999',\n },\n nb: {\n // Name::Builtin\n color: '#0086B3',\n },\n nc: {\n // Name::Class\n color: '#445588',\n 'font-weight': 'bold',\n },\n no: {\n // Name::Constant\n color: '#008080',\n },\n nd: {\n // Name::Decorator\n color: '#3c5d5d',\n 'font-weight': 'bold',\n },\n ni: {\n // Name::Entity\n color: '#800080',\n },\n ne: {\n // Name::Exception\n color: '#990000',\n 'font-weight': 'bold',\n },\n nf: {\n // Name::Function\n color: '#990000',\n 'font-weight': 'bold',\n },\n nl: {\n // Name::Label\n color: '#990000',\n 'font-weight': 'bold',\n },\n nn: {\n // Name::Namespace\n color: '#555555',\n },\n nt: {\n // Name::Tag\n color: '#000080',\n },\n nx: {\n // Name::Other\n color: '#000000',\n },\n vc: {\n // Name::Variable::Class\n color: '#008080',\n },\n vg: {\n // Name::Variable::Global\n color: '#008080',\n },\n vi: {\n // Name::Variable::Instance\n color: '#008080',\n },\n nv: {\n // Name::Variable::Instance\n color: '#008080',\n },\n ow: {\n // Operator::Word\n color: '#000000',\n 'font-weight': 'bold',\n },\n o: {\n // Operator\n color: '#000000',\n 'font-weight': 'bold',\n },\n w: {\n // Text::Whitespace\n color: '#bbbbbb',\n },\n txt: {\n 'background-color': '#f8f8f8',\n },\n};\nexport default default_rouge_style;\n","import { SUBTHEME_VARS } from './Subtheme';\nimport RougeThemes from './rouge_themes';\nfunction apply(theme_definition, mode) {\n const theme_vars = theme_definition[mode];\n const bodyEl = document.body;\n for (const [theme_var, value] of Object.entries(theme_vars)) {\n bodyEl.style.setProperty(theme_var, value || null);\n }\n let rouge_theme_name = theme_vars['rouge_theme'];\n if (!rouge_theme_name || !RougeThemes[rouge_theme_name]) {\n rouge_theme_name = 'default';\n }\n RougeThemes[rouge_theme_name].apply();\n}\nfunction reset(theme_definition, mode) {\n const theme_vars = theme_definition[mode];\n const bodyEl = document.body;\n SUBTHEME_VARS.map((theme_var) => {\n bodyEl.style.removeProperty(theme_var);\n });\n if (theme_vars['rouge_theme'] && RougeThemes[theme_vars['rouge_theme']]) {\n RougeThemes[theme_vars['rouge_theme']].reset();\n }\n}\n/**\n * Create a Subtheme based on a given CSS config\n * @param name The name of the subtheme\n * @param theme_definition The CSS variables describing this subtheme\n */\nexport default function createSubtheme(name, label, theme_definition) {\n return {\n name,\n label,\n theme_definition,\n apply: (mode) => apply(theme_definition, mode),\n reset: (mode) => reset(theme_definition, mode),\n };\n}\n","const MAIN_TEXT_COLOR = '#c9d1d9';\nconst CODE_COLOR = 'white';\nconst CODE_BG_COLOR = '#161b22';\nconst CODE_BORDER = '1px solid rgb(60, 62, 66)';\nconst BORDER_LINE_COLOR = '#21262d';\nexport default {\n '--sidebar-border-color': BORDER_LINE_COLOR,\n '--main-text-color': MAIN_TEXT_COLOR,\n '--main-table-pre-bg-color': CODE_BG_COLOR,\n '--main-table-pre-text-color': CODE_COLOR,\n '--main-table-pre-border': CODE_BORDER,\n '--tt-bg-color': 'rgba(240, 246, 252, 0.15)',\n '--tt-text-color': MAIN_TEXT_COLOR,\n '--tt-border-radius': '6px',\n // Use the sidebar active color for each theme\n '--sidebar-tt-active-bg-color': 'rgba(0, 0, 0, 0)',\n '--main-blockquote-text-color': '#8b949e',\n '--main-blockquote-text-border': '#3b434b',\n '--main-header-border-bottom-color': BORDER_LINE_COLOR,\n '--primer-spec-callout-info-bg-color': 'rgba(56, 139, 253, 0.1)',\n '--primer-spec-callout-info-text-color': '#79c0ff',\n '--primer-spec-callout-info-border-color': 'rgba(56, 139, 253, 0.4)',\n '--primer-spec-callout-warning-bg-color': 'rgba(187, 128, 9, 0.1)',\n '--primer-spec-callout-warning-text-color': '#e3b341',\n '--primer-spec-callout-warning-border-color': 'rgba(187, 128, 9, 0.4)',\n '--primer-spec-callout-danger-bg-color': 'rgba(248, 81, 73, 0.1)',\n '--primer-spec-callout-danger-text-color': '#ff7b72',\n '--primer-spec-callout-danger-border-color': 'rgba(248, 81, 73, 0.4)',\n '--primer-spec-callout-success-bg-color': 'rgba(46, 160, 67, 0.1)',\n '--primer-spec-callout-success-text-color': '#56d364',\n '--primer-spec-callout-success-border-color': 'rgba(46, 160, 67, 0.4)',\n};\n","import common_dark_theme_colors from './common_dark_theme_colors';\nconst DEFAULT_DARK_BG_COLOR = '#0d1117'; // GitHub's dark mode background color\nconst DEFAULT_DARK_MAIN_HEADING_COLOR = '#e7ebee'; // lighten(#c9d1d9 (MAIN_TEXT_COLOR), 10%)\nconst DEFAULT_DARK_SIDEBAR_HEADING_COLOR = '#cccccc'; // darken(MAIN_HEADING_COLOR, 15%)\nconst DEFAULT_DARK_LINK_COLOR = '#58a6ff'; // GitHub's dark mode link color\nconst default_theme_vars = {\n light: { rouge_theme: 'default' },\n dark: Object.assign(Object.assign({ '--sidebar-bg-color': DEFAULT_DARK_BG_COLOR, '--sidebar-heading-text-color': DEFAULT_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-heading-link-color': DEFAULT_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-toc-h1-link-color': DEFAULT_DARK_LINK_COLOR, '--sidebar-toc-h1-border-color': '#555', '--sidebar-toc-h2-link-color': DEFAULT_DARK_LINK_COLOR, '--sidebar-active-toc-section-bg-color': '#e4d93f', '--sidebar-active-toc-section-link-color': DEFAULT_DARK_BG_COLOR, '--sidebar-active-toc-h1-section-link-color': DEFAULT_DARK_BG_COLOR, '--sidebar-active-toc-h2-section-link-color': DEFAULT_DARK_BG_COLOR, '--sidebar-toc-section-link-color': DEFAULT_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-tt-active-text-color': DEFAULT_DARK_BG_COLOR, '--main-heading-text-color': DEFAULT_DARK_MAIN_HEADING_COLOR, '--main-heading-link-color': DEFAULT_DARK_LINK_COLOR, '--main-link-color': DEFAULT_DARK_LINK_COLOR, '--hoverable-link-hover-color': '#9dd2fb', '--main-bg-color': DEFAULT_DARK_BG_COLOR }, common_dark_theme_colors), { rouge_theme: 'monokai' }),\n};\nexport default default_theme_vars;\n","import common_dark_theme_colors from './common_dark_theme_colors';\nconst BELLA_PRIMARY_TEXT_COLOR = 'rgb(69, 98, 115)';\nconst BELLA_MAIN_LINK_COLOR = 'rgb(219, 71, 93)';\nconst BELLA_DARK_PRIMARY_COLOR = 'rgb(67, 116, 121)';\nconst BELLA_DARK_PRIMARY_HEADING_COLOR = '#61a1a8'; // lighten($BELLA_DARK_PRIMARY_COLOR, 15%)\nconst BELLA_DARK_MAIN_LINK_COLOR = 'rgb(218, 128, 131)';\nconst BELLA_DARK_SIDEBAR_HEADING_COLOR = 'white';\nconst bella_theme_vars = {\n light: {\n '--sidebar-bg-color': 'rgb(246, 246, 246)',\n '--sidebar-heading-text-color': BELLA_PRIMARY_TEXT_COLOR,\n '--sidebar-heading-link-color': BELLA_MAIN_LINK_COLOR,\n '--sidebar-toc-h1-link-color': BELLA_PRIMARY_TEXT_COLOR,\n '--sidebar-toc-h1-border-color': BELLA_PRIMARY_TEXT_COLOR,\n '--sidebar-toc-h2-link-color': BELLA_PRIMARY_TEXT_COLOR,\n '--sidebar-active-toc-section-bg-color': BELLA_PRIMARY_TEXT_COLOR,\n '--sidebar-active-toc-section-link-color': 'white',\n '--sidebar-active-toc-h1-section-link-color': 'white',\n '--sidebar-active-toc-h2-section-link-color': 'white',\n '--sidebar-toc-section-link-color': 'rgb(58, 58, 58)',\n '--main-heading-text-color': BELLA_PRIMARY_TEXT_COLOR,\n '--main-heading-link-color': BELLA_MAIN_LINK_COLOR,\n '--main-link-color': BELLA_MAIN_LINK_COLOR,\n '--tt-border-radius': '3px',\n '--hoverable-link-hover-color': '#731624',\n rouge_theme: 'default',\n },\n dark: Object.assign(Object.assign({ '--sidebar-bg-color': 'rgb(58, 58, 60)', '--sidebar-heading-text-color': BELLA_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-heading-link-color': BELLA_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-toc-h1-link-color': BELLA_DARK_PRIMARY_HEADING_COLOR, '--sidebar-toc-h1-border-color': BELLA_DARK_PRIMARY_HEADING_COLOR, '--sidebar-toc-h2-link-color': BELLA_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-active-toc-section-bg-color': BELLA_DARK_PRIMARY_COLOR, '--sidebar-active-toc-section-link-color': BELLA_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-active-toc-h1-section-link-color': BELLA_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-active-toc-h2-section-link-color': BELLA_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-toc-section-link-color': BELLA_DARK_SIDEBAR_HEADING_COLOR, '--sidebar-tt-active-text-color': BELLA_DARK_SIDEBAR_HEADING_COLOR, '--main-heading-text-color': BELLA_DARK_PRIMARY_HEADING_COLOR, '--main-heading-link-color': BELLA_DARK_MAIN_LINK_COLOR, '--main-link-color': BELLA_DARK_MAIN_LINK_COLOR, '--hoverable-link-hover-color': '#fdf6f7', '--main-bg-color': 'rgb(28, 28, 30)' }, common_dark_theme_colors), { rouge_theme: 'monokai' }),\n};\nexport default bella_theme_vars;\n","import common_dark_theme_colors from './common_dark_theme_colors';\nconst MODERN_PRIMARY_COLOR = 'rgb(41, 82, 91)';\nconst MODERN_SPECIAL_COLOR = 'rgb(229, 214, 204)';\nconst MODERN_SIDEBAR_CONTRAST_COLOR = 'rgb(114, 202, 195)';\nconst MODERN_MAIN_LINK_COLOR = 'rgb(233, 114, 110)';\nconst MODERN_DARK_HEADING_COLOR = 'rgb(79, 205, 196)';\nconst MODERN_DARK_SPECIAL_COLOR = 'rgb(242, 224, 213)';\nconst MODERN_DARK_SIDEBAR_BG_COLOR = 'rgb(22, 60, 60)';\nconst modern_theme_vars = {\n light: {\n '--sidebar-bg-color': MODERN_PRIMARY_COLOR,\n '--sidebar-heading-text-color': MODERN_SIDEBAR_CONTRAST_COLOR,\n '--sidebar-heading-link-color': MODERN_SIDEBAR_CONTRAST_COLOR,\n '--sidebar-toc-h1-link-color': MODERN_SPECIAL_COLOR,\n '--sidebar-toc-h1-border-color': MODERN_SPECIAL_COLOR,\n '--sidebar-toc-h2-link-color': 'white',\n '--sidebar-active-toc-section-bg-color': 'rgb(248, 255, 248)',\n '--sidebar-active-toc-section-link-color': MODERN_PRIMARY_COLOR,\n '--sidebar-active-toc-h1-section-link-color': MODERN_PRIMARY_COLOR,\n '--sidebar-active-toc-h2-section-link-color': MODERN_PRIMARY_COLOR,\n '--sidebar-toc-section-link-color': 'white',\n '--main-heading-text-color': MODERN_PRIMARY_COLOR,\n '--main-heading-link-color': MODERN_PRIMARY_COLOR,\n '--main-link-color': MODERN_MAIN_LINK_COLOR,\n '--tt-border-radius': '3px',\n '--hoverable-link-hover-color': '#a51e19',\n rouge_theme: 'default',\n },\n dark: Object.assign(Object.assign({ '--sidebar-bg-color': MODERN_DARK_SIDEBAR_BG_COLOR, '--sidebar-heading-link-color': MODERN_SIDEBAR_CONTRAST_COLOR, '--sidebar-heading-text-color': MODERN_SIDEBAR_CONTRAST_COLOR, '--sidebar-toc-h1-link-color': MODERN_DARK_SPECIAL_COLOR, '--sidebar-toc-h1-border-color': MODERN_DARK_SPECIAL_COLOR, '--sidebar-toc-h2-link-color': 'white', '--sidebar-active-toc-section-bg-color': 'rgb(248, 255, 248)', '--sidebar-active-toc-section-link-color': MODERN_DARK_SIDEBAR_BG_COLOR, '--sidebar-active-toc-h1-section-link-color': MODERN_DARK_SIDEBAR_BG_COLOR, '--sidebar-active-toc-h2-section-link-color': MODERN_DARK_SIDEBAR_BG_COLOR, '--sidebar-toc-section-link-color': 'white', '--sidebar-tt-active-text-color': MODERN_DARK_SIDEBAR_BG_COLOR, '--main-heading-text-color': MODERN_DARK_HEADING_COLOR, '--main-heading-link-color': MODERN_DARK_HEADING_COLOR, '--main-link-color': MODERN_MAIN_LINK_COLOR, '--hoverable-link-hover-color': '#fdf3f3', '--main-bg-color': 'rgb(28, 28, 30)' }, common_dark_theme_colors), { rouge_theme: 'monokai' }),\n};\nexport default modern_theme_vars;\n","import common_dark_theme_colors from './common_dark_theme_colors';\nconst XCODE_DARK_BG_COLOR = 'rgb(40, 41, 35)';\nconst XCODE_DARK_TEXT_COLOR = 'white';\nconst XCODE_DARK_SIDEBAR_HEADING_COLOR = 'rgb(58, 58, 58)';\nconst XCODE_DARK_MAIN_HEADING_COLOR = 'rgb(137, 135, 205)';\nconst XCODE_DARK_MAIN_LINK_COLOR = '#ffae66';\nconst BORDER_LINE_COLOR = '#555';\nconst xcode_dark_theme_vars = {\n light: {\n '--sidebar-bg-color': 'rgb(242, 243, 243)',\n '--sidebar-heading-text-color': XCODE_DARK_SIDEBAR_HEADING_COLOR,\n '--sidebar-heading-link-color': XCODE_DARK_SIDEBAR_HEADING_COLOR,\n '--sidebar-border-color': BORDER_LINE_COLOR,\n '--sidebar-toc-h1-link-color': XCODE_DARK_SIDEBAR_HEADING_COLOR,\n '--sidebar-toc-h1-border-color': 'rgb(125, 125, 125)',\n '--sidebar-toc-h2-link-color': XCODE_DARK_SIDEBAR_HEADING_COLOR,\n '--sidebar-active-toc-section-bg-color': 'rgb(90, 151, 247)',\n '--sidebar-active-toc-section-link-color': 'white',\n '--sidebar-active-toc-h1-section-link-color': 'white',\n '--sidebar-active-toc-h2-section-link-color': 'white',\n '--sidebar-toc-section-link-color': XCODE_DARK_SIDEBAR_HEADING_COLOR,\n '--main-heading-text-color': XCODE_DARK_MAIN_HEADING_COLOR,\n '--main-heading-link-color': XCODE_DARK_MAIN_HEADING_COLOR,\n '--main-link-color': XCODE_DARK_MAIN_LINK_COLOR,\n '--hoverable-link-hover-color': '#cc6000',\n '--main-bg-color': XCODE_DARK_BG_COLOR,\n '--main-text-color': XCODE_DARK_TEXT_COLOR,\n '--main-table-pre-bg-color': '#f6f8fa',\n '--main-table-pre-text-color': 'black',\n '--main-blockquote-text-color': '#ccc',\n '--tt-text-color': 'white',\n '--tt-bg-color': '#696969',\n '--tt-border-radius': '3px',\n '--main-header-border-bottom-color': BORDER_LINE_COLOR,\n '--primer-spec-callout-info-text-color': 'black',\n '--primer-spec-callout-warning-text-color': 'black',\n '--primer-spec-callout-danger-text-color': 'black',\n '--primer-spec-callout-success-text-color': 'black',\n rouge_theme: 'default',\n },\n dark: Object.assign(Object.assign({}, common_dark_theme_colors), { '--sidebar-bg-color': 'rgb(75, 77, 85)', '--sidebar-heading-text-color': 'white', '--sidebar-heading-link-color': 'white', '--sidebar-border-color': BORDER_LINE_COLOR, '--sidebar-toc-h1-link-color': 'white', '--sidebar-toc-h1-border-color': 'rgb(125, 125, 125)', '--sidebar-toc-h2-link-color': 'white', '--sidebar-active-toc-section-bg-color': 'rgb(90, 151, 247)', '--sidebar-active-toc-section-link-color': 'white', '--sidebar-active-toc-h1-section-link-color': 'white', '--sidebar-active-toc-h2-section-link-color': 'white', '--sidebar-toc-section-link-color': 'white', '--main-heading-text-color': XCODE_DARK_MAIN_HEADING_COLOR, '--main-heading-link-color': XCODE_DARK_MAIN_HEADING_COLOR, '--main-link-color': XCODE_DARK_MAIN_LINK_COLOR, '--hoverable-link-hover-color': 'white', '--main-bg-color': XCODE_DARK_BG_COLOR, '--main-text-color': XCODE_DARK_TEXT_COLOR, '--main-table-pre-bg-color': XCODE_DARK_BG_COLOR, '--main-table-pre-text-color': XCODE_DARK_TEXT_COLOR, '--main-table-pre-border': '1px solid rgb(60, 62, 66)', '--tt-text-color': 'white', '--tt-border-radius': '6px', '--main-blockquote-text-color': '#999999', '--main-header-border-bottom-color': BORDER_LINE_COLOR, rouge_theme: 'monokai' }),\n};\nexport default xcode_dark_theme_vars;\n","import createSubtheme from './createSubtheme';\nimport default_theme from './definitions/default.theme';\nimport bella_theme from './definitions/bella.theme';\nimport modern_theme from './definitions/modern.theme';\nimport xcode_civic_theme from './definitions/xcode_civic.theme';\nexport default {\n default: createSubtheme('default', 'Primer', default_theme),\n bella: createSubtheme('bella', 'Bella', bella_theme),\n modern: createSubtheme('modern', 'Modern', modern_theme),\n 'xcode-civic': createSubtheme('xcode-civic', 'Xcode Civic', xcode_civic_theme),\n};\n","const listener_callbacks = {};\nwindow.addEventListener('storage', (e) => {\n if (!e.key)\n return;\n const callbacks = listener_callbacks[e.key];\n if (!callbacks)\n return;\n callbacks.forEach((callback) => callback(e.newValue, e.oldValue));\n});\nconst local_storage_available = isStorageAvailable('localStorage');\nexport default {\n /**\n * Get an item persisted in local storage by key. These values are typically\n * persisted across all pages in the same \"website\".\n *\n * Use in conjunction with `Storage.set()`.\n */\n get(key) {\n return local_storage_available ? window.localStorage.getItem(key) : null;\n },\n /**\n * Persist an item in local storage by key. The item is persisted across all\n * pages in the same \"website\".\n *\n * Use in conjunction with `Storage.get()`.\n */\n set(key, value) {\n if (local_storage_available) {\n window.localStorage.setItem(key, value);\n }\n },\n /**\n * Get an item persisted in local storage using `Storage.setForPage()`.\n */\n getForPage(key) {\n return this.get(mangleKeyWithPagePath(key));\n },\n /**\n * Persist an item in local storage, and mark it as being attached to the\n * current page (as opposed to being available to all pages across the same\n * \"website\").\n *\n * Retrieve items set using this method using `Storage.getForPage()`.\n */\n setForPage(key, value) {\n return this.set(mangleKeyWithPagePath(key), value);\n },\n /**\n * Register a `callback` that will be invoked when `key` changes in local\n * storage (in a different document context). This can help sync app state\n * across tabs.\n *\n * Use this to listen to listen for changes to items persisted using\n * `Storage.set()`.\n * Unregister the callback using `Storage.removeListener()`.\n */\n addListener(key, callback) {\n if (!listener_callbacks[key]) {\n listener_callbacks[key] = [];\n }\n listener_callbacks[key].push(callback);\n },\n /**\n * Unregister the callback registered using `Storage.addListener()`.\n */\n removeListener(key, callbackToRemove) {\n const callbacks = listener_callbacks[key];\n if (!callbacks)\n return;\n listener_callbacks[key] = callbacks.filter((callback) => callback !== callbackToRemove);\n },\n /**\n * Register a `callback` that will be invoked when `key` changes in local\n * storage for the given page path (but in a different document context).\n * This can help sync app state across tabs.\n *\n * Use this to listen to listen for changes to items persisted using\n * `Storage.setForPage()`.\n * Unregister the callback using `Storage.removeListenerForPage()`.\n */\n addListenerForPage(key, callback) {\n this.addListener(mangleKeyWithPagePath(key), callback);\n },\n /**\n * Unregister the callback registered using\n * `Storage.removeListenerForPage()`.\n */\n removeListenerForPage(key, callbackToRemove) {\n this.removeListener(mangleKeyWithPagePath(key), callbackToRemove);\n },\n};\nfunction mangleKeyWithPagePath(key) {\n return `${document.location.pathname}__${key}`;\n}\n/**\n * Check if a particular type of storage is made available by the browser.\n * @param type storage type (for instance, 'localStorage')\n */\nfunction isStorageAvailable(type) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let storage;\n try {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n storage = window[type];\n const x = '__storage_test__';\n storage.setItem(x, x);\n storage.removeItem(x);\n return true;\n }\n catch (e) {\n return (e instanceof DOMException &&\n // everything except Firefox\n (e.code === 22 ||\n // Firefox\n e.code === 1014 ||\n // test name field too, because code might not be present\n // everything except Firefox\n e.name === 'QuotaExceededError' ||\n // Firefox\n e.name === 'NS_ERROR_DOM_QUOTA_REACHED') &&\n // acknowledge QuotaExceededError only if there's something already stored\n storage &&\n storage.length !== 0);\n }\n}\n","import Storage from './utils/Storage';\nconst SUBTHEME_NAME_STORAGE_KEY = 'spec_subtheme_name';\nconst SUBTHEME_MODE_STORAGE_KEY = 'spec_subtheme_mode';\nconst INIT_SUBTHEME_NAME = Storage.get(SUBTHEME_NAME_STORAGE_KEY) ||\n window.PrimerSpecConfig.defaultSubthemeName ||\n 'default';\nconst INIT_SUBTHEME_MODE = (Storage.get(SUBTHEME_MODE_STORAGE_KEY) ||\n window.PrimerSpecConfig.defaultSubthemeMode ||\n 'system');\nconst INIT_SITEMAP_ENABLED = getInitSitemapEnabled();\n/**\n * Exposes config variables defined in the webpack config (as a plugin)\n * or in window.PrimerSpecConfig. Also exposes constants used throughout the\n * app.\n */\nexport default {\n // From webpack config\n VERSION_RAW: process.env.VERSION_RAW,\n VERSION_MINOR_STR: process.env.VERSION_MINOR_STR,\n BUILD_MODE: process.env.BUILD_MODE,\n // From window.PrimerSpecConfig\n HIDE_SIDEBAR_ON_LOAD: getHideSidebarOnLoad(),\n DISABLE_SIDEBAR: window.PrimerSpecConfig.disableSidebar || false,\n INIT_SUBTHEME_NAME,\n INIT_SUBTHEME_MODE,\n INIT_SITEMAP_ENABLED,\n SITEMAP_URLS: window.PrimerSpecConfig.sitemapUrls || [],\n SITEMAP_LABEL: window.PrimerSpecConfig.sitemapLabel || 'Supplemental Pages',\n SITEMAP_SITE_TITLE: window.PrimerSpecConfig.sitemapSiteTitle || '',\n // Other constants\n PRIMER_SPEC_APP_NODE_ID: 'primer-spec-app-container',\n PRIMER_SPEC_CONTENT_PLUGIN_NODE_ID: 'primer-spec-plugin-main-content',\n PRIMER_SPEC_CONTENT_PREACT_NODE_ID: 'primer-spec-preact-main-content',\n SUBTHEME_NAME_STORAGE_KEY,\n SUBTHEME_MODE_STORAGE_KEY,\n DEFAULT_ACTIVE_SECTION_OFFSET_Y: 10,\n};\nfunction getHideSidebarOnLoad() {\n const sidebar_hidden_stored_value = Storage.getForPage('sidebar_hidden');\n let hideSidebar = false;\n if (sidebar_hidden_stored_value !== null) {\n hideSidebar = sidebar_hidden_stored_value === 'true';\n }\n else {\n hideSidebar =\n window.PrimerSpecConfig.hideSidebarOnLoad ||\n window.PrimerSpecConfig.disableSidebar ||\n false;\n Storage.setForPage('sidebar_hidden', hideSidebar.toString());\n }\n return hideSidebar;\n}\nfunction getInitSitemapEnabled() {\n if (process.env.BUILD_MODE === 'development') {\n const searchParams = new URLSearchParams(document.location.search);\n const sitemapEnabledFromUrl = searchParams.get('enable_sitemap');\n if (sitemapEnabledFromUrl != null) {\n return sitemapEnabledFromUrl === '1';\n }\n }\n return !!window.PrimerSpecConfig.sitemapEnabled;\n}\n","import Subthemes from './RegisteredSubthemes';\nimport Storage from '../utils/Storage';\nimport Config from '../Config';\n// Expose Subthemes publicly\nexport { Subthemes };\n/**\n * Updates the appearance of the page based on the Subtheme details to be\n * changed. If no Subtheme details are specified, the method uses Subtheme info\n * from Storage.\n *\n * This method also persists Subtheme changes to Storage (unless\n * `persistUpdate` is set to `false`.)\n *\n * @param newSubtheme The subtheme details to be updated. This defaults to\n * the subtheme from Storage.\n * @param persistUpdate Defaults to true. If set to false, the updated theme\n * is not persisted to Storage.\n */\nexport function updateTheme({ name, mode } = {}, persistUpdate = true) {\n const { name: stored_subtheme_name, mode: stored_subtheme_mode, } = getStoredSubtheme();\n const normalized_name = verifySubthemeName(name !== null && name !== void 0 ? name : stored_subtheme_name);\n const currently_selected_mode = verifySubthemeMode(mode !== null && mode !== void 0 ? mode : stored_subtheme_mode);\n const normalized_mode = normalizeSubthemeMode(currently_selected_mode);\n // First store changes. Then decide if we need to take any action on the DOM.\n if (persistUpdate) {\n storeSubtheme({ name: normalized_name, mode: currently_selected_mode });\n }\n if (normalized_name === stored_subtheme_name &&\n normalized_mode === stored_subtheme_mode &&\n // If stores are not updated, the \"current\" subthemes from the store may be\n // stale. Hence, skip this optimization.\n persistUpdate) {\n return;\n }\n const old_subtheme = Subthemes[stored_subtheme_name];\n const new_subtheme = Subthemes[normalized_name];\n old_subtheme.reset(normalizeSubthemeMode(stored_subtheme_mode));\n new_subtheme.apply(normalized_mode);\n}\n/**\n * Retrieve the previously stored subtheme name from persistent local\n * storage. If this cannot be retrieved, returns the name of the first\n * available subtheme.\n */\nexport function getStoredSubthemeName() {\n const stored_subtheme_name = Storage.get(Config.SUBTHEME_NAME_STORAGE_KEY);\n return verifySubthemeName(stored_subtheme_name !== null && stored_subtheme_name !== void 0 ? stored_subtheme_name : Config.INIT_SUBTHEME_NAME);\n}\n/**\n * Retrieve the previously stored subtheme mode from persistent local\n * storage. If this cannot be retrieved, returns the default mode.\n */\nexport function getStoredSubthemeMode() {\n const stored_subtheme_mode = Storage.get(Config.SUBTHEME_MODE_STORAGE_KEY);\n return verifySubthemeMode(stored_subtheme_mode !== null && stored_subtheme_mode !== void 0 ? stored_subtheme_mode : Config.INIT_SUBTHEME_MODE);\n}\nexport function normalizeSubthemeMode(mode) {\n if (mode !== 'system') {\n return mode;\n }\n if (!window.matchMedia) {\n return 'light';\n }\n // The following is based on:\n // https://gosink.in/javascript-css-toggle-dark-light-theme-based-on-your-users-preferred-scheme/\n if (window.matchMedia('(prefers-color-scheme: dark)').matches) {\n // It's a dark theme\n return 'dark';\n }\n // Otherwise, it's not a dark theme\n return 'light';\n}\n/**\n * Update persistent local storage with the given subtheme for future\n * retrieval.\n * @param subtheme the name to be stored in local storage\n */\nfunction storeSubtheme({ name, mode }) {\n Storage.set(Config.SUBTHEME_NAME_STORAGE_KEY, name);\n Storage.set(Config.SUBTHEME_MODE_STORAGE_KEY, mode);\n}\nfunction getStoredSubtheme() {\n return { name: getStoredSubthemeName(), mode: getStoredSubthemeMode() };\n}\nfunction verifySubthemeName(name) {\n if (name && Subthemes[name]) {\n return name;\n }\n console.warn(`Primer Spec: Invalid subtheme name: ${name}. Reverting to 'default'`);\n return Subthemes.default.name;\n}\nfunction verifySubthemeMode(mode) {\n switch (mode) {\n case 'light':\n case 'dark':\n case 'system':\n return mode;\n }\n console.warn(`Primer Spec: Invalid subtheme mode: ${mode}. Reverting to 'system'`);\n return 'system';\n}\n","import { useCallback, useEffect, useState } from 'preact/hooks';\n/**\n * Returns a stateful boolean representing if a print-event is in progress\n * (between beforeprint and afterprint).\n */\nexport function usePrintInProgress() {\n const [isPrintInProgress, setIsPrintInProgress] = useState(false);\n const beforePrint = useCallback(useBeforePrint, []);\n const afterPrint = useCallback(useAfterPrint, []);\n useEffect(() => {\n return beforePrint(() => setIsPrintInProgress(true));\n }, [beforePrint]);\n useEffect(() => {\n return afterPrint(() => setIsPrintInProgress(false));\n }, [afterPrint]);\n return isPrintInProgress;\n}\n/**\n * Register a function (that could contain imperative and possibly effectful\n * code) that will be invoked when window.onbeforeprint fires.\n *\n * The return-value is a cleanup method that must be returned at the end of\n * the `useEffect()` handler. For instance:\n * ```\n * const beforePrint = useCallback(useBeforePrint, []);\n * useEffect(\n * () => { return beforePrint(handler); },\n * [beforePrint, dep1, dep2],\n * );\n * ```\n * @param handler Imperative function to be invoked onbeforeprint\n */\nexport function useBeforePrint(handler) {\n // Safari < 13 requires this polyfill:\n let mql_listener;\n if (window.matchMedia) {\n mql_listener = (mql) => {\n if (mql.matches) {\n // webkit equivalent of onbeforeprint\n handler();\n }\n };\n window.matchMedia('print').addListener(mql_listener);\n }\n // Non-Safari browsers support this:\n window.addEventListener('beforeprint', handler);\n return () => {\n if (window.matchMedia) {\n window.matchMedia('print').removeListener(mql_listener);\n }\n window.removeEventListener('beforeprint', handler);\n };\n}\n/**\n * Register a function (that could contain imperative and possibly effectful\n * code) that will be invoked when window.onafterprint fires.\n *\n * The return-value is a cleanup method that must be returned at the end of\n * the `useEffect()` handler. For instance:\n * ```\n * const afterPrint = useCallback(useAfterPrint, []);\n * useEffect(\n * () => { return afterPrint(handler); },\n * [afterPrint, dep1, dep2],\n * );\n * ```\n * @param handler Imperative function to execute onafterprint\n */\nexport function useAfterPrint(handler) {\n // Safari < 13 requires this polyfill:\n let mql_listener;\n if (window.matchMedia) {\n mql_listener = (mql) => {\n if (!mql.matches) {\n // webkit equivalent of onafterprint\n handler();\n }\n };\n window.matchMedia('print').addListener(mql_listener);\n }\n // Non-Safari browsers support this:\n window.addEventListener('afterprint', handler);\n return () => {\n if (window.matchMedia) {\n window.matchMedia('print').removeListener(mql_listener);\n }\n window.removeEventListener('afterprint', handler);\n };\n}\n","/**\n * Returns a boolean indicating whether the viewer's screen width is\n * smaller than 900px.\n */\nexport default function isSmallScreen() {\n return document.documentElement.clientWidth < 900;\n}\n","function toVal(mix) {\n\tvar k, y, str='';\n\n\tif (typeof mix === 'string' || typeof mix === 'number') {\n\t\tstr += mix;\n\t} else if (typeof mix === 'object') {\n\t\tif (Array.isArray(mix)) {\n\t\t\tfor (k=0; k < mix.length; k++) {\n\t\t\t\tif (mix[k]) {\n\t\t\t\t\tif (y = toVal(mix[k])) {\n\t\t\t\t\t\tstr && (str += ' ');\n\t\t\t\t\t\tstr += y;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor (k in mix) {\n\t\t\t\tif (mix[k]) {\n\t\t\t\t\tstr && (str += ' ');\n\t\t\t\t\tstr += k;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn str;\n}\n\nexport default function () {\n\tvar i=0, tmp, x, str='';\n\twhile (i < arguments.length) {\n\t\tif (tmp = arguments[i++]) {\n\t\t\tif (x = toVal(tmp)) {\n\t\t\t\tstr && (str += ' ');\n\t\t\t\tstr += x\n\t\t\t}\n\t\t}\n\t}\n\treturn str;\n}\n","import Storage from '../../utils/Storage';\nexport const TASK_LIST_STORAGE_PREFIX = 'primer_spec_task_list';\nexport const TASK_LIST_STORAGE_COUNT_KEY = `${TASK_LIST_STORAGE_PREFIX}_count`;\n/**\n * A custom hook that enables task-list checkboxes and persists the checkbox\n * state. Intended to be used inside `useEffect()`. Returns a cleanup method\n * to remove the event listeners.\n * @param mainElRef A ref to the `
` element from MainContent\n */\nexport default function useTaskListCheckboxes(mainElRef) {\n if (!mainElRef.current) {\n throw new Error('Primer Spec: Main Content: Expected main content ref to be initialized.');\n }\n // The structure of a task-list is:\n //
    \n //
  • Item 1
  • \n //
  • Item 2
  • \n //
\n // Wrap the entire contents of each
  • in a