Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 0 additions & 57 deletions src/commands/use.ts

This file was deleted.

185 changes: 5 additions & 180 deletions src/configs/cli.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,7 @@ import type Conf from 'conf';
import {red, yellow} from 'kleur';
import {askForPassword} from '../services/cli.settings.services';
import {getSettingsStore} from '../stores/settings.store';
import type {
CliConfig,
CliConfigData,
CliOrbiterConfig,
CliProfile,
CliSatelliteConfig
} from '../types/cli.config';
import type {CliConfig, CliOrbiterConfig, CliSatelliteConfig} from '../types/cli.config';
import {loadConfig} from '../utils/config.utils';

// Save in https://github.com/sindresorhus/env-paths#pathsconfig
Expand Down Expand Up @@ -43,33 +37,13 @@ export const saveCliConfig = async ({
token,
satellites,
orbiters,
missionControl,
profile
missionControl
}: {
token: JsonnableEd25519KeyIdentity;
satellites: CliSatelliteConfig[];
orbiters: CliOrbiterConfig[] | null;
missionControl: string | null;
profile: CliProfile | null;
}) => {
if (!isDefaultProfile(profile)) {
const profiles = await getProfiles();

await saveProfiles({
...(profiles !== undefined ? profiles : {}),
[profile!]: {
token,
satellites,
...(orbiters !== null && {orbiters}),
...(missionControl !== null && {missionControl})
}
});

await saveUse(profile!);

return;
}

await saveToken(token);
await saveCliSatellites(satellites);

Expand All @@ -80,54 +54,8 @@ export const saveCliConfig = async ({
if (missionControl !== null) {
await saveCliMissionControl(missionControl);
}

await deleteUse();
};

// Use / profile

export const deleteUse = async () => {
await initConfig();

// Guard for TypeScript. initConfig ensures config is initialized or exit.
assertNonNullish(config);

config.delete('use');
};
export const saveUse = async (use: CliProfile) => {
await initConfig();

// Guard for TypeScript. initConfig ensures config is initialized or exit.
assertNonNullish(config);

config.set('use', use);
};
export const getUse = async (): Promise<CliProfile | undefined> => {
await initConfig();

return config?.get('use');
};

// Profile

const saveProfiles = async (profiles: Record<string, CliConfigData>) => {
await initConfig();

// Guard for TypeScript. initConfig ensures config is initialized or exit.
assertNonNullish(config);

config.set('profiles', profiles);
};

export const getProfiles = async (): Promise<Record<string, CliConfigData> | undefined> => {
await initConfig();

return config?.get('profiles');
};

export const isDefaultProfile = (use: CliProfile | undefined | null): boolean =>
use === null || use === undefined || use === 'default';

// Token

const saveToken = async (token: JsonnableEd25519KeyIdentity) => {
Expand All @@ -142,12 +70,6 @@ const saveToken = async (token: JsonnableEd25519KeyIdentity) => {
export const getToken = async (): Promise<JsonnableEd25519KeyIdentity | undefined> => {
await initConfig();

const use = await getUse();

if (!isDefaultProfile(use)) {
return (await getProfiles())?.[use!]?.token;
}

return config?.get('token');
};

Expand All @@ -165,48 +87,13 @@ const saveCliSatellites = async (satellites: CliSatelliteConfig[]) => {
export const getCliSatellites = async (): Promise<CliSatelliteConfig[]> => {
await initConfig();

const use = await getUse();

if (!isDefaultProfile(use)) {
return (await getProfiles())?.[use!]?.satellites ?? [];
}

// Guard for TypeScript. initConfig ensures config is initialized or exit.
assertNonNullish(config);

return config.get('satellites');
};

export const addCliSatellite = async ({
satellite,
profile
}: {
satellite: CliSatelliteConfig;
profile: CliProfile | undefined;
}) => {
if (!isDefaultProfile(profile)) {
const profiles = await getProfiles();
const currentProfile = profiles?.[profile!];

if (currentProfile === undefined) {
throw new Error(`The profile must exist.`);
}

await saveProfiles({
...(profiles !== undefined ? profiles : {}),
[profile!]: {
...currentProfile,
satellites: [
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
...(currentProfile.satellites ?? []).filter(({p}) => p !== satellite.p),
satellite
]
}
});

return;
}

export const addCliSatellite = async ({satellite}: {satellite: CliSatelliteConfig}) => {
const currentSatellites = await getCliSatellites();
await saveCliSatellites([
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
Expand All @@ -229,41 +116,10 @@ const saveCliMissionControl = async (missionControl: string) => {
export const getCliMissionControl = async (): Promise<string | undefined> => {
await initConfig();

const use = await getUse();

if (!isDefaultProfile(use)) {
return (await getProfiles())?.[use!]?.missionControl;
}

return config?.get('missionControl');
};

export const addCliMissionControl = async ({
missionControl,
profile
}: {
missionControl: string;
profile: CliProfile | undefined;
}) => {
if (!isDefaultProfile(profile)) {
const profiles = await getProfiles();
const currentProfile = profiles?.[profile!];

if (currentProfile === undefined) {
throw new Error(`The profile must exist.`);
}

await saveProfiles({
...(profiles !== undefined ? profiles : {}),
[profile!]: {
...currentProfile,
missionControl
}
});

return;
}

export const addCliMissionControl = async ({missionControl}: {missionControl: string}) => {
await saveCliMissionControl(missionControl);
};

Expand All @@ -281,41 +137,10 @@ const saveCliOrbiters = async (orbiters: CliOrbiterConfig[]) => {
export const getCliOrbiters = async (): Promise<CliOrbiterConfig[] | undefined> => {
await initConfig();

const use = await getUse();

if (!isDefaultProfile(use)) {
return (await getProfiles())?.[use!]?.orbiters;
}

return config?.get('orbiters');
};

export const addCliOrbiter = async ({
orbiter,
profile
}: {
orbiter: CliOrbiterConfig;
profile: CliProfile | undefined;
}) => {
if (!isDefaultProfile(profile)) {
const profiles = await getProfiles();
const currentProfile = profiles?.[profile!];

if (currentProfile === undefined) {
throw new Error(`The profile must exist.`);
}

await saveProfiles({
...(profiles !== undefined ? profiles : {}),
[profile!]: {
...currentProfile,
orbiters: [...(currentProfile.orbiters ?? []).filter(({p}) => p !== orbiter.p), orbiter]
}
});

return;
}

export const addCliOrbiter = async ({orbiter}: {orbiter: CliOrbiterConfig}) => {
const currentOrbiters = await getCliOrbiters();
await saveCliOrbiters([...(currentOrbiters ?? []).filter(({p}) => p !== orbiter.p), orbiter]);
};
Expand Down
29 changes: 0 additions & 29 deletions src/help/use.help.ts

This file was deleted.

8 changes: 0 additions & 8 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ import {open} from './commands/open';
import {snapshot} from './commands/snapshot';
import {startStop} from './commands/start-stop';
import {upgrade} from './commands/upgrade';
import {use} from './commands/use';
import {version as versionCommand} from './commands/version';
import {whoami} from './commands/whoami';
import {logHelpClear} from './help/clear.help';
Expand All @@ -27,7 +26,6 @@ import {logHelpSnapshot} from './help/snapshot.help';
import {logHelpStart} from './help/start.help';
import {logHelpStop} from './help/stop.help';
import {logHelpUpgrade} from './help/upgrade.help';
import {logHelpUse} from './help/use.help';
import {logHelpVersion} from './help/version.help';
import {logHelpWhoAmI} from './help/whoami.help';
import {checkNodeVersion} from './utils/env.utils';
Expand Down Expand Up @@ -69,9 +67,6 @@ export const run = async () => {
case 'open':
logHelpOpen(args);
break;
case 'use':
logHelpUse(args);
break;
case 'clear':
logHelpClear(args);
break;
Expand Down Expand Up @@ -150,9 +145,6 @@ export const run = async () => {
case 'whoami':
await whoami();
break;
case 'use':
await use(args);
break;
case 'stop':
await startStop({args, action: 'stop'});
break;
Expand Down
Loading