{"version":3,"file":"js/app.9f2ce6ea.js","mappings":"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","sources":["webpack://@minids/gamma-ray-pulsar/./src/MainContent.vue?4c09","webpack://@minids/gamma-ray-pulsar/../common/dist/src/keyboard.js","webpack://@minids/gamma-ray-pulsar/../common/dist/src/components/MiniDSBase.js","webpack://@minids/gamma-ray-pulsar/../common/dist/src/background.js","webpack://@minids/gamma-ray-pulsar/./src/wwt-hacks.ts","webpack://@minids/gamma-ray-pulsar/./src/data.ts","webpack://@minids/gamma-ray-pulsar/./src/MainContent.vue?81da","webpack://@minids/gamma-ray-pulsar/./src/MainContent.vue","webpack://@minids/gamma-ray-pulsar/./src/TransitionExpand.vue?38e7","webpack://@minids/gamma-ray-pulsar/./src/TransitionExpand.vue?7fe5","webpack://@minids/gamma-ray-pulsar/./src/TransitionExpand.vue","webpack://@minids/gamma-ray-pulsar/./src/TransitionExpandTwo.vue?6583","webpack://@minids/gamma-ray-pulsar/./src/TransitionExpandTwo.vue?d18a","webpack://@minids/gamma-ray-pulsar/./src/TransitionExpandTwo.vue","webpack://@minids/gamma-ray-pulsar/./src/polyfills.ts","webpack://@minids/gamma-ray-pulsar/./plugins/vuetify.ts","webpack://@minids/gamma-ray-pulsar/./src/main.ts","webpack://@minids/gamma-ray-pulsar/webpack/bootstrap","webpack://@minids/gamma-ray-pulsar/webpack/runtime/chunk loaded","webpack://@minids/gamma-ray-pulsar/webpack/runtime/compat get default export","webpack://@minids/gamma-ray-pulsar/webpack/runtime/create fake namespace object","webpack://@minids/gamma-ray-pulsar/webpack/runtime/define property getters","webpack://@minids/gamma-ray-pulsar/webpack/runtime/ensure chunk","webpack://@minids/gamma-ray-pulsar/webpack/runtime/get javascript chunk filename","webpack://@minids/gamma-ray-pulsar/webpack/runtime/get mini-css chunk filename","webpack://@minids/gamma-ray-pulsar/webpack/runtime/global","webpack://@minids/gamma-ray-pulsar/webpack/runtime/hasOwnProperty shorthand","webpack://@minids/gamma-ray-pulsar/webpack/runtime/load script","webpack://@minids/gamma-ray-pulsar/webpack/runtime/make namespace object","webpack://@minids/gamma-ray-pulsar/webpack/runtime/publicPath","webpack://@minids/gamma-ray-pulsar/webpack/runtime/jsonp chunk loading","webpack://@minids/gamma-ray-pulsar/webpack/startup"],"sourcesContent":["import { resolveComponent as _resolveComponent, createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, withDirectives as _withDirectives, Transition as _Transition, withCtx as _withCtx, normalizeStyle as _normalizeStyle, withKeys as _withKeys, vModelText as _vModelText, Fragment as _Fragment, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\nimport _imports_0 from './assets/logo_wwt.png'\n\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-b99f14fe\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"main-content\" }\nconst _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"link\", {\n rel: \"stylesheet\",\n href: \"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css\"\n}, null, -1))\nconst _hoisted_3 = { class: \"hamb-icon-container\" }\nconst _hoisted_4 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fas fa-sliders-h\",\n style: {\"font-size\":\"24px\"}\n}, null, -1))\nconst _hoisted_5 = [\n _hoisted_4\n]\nconst _hoisted_6 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fas fa-regular fa-info-circle\" }, null, -1))\nconst _hoisted_7 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"fas fa-adjust\" }, null, -1))\nconst _hoisted_8 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://arxiv.org/abs/2307.11132\",\n target: \"_blank\",\n style: {\"text-decoration\":\"none\",\"color\":\"inherit\"},\n onmouseover: \"this.style.textDecoration='none';\",\n onmouseout: \"this.style.textDecoration='none';\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fas fa-regular fa-newspaper\" }),\n /*#__PURE__*/_createTextVNode(\" Link to paper \")\n], -1))\nconst _hoisted_9 = [\n _hoisted_8\n]\nconst _hoisted_10 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.rocketcenter.com/INTUITIVEPlanetarium/InteractiveAstronomy\",\n target: \"_blank\",\n style: {\"text-decoration\":\"none\",\"color\":\"inherit\"},\n onmouseover: \"this.style.textDecoration='none';\",\n onmouseout: \"this.style.textDecoration='none';\"\n}, [\n /*#__PURE__*/_createElementVNode(\"i\", { class: \"fas fa-solid fa-rocket\" }),\n /*#__PURE__*/_createElementVNode(\"i\", null, \" INTUITIVE\"),\n /*#__PURE__*/_createElementVNode(\"sup\", null, \"®\"),\n /*#__PURE__*/_createTextVNode(\" Planetarium \")\n], -1))\nconst _hoisted_11 = [\n _hoisted_10\n]\nconst _hoisted_12 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"a\", {\n closeIntro: \"\",\n href: \"https://worldwidetelescope.org/\",\n style: {\"text-decoration\":\"none\",\"color\":\"inherit\"},\n onmouseover: \"this.style.textDecoration='none';\",\n onmouseout: \"this.style.textDecoration='none';\",\n target: \"blank\"\n}, [\n /*#__PURE__*/_createElementVNode(\"img\", {\n alt: \"WWT Logo\",\n src: _imports_0,\n width: \"18\",\n height: \"18\",\n style: {\"vertical-align\":\"middle\"}\n }),\n /*#__PURE__*/_createTextVNode(\" WorldWide Telescope \")\n], -1))\nconst _hoisted_13 = [\n _hoisted_12\n]\nconst _hoisted_14 = {\n key: 0,\n class: \"intro-container\"\n}\nconst _hoisted_15 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"fas fa-times\",\n style: {\"font-size\":\"20px\"}\n}, null, -1))\nconst _hoisted_16 = [\n _hoisted_15\n]\nconst _hoisted_17 = { style: {\"font-size\":\"18px\",\"font-family\":\"'Roboto'\",\"margin-bottom\":\"1em\"} }\nconst _hoisted_18 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-size\":\"14px\",\"margin-bottom\":\"1em\"} }, [\n /*#__PURE__*/_createTextVNode(\" Before NASA's \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.youtube.com/watch?v=lin75TTmQHA\",\n target: \"_blank\",\n class: \"links\"\n }, \"Fermi Gamma-ray Space Telescope\"),\n /*#__PURE__*/_createTextVNode(\" launched in 2008, only a handful of \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.youtube.com/watch?v=gjLk_72V9Bw\",\n target: \"_blank\",\n class: \"links\"\n }, \"pulsars\"),\n /*#__PURE__*/_createTextVNode(\", including the \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://chandra.harvard.edu/deadstar/crab.html\",\n target: \"_blank\",\n class: \"links\"\n }, \"Crab\"),\n /*#__PURE__*/_createTextVNode(\", \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.nasa.gov/mission_pages/chandra/multimedia/vela2012.html\",\n target: \"_blank\",\n class: \"links\"\n }, \"Vela\"),\n /*#__PURE__*/_createTextVNode(\", and \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.nasa.gov/feature/goddard/2019/nasa-s-fermi-mission-links-nearby-pulsar-s-gamma-ray-halo-to-antimatter-puzzle\",\n target: \"_blank\",\n class: \"links\"\n }, \"Geminga\"),\n /*#__PURE__*/_createTextVNode(\", were known to emit \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.youtube.com/watch?v=PPlrtgilgK8\",\n target: \"_blank\",\n class: \"links\"\n }, \"gamma rays, the highest-energy form of light\"),\n /*#__PURE__*/_createTextVNode(\". Shown here are 294 gamma-ray pulsars detected by Fermi. Young pulsars, formed when massive stars explode, are the slowest rotators, typically spinning about 10 times a second. Paradoxically, their older siblings, called millisecond pulsars (MSPs), spin much faster, up to hundreds of times a second, thanks to the effects of a stream of matter pulled from a companion star. In spider systems, \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.nasa.gov/content/goddard/with-a-deadly-embrace-spidery-pulsars-consume-their-mates\",\n target: \"_blank\",\n class: \"links\"\n }, \"the companion is all but consumed\"),\n /*#__PURE__*/_createTextVNode(\". The most energetic spiders may fully evaporate their companions, leaving behind only an isolated MSP. Studying pulsars provides insights into the interplay of gravity, radiation, and magnetic fields with matter in the most extreme state we can observe directly. \")\n], -1))\nconst _hoisted_19 = { style: {\"font-size\":\"14px\",\"margin-bottom\":\"1em\"} }\nconst _hoisted_20 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-size\":\"14px\",\"margin-bottom\":\"1em\"} }, [\n /*#__PURE__*/_createTextVNode(\"Adapted from \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n class: \"links\",\n target: \"_blank\",\n style: {\"margin-right\":\"0.5em\"},\n href: \"https://arxiv.org/abs/2307.11132\"\n }, \" “The Third Fermi Large Area Telescope Catalog of Gamma-ray Pulsars,” D. A. Smith et al., 2023.\")\n], -1))\nconst _hoisted_21 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-size\":\"14px\",\"margin-bottom\":\"1em\"} }, [\n /*#__PURE__*/_createTextVNode(\" Interactive created by \"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://twitter.com/ADavidWeigel\",\n target: \"_blank\",\n class: \"links\",\n style: {\"margin-right\":\"0.5em\"}\n }, \"A. David Weigel\"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.linkedin.com/in/erika-s-a37431153/\",\n target: \"_blank\",\n class: \"links\",\n style: {\"margin-right\":\"0.5em\"}\n }, \"Érika Silva\"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://newton.cx/~peter/\",\n target: \"_blank\",\n class: \"links\",\n style: {\"margin-right\":\"0.5em\"}\n }, \"Peter K. G. Williams\"),\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://www.jcarifio.com/projects\",\n target: \"_blank\",\n class: \"links\",\n style: {\"margin-right\":\"0.5em\"}\n }, \"Jon Carifio\")\n], -1))\nconst _hoisted_22 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"p\", { style: {\"font-size\":\"14px\"} }, [\n /*#__PURE__*/_createElementVNode(\"a\", {\n href: \"https://worldwidetelescope.org/home/\",\n target: \"_blank\",\n class: \"links\"\n }, [\n /*#__PURE__*/_createTextVNode(\" Powered by WorldWide Telescope\"),\n /*#__PURE__*/_createElementVNode(\"a\", null, [\n /*#__PURE__*/_createElementVNode(\"img\", {\n alt: \"WWT Logo\",\n src: _imports_0,\n width: \"20\",\n height: \"20\",\n style: {\"vertical-align\":\"middle\",\"margin-left\":\"0.5em\"}\n })\n ])\n ])\n], -1))\nconst _hoisted_23 = {\n class: \"modal\",\n id: \"modal-loading\"\n}\nconst _hoisted_24 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"container\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", { class: \"spinner\" }),\n /*#__PURE__*/_createElementVNode(\"p\", null, \"Loading …\")\n], -1))\nconst _hoisted_25 = [\n _hoisted_24\n]\nconst _hoisted_26 = { class: \"checkboxes-container\" }\nconst _hoisted_27 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"data-label\" }, [\n /*#__PURE__*/_createElementVNode(\"p\", { style: {\"color\":\"#E3E3E3\"} }, \" Young Pulsars \")\n], -1))\nconst _hoisted_28 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"data-label\" }, [\n /*#__PURE__*/_createElementVNode(\"p\", { style: {\"color\":\"#E3E3E3\"} }, \" Millisecond Pulsars \")\n], -1))\nconst _hoisted_29 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"data-label\" }, [\n /*#__PURE__*/_createElementVNode(\"p\", {\n id: \"spyder-sys\",\n style: {\"color\":\"#E3E3E3\"}\n }, \" Spider Systems \")\n], -1))\nconst _hoisted_30 = {\n key: 1,\n class: \"bg-slider-container\"\n}\nconst _hoisted_31 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\nconst _hoisted_32 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"br\", null, null, -1))\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_WorldWideTelescope = _resolveComponent(\"WorldWideTelescope\")!\n const _component_v_checkbox = _resolveComponent(\"v-checkbox\")!\n const _component_v_app = _resolveComponent(\"v-app\")!\n\n return (_openBlock(), _createBlock(_component_v_app, {\n id: \"app\",\n style: _normalizeStyle(_ctx.cssVars)\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createVNode(_component_WorldWideTelescope, {\n \"wwt-namespace\": _ctx.wwtNamespace,\n onPointerdown: _ctx.wwtOnPointerDown,\n onPointermove: _ctx.wwtOnPointerMove,\n onPointerup: _ctx.wwtOnPointerUp\n }, null, 8, [\"wwt-namespace\", \"onPointerdown\", \"onPointermove\", \"onPointerup\"]),\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"button\", {\n class: \"menu-toggle\",\n onClick: _cache[0] || (_cache[0] = \n//@ts-ignore\n(...args) => (_ctx.toggleMenu && _ctx.toggleMenu(...args)))\n }, _hoisted_5),\n _createElementVNode(\"div\", {\n class: _normalizeClass({ fullscreen: _ctx.fullscreen })\n }, [\n _createElementVNode(\"button\", {\n class: \"fullscreen-button\",\n onClick: _cache[1] || (_cache[1] = \n//@ts-ignore\n(...args) => (_ctx.toggleFullscreen && _ctx.toggleFullscreen(...args)))\n }, [\n _createElementVNode(\"i\", {\n class: _normalizeClass(_ctx.fullscreen ? 'fas fa-compress fa-lg' : 'fas fa-expand fa-lg')\n }, null, 2)\n ])\n ], 2),\n _createElementVNode(\"ul\", {\n class: _normalizeClass([\"hamb-menu-container\", {'show': _ctx.isMenuOpen }])\n }, [\n _createElementVNode(\"li\", {\n class: \"hamb-menu-items\",\n style: {\"cursor\":\"pointer\"},\n onClick: _cache[2] || (_cache[2] = \n//@ts-ignore\n(...args) => (_ctx.openIntro && _ctx.openIntro(...args)))\n }, [\n _hoisted_6,\n _createTextVNode(\" Overview \")\n ]),\n _createElementVNode(\"li\", {\n class: \"hamb-menu-items\",\n style: {\"cursor\":\"pointer\"},\n onClick: _cache[3] || (_cache[3] = \n//@ts-ignore\n(...args) => (_ctx.toggleBgSlider && _ctx.toggleBgSlider(...args)))\n }, [\n _hoisted_7,\n _createTextVNode(\" Crossfade \")\n ]),\n _createElementVNode(\"li\", {\n class: \"hamb-menu-items\",\n onClick: _cache[4] || (_cache[4] = \n//@ts-ignore\n(...args) => (_ctx.toggleLink && _ctx.toggleLink(...args)))\n }, _hoisted_9),\n _createElementVNode(\"li\", {\n class: \"hamb-menu-items\",\n onClick: _cache[5] || (_cache[5] = \n//@ts-ignore\n(...args) => (_ctx.toggleLink && _ctx.toggleLink(...args)))\n }, _hoisted_11),\n _createElementVNode(\"li\", {\n class: \"hamb-menu-items\",\n onClick: _cache[6] || (_cache[6] = \n//@ts-ignore\n(...args) => (_ctx.toggleLink && _ctx.toggleLink(...args)))\n }, _hoisted_13)\n ], 2)\n ]),\n (_ctx.showIntro)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_14, [\n _createElementVNode(\"div\", {\n class: \"close-intro\",\n onClick: _cache[7] || (_cache[7] = \n//@ts-ignore\n(...args) => (_ctx.closeIntro && _ctx.closeIntro(...args)))\n }, _hoisted_16),\n _createElementVNode(\"h1\", _hoisted_17, _toDisplayString(_ctx.introTitle), 1),\n _hoisted_18,\n _createElementVNode(\"p\", _hoisted_19, _toDisplayString(_ctx.introInstructions), 1),\n _hoisted_20,\n _hoisted_21,\n _hoisted_22\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(_Transition, { name: \"fade\" }, {\n default: _withCtx(() => [\n _withDirectives(_createElementVNode(\"div\", _hoisted_23, _hoisted_25, 512), [\n [_vShow, _ctx.isLoading]\n ])\n ]),\n _: 1\n }),\n _withDirectives(_createElementVNode(\"div\", {\n id: \"circle-popover\",\n style: _normalizeStyle(_ctx.popoverCssVars)\n }, _toDisplayString(_ctx.lastClosePt?.name) + \", \" + _toDisplayString(_ctx.lastClosePt?.frequency.slice(0,6)) + \" pulses/sec \", 5), [\n [_vShow, _ctx.lastClosePt !== null]\n ]),\n _withDirectives(_createElementVNode(\"button\", {\n class: \"catalog-button\",\n onClick: _cache[8] || (_cache[8] = \n//@ts-ignore\n(...args) => (_ctx.openCatalog && _ctx.openCatalog(...args)))\n }, \" Click to Select \", 512), [\n [_vShow, _ctx.showCatalogButton]\n ]),\n _withDirectives(_createElementVNode(\"div\", _hoisted_26, [\n _createElementVNode(\"div\", null, [\n _createVNode(_component_v_checkbox, {\n color: _ctx.colorRed,\n modelValue: _ctx.showConstellations,\n \"onUpdate:modelValue\": _cache[9] || (_cache[9] = ($event: any) => ((_ctx.showConstellations) = $event)),\n onKeyup: _cache[10] || (_cache[10] = _withKeys(($event: any) => (_ctx.showConstellations = !_ctx.showConstellations), [\"enter\"])),\n label: \"Constellations\",\n class: \"constellations\",\n \"hide-details\": \"\"\n }, null, 8, [\"color\", \"modelValue\"]),\n _hoisted_27,\n _createVNode(_component_v_checkbox, {\n color: _ctx.color0,\n modelValue: _ctx.yrqp,\n \"onUpdate:modelValue\": _cache[11] || (_cache[11] = ($event: any) => ((_ctx.yrqp) = $event)),\n onKeyup: _cache[12] || (_cache[12] = _withKeys(($event: any) => (_ctx.yrqp = !_ctx.yrqp), [\"enter\"])),\n label: \"Radio Quiet\",\n class: \"radio-quiet\",\n \"hide-details\": \"\"\n }, null, 8, [\"color\", \"modelValue\"]),\n _createVNode(_component_v_checkbox, {\n color: _ctx.color1,\n modelValue: _ctx.yrlp,\n \"onUpdate:modelValue\": _cache[13] || (_cache[13] = ($event: any) => ((_ctx.yrlp) = $event)),\n onKeyup: _cache[14] || (_cache[14] = _withKeys(($event: any) => (_ctx.yrlp = !_ctx.yrlp), [\"enter\"])),\n label: \"Radio Loud\",\n class: \"radio-loud\",\n \"hide-details\": \"\"\n }, null, 8, [\"color\", \"modelValue\"]),\n _hoisted_28,\n _createVNode(_component_v_checkbox, {\n color: _ctx.color2,\n modelValue: _ctx.imp,\n \"onUpdate:modelValue\": _cache[15] || (_cache[15] = ($event: any) => ((_ctx.imp) = $event)),\n onKeyup: _cache[16] || (_cache[16] = _withKeys(($event: any) => (_ctx.imp = !_ctx.imp), [\"enter\"])),\n label: \"Isolated\",\n class: \"isolated\",\n \"hide-details\": \"\"\n }, null, 8, [\"color\", \"modelValue\"]),\n _createVNode(_component_v_checkbox, {\n color: _ctx.color3,\n modelValue: _ctx.bmp,\n \"onUpdate:modelValue\": _cache[17] || (_cache[17] = ($event: any) => ((_ctx.bmp) = $event)),\n onKeyup: _cache[18] || (_cache[18] = _withKeys(($event: any) => (_ctx.bmp = !_ctx.bmp), [\"enter\"])),\n label: \"Binary\",\n class: \"binary\",\n \"hide-details\": \"\"\n }, null, 8, [\"color\", \"modelValue\"]),\n _hoisted_29,\n _createVNode(_component_v_checkbox, {\n color: _ctx.color5,\n modelValue: _ctx.rs,\n \"onUpdate:modelValue\": _cache[19] || (_cache[19] = ($event: any) => ((_ctx.rs) = $event)),\n onKeyup: _cache[20] || (_cache[20] = _withKeys(($event: any) => (_ctx.rs = !_ctx.rs), [\"enter\"])),\n label: \"Redback\",\n class: \"redback\",\n \"hide-details\": \"\"\n }, null, 8, [\"color\", \"modelValue\"]),\n _createVNode(_component_v_checkbox, {\n color: _ctx.color4,\n modelValue: _ctx.bws,\n \"onUpdate:modelValue\": _cache[21] || (_cache[21] = ($event: any) => ((_ctx.bws) = $event)),\n onKeyup: _cache[22] || (_cache[22] = _withKeys(($event: any) => (_ctx.bws = !_ctx.bws), [\"enter\"])),\n label: \"Black Widow\",\n class: \"black-widow\",\n \"hide-details\": \"\"\n }, null, 8, [\"color\", \"modelValue\"])\n ])\n ], 512), [\n [_vShow, _ctx.showCatalog]\n ]),\n (_ctx.showBgSlider)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_30, [\n (_ctx.currentTool == 'crossfade')\n ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [\n _createElementVNode(\"span\", {\n class: \"bg-slider-text\",\n onClick: _cache[23] || (_cache[23] = ($event: any) => (_ctx.foregroundOpacity = 0)),\n onKeyup: _cache[24] || (_cache[24] = _withKeys(($event: any) => (_ctx.foregroundOpacity = 0), [\"enter\"])),\n tabindex: \"0\"\n }, [\n _createTextVNode(\"Visible light\"),\n _hoisted_31\n ], 32),\n _withDirectives(_createElementVNode(\"input\", {\n class: \"opacity-range\",\n type: \"range\",\n \"onUpdate:modelValue\": _cache[25] || (_cache[25] = ($event: any) => ((_ctx.foregroundOpacity) = $event))\n }, null, 512), [\n [_vModelText, _ctx.foregroundOpacity]\n ]),\n _createElementVNode(\"span\", {\n class: \"bg-slider-text\",\n onClick: _cache[26] || (_cache[26] = ($event: any) => (_ctx.foregroundOpacity = 100)),\n onKeyup: _cache[27] || (_cache[27] = _withKeys(($event: any) => (_ctx.foregroundOpacity = 100), [\"enter\"])),\n tabindex: \"0\"\n }, [\n _createTextVNode(\"Gamma rays\"),\n _hoisted_32\n ], 32)\n ], 64))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _: 1\n }, 8, [\"style\"]))\n}","import { __values } from \"tslib\";\r\nvar KeyPressInfo = /** @class */ (function () {\r\n function KeyPressInfo(code, modifiers) {\r\n var _a, _b, _c, _d;\r\n this.code = code;\r\n this.ctrl = (_a = modifiers === null || modifiers === void 0 ? void 0 : modifiers.ctrl) !== null && _a !== void 0 ? _a : false;\r\n this.alt = (_b = modifiers === null || modifiers === void 0 ? void 0 : modifiers.alt) !== null && _b !== void 0 ? _b : false;\r\n this.shift = (_c = modifiers === null || modifiers === void 0 ? void 0 : modifiers.shift) !== null && _c !== void 0 ? _c : false;\r\n this.meta = (_d = modifiers === null || modifiers === void 0 ? void 0 : modifiers.meta) !== null && _d !== void 0 ? _d : false;\r\n }\r\n KeyPressInfo.prototype.matches = function (event) {\r\n return (event.code === this.code &&\r\n event.ctrlKey === this.ctrl &&\r\n event.altKey === this.alt &&\r\n event.shiftKey === this.shift &&\r\n event.metaKey === this.meta);\r\n };\r\n return KeyPressInfo;\r\n}());\r\nvar KeyboardControlSettings = /** @class */ (function () {\r\n function KeyboardControlSettings(_a) {\r\n var _b = _a.zoomIn, zoomIn = _b === void 0 ? [new KeyPressInfo(\"KeyI\")] : _b, _c = _a.zoomOut, zoomOut = _c === void 0 ? [new KeyPressInfo(\"KeyO\")] : _c, _d = _a.moveUp, moveUp = _d === void 0 ? [new KeyPressInfo(\"KeyW\")] : _d, _e = _a.moveLeft, moveLeft = _e === void 0 ? [new KeyPressInfo(\"KeyA\")] : _e, _f = _a.moveDown, moveDown = _f === void 0 ? [new KeyPressInfo(\"KeyS\")] : _f, _g = _a.moveRight, moveRight = _g === void 0 ? [new KeyPressInfo(\"KeyD\")] : _g, _h = _a.moveAmount, moveAmount = _h === void 0 ? 20 : _h;\r\n // This is to make sure that we can't make a listener for an action type that doesn't exist\r\n this.actionTypes = [\r\n \"zoomIn\",\r\n \"zoomOut\",\r\n \"moveUp\",\r\n \"moveDown\",\r\n \"moveLeft\",\r\n \"moveRight\",\r\n ];\r\n this.zoomIn = zoomIn;\r\n this.zoomOut = zoomOut;\r\n this.moveUp = moveUp;\r\n this.moveDown = moveDown;\r\n this.moveLeft = moveLeft;\r\n this.moveRight = moveRight;\r\n this.moveAmount = moveAmount;\r\n }\r\n KeyboardControlSettings.prototype.makeListener = function (actionName, action) {\r\n var _this = this;\r\n return function (e) {\r\n var e_1, _a;\r\n try {\r\n for (var _b = __values(_this[actionName]), _c = _b.next(); !_c.done; _c = _b.next()) {\r\n var keyPress = _c.value;\r\n if (keyPress.matches(e)) {\r\n action();\r\n }\r\n }\r\n }\r\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\r\n finally {\r\n try {\r\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\r\n }\r\n finally { if (e_1) throw e_1.error; }\r\n }\r\n };\r\n };\r\n return KeyboardControlSettings;\r\n}());\r\nexport { KeyboardControlSettings };\r\n//# sourceMappingURL=keyboard.js.map","import { defineComponent } from \"vue\";\r\nimport { WWTAwareComponent } from \"@wwtelescope/engine-pinia\";\r\nimport { KeyboardControlSettings } from \"../keyboard\";\r\nimport screenfull from \"screenfull\";\r\nvar defaultWindowShape = { width: 1200, height: 900 };\r\nexport default defineComponent({\r\n extends: WWTAwareComponent,\r\n props: {\r\n kcs: { type: KeyboardControlSettings, default: new KeyboardControlSettings({}) }\r\n },\r\n data: function () {\r\n return {\r\n fullscreenModeActive: false,\r\n resizeObserver: null,\r\n touchscreen: false,\r\n windowShape: defaultWindowShape,\r\n };\r\n },\r\n created: function () {\r\n this.touchscreen = matchMedia('(hover: none)').matches;\r\n },\r\n mounted: function () {\r\n var _this = this;\r\n if (screenfull.isEnabled) {\r\n screenfull.on(\"change\", this.onFullscreenEvent);\r\n }\r\n // ResizeObserver not yet in TypeScript but we should start using it when\r\n // available. If we're in an iframe, our shape might change spontaneously.\r\n this.resizeObserver = new ResizeObserver(function (_entries) { return _this.onResizeEvent(); });\r\n this.resizeObserver.observe(this.$el);\r\n this.onResizeEvent();\r\n // Handling key presses\r\n window.addEventListener(\"keydown\", this.kcs.makeListener(\"zoomIn\", function () { return _this.doZoom(true); }));\r\n window.addEventListener(\"keydown\", this.kcs.makeListener(\"zoomOut\", function () { return _this.doZoom(false); }));\r\n window.addEventListener(\"keydown\", this.kcs.makeListener(\"moveUp\", function () {\r\n return _this.doMove(0, _this.kcs.moveAmount);\r\n }));\r\n window.addEventListener(\"keydown\", this.kcs.makeListener(\"moveDown\", function () {\r\n return _this.doMove(0, -_this.kcs.moveAmount);\r\n }));\r\n window.addEventListener(\"keydown\", this.kcs.makeListener(\"moveLeft\", function () {\r\n return _this.doMove(_this.kcs.moveAmount, 0);\r\n }));\r\n window.addEventListener(\"keydown\", this.kcs.makeListener(\"moveRight\", function () {\r\n return _this.doMove(-_this.kcs.moveAmount, 0);\r\n }));\r\n },\r\n destroyed: function () {\r\n var _a;\r\n if (screenfull.isEnabled) {\r\n screenfull.off(\"change\", this.onFullscreenEvent);\r\n }\r\n (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.unobserve(this.$el);\r\n },\r\n methods: {\r\n doZoom: function (zoomIn) {\r\n if (zoomIn) {\r\n this.zoom(1 / 1.3);\r\n }\r\n else {\r\n this.zoom(1.3);\r\n }\r\n },\r\n doMove: function (x, y) {\r\n this.move({ x: x, y: y });\r\n },\r\n onFullscreenEvent: function () {\r\n // NB: we need the isEnabled check to make TypeScript happy even though it\r\n // is not necessary in practice here.\r\n if (screenfull.isEnabled) {\r\n this.fullscreenModeActive = screenfull.isFullscreen;\r\n }\r\n },\r\n onResizeEvent: function () {\r\n var width = this.$el.clientWidth;\r\n var height = this.$el.clientHeight;\r\n if (width > 0 && height > 0) {\r\n this.windowShape = { width: width, height: height };\r\n }\r\n else {\r\n this.windowShape = defaultWindowShape;\r\n }\r\n },\r\n blurActiveElement: function () {\r\n var active = document.activeElement;\r\n if (active instanceof HTMLElement) {\r\n active.blur();\r\n }\r\n }\r\n },\r\n computed: {\r\n fullscreenAvailable: function () {\r\n return screenfull.isEnabled;\r\n }\r\n }\r\n});\r\n//# sourceMappingURL=MiniDSBase.js.map","var BackgroundImageset = /** @class */ (function () {\r\n function BackgroundImageset(displayName, imagesetName) {\r\n this.displayName = displayName;\r\n this.imagesetName = imagesetName;\r\n }\r\n return BackgroundImageset;\r\n}());\r\nexport { BackgroundImageset };\r\nexport var skyBackgroundImagesets = [\r\n new BackgroundImageset(\"Optical (Terapixel DSS)\", \"Digitized Sky Survey (Color)\"),\r\n new BackgroundImageset(\"Low-frequency radio (VLSS)\", \"VLSS: VLA Low-frequency Sky Survey (Radio)\"),\r\n new BackgroundImageset(\"Infrared (2MASS)\", \"2Mass: Imagery (Infrared)\"),\r\n new BackgroundImageset(\"Infrared (SFD dust map)\", \"SFD Dust Map (Infrared)\"),\r\n new BackgroundImageset(\"Ultraviolet (GALEX)\", \"GALEX (Ultraviolet)\"),\r\n new BackgroundImageset(\"X-Ray (ROSAT RASS)\", \"RASS: ROSAT All Sky Survey (X-ray)\"),\r\n new BackgroundImageset(\"Gamma Rays (FERMI LAT 8-year)\", \"Fermi LAT 8-year (gamma)\"),\r\n];\r\n//# sourceMappingURL=background.js.map","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n// @ts-nocheck\r\n\r\n/* eslint-disable */\r\n\r\nimport {\r\n Color, Colors, Constellations, Coordinates, Grids,\r\n LayerManager, LayerMap, PushPin, Settings, SpaceTimeController,\r\n SpreadSheetLayer, Text3d, Text3dBatch, URLHelpers,\r\n Vector3d, WWTControl\r\n} from \"@wwtelescope/engine\";\r\n\r\nexport function drawSkyOverlays() {\r\n if (Settings.get_active().get_showConstellationLabels()) {\r\n Constellations.drawConstellationNames(this.renderContext, 1, Colors.get_yellow());\r\n }\r\n if (Settings.get_active().get_showConstellationFigures()) {\r\n if (WWTControl.constellationsFigures == null) {\r\n WWTControl.constellationsFigures = Constellations.create('Constellations', URLHelpers.singleton.engineAssetUrl('figures.txt'), false, false, false);\r\n }\r\n WWTControl.constellationsFigures.draw(this.renderContext, false, 'UMA', false);\r\n }\r\n if (Settings.get_active().get_showAltAzGrid()) {\r\n const altAzColor = Color.fromArgb(1, 3, 92, 134);\r\n Grids.drawAltAzGrid(this.renderContext, 1, altAzColor);\r\n if (Settings.get_active().get_showAltAzGridText()) {\r\n Grids.drawAltAzGridText(this.renderContext, 1, altAzColor);\r\n }\r\n }\r\n}\r\n\r\nexport function initializeConstellationNames() {\r\n if (Constellations.constellationCentroids == null) {\r\n return;\r\n }\r\n const textSize = 50;\r\n Constellations._namesBatch = new Text3dBatch(textSize);\r\n Object.keys(Constellations.constellationCentroids).forEach(key => {\r\n const centroid = Constellations.constellationCentroids[key];\r\n const center = Coordinates.raDecTo3dAu(centroid.get_RA(), centroid.get_dec(), 1);\r\n const up = Vector3d.create(0, 1, 0);\r\n let name = centroid.get_name();\r\n if (centroid.get_name() === 'Triangulum Australe') {\r\n name = name.replace(\" \", \"\\n \");\r\n }\r\n Constellations._namesBatch.add(new Text3d(center, up, name, textSize, 0.000125));\r\n });\r\n};\r\n\r\nexport function makeAltAzGridText() {\r\n if (Grids._altAzTextBatch == null) {\r\n const glyphHeight = 70;\r\n Grids._altAzTextBatch = new Text3dBatch(glyphHeight);\r\n const sign = SpaceTimeController.get_location().get_lat() < 0 ? -1 : 1;\r\n const alt = 0.03 * sign;\r\n const up = Vector3d.create(0, sign, 0);\r\n const directions = [\r\n [[0, alt, -1], \"N\"],\r\n [[-1, alt, 0], \"E\"],\r\n [[0, alt, 1], \"S\"],\r\n [[1, alt, -0.0095], \"V\"],\r\n [[1, alt, 0.0095], \"V\"]\r\n ]\r\n directions.forEach(([v, text]) => {\r\n Grids._altAzTextBatch.add(new Text3d(Vector3d.create(...v), up, text, 75, 0.00018));\r\n });\r\n }\r\n}\r\n\r\nexport function drawSpreadSheetLayer(renderContext, opacity, flat) {\r\n var device = renderContext;\r\n if (this.version !== this.lastVersion) {\r\n this.cleanUp();\r\n }\r\n this.lastVersion = this.version;\r\n if (this.bufferIsFlat !== flat) {\r\n this.cleanUp();\r\n this.bufferIsFlat = flat;\r\n }\r\n if (this.dirty) {\r\n this.prepVertexBuffer(device, opacity);\r\n }\r\n var jNow = SpaceTimeController.get_jNow() - SpaceTimeController.utcToJulian(this.baseDate);\r\n var adjustedScale = this.scaleFactor * 3;\r\n if (flat && this.astronomical && (this._markerScale$1 === 1)) {\r\n adjustedScale = (this.scaleFactor / (renderContext.viewCamera.zoom / 360));\r\n }\r\n if (this.triangleList2d != null) {\r\n this.triangleList2d.decay = this.decay;\r\n this.triangleList2d.sky = this.get_astronomical();\r\n this.triangleList2d.timeSeries = this.timeSeries;\r\n this.triangleList2d.jNow = jNow;\r\n this.triangleList2d.draw(renderContext, opacity * this.get_opacity(), 1);\r\n }\r\n if (this.triangleList != null) {\r\n this.triangleList.decay = this.decay;\r\n this.triangleList.sky = this.get_astronomical();\r\n this.triangleList.timeSeries = this.timeSeries;\r\n this.triangleList.jNow = jNow;\r\n this.triangleList.draw(renderContext, opacity * this.get_opacity(), 1);\r\n }\r\n if (this.pointList != null) {\r\n this.pointList.depthBuffered = false;\r\n this.pointList.showFarSide = this.get_showFarSide();\r\n this.pointList.decay = (this.timeSeries) ? this.decay : 0;\r\n this.pointList.sky = this.get_astronomical();\r\n this.pointList.timeSeries = this.timeSeries;\r\n this.pointList.jNow = jNow;\r\n this.pointList.scale = (this._markerScale$1 === 1) ? adjustedScale : -adjustedScale;\r\n switch (this._plotType$1) {\r\n case 0:\r\n this.pointList.draw(renderContext, opacity * this.get_opacity(), false);\r\n break;\r\n case 2:\r\n this.pointList.drawTextured(renderContext, SpreadSheetLayer.get__circleTexture$1().texture2d, opacity * this.get_opacity());\r\n break;\r\n case 1:\r\n this.pointList.drawTextured(renderContext, PushPin.getPushPinTexture(19), opacity * this.get_opacity());\r\n break;\r\n case 3:\r\n this.pointList.drawTextured(renderContext, PushPin.getPushPinTexture(35), opacity * this.get_opacity());\r\n break;\r\n case 5:\r\n case 4:\r\n this.pointList.drawTextured(renderContext, PushPin.getPushPinTexture(this._markerIndex$1), opacity * this.get_opacity());\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n if (this.lineList != null) {\r\n this.lineList.sky = this.get_astronomical();\r\n this.lineList.decay = this.decay;\r\n this.lineList.timeSeries = this.timeSeries;\r\n this.lineList.jNow = jNow;\r\n this.lineList.drawLines(renderContext, opacity * this.get_opacity());\r\n }\r\n if (this.lineList2d != null) {\r\n this.lineList2d.sky = this.get_astronomical();\r\n this.lineList2d.decay = this.decay;\r\n this.lineList2d.timeSeries = this.timeSeries;\r\n this.lineList2d.showFarSide = this.get_showFarSide();\r\n this.lineList2d.jNow = jNow;\r\n this.lineList2d.drawLines(renderContext, opacity * this.get_opacity());\r\n }\r\n return true;\r\n}\r\n\r\nexport function layerManagerDraw(renderContext, opacity, astronomical, referenceFrame, nested, cosmos) {\r\n if (!(referenceFrame in LayerManager.get_allMaps())) {\r\n return;\r\n }\r\n var thisMap = LayerManager.get_allMaps()[referenceFrame];\r\n if (!thisMap.enabled || (!thisMap.layers.length && !(thisMap.frame.showAsPoint || thisMap.frame.showOrbitPath))) {\r\n return;\r\n }\r\n var matOld = renderContext.get_world();\r\n var matOldNonRotating = renderContext.get_worldBaseNonRotating();\r\n var oldNominalRadius = renderContext.get_nominalRadius();\r\n if ((thisMap.frame.reference === 18 | thisMap.frame.reference === 18) === 1) {\r\n thisMap.computeFrame(renderContext);\r\n if (thisMap.frame.referenceFrameType !== 1 && thisMap.frame.referenceFrameType !== 2) {\r\n renderContext.set_world(Matrix3d.multiplyMatrix(thisMap.frame.worldMatrix, renderContext.get_world()));\r\n }\r\n else {\r\n renderContext.set_world(Matrix3d.multiplyMatrix(thisMap.frame.worldMatrix, renderContext.get_worldBaseNonRotating()));\r\n }\r\n renderContext.set_nominalRadius(thisMap.frame.meanRadius);\r\n }\r\n //console.log(\"========\");\r\n for (const layer of LayerManager.get_allMaps()[referenceFrame].layers) {\r\n if (layer.enabled) {\r\n //console.log(layer);\r\n var layerStart = SpaceTimeController.utcToJulian(layer.get_startTime());\r\n var layerEnd = SpaceTimeController.utcToJulian(layer.get_endTime());\r\n var fadeIn = SpaceTimeController.utcToJulian(layer.get_startTime()) - ((layer.get_fadeType() === 1 || layer.get_fadeType() === 3) ? (layer.get_fadeSpan() / 864000000) : 0);\r\n var fadeOut = SpaceTimeController.utcToJulian(layer.get_endTime()) + ((layer.get_fadeType() === 2 || layer.get_fadeType() === 3) ? (layer.get_fadeSpan() / 864000000) : 0);\r\n if (SpaceTimeController.get_jNow() > fadeIn && SpaceTimeController.get_jNow() < fadeOut) {\r\n var fadeOpacity = 1;\r\n if (SpaceTimeController.get_jNow() < layerStart) {\r\n fadeOpacity = ((SpaceTimeController.get_jNow() - fadeIn) / (layer.get_fadeSpan() / 864000000));\r\n }\r\n if (SpaceTimeController.get_jNow() > layerEnd) {\r\n fadeOpacity = ((fadeOut - SpaceTimeController.get_jNow()) / (layer.get_fadeSpan() / 864000000));\r\n }\r\n layer.set_astronomical(astronomical);\r\n layer.draw(renderContext, opacity * fadeOpacity, cosmos);\r\n }\r\n }\r\n }\r\n renderContext.set_nominalRadius(oldNominalRadius);\r\n renderContext.set_world(matOld);\r\n renderContext.set_worldBaseNonRotating(matOldNonRotating);\r\n};\r\n","export const youngRadioQuietPulsarCsv = `Name,RA,DEC,frequency,keyCode\r\nJ0007+7303,1.7565,73.05225,3.16564302,0\r\nJ0357+3205,59.468,32.08905556,2.251718792,0\r\nJ0359+5414,59.85845274,54.24879197,12.58999189,0\r\nJ0554+3107,88.52090284,31.12919269,2.150718176,0\r\nJ0622+3749,95.54413352,37.81937681,3.001119808,0\r\nJ0633+0632,98.433925,6.541777778,3.362415888,0\r\nGeminga (J0633+1746),98.4756375,17.7702525,4.21755433,0\r\nJ0734-1559,113.6903576,-15.98866535,6.44568009,0\r\nJ0744-2525,116.0231126,-25.42127119,10.86812513,0\r\nJ0802-5613,120.5975257,-56.21706104,3.648489649,0\r\nJ1023-5746,155.7654363,-57.77132268,8.968991381,0\r\nJ1044-5737,161.1365325,-57.62210175,7.192565431,0\r\nJ1057-5851,164.2881657,-58.85156278,1.611954171,0\r\nJ1105-6037,166.2519741,-60.62118582,5.129796954,0\r\nJ1111-6039,167.9530497,-60.65647774,9.373020053,0\r\nJ1135-6055,173.7850016,-60.92694456,8.733983579,0\r\nJ1139-6247,174.8211833,-62.79015862,8.303739682,0\r\nJ1203-6242,180.9806239,-62.71244181,9.936306941,0\r\nJ1208-6238,182.0580443,-62.6341005,2.269211904,0\r\nJ1231-5113,187.898556,-51.22648997,4.844020845,0\r\nJ1231-6511,187.9330257,-65.19676421,4.042593088,0\r\nJ1350-6225,207.6851454,-62.42879074,7.238093542,0\r\nJ1358-6025,209.6078444,-60.43207164,16.52371698,0\r\nJ1413-6205,213.3759023,-62.09351698,9.112226153,0\r\nJ1418-6058,214.6783438,-60.96665602,9.042983895,0\r\nJ1422-6138,215.6171647,-61.64184014,2.932745106,0\r\nJ1429-5911,217.4939324,-59.19348358,8.632316803,0\r\nJ1447-5757,221.86745,-57.95727556,6.300039646,0\r\nJ1459-6053,224.8758755,-60.88879787,9.694432465,0\r\nJ1522-5735,230.5220593,-57.5829796,4.895234031,0\r\nJ1528-5838,232.1027593,-58.63320226,2.811460345,0\r\nJ1615-5137,243.8213629,-51.62193313,5.577936073,0\r\nJ1620-4927,245.172926,-49.46010001,5.816150642,0\r\nJ1623-5005,245.7670736,-50.08763661,11.75468978,0\r\nJ1624-4041,246.0413105,-40.69152095,5.957300652,0\r\nJ1641-5317,250.3164626,-53.2968937,5.710817298,0\r\nJ1650-4601,252.5774992,-46.02156603,7.866380718,0\r\nJ1714-3830,258.5825,-38.50638889,11.88606163,0\r\nJ1736-3422,264.0453976,-34.3719547,2.882409734,0\r\nJ1742-3321,265.5482917,-33.35571389,6.978040164,0\r\nJ1746-3239,266.728987,-32.66035049,5.011487659,0\r\nJ1748-2815,267.1292379,-28.25453306,9.984331549,0\r\nJ1803-2149,270.790062,-21.81560416,9.404324505,0\r\nJ1809-2332,272.459375,-23.53963333,6.812434865,0\r\nJ1813-1246,273.3490212,-12.76695277,20.80158238,0\r\nJ1817-1742,274.2876401,-17.70032921,6.678028994,0\r\nJ1826-1256,276.5355833,-12.94294444,9.07122949,0\r\nJ1827-1446,276.8523981,-14.77311089,2.003254396,0\r\nJ1836+5925,279.0571792,59.42501389,5.771548233,0\r\nJ1838-0537,279.7337655,-5.617571147,6.860852281,0\r\nJ1844-0346,281.1370559,-3.775179879,8.860955228,0\r\nJ1846+0919,281.6078461,9.329361239,4.433565439,0\r\nJ1846-0258,281.6020833,-2.974444444,3.062118547,0\r\nJ1906+0722,286.6299208,7.382216194,8.966507337,0\r\nJ1932+1916,293.0820741,19.27753947,4.802666856,0\r\nJ1954+2836,298.5797991,28.60140306,10.78627234,0\r\nJ1957+5033,299.4102036,50.55610113,2.668042052,0\r\nJ1958+2846,299.6667208,28.76531111,3.443489831,0\r\nJ2017+3625,304.4826629,36.41891617,5.997031705,0\r\nJ2021+4026,305.3780542,40.44612222,3.769024566,0\r\nJ2028+3332,307.082771,33.53452257,5.659067649,0\r\nJ2030+4415,307.7141181,44.26079894,4.403911273,0\r\nJ2055+2539,313.9539167,25.66642685,3.129288676,0\r\nJ2111+4606,317.8507989,46.10837056,6.335719285,0\r\nJ2139+4716,324.9829766,47.27027751,3.535450362,0\r\nJ2238+5903,339.6172936,59.06243491,6.144764381,0`;\r\nexport const youngRadioLoudPulsarCsv = `Name,RA,DEC,frequency,keyCode\r\nJ0002+6216,0.742313807,62.26929818,8.66822621,1\r\nJ0106+4855,16.6044436,48.93099641,12.02539652,1\r\nB0114+58,19.41105273,59.24400877,9.858001864,1\r\nB0136+57,24.83225042,58.24217194,3.670306032,1\r\nJ0205+6449,31.40314968,64.82352481,15.20997256,1\r\nJ0248+6021,42.07767356,60.3597964,4.605826479,1\r\nJ0514-4408,78.71746546,-44.14371306,3.122357486,1\r\nCrab (B0531+21),83.63308333,22.01447222,29.71690615,1\r\nB0540-69,85.04562,-69.331969,19.74520247,1\r\nJ0631+0646,97.96833346,6.770556341,9.01070419,1\r\nJ0631+1036,97.86485374,10.61660576,3.474447368,1\r\nB0656+14,104.950754,14.23931827,2.597935499,1\r\nJ0729-1448,112.3164695,-14.81142065,3.972847088,1\r\nB0727-18,112.3848059,-18.61189636,1.960150555,1\r\nB0740-28,115.7043095,-28.37887469,5.99644126,1\r\nJ0834-4159,128.5741917,-41.99333018,8.256427641,1\r\nVela (B0833-45),128.8358812,-45.17635419,11.18930088,1\r\nB0906-49,137.1479121,-49.2181562,9.366271095,1\r\nB0919+06,140.5582375,6.63935834,2.32222688,1\r\nJ0940-5428,145.2427179,-54.47784234,11.42101837,1\r\nJ1016-5857,154.0881667,-58.95336111,9.310559138,1\r\nJ1019-5749,154.9671491,-57.81840094,6.153620496,1\r\nJ1028-5819,157.1161635,-58.31839477,10.9404114,1\r\nB1046-58,162.0526667,-58.534375,8.083438241,1\r\nJ1055-6028,163.9138714,-60.47649361,10.03416575,1\r\nB1055-52,164.4957446,-52.44901181,5.073215248,1\r\nJ1105-6107,166.3584596,-61.13043002,15.82293744,1\r\nJ1112-6103,168.0617766,-61.05923884,15.39079089,1\r\nJ1119-6127,169.8095833,-61.46375,2.444141682,1\r\nJ1124-5916,171.1629167,-59.27222222,7.377967695,1\r\nJ1151-6108,177.9869188,-61.1382481,9.839306729,1\r\nB1221-63,186.0927208,-64.13162137,4.619365436,1\r\nJ1253-5820,193.368436,-58.34462355,3.9139267,1\r\nB1338-62,205.427625,-62.33908333,5.169516807,1\r\nJ1357-6429,209.260125,-64.49172222,6.017236696,1\r\nJ1410-6132,212.5927356,-61.53334496,19.9779291,1\r\nJ1420-6048,215.0332692,-60.80396154,14.66127168,1\r\nJ1509-5850,227.3631792,-58.84892222,11.24544734,1\r\nB1509-58,228.4818201,-59.13597113,6.59594373,1\r\nJ1531-5610,232.8662587,-56.18203528,11.87558757,1\r\nB1610-50,243.5514035,-50.79598769,4.312370671,1\r\nB1643-43,251.7120945,-43.76550945,4.316513558,1\r\nJ1648-4611,252.0918209,-46.18771991,6.06214867,1\r\nJ1702-4128,255.7188414,-41.48007325,5.489860182,1\r\nB1702-19,256.3998803,-19.11106875,3.34459298,1\r\nB1706-44,257.4281179,-44.48565806,9.755753567,1\r\nJ1718-3825,259.5564868,-38.42161189,13.39138051,1\r\nB1727-33,262.6346796,-33.84370443,7.168169915,1\r\nB1727-47,262.9256631,-47.74370707,1.204973285,1\r\nJ1732-3131,263.1397958,-31.52331111,5.087902099,1\r\nJ1739-3023,264.9158409,-30.38616586,8.74334091,1\r\nJ1740+1000,265.1081988,10.00164067,6.489469647,1\r\nJ1741-2054,265.4886667,-20.90327778,2.417204499,1\r\nJ1747-2958,266.8160583,-29.96705,10.11844411,1\r\nB1754-24,269.3721778,-24.36518923,4.271536452,1\r\nB1757-24,270.2481785,-24.84370827,8.003094984,1\r\nJ1816-0755,274.1022601,-7.922880906,4.594669705,1\r\nJ1828-1101,277.078529,-11.03103275,13.87814787,1\r\nJ1831-0952,277.8929068,-9.867094136,14.86553583,1\r\nJ1833-1034,278.389875,-10.56875,16.15489151,1\r\nJ1835-1106,278.8266963,-11.10410721,6.027021805,1\r\nJ1837-0604,279.431079,-6.080102986,10.38283537,1\r\nJ1841-0524,280.4553786,-5.408631772,2.243109553,1\r\nJ1853-0004,283.345947,-0.075934686,9.858291625,1\r\nB1853+01,284.0456516,1.225460558,3.738555365,1\r\nJ1857+0143,284.3873215,1.730009608,7.15451157,1\r\nJ1907+0602,286.9781667,6.037388889,9.377100395,1\r\nJ1913+0904,288.3377739,9.079317989,6.125554131,1\r\nJ1913+1011,288.3347457,10.18973193,27.84741264,1\r\nJ1925+1720,291.3627439,17.34094919,13.217152,1\r\nJ1928+1746,292.1772729,17.77490905,14.54921176,1\r\nB1930+22,293.0944537,22.34824292,6.922111415,1\r\nJ1935+2025,293.9241218,20.42660865,12.48036113,1\r\nB1951+32,298.2425001,32.87798336,25.29558112,1\r\nJ1954+3852,298.5045109,38.87107758,2.83339568,1\r\nJ2006+3102,301.5461166,31.0341469,6.108786932,1\r\nJ2021+3651,305.2730726,36.85102917,9.638874362,1\r\nJ2022+3842,305.5903708,38.70411667,20.58650448,1\r\nJ2030+3641,307.5011057,36.69086597,4.996768885,1\r\nJ2043+2740,310.9313307,27.6823673,10.40244169,1\r\nJ2208+4056,332.0082967,40.93383849,1.569963721,1\r\nJ2229+6114,337.2725988,61.23643969,19.36020455,1\r\nJ2240+5832,340.1789899,58.54377546,7.145857457,1`;\r\nexport const isolatedMillisecondPulsarCsv = `Name,RA,DEC,frequency,keyCode\r\nJ0030+0451,7.614280238,4.861029881,205.5306959,2\r\nJ0154+1833,28.65367978,18.56409855,422.9099137,2\r\nJ0248+4230,42.12918569,42.50570342,384.4919353,2\r\nJ0318+0253,49.56475345,2.883753842,192.6837155,2\r\nJ0340+4130,55.09703491,41.51258256,303.0909748,2\r\nJ0418+6635,64.69992154,66.59020176,343.6207989,2\r\nJ0533+6759,83.47974695,67.98818956,227.8859492,2\r\nJ0931-1902,142.8296573,-19.04861619,215.6088071,2\r\nJ1012-4235,153.053921,-42.59817803,322.4619328,2\r\nJ1024-0719,156.1611204,-7.322101628,193.7156834,2\r\nJ1035-6720,158.8644877,-67.33685877,348.18864,2\r\nJ1207-5050,181.8433462,-50.84407389,206.4939317,2\r\nJ1335-5656,203.7727385,-56.93362853,308.8623433,2\r\nJ1552+5437,238.222234,54.61827351,411.8805378,2\r\nJ1649-3012,252.442985,-30.20588867,292.0172883,2\r\nJ1658-5324,254.6639344,-53.40194022,409.9543626,2\r\nJ1730-2304,262.5903019,-23.07531818,123.1102871,2\r\nJ1744-1134,266.122546,-11.58186668,245.4261196,2\r\nJ1744-7619,266.0020098,-76.32075388,213.3322367,2\r\nJ1747-4036,266.9529865,-40.61522908,607.6775391,2\r\nB1820-30A,275.918686,-30.36111096,183.8233765,2\r\nB1821-24A,276.1333659,-24.86968463,327.405568,2\r\nJ1827-0849,276.9013863,-8.828403661,445.9368925,2\r\nJ1832-0836,278.1149702,-8.615281828,367.7671155,2\r\nJ1835-3259B,278.9394599,-32.99041102,546.3605862,2\r\nJ1843-1113,280.9219231,-11.22529913,541.8097448,2\r\nJ1852-13,283.0800852,-13.16689755,231.7681954,2\r\nJ1901-0125,285.3905239,-1.424802244,357.991174,2\r\nB1937+21,294.9106718,21.58309279,641.9282224,2\r\nJ2029-4239,307.3966468,-42.65975198,188.1764569,2\r\nJ2034+3632,308.7499824,36.53908803,273.9526015,2\r\nJ2124-3358,321.1826863,-33.97918245,202.7938937,2`;\r\nexport const binaryMillisecondPulsarCsv = `Name,RA,DEC,frequency,keyCode\r\nJ0034-0534,8.590982107,-5.576874772,532.7134293,3\r\nJ0101-6422,15.29631924,-64.37504668,388.6284257,3\r\nJ0102+4839,15.71112173,48.66187881,337.3691203,3\r\nJ0218+4232,34.52649423,42.53815903,430.4610533,3\r\nJ0307+7443,46.98285996,74.72039554,316.8478768,3\r\nJ0437-4715,69.31623851,-47.2525325,173.6879458,3\r\nJ0605+3757,91.27309764,37.95998412,366.5750693,3\r\nJ0613-0200,93.43323338,-2.013126069,326.6005619,3\r\nJ0614-3329,93.54311669,-33.49836548,317.5944503,3\r\nJ0621+2514,95.29522941,25.23443295,367.405552,3\r\nJ0653+4706,103.2742265,47.10747963,210.1666068,3\r\nJ0737-3039A,114.4635316,-30.66130558,44.05406787,3\r\nJ0740+6620,115.1908319,66.34267928,346.5319913,3\r\nJ0751+1807,117.788145,18.12734712,287.4578539,3\r\nJ0955-6150,148.8368557,-61.83802658,500.1599279,3\r\nJ1036-8317,159.1694957,-83.29893233,293.3579718,3\r\nJ1125-5825,171.4348545,-58.42135301,322.350438,3\r\nJ1125-6014,171.4800787,-60.23516576,380.1730941,3\r\nJ1137+7528,174.2585665,75.46730806,397.9873963,3\r\nJ1142+0119,175.7089257,1.326548622,197.0327504,3\r\nJ1221-0633,185.353183,-6.564282691,516.9188321,3\r\nJ1231-1411,187.7970898,-14.19545091,271.4530153,3\r\nJ1302-3258,195.6063604,-32.9769048,265.1919765,3\r\nJ1306-6043,196.5844697,-60.73019751,176.3315491,3\r\nJ1312+0051,198.1943363,0.850025647,236.5173823,3\r\nJ1327-0755,201.9899181,-7.925012214,373.4236985,3\r\nJ1400-1431,210.1541658,-14.52970826,324.229687,3\r\nJ1402+13,210.6933998,13.11636718,169.7098864,3\r\nJ1455-3330,223.9498816,-33.5128849,125.2002432,3\r\nJ1514-4946,228.5796423,-49.77097987,278.6030092,3\r\nJ1526-2744,231.6879298,-27.73497578,401.7446021,3\r\nJ1536-4948,234.0967538,-49.81519112,324.6843844,3\r\nJ1543-5149,235.9339568,-51.83185799,486.1542321,3\r\nJ1600-3053,240.2162631,-30.89705398,277.9377069,3\r\nJ1614-2230,243.652114,-22.50868383,317.378937,3\r\nJ1623-6936,245.9641346,-69.61366669,414.9596274,3\r\nJ1625-0021,246.293158,-0.358044477,352.9062333,3\r\nJ1627+3219,246.9708272,32.30740092,458.120078,3\r\nJ1630+3734,247.6519521,37.57834789,301.3761878,3\r\nJ1640+2224,250.0697719,22.40244719,316.1239793,3\r\nJ1713+0747,258.456392,7.793744986,218.8118404,3\r\nJ1732-5049,263.1990282,-50.81671989,188.2335151,3\r\nJ1741+1351,265.3797711,13.8622574,266.8691629,3\r\nJ1757-6032,269.4393732,-60.5367432,343.347867,3\r\nJ1811-2405,272.8327256,-24.08846207,375.8560142,3\r\nJ1824+1014,276.062208,10.2455048,245.9470305,3\r\nJ1824-0621,276.0659147,-6.365775492,309.3086855,3\r\nJ1855-1436,283.9759534,-14.60249523,278.2344182,3\r\nB1855+09,284.4016258,9.721432471,186.4940783,3\r\nJ1858-2216,284.5744571,-22.2819527,419.4608173,3\r\nJ1858-5422,284.5323591,-54.37099973,424.5389761,3\r\nJ1902-5105,285.5118678,-51.09915993,573.921045,3\r\nJ1903-7051,285.911623,-70.86207143,277.9400624,3\r\nJ1909-3744,287.4476307,-37.73739264,339.3156871,3\r\nJ1921+0137,290.3762848,1.623768048,400.5813534,3\r\nJ1921+1929,290.3472945,19.48952763,377.8801863,3\r\nJ1946+3417,296.6047104,34.28741433,315.4435588,3\r\nJ2006+0148,301.6210538,1.814977736,462.2018719,3\r\nJ2017+0603,304.344604,6.051546792,345.2781312,3\r\nJ2032+4127,308.0546621,41.45675524,6.980924635,3\r\nJ2039-3616,309.8190946,-36.27144036,305.3396375,3\r\nJ2042+0246,310.545845,2.770677031,220.569096,3\r\nJ2043+1711,310.8370098,17.19136934,420.1894368,3\r\nJ2116+1345,319.2073729,13.75588224,450.7525822,3\r\nJ2205+6012,331.3925057,60.21531694,413.9847443,3\r\nJ2302+4442,345.6957447,44.70613798,192.5919607,3\r\nJ2310-0555,347.526812,-5.926689767,382.7624036,3\r\nJ2317+1439,349.2884849,14.65868482,290.2546036,3`;\r\nexport const blackWidowSystemCsv = `Name,RA,DEC,frequency,keyCode\r\nJ0023+0923,5.820331279,9.389964728,327.8470156,4\r\nJ0251+2606,42.76064171,26.1027694,393.4600105,4\r\nJ0312-0921,48.0258944,-9.365709235,269.9539475,4\r\nJ0610-2100,92.55665518,-21.00774591,258.9784751,4\r\nJ0636+5128,99.0201924,51.48332384,348.5592263,4\r\nJ0952-0607,148.0346755,-6.123196811,707.3144458,4\r\nJ1124-3653,171.0046537,-36.88863854,415.0113401,4\r\nJ1259-8148,194.8816842,-81.81428513,479.4813416,4\r\nJ1301+0833,195.4094344,8.565958465,542.3800514,4\r\nJ1311-3430,197.9405147,-34.50842988,390.568393,4\r\nJ1446-4701,221.6488081,-47.02410197,455.6440235,4\r\nJ1513-2550,228.3471713,-25.84202849,471.9056635,4\r\nJ1544+4937,236.0186883,49.63201831,463.1155287,4\r\nJ1555-2908,238.9194107,-29.14122954,559.4400064,4\r\nJ1641+8049,250.3368454,80.83137111,494.7606371,4\r\nJ1653-0158,253.4085714,-1.976905974,508.2121946,4\r\nJ1745+1017,266.3909896,10.29792493,377.0554701,4\r\nJ1805+0615,271.4266641,6.255163193,469.7247246,4\r\nJ1810+1744,272.655353,17.74371535,601.4115161,4\r\nJ1833-3840,278.2690921,-38.67946423,535.8863772,4\r\nJ1908+2105,287.2387245,21.08408887,389.9558798,4\r\nJ1946-5403,296.6437244,-54.06181295,368.9214704,4\r\nB1957+20,299.9031109,20.80404642,622.1220165,4\r\nJ2017-1614,304.4422731,-16.23758933,432.0984759,4\r\nJ2047+1053,311.7927426,10.88554091,233.3217032,4\r\nJ2051-0827,312.7813336,-8.4604853,221.7962836,4\r\nJ2052+1219,313.1990748,12.33306289,503.7133035,4\r\nJ2115+5448,318.7990326,54.81254284,384.1903016,4\r\nJ2214+3000,333.6618561,30.01061218,320.5922876,4\r\nJ2234+0944,338.6952193,9.741758528,275.7078285,4\r\nJ2241-5236,340.4250702,-52.61005889,457.3101497,4\r\nJ2256-1024,344.2349706,-10.40955129,435.8187551,4`;\r\nexport const redbackSystemCsv = `Name,RA,DEC,frequency,keyCode\r\nJ0955-3947,148.8658497,-39.79784878,494.3822812,5\r\nJ1023+0038,155.9486967,0.644679306,592.4214681,5\r\nJ1048+2339,162.1809098,23.66483454,214.3547853,5\r\nJ1227-4853,186.9946836,-48.89520223,592.9877736,5\r\nJ1431-4715,217.9359154,-47.25765902,497.0294016,5\r\nJ1622-0315,245.7484553,-3.260363737,260.0490042,5\r\nJ1628-3205,247.0291918,-32.09692095,311.3743495,5\r\nJ1803-6707,270.7676472,-67.12671046,468.4677121,5\r\nJ1816+4510,274.1497251,45.17607366,313.1749356,5\r\nJ2039-5617,309.8957006,-56.2859079,377.2293634,5\r\nJ2129-0429,322.4377478,-4.485226562,131.3380894,5\r\nJ2215+5135,333.8861956,51.59345429,383.197594,5\r\nJ2339-0533,354.9114211,-5.551418933,346.7133792,5`;\r\n","\r\nimport { defineComponent } from 'vue';\r\nimport { csvFormatRows, csvParse } from \"d3-dsv\";\r\n\r\nimport { distance } from \"@wwtelescope/astro\";\r\nimport { Color, Constellations, Folder, Grids, Layer, LayerManager, Poly, RenderContext, Settings, SpreadSheetLayer, WWTControl } from \"@wwtelescope/engine\";\r\nimport { ImageSetType, MarkerScales, PlotTypes, PointScaleTypes, Thumbnail } from \"@wwtelescope/engine-types\";\r\n\r\nimport L, { LeafletMouseEvent, Map } from \"leaflet\";\r\nimport { tween } from \"femtotween\";\r\nimport { MiniDSBase, BackgroundImageset, skyBackgroundImagesets } from \"@minids/common\";\r\n\r\nimport { ImageSetLayer, Place, Imageset } from \"@wwtelescope/engine\";\r\nimport { applyImageSetLayerSetting, applySpreadSheetLayerSetting } from \"@wwtelescope/engine-helpers\";\r\n\r\nimport { drawSkyOverlays, initializeConstellationNames, makeAltAzGridText, drawSpreadSheetLayer, layerManagerDraw } from \"./wwt-hacks\";\r\n\r\nimport { ref, onMounted } from 'vue';\r\n\r\ninterface MoveOptions {\r\n instant?: boolean;\r\n zoomDeg?: number;\r\n rollRad?: number;\r\n}\r\n\r\nimport {\r\n youngRadioQuietPulsarCsv,\r\n youngRadioLoudPulsarCsv,\r\n isolatedMillisecondPulsarCsv,\r\n binaryMillisecondPulsarCsv,\r\n blackWidowSystemCsv,\r\n redbackSystemCsv,\r\n} from \"./data\";\r\n\r\nconst D2R = Math.PI / 180;\r\nconst R2D = 180 / Math.PI;\r\n\r\n\r\nfunction parseCsvTable(csv: string) {\r\n return csvParse(csv, (d) => {\r\n return {\r\n grpname: d.Name!, // + makes it a number - we don't want that here\r\n ra: +d.RA!,\r\n dec: +d.DEC!,\r\n freq: +d.frequency!,\r\n grptype: +d.keyCode!,\r\n };\r\n });\r\n}\r\n\r\nconst youngRadioQuietPulsarTable = parseCsvTable(youngRadioQuietPulsarCsv);\r\nconst youngRadioLoudPulsarTable = parseCsvTable(youngRadioLoudPulsarCsv);\r\nconst isolatedMillisecondPulsarTable = parseCsvTable(isolatedMillisecondPulsarCsv);\r\nconst binaryMillisecondPulsarTable = parseCsvTable(binaryMillisecondPulsarCsv);\r\nconst blackWidowSystemTable = parseCsvTable(blackWidowSystemCsv);\r\nconst redbackSystemTable = parseCsvTable(redbackSystemCsv);\r\n\r\ntype Table = typeof youngRadioQuietPulsarTable;\r\ntype TableRow = typeof youngRadioQuietPulsarTable[number];\r\n\r\nfunction formatCsvTable(table: Table): string {\r\n return csvFormatRows([[\r\n \"Name\", \"RA\", \"Dec\", \"Frequency\" , \"Type\"\r\n ]].concat(table.map((d, _i) => {\r\n return [\r\n d.grpname.toString(),\r\n d.ra.toString(),\r\n d.dec.toString(),\r\n d.freq.toString(),\r\n d.grptype.toString(),\r\n ];\r\n }))).replace(/\\n/g, '\\r\\n');\r\n // By using a regex, we replace all instances.\r\n // For WWT implementation reasons (left over from \r\n // the Windows client?), we need the line endings \r\n // to be CRLF\r\n}\r\n\r\nconst youngRadioQuietPulsarString = formatCsvTable(youngRadioQuietPulsarTable);\r\nconst youngRadioLoudPulsarString = formatCsvTable(youngRadioLoudPulsarTable);\r\nconst isolatedMillisecondPulsarString = formatCsvTable(isolatedMillisecondPulsarTable);\r\nconst binaryMillisecondPulsarString = formatCsvTable(binaryMillisecondPulsarTable);\r\nconst blackWidowSystemString = formatCsvTable(blackWidowSystemTable);\r\nconst redbackSystemString = formatCsvTable(redbackSystemTable);\r\n\r\ntype LocationRad = {\r\n longitudeRad: number;\r\n latitudeRad: number;\r\n};\r\n\r\ntype EquatorialRad = {\r\n raRad: number;\r\n decRad: number;\r\n};\r\n\r\ntype HorizontalRad = {\r\n altRad: number;\r\n azRad: number;\r\n};\r\n\r\ninterface PointData {\r\n x: number;\r\n y: number;\r\n ra: number;\r\n dec: number;\r\n name: string;\r\n frequency: string;\r\n color: Color;\r\n}\r\n\r\ntype ToolType = \"crossfade\" | \"choose-background\" | null;\r\ntype SheetType = \"text\" | \"video\" | null;\r\n\r\nexport default defineComponent({\r\n\r\n setup() {\r\n const fullscreen = ref(false);\r\n\r\n function toggleFullscreen() {\r\n if (!document.fullscreenElement) {\r\n document.documentElement.requestFullscreen().catch((err) => {\r\n console.log(`Error attempting to enable full-screen mode: ${err.message} (${err.name})`);\r\n });\r\n } else {\r\n if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n }\r\n }\r\n }\r\n\r\n onMounted(() => {\r\n document.addEventListener('fullscreenchange', () => {\r\n fullscreen.value = !!document.fullscreenElement;\r\n });\r\n });\r\n\r\n return {\r\n fullscreen,\r\n toggleFullscreen\r\n };\r\n },\r\n\r\n extends: MiniDSBase,\r\n \r\n props: {\r\n wtml: {\r\n type: Object,\r\n required: true\r\n },\r\n wwtNamespace: {\r\n type: String,\r\n required: true\r\n },\r\n url: {\r\n type: String,\r\n required: true\r\n },\r\n thumbnailUrl: {\r\n type: String,\r\n required: true\r\n },\r\n bgWtml: {\r\n type: String,\r\n required: true\r\n },\r\n bgName: {\r\n type: String,\r\n required: true\r\n },\r\n fgName: {\r\n type: String,\r\n required: true\r\n },\r\n\r\n introText: {\r\n required: true\r\n },\r\n introTitle: {\r\n required: true\r\n }, \r\n },\r\n data() {\r\n return {\r\n showIntro: true,\r\n isMenuOpen: false,\r\n showBgButton: false,\r\n showBgSlider: true,\r\n hiddenIntro: false,\r\n showCatalog: true,\r\n showCatalogButton: true,\r\n\r\n showSplashScreen: true,\r\n imagesetLayers: {} as Record,\r\n layersLoaded: false,\r\n positionSet: false,\r\n imagesetFolder: null as Folder | null,\r\n backgroundImagesets: [] as BackgroundImageset[],\r\n cfOpacity: 0,\r\n layers: {} as Record,\r\n\r\n playing: false,\r\n\r\n showAltAzGrid: false,\r\n showConstellations: false,\r\n\r\n currentAllLayer: null as SpreadSheetLayer | null,\r\n \r\n color0: \"#4c8bff\",\r\n color1: \"#00b27a\",\r\n color2: \"#FF8A2E\",\r\n color3: \"#F7ED5D\",\r\n color4: \"#ff4da0\",\r\n color5: \"#FF533D\",\r\n colorD: \"#45aecb\",\r\n colorRed: \"#ffffff\",\r\n todayColor: \"#D6B004\",\r\n \r\n yrlp: true,\r\n yrlpLayer: null as SpreadSheetLayer | null,\r\n yrqp: true,\r\n yrqpLayer: null as SpreadSheetLayer | null,\r\n imp: true,\r\n impLayer: null as SpreadSheetLayer | null,\r\n bmp: true,\r\n bmpLayer: null as SpreadSheetLayer | null,\r\n bws: true,\r\n bwsLayer: null as SpreadSheetLayer | null,\r\n rs: true,\r\n rsLayer: null as SpreadSheetLayer | null,\r\n \r\n\r\n incomingItemSelect: null as Thumbnail | null,\r\n \r\n sheet: null as SheetType,\r\n showMapTooltip: false,\r\n showTextTooltip: false,\r\n showVideoTooltip: false,\r\n showPlayPauseTooltip: false,\r\n showLocationSelector: false,\r\n showControls: false,\r\n currentTool: \"crossfade\" as ToolType,\r\n tab: 0,\r\n\r\n circle: null as L.Circle | null,\r\n map: null as Map | null,\r\n\r\n selectionProximity: 4,\r\n pointerMoveThreshold: 6,\r\n isPointerMoving: false,\r\n pointerStartPosition: null as { x: number; y: number } | null,\r\n lastClosePt: null as PointData | null\r\n };\r\n },\r\n\r\n mounted() {\r\n\r\n this.waitForReady().then(async () => {\r\n\r\n // Unlike the other things we're hacking here,\r\n // we aren't overwriting a method on a singleton instance (WWTControl)\r\n // or a static method (Constellations, Grids)\r\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n // @ts-ignore\r\n SpreadSheetLayer.prototype.draw = drawSpreadSheetLayer;\r\n\r\n this.setClockSync(false);\r\n\r\n this.imagesetFolder = await this.loadImageCollection({\r\n url: this.wtml.gammaraypulsar,\r\n loadChildFolders: false\r\n });\r\n const children = this.imagesetFolder.get_children() ?? [];\r\n \r\n const layerPromises: Promise[] = [];\r\n children.forEach((item) => {\r\n if (!(item instanceof Place)) { return; }\r\n const imageset = item.get_backgroundImageset() ?? item.get_studyImageset();\r\n if (imageset == null) { return; }\r\n const name = imageset.get_name();\r\n layerPromises.push(this.addImageSetLayer({\r\n url: imageset.get_url(),\r\n mode: \"autodetect\",\r\n name: name,\r\n goto: false\r\n }).then((layer) => {\r\n this.imagesetLayers[name] = layer;\r\n applyImageSetLayerSetting(layer, [\"opacity\", 0]);\r\n return layer;\r\n }));\r\n });\r\n \r\n this.loadImageCollection({\r\n url: this.bgWtml,\r\n loadChildFolders: true,\r\n }).then((_folder) => {\r\n this.curForegroundImagesetName = this.fgName;\r\n this.foregroundOpacity = 0;\r\n this.backgroundImagesets.unshift(\r\n new BackgroundImageset(\"Fermi LAT 8-Year (Gamma Ray)\", \"Fermi LAT 8-year (gamma)\")\r\n );\r\n\r\n tween(0, 50, (value) => { this.foregroundOpacity = value; }, {\r\n time: 7500,\r\n //ease: (t: number) => t * (2 * (1 - t) * 1.75 + t * 0.5),\r\n //done: () => { this.foregroundOpacity = 50; }\r\n });\r\n });\r\n \r\n\r\n this.loadImageCollection({\r\n url: this.bgWtml,\r\n loadChildFolders: true,\r\n });\r\n \r\n this.backgroundImagesets = [...skyBackgroundImagesets];\r\n \r\n this.createTableLayer({\r\n name: \"Young Radio Quiet Pulsars\",\r\n referenceFrame: \"Sky\",\r\n dataCsv: youngRadioQuietPulsarString\r\n }).then((layer) => {\r\n layer.set_lngColumn(1);\r\n layer.set_latColumn(2);\r\n layer.set_markerScale(MarkerScales.screen);\r\n this.applyTableLayerSettings({\r\n id: layer.id.toString(),\r\n settings: [\r\n [\"scaleFactor\", 45],\r\n [\"plotType\", PlotTypes.circle],\r\n [\"color\", Color.fromHex(this.color0)],\r\n //[\"sizeColumn\", 4],\r\n //[\"pointScaleType\", PointScaleTypes.log],\r\n [\"opacity\", 1.0]\r\n ]\r\n });\r\n this.yrqpLayer = layer;\r\n });\r\n \r\n this.createTableLayer({\r\n name: \"Young Radio Loud Pulsars\",\r\n referenceFrame: \"Sky\",\r\n dataCsv: youngRadioLoudPulsarString\r\n }).then((layer) => {\r\n layer.set_lngColumn(1);\r\n layer.set_latColumn(2);\r\n layer.set_markerScale(MarkerScales.screen);\r\n this.applyTableLayerSettings({\r\n id: layer.id.toString(),\r\n settings: [\r\n [\"scaleFactor\", 45],\r\n [\"plotType\", PlotTypes.circle],\r\n [\"color\", Color.fromHex(this.color1)],\r\n //[\"sizeColumn\", 4],\r\n //[\"pointScaleType\", PointScaleTypes.log],\r\n [\"opacity\", 1.0]\r\n ]\r\n });\r\n this.yrlpLayer = layer;\r\n });\r\n \r\n this.createTableLayer({\r\n name: \"Isolated Millisecond Pulsars\",\r\n referenceFrame: \"Sky\",\r\n dataCsv: isolatedMillisecondPulsarString\r\n }).then((layer) => {\r\n layer.set_lngColumn(1);\r\n layer.set_latColumn(2);\r\n layer.set_markerScale(MarkerScales.screen);\r\n this.applyTableLayerSettings({\r\n id: layer.id.toString(),\r\n settings: [\r\n [\"scaleFactor\", 45],\r\n [\"plotType\", PlotTypes.circle],\r\n [\"color\", Color.fromHex(this.color2)],\r\n //[\"sizeColumn\", 4],\r\n //[\"pointScaleType\", PointScaleTypes.log],\r\n [\"opacity\", 1.0]\r\n ]\r\n });\r\n this.impLayer = layer;\r\n });\r\n \r\n this.createTableLayer({\r\n name: \"Binary Millisecond Pulsars\",\r\n referenceFrame: \"Sky\",\r\n dataCsv: binaryMillisecondPulsarString\r\n }).then((layer) => {\r\n layer.set_lngColumn(1);\r\n layer.set_latColumn(2);\r\n layer.set_markerScale(MarkerScales.screen);\r\n this.applyTableLayerSettings({\r\n id: layer.id.toString(),\r\n settings: [\r\n [\"scaleFactor\", 45],\r\n [\"plotType\", PlotTypes.circle],\r\n [\"color\", Color.fromHex(this.color3)],\r\n //[\"sizeColumn\", 4],\r\n //[\"pointScaleType\", PointScaleTypes.log],\r\n [\"opacity\", 1.0]\r\n ]\r\n });\r\n this.bmpLayer = layer;\r\n });\r\n \r\n this.createTableLayer({\r\n name: \"Black Widow System\",\r\n referenceFrame: \"Sky\",\r\n dataCsv: blackWidowSystemString\r\n }).then((layer) => {\r\n layer.set_lngColumn(1);\r\n layer.set_latColumn(2);\r\n layer.set_markerScale(MarkerScales.screen);\r\n this.applyTableLayerSettings({\r\n id: layer.id.toString(),\r\n settings: [\r\n [\"scaleFactor\", 45],\r\n [\"plotType\", PlotTypes.circle],\r\n [\"color\", Color.fromHex(this.color4)],\r\n //[\"sizeColumn\", 4],\r\n //[\"pointScaleType\", PointScaleTypes.log],\r\n [\"opacity\", 1.0]\r\n ]\r\n });\r\n this.bwsLayer = layer;\r\n });\r\n \r\n this.createTableLayer({\r\n name: \"Redback System\",\r\n referenceFrame: \"Sky\",\r\n dataCsv: redbackSystemString\r\n }).then((layer) => {\r\n layer.set_lngColumn(1);\r\n layer.set_latColumn(2);\r\n layer.set_markerScale(MarkerScales.screen);\r\n this.applyTableLayerSettings({\r\n id: layer.id.toString(),\r\n settings: [\r\n [\"scaleFactor\", 45],\r\n [\"plotType\", PlotTypes.circle],\r\n [\"color\", Color.fromHex(this.color5)],\r\n //[\"sizeColumn\", 4],\r\n //[\"pointScaleType\", PointScaleTypes.log],\r\n [\"opacity\", 1.0]\r\n ]\r\n });\r\n this.rsLayer = layer;\r\n });\r\n\r\n this.showControls = !this.mobile;\r\n \r\n this.loadImageCollection({\r\n url: this.bgWtml,\r\n loadChildFolders: true,\r\n }).then((folder) => {\r\n this.curForegroundImagesetName = this.fgName;\r\n this.backgroundImagesets.unshift(\r\n new BackgroundImageset(\"Fermi LAT 8-Year (Gamma Ray)\", \"Fermi LAT 8-year (gamma)\")\r\n );\r\n });\r\n \r\n Promise.all(layerPromises).then(() => {\r\n this.layersLoaded = true;\r\n \r\n // Set all of the imageset layers to be above the spreadsheet layers\r\n //this.resetImagesetLayerOrder();\r\n\r\n const splashScreenListener = (_event: KeyboardEvent) => {\r\n this.showSplashScreen = false;\r\n window.removeEventListener('keyup', splashScreenListener);\r\n };\r\n window.addEventListener('keyup', splashScreenListener);\r\n\r\n window.addEventListener('keyup', (event: KeyboardEvent) => {\r\n if ([\"Esc\", \"Escape\"].includes(event.key) && this.showVideoSheet) {\r\n this.showVideoSheet = false;\r\n }\r\n });\r\n });\r\n \r\n this.loadImageCollection({\r\n url: this.bgWtml,\r\n loadChildFolders: true,\r\n }).then((_folder) => {\r\n this.curBackgroundImagesetName = this.bgName;\r\n this.backgroundImagesets.unshift(\r\n new BackgroundImageset(\"NASA Deep Star Maps (Optical)\", \"Deep Star Maps 2020\")\r\n );\r\n });\r\n\r\n\r\n this.wwtSettings.set_localHorizonMode(true);\r\n this.wwtSettings.set_showAltAzGrid(this.showAltAzGrid);\r\n this.wwtSettings.set_showAltAzGridText(this.showAltAzGrid);\r\n this.wwtSettings.set_showConstellationLabels(this.showConstellations);\r\n this.wwtSettings.set_showConstellationFigures(this.showConstellations);\r\n\r\n // This is kinda horrible, but it works!\r\n\r\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n // @ts-ignore\r\n this.wwtControl._drawSkyOverlays = drawSkyOverlays;\r\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n // @ts-ignore\r\n Constellations.initializeConstellationNames = initializeConstellationNames;\r\n Grids._makeAltAzGridText = makeAltAzGridText;\r\n\r\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n // @ts-ignore\r\n LayerManager._draw = layerManagerDraw;\r\n\r\n // wwtZoomDeg is still 0 if we run this here\r\n // and it was the same in nextTick\r\n // so give just a bit of a delay\r\n setTimeout(() => {\r\n this.positionSet = true;\r\n this.gotoRADecZoom({\r\n raRad: 4.64693913, //this.wwtRARad,\r\n decRad: -0.4977679, //this.wwtDecRad,\r\n zoomDeg: 360,\r\n instant: true, // false this competes with the tween crossfade from optical to radio, needs troubleshooting\r\n });\r\n }, 100);\r\n\r\n });\r\n\r\n },\r\n\r\n computed: {\r\n \r\n crossfadeOpacity: {\r\n get(): number {\r\n return this.cfOpacity;\r\n },\r\n set(o: number) {\r\n if (this.layers.gammafermi) {\r\n applyImageSetLayerSetting(this.layers.gammafermi, [\"opacity\", 0.01 * o]);\r\n }\r\n this.cfOpacity = o;\r\n }\r\n },\r\n\r\n \r\n isLoading(): boolean {\r\n return !this.ready;\r\n },\r\n ready(): boolean {\r\n return this.layersLoaded && this.positionSet;\r\n },\r\n smallSize(): boolean {\r\n return this.$vuetify.display.smAndDown;\r\n },\r\n mobile(): boolean {\r\n return this.smallSize && this.touchscreen;\r\n },\r\n cssVars() {\r\n return {\r\n '--color-default': this.colorD,\r\n '--color-default2': this.colorRed,\r\n\t\t\t\t'--color0':this.color0,\r\n\t\t\t\t'--color1':this.color1,\r\n\t\t\t\t'--color2':this.color2,\r\n\t\t\t\t'--color3':this.color3,\r\n\t\t\t\t'--color4':this.color4,\r\n\t\t\t\t'--color5':this.color5,\r\n '--app-content-height': this.showTextSheet ? '66%' : '100%',\r\n };\r\n },\r\n popoverCssVars() {\r\n const x = this.lastClosePt?.x ?? 0;\r\n const y = this.lastClosePt?.y ?? 0;\r\n\r\n // Note that the canvas takes up the full width\r\n const leftPct = 100 * x / window.innerWidth;\r\n const topPct = 100 * (y - 50) / window.innerHeight;\r\n return {\r\n '--current-color': this.lastClosePt?.color.toString() ?? \"white\",\r\n '--current-left': `${leftPct}%`,\r\n '--current-top': `${topPct}%`\r\n };\r\n },\r\n wwtControl(): WWTControl {\r\n return WWTControl.singleton;\r\n },\r\n wwtRenderContext(): RenderContext {\r\n return this.wwtControl.renderContext;\r\n },\r\n wwtSettings(): Settings {\r\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n // @ts-ignore\r\n return Settings.get_active();\r\n },\r\n \r\n showTextSheet: {\r\n get(): boolean {\r\n return this.sheet === 'text';\r\n },\r\n set(_value: boolean) {\r\n this.selectSheet('text');\r\n this.showTextTooltip = false;\r\n }\r\n },\r\n showVideoSheet: {\r\n get(): boolean {\r\n return this.sheet === \"video\";\r\n },\r\n set(value: boolean) {\r\n this.selectSheet('video');\r\n if (!value) {\r\n const video = document.querySelector(\"#info-video\") as HTMLVideoElement;\r\n video.pause();\r\n }\r\n this.showVideoTooltip = false;\r\n }\r\n },\r\n \r\n curBackgroundImagesetName: {\r\n get(): string {\r\n if (this.wwtBackgroundImageset == null) return \"\";\r\n return this.wwtBackgroundImageset.get_name();\r\n },\r\n set(name: string) {\r\n this.setBackgroundImageByName(name);\r\n }\r\n },\r\n \r\n curForegroundImagesetName: {\r\n get(): string {\r\n if (this.wwtForegroundImageset == null) return \"\";\r\n return this.wwtForegroundImageset.get_name();\r\n },\r\n set(name: string) {\r\n this.setForegroundImageByName(name);\r\n }\r\n },\r\n \r\n foregroundOpacity: {\r\n get(): number {\r\n return this.wwtForegroundOpacity;\r\n },\r\n set(o: number) {\r\n this.setForegroundOpacity(o); \r\n }\r\n },\r\n },\r\n\r\n methods: {\r\n\r\n // JC: When the \"allow imagesets above spreadsheets\" functionality\r\n // gets added into the engine,\r\n // remember to add something like this along with it\r\n setSpreadSheetLayerOrder(id: string, order: number) {\r\n const layer = LayerManager.get_layerList()[id];\r\n const layers = LayerManager.get_allMaps()[layer.get_referenceFrame()].layers;\r\n if (order >= 0) {\r\n const currentIndex = layers.indexOf(layer);\r\n if (currentIndex > -1) {\r\n layers.splice(currentIndex, 1);\r\n }\r\n LayerManager.get_allMaps()[layer.get_referenceFrame()].layers.splice(order, 0, layer);\r\n }\r\n },\r\n\r\n\r\n closeSplashScreen() {\r\n this.showSplashScreen = false;\r\n },\r\n\r\n selectSheet(name: SheetType) {\r\n if (this.sheet == name) {\r\n this.sheet = null;\r\n } else {\r\n this.sheet = name;\r\n }\r\n },\r\n\r\n getImageSetLayerIndex(layer: ImageSetLayer): number {\r\n // find layer in this.wwtActiveLayers\r\n // this.wwtActiveLayers is a dictionary of {0:id1, 1:id2, 2:id3, ...}\r\n // get the key item with the value of layer.id\r\n for (const [key, value] of Object.entries(this.wwtActiveLayers)) {\r\n if (value === layer.id.toString()) {\r\n return Number(key);\r\n }\r\n }\r\n return -1;\r\n },\r\n\r\n closestInView(\r\n point: { x: number, y: number },\r\n threshold?: number\r\n ): PointData | null {\r\n\r\n let minDist = Infinity;\r\n let closestPt: PointData | null = null;\r\n\r\n const rowSeparator = \"\\r\\n\";\r\n const colSeparator = \"\\t\";\r\n\r\n const raDecDeg = this.findRADecForScreenPoint(point);\r\n const target = { ra: D2R * raDecDeg.ra, dec: D2R * raDecDeg.dec };\r\n\r\n const layers = [this.yrlpLayer, this.yrqpLayer, this.impLayer, this.bmpLayer, this.bwsLayer, this.rsLayer];\r\n for (const layer of layers) {\r\n if (layer == null) {\r\n continue;\r\n }\r\n\r\n const inView = layer.getTableDataInView();\r\n const rows = inView.split(rowSeparator);\r\n const header = rows.shift();\r\n if (!header) {\r\n continue;\r\n }\r\n\r\n const lngCol = layer.get_lngColumn();\r\n const latCol = layer.get_latColumn();\r\n const nameCol = 0; // All of the data sets have the name in the first column\r\n const frequencyCol = 3;\r\n\r\n for (const row of rows) {\r\n const values = row.split(colSeparator);\r\n const ra = D2R * Number(values[lngCol]);\r\n const dec = D2R * Number(values[latCol]);\r\n const pt = { ra: ra, dec: dec };\r\n const dist = distance(target.ra, target.dec, pt.ra, pt.dec);\r\n if (dist < minDist) {\r\n closestPt = {\r\n ...point,\r\n ra: ra,\r\n dec: dec,\r\n name: values[nameCol],\r\n frequency: values[frequencyCol],\r\n color: layer.get_color()\r\n };\r\n minDist = dist;\r\n }\r\n }\r\n }\r\n\r\n if (closestPt !== null) {\r\n const closestRADecDeg = { ra: closestPt.ra * R2D, dec: closestPt.dec * R2D };\r\n const closestScreenPoint = this.findScreenPointForRADec(closestRADecDeg);\r\n const pixelDist = Math.sqrt((point.x - closestScreenPoint.x) ** 2 + (point.y - closestScreenPoint.y) ** 2);\r\n if (!threshold || pixelDist < threshold) {\r\n return closestPt;\r\n }\r\n }\r\n return null;\r\n\r\n },\r\n\r\n wwtOnPointerMove(event: PointerEvent) {\r\n if (!this.isPointerMoving && this.pointerStartPosition !== null) {\r\n const dist = Math.sqrt((event.pageX - this.pointerStartPosition.x) ** 2 + (event.pageY - this.pointerStartPosition.y) ** 2);\r\n if (dist > this.pointerMoveThreshold) {\r\n this.isPointerMoving = true;\r\n }\r\n }\r\n this.updateLastClosePoint(event);\r\n },\r\n\r\n wwtOnPointerDown(event: PointerEvent) {\r\n this.isPointerMoving = false;\r\n this.pointerStartPosition = { x: event.pageX, y: event.pageY };\r\n },\r\n\r\n wwtOnPointerUp(event: PointerEvent) {\r\n if (!this.isPointerMoving) {\r\n this.updateLastClosePoint(event);\r\n }\r\n\r\n this.pointerStartPosition = null;\r\n this.isPointerMoving = false;\r\n },\r\n\r\n updateLastClosePoint(event: PointerEvent): void {\r\n const pt = { x: event.offsetX, y: event.offsetY };\r\n const closestPt = this.closestInView(pt, this.selectionProximity);\r\n if (closestPt == null && this.lastClosePt == null) {\r\n return;\r\n }\r\n const needsUpdate =\r\n closestPt == null ||\r\n this.lastClosePt == null ||\r\n this.lastClosePt.ra != closestPt.ra ||\r\n this.lastClosePt.dec != closestPt.dec;\r\n if (needsUpdate) {\r\n this.lastClosePt = closestPt;\r\n }\r\n },\r\n\r\n wwtSmallestFov(): number {\r\n // ignore the possibility of rotation\r\n const w = this.wwtRenderContext.width;\r\n const h = this.wwtRenderContext.height;\r\n const fovH = this.wwtRenderContext.get_fovAngle() * D2R;\r\n const fovW = fovH * w / h;\r\n return Math.min(fovW, fovH);\r\n },\r\n \r\n circleForLocation(latDeg: number, lonDeg: number): L.Circle {\r\n return L.circle([latDeg, lonDeg], {\r\n color: \"#FF0000\",\r\n fillColor: \"#FF0033\",\r\n fillOpacity: 0.5,\r\n radius: 200\r\n });\r\n },\r\n\r\n /* Toggles the hamburger menu when the hamburger icon is clicked */\r\n toggleMenu() {\r\n this.isMenuOpen = !this.isMenuOpen;\r\n this.showCatalog = false; //!this.showCatalog;\r\n this.showCatalogButton = !this.showCatalogButton;\r\n }, \r\n\r\n openCatalog() {\r\n this.showCatalog = !this.showCatalog;\r\n },\r\n\r\n openCatalogButton() {\r\n this.showCatalogButton = !this.showCatalogButton;\r\n },\r\n\r\n /* This is for the \"Toggle description\" in the hamburger menu. It opens the intro container */\r\n openIntro() {\r\n this.showIntro = !this.showIntro;\r\n this.showBgButton = false;\r\n this.showCatalog = true;\r\n this.showCatalogButton = true;\r\n this.isMenuOpen = !this.isMenuOpen;\r\n },\r\n \r\n toggleLink() {\r\n this.isMenuOpen = !this.isMenuOpen;\r\n this.showCatalog = true;\r\n this.showCatalogButton = true;\r\n },\r\n\r\n toggleBgSlider() {\r\n this.showBgSlider = !this.showBgSlider;\r\n this.showIntro = false;\r\n this.showBgButton = false;\r\n this.isMenuOpen = false;\r\n this.showCatalog = true;\r\n this.showCatalogButton = true;\r\n }, \r\n \r\n /* This is for the close button of the intro box */\r\n closeIntro() {\r\n this.showIntro = false;\r\n },\r\n \r\n\r\n // WWT does have all of this functionality built in\r\n // but it doesn't seem to be exposed\r\n // We should do that, but for now we just copy the web engine code\r\n // https://github.com/Carifio24/wwt-webgl-engine/blob/master/engine/wwtlib/Coordinates.cs\r\n altAzToHADec(altRad: number, azRad: number, latRad: number): { ra: number; dec: number; } {\r\n azRad = Math.PI - azRad;\r\n if (azRad < 0) {\r\n azRad += 2 * Math.PI;\r\n }\r\n let ra = Math.atan2(Math.sin(azRad), Math.cos(azRad) * Math.sin(latRad) + Math.tan(altRad) * Math.cos(latRad));\r\n if (ra < 0) {\r\n ra += 2 * Math.PI;\r\n }\r\n const dec = Math.asin(Math.sin(latRad) * Math.sin(altRad) - Math.cos(latRad) * Math.cos(altRad) * Math.cos(azRad));\r\n return { ra, dec };\r\n },\r\n\r\n setLayerOpacityForImageSet(name: string, opacity: number, setting_opacity_from_ui=false) {\r\n const layer = this.imagesetLayers[name];\r\n if (layer != null) {\r\n // update the image opacity in the WWT control\r\n applyImageSetLayerSetting(layer, ['opacity', opacity]);\r\n\r\n // update the value for the slider only if we are not setting the opacity from the UI\r\n if (!setting_opacity_from_ui) {\r\n const selector = `#items div.item[title='${name}'] input.opacity-range[type='range']`;\r\n const el = (document.querySelector(selector) as HTMLInputElement);\r\n if (el != null) {\r\n el.value = `${opacity * 100}`;\r\n }\r\n }\r\n\r\n const toggleSelector = `#items input[type='checkbox'][title='${name}']`;\r\n const el2 = (document.querySelector(toggleSelector) as HTMLInputElement);\r\n // truth table: opacity == 0 and el.checked == false => do nothing\r\n // truth table: opacity == 0 and el.checked == true => set el.checked = false\r\n // truth table: opacity > 0 and el.checked == false => set el.checked = true\r\n // truth table: opacity > 0 and el.checked == true => do nothing\r\n if (el2 != null) {\r\n if (opacity == 0 && el2.checked) {\r\n el2.checked = false;\r\n } else if (opacity > 0 && !el2.checked) {\r\n el2.checked = true;\r\n }\r\n }\r\n \r\n }\r\n },\r\n\t\t\r\n },\r\n\r\n watch: {\r\n showAltAzGrid(show: boolean) {\r\n this.wwtSettings.set_showAltAzGrid(show);\r\n this.wwtSettings.set_showAltAzGridText(show);\r\n },\r\n showConstellations(show: boolean) {\r\n this.wwtSettings.set_showConstellationLabels(show);\r\n this.wwtSettings.set_showConstellationFigures(show);\r\n },\r\n yrqp(on: boolean) {\r\n if (this.yrqpLayer) {\r\n applySpreadSheetLayerSetting(this.yrqpLayer, [\"opacity\", on ? 1.0 : 0.0]);\r\n }\r\n },\r\n yrlp(on: boolean) {\r\n if (this.yrlpLayer) {\r\n applySpreadSheetLayerSetting(this.yrlpLayer, [\"opacity\", on ? 1.0 : 0.0]);\r\n }\r\n },\r\n imp(on: boolean) {\r\n if (this.impLayer) {\r\n applySpreadSheetLayerSetting(this.impLayer, [\"opacity\", on ? 1.0 : 0.0]);\r\n }\r\n },\r\n bmp(on: boolean) {\r\n if (this.bmpLayer) {\r\n applySpreadSheetLayerSetting(this.bmpLayer, [\"opacity\", on ? 1.0 : 0.0]);\r\n }\r\n },\r\n bws(on: boolean) {\r\n if (this.bwsLayer) {\r\n applySpreadSheetLayerSetting(this.bwsLayer, [\"opacity\", on ? 1.0 : 0.0]);\r\n }\r\n }, \r\n rs(on: boolean) {\r\n if (this.rsLayer) {\r\n applySpreadSheetLayerSetting(this.rsLayer, [\"opacity\", on ? 1.0 : 0.0]);\r\n }\r\n } \r\n }\r\n});\r\n\r\n","import { render } from \"./MainContent.vue?vue&type=template&id=b99f14fe&scoped=true&ts=true\"\nimport script from \"./MainContent.vue?vue&type=script&lang=ts\"\nexport * from \"./MainContent.vue?vue&type=script&lang=ts\"\n\nimport \"./MainContent.vue?vue&type=style&index=0&id=b99f14fe&lang=less&scoped=true\"\n\nimport exportComponent from \"C:\\\\Users\\\\adavi\\\\Documents\\\\CosmicDS\\\\minids\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-b99f14fe\"]])\n\nexport default __exports__","import { renderSlot as _renderSlot, Transition as _Transition, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createBlock(_Transition, {\n name: \"expand\",\n onEnter: _ctx.enter,\n onAfterEnter: _ctx.afterEnter,\n onLeave: _ctx.leave\n }, {\n default: _withCtx(() => [\n _renderSlot(_ctx.$slots, \"default\", {}, undefined, true)\n ]),\n _: 3\n }, 8, [\"onEnter\", \"onAfterEnter\", \"onLeave\"]))\n}","\r\nimport { defineComponent } from \"@vue/runtime-core\";\r\n\r\n\r\nexport default defineComponent({\r\n name: \"TransitionExpand\",\r\n\r\n emits: ['enter', 'after-enter', 'leave'],\r\n\r\n methods: {\r\n enter(element: HTMLElement) {\r\n const width = getComputedStyle(element).width;\r\n\r\n element.style.width = width;\r\n element.style.position = \"absolute\";\r\n element.style.visibility = \"hidden\";\r\n element.style.height = \"auto\";\r\n\r\n const height = getComputedStyle(element).height;\r\n\r\n element.style.width = \"\";\r\n element.style.position = \"\";\r\n element.style.visibility = \"visible\";\r\n element.style.height = \"0px\";\r\n\r\n // Force repaint to make sure the\r\n // animation is triggered correctly.\r\n getComputedStyle(element).height;\r\n\r\n // Trigger the animation.\r\n // We use `requestAnimationFrame` because we need\r\n // to make sure the browser has finished\r\n // painting after setting the `height`\r\n // to `0` in the line above.\r\n requestAnimationFrame(() => {\r\n element.style.height = height;\r\n });\r\n\r\n this.$emit('enter');\r\n },\r\n\r\n afterEnter(element: HTMLElement) {\r\n element.style.height = \"auto\";\r\n this.$emit('after-enter');\r\n },\r\n\r\n leave(element: HTMLElement) {\r\n const height = getComputedStyle(element).height;\r\n\r\n element.style.height = height;\r\n\r\n // Force repaint to make sure the\r\n // animation is triggered correctly.\r\n getComputedStyle(element).height;\r\n\r\n requestAnimationFrame(() => {\r\n element.style.height = \"0\";\r\n });\r\n this.$emit('leave');\r\n }\r\n }\r\n});\r\n","import { render } from \"./TransitionExpand.vue?vue&type=template&id=4fd945ad&scoped=true&ts=true\"\nimport script from \"./TransitionExpand.vue?vue&type=script&lang=ts\"\nexport * from \"./TransitionExpand.vue?vue&type=script&lang=ts\"\n\nimport \"./TransitionExpand.vue?vue&type=style&index=0&id=4fd945ad&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\Users\\\\adavi\\\\Documents\\\\CosmicDS\\\\minids\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4fd945ad\"]])\n\nexport default __exports__","import { renderSlot as _renderSlot, Transition as _Transition, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createBlock(_Transition, {\n name: \"expand\",\n onEnter: _ctx.enter,\n onAfterEnter: _ctx.afterEnter,\n onLeave: _ctx.leave\n }, {\n default: _withCtx(() => [\n _renderSlot(_ctx.$slots, \"default\", {}, undefined, true)\n ]),\n _: 3\n }, 8, [\"onEnter\", \"onAfterEnter\", \"onLeave\"]))\n}","\r\nimport { defineComponent } from \"@vue/runtime-core\";\r\n\r\n\r\nexport default defineComponent({\r\n name: \"TransitionExpandTwo\",\r\n\r\n emits: ['enter', 'after-enter', 'leave'],\r\n\r\n methods: {\r\n enter(element: HTMLElement) {\r\n const height = getComputedStyle(element).height;\r\n\r\n element.style.height = height;\r\n element.style.position = \"absolute\";\r\n element.style.visibility = \"hidden\";\r\n element.style.width = \"auto\";\r\n\r\n const width = getComputedStyle(element).width;\r\n\r\n element.style.height = \"\";\r\n element.style.position = \"\";\r\n element.style.visibility = \"visible\";\r\n element.style.width = \"0px\";\r\n\r\n // Force repaint to make sure the\r\n // animation is triggered correctly.\r\n getComputedStyle(element).width;\r\n\r\n // Trigger the animation.\r\n // We use `requestAnimationFrame` because we need\r\n // to make sure the browser has finished\r\n // painting after setting the `width`\r\n // to `0` in the line above.\r\n requestAnimationFrame(() => {\r\n element.style.width = width;\r\n });\r\n\r\n this.$emit('enter');\r\n },\r\n\r\n afterEnter(element: HTMLElement) {\r\n element.style.width = \"auto\";\r\n this.$emit('after-enter');\r\n },\r\n\r\n leave(element: HTMLElement) {\r\n const width = getComputedStyle(element).width;\r\n\r\n element.style.width = width;\r\n\r\n // Force repaint to make sure the\r\n // animation is triggered correctly.\r\n getComputedStyle(element).width;\r\n\r\n requestAnimationFrame(() => {\r\n element.style.width = \"0\";\r\n });\r\n this.$emit('leave');\r\n }\r\n }\r\n});\r\n","import { render } from \"./TransitionExpandTwo.vue?vue&type=template&id=1d1a97de&scoped=true&ts=true\"\nimport script from \"./TransitionExpandTwo.vue?vue&type=script&lang=ts\"\nexport * from \"./TransitionExpandTwo.vue?vue&type=script&lang=ts\"\n\nimport \"./TransitionExpandTwo.vue?vue&type=style&index=0&id=1d1a97de&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\Users\\\\adavi\\\\Documents\\\\CosmicDS\\\\minids\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1d1a97de\"]])\n\nexport default __exports__","// Polyfill for Array.at\r\nconst typedArray = Reflect.getPrototypeOf(Int8Array);\r\nfor (const c of [Array, String, typedArray]) {\r\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n // @ts-ignore\r\n Object.defineProperty(c.prototype, \"at\",\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n { value: function at(n: any) {\r\n // ToInteger() abstract op\r\n n = Math.trunc(n) || 0;\r\n // Allow negative indexing from the end\r\n if (n < 0) n += this.length;\r\n // OOB access is guaranteed to return undefined\r\n if (n < 0 || n >= this.length) return undefined;\r\n // Otherwise, this is just normal property access\r\n return this[n];\r\n },\r\n writable: true,\r\n enumerable: false,\r\n configurable: true });\r\n}\r\n","import { aliases, mdi } from 'vuetify/iconsets/mdi';\r\nimport { createVuetify } from 'vuetify';\r\n\r\n// For test use. Do not include createVuetify()\r\n// see https://next.vuetifyjs.com/en/features/treeshaking/\r\n//import * as components from 'vuetify/components';\r\n//import * as directives from 'vuetify/directives';\r\n\r\n// Translations provided by Vuetify\r\nimport { en } from 'vuetify/locale';\r\n\r\n// Styles\r\nimport 'vuetify/styles';\r\nimport '@mdi/font/css/materialdesignicons.css';\r\n\r\nexport default createVuetify({\r\n // Icon Fonts\r\n icons: {\r\n defaultSet: 'mdi',\r\n aliases,\r\n sets: {\r\n mdi,\r\n },\r\n },\r\n locale: {\r\n locale: 'en',\r\n fallback: 'en',\r\n messages: { en },\r\n },\r\n theme: {\r\n defaultTheme: 'dark',\r\n },\r\n});\r\n\r\n// Export for test.\r\n//export { components, directives };\r\n","import Vue, { createApp } from \"vue\";\r\n\r\nimport GammaRayPulsar from \"./MainContent.vue\";\r\nimport TransitionExpand from \"./TransitionExpand.vue\";\r\nimport TransitionExpandTwo from \"./TransitionExpandTwo.vue\";\r\n\r\nimport \"./polyfills\";\r\n\r\nimport VueSlider from \"vue-slider-component\";\r\nimport 'vue-slider-component/theme/default.css';\r\n\r\nimport Datepicker from '@vuepic/vue-datepicker';\r\nimport '@vuepic/vue-datepicker/dist/main.css';\r\n\r\nimport vuetify from \"../plugins/vuetify\";\r\n\r\nimport { library } from '@fortawesome/fontawesome-svg-core';\r\nimport {\r\n faChevronDown,\r\n faChevronUp,\r\n faGear,\r\n} from '@fortawesome/free-solid-svg-icons';\r\nimport { FontAwesomeIcon, FontAwesomeLayers } from '@fortawesome/vue-fontawesome';\r\nlibrary.add(faChevronDown);\r\nlibrary.add(faChevronUp);\r\nlibrary.add(faGear);\r\n\r\nimport { WWTComponent, wwtPinia } from \"@wwtelescope/engine-pinia\";\r\n\r\nimport Notifications from '@kyvg/vue3-notification';\r\n\r\nimport \"leaflet/dist/leaflet.css\";\r\n\r\n/** v-hide directive taken from https://www.ryansouthgate.com/2020/01/30/vue-js-v-hide-element-whilst-keeping-occupied-space/ */\r\n// Extract the function out, up here, so I'm not writing it twice\r\nconst update = (el: HTMLElement, binding: Vue.DirectiveBinding) => el.style.visibility = (binding.value) ? \"hidden\" : \"\";\r\n\r\ncreateApp(GammaRayPulsar, {\r\n wwtNamespace: \"wwt-minids-gammaraypulsar\",\r\n wtml: { // images are listed in chronological order earliest to latest\r\n gammaraypulsar: \"https://data1.wwtassets.org/packages/2023/04_gammaray/grb_backgrounds.wtml\",\r\n },\r\n url: \"https://web.wwtassets.org/specials/2023/cosmicds-carina/\",\r\n thumbnailUrl: \"https://cdn.worldwidetelescope.org/thumbnails/jwst.jpg\",\r\n bgWtml: \"https://data1.wwtassets.org/packages/2023/04_gammaray/grb_backgrounds.wtml\",\r\n fgName: \"Fermi LAT 8-year (gamma)\",\r\n bgName: \"Deep Star Maps 2020\",\r\n introTitle: \"Explore the Fermi Gamma-Ray Pulsar Catalog!\",\r\n introText: `Before NASA’s Fermi Gamma-ray Space Telescope launched in 2008, only a handful of pulsars, including the Crab, Vela, and Geminga, were known to emit gamma-rays, the highest-energy form of light. Shown here are 294 gamma-ray pulsars detected by Fermi. Young pulsars, formed when massive stars explode, are the slowest rotators, typically spinning about 10 times a second. Paradoxically, their older siblings, called millisecond pulsars (MSPs), spin much faster, up to hundreds of times a second, thanks to the effects of a stream of matter pulled from a companion star. In spider systems, the companion is all but consumed. The most energetic spiders may fully evaporate their companions, leaving behind only an isolated MSP. Studying pulsars provides insights into the interplay of gravity, radiation, and magnetic fields with matter in the most extreme state we can observe directly.`,\r\n})\r\n\r\n // Plugins\r\n .use(wwtPinia)\r\n .use(vuetify)\r\n .use(Notifications)\r\n\r\n // Directives\r\n .directive(\r\n /**\r\n * Hides an HTML element, keeping the space it would have used if it were visible (css: Visibility)\r\n */\r\n \"hide\", {\r\n // Run on initialisation (first render) of the directive on the element\r\n beforeMount(el, binding, _vnode, _prevVnode) {\r\n update(el, binding);\r\n },\r\n // Run on subsequent updates to the value supplied to the directive\r\n updated(el, binding, _vnode, _prevVnode) {\r\n update(el, binding);\r\n }\r\n })\r\n\r\n // Components\r\n .component(\"WorldWideTelescope\", WWTComponent)\r\n .component('font-awesome-icon', FontAwesomeIcon)\r\n .component('font-awesome-layers', FontAwesomeLayers)\r\n .component('vue-slider', VueSlider)\r\n .component('transition-expand', TransitionExpand)\r\n .component('transition-expand-two', TransitionExpandTwo)\r\n .component('date-picker', Datepicker)\r\n\r\n // Mount\r\n .mount(\"#app\");\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));\n\t}\n\tdef['default'] = () => (value);\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"js/\" + chunkId + \".\" + {\"938\":\"256326da\",\"991\":\"085c3589\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","var inProgress = {};\nvar dataWebpackPrefix = \"@minids/gamma-ray-pulsar:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t};\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunk_minids_gamma_ray_pulsar\"] = self[\"webpackChunk_minids_gamma_ray_pulsar\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], () => (__webpack_require__(3395)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["_withScopeId","n","_hoisted_1","id","_hoisted_2","_","rel","href","_hoisted_3","class","_hoisted_4","style","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","target","onmouseover","onmouseout","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","closeIntro","alt","src","width","height","_hoisted_13","_hoisted_14","key","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","render","_ctx","_cache","$props","$setup","$data","$options","_component_WorldWideTelescope","cssVars","default","wwtNamespace","onPointerdown","wwtOnPointerDown","onPointermove","wwtOnPointerMove","onPointerup","wwtOnPointerUp","onClick","toggleMenu","args","fullscreen","toggleFullscreen","isMenuOpen","openIntro","toggleBgSlider","toggleLink","introTitle","introInstructions","name","isLoading","popoverCssVars","lastClosePt","frequency","slice","openCatalog","showCatalogButton","color","colorRed","modelValue","showConstellations","$event","onKeyup","label","color0","yrqp","color1","yrlp","color2","imp","color3","bmp","color5","rs","color4","bws","showCatalog","currentTool","foregroundOpacity","tabindex","type","KeyPressInfo","code","modifiers","_a","_b","_c","_d","this","ctrl","shift","meta","prototype","matches","event","ctrlKey","altKey","shiftKey","metaKey","KeyboardControlSettings","zoomIn","zoomOut","moveUp","_e","moveLeft","_f","moveDown","_g","moveRight","_h","moveAmount","actionTypes","makeListener","actionName","action","_this","e","e_1","next","done","keyPress","value","e_1_1","error","return","call","defaultWindowShape","extends","WWTAwareComponent","props","kcs","data","fullscreenModeActive","resizeObserver","touchscreen","windowShape","created","matchMedia","mounted","screenfull","onFullscreenEvent","ResizeObserver","_entries","onResizeEvent","observe","$el","window","addEventListener","doZoom","doMove","destroyed","unobserve","methods","zoom","x","y","move","clientWidth","clientHeight","blurActiveElement","active","document","activeElement","HTMLElement","blur","computed","fullscreenAvailable","BackgroundImageset","displayName","imagesetName","skyBackgroundImagesets","drawSkyOverlays","Settings","get_showConstellationLabels","Constellations","renderContext","Colors","get_showConstellationFigures","WWTControl","URLHelpers","get_showAltAzGrid","altAzColor","Color","Grids","get_showAltAzGridText","initializeConstellationNames","textSize","Text3dBatch","Object","keys","forEach","centroid","center","Coordinates","get_RA","get_dec","up","Vector3d","get_name","replace","Text3d","makeAltAzGridText","glyphHeight","sign","SpaceTimeController","get_lat","directions","v","text","drawSpreadSheetLayer","opacity","flat","device","version","lastVersion","cleanUp","bufferIsFlat","dirty","prepVertexBuffer","jNow","baseDate","adjustedScale","scaleFactor","astronomical","_markerScale$1","viewCamera","triangleList2d","decay","sky","get_astronomical","timeSeries","draw","get_opacity","triangleList","pointList","depthBuffered","showFarSide","get_showFarSide","scale","_plotType$1","drawTextured","SpreadSheetLayer","texture2d","PushPin","_markerIndex$1","lineList","drawLines","lineList2d","layerManagerDraw","referenceFrame","nested","cosmos","LayerManager","thisMap","enabled","layers","length","frame","showAsPoint","showOrbitPath","matOld","get_world","matOldNonRotating","get_worldBaseNonRotating","oldNominalRadius","get_nominalRadius","reference","computeFrame","referenceFrameType","set_world","Matrix3d","multiplyMatrix","worldMatrix","set_nominalRadius","meanRadius","layer","layerStart","get_startTime","layerEnd","get_endTime","fadeIn","get_fadeType","get_fadeSpan","fadeOut","fadeOpacity","set_astronomical","set_worldBaseNonRotating","youngRadioQuietPulsarCsv","youngRadioLoudPulsarCsv","isolatedMillisecondPulsarCsv","binaryMillisecondPulsarCsv","blackWidowSystemCsv","redbackSystemCsv","D2R","Math","PI","R2D","parseCsvTable","csv","d","grpname","Name","ra","RA","dec","DEC","freq","grptype","keyCode","youngRadioQuietPulsarTable","youngRadioLoudPulsarTable","isolatedMillisecondPulsarTable","binaryMillisecondPulsarTable","blackWidowSystemTable","redbackSystemTable","formatCsvTable","table","concat","map","_i","toString","youngRadioQuietPulsarString","youngRadioLoudPulsarString","isolatedMillisecondPulsarString","binaryMillisecondPulsarString","blackWidowSystemString","redbackSystemString","setup","fullscreenElement","exitFullscreen","documentElement","requestFullscreen","catch","err","console","log","message","MiniDSBase","wtml","required","String","url","thumbnailUrl","bgWtml","bgName","fgName","introText","showIntro","showBgButton","showBgSlider","hiddenIntro","showSplashScreen","imagesetLayers","layersLoaded","positionSet","imagesetFolder","backgroundImagesets","cfOpacity","playing","showAltAzGrid","currentAllLayer","colorD","todayColor","yrlpLayer","yrqpLayer","impLayer","bmpLayer","bwsLayer","rsLayer","incomingItemSelect","sheet","showMapTooltip","showTextTooltip","showVideoTooltip","showPlayPauseTooltip","showLocationSelector","showControls","tab","circle","selectionProximity","pointerMoveThreshold","isPointerMoving","pointerStartPosition","waitForReady","then","setClockSync","loadImageCollection","gammaraypulsar","loadChildFolders","children","get_children","layerPromises","item","Place","imageset","get_backgroundImageset","get_studyImageset","push","addImageSetLayer","get_url","mode","goto","_folder","curForegroundImagesetName","unshift","time","createTableLayer","dataCsv","set_lngColumn","set_latColumn","set_markerScale","applyTableLayerSettings","settings","mobile","folder","Promise","all","splashScreenListener","_event","removeEventListener","includes","showVideoSheet","curBackgroundImagesetName","wwtSettings","set_localHorizonMode","set_showAltAzGrid","set_showAltAzGridText","set_showConstellationLabels","set_showConstellationFigures","wwtControl","_drawSkyOverlays","setTimeout","gotoRADecZoom","raRad","decRad","zoomDeg","instant","crossfadeOpacity","get","set","o","gammafermi","ready","smallSize","$vuetify","display","smAndDown","showTextSheet","leftPct","innerWidth","topPct","innerHeight","wwtRenderContext","_value","selectSheet","video","querySelector","pause","wwtBackgroundImageset","setBackgroundImageByName","wwtForegroundImageset","setForegroundImageByName","wwtForegroundOpacity","setForegroundOpacity","setSpreadSheetLayerOrder","order","get_referenceFrame","currentIndex","indexOf","splice","closeSplashScreen","getImageSetLayerIndex","entries","wwtActiveLayers","Number","closestInView","point","threshold","minDist","Infinity","closestPt","rowSeparator","colSeparator","raDecDeg","findRADecForScreenPoint","inView","getTableDataInView","rows","split","header","lngCol","get_lngColumn","latCol","get_latColumn","nameCol","frequencyCol","row","values","pt","dist","get_color","closestRADecDeg","closestScreenPoint","findScreenPointForRADec","pixelDist","sqrt","pageX","pageY","updateLastClosePoint","offsetX","offsetY","needsUpdate","wwtSmallestFov","w","h","fovH","get_fovAngle","fovW","min","circleForLocation","latDeg","lonDeg","fillColor","fillOpacity","radius","openCatalogButton","altAzToHADec","altRad","azRad","latRad","atan2","sin","cos","tan","asin","setLayerOpacityForImageSet","setting_opacity_from_ui","selector","el","toggleSelector","el2","checked","watch","show","on","__exports__","onEnter","enter","onAfterEnter","afterEnter","onLeave","leave","$slots","undefined","emits","element","getComputedStyle","position","visibility","requestAnimationFrame","$emit","typedArray","Reflect","getPrototypeOf","Int8Array","Array","c","defineProperty","trunc","writable","enumerable","configurable","icons","defaultSet","aliases","sets","mdi","locale","fallback","messages","en","theme","defaultTheme","update","binding","use","wwtPinia","vuetify","directive","beforeMount","_vnode","_prevVnode","updated","component","WWTComponent","TransitionExpand","TransitionExpandTwo","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","m","deferred","O","result","chunkIds","fn","priority","notFulfilled","i","fulfilled","j","every","r","getter","__esModule","a","leafPrototypes","getProto","obj","t","ns","create","def","current","getOwnPropertyNames","definition","f","chunkId","reduce","promises","u","miniCssF","g","globalThis","Function","prop","hasOwnProperty","inProgress","dataWebpackPrefix","l","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","onScriptComplete","prev","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","bind","head","appendChild","Symbol","toStringTag","p","installedChunks","installedChunkData","promise","resolve","reject","Error","loadingEnded","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}