1#!/usr/bin/env node
2import chalk from 'chalk';
3
4import { Command } from './cli';
5import { assertArgs, getProjectRoot } from './utils/args';
6import * as Log from './utils/log';
7
8export const configureCodeSigning: Command = async (argv) => {
9  const args = assertArgs(
10    {
11      // Types
12      '--help': Boolean,
13      '--input': String,
14      // Aliases
15      '-h': '--help',
16      '-i': '--input',
17    },
18    argv ?? []
19  );
20
21  if (args['--help']) {
22    Log.exit(
23      chalk`
24      {bold Description}
25      Configure and validate expo-updates code signing for this project
26
27      {bold Usage}
28        $ npx expo-updates codesigning:configure
29
30        Options
31        -i, --input <string>     Directory containing keys and certificate
32        -h, --help               Output usage information
33    `,
34      0
35    );
36  }
37
38  const { configureCodeSigningAsync } = await import('./configureCodeSigningAsync');
39  return await configureCodeSigningAsync(getProjectRoot(args), {
40    input: args['--input'],
41  });
42};
43