{"version":3,"file":"InterfacesTab-DLu2fO_O.cjs","sources":["../src/tools/admin/tabs/InterfacesTab.vue"],"sourcesContent":["<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n# See LICENSE.md for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2026, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n  <div>\n    <v-list class=\"list\" data-test=\"interfaceList\">\n      <div v-for=\"openc3_interface in interfaces\" :key=\"openc3_interface\">\n        <v-list-item>\n          <v-list-item-title>{{ openc3_interface }}</v-list-item-title>\n\n          <template #append>\n            <v-btn\n              aria-label=\"Show Interface Details\"\n              icon=\"mdi-eye\"\n              variant=\"text\"\n              @click=\"showInterface(openc3_interface)\"\n            />\n          </template>\n        </v-list-item>\n        <v-divider />\n      </div>\n    </v-list>\n    <output-dialog\n      v-if=\"showDialog\"\n      v-model=\"showDialog\"\n      :content=\"jsonContent\"\n      type=\"Interface\"\n      :name=\"dialogTitle\"\n      @submit=\"dialogCallback\"\n    />\n  </div>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\nimport { OutputDialog } from '@/components'\n\nexport default {\n  components: { OutputDialog },\n  data() {\n    return {\n      interfaces: [],\n      jsonContent: '',\n      dialogTitle: '',\n      showDialog: false,\n    }\n  },\n  mounted() {\n    this.update()\n  },\n  methods: {\n    update() {\n      Api.get('/openc3-api/interfaces').then((response) => {\n        this.interfaces = response.data\n      })\n    },\n    showInterface(name) {\n      Api.get(`/openc3-api/interfaces/${name}`).then((response) => {\n        this.jsonContent = JSON.stringify(response.data, null, '\\t')\n        this.dialogTitle = name\n        this.showDialog = true\n      })\n    },\n    dialogCallback(content) {\n      this.showDialog = false\n    },\n  },\n}\n</script>\n\n<style scoped>\n.list {\n  background-color: var(--color-background-surface-default) !important;\n  overflow-x: hidden;\n}\n</style>\n"],"names":["_sfc_main","OutputDialog","Api","response","name","content","_createElementBlock","_createVNode","_component_v_list","_Fragment","_renderList","$data","openc3_interface","_component_v_list_item","_component_v_btn","$event","$options","_component_v_list_item_title","_component_v_divider","_createBlock","_component_output_dialog"],"mappings":"gYAmDKA,EAAU,CACb,WAAY,CAAA,aAAEC,EAAAA,YAAW,EACzB,MAAO,CACL,MAAO,CACL,WAAY,CAAA,EACZ,YAAa,GACb,YAAa,GACb,WAAY,EACd,CACF,EACA,SAAU,CACR,KAAK,OAAM,CACb,EACA,QAAS,CACP,QAAS,CACPC,EAAAA,GAAI,IAAI,wBAAwB,EAAE,KAAMC,GAAa,CACnD,KAAK,WAAaA,EAAS,IAC7B,CAAC,CACH,EACA,cAAcC,EAAM,CAClBF,KAAI,IAAI,0BAA0BE,CAAI,EAAE,EAAE,KAAMD,GAAa,CAC3D,KAAK,YAAc,KAAK,UAAUA,EAAS,KAAM,KAAM,GAAI,EAC3D,KAAK,YAAcC,EACnB,KAAK,WAAa,EACpB,CAAC,CACH,EACA,eAAeC,EAAS,CACtB,KAAK,WAAa,EACpB,EAEJ,wQA/DEC,qBA0BM,MAAA,KAAA,CAzBJC,EAAAA,YAgBSC,EAAA,CAhBD,MAAM,OAAO,YAAU,oCACxB,IAAsC,kBAA3CF,EAAAA,mBAcMG,EAAAA,SAAA,KAAAC,EAAAA,WAd0BC,EAAA,WAApBC,kBAAZN,EAAAA,mBAcM,MAAA,CAduC,IAAKM,GAAgB,CAChEL,EAAAA,YAWcM,EAAA,KAAA,CARD,iBACT,IAKE,CALFN,EAAAA,YAKEO,EAAA,CAJA,aAAW,yBACX,KAAK,UACL,QAAQ,OACP,QAAKC,GAAEC,EAAA,cAAcJ,CAAgB,2CAP1C,IAA6D,CAA7DL,EAAAA,YAA6DU,EAAA,KAAA,mBAA1C,IAAsB,qCAAnBL,CAAgB,EAAA,CAAA,4BAWxCL,EAAAA,YAAaW,CAAA,oBAITP,EAAA,0BADRQ,EAAAA,YAOEC,EAAA,kBALST,EAAA,gDAAAA,EAAA,WAAUI,GAClB,QAASJ,EAAA,YACV,KAAK,YACJ,KAAMA,EAAA,YACN,SAAQK,EAAA"}