1/*! For license information please see reactPlayerSpotify-47d5ff2a0ff03dbb88be.js.LICENSE.txt */ 2try{!function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="4a1abb35-3e91-49ef-b8fd-808f78935f65",e._sentryDebugIdIdentifier="sentry-dbid-4a1abb35-3e91-49ef-b8fd-808f78935f65")}()}catch(e){}!function(){try{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{}).SENTRY_RELEASE={id:"595297e2374e263b470d2bd31d735f6358f16218"}}catch(e){}}(),(self.webpackChunkauckland_city_mission_gatsby=self.webpackChunkauckland_city_mission_gatsby||[]).push([[771],{3653:function(e,t,i){i.r(t),i.d(t,{default:function(){return y}});var n=i(6540);const s="https://open.spotify.com",o=/open\.spotify\.com\/(\w+)\/(\w+)/i;function a(e,t={}){return`\n <style>\n :host {\n display: inline-block;\n min-width: 160px;\n min-height: 80px;\n position: relative;\n }\n iframe {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n overflow: hidden;\n }\n :host(:not([controls])) {\n display: none !important;\n }\n </style>\n <iframe${function(e){let t="";for(const i in e){const n=e[i];t+=""===n?` ${i}`:` ${i}="${n}"`}return t}({src:r(e,t),scrolling:"no",frameborder:0,width:"100%",height:"100%",allow:"accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture"})}></iframe>\n `}function r(e,t){var i,n,a;if(!e.src)return;const r=e.src.match(o),d=r&&r[1],l=r&&r[2],u={t:null==(i=t.config)?void 0:i.startAt,theme:"dark"===(null==(n=t.config)?void 0:n.theme)?"0":null},c=(null==(a=t.config)?void 0:a.preferVideo)?"/video":"";return`${s}/embed/${d}/${l}${c}?${function(e){return String(new URLSearchParams(function(e){let t={};for(let i in e){let n=e[i];!0===n||""===n?t[i]=1:!1===n?t[i]=0:null!=n&&(t[i]=n)}return t}(e)))}(u)}`}class d extends(globalThis.HTMLElement??class{}){static getTemplateHTML=a;static shadowRootOptions={mode:"open"};static observedAttributes=["controls","loop","src"];loadComplete=new c;#e;#t;#i;#n=!1;#s=!1;#o=!0;#a=0;#r=NaN;#d=!1;#l=null;constructor(){super(),this.#u("config")}async load(){var e,t,i;if(this.#e)return;this.#t&&(this.loadComplete=new c),this.#t=!0,await(this.#e=Promise.resolve()),this.#e=null,this.#n=!1,this.#s=!1,this.#a=0,this.#r=NaN,this.#d=!1,this.dispatchEvent(new Event("emptied"));let n=this.api;if(this.api=null,!this.src)return;this.dispatchEvent(new Event("loadstart"));const s={t:null==(e=this.config)?void 0:e.startAt,theme:"dark"===(null==(t=this.config)?void 0:t.theme)?"0":null,preferVideo:null==(i=this.config)?void 0:i.preferVideo};if(this.#i)this.api=n,this.api.iframeElement.src=r(l(this.attributes),this);else{this.#i=!0,this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.innerHTML=a(l(this.attributes),this));let e=this.shadowRoot.querySelector("iframe");const t=await async function(e,t,i){if(u[e])return u[e];if(t&&self[t])return Promise.resolve(self[t]);return u[e]=new Promise((function(t,n){const s=document.createElement("script");s.src=e;const o=e=>t(e);i&&(self[i]=o),s.onload=()=>!i&&o(),s.onerror=n,document.head.append(s)}))}("https://open.spotify.com/embed-podcast/iframe-api/v1","SpotifyIframeApi","onSpotifyIframeApiReady");this.api=await new Promise((i=>t.createController(e,s,i))),this.api.iframeElement=e,this.api.addListener("ready",(()=>{this.dispatchEvent(new Event("loadedmetadata")),this.dispatchEvent(new Event("durationchange")),this.dispatchEvent(new Event("volumechange"))})),this.api.addListener("playback_update",(e=>this.#s&&this.#o&&(e.data.isBuffering||!e.data.isPaused)?(this.#s=!1,void(this.currentTime=1)):(e.data.duration/1e3!==this.#r&&(this.#s=!1,this.#r=e.data.duration/1e3,this.dispatchEvent(new Event("durationchange"))),e.data.position/1e3!==this.#a&&(this.#d=!1,this.#s=!1,this.#a=e.data.position/1e3,this.dispatchEvent(new Event("timeupdate"))),this.#n||this.#o||!e.data.isPaused?!this.#o||!e.data.isBuffering&&e.data.isPaused?this.#n&&!e.data.isPaused?(this.#n=!1,void this.dispatchEvent(new Event("playing"))):!this.paused&&!this.seeking&&!this.#s&&Math.ceil(this.currentTime)>=this.duration?(this.#s=!0,this.loop?void(this.currentTime=1):void(this.continuous||(this.pause(),this.dispatchEvent(new Event("ended"))))):void 0:(this.#o=!1,this.dispatchEvent(new Event("play")),this.#n=e.data.isBuffering,void(this.#n?this.dispatchEvent(new Event("waiting")):this.dispatchEvent(new Event("playing")))):(this.#o=!0,void this.dispatchEvent(new Event("pause"))))))}this.loadComplete.resolve(),await this.loadComplete}
2async attributeChangedCallback(e,t,i){t!==i&&("src"!==e||this.load())}async play(){var e;return this.#o=!1,this.#n=!0,this.dispatchEvent(new Event("play")),await this.loadComplete,null==(e=this.api)?void 0:e.resume()}async pause(){var e;return await this.loadComplete,null==(e=this.api)?void 0:e.pause()}get config(){return this.#l}set config(e){this.#l=e}get paused(){return this.#o??!0}get muted(){return!1}set muted(e){}get volume(){return 1}set volume(e){}get ended(){return Math.ceil(this.currentTime)>=this.duration}get seeking(){return this.#d}get loop(){return this.hasAttribute("loop")}set loop(e){this.loop!=e&&this.toggleAttribute("loop",Boolean(e))}get currentTime(){return this.#a}set currentTime(e){if(this.currentTime==e)return;this.#d=!0;let t=this.#a;this.#a=e,this.dispatchEvent(new Event("timeupdate")),this.#a=t,this.loadComplete.then((()=>{var t;null==(t=this.api)||t.seek(e)}))}get duration(){return this.#r}get src(){return this.getAttribute("src")}set src(e){this.setAttribute("src",`${e}`)}#u(e){if(Object.prototype.hasOwnProperty.call(this,e)){const t=this[e];delete this[e],this[e]=t}}}function l(e){let t={};for(let i of e)t[i.name]=i.value;return t}const u={};class c extends Promise{constructor(e=()=>{}){let t,i;super(((n,s)=>{e(n,s),t=n,i=s})),this.resolve=t,this.reject=i}}globalThis.customElements&&!globalThis.customElements.get("spotify-audio")&&globalThis.customElements.define("spotify-audio",d);var h=d,p=new Set(["style","children","ref","key","suppressContentEditableWarning","suppressHydrationWarning","dangerouslySetInnerHTML"]),f={className:"class",htmlFor:"for"};function m(e){return e.toLowerCase()}function g(e){return"boolean"==typeof e?e?"":void 0:"function"==typeof e||"object"==typeof e&&null!==e?void 0:e}function v(e,t,i){var n;e[t]=i,null==i&&t in((null==(n=globalThis.HTMLElement)?void 0:n.prototype)??{})&&e.removeAttribute(t)}var y=function({react:e,tagName:t,elementClass:i,events:n,displayName:s,defaultProps:o,toAttributeName:a=m,toAttributeValue:r=g}){const d=Number.parseInt(e.version)>=19,l=e.forwardRef(((s,l)=>{var u,c;const h=e.useRef(null),m=e.useRef(new Map),y={},w={},b={},E={};for(const[e,t]of Object.entries(s)){if(p.has(e)){b[e]=t;continue}const n=a(f[e]??e);if(i.prototype&&e in i.prototype&&!(e in((null==(u=globalThis.HTMLElement)?void 0:u.prototype)??{}))&&!(null==(c=i.observedAttributes)?void 0:c.some((e=>e===n)))){E[e]=t;continue}if(e.startsWith("on")){y[e]=t;continue}const s=r(t);if(n&&null!=s&&(w[n]=String(s),d||(b[n]=s)),n&&d){const e=g(t);b[n]=s!==e?s:t}}if("undefined"!=typeof window){for(const t in y){const i=y[t],s=t.endsWith("Capture"),o=((null==n?void 0:n[t])??t.slice(2).toLowerCase()).slice(0,s?-7:void 0);e.useLayoutEffect((()=>{const e=null==h?void 0:h.current;if(e&&"function"==typeof i)return e.addEventListener(o,i,s),()=>{e.removeEventListener(o,i,s)}}),[null==h?void 0:h.current,i])}e.useLayoutEffect((()=>{if(null===h.current)return;const e=new Map;for(const t in E)v(h.current,t,E[t]),m.current.delete(t),e.set(t,E[t]);for(const[t,i]of m.current)v(h.current,t,void 0);m.current=e}))}if("undefined"==typeof window&&(null==i?void 0:i.getTemplateHTML)&&(null==i?void 0:i.shadowRootOptions)){const{mode:t,delegatesFocus:n}=i.shadowRootOptions,o=e.createElement("template",{shadowrootmode:t,shadowrootdelegatesfocus:n,dangerouslySetInnerHTML:{__html:i.getTemplateHTML(w,s)}});b.children=[o,b.children]}return e.createElement(t,{...o,...b,ref:e.useCallback((e=>{h.current=e,"function"==typeof l?l(e):null!==l&&(l.current=e)}),[l])})}));return l.displayName=s??i.name,l}({react:n,tagName:"spotify-audio",elementClass:h,toAttributeName(e){return"muted"===e?"":"defaultMuted"===e?"muted":m(e)}})}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.