{"version":3,"file":"application.js","mappings":"mBAAA,MAgDAA,EAhDA,MACA,MAAAC,EAAA,KACA,IAAAC,EAAA,GASA,MARA,uCACAC,QAAAC,IACAF,EAAAE,GAAA,CACAC,IAAAC,IACAC,SAAAC,eAAAJ,GAAAK,UAAAH,MAIAJ,GAkCA,OAAWQ,WAxBXC,UACA,IACA,IAAAT,EAAAD,IATA,MACA,IAAAC,EAAAD,IACAW,OAAAC,KAAAX,GAAAC,QAAAW,IACAZ,EAAAY,GAAAT,IAAA,OAOAU,GACA,IAAAC,QAAAC,MAAA,gBACAC,OAAA,OACAC,QAAA,CACA,mCAEAC,KAAAC,KAAAC,UAAA,CACAC,SAAAhB,SAAAC,eAAA,YAAAF,UAGAkB,QAAAR,EAAAS,OACAvB,EAAAwB,OAAArB,IAAAmB,EAAAG,KACAzB,EAAA0B,eAAAvB,IAAAgB,KAAAC,UAAAE,EAAAK,QAAA,SACA3B,EAAA4B,SAAAzB,IAAAmB,EAAAM,SACA,CAAM,MAAAC,GACNC,QAAAC,IAAAF,GACA9B,IACA2B,eAAAvB,IAAA0B,EACA,GAIC,EA9CD,GC4DAG,EA5DA,MACA,MAAAC,EAAA,MACA,MAAAC,EAAA,IAAA7B,SAAAC,eAAA,oBACA6B,EAAA,CACAC,IAAAC,IAA2BH,IAAA3B,UAAA+B,SAAAJ,IAAA3B,WAAA8B,GAC3BE,SAAAF,IAA2BH,IAAA3B,UAAA+B,SAAAJ,IAAA3B,WAAA8B,IAO3B,OAAaF,QAAAK,OALbC,IACA,MAAAC,EAAArC,SAAAC,eAAAmC,GACAC,EAAAC,WAAAC,YAAAF,GACAP,EAAAI,SAAA,IAGG,EAZH,GAcAM,EAAA,MACA,MAAAX,EAAA,IAAA7B,SAAAC,eAAA,gBACA,OACAwC,KAAAC,IACAb,IAAA3B,UAAAwC,EACAb,IAAAc,UAAAR,OAAA,WAEA3B,MAAA,KACAqB,IAAA3B,UAAA,GACA2B,IAAAc,UAAAZ,IAAA,WAGG,EAZH,GAcAa,EAAA,MACA,MAAAf,EAAA,IAAA7B,SAAAC,eAAA,kBACA,OACAwC,KAAA,IAAAZ,IAAAc,UAAAR,OAAA,UACAU,KAAA,IAAAhB,IAAAc,UAAAZ,IAAA,UAEG,EANH,GA4BA,OAAWe,cApBX1C,MAAA2C,IACAP,EAAAhC,QACA,IAAAC,QAAAC,MAAA,uBAAsDqC,SAAc,CAAUpC,OAAA,SAC9EF,EAAAuC,IACApB,EAAAE,MAAAC,IAAA,GACAa,EAAAH,QAEAD,EAAAC,WAAAhC,EAAAwC,SAaWC,UAVX9C,MAAAgC,IACAI,EAAAhC,QACA,IAAAC,QAAAC,MAAA,uBAAsD0B,IAAS,CAAKzB,OAAA,WACpEF,EAAAuC,GACApB,EAAAO,OAAAC,IAEAR,EAAAO,OAAAC,GACAI,EAAAC,WAAAhC,EAAAwC,UAIC,EA1DD,GCKAE,OAAAC,eAAwB3D,EACxB0D,OAAAE,uBAAgC1B","sources":["webpack://centz/./app/javascript/src/fdx_api_explorer.js","webpack://centz/./app/javascript/src/dynamic_app_registration.js","webpack://centz/./app/javascript/application.js"],"sourcesContent":["const FdxApiExplorer = (() => {\n const getElements = () => {\n let elements = {}\n let ids = ['explorerOutput', 'fdxUrl', 'duration']\n ids.forEach((id) => {\n elements[id] = {\n set: (value) => {\n document.getElementById(id).innerHTML = value\n },\n }\n })\n return elements\n }\n\n const clear = () => {\n let elements = getElements()\n Object.keys(elements).forEach((key) => {\n elements[key].set('')\n })\n }\n\n const runRequest = async () => {\n try {\n let elements = getElements()\n clear()\n let response = await fetch('/fdx/explore', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n endpoint: document.getElementById('endpoint').value,\n }),\n })\n let data = await response.json()\n elements.fdxUrl.set(data.url)\n elements.explorerOutput.set(JSON.stringify(data.payload, null, 2))\n elements.duration.set(data.duration)\n } catch (e) {\n console.log(e)\n let elements = getElements()\n elements.explorerOutput.set(e)\n }\n }\n\n return { runRequest }\n})()\n\nexport default FdxApiExplorer\n","const DynamicAppRegistration = (() => {\n const apps = (() => {\n const el = () => document.getElementById(\"applicationCount\")\n const total = {\n add: (num) => { el().innerHTML = parseInt(el().innerHTML) + num },\n subtract: (num) => { el().innerHTML = parseInt(el().innerHTML) - num }\n }\n const remove = (clientId) => {\n const app = document.getElementById(clientId)\n app.parentNode.removeChild(app)\n total.subtract(1)\n }\n return { total, remove }\n })()\n \n const errorMessage = (() => {\n const el = () => document.getElementById(\"errorMessage\")\n return {\n show: (msg) => {\n el().innerHTML = msg\n el().classList.remove(\"hidden\")\n },\n clear: () => {\n el().innerHTML = \"\"\n el().classList.add(\"hidden\")\n }\n }\n })()\n\n const refreshMessage = (() => {\n const el = () => document.getElementById(\"refreshMessage\")\n return {\n show: () => el().classList.remove(\"hidden\"),\n hide: () => el().classList.add(\"hidden\")\n }\n })()\n \n const createFakeApp = async (institutionId) => {\n errorMessage.clear()\n let response = await fetch(`/oauth_applications/${institutionId}/fake`, { method: \"POST\"})\n if (response.ok) {\n apps.total.add(1)\n refreshMessage.show()\n } else {\n errorMessage.show(await response.text())\n }\n }\n const deleteApp = async (clientId) => {\n errorMessage.clear()\n let response = await fetch(`/oauth_applications/${clientId}`, { method: \"DELETE\"})\n if (response.ok) {\n apps.remove(clientId)\n } else {\n apps.remove(clientId)\n errorMessage.show(await response.text())\n }\n }\n return { createFakeApp, deleteApp }\n})()\n\nexport default DynamicAppRegistration\n","// Entry point for the build script in your package.json\n\nimport FdxApiExplorer from \"./src/fdx_api_explorer\";\nimport DynamicAppRegistration from \"./src/dynamic_app_registration\";\n\nwindow.FdxApiExplorer = FdxApiExplorer;\nwindow.DynamicAppRegistration = DynamicAppRegistration;\n"],"names":["fdx_api_explorer","getElements","elements","forEach","id","set","value","document","getElementById","innerHTML","runRequest","async","Object","keys","key","clear","response","fetch","method","headers","body","JSON","stringify","endpoint","data","json","fdxUrl","url","explorerOutput","payload","duration","e","console","log","dynamic_app_registration","apps","el","total","add","num","parseInt","subtract","remove","clientId","app","parentNode","removeChild","errorMessage","show","msg","classList","refreshMessage","hide","createFakeApp","institutionId","ok","text","deleteApp","window","FdxApiExplorer","DynamicAppRegistration"],"sourceRoot":""}