Skip to content

Commit 8a1c4b2

Browse files
jthoms1imhoffd
authored andcommitted
feat(integrations): add --web-dir option for capacitor integration (#3895)
1 parent 112a781 commit 8a1c4b2

File tree

1 file changed

+8
-6
lines changed
  • packages/ionic/src/lib/integrations/capacitor

1 file changed

+8
-6
lines changed

packages/ionic/src/lib/integrations/capacitor/index.ts

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { parseArgs } from '@ionic/cli-framework';
12
import { mkdirp } from '@ionic/utils-fs';
23
import * as path from 'path';
34

@@ -15,22 +16,23 @@ export class Integration extends BaseIntegration {
1516
async add(details: IntegrationAddDetails, handlers: IntegrationAddHandlers = {}): Promise<void> {
1617
let name = this.e.project.config.get('name');
1718
let packageId = 'io.ionic.starter';
19+
const options: string[] = [];
1820

1921
if (details.enableArgs) {
20-
if (details.enableArgs[0]) {
21-
name = details.enableArgs[0];
22-
}
22+
const parsedArgs = parseArgs(details.enableArgs);
2323

24-
if (details.enableArgs[1]) {
25-
packageId = details.enableArgs[1];
24+
name = parsedArgs['_'][0] || name;
25+
packageId = parsedArgs['_'][1] || packageId;
26+
if (parsedArgs['web-dir']) {
27+
options.push('--web-dir', parsedArgs['web-dir']);
2628
}
2729
}
2830

2931
await this.installCapacitorCore();
3032
await this.installCapacitorCLI();
3133

3234
await mkdirp(details.root);
33-
await this.e.shell.run('capacitor', ['init', name, packageId], { cwd: details.root });
35+
await this.e.shell.run('capacitor', ['init', name, packageId, ...options], { cwd: details.root });
3436

3537
await super.add(details, handlers);
3638
}

0 commit comments

Comments
 (0)