import { createResource, createSignal, onMount, Show } from "solid-js"; import List from "../modules/list"; import CreateDeviceModal from "../modals/create-device-modal"; import DeviceService from "../services/device-service"; import ShowRegistrationCodeModal from "../modals/show-registration-code-modal"; import DeleteIntegrationModal from "../modals/delete-integration-modal"; function DevicesView(props) { const DEVICES_LIST_TYPE = "devices"; const INTEGRATION_LIST_TYPE = "integrations"; const [listType, setListType] = createSignal(DEVICES_LIST_TYPE); const [devices, setDevices] = createSignal([]); const [integrations, { refetch: refetchIntegrations }] = createResource( DeviceService.getIntegrations ); CreateDeviceModal.onDeviceCreated(() => { handleRefreshDevices(); }); onMount(() => { handleRefreshDevices(); DeleteIntegrationModal.onIntegrationDeleted(() => { refetchIntegrations(); }); }); function handleNewDevice() { CreateDeviceModal.Handler.show(); } async function handleRefreshDevices() { let devices = await DeviceService.getDevices(); setDevices(devices); } function handleRegisterIntegration() { ShowRegistrationCodeModal.Handler.show(); } function handleDeleteIntegration(integration) { DeleteIntegrationModal.setIntegration(integration); DeleteIntegrationModal.Handler.show(); } return (