31 lines · 1.3 KB · TypeScript
RawDownload
import type { RelayClientEnvironmentRecord } from "@t3tools/contracts/relay";import type { ConnectedEnvironmentSummary } from "../../state/remote-runtime-types"; export interface EnvironmentSectionsInput {  readonly connectedEnvironments: ReadonlyArray<ConnectedEnvironmentSummary>;  readonly cloudEnvironments: ReadonlyArray<RelayClientEnvironmentRecord> | null;} export interface EnvironmentSections {  readonly localEnvironments: ReadonlyArray<ConnectedEnvironmentSummary>;  readonly connectedCloudEnvironments: ReadonlyArray<ConnectedEnvironmentSummary>;  readonly availableCloudEnvironments: ReadonlyArray<RelayClientEnvironmentRecord>;} export function splitEnvironmentSections(input: EnvironmentSectionsInput): EnvironmentSections {  const savedEnvironmentIds = new Set(    input.connectedEnvironments.map((environment) => environment.environmentId),  );   return {    localEnvironments: input.connectedEnvironments.filter(      (environment) => !environment.isRelayManaged,    ),    connectedCloudEnvironments: input.connectedEnvironments.filter(      (environment) => environment.isRelayManaged,    ),    availableCloudEnvironments: (input.cloudEnvironments ?? []).filter(      (environment) => !savedEnvironmentIds.has(environment.environmentId),    ),  };}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t