SYMBOL INDEX (1269 symbols across 29 files) FILE: docs/js/chunk-2d0d3105.cd72cc8e.js function i (line 10) | function i(t){try{return t.defaultView&&t.defaultView.frameElement||null... function r (line 10) | function r(t){this.time=t.time,this.target=t.target,this.rootBounds=d(t.... function s (line 10) | function s(t,e){var n=e||{};if("function"!=typeof t)throw new Error("cal... function h (line 10) | function h(){return window.performance&&performance.now&&performance.now()} function u (line 10) | function u(t,e){var n=null;return function(){n||(n=setTimeout((function(... function c (line 10) | function c(t,e,n,o){"function"==typeof t.addEventListener?t.addEventList... function a (line 10) | function a(t,e,n,o){"function"==typeof t.removeEventListener?t.removeEve... function l (line 10) | function l(t,e){var n=Math.max(t.top,e.top),o=Math.min(t.bottom,e.bottom... function f (line 10) | function f(t){var e;try{e=t.getBoundingClientRect()}catch(n){}return e?(... function p (line 10) | function p(){return{top:0,bottom:0,left:0,right:0,width:0,height:0}} function d (line 10) | function d(t){return!t||"x"in t?t:{top:t.top,y:t.top,bottom:t.bottom,lef... function g (line 10) | function g(t,e){var n=e.top-t.top,o=e.left-t.left;return{top:n,left:o,he... function m (line 10) | function m(t,e){var n=e;while(n){if(n==t)return!0;n=v(n)}return!1} function v (line 10) | function v(e){var n=e.parentNode;return 9==e.nodeType&&e!=t?i(e):(n&&n.a... function w (line 10) | function w(t){return t&&9===t.nodeType} FILE: docs/js/chunk-vendors.b24b7aaa.js function r (line 10) | function r(t,e,n,r,o,i,a,s){var c,u="function"===typeof t?t.options:t;if... function r (line 16) | function r(t){return void 0===t||null===t} function o (line 16) | function o(t){return void 0!==t&&null!==t} function i (line 16) | function i(t){return!0===t} function a (line 16) | function a(t){return!1===t} function s (line 16) | function s(t){return"string"===typeof t||"number"===typeof t||"symbol"==... function c (line 16) | function c(t){return null!==t&&"object"===typeof t} function f (line 16) | function f(t){return"[object Object]"===u.call(t)} function l (line 16) | function l(t){return"[object RegExp]"===u.call(t)} function p (line 16) | function p(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e... function d (line 16) | function d(t){return o(t)&&"function"===typeof t.then&&"function"===type... function h (line 16) | function h(t){return null==t?"":Array.isArray(t)||f(t)&&t.toString===u?J... function v (line 16) | function v(t){var e=parseFloat(t);return isNaN(e)?t:e} function y (line 16) | function y(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(... function b (line 16) | function b(t,e){return _.call(t,e)} function w (line 16) | function w(t){var e=Object.create(null);return function(n){var r=e[n];re... function O (line 16) | function O(t,e){function n(n){var r=arguments.length;return r?r>1?t.appl... function S (line 16) | function S(t,e){return t.bind(e)} function T (line 16) | function T(t,e){e=e||0;var n=t.length-e,r=new Array(n);while(n--)r[n]=t[... function j (line 16) | function j(t,e){for(var n in e)t[n]=e[n];return t} function R (line 16) | function R(t){for(var e={},n=0;n0,a=t?!!t.$stable:!i,s=... function Ne (line 16) | function Ne(t,e,n){var r=function(){var t=arguments.length?n.apply(null,... function De (line 16) | function De(t,e){return function(){return t[e]}} function Me (line 16) | function Me(t,e){var n,r,i,a,s;if(Array.isArray(t)||"string"===typeof t)... function Fe (line 16) | function Fe(t,e,n,r){var o,i=this.$scopedSlots[t];i?(n=n||{},r&&(n=j(j({... function Ue (line 16) | function Ue(t){return Jt(this.$options,"filters",t,!0)||L} function Ve (line 16) | function Ve(t,e){return Array.isArray(t)?-1===t.indexOf(e):t!==e} function Be (line 16) | function Be(t,e,n,r,o){var i=B.keyCodes[e]||n;return o&&r&&!B.keyCodes[e... function He (line 16) | function He(t,e,n,r,o){if(n)if(c(n)){var i;Array.isArray(n)&&(n=R(n));va... function qe (line 16) | function qe(t,e){var n=this._staticTrees||(this._staticTrees=[]),r=n[t];... function ze (line 16) | function ze(t,e,n){return We(t,"__once__"+e+(n?"_"+n:""),!0),t} function We (line 16) | function We(t,e,n){if(Array.isArray(t))for(var r=0;r-1:"string"===type... function Pr (line 16) | function Pr(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a... function Ir (line 16) | function Ir(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstanc... function Mr (line 16) | function Mr(t){var e={get:function(){return B}};Object.defineProperty(t,... function Gr (line 16) | function Gr(t){var e=t.data,n=t,r=t;while(o(r.componentInstance))r=r.com... function Qr (line 16) | function Qr(t,e){return{staticClass:Zr(t.staticClass,e.staticClass),clas... function Yr (line 16) | function Yr(t,e){return o(t)||o(e)?Zr(t,to(e)):""} function Zr (line 16) | function Zr(t,e){return t?e?t+" "+e:t:e||""} function to (line 16) | function to(t){return Array.isArray(t)?eo(t):c(t)?no(t):"string"===typeo... function eo (line 16) | function eo(t){for(var e,n="",r=0,i=t.length;r-1?qo(t,e,n):zr(e)?Jr(n)?... function qo (line 16) | function qo(t,e,n){if(Jr(n))t.removeAttribute(e);else{if(tt&&!et&&"TEXTA... function Wo (line 16) | function Wo(t,e){var n=e.elm,i=e.data,a=t.data;if(!(r(i.staticClass)&&r(... function Qo (line 16) | function Qo(t){if(o(t[Jo])){var e=tt?"change":"input";t[e]=[].concat(t[J... function Yo (line 16) | function Yo(t,e,n){var r=Ko;return function o(){var i=e.apply(null,argum... function ti (line 16) | function ti(t,e,n,r){if(Zo){var o=Xn,i=e;e=i._wrapper=function(t){if(t.t... function ei (line 16) | function ei(t,e,n,r){(r||Ko).removeEventListener(t,e._wrapper||e,n)} function ni (line 16) | function ni(t,e){if(!r(t.data.on)||!r(e.data.on)){var n=e.data.on||{},o=... function ii (line 16) | function ii(t,e){if(!r(t.data.domProps)||!r(e.data.domProps)){var n,i,a=... function ai (line 16) | function ai(t,e){return!t.composing&&("OPTION"===t.tagName||si(t,e)||ci(... function si (line 16) | function si(t,e){var n=!0;try{n=document.activeElement!==t}catch(Aa){}re... function ci (line 16) | function ci(t,e){var n=t.value,r=t._vModifiers;if(o(r)){if(r.number)retu... function li (line 16) | function li(t){var e=pi(t.style);return t.staticStyle?j(t.staticStyle,e):e} function pi (line 16) | function pi(t){return Array.isArray(t)?R(t):"string"===typeof t?fi(t):t} function di (line 16) | function di(t,e){var n,r={};if(e){var o=t;while(o.componentInstance)o=o.... function bi (line 16) | function bi(t,e){var n=e.data,i=t.data;if(!(r(n.staticStyle)&&r(n.style)... function xi (line 16) | function xi(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.s... function Ai (line 16) | function Ai(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.s... function $i (line 16) | function $i(t){if(t){if("object"===typeof t){var e={};return!1!==t.css&&... function Li (line 16) | function Li(t){Ii((function(){Ii(t)}))} function Ni (line 16) | function Ni(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n... function Di (line 16) | function Di(t,e){t._transitionClasses&&g(t._transitionClasses,e),Ai(t,e)} function Mi (line 16) | function Mi(t,e,n){var r=Ui(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!... function Ui (line 16) | function Ui(t,e){var n,r=window.getComputedStyle(t),o=(r[Ti+"Delay"]||""... function Vi (line 16) | function Vi(t,e){while(t.length=0&&(e=t.slice(r),t=t.sli... function T (line 21) | function T(t){return t.replace(/\/\//g,"/")} function M (line 21) | function M(t,e){var n,r=[],o=0,i=0,a="",s=e&&e.delimiter||"/";while(null... function F (line 21) | function F(t,e){return B(M(t,e),e)} function U (line 21) | function U(t){return encodeURI(t).replace(/[\/?#]/g,(function(t){return"... function V (line 21) | function V(t){return encodeURI(t).replace(/[?#]/g,(function(t){return"%"... function B (line 21) | function B(t,e){for(var n=new Array(t.length),r=0;r=t.length?n():t[o]?e(t[o],(functi... function Ut (line 21) | function Ut(t,e){return qt(t,e,Ft.redirected,'Redirected when going from... function Vt (line 21) | function Vt(t,e){var n=qt(t,e,Ft.duplicated,'Avoided redundant navigatio... function Bt (line 21) | function Bt(t,e){return qt(t,e,Ft.cancelled,'Navigation cancelled from "... function Ht (line 21) | function Ht(t,e){return qt(t,e,Ft.aborted,'Navigation aborted from "'+t.... function qt (line 21) | function qt(t,e,n,r){var o=new Error(r);return o._isRouter=!0,o.from=t,o... function Wt (line 21) | function Wt(t){if("string"===typeof t)return t;if("path"in t)return t.pa... function Kt (line 21) | function Kt(t){return Object.prototype.toString.call(t).indexOf("Error")... function Xt (line 21) | function Xt(t,e){return Kt(t)&&t._isRouter&&(null==e||t.type===e)} function Jt (line 21) | function Jt(t){return function(e,n,r){var o=!1,i=0,a=null;Gt(t,(function... function Gt (line 21) | function Gt(t,e){return Qt(t.map((function(t){return Object.keys(t.compo... function Qt (line 21) | function Qt(t){return Array.prototype.concat.apply([],t)} function Zt (line 21) | function Zt(t){return t.__esModule||Yt&&"Module"===t[Symbol.toStringTag]} function te (line 21) | function te(t){var e=!1;return function(){var n=[],r=arguments.length;wh... function ne (line 21) | function ne(t){if(!t)if(ut){var e=document.querySelector("base");t=e&&e.... function re (line 21) | function re(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n=0?e.slic... function ge (line 21) | function ge(t){Lt?Nt(me(t)):window.location.hash=t} function _e (line 21) | function _e(t){Lt?Dt(me(t)):window.location.replace(me(t))} function e (line 21) | function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1} function xe (line 21) | function xe(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.... function Ae (line 21) | function Ae(t,e,n){var r="hash"===n?"#"+e:e;return t?T(t+"/"+r):r} FILE: docs/js/documentation-topic.f62098b6.js function a (line 10) | function a(){var e=window.navigator.userAgent,t=e.indexOf("MSIE ");if(t>... function s (line 10) | function s(){s.init||(s.init=!0,i=-1!==a())} function o (line 10) | function o(e){e.component("resize-observer",r),e.component("ResizeObserv... method reset (line 10) | reset(){this.state.codeColors=null} method updateCodeColors (line 10) | updateCodeColors(e){const t=e=>e?`rgba(${e.red}, ${e.green}, ${e.blue}, ... function l (line 10) | function l(e){const t=e.match(/rgba\((\d+),\s*(\d+),\s*(\d+),\s*(\d+\.?\... function c (line 10) | function c(e){const{r:t,g:n,b:a}=l(e);return.2126*t+.7152*n+.0722*a} function u (line 10) | function u(e,t){const n=Math.round(o*t),a=l(e),{a:i}=a,[s,c,u]=[a.r,a.g,... function d (line 10) | function d(e,t){return u(e,t)} method constructor (line 10) | constructor(e){super("invalid pointer "+e),this.pointer=e} function h (line 10) | function h(e,t){return u(e,-1*t)} method data (line 10) | data(){return{codeThemeState:s["a"].state}} method codeStyle (line 10) | codeStyle(){const{codeColors:e}=this.codeThemeState;return e?{"--text":e... method internalParamNameColor (line 10) | internalParamNameColor(){const{background:e,text:t}=this.codeThemeState.... function a (line 10) | function a(e){return a="function"===typeof Symbol&&"symbol"===typeof Sym... function i (line 10) | function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a ... function s (line 10) | function s(e,t){for(var n=0;n2&&void 0!==arguments[2]?ar... function p (line 10) | function p(e,t){if(e===t)return!0;if("object"===a(e)){for(var n in e)if(... function e (line 10) | function e(t,n,a){i(this,e),this.el=t,this.observer=null,this.frozen=!1,... function g (line 10) | function g(e,t,n){var a=t.value;if(a)if("undefined"===typeof Intersectio... function m (line 10) | function m(e,t,n){var a=t.value,i=t.oldValue;if(!p(a,i)){var s=e._vue_vi... function y (line 10) | function y(e){var t=e._vue_visibilityState;t&&(t.destroyObserver(),delet... function b (line 10) | function b(e){e.directive("observe-visibility",v)} function c (line 10) | function c(e){return c="function"===typeof Symbol&&"symbol"===typeof Sym... function u (line 10) | function u(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enume... function d (line 10) | function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){va... method constructor (line 10) | constructor(e){super("invalid pointer "+e),this.pointer=e} function h (line 10) | function h(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,a=new Ar... function g (line 10) | function g(e){if("undefined"===typeof Symbol||null==e[Symbol.iterator]){... function y (line 10) | function y(){return this.items.length&&"object"!==c(this.items[0])} function C (line 10) | function C(e,t,n,a,i,s,r,o,l,c){"boolean"!==typeof r&&(l=o,o=r,r=!1);con... function U (line 10) | function U(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0... function G (line 10) | function G(e,t){e.component("".concat(t,"recycle-scroller"),D),e.compone... function r (line 10) | function r(e){return e.replace(/~[0,1]/g,e=>({"~0":"~","~1":"/"}[e]||e))} class d (line 10) | class d extends Error{constructor(e){super("invalid pointer "+e),this.po... method constructor (line 10) | constructor(e){super("invalid pointer "+e),this.pointer=e} function h (line 10) | function h(e,{length:t}){if(e===c)return t||0;const n=parseInt(e,l);if(!... function f (line 10) | function f(e,t){let n=e;for(const{node:a}of p(e,t,{strict:!0}))n=a;retur... function g (line 10) | function g(e,t,n){let a=null,i=e,s=null;for(const{node:o,token:l}of p(e,... function m (line 10) | function m(e,t){let n=null,a=e,i=null;for(const{node:r,token:o}of p(e,t)... function y (line 10) | function y(e,t,n){return m(e,t),g(e,t,n),e} function v (line 10) | function v(e,t,n){const a=f(e,t);return m(e,t),g(e,n,a),e} function b (line 10) | function b(e,t,n){return g(e,n,f(e,t)),e} function T (line 10) | function T(e,t,n){function a(e,t){const n=typeof e,i=typeof t;if(n!==i)r... function C (line 10) | function C(e,{op:t,...n}){const a=_[t];if(!a)throw new Error("unknown op... function S (line 10) | function S(e,t){return t.reduce(C,e)} method default (line 10) | default(){return{setPreferredLanguage(){}}} method chooseLanguage (line 10) | chooseLanguage(e){this.isTargetIDE||this.store.setPreferredLanguage(e.ke... method normalizePath (line 10) | normalizePath(e){return e.startsWith("/")?e:"/"+e} method default (line 10) | default(){return{addOnThisPageSection(){}}} method created (line 10) | created(){this.store.addOnThisPageSection({anchor:this.anchor,title:this... method render (line 10) | render(e){const{kind:t,tokens:n}=this;return e("span",{class:["token-"+t... method render (line 10) | render(e){const{_v:t=(t=>e("span",t)),text:n}=this;return t(n)} method render (line 10) | render(e){return e("span",{class:"token-"+this.kind},this.text)} method default (line 10) | default(){return{}} method render (line 10) | render(e){const t="type-identifier-link",n=this.references[this.identifi... method render (line 10) | render(e){const{kind:t,text:n,tokens:a}=this;switch(t){case ha.text:{con... method classFor (line 10) | classFor({kind:e}){switch(e){case ba.externalParam:case ba.identifier:re... method componentFor (line 10) | componentFor(e){return/^\s+$/.test(e.text)?"span":It["a"]} function qa (line 10) | function qa(e){if(!e)return!1;const t=window.getComputedStyle(e.$el||e),... method data (line 10) | data(){return{multipleLinesClass:Ka}} method toVersionRange (line 10) | toVersionRange({platform:e,versions:t}){return`${e} ${t[0]} – ${e} ${t[1... method getOptionsForDiffAvailability (line 10) | getOptionsForDiffAvailability(e={}){return this.getOptionsForDiffAvailab... method getOptionsForDiffAvailabilities (line 10) | getOptionsForDiffAvailabilities(e=[]){const t=e.reduce((e,t={})=>Object.... method changesClassesFor (line 10) | changesClassesFor(e,t){const n=this.changeFor(e,t);return this.getChange... method changeFor (line 10) | changeFor(e,t){const{change:n}=(t||{})[e]||{};return n} method splitOptionsPerPlatform (line 10) | splitOptionsPerPlatform(e){return e.reduce((e,t)=>{const n=t.platform===... method getChangeName (line 10) | getChangeName(e){return za[e]} method availableOptions (line 10) | availableOptions({diffAvailability:e={},toOptionValue:t}){return new Set... method data (line 10) | data(){return{state:this.store.state}} method linkProps (line 10) | linkProps({topic:e}){const t=Object(q["b"])(e.url,this.$route.query);ret... method titleTag (line 10) | titleTag({topic:e}){if(e.titleStyle===Ga.title)return e.ideTitle?"span":... method change (line 10) | change({topic:{identifier:e},state:{apiChanges:t}}){return this.changeFo... method default (line 10) | default(){return{}} method default (line 10) | default(){return"Topics"} method default (line 10) | default(){return"topics"} method sectionsWithTopics (line 10) | sectionsWithTopics(){return this.sections.map(e=>({...e,topics:e.identif... function _i (line 10) | function _i(e){const t=e.getElementsByClassName("token-identifier");if(t... function Ci (line 10) | function Ci(e,t){const n=e.innerHTML;try{switch(t){case O["a"].objective... method data (line 10) | data(){return{hasMultipleLines:!1,multipleLinesClass:Ka}} method propsFor (line 10) | propsFor(e){return{kind:e.kind,identifier:e.identifier,text:e.text,token... method mounted (line 10) | async mounted(){qa(this.$refs.declarationGroup)&&(this.hasMultipleLines=... method caption (line 10) | caption(){return this.declaration.platforms.join(", ")} method hasPlatformVariants (line 10) | hasPlatformVariants(){return this.declarations.length>1} method hasModifiedChanges (line 10) | hasModifiedChanges({declarationChanges:e}){if(!e||!e.declaration)return!... method englishTypes (line 10) | englishTypes(){return this.types.map(({arrayMode:e,baseType:t="*"})=>e?"... method typeOutput (line 10) | typeOutput(){return this.englishTypes.length>2?[this.englishTypes.slice(... method pluralizeKeyType (line 10) | pluralizeKeyType(e){switch(e){case"dictionary":return"dictionaries";case... method isTitle (line 10) | isTitle(){return"title"===this.details.titleStyle&&this.details.ideTitle} method isSymbol (line 10) | isSymbol(){return"symbol"===this.details.titleStyle&&this.details.ideTitle} method default (line 10) | default(){return{addOnThisPageSection(){}}} method addOnThisPageSections (line 10) | addOnThisPageSections(){const{isTopLevelHeading:e,store:t}=this;this.for... method isTopLevelHeading (line 10) | isTopLevelHeading(e){const{level:t,type:n}=e;return n===Bt.BlockType.hea... method created (line 10) | created(){this.addOnThisPageSections()} method getProps (line 10) | getProps(e,t={}){return{...e,changes:t}} method changedClasses (line 10) | changedClasses(e){const{changes:t}=this,{change:n}=t[e]||{};return{["cha... method render (line 10) | render(e){const{value:t,changes:n={},wrapChanges:a,renderSingleChange:i}... method shouldRender (line 10) | shouldRender(e){return Object.prototype.hasOwnProperty.call(this.attribu... method getValues (line 10) | getValues(e){return Array.isArray(e)?e:e.values} method changeValues (line 10) | changeValues({change:e,changes:t}){return e===Ra.modified&&"string"!==ty... method span (line 10) | span(){return{large:9,medium:9,small:12}} method componentFor (line 10) | componentFor(e){return{[Vr.content]:gs,[Vr.declarations]:Ji,[Vr.details]... method propsFor (line 10) | propsFor(e){const{conformance:t}=this,{bodyContentType:n,content:a,decla... method data (line 10) | data(){return{state:this.store.state}} method classes (line 10) | classes({changeType:e,multipleLinesClass:t,hasMultipleLinesAfterAPIChang... method hasAvailabilityConstraints (line 10) | hasAvailabilityConstraints(){return this.symbols.some(e=>!!(e.conformanc... method changes (line 10) | changes({identifier:e,state:{apiChanges:t}}){return(t||{})[e]||{}} method changeType (line 10) | changeType({changes:e,type:t}){const n=eo[t];if(e.change!==Ra.modified)r... method shouldDisplayInline (line 10) | shouldDisplayInline(){const{hasAvailabilityConstraints:e,symbols:t}=this... method default (line 10) | default(){return{}} method sectionsWithSymbols (line 10) | sectionsWithSymbols(){return this.sections.map(e=>({...e,symbols:e.ident... method ariaLabel (line 10) | ariaLabel(){const{deprecatedAt:e,description:t,text:n}=this;return[n].co... method description (line 10) | description(){const{deprecatedAt:e,introducedAt:t,platformName:n}=this;r... method text (line 10) | text(){const{deprecatedAt:e,introducedAt:t,platformName:n}=this;return e... method data (line 10) | data(){return{state:this.store.state}} method changeFor (line 10) | changeFor(e){const{identifier:t,state:{apiChanges:n}}=this,{availability... method default (line 10) | default(){return!1} method default (line 10) | default(){return{reset(){},state:{onThisPageSections:[]}}} method provide (line 10) | provide(){return{references:this.references,identifier:this.identifier,l... method data (line 10) | data(){return{topicState:this.store.state}} method defaultImplementationsCount (line 10) | defaultImplementationsCount(){return(this.defaultImplementationsSections... method onThisPageSections (line 10) | onThisPageSections(){return this.topicState.onThisPageSections} method technologies (line 10) | technologies({modules:e=[]}){const t=e.reduce((e,t)=>(e.push(t.name),e.c... method normalizePath (line 10) | normalizePath(e){return e.startsWith("/")?e:"/"+e} method created (line 10) | created(){if(this.topicState.preferredLanguage===O["a"].objectiveC.key.u... method setAPIChanges (line 10) | setAPIChanges(e){this.state.apiChanges=e} method setSelectedAPIChangesVersion (line 10) | setSelectedAPIChangesVersion(e){this.state.selectedAPIChangesVersion=e} method resetApiChanges (line 10) | resetApiChanges(){this.state.apiChanges=null,this.state.apiChangesCounts... method updateApiChangesCounts (line 10) | async updateApiChangesCounts(){await Vo["default"].nextTick(),Object.key... method countChangeType (line 10) | countChangeType(e){if(document&&document.querySelectorAll){const t=`.cha... method reset (line 10) | reset(){this.state.onThisPageSections=[],this.state.preferredLanguage=Uo... method addOnThisPageSection (line 10) | addOnThisPageSection(e){this.state.onThisPageSections.push(e)} method setPreferredLanguage (line 10) | setPreferredLanguage(e){this.state.preferredLanguage=e,Uo["a"].preferred... method data (line 10) | data(){return{isFetching:!1,errorFetching:!1,isFetchingAPIChanges:!1,nav... method technologyWithChildren (line 10) | technologyWithChildren({navigationIndex:e,interfaceLanguage:t,technology... method created (line 10) | created(){this.fetchIndexData()} method fetchIndexData (line 10) | async fetchIndexData(){try{this.isFetching=!0;const{interfaceLanguages:e... method render (line 10) | render(){return this.$scopedSlots.default({technology:this.technologyWit... function ul (line 10) | function ul(e,t,n,a){let i,s;return function(...r){function o(){clearTim... function yl (line 10) | function yl(e,t){let n,a;return function(...i){const s=this;if(!a)return... method data (line 10) | data(){const e=window.innerWidth,t=window.innerHeight,n=hl["b"].large,a=... method mounted (line 10) | async mounted(){window.addEventListener("keydown",this.onEscapeKeydown),... method breakpoint (line 10) | async breakpoint(e){this.getWidthInCheck(),e===hl["b"].large&&this.close... method onEscapeKeydown (line 10) | onEscapeKeydown({key:e}){"Escape"===e&&this.closeMobileSidebar()} method closeMobileSidebar (line 10) | closeMobileSidebar(){this.openExternally&&this.$emit("update:openExterna... method startDrag (line 10) | startDrag({type:e}){this.isTouch="touchstart"===e,this.isDragging||(this... method handleDrag (line 10) | handleDrag(e){if(this.isTouch||e.preventDefault(),!this.isDragging)retur... method stopDrag (line 10) | stopDrag(e){e.preventDefault(),this.isDragging&&(this.isDragging=!1,cl["... method emitEventChange (line 10) | emitEventChange(e){this.$emit("width-change",e)} method getTopOffset (line 10) | getTopOffset(){const e=document.getElementById(vl["d"]);if(!e)return 0;c... method handleExternalOpen (line 10) | handleExternalOpen(e){e&&(this.mobileTopOffset=this.getTopOffset()),this... method toggleScrollLock (line 10) | async toggleScrollLock(e){const t=document.getElementById(this.scrollLoc... function Nl (line 10) | function Nl(e){const t=Object(vi["h"])(Object(vi["d"])(e));return new Re... method render (line 10) | render(e){const{matcher:t,text:n}=this;if(!t)return e("p",{class:"highli... method idState (line 10) | idState(){return{isOpening:!1}} method ariaDescribedBy (line 10) | ariaDescribedBy({item:e,siblingsLabel:t,parentLabel:n,isParent:a}){const... method toggleTree (line 10) | toggleTree(){this.idState.isOpening=!0,this.$emit("toggle",this.item)} method toggleEntireTree (line 10) | toggleEntireTree(){this.idState.isOpening=!0,this.$emit("toggle-full",th... method toggleSiblings (line 10) | toggleSiblings(){this.idState.isOpening=!0,this.$emit("toggle-siblings",... method handleLeftKeydown (line 10) | handleLeftKeydown(){this.expanded?this.toggleTree():this.$emit("focus-pa... method handleRightKeydown (line 10) | handleRightKeydown(){!this.expanded&&this.isParent&&this.toggleTree()} method clickReference (line 10) | clickReference(){(this.$refs.reference.$el||this.$refs.reference).click()} method focusReference (line 10) | focusReference(){(this.$refs.reference.$el||this.$refs.reference).focus()} method handleClick (line 10) | handleClick(){this.isGroupMarker||this.$emit("navigate",this.item.uid)} method isFocused (line 10) | async isFocused(e){await Object(pl["b"])(8),e&&this.isRendered&&this.ena... method expanded (line 10) | async expanded(){await Object(pl["b"])(9),this.idState.isOpening=!1} function vc (line 10) | function vc(){if(window.getSelection)try{const{activeElement:e}=document... function bc (line 10) | function bc(e){if("number"===typeof e.selectionStart)e.selectionStart=e.... function Tc (line 10) | function Tc(e){e.selectionStart=e.selectionEnd=0} function _c (line 10) | function _c(e){return/^[\w\W\s]$/.test(e)} function Cc (line 10) | function Cc(e){const t=e.match(/(.*)<... function Sc (line 10) | function Sc(e){return"string"!==typeof e&&(e=JSON.stringify(e)),`0&&this.setSelectedTags(th... method leftKeyInputHandler (line 10) | leftKeyInputHandler(e){if(this.assignEventValues(e),this.hasSelectedTags... method rightKeyInputHandler (line 10) | rightKeyInputHandler(e){if(this.assignEventValues(e),this.activeTags.len... method enterHandler (line 10) | async enterHandler(){this.$refs.input.blur()} method inputKeydownHandler (line 10) | inputKeydownHandler(e){const{key:t}=e;this.inputIsSelected()&&_c(t)&&thi... method selectedTagsKeydownHandler (line 10) | selectedTagsKeydownHandler({event:e,tagName:t}){"Enter"===e.key&&e.preve... method selectInputTextToTags (line 10) | selectInputTextToTags(){const{input:e}=this.$refs;e.selectionStart===e.s... method selectTagsPressingShift (line 10) | selectTagsPressingShift(){null!==this.initTagIndex&&this.shiftKey&&!this... method focusTagHandler (line 10) | focusTagHandler({event:e={},tagName:t}){this.focusedTagIndex=this.select... method focusInputFromTags (line 10) | focusInputFromTags(){this.focusInput(),Tc(this.$refs.input)} method selectToDirections (line 10) | selectToDirections(e){this.metaKey&&this.shiftKey&&("ArrowRight"===e?(th... method metaKeyClickSelection (line 10) | metaKeyClickSelection(e,t){this.metaKey&&e instanceof MouseEvent&&(this.... method assignEventValues (line 10) | assignEventValues(e={}){const{shiftKey:t=!1,metaKey:n=!1,ctrlKey:a=!1,ke... method initTag (line 10) | initTag(e){null!==this.initTagIndex||this.activeTags.includes(e)||(e?(th... method multipleTagsSelectionHandler (line 10) | multipleTagsSelectionHandler({event:e=new KeyboardEvent("keydown",{}),ta... method resetActiveTags (line 10) | resetActiveTags(){this.activeTags=[],this.initTagIndex=null,this.metaKey... method selectInputAndTags (line 10) | selectInputAndTags(){this.activeTags=[...this.selectedTags],this.input.l... method handleSingleTagClick (line 10) | handleSingleTagClick({event:e,tagName:t}){this.keyboardIsVirtual?(this.d... method inputIsSelected (line 10) | inputIsSelected(){return this.input.length&&vc()===this.input} method inputHasPartialTextSelected (line 10) | inputHasPartialTextSelected(){const e=vc();return!this.inputIsSelected()... method setFilterInput (line 10) | setFilterInput(e){this.$emit("update:input",e)} method setSelectedTags (line 10) | setSelectedTags(e){this.$emit("update:selectedTags",e)} method updateSelectedTags (line 10) | updateSelectedTags(e){this.setSelectedTags([...new Set([...this.selected... method handleCopy (line 10) | handleCopy(e){e.preventDefault();const t=[],n={tags:[],input:vc()};if(th... method handleCut (line 10) | handleCut(e){e.preventDefault();const{input:t,tags:n}=this.handleCopy(e)... method handlePaste (line 10) | handlePaste(e){e.preventDefault();const{types:t}=e.clipboardData;let n=[... method handleDeleteTag (line 10) | async handleDeleteTag({tagName:e,event:t={}}){const{key:n}=t;this.active... method mounted (line 10) | mounted(){window.visualViewport&&(window.visualViewport.addEventListener... method data (line 10) | data(){return{isScrolling:!1,scrollRemovedAt:0}} method created (line 10) | created(){this.deleteScroll=ul(this.deleteScroll,Ic)} method deleteScroll (line 10) | deleteScroll(){this.isScrolling=!1,this.scrollRemovedAt=Date.now()} method handleScroll (line 10) | handleScroll(e){const{target:t}=e;if(0!==t.scrollTop)return t.scrollTop=... method data (line 10) | data(){return{focusedIndex:0,externalFocusChange:!1}} method focusIndex (line 10) | focusIndex(e){e<0||(this.focusedIndex=e)} method focusPrev (line 10) | focusPrev({metaKey:e,ctrlKey:t,shiftKey:n}){(e||t)&&n||(this.externalFoc... method focusNext (line 10) | focusNext({metaKey:e,ctrlKey:t,shiftKey:n}){(e||t)&&n||(this.externalFoc... method focusFirst (line 10) | async focusFirst(){this.externalFocusChange=!1,this.focusIndex(null),awa... method focusLast (line 10) | async focusLast(){this.externalFocusChange=!1,this.focusIndex(null),awai... method startingPointHook (line 10) | startingPointHook(){} method endingPointHook (line 10) | endingPointHook(){} method scrollToFocus (line 10) | scrollToFocus(){} method isFocused (line 10) | isFocused(e){e&&this.focusButton()} method mounted (line 10) | mounted(){document.addEventListener("copy",this.handleCopy),document.add... method isCurrentlyActiveElement (line 10) | isCurrentlyActiveElement(){return document.activeElement===this.$refs.bu... method handleCopy (line 10) | handleCopy(e){if(!this.isCurrentlyActiveElement())return;e.preventDefaul... method handleCut (line 10) | handleCut(e){this.isCurrentlyActiveElement()&&this.isRemovableTag&&(this... method handlePaste (line 10) | handlePaste(e){this.isCurrentlyActiveElement()&&this.isRemovableTag&&(e.... method deleteTag (line 10) | deleteTag(e){this.$emit("delete-tag",{tagName:this.name,event:e}),this.$... method focusButton (line 10) | focusButton(e={}){this.keyboardIsVirtual||this.$refs.button.focus(),0===... method focusTag (line 10) | focusTag(e){this.focusIndex(this.tags.indexOf(e))} method startingPointHook (line 10) | startingPointHook(){this.$emit("focus-prev")} method handleFocus (line 10) | handleFocus(e,t){this.focusIndex(t),this.isScrolling=!1,this.$emit("focu... method endingPointHook (line 10) | endingPointHook(){this.$emit("focus-next")} method resetScroll (line 10) | resetScroll(){this.$refs["scroll-wrapper"].scrollLeft=0} method handleKeydown (line 10) | handleKeydown(e){const{key:t}=e,n=this.tags[this.focusedIndex];_c(t)&&n&... method data (line 10) | data(){return{resetedTagsViaDeleteButton:!1,FilterInputId:Xc,SelectedTag... method set (line 10) | set(e){this.$emit("input",e)} method selectedTags (line 10) | async selectedTags(){this.resetedTagsViaDeleteButton?this.resetedTagsVia... method handler (line 10) | handler(e){this.$emit("suggested-tags",e)} method showSuggestedTags (line 10) | showSuggestedTags(e){this.$emit("show-suggested-tags",e)} method focusInput (line 10) | async focusInput(){await this.$nextTick(),this.$refs.input.focus(),!this... method resetFilters (line 10) | async resetFilters(e=!1){if(this.setFilterInput(""),this.setSelectedTags... method focusFirstTag (line 10) | focusFirstTag(e=(()=>{})){this.showSuggestedTags||(this.showSuggestedTag... method setFilterInput (line 10) | setFilterInput(e){this.$emit("input",e)} method setSelectedTags (line 10) | setSelectedTags(e){this.$emit("update:selectedTags",e)} method deleteTags (line 10) | deleteTags(e){this.setSelectedTags(this.selectedTags.filter(t=>!e.includ... method handleBlur (line 10) | async handleBlur(e){const t=e.relatedTarget;t&&t.matches&&t.matches("but... method downHandler (line 10) | downHandler(e){const t=()=>this.$emit("focus-next",e);this.positionRever... method upHandler (line 10) | upHandler(e){const t=()=>this.$emit("focus-prev",e);this.positionReverse... method handleFocusPrevOnSelectedTags (line 10) | handleFocusPrevOnSelectedTags(){this.positionReversed?this.focusFirstTag... method created (line 10) | created(){this.focusInputWhenCreated&&document.activeElement!==this.$ref... method data (line 10) | data(){return{filter:"",debouncedFilter:"",selectedTags:[],openNodes:{},... method set (line 10) | set(e){this.selectedTags=e.map(e=>hu[e]||Ma[e]||e),this.resetScroll=!0} method childrenMap (line 10) | childrenMap({children:e}){return this.convertChildrenArrayToObject(e)} method activePathChildren (line 10) | activePathChildren({activeUID:e,childrenMap:t}){return e&&t[e]?this.getP... method filteredChildren (line 10) | filteredChildren({hasFilter:e,children:t,filterPattern:n,selectedTags:a,... method renderableChildNodesMap (line 10) | renderableChildNodesMap({filteredChildrenUpToRootSet:e,childrenMap:t,has... method hasFilter (line 10) | hasFilter({debouncedFilter:e,selectedTags:t,apiChanges:n}){return Boolea... method apiChangesObject (line 10) | apiChangesObject(){return this.apiChanges||{}} method created (line 10) | created(){this.restorePersistedState()} method apiChanges (line 10) | apiChanges(e){e||(this.selectedTags=this.selectedTags.filter(e=>!za[e]))} method clearFilters (line 10) | clearFilters(){this.filter="",this.debouncedFilter="",this.selectedTags=... method scrollToFocus (line 10) | scrollToFocus(){this.$refs.scroller.scrollToItem(this.focusedIndex)} method trackOpenNodes (line 10) | trackOpenNodes([e,t,n,a],[,i=[],s="",r=[]]=[]){if(n!==s&&!s&&this.getFro... method toggle (line 10) | toggle(e){const t=this.openNodes[e.uid];let n=[],a=[];if(t){const t=Obje... method toggleFullTree (line 10) | toggleFullTree(e){const t=this.openNodes[e.uid],n=Object(w["a"])(this.op... method toggleSiblings (line 10) | toggleSiblings(e){const t=this.openNodes[e.uid],n=Object(w["a"])(this.op... method getAllChildren (line 10) | getAllChildren(e){const t=[],n=[e];let a=null;while(n.length){a=n.shift(... method getParents (line 10) | getParents(e){const t=[],n=[e];let a=null;while(n.length){a=n.pop();cons... method getSiblings (line 10) | getSiblings(e){const t=this.childrenMap[e];return t?this.getChildren(t.p... method getChildren (line 10) | getChildren(e){if(e===Bl)return this.children.filter(e=>e.parent===Bl);c... method generateNodesToRender (line 10) | generateNodesToRender(){const{children:e,openNodes:t,renderableChildNode... method augmentRenderNodes (line 10) | augmentRenderNodes({uid:e,include:t=[],exclude:n=[]}){const a=this.nodes... method getFromStorage (line 10) | getFromStorage(e,t=null){const n=cl["b"].get(su,{}),a=n[this.technologyP... method persistState (line 10) | persistState(){const e={path:this.lastActivePathItem},{path:t}=this.acti... method clearPersistedState (line 10) | clearPersistedState(){const e={...cl["b"].get(su,{}),[this.technologyPat... method restorePersistedState (line 10) | restorePersistedState(){const e=this.getFromStorage();if(!e||e.path!==th... method scrollToElement (line 10) | async scrollToElement(){if(await Object(pl["b"])(1),!this.$refs.scroller... method getChildPositionInScroller (line 10) | getChildPositionInScroller(e){if(!e)return 0;const{paddingTop:t,paddingB... method isInsideScroller (line 10) | isInsideScroller(e){return this.$refs.scroller.$el.contains(e)} method handleFocusIn (line 10) | handleFocusIn(e){this.lastFocusTarget=e.target;const t=this.getChildPosi... method handleFocusOut (line 10) | handleFocusOut(e){e.relatedTarget&&(this.isInsideScroller(e.relatedTarge... method setActiveUID (line 10) | setActiveUID(e){this.activeUID=e,this.resetScroll=!1} method handleNavigationChange (line 10) | handleNavigationChange(e){this.childrenMap[e].path.startsWith(this.techn... method pathsToFlatChildren (line 10) | pathsToFlatChildren(e){const t=e.slice(0).reverse();let n=this.children;... method handleActivePathChange (line 10) | handleActivePathChange(e){const t=this.childrenMap[this.activeUID],n=au(... method updateFocusIndexExternally (line 10) | updateFocusIndexExternally(){this.externalFocusChange=!0,this.activeInde... method convertChildrenArrayToObject (line 10) | convertChildrenArrayToObject(e){return e.reduce((e,t)=>(e[t.uid]=t,e),{})} method focusNodeParent (line 10) | focusNodeParent(e){const t=this.childrenMap[e.parent];if(!t)return;const... method data (line 10) | data(){return{INDEX_ROOT_KEY:Bl}} method parentTopicReferences (line 10) | parentTopicReferences({references:e,parentTopicIdentifiers:t}){return t.... method activePath (line 10) | activePath({parentTopicReferences:e,$route:{path:t}}){if(t=t.replace(/\/... method hashCode (line 10) | hashCode(e){return e.split("").reduce((e,t)=>(e<<5)-e+t.charCodeAt(0)|0,0)} method flattenNestedData (line 10) | flattenNestedData(e,t=null,n=0,a=!1){let i=[];const s=e.length;let r;for... method collapsed (line 10) | collapsed(e,t){t&&!e?document.addEventListener("click",this.handleDocume... method beforeDestroy (line 10) | beforeDestroy(){document.removeEventListener("click",this.handleDocument... method handleDocumentClick (line 10) | handleDocumentClick(e){const{target:t}=e,{collapsed:n,$refs:{btn:a,dropd... method toggleCollapsed (line 10) | toggleCollapsed(){this.collapsed=!this.collapsed} method data (line 10) | data(){return{windowWidth:window.innerWidth}} method mounted (line 10) | mounted(){const e=yl(()=>{this.windowWidth=window.innerWidth},150);windo... method parentTopics (line 10) | parentTopics(){return this.parentTopicIdentifiers.reduce((e,t)=>{const n... method addQueryParamsToUrl (line 10) | addQueryParamsToUrl(e){return Object(q["b"])(e,this.$route.query)} method default (line 10) | default(){return{setPreferredLanguage(){}}} method data (line 10) | data(){return{languageModel:null,adjustedWidth:0}} method mounted (line 10) | mounted(){const e=ul(async()=>{await Object(pl["b"])(3),this.calculateSe... method handler (line 10) | handler(e){this.languageModel=e} method getRoute (line 10) | getRoute(e){const t=e.query===O["a"].swift.key.url?void 0:e.query;return... method pushRoute (line 10) | async pushRoute(e){await this.closeNav(),this.store.setPreferredLanguage... method isCurrentPath (line 10) | isCurrentPath(e){return this.$route.path.replace(/^\//,"")===e} method normalizePath (line 10) | normalizePath(e){return e.startsWith("/")?e:"/"+e} method calculateSelectWidth (line 10) | async calculateSelectWidth(){await this.$nextTick(),this.adjustedWidth=t... method languages (line 10) | languages(){return[{name:O["a"].swift.name,api:O["a"].swift.key.api,rout... method handleSidenavToggle (line 10) | async handleSidenavToggle(e){await e(),this.$emit("toggle-sidenav")} method data (line 10) | data(){return{topicDataDefault:null,topicDataObjc:null,isSideNavOpen:!1,... method get (line 10) | get(){return this.topicDataObjc?this.topicDataObjc:this.topicDataDefault} method set (line 10) | set(e){this.topicDataDefault=e} method topicProps (line 10) | topicProps(){const{abstract:e,defaultImplementationsSections:t,deprecati... method sidebarListeners (line 10) | sidebarListeners(){return this.enableNavigator?{"update:openExternally":... method applyObjcOverrides (line 10) | applyObjcOverrides(){this.topicDataObjc=S(Object(w["a"])(this.topicData)... method handleCodeColorsChange (line 10) | handleCodeColorsChange(e){el["a"].updateCodeColors(e)} method mounted (line 10) | mounted(){this.$bridge.on("contentUpdate",e=>{this.topicData=e}),this.$b... method provide (line 10) | provide(){return{store:this.store}} method default (line 10) | default(){return!1} method beforeDestroy (line 10) | beforeDestroy(){this.$bridge.off("codeColors",this.handleCodeColorsChange)} method beforeRouteEnter (line 10) | beforeRouteEnter(e,t,n){Object(w["b"])(e,t,n).then(t=>n(n=>{n.topicData=... method beforeRouteUpdate (line 10) | beforeRouteUpdate(e,t,n){e.path===t.path&&e.query.language===O["a"].obje... method created (line 10) | created(){this.store.reset()} method topicData (line 10) | topicData(){this.$nextTick(()=>{this.newContentMounted()})} FILE: docs/js/documentation-topic~topic~tutorials-overview.8e36e44f.js function i (line 10) | function i(e){return e instanceof Map?e.clear=e.delete=e.set=function(){... class s (line 10) | class s{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data,thi... method constructor (line 10) | constructor(e){void 0===e.data&&(e.data={}),this.data=e.data,this.isMa... method ignoreMatch (line 10) | ignoreMatch(){this.isMatchIgnored=!0} function a (line 10) | function a(e){return e.replace(/&/g,"&").replace(/`} class h (line 10) | class h{constructor(){this.rootNode={children:[]},this.stack=[this.rootN... method constructor (line 10) | constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]} method top (line 10) | get top(){return this.stack[this.stack.length-1]} method root (line 10) | get root(){return this.rootNode} method add (line 10) | add(e){this.top.children.push(e)} method openNode (line 10) | openNode(e){const t={kind:e,children:[]};this.add(t),this.stack.push(t)} method closeNode (line 10) | closeNode(){if(this.stack.length>1)return this.stack.pop()} method closeAllNodes (line 10) | closeAllNodes(){while(this.closeNode());} method toJSON (line 10) | toJSON(){return JSON.stringify(this.rootNode,null,4)} method walk (line 10) | walk(e){return this.constructor._walk(e,this.rootNode)} method _walk (line 10) | static _walk(e,t){return"string"===typeof t?e.addText(t):t.children&&(... method _collapse (line 10) | static _collapse(e){"string"!==typeof e&&e.children&&(e.children.every... class p (line 10) | class p extends h{constructor(e){super(),this.options=e}addKeyword(e,t){... method constructor (line 10) | constructor(e){super(),this.options=e} method addKeyword (line 10) | addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNo... method addText (line 10) | addText(e){""!==e&&this.add(e)} method addSublanguage (line 10) | addSublanguage(e,t){const n=e.root;n.kind=t,n.sublanguage=!0,this.add(n)} method toHTML (line 10) | toHTML(){const e=new d(this,this.options);return e.value()} method finalize (line 10) | finalize(){return!0} function g (line 10) | function g(e){return e?"string"===typeof e?e:e.source:null} function f (line 10) | function f(e){return v("(?=",e,")")} function m (line 10) | function m(e){return v("(?:",e,")*")} function b (line 10) | function b(e){return v("(?:",e,")?")} function v (line 10) | function v(...e){const t=e.map(e=>g(e)).join("");return t} function y (line 10) | function y(e){const t=e[e.length-1];return"object"===typeof t&&t.constru... function w (line 10) | function w(...e){const t=y(e),n="("+(t.capture?"":"?:")+e.map(e=>g(e)).j... function x (line 10) | function x(e){return new RegExp(e.toString()+"|").exec("").length-1} function E (line 10) | function E(e,t){const n=e&&e.exec(t);return n&&0===n.index} function j (line 10) | function j(e,{joinWith:t}){let n=0;return e.map(e=>{n+=1;const t=n;let i... function X (line 10) | function X(e,t){const n=e.input[e.index-1];"."===n&&t.ignoreMatch()} function Z (line 10) | function Z(e,t){void 0!==e.className&&(e.scope=e.className,delete e.clas... function J (line 10) | function J(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.spli... function Q (line 10) | function Q(e,t){Array.isArray(e.illegal)&&(e.illegal=w(...e.illegal))} function ee (line 10) | function ee(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & ... function te (line 10) | function te(e,t){void 0===e.relevance&&(e.relevance=1)} function se (line 10) | function se(e,t,n=re){const i=Object.create(null);return"string"===typeo... function ae (line 10) | function ae(e,t){return t?Number(t):oe(e)?0:1} function oe (line 10) | function oe(e){return ie.includes(e.toLowerCase())} function pe (line 10) | function pe(e,t,{key:n}){let i=0;const r=e[n],s={},a={};for(let o=1;o<=t... function ge (line 10) | function ge(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.r... function fe (line 10) | function fe(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.retur... function me (line 10) | function me(e){e.scope&&"object"===typeof e.scope&&null!==e.scope&&(e.be... function be (line 10) | function be(e){me(e),"string"===typeof e.beginScope&&(e.beginScope={_wra... function ve (line 10) | function ve(e){function t(t,n){return new RegExp(g(t),"m"+(e.case_insens... function ye (line 10) | function ye(e){return!!e&&(e.endsWithParent||ye(e.starts))} function we (line 10) | function we(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e... class Ee (line 10) | class Ee extends Error{constructor(e,t){super(e),this.name="HTMLInjectio... method constructor (line 10) | constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t} function u (line 10) | function u(e){return l.noHighlightRe.test(e)} function d (line 10) | function d(e){let t=e.className+" ";t+=e.parentNode?e.parentNode.classNa... method constructor (line 10) | constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(... method addText (line 10) | addText(e){this.buffer+=a(e)} method openNode (line 10) | openNode(e){if(!l(e))return;let t=e.kind;t=e.sublanguage?"language-"+t... method closeNode (line 10) | closeNode(e){l(e)&&(this.buffer+=c)} method value (line 10) | value(){return this.buffer} method span (line 10) | span(e){this.buffer+=``} function h (line 10) | function h(e,t,n){let i="",r="";"object"===typeof t?(i=e,n=t.ignoreIlleg... method constructor (line 10) | constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]} method top (line 10) | get top(){return this.stack[this.stack.length-1]} method root (line 10) | get root(){return this.rootNode} method add (line 10) | add(e){this.top.children.push(e)} method openNode (line 10) | openNode(e){const t={kind:e,children:[]};this.add(t),this.stack.push(t)} method closeNode (line 10) | closeNode(){if(this.stack.length>1)return this.stack.pop()} method closeAllNodes (line 10) | closeAllNodes(){while(this.closeNode());} method toJSON (line 10) | toJSON(){return JSON.stringify(this.rootNode,null,4)} method walk (line 10) | walk(e){return this.constructor._walk(e,this.rootNode)} method _walk (line 10) | static _walk(e,t){return"string"===typeof t?e.addText(t):t.children&&(... method _collapse (line 10) | static _collapse(e){"string"!==typeof e&&e.children&&(e.children.every... function g (line 10) | function g(e,n,i,r){const c=Object.create(null);function u(e,t){return e... function y (line 10) | function y(e){const t={value:_e(e),illegal:!1,relevance:0,_top:c,_emitte... function x (line 10) | function x(e,n){n=n||l.languages||Object.keys(t);const i=y(e),r=n.filter... function _ (line 10) | function _(e,t,i){const r=t&&n[t]||i;e.classList.add("hljs"),e.classList... function j (line 10) | function j(e){let t=null;const n=d(e);if(u(n))return;if(P("before:highli... function k (line 10) | function k(e){l=je(l,e)} function C (line 10) | function C(){O(),de("10.6.0","initHighlightingOnLoad() deprecated. Use ... function O (line 10) | function O(){if("loading"===document.readyState)return void(S=!0);const ... function N (line 10) | function N(){S&&O()} function I (line 10) | function I(n,i){let r=null;try{r=i(e)}catch(s){if(le("Language definitio... function L (line 10) | function L(e){delete t[e];for(const t of Object.keys(n))n[t]===e&&delete... function A (line 10) | function A(){return Object.keys(t)} function B (line 10) | function B(e){return e=(e||"").toLowerCase(),t[e]||t[n[e]]} function M (line 10) | function M(e,{languageName:t}){"string"===typeof e&&(e=[e]),e.forEach(e=... function $ (line 10) | function $(e){const t=B(e);return t&&!t.disableAutodetect} function R (line 10) | function R(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&... function D (line 10) | function D(e){R(e),i.push(e)} function P (line 10) | function P(e,t){const n=e;i.forEach((function(e){e[n]&&e[n](t)}))} function F (line 10) | function F(e){return de("10.7.0","highlightBlock will be removed entirel... function r (line 10) | function r(e){if(!n.o(i,e))return Promise.resolve().then((function(){var... method mounted (line 10) | mounted(){this.$route.hash&&this.scrollToElement(this.$route.hash)} class o (line 10) | class o extends Error{constructor({location:e,response:t}){super("Reques... method constructor (line 10) | constructor({location:e,response:t}){super("Request redirected"),this.... method constructor (line 10) | constructor(e){i(this,"focusContainer",null),i(this,"tabTargets",[]),i... method updateFocusContainer (line 10) | updateFocusContainer(e){this.focusContainer=e} method start (line 10) | start(){this.collectTabTargets(),this.firstTabTarget?this.focusContain... method stop (line 10) | stop(){document.removeEventListener("focus",this.onFocus,!0)} method collectTabTargets (line 10) | collectTabTargets(){this.tabTargets=a.getTabbableElements(this.focusCo... method onFocus (line 10) | onFocus(e){if(this.focusContainer.contains(e.target))this.lastFocusedE... method destroy (line 10) | destroy(){this.stop(),this.focusContainer=null,this.tabTargets=[],this... class c (line 10) | class c extends Error{constructor(e){super("Unable to fetch data"),this.... method constructor (line 10) | constructor(e){super("Unable to fetch data"),this.route=e} function l (line 10) | async function l(e,t={}){function n(e){return("ide"!==Object({NODE_ENV:"... function u (line 10) | function u(e){const t=e.replace(/\/$/,"");return Object(i["c"])([a["a"],... function d (line 10) | function d(e){const{pathname:t,search:n}=new URL(e),i=/\/data(\/.*).json... method constructor (line 10) | constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(... method addText (line 10) | addText(e){this.buffer+=a(e)} method openNode (line 10) | openNode(e){if(!l(e))return;let t=e.kind;t=e.sublanguage?"language-"+t... method closeNode (line 10) | closeNode(e){l(e)&&(this.buffer+=c)} method value (line 10) | value(){return this.buffer} method span (line 10) | span(e){this.buffer+=``} function h (line 10) | async function h(e,t,n){const i=u(e.path);let r;try{r=await l(i,e.query)... method constructor (line 10) | constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]} method top (line 10) | get top(){return this.stack[this.stack.length-1]} method root (line 10) | get root(){return this.rootNode} method add (line 10) | add(e){this.top.children.push(e)} method openNode (line 10) | openNode(e){const t={kind:e,children:[]};this.add(t),this.stack.push(t)} method closeNode (line 10) | closeNode(){if(this.stack.length>1)return this.stack.pop()} method closeAllNodes (line 10) | closeAllNodes(){while(this.closeNode());} method toJSON (line 10) | toJSON(){return JSON.stringify(this.rootNode,null,4)} method walk (line 10) | walk(e){return this.constructor._walk(e,this.rootNode)} method _walk (line 10) | static _walk(e,t){return"string"===typeof t?e.addText(t):t.children&&(... method _collapse (line 10) | static _collapse(e){"string"!==typeof e&&e.children&&(e.children.every... function p (line 10) | function p(e,t){return!Object(r["a"])(e,t)} method constructor (line 10) | constructor(e){super(),this.options=e} method addKeyword (line 10) | addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNo... method addText (line 10) | addText(e){""!==e&&this.add(e)} method addSublanguage (line 10) | addSublanguage(e,t){const n=e.root;n.kind=t,n.sublanguage=!0,this.add(n)} method toHTML (line 10) | toHTML(){const e=new d(this,this.options);return e.value()} method finalize (line 10) | finalize(){return!0} function g (line 10) | function g(e){return JSON.parse(JSON.stringify(e))} function f (line 10) | async function f(){const e=new URL(""+Object(i["c"])([a["a"],"index/inde... function r (line 10) | function r(e){if(!n.o(i,e))return Promise.resolve().then((function(){var... function r (line 10) | function r({major:e,minor:t,patch:n}){return[e,t,n].join(".")} function s (line 10) | function s(e){const[t=0,n=0,i=0]=e.split(".");return[Number(t),Number(n)... method constructor (line 10) | constructor(e){void 0===e.data&&(e.data={}),this.data=e.data,this.isMa... method ignoreMatch (line 10) | ignoreMatch(){this.isMatchIgnored=!0} function a (line 10) | function a(e,t){const n=s(e),i=s(t);for(let r=0;r`} method provide (line 10) | provide(){const e={selectTab:this.selectTab};return Object.definePropert... method selectTab (line 10) | selectTab(e){this.$emit("input",e)} method isActive (line 10) | isActive({tabnavData:e,value:t}){return e.activeTab===t} method data (line 10) | data(){return{isCollapsed:!0,currentTab:Y.request}} method isCurrent (line 10) | isCurrent(e){return this.currentTab===e} method showMore (line 10) | showMore(){this.isCollapsed=!1} method showLess (line 10) | showLess(){this.isCollapsed=!0} function Me (line 10) | function Me(e,t){const n=n=>n.map(Me(e,t)),a=t=>t.map(t=>e("li",{},n(t.c... method default (line 10) | default(){return{}} method map (line 10) | map(e){function t(n=[]){return n.map(n=>{switch(n.type){case Le.aside:re... method forEach (line 10) | forEach(e){function t(n=[]){n.forEach(n=>{switch(e(n),n.type){case Le.as... method reduce (line 10) | reduce(e,t){let n=t;return this.forEach(t=>{n=e(n,t)}),n} method plaintext (line 10) | plaintext(){return this.reduce((e,t)=>t.type===Le.paragraph?e+"\n":t.typ... method data (line 10) | data(){return{intersectionObserver:null,intersectionPreviousScrollY:0,in... method intersectionThreshold (line 10) | intersectionThreshold(){const e=[];for(let t=0;t<=1;t+=.01)e.push(t);ret... method intersectionRoot (line 10) | intersectionRoot(){return null} method intersectionRootMargin (line 10) | intersectionRootMargin(){return"0px 0px 0px 0px"} method intersectionObserverOptions (line 10) | intersectionObserverOptions(){return{root:this.intersectionRoot,rootMarg... method mounted (line 10) | async mounted(){await n.e("chunk-2d0d3105").then(n.t.bind(null,"5abe",7)... method beforeDestroy (line 10) | beforeDestroy(){this.intersectionObserver&&this.intersectionObserver.dis... method getIntersectionTargets (line 10) | getIntersectionTargets(){return[this.$el]} method detectIntersectionScrollDirection (line 10) | detectIntersectionScrollDirection(){window.scrollY{l... function m (line 10) | function m(e){if(p.has(e))return e;const t=h.find(([,t])=>t.includes(e))... function b (line 10) | function b(e){if(g.has(e))return g.get(e);const t=m(e);return g.set(e,t),t} function x (line 10) | function x(e){return 0===e.length?[]:e.split(y)} function E (line 10) | function E(e){return(e.trim().match(y)||[]).length} function _ (line 10) | function _(e){const t=document.createElement("template");return t.innerH... function j (line 10) | function j(e){const{className:t}=e;if(!w.test(t))return null;const n=x(e... function k (line 10) | function k(e){return Array.from(e.childNodes).forEach(e=>{if(E(e.textCon... function T (line 10) | function T(e,t){const n=m(t);if(!c.a.getLanguage(n))throw new Error("Uns... function C (line 10) | function C(e,t){const n=e.join("\n"),i=T(n,t),r=document.createElement("... method data (line 10) | data(){return{syntaxHighlightedLines:[]}} method highlightedLineNumbers (line 10) | highlightedLineNumbers(){return new Set(this.highlights.map(({line:e})=>... method syntaxNameNormalized (line 10) | syntaxNameNormalized(){const e={occ:a["a"].objectiveC.key.url};return e[... method isHighlighted (line 10) | isHighlighted(e){return this.highlightedLineNumbers.has(this.lineNumberF... method lineNumberFor (line 10) | lineNumberFor(e){return this.startLineNumber+e} method syntaxHighlightLines (line 10) | async syntaxHighlightLines(){let e;try{await v(this.syntaxNameNormalized... method isInternal (line 10) | isInternal({url:e}){if(!e.startsWith("/")&&!e.startsWith("#"))return!1;c... method isSymbolReference (line 10) | isSymbolReference(){return"symbol"===this.kind&&(this.role===a["a"].symb... method isDisplaySymbol (line 10) | isDisplaySymbol({isSymbolReference:e,titleStyle:t,ideTitle:n}){return n?... method refComponent (line 10) | refComponent(){return this.isInternal?this.isDisplaySymbol?C:E:g} method urlWithParams (line 10) | urlWithParams({isInternal:e}){return e?Object(s["b"])(this.url,this.$rou... method isActiveComputed (line 10) | isActiveComputed({url:e,isActive:t}){return!(!e||!t)} method scrollToElement (line 10) | async scrollToElement(e){await Object(i["b"])(8);const t=this.$router.re... method variantsGroupedByAppearance (line 10) | variantsGroupedByAppearance(){return Object(s["d"])(this.variants)} method lightVariants (line 10) | lightVariants(){return Object(s["a"])(this.variantsGroupedByAppearance.l... method darkVariants (line 10) | darkVariants(){return Object(s["a"])(this.variantsGroupedByAppearance.da... function h (line 10) | function h(e){return new Promise((t,n)=>{const i=new Image;i.src=e,i.one... method constructor (line 10) | constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]} method top (line 10) | get top(){return this.stack[this.stack.length-1]} method root (line 10) | get root(){return this.rootNode} method add (line 10) | add(e){this.top.children.push(e)} method openNode (line 10) | openNode(e){const t={kind:e,children:[]};this.add(t),this.stack.push(t)} method closeNode (line 10) | closeNode(){if(this.stack.length>1)return this.stack.pop()} method closeAllNodes (line 10) | closeAllNodes(){while(this.closeNode());} method toJSON (line 10) | toJSON(){return JSON.stringify(this.rootNode,null,4)} method walk (line 10) | walk(e){return this.constructor._walk(e,this.rootNode)} method _walk (line 10) | static _walk(e,t){return"string"===typeof t?e.addText(t):t.children&&(... method _collapse (line 10) | static _collapse(e){"string"!==typeof e&&e.children&&(e.children.every... function p (line 10) | function p(e){if(!e.length)return null;const t=e.map(e=>`${Object(s["b"]... method constructor (line 10) | constructor(e){super(),this.options=e} method addKeyword (line 10) | addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNo... method addText (line 10) | addText(e){""!==e&&this.add(e)} method addSublanguage (line 10) | addSublanguage(e,t){const n=e.root;n.kind=t,n.sublanguage=!0,this.add(n)} method toHTML (line 10) | toHTML(){const e=new d(this,this.options);return e.value()} method finalize (line 10) | finalize(){return!0} method handleImageLoadError (line 10) | handleImageLoadError(){this.fallbackImageSrcSet=u.a+" 2x"} method calculateOptimalWidth (line 10) | async calculateOptimalWidth(){const{$refs:{img:{currentSrc:e}},allVarian... method optimizeImageSize (line 10) | async optimizeImageSize(){if(!this.defaultAttributes.width)try{this.opti... method mounted (line 10) | mounted(){this.$refs.img.addEventListener("load",this.optimizeImageSize)} function i (line 10) | function i(e,t){const n=document.body;let r=e,s=e;while(r=r.previousElem... method hide (line 10) | hide(e){i(e,o)} method show (line 10) | show(e){i(e,c)} function a (line 10) | function a({minWidth:e,maxWidth:t}){return["only screen",s(e),r(t)].filt... function o (line 10) | function o({maxWidth:e,minWidth:t}){return window.matchMedia(a({minWidth... method constructor (line 10) | constructor({location:e,response:t}){super("Request redirected"),this.... method constructor (line 10) | constructor(e){i(this,"focusContainer",null),i(this,"tabTargets",[]),i... method updateFocusContainer (line 10) | updateFocusContainer(e){this.focusContainer=e} method start (line 10) | start(){this.collectTabTargets(),this.firstTabTarget?this.focusContain... method stop (line 10) | stop(){document.removeEventListener("focus",this.onFocus,!0)} method collectTabTargets (line 10) | collectTabTargets(){this.tabTargets=a.getTabbableElements(this.focusCo... method onFocus (line 10) | onFocus(e){if(this.focusContainer.contains(e.target))this.lastFocusedE... method destroy (line 10) | destroy(){this.stop(),this.focusContainer=null,this.tabTargets=[],this... method render (line 10) | render(){return this.$scopedSlots.default?this.$scopedSlots.default({mat... method initMediaQuery (line 10) | initMediaQuery(e,t){const n=o(t),i=t=>this.handleMediaQueryChange(t,e);n... method handleMediaQueryChange (line 10) | handleMediaQueryChange(e,t){e.matches&&(this.matchingBreakpoint=t,this.$... method mounted (line 10) | mounted(){const e=i["a"][this.scope]||{};Object.entries(e).forEach(([e,t... method newContentMounted (line 10) | newContentMounted(){let e;this.performanceMetricsEnabled&&(e=Math.round(... function u (line 10) | function u({title:e,description:t,url:n}){const i=o(e);l(i),a({title:i,d... method extractFirstParagraphText (line 10) | extractFirstParagraphText(e=[]){const t=h["a"].computed.plaintext.bind({... method mounted (line 10) | mounted(){u({title:this.pageTitle,description:this.pageDescription,url:t... method formatAriaLabel (line 10) | formatAriaLabel(e){return this.shouldAppendOpensInBrowser?e+" (opens in ... method render (line 10) | render(){return this.$scopedSlots.default({url:this.linkUrl||"",title:th... function i (line 10) | function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enume... method getTabbableElements (line 10) | getTabbableElements(e){const t=e.querySelectorAll(s),n=t.length;let i;co... method isTabbableElement (line 10) | isTabbableElement(e){if(!e.offsetParent)return!1;const t=parseFloat(e.ge... method isFocusableElement (line 10) | isFocusableElement(e){const t=e.nodeName.toLowerCase(),n=r.includes(t);r... class o (line 10) | class o{constructor(e){i(this,"focusContainer",null),i(this,"tabTargets"... method constructor (line 10) | constructor({location:e,response:t}){super("Request redirected"),this.... method constructor (line 10) | constructor(e){i(this,"focusContainer",null),i(this,"tabTargets",[]),i... method updateFocusContainer (line 10) | updateFocusContainer(e){this.focusContainer=e} method start (line 10) | start(){this.collectTabTargets(),this.firstTabTarget?this.focusContain... method stop (line 10) | stop(){document.removeEventListener("focus",this.onFocus,!0)} method collectTabTargets (line 10) | collectTabTargets(){this.tabTargets=a.getTabbableElements(this.focusCo... method onFocus (line 10) | onFocus(e){if(this.focusContainer.contains(e.target))this.lastFocusedE... method destroy (line 10) | destroy(){this.stop(),this.focusContainer=null,this.tabTargets=[],this... method data (line 10) | data(){return{isOpen:!1,inBreakpoint:!1,isTransitioning:!1,isSticking:!1... method isOpen (line 10) | isOpen(e){this.$emit("change",e),e?this.onExpand():this.onClose()} method mounted (line 10) | async mounted(){window.addEventListener("keydown",this.onEscape),window.... method beforeDestroy (line 10) | beforeDestroy(){window.removeEventListener("keydown",this.onEscape),wind... method getIntersectionTargets (line 10) | getIntersectionTargets(){return[document.getElementById(u["d"])||this.$el]} method toggleNav (line 10) | toggleNav(){this.isOpen=!this.isOpen,this.isTransitioning=!0} method closeNav (line 10) | closeNav(){const e=this.isOpen;return this.isOpen=!1,this.resolveOnceTra... method resolveOnceTransitionsEnd (line 10) | resolveOnceTransitionsEnd(e){return e&&this.inBreakpoint?(this.isTransit... method onTransitionEnd (line 10) | async onTransitionEnd({propertyName:e}){"max-height"===e&&(this.$emit("c... method onBreakpointChange (line 10) | onBreakpointChange(e){const t=Object(d["d"])(e,this.breakpoint);this.inB... method onIntersect (line 10) | onIntersect({intersectionRatio:e}){window.scrollY<0||(this.isSticking=1!... method onEscape (line 10) | onEscape({key:e}){"Escape"===e&&this.isOpen&&(this.closeNav(),this.$refs... method handleTrayClick (line 10) | handleTrayClick({target:e}){e.href&&!e.classList.contains(g)&&this.close... method handleClickOutside (line 10) | handleClickOutside({target:e}){this.$refs.nav.contains(e)||this.closeNav()} method toggleScrollLock (line 10) | toggleScrollLock(e){e?l["a"].lockScroll(this.$refs.tray):l["a"].unlockSc... method onExpand (line 10) | onExpand(){this.$emit("open"),this.focusTrapInstance.start(),h["a"].hide... method onClose (line 10) | onClose(){this.$emit("close"),this.toggleScrollLock(!1),this.focusTrapIn... method handleFlashOnMount (line 10) | async handleFlashOnMount(){await Object(p["b"])(b),this.noBackgroundTran... function o (line 10) | function o(e){e.touches.length>1||e.preventDefault()} method constructor (line 10) | constructor({location:e,response:t}){super("Request redirected"),this.... method constructor (line 10) | constructor(e){i(this,"focusContainer",null),i(this,"tabTargets",[]),i... method updateFocusContainer (line 10) | updateFocusContainer(e){this.focusContainer=e} method start (line 10) | start(){this.collectTabTargets(),this.firstTabTarget?this.focusContain... method stop (line 10) | stop(){document.removeEventListener("focus",this.onFocus,!0)} method collectTabTargets (line 10) | collectTabTargets(){this.tabTargets=a.getTabbableElements(this.focusCo... method onFocus (line 10) | onFocus(e){if(this.focusContainer.contains(e.target))this.lastFocusedE... method destroy (line 10) | destroy(){this.stop(),this.focusContainer=null,this.tabTargets=[],this... function l (line 10) | function l(){s=document.body.getBoundingClientRect().top,document.body.s... function u (line 10) | function u(e){e&&(e.ontouchstart=null,e.ontouchmove=null),document.remov... function d (line 10) | function d(e,t){const n=e.targetTouches[0].clientY-r;return 0===t.scroll... method constructor (line 10) | constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(... method addText (line 10) | addText(e){this.buffer+=a(e)} method openNode (line 10) | openNode(e){if(!l(e))return;let t=e.kind;t=e.sublanguage?"language-"+t... method closeNode (line 10) | closeNode(e){l(e)&&(this.buffer+=c)} method value (line 10) | value(){return this.buffer} method span (line 10) | span(e){this.buffer+=``} function h (line 10) | function h(e){document.addEventListener("touchmove",o,{passive:!1}),e&&(... method constructor (line 10) | constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]} method top (line 10) | get top(){return this.stack[this.stack.length-1]} method root (line 10) | get root(){return this.rootNode} method add (line 10) | add(e){this.top.children.push(e)} method openNode (line 10) | openNode(e){const t={kind:e,children:[]};this.add(t),this.stack.push(t)} method closeNode (line 10) | closeNode(){if(this.stack.length>1)return this.stack.pop()} method closeAllNodes (line 10) | closeAllNodes(){while(this.closeNode());} method toJSON (line 10) | toJSON(){return JSON.stringify(this.rootNode,null,4)} method walk (line 10) | walk(e){return this.constructor._walk(e,this.rootNode)} method _walk (line 10) | static _walk(e,t){return"string"===typeof t?e.addText(t):t.children&&(... method _collapse (line 10) | static _collapse(e){"string"!==typeof e&&e.children&&(e.children.every... method lockScroll (line 10) | lockScroll(e){i||(a()?h(e):l(),i=!0)} method unlockScroll (line 10) | unlockScroll(e){i&&(a()?u(e):(document.body.style.cssText="",window.scro... FILE: docs/js/highlight-js-bash.1b52852f.js function t (line 10) | function t(e){const s=e.regex,t={},n={begin:/\$\{/,end:/\}/,contains:["s... FILE: docs/js/highlight-js-c.d1db3f17.js function s (line 10) | function s(e){const n=e.regex,s=e.COMMENT("//","$",{contains:[{begin:/\\... FILE: docs/js/highlight-js-cpp.eaddddbe.js function n (line 10) | function n(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\... FILE: docs/js/highlight-js-css.75eab1fe.js function s (line 10) | function s(e){const t=e.regex,s=o(e),d={begin:/-(webkit|moz|ms|o)-(?=[a-... FILE: docs/js/highlight-js-custom-markdown.7cffc4b3.js function a (line 10) | function a(n){const e=n.regex,a={begin:/<\/?[A-Za-z_]/,end:">",subLangua... FILE: docs/js/highlight-js-custom-swift.5cda5c20.js function t (line 10) | function t(e){return e?"string"===typeof e?e:e.source:null} function a (line 10) | function a(e){return i("(?=",e,")")} function i (line 10) | function i(...e){const n=e.map(e=>t(e)).join("");return n} function s (line 10) | function s(e){const n=e[e.length-1];return"object"===typeof n&&n.constru... function c (line 10) | function c(...e){const n=s(e),a="("+(n.capture?"":"?:")+e.map(e=>t(e)).j... function k (line 10) | function k(e){const n={match:/\s+/,relevance:0},t=e.COMMENT("/\\*","\\*/... FILE: docs/js/highlight-js-diff.62d66733.js function a (line 10) | function a(e){const n=e.regex;return{name:"Diff",aliases:["patch"],conta... FILE: docs/js/highlight-js-http.163e45b6.js function a (line 10) | function a(e){const n=e.regex,a="HTTP/(2|1\\.[01])",s=/[A-Za-z][A-Za-z0-... FILE: docs/js/highlight-js-java.8326d9d8.js function r (line 10) | function r(e,a,n){return-1===n?"":e.replace(a,s=>r(e,a,n-1))} function c (line 10) | function c(e){e.regex;const a="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",n=a+r("(?... FILE: docs/js/highlight-js-javascript.acb8a8eb.js function b (line 10) | function b(e){const n=e.regex,b=(e,{after:n})=>{const a="",subLangua... FILE: docs/js/highlight-js-objectivec.bcdf5156.js function _ (line 10) | function _(e){const n={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL... FILE: docs/js/highlight-js-perl.757d7b6f.js function t (line 10) | function t(e){const n=e.regex,t=["abs","accept","alarm","and","atan2","b... FILE: docs/js/highlight-js-php.cc8d6c27.js function t (line 10) | function t(e){const r={className:"variable",begin:"\\$+[a-zA-Z_-ÿ][a-zA... FILE: docs/js/highlight-js-python.c214ed92.js function a (line 10) | function a(e){const n=e.regex,a=/[\p{XID_Start}_]\p{XID_Continue}*/u,i=[... FILE: docs/js/highlight-js-ruby.f889d392.js function a (line 10) | function a(e){const n=e.regex,a="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|==... FILE: docs/js/highlight-js-scss.62ee18da.js function s (line 10) | function s(e){const t=i(e),s=n,d=a,c="@[a-z-]+",p="and or not only",g="[... FILE: docs/js/highlight-js-shell.dd7f411f.js function e (line 10) | function e(s){return{name:"Shell Session",aliases:["console","shellsessi... FILE: docs/js/highlight-js-swift.84f3e88c.js function a (line 10) | function a(e){return e?"string"===typeof e?e:e.source:null} function t (line 10) | function t(e){return i("(?=",e,")")} function i (line 10) | function i(...e){const n=e.map(e=>a(e)).join("");return n} function s (line 10) | function s(e){const n=e[e.length-1];return"object"===typeof n&&n.constru... function u (line 10) | function u(...e){const n=s(e),t="("+(n.capture?"":"?:")+e.map(e=>a(e)).j... function C (line 10) | function C(e){const n={match:/\s+/,relevance:0},a=e.COMMENT("/\\*","\\*/... FILE: docs/js/highlight-js-xml.9c3688c7.js function a (line 10) | function a(e){const n=e.regex,a=n.concat(/[A-Z_]/,n.optional(/[A-Z0-9_.-... FILE: docs/js/index.58e30ec4.js function t (line 9) | function t(t){for(var o,i,c=t[0],h=t[1],a=t[2],l=0,u=[];l({'"':""","'":"'","&":"&","<":"&l... function l (line 9) | function l(e,t){const{cardinal:n}=a,{one:o,other:i}=h,r="en",s=1===t?o:i... function u (line 9) | function u(e){return e.replace(/#(.*)/,(e,t)=>"#"+CSS.escape(t))} function d (line 9) | function d(e){return e.replace(/[.*+\-?^${}()|[\]\\]/g,"\\$&")} function g (line 9) | function g(e){let t,n;const o="\\s*",i=" ",r=e.trim(),s=r.length;if(!s)r... function f (line 9) | function f(e,t,n=0){return`${e.slice(0,n)}${t}${e.slice(n)}`} function m (line 9) | function m(e){const t=e.split(/(?:\r?\n)+/);return t[0]} function o (line 9) | function o(e){let t=null,n=e-1;const o=new Promise(e=>{t=e});return requ... function i (line 9) | function i(e){return new Promise(t=>{setTimeout(t,e)})} function i (line 9) | function i(e=localStorage){return{getItem:t=>{try{return e.getItem(t)}ca... function r (line 9) | function r(e){return{get:(t,n)=>{const i=JSON.parse(e.getItem(o+t));retu... function c (line 9) | function c(e,t){return s[e]>s[t]} function o (line 9) | function o(e,t,n){let o,i=e,r=t;for("string"===typeof r&&(r=[r]),o=0;o(t.traits.includes("dark")?e.dark.p... function r (line 9) | function r(e){const t=["1x","2x","3x"];return t.reduce((t,n)=>{const o=e... function s (line 9) | function s(e){const t="/",n=new RegExp(t+"+","g");return e.join(t).repla... function c (line 9) | function c(e){return e&&"string"===typeof e&&!e.startsWith(o["a"])&&e.st... function r (line 9) | function r(e={}){return Object.entries(e).reduce((e,[t,n])=>n?e.concat(`... function s (line 9) | function s(e,{changes:t,language:n,context:o}={}){const[i,s]=e.split("#"... function c (line 9) | function c(e,t){const{query:{changes:n,[i.input]:o,[i.tags]:r,...s}={}}=... function h (line 9) | function h(e,t=window.location.origin){return new URL(Object(o["b"])(e),... method setPreferredColorScheme (line 9) | setPreferredColorScheme(e){this.state.preferredColorScheme=e,i["a"].pref... method setSystemColorScheme (line 9) | setSystemColorScheme(e){this.state.systemColorScheme=e} method syncPreferredColorScheme (line 9) | syncPreferredColorScheme(){i["a"].preferredColorScheme&&i["a"].preferred... method handler (line 9) | handler(e){document.body.dataset.colorScheme=e} method data (line 9) | data(){return{loaded:!1}} method created (line 9) | created(){const e=()=>{this.loaded=!0};this.$router.onReady(e,e)} function A (line 9) | function A(e,t){return e&&"object"===typeof e&&Object.prototype.hasOwnPr... function x (line 9) | function x(e,t,n,o){if(!t||"object"!==typeof t||o&&(A(t,"light")||A(t,"d... function I (line 9) | function I(e,t="light"){const n={},o=e||{};return x("-",o,n,t),n} method provide (line 9) | provide(){return{isTargetIDE:this.isTargetIDE,performanceMetricsEnabled:... method data (line 9) | data(){return{appState:c["a"].state,fromKeyboard:!1,isTargetIDE:"ide"===... method handler (line 9) | handler(e){this.detachStylesFromRoot(e),this.attachStylesToRoot(e)} method created (line 9) | async created(){window.addEventListener("keydown",this.onKeyDown),this.$... method mounted (line 9) | mounted(){(document.querySelector(".footer-current-year")||{}).innerText... method beforeDestroy (line 9) | beforeDestroy(){this.fromKeyboard?window.removeEventListener("mousedown"... method onKeyDown (line 9) | onKeyDown(){this.fromKeyboard=!0,window.addEventListener("mousedown",thi... method onMouseDown (line 9) | onMouseDown(){this.fromKeyboard=!1,window.addEventListener("keydown",thi... method handleNavigationRequest (line 9) | handleNavigationRequest(e){this.$router.push(e)} method attachColorSchemeListeners (line 9) | attachColorSchemeListeners(){if(!window.matchMedia)return;const e=window... method onColorSchemePreferenceChange (line 9) | onColorSchemePreferenceChange({matches:e}){const t=e?h["a"].dark:h["a"].... method attachStylesToRoot (line 9) | attachStylesToRoot(e){const t=document.documentElement;Object.entries(e)... method detachStylesFromRoot (line 9) | detachStylesFromRoot(e){const t=document.documentElement;Object.entries(... method syncPreferredColorScheme (line 9) | syncPreferredColorScheme(){c["a"].syncPreferredColorScheme()} class R (line 9) | class R{constructor(){this.$send=()=>{}}send(e){this.$send(e)}} method constructor (line 9) | constructor(){this.$send=()=>{}} method send (line 9) | send(e){this.$send(e)} class U (line 9) | class U{constructor(){const{webkit:{messageHandlers:{bridge:e={}}={}}={}... method constructor (line 9) | constructor(){const{webkit:{messageHandlers:{bridge:e={}}={}}={}}=wind... method send (line 9) | send(e){this.$send(e)} class M (line 9) | class M{constructor(e=new R){this.backend=e,this.listeners={}}send(e){th... method constructor (line 9) | constructor(e=new R){this.backend=e,this.listeners={}} method send (line 9) | send(e){this.backend.send(e)} method receive (line 9) | receive(e){this.emit(e.type,e.data)} method emit (line 9) | emit(e,t){this.listeners[e]&&this.listeners[e].forEach(e=>e(t))} method on (line 9) | on(e,t){this.listeners[e]||(this.listeners[e]=new Set),this.listeners[... method off (line 9) | off(e,t){this.listeners[e]&&this.listeners[e].delete(t)} method install (line 9) | install(e,t){let n;n=t.performanceMetricsEnabled||"ide"===t.appTarget?ne... function W (line 9) | function W(e){return"custom-"+e} function V (line 9) | function V(e){return class extends HTMLElement{constructor(){super();con... function q (line 9) | function q(e){const t=W(e),n=document.getElementById(t);n&&window.custom... function F (line 9) | function F(e,t={names:["header","footer"]}){const{names:n}=t;e.config.ig... function H (line 9) | function H(e,t){const{value:n=!1}=t;e.style.display=n?"none":""} function G (line 9) | function G(e,{performanceMetrics:t=!1}={}){e.config.productionTip=!1,e.u... function Z (line 9) | function Z(){const{location:e}=window;return e.pathname+e.search+e.hash} function ee (line 9) | function ee(){const e=Math.max(document.documentElement.clientWidth||0,w... function te (line 9) | async function te(e,t,n){if(n)return await this.app.$nextTick(),n;if(e.h... function ne (line 9) | async function ne(){let e=window.sessionStorage.getItem("scrollPosition"... function oe (line 9) | function oe(){window.location.hash||sessionStorage.setItem("scrollPositi... function Ee (line 9) | function Ee(e={}){const t=new i["a"]({mode:"history",base:O["a"],scrollB... FILE: docs/js/topic.6a1c7b7f.js function s (line 20) | function s(e){return e&&"object"===typeof e&&"default"in e?e["default"]:e} function r (line 20) | function r(e){return r="function"===typeof Symbol&&"symbol"===typeof Sym... function o (line 20) | function o(e){return a(e)||l(e)||c()} function a (line 20) | function a(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t1&&void 0!==arguments[1]?arguments[... function h (line 20) | function h(e,t){return e.map((function(e,t){return[t,e]})).sort((functio... function m (line 20) | function m(e,t){return t.reduce((function(t,n){return e.hasOwnProperty(n... function A (line 20) | function A(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[... method addLinkableSection (line 20) | addLinkableSection(e){const t={...e,visibility:0};t.sectionNumber=this.s... method reset (line 20) | reset(){this.state.linkableSections=[],this.state.breakpoint=a.large} method updateLinkableSection (line 20) | updateLinkableSection(e){this.state.linkableSections=this.state.linkable... method updateBreakpoint (line 20) | updateBreakpoint(e){this.state.breakpoint=e} method render (line 20) | render(){return this.$scopedSlots.default({url:this.url,urlWithParams:Ob... method classesFor (line 20) | classesFor(e){return["option","section",{active:this.currentOption===e.t... method depthClass (line 20) | depthClass(e){const{depth:t=0}=e;return"depth"+t} method onClick (line 20) | onClick(e){this.$emit("select-section",e.path)} method set (line 20) | set(e){this.$emit("input",e)} method dropdownClasses (line 20) | dropdownClasses({value:e}){return["form-dropdown",{"form-dropdown-select... method data (line 20) | data(){return{isOpen:!1,OpenedClass:J,OptionClass:Y,ActiveOptionClass:Z}} method mounted (line 20) | mounted(){document.addEventListener("click",this.closeOnLoseFocus)} method beforeDestroy (line 20) | beforeDestroy(){document.removeEventListener("click",this.closeOnLoseFoc... method onChangeAction (line 20) | onChangeAction(e){this.$emit("input",e)} method toggleDropdown (line 20) | toggleDropdown(){this.isOpen?this.closeDropdown():this.openDropdown()} method closeAndFocusToggler (line 20) | async closeAndFocusToggler(){this.closeDropdown(),await this.$nextTick()... method closeDropdown (line 20) | closeDropdown(){this.isOpen=!1,this.$emit("close")} method openDropdown (line 20) | openDropdown(){this.isOpen=!0,this.$emit("open"),this.focusActiveLink()} method closeOnLoseFocus (line 20) | closeOnLoseFocus(e){!this.$el.contains(e.target)&&this.isOpen&&this.clos... method navigateOverOptions (line 20) | navigateOverOptions({target:e},t){const n=this.$el.querySelectorAll("."+... method focusActiveLink (line 20) | async focusActiveLink(){const e=this.$el.querySelector("."+Z);e&&(await ... method ariaCurrent (line 20) | ariaCurrent(e){return this.currentOption===e&&"section"} method setActive (line 20) | setActive(e,t,n,s){t(s),this.$emit("select-section",e.path),n()} method setActive (line 20) | setActive(e,t,n){e(n),t()} method data (line 20) | data(){return{currentSection:me,tutorialState:this.store.state}} method pageSectionWithHighestVisibility (line 20) | pageSectionWithHighestVisibility(e){e&&(this.currentSection=e)} method currentProject (line 20) | currentProject(){return this.chapters.reduce((e,{projects:t})=>e.concat(... method pageSections (line 20) | pageSections(){if(!this.currentProject)return[];const e=[me].concat(this... method optionsForSections (line 20) | optionsForSections(){return this.pageSections.map(({depth:e,path:t,title... method pageSectionWithHighestVisibility (line 20) | pageSectionWithHighestVisibility(){return[...this.pageSections].sort((e,... method sectionIndicatorText (line 20) | sectionIndicatorText(){const e=this.tutorialState.linkableSections.lengt... method onSelectSection (line 20) | onSelectSection(e){const t="#"+e.split("#")[1];this.scrollToElement(t)} method articleContent (line 20) | articleContent(){return this.map(e=>{switch(e.type){case $e["a"].BlockTy... method classes (line 20) | classes(){return{"cols-2":2===this.columns.length,"cols-3":3===this.colu... method classes (line 20) | classes(){return{"media-leading":this.mediaPosition===Ve.leading,"media-... method default (line 20) | default(){} method default (line 20) | default(){return{addLinkableSection(){},updateLinkableSection(){}}} method intersectionRootMargin (line 20) | intersectionRootMargin(){const e=this.navigationBarHeight?`-${this.navig... method created (line 20) | created(){this.store.addLinkableSection({anchor:this.anchor,depth:this.d... method onIntersect (line 20) | onIntersect(e){const t=Math.min(1,e.intersectionRatio);this.store.update... method componentFor (line 20) | componentFor(e){return e.heading?Ze:"div"} method depthFor (line 20) | depthFor(e){switch(e.level){case 1:case 2:return 0;default:return 1}} method propsFor (line 20) | propsFor(e){return e.heading?{anchor:e.heading.anchor,depth:this.depthFo... method componentFor (line 20) | componentFor(e){return{[rt.columns]:qe,[rt.contentAndMedia]:Ue,[rt.fullW... method propsFor (line 20) | propsFor(e){const{content:t,kind:n,media:s,mediaPosition:i}=e;return{[rt... method render (line 20) | render(e){return e(wt["a"],{props:{span:{large:5,small:12}}},this.$slots... method render (line 20) | render(e){return e(wt["a"],{props:{span:{large:6,small:12}}},this.$slots... method abstractParagraph (line 20) | abstractParagraph(){return{type:"paragraph",inlineContent:this.abstract}} method baseProps (line 20) | baseProps(){return{title:this.title,abstract:this.abstract,action:this.a... method data (line 20) | data(){return{lastFocusItem:null,prefersDarkStyle:!1,focusTrapInstance:n... method set (line 20) | set(e){this.$emit("update:visible",e)} method modalColors (line 20) | modalColors(){return{"--background":this.codeBackgroundColorOverride}} method themeClass (line 20) | themeClass({theme:e,prefersDarkStyle:t,isThemeDynamic:n}){let s={};retur... method isVisible (line 20) | isVisible(e){e?this.onShow():this.onHide()} method mounted (line 20) | mounted(){if(this.focusTrapInstance=new Yt["a"],document.addEventListene... method beforeDestroy (line 20) | beforeDestroy(){this.isVisible&&Jt["a"].unlockScroll(this.$refs.containe... method onShow (line 20) | async onShow(){await this.$nextTick(),Jt["a"].lockScroll(this.$refs.cont... method onHide (line 20) | onHide(){Jt["a"].unlockScroll(this.$refs.container),this.focusTrapInstan... method closeModal (line 20) | closeModal(){this.isVisible=!1} method selectContent (line 20) | selectContent(){window.getSelection().selectAllChildren(this.$refs.conte... method onClickOutside (line 20) | onClickOutside(){this.closeModal()} method onKeydown (line 20) | onKeydown(e){const{metaKey:t=!1,ctrlKey:n=!1,key:s}=e;this.isVisible&&("... method onColorSchemePreferenceChange (line 20) | onColorSchemePreferenceChange({matches:e}){this.prefersDarkStyle=e} method focusCloseButton (line 20) | async focusCloseButton(){this.lastFocusItem=document.activeElement,await... method render (line 20) | render(e){return e(wt["a"],{props:{span:{large:7,medium:9,small:12}}},th... method backgroundImageUrl (line 20) | backgroundImageUrl(){const e=this.references[this.backgroundImage]||{},{... method projectFilesUrl (line 20) | projectFilesUrl(){return this.projectFiles?Object(hn["b"])(this.referenc... method bgStyle (line 20) | bgStyle(){return{backgroundImage:`url('${this.backgroundImageUrl}')`}} method xcodeRequirementData (line 20) | xcodeRequirementData(){return this.references[this.xcodeRequirement]} method sectionTitle (line 20) | sectionTitle(){return"Introduction"} method data (line 20) | data(){return{callToActionModalVisible:!1}} method toggleCallToActionModal (line 20) | async toggleCallToActionModal(){this.callToActionModalVisible=!0,await t... method handleVideoEnd (line 20) | handleVideoEnd(){this.callToActionModalVisible=!1} method data (line 20) | data(){return{userChoices:this.choices.map(()=>({checked:!1})),selectedI... method correctChoices (line 20) | correctChoices(){return this.choices.reduce((e,t,n)=>t.isCorrect?e.add(n... method choiceClasses (line 20) | choiceClasses(){return this.userChoices.map((e,t)=>({choice:!0,active:th... method showNextQuestion (line 20) | showNextQuestion(){return Array.from(this.correctChoices).every(e=>this.... method getIconComponent (line 20) | getIconComponent(e){const t=this.userChoices[e];if(t&&t.checked)return t... method submit (line 20) | submit(){this.$set(this.userChoices,this.selectedIndex,{checked:!0}),thi... method advance (line 20) | advance(){this.$emit("advance")} method seeResults (line 20) | seeResults(){this.$emit("see-results")} method render (line 20) | render(e){return e(wt["a"],{props:{isCentered:{large:!0},span:{large:10}... method render (line 20) | render(e){return e(wt["a"],{props:{isCentered:{large:!0},span:{large:10,... method data (line 20) | data(){return{activeIndex:0,completed:!1,SuccessMessage:ys}} method activeAssessment (line 20) | activeAssessment(){return this.assessments[this.activeIndex]} method isLast (line 20) | isLast(){return this.activeIndex===this.assessments.length-1} method progress (line 20) | progress(){return{index:this.activeIndex+1,total:this.assessments.length}} method title (line 20) | title(){return"Check Your Understanding"} method scrollTo (line 20) | scrollTo(e,t=0){e.scrollIntoView(!0),window.scrollBy(0,-this.navigationB... method onSubmit (line 20) | onSubmit(){this.$nextTick(()=>{this.scrollTo(this.$refs.progress.$el,gs)})} method onAdvance (line 20) | onAdvance(){this.activeIndex+=1,this.$nextTick(()=>{this.scrollTo(this.$... method onSeeResults (line 20) | onSeeResults(){this.completed=!0,this.$nextTick(()=>{this.scrollTo(this.... method default (line 20) | default(){return{reset(){}}} method heroSection (line 20) | heroSection(){return this.sections.find(this.isHero)} method heroTitle (line 20) | heroTitle(){return(this.heroSection||{}).title} method pageTitle (line 20) | pageTitle(){return this.heroTitle?`${this.heroTitle} — ${this.metadata.c... method componentFor (line 20) | componentFor(e){const{kind:t}=e;return{[As.articleBody]:ht,[As.callToAct... method isHero (line 20) | isHero(e){return e.kind===As.hero} method propsFor (line 20) | propsFor(e){const{abstract:t,action:n,anchor:s,assessments:i,backgroundI... method provide (line 20) | provide(){return{references:this.references}} method created (line 20) | created(){this.store.reset()} method isClientMobile (line 20) | isClientMobile(){let e=!1;return e="maxTouchPoints"in navigator||"msMaxT... method render (line 20) | render(e){return e(wt["a"],{props:{span:{large:6,small:12}}},this.$slots... method focus (line 20) | focus(){this.$emit("focus",this.media)} method sectionLink (line 20) | sectionLink(){return{path:this.$route.path,hash:this.sectionAnchor,query... function ri (line 20) | function ri({width:e,height:t},n=1){const s=400,i=e<=s?1.75:3;return{wid... method data (line 20) | data(){return{tutorialState:this.store.state}} method currentBreakpoint (line 20) | currentBreakpoint(){return this.tutorialState.breakpoint} method hasRuntimePreview (line 20) | hasRuntimePreview(){return!!this.preview} method previewAssetSize (line 20) | previewAssetSize(){const e=this.hasRuntimePreview?this.references[this.p... method previewSize (line 20) | previewSize(){const e={width:102};return this.shouldDisplayHideLabel&&th... method previewStyles (line 20) | previewStyles(){const{width:e}=this.previewSize;return{width:e+"px"}} method codeProps (line 20) | codeProps(){return this.references[this.code]} method runtimePreviewClasses (line 20) | runtimePreviewClasses(){return{collapsed:!this.shouldDisplayHideLabel,di... method shouldDisplayHideLabel (line 20) | shouldDisplayHideLabel(){return this.hasRuntimePreview&&this.isRuntimePr... method runtimePreviewTitle (line 20) | runtimePreviewTitle(){return this.hasRuntimePreview?null:"No preview ava... method togglePreviewText (line 20) | togglePreviewText(){return this.hasRuntimePreview?"Preview":"No Preview"} method handleLeave (line 20) | handleLeave(e,t){setTimeout(t,200)} method togglePreview (line 20) | togglePreview(){this.hasRuntimePreview&&this.$emit("runtime-preview-togg... method data (line 20) | data(){return{codeThemeState:Ds["a"].state}} method backgroundStyle (line 20) | backgroundStyle(){const{codeColors:e}=this.codeThemeState;return e?{"--b... method highlightedLineNumbers (line 20) | highlightedLineNumbers(){return new Set(this.highlights.map(({line:e})=>... method firstHighlightRange (line 20) | firstHighlightRange(){if(0===this.highlightedLineNumbers.size)return{sta... method displayedRange (line 20) | displayedRange(){const e=this.firstHighlightRange,t=e.start-2<1?1:e.star... method previewedLines (line 20) | previewedLines(){return this.content.slice(this.displayedRange.start-1,t... method codeProps (line 20) | codeProps(){return this.references[this.code]} method modalBackgroundColor (line 20) | modalBackgroundColor(){const{codeColors:e}=this.store.state;return e?e.b... method data (line 20) | data(){return{previewIsVisible:!1,fullCodeIsVisible:!1}} method togglePreview (line 20) | togglePreview(){this.previewIsVisible=!this.previewIsVisible} method toggleFullCode (line 20) | toggleFullCode(){this.fullCodeIsVisible=!this.fullCodeIsVisible} method data (line 20) | data(){return{tutorialState:this.store.state}} method isBreakpointSmall (line 20) | isBreakpointSmall(){return this.tutorialState.breakpoint===zi.small} method data (line 20) | data(){const e=this.content.findIndex(this.isStepNode),{code:t,media:n,r... method assetContainerClasses (line 20) | assetContainerClasses(){return{"for-step-code":!!this.visibleAsset.code,... method numberOfSteps (line 20) | numberOfSteps(){return this.content.filter(this.isStepNode).length} method contentNodes (line 20) | contentNodes(){return this.content.reduce(({stepCounter:e,nodes:t},n,s)=... method isBreakpointSmall (line 20) | isBreakpointSmall(){return this.tutorialState.breakpoint===Qi.small} method mounted (line 20) | async mounted(){await Object(ui["b"])(8),this.findClosestStepNode()} method isStepNode (line 20) | isStepNode({type:e}){return"step"===e} method contentClass (line 20) | contentClass(e){return{["interstitial interstitial-"+(e+1)]:!this.isStep... method onReverseIntoLastStep (line 20) | onReverseIntoLastStep(){const{asset:e}=this.$refs;if(e){const t=e.$el.qu... method onFocus (line 20) | onFocus(e){const{code:t,media:n,runtimePreview:s}=this.content[e];this.a... method onRuntimePreviewToggle (line 20) | onRuntimePreviewToggle(e){this.$emit("runtime-preview-toggle",e)} method findClosestStepNode (line 20) | findClosestStepNode(){const e=.333*window.innerHeight;let t=null,n=0;thi... method getIntersectionTargets (line 20) | getIntersectionTargets(){const{stepNodes:e,$refs:t}=this;return e.map(({... method onIntersect (line 20) | onIntersect(e){const{target:t,isIntersecting:n}=e;if(!n)return;const s=p... method introProps (line 20) | introProps(){const[{content:e,media:t},...n]=this.contentSection;return{... method onRuntimePreviewToggle (line 20) | onRuntimePreviewToggle(e){this.$emit("runtime-preview-toggle",e)} method data (line 20) | data(){return{isRuntimePreviewVisible:!0}} method onRuntimePreviewToggle (line 20) | onRuntimePreviewToggle(e){this.isRuntimePreviewVisible=e} method heroSection (line 20) | heroSection(){return this.sections.find(({kind:e})=>"hero"===e)} method tutorialTitle (line 20) | tutorialTitle(){return(this.heroSection||{}).title} method pageTitle (line 20) | pageTitle(){return this.tutorialTitle?`${this.tutorialTitle} — ${this.me... method handleBreakpointChange (line 20) | handleBreakpointChange(e){this.store.updateBreakpoint(e)} method handleCodeColorsChange (line 20) | handleCodeColorsChange(e){Ds["a"].updateCodeColors(e)} method created (line 20) | created(){this.store.reset()} method mounted (line 20) | mounted(){this.$bridge.on("codeColors",this.handleCodeColorsChange),this... method provide (line 20) | provide(){return{references:this.references,isClientMobile:this.isClient... method beforeDestroy (line 20) | beforeDestroy(){this.$bridge.off("codeColors",this.handleCodeColorsChange)} method data (line 20) | data(){return{topicData:null}} method navigationBarHeight (line 20) | navigationBarHeight(){return this.isTargetIDE?0:52} method store (line 20) | store(){return u} method hierarchy (line 20) | hierarchy(){const{hierarchy:e={}}=this.topicData,{technologyNavigation:t... method beforeRouteEnter (line 20) | beforeRouteEnter(e,t,n){Object(r["b"])(e,t,n).then(e=>n(t=>{t.topicData=... method beforeRouteUpdate (line 20) | beforeRouteUpdate(e,t,n){Object(r["d"])(e,t)?Object(r["b"])(e,t,n).then(... method created (line 20) | created(){this.store.reset()} method mounted (line 20) | mounted(){this.$bridge.on("contentUpdate",e=>{this.topicData=e})} method componentFor (line 20) | componentFor(e){const{kind:t}=e;return{[yr.article]:Ps,[yr.tutorial]:fr}... method propsFor (line 20) | propsFor(e){const{hierarchy:t,kind:n,metadata:s,references:i,sections:r,... method provide (line 20) | provide(){return{navigationBarHeight:this.navigationBarHeight,store:this... method topicData (line 20) | topicData(){this.$nextTick(()=>{this.newContentMounted()})} method reset (line 20) | reset(){this.state.codeColors=null} method updateCodeColors (line 20) | updateCodeColors(e){const t=e=>e?`rgba(${e.red}, ${e.green}, ${e.blue}, ... method defaultVideoAttributes (line 20) | defaultVideoAttributes(){return this.videoVariantsGroupedByAppearance.li... method darkVideoVariantAttributes (line 20) | darkVideoVariantAttributes(){return this.videoVariantsGroupedByAppearanc... method videoVariantsGroupedByAppearance (line 20) | videoVariantsGroupedByAppearance(){return Object(l["d"])(this.variants)} method posterVariantsGroupedByAppearance (line 20) | posterVariantsGroupedByAppearance(){return Object(l["d"])(this.posterVar... method data (line 20) | data(){return{showsReplayButton:!1}} method replay (line 20) | async replay(){const e=this.$refs.asset.$el;e&&(await e.play(),this.show... method onVideoEnd (line 20) | onVideoEnd(){this.showsReplayButton=!0} method rawAsset (line 20) | rawAsset(){return this.references[this.identifier]||{}} method videoPoster (line 20) | videoPoster(){return this.isRawAssetVideo&&this.references[this.rawAsset... method asset (line 20) | asset(){return this.isRawAssetVideo&&this.prefersReducedMotion&&this.vid... method assetComponent (line 20) | assetComponent(){switch(this.asset.type){case $.image:return r["a"];case... method prefersReducedMotion (line 20) | prefersReducedMotion(){return window.matchMedia("(prefers-reduced-motion... method assetProps (line 20) | assetProps(){return{[$.image]:this.imageProps,[$.video]:this.videoProps}... method imageProps (line 20) | imageProps(){return{alt:this.asset.alt,variants:this.asset.variants}} method videoProps (line 20) | videoProps(){return{variants:this.asset.variants,showsControls:this.show... method assetListeners (line 20) | assetListeners(){return{[$.image]:null,[$.video]:{ended:()=>this.$emit("... function l (line 20) | function l(e){const t=e.match(/rgba\((\d+),\s*(\d+),\s*(\d+),\s*(\d+\.?\... function c (line 20) | function c(e){const{r:t,g:n,b:s}=l(e);return.2126*t+.7152*n+.0722*s} function u (line 20) | function u(e,t){const n=Math.round(a*t),s=l(e),{a:i}=s,[r,c,u]=[s.r,s.g,... function d (line 20) | function d(e,t){return u(e,t)} function p (line 20) | function p(e,t){return u(e,-1*t)} method data (line 20) | data(){return{codeThemeState:r["a"].state}} method codeStyle (line 20) | codeStyle(){const{codeColors:e}=this.codeThemeState;return e?{"--text":e... method internalParamNameColor (line 20) | internalParamNameColor(){const{background:e,text:t}=this.codeThemeState.... FILE: docs/js/tutorials-overview.c8178b83.js method defaultVideoAttributes (line 10) | defaultVideoAttributes(){return this.videoVariantsGroupedByAppearance.li... method darkVideoVariantAttributes (line 10) | darkVideoVariantAttributes(){return this.videoVariantsGroupedByAppearanc... method videoVariantsGroupedByAppearance (line 10) | videoVariantsGroupedByAppearance(){return Object(c["d"])(this.variants)} method posterVariantsGroupedByAppearance (line 10) | posterVariantsGroupedByAppearance(){return Object(c["d"])(this.posterVar... method data (line 10) | data(){return{showsReplayButton:!1}} method replay (line 10) | async replay(){const t=this.$refs.asset.$el;t&&(await t.play(),this.show... method onVideoEnd (line 10) | onVideoEnd(){this.showsReplayButton=!0} method rawAsset (line 10) | rawAsset(){return this.references[this.identifier]||{}} method videoPoster (line 10) | videoPoster(){return this.isRawAssetVideo&&this.references[this.rawAsset... method asset (line 10) | asset(){return this.isRawAssetVideo&&this.prefersReducedMotion&&this.vid... method assetComponent (line 10) | assetComponent(){switch(this.asset.type){case x.image:return i["a"];case... method prefersReducedMotion (line 10) | prefersReducedMotion(){return window.matchMedia("(prefers-reduced-motion... method assetProps (line 10) | assetProps(){return{[x.image]:this.imageProps,[x.video]:this.videoProps}... method imageProps (line 10) | imageProps(){return{alt:this.asset.alt,variants:this.asset.variants}} method videoProps (line 10) | videoProps(){return{variants:this.asset.variants,showsControls:this.show... method assetListeners (line 10) | assetListeners(){return{[x.image]:null,[x.video]:{ended:()=>this.$emit("... method reset (line 10) | reset(){this.state.activeTutorialLink=null,this.state.activeVolume=null} method setActiveSidebarLink (line 10) | setActiveSidebarLink(t){this.state.activeTutorialLink=t} method setActiveVolume (line 10) | setActiveVolume(t){this.state.activeVolume=t} method data (line 10) | data(){return{state:this.store.state}} method handleFocus (line 10) | async handleFocus(){const{hash:t}=this.fragment,e=document.getElementByI... method render (line 10) | render(t,e){const n={props:{name:"expand"},on:{afterEnter(t){t.style.hei... method onClick (line 10) | onClick(){this.collapsed?this.$emit("select-menu",this.title):this.$emit... method setActiveVolume (line 10) | setActiveVolume(){} method data (line 10) | data(){return{state:this.store.state}} method sectionClasses (line 10) | sectionClasses(t){return{volume:this.isVolume(t),"volume--named":this.is... method activateFirstNamedVolume (line 10) | activateFirstNamedVolume(){const{isNamedVolume:t,sections:e}=this,n=e.fi... method isNamedVolume (line 10) | isNamedVolume(t){return this.isVolume(t)&&t.name} method onDeselectMenu (line 10) | onDeselectMenu(){this.store.setActiveVolume(null)} method onSelectMenu (line 10) | onSelectMenu(t){this.store.setActiveVolume(t)} method propsForVolume (line 10) | propsForVolume({name:t}){const{activeVolume:e}=this;return t?{collapsed:... method created (line 10) | created(){this.activateFirstNamedVolume()} method intersectionRoot (line 10) | intersectionRoot(){return null} method intersectionRootMargin (line 10) | intersectionRootMargin(){return xt.center} method onIntersect (line 10) | onIntersect(t){if(!t.isIntersecting)return;const e=this.onIntersectViewp... method setActiveSidebarLink (line 10) | setActiveSidebarLink(){} method setActiveVolume (line 10) | setActiveVolume(){} method onIntersectViewport (line 10) | onIntersectViewport(){this.store.setActiveSidebarLink("Resources"),this.... method ariaLabelFor (line 10) | ariaLabelFor({title:t,estimatedTime:e,kind:n}){const s=[t,Ie[n]];return ... method setActiveSidebarLink (line 10) | setActiveSidebarLink(){} method setActiveVolume (line 10) | setActiveVolume(){} method onIntersectViewport (line 10) | onIntersectViewport(){this.store.setActiveSidebarLink(this.name),this.vo... method setActiveVolume (line 10) | setActiveVolume(){} method lookupTopics (line 10) | lookupTopics(t){return t.reduce((t,e)=>t.concat(this.references[e]||[]),... method onIntersectViewport (line 10) | onIntersectViewport(){this.name&&this.store.setActiveVolume(this.name)} method provide (line 10) | provide(){return{references:this.references,store:this.store}} method created (line 10) | created(){this.store.reset()} method data (line 10) | data(){return{topicData:null}} method beforeRouteEnter (line 10) | beforeRouteEnter(t,e,n){Object(r["b"])(t,e,n).then(t=>n(e=>{e.topicData=... method beforeRouteUpdate (line 10) | beforeRouteUpdate(t,e,n){Object(r["d"])(t,e)?Object(r["b"])(t,e,n).then(... method topicData (line 10) | topicData(){this.$nextTick(()=>{this.newContentMounted()})}