@shopify/shop-minis-cli 0.0.137 → 0.0.139

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/build/commands/app/index.d.ts +2 -0
  2. package/build/commands/app/index.js +14 -0
  3. package/build/commands/app/index.js.map +1 -0
  4. package/build/commands/app/link.d.ts +2 -0
  5. package/build/commands/app/link.js +55 -0
  6. package/build/commands/app/link.js.map +1 -0
  7. package/build/commands/app/list.d.ts +2 -0
  8. package/build/commands/app/list.js +37 -0
  9. package/build/commands/app/list.js.map +1 -0
  10. package/build/commands/app/unlink.d.ts +2 -0
  11. package/build/commands/app/unlink.js +47 -0
  12. package/build/commands/app/unlink.js.map +1 -0
  13. package/build/commands/codemod/releases/index.js +4 -0
  14. package/build/commands/codemod/releases/index.js.map +1 -1
  15. package/build/commands/codemod/releases/v0-0-139.d.ts +3 -0
  16. package/build/commands/codemod/releases/v0-0-139.js +26 -0
  17. package/build/commands/codemod/releases/v0-0-139.js.map +1 -0
  18. package/build/commands/create-extension/utils/create-extension-files.js +1 -1
  19. package/build/commands/create-extension/utils/create-extension-files.js.map +1 -1
  20. package/build/commands/dev/utils/cache-cleanup.d.ts +1 -0
  21. package/build/commands/dev/utils/cache-cleanup.js +45 -0
  22. package/build/commands/dev/utils/cache-cleanup.js.map +1 -0
  23. package/build/commands/dev/utils/default-screen.d.ts +2 -0
  24. package/build/commands/dev/utils/default-screen.js +186 -0
  25. package/build/commands/dev/utils/default-screen.js.map +1 -0
  26. package/build/commands/dev/utils/interactive-terminal.d.ts +1 -2
  27. package/build/commands/dev/utils/interactive-terminal.js +38 -12
  28. package/build/commands/dev/utils/interactive-terminal.js.map +1 -1
  29. package/build/commands/dev/utils/simulator.js +4 -1
  30. package/build/commands/dev/utils/simulator.js.map +1 -1
  31. package/build/commands/open-default-screen/index.d.ts +14 -0
  32. package/build/commands/open-default-screen/index.js +101 -0
  33. package/build/commands/open-default-screen/index.js.map +1 -0
  34. package/build/commands/open-default-screen/utils/prompt-deeplink-host.d.ts +6 -0
  35. package/build/commands/open-default-screen/utils/prompt-deeplink-host.js +33 -0
  36. package/build/commands/open-default-screen/utils/prompt-deeplink-host.js.map +1 -0
  37. package/build/commands/setup/create.d.ts +2 -0
  38. package/build/commands/setup/create.js +77 -0
  39. package/build/commands/setup/create.js.map +1 -0
  40. package/build/commands/setup/index.js +2 -0
  41. package/build/commands/setup/index.js.map +1 -1
  42. package/build/commands/validate-manifest/index.js +11 -2
  43. package/build/commands/validate-manifest/index.js.map +1 -1
  44. package/build/data/get-linked-apps.d.ts +13 -0
  45. package/build/data/get-linked-apps.js +21 -0
  46. package/build/data/get-linked-apps.js.map +1 -0
  47. package/build/data/gql-client.js +6 -1
  48. package/build/data/gql-client.js.map +1 -1
  49. package/build/data/mini-create.d.ts +22 -0
  50. package/build/data/mini-create.js +39 -0
  51. package/build/data/mini-create.js.map +1 -0
  52. package/build/data/mini-link-app.d.ts +19 -0
  53. package/build/data/mini-link-app.js +29 -0
  54. package/build/data/mini-link-app.js.map +1 -0
  55. package/build/data/mini-unlink-app.d.ts +18 -0
  56. package/build/data/mini-unlink-app.js +25 -0
  57. package/build/data/mini-unlink-app.js.map +1 -0
  58. package/build/data/partners/query.d.ts +32 -0
  59. package/build/data/partners/query.js +123 -0
  60. package/build/data/partners/query.js.map +1 -0
  61. package/build/data/partners/types.d.ts +55 -0
  62. package/build/data/partners/types.js +6 -0
  63. package/build/data/partners/types.js.map +1 -0
  64. package/build/data/types/autogenerated/shop-minis-admin-api/gql.d.ts +32 -0
  65. package/build/data/types/autogenerated/shop-minis-admin-api/gql.js +4 -0
  66. package/build/data/types/autogenerated/shop-minis-admin-api/gql.js.map +1 -1
  67. package/build/data/types/autogenerated/shop-minis-admin-api/graphql.d.ts +213 -0
  68. package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js +365 -0
  69. package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js.map +1 -1
  70. package/build/index.js +4 -0
  71. package/build/index.js.map +1 -1
  72. package/build/schemas/manifest.schema.json +1 -7
  73. package/build/utils/minis-manifest.js +25 -2
  74. package/build/utils/minis-manifest.js.map +1 -1
  75. package/build/utils/sync-manifest.d.ts +5 -0
  76. package/build/utils/sync-manifest.js +23 -0
  77. package/build/utils/sync-manifest.js.map +1 -0
  78. package/package.json +2 -2
  79. package/scripts/graphql-codegen.ts +8 -2
@@ -2,6 +2,8 @@ import chalk from 'chalk';
2
2
  import open from 'open';
3
3
  import { androidHomeExists } from '../../config.js';
4
4
  import { LoadingStateHandlers } from '../../../utils/loading-state-handlers.js';
5
+ import { setDefaultScreen, removeDefaultScreen, } from '../../open-default-screen/index.js';
6
+ import { promptDefaultScreen } from './default-screen.js';
5
7
  import { maybeLaunchEmulator, promptForAndroidDevices } from './android.js';
6
8
  import { getBundleUrl, getDeeplink } from './deeplink.js';
7
9
  import { DEV_PANEL_BASE_URL } from './metro/metro-server-middleware.js';
@@ -64,6 +66,9 @@ export class InteractiveTerminal {
64
66
  › Press ${chalk.cyan.bold(`q`)} │ Print QR code in terminal. Scan to open your Shop Mini on an iOS device with Shop installed
65
67
  › Press ${chalk.cyan.bold(`d`)} │ Open Developer Dashboard in web browser
66
68
 
69
+ › Press ${chalk.cyan.bold(`s`)} │ Set the default screen
70
+ › Press ${chalk.cyan.bold(`r`)} │ Remove the default screen
71
+
67
72
  ${chalk.dim('Press Ctrl+C to exit.')}`);
68
73
  }
69
74
  start() {
@@ -99,16 +104,24 @@ ${chalk.dim('Press Ctrl+C to exit.')}`);
99
104
  const device = await promptForAndroidDevices();
100
105
  if (device) {
101
106
  if (device.type === 'emulator') {
107
+ let deepLink = await promptDefaultScreen();
108
+ // Check if deepLink is null and set it via this.getDeeplink if it is
109
+ if (deepLink === null) {
110
+ deepLink = getDeeplink(this.miniHandle, this.options); // Set deepLink via this.getDeeplink
111
+ }
102
112
  this.loadingHandlers.loadingStart('Launching emulator');
103
113
  const emulatorId = await maybeLaunchEmulator(device.name);
104
114
  if (!emulatorId) {
105
115
  this.loadingHandlers.loadingEnd('fail', `Couldn't launch emulator ${device.name}`);
106
116
  break;
107
117
  }
108
- await this.startApp(Platform.Android, emulatorId);
118
+ await this.startApp(Platform.Android, emulatorId, deepLink);
109
119
  }
110
120
  else {
111
- await this.startApp(Platform.Android, device.name);
121
+ const deepLink = await promptDefaultScreen();
122
+ if (deepLink === null)
123
+ break;
124
+ await this.startApp(Platform.Android, device.name, deepLink);
112
125
  }
113
126
  }
114
127
  else {
@@ -123,9 +136,14 @@ ${chalk.dim('Press Ctrl+C to exit.')}`);
123
136
  clearTerminal();
124
137
  const simulator = await promptForSimulator();
125
138
  if (simulator) {
126
- this.loadingHandlers.loadingStart('Launching simulator');
139
+ let deepLink = await promptDefaultScreen();
140
+ // Check if deepLink is null and set it via this.getDeeplink if it is
141
+ if (deepLink === null) {
142
+ deepLink = getDeeplink(this.miniHandle, this.options); // Set deepLink via this.getDeeplink
143
+ }
144
+ this.loadingHandlers.loadingStart('Launching simulator\n');
127
145
  await bootSimulator(simulator.udid);
128
- await this.startApp(Platform.IOS, simulator.udid);
146
+ await this.startApp(Platform.IOS, simulator.udid, deepLink);
129
147
  }
130
148
  else {
131
149
  console.log('\nNo simulator was selected\n');
@@ -133,7 +151,18 @@ ${chalk.dim('Press Ctrl+C to exit.')}`);
133
151
  break;
134
152
  }
135
153
  case 'q': {
136
- await this.printDeeplinkQRCode();
154
+ const deepLink = await promptDefaultScreen();
155
+ if (deepLink === null)
156
+ break;
157
+ await this.printDeeplinkQRCode(deepLink);
158
+ break;
159
+ }
160
+ case 's': {
161
+ await setDefaultScreen(this.options);
162
+ break;
163
+ }
164
+ case 'r': {
165
+ await removeDefaultScreen();
137
166
  break;
138
167
  }
139
168
  case 'd': {
@@ -163,17 +192,17 @@ ${chalk.dim('Press Ctrl+C to exit.')}`);
163
192
  console.log(`See ${chalk.blue.underline.bold('https://developer.android.com/studio/command-line/variables')}`);
164
193
  await this.waitForAnyKeyAndPrintInstructions();
165
194
  }
166
- async printDeeplinkQRCode() {
195
+ async printDeeplinkQRCode(deepLink) {
167
196
  console.log('\n');
168
- await printQRCode(getDeeplink(this.miniHandle, this.options, true));
197
+ await printQRCode(deepLink);
169
198
  console.log('Scan the QR code to open Shop Mini on your device (requires the Shop app to be installed)\n');
170
199
  }
171
- async startApp(platform, deviceId) {
200
+ async startApp(platform, deviceId, deepLink) {
172
201
  try {
173
202
  await startApp({
174
203
  platform,
175
204
  deviceId,
176
- deeplink: this.deeplink,
205
+ deeplink: deepLink,
177
206
  buildType: this.options.buildType,
178
207
  snapshotVersion: this.options.snapshotVersion,
179
208
  }, this.loadingHandlers);
@@ -182,8 +211,5 @@ ${chalk.dim('Press Ctrl+C to exit.')}`);
182
211
  this.loadingHandlers.loadingEnd('fail', err?.message || err);
183
212
  }
184
213
  }
185
- get deeplink() {
186
- return getDeeplink(this.miniHandle, this.options);
187
- }
188
214
  }
189
215
  //# sourceMappingURL=interactive-terminal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interactive-terminal.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/interactive-terminal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactive-terminal.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/interactive-terminal.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import prompts from 'prompts';
6
6
  import { outputDebug } from '@shopify/cli-kit/node/output';
7
7
  import { PATHS } from '../../config.js';
8
8
  import { execAsync } from '../../../utils/exec-async-child-process.js';
9
+ import { cleanupMinisCache } from './cache-cleanup.js';
9
10
  async function getSelectableSimulators() {
10
11
  const { stdout } = await execAsync('xcrun simctl list devices --json');
11
12
  const simctlOutput = JSON.parse(stdout.join(''));
@@ -58,7 +59,9 @@ export async function getInstalledShopVersion(udid) {
58
59
  build,
59
60
  };
60
61
  }
61
- catch {
62
+ catch (error) {
63
+ console.error('\nFailed to get Shop version');
64
+ await cleanupMinisCache();
62
65
  return null;
63
66
  }
64
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"simulator.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/simulator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulator.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/simulator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { Command } from 'commander';
2
+ import { BuildType } from '../dev/utils/types.js';
3
+ export interface OpenDefaultScreenCommandOptions {
4
+ verbose?: boolean;
5
+ android?: string;
6
+ ios?: string;
7
+ qr?: boolean;
8
+ buildType: BuildType;
9
+ snapshotVersion?: string;
10
+ }
11
+ export declare const command: Command;
12
+ export declare function setDefaultScreen(options: OpenDefaultScreenCommandOptions): Promise<void>;
13
+ export declare function removeDefaultScreen(): Promise<void>;
14
+ export declare function openDefaultScreen(options: OpenDefaultScreenCommandOptions): Promise<void>;
@@ -0,0 +1,101 @@
1
+ import { Command, Option } from 'commander';
2
+ import { handler as handleError } from '@shopify/cli-kit/node/error';
3
+ import { outputDebug } from '@shopify/cli-kit/node/output';
4
+ import { promptDefaultScreen, removeEnvConfig, } from '../dev/utils/default-screen.js';
5
+ import { maybeLaunchEmulator, promptForAndroidDevices, } from '../dev/utils/android.js';
6
+ import { bootSimulator, promptForSimulator } from '../dev/utils/simulator.js';
7
+ import { printQRCode } from '../dev/utils/qr-code.js';
8
+ import { Platform } from '../dev/utils/platform.js';
9
+ import { startApp } from '../dev/utils/start-app/start-app.js';
10
+ import { BuildType } from '../dev/utils/types.js';
11
+ import { LoadingStateHandlers } from '../../utils/loading-state-handlers.js';
12
+ import { promptDeeplinkHost } from './utils/prompt-deeplink-host.js';
13
+ export const command = new Command()
14
+ .name('open-default-screen')
15
+ .description('Open your default screen in the Shop app')
16
+ .option('--verbose', 'print debugging messages')
17
+ .option('--android', 'Open the deeplink in an Android device. Prompts available devices if no device id is provided')
18
+ .option('--qr', 'Print the deeplink as a QR code')
19
+ .option('--ios', 'Open the deeplink in an iOS device. Prompts available devices if no device id is provided')
20
+ .addOption(new Option('--build-type <buildType>', 'build type')
21
+ .choices(Object.values(BuildType))
22
+ .default(BuildType.Release))
23
+ .addOption(new Option('--snapshot-version <version>', 'specify the snapshot version to use. (example: 2.100.0+544)').implies({ buildType: 'snapshot' }))
24
+ .action(openDefaultScreen);
25
+ export async function setDefaultScreen(options) {
26
+ validateOptions(options);
27
+ const deepLink = await promptDefaultScreen(true); // This will reset the configuration
28
+ outputDebug(`Selected default screen: ${deepLink}`);
29
+ }
30
+ export async function removeDefaultScreen() {
31
+ await removeEnvConfig();
32
+ console.log('Default screen removed');
33
+ }
34
+ export async function openDefaultScreen(options) {
35
+ try {
36
+ validateOptions(options);
37
+ outputDebug(`Running open-default-screen with options: ${JSON.stringify(options)}`);
38
+ const deepLink = await promptDefaultScreen();
39
+ if (!deepLink) {
40
+ throw new Error('A new default screen must be selected');
41
+ }
42
+ outputDebug(`Selected default screen: ${deepLink}`);
43
+ let deeplinkHost = options;
44
+ if (!deeplinkHost.qr && !deeplinkHost.ios && !deeplinkHost.android) {
45
+ deeplinkHost = await promptDeeplinkHost();
46
+ }
47
+ let platform = null;
48
+ let deviceId = null;
49
+ if (deeplinkHost.ios) {
50
+ const simulator = await promptForSimulator();
51
+ if (!simulator) {
52
+ throw new Error('An iOS device must be selected');
53
+ }
54
+ outputDebug(`Selected iOS device: ${JSON.stringify(simulator)}`);
55
+ await bootSimulator(simulator.udid);
56
+ platform = Platform.IOS;
57
+ deviceId = simulator.udid;
58
+ }
59
+ if (deeplinkHost.android) {
60
+ const device = await promptForAndroidDevices();
61
+ if (!device) {
62
+ throw new Error('An android device must be selected');
63
+ }
64
+ outputDebug(`Selected android device: ${JSON.stringify(device)}`);
65
+ platform = Platform.Android;
66
+ if (device.type === 'emulator') {
67
+ const emulatorId = await maybeLaunchEmulator(device.name);
68
+ if (!emulatorId) {
69
+ throw new Error(`Emulator ${device.name} could not be launched`);
70
+ }
71
+ deviceId = emulatorId;
72
+ }
73
+ else {
74
+ deviceId = device.name;
75
+ }
76
+ }
77
+ if (platform && deviceId) {
78
+ await startApp({
79
+ platform,
80
+ deviceId,
81
+ deeplink: deepLink,
82
+ buildType: options.buildType,
83
+ snapshotVersion: options.snapshotVersion,
84
+ }, new LoadingStateHandlers());
85
+ }
86
+ if (deeplinkHost.qr) {
87
+ // We want universal links for the QR code, so using the deep link here is fine.
88
+ await printQRCode(deepLink);
89
+ }
90
+ }
91
+ catch (err) {
92
+ delete err.stack; // delete the stack to avoid verbose logging in case of unhandled errors
93
+ await handleError(err);
94
+ }
95
+ }
96
+ function validateOptions({ ios, android }) {
97
+ if (ios && android) {
98
+ throw new Error('Options --ios and --android cannot be used at the same time');
99
+ }
100
+ }
101
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/open-default-screen/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export interface DeeplinkHost {
2
+ qr?: boolean;
3
+ ios?: boolean;
4
+ android?: boolean;
5
+ }
6
+ export declare function promptDeeplinkHost(): Promise<DeeplinkHost>;
@@ -0,0 +1,33 @@
1
+ import prompts from 'prompts';
2
+ const HOSTS = {
3
+ IOS: {
4
+ title: 'iOS',
5
+ value: 'ios',
6
+ },
7
+ ANDROID: {
8
+ title: 'Android',
9
+ value: 'android',
10
+ },
11
+ QR: {
12
+ title: 'Print a QR code',
13
+ value: 'qr',
14
+ },
15
+ };
16
+ export async function promptDeeplinkHost() {
17
+ const { device } = await prompts({
18
+ type: 'select',
19
+ name: 'device',
20
+ message: 'Select a device to open the default screen',
21
+ choices: [HOSTS.IOS, HOSTS.ANDROID, HOSTS.QR],
22
+ }, {
23
+ onCancel: () => {
24
+ throw new Error('A device must be selected');
25
+ },
26
+ });
27
+ return {
28
+ ios: device === HOSTS.IOS.value,
29
+ android: device === HOSTS.ANDROID.value,
30
+ qr: device === HOSTS.QR.value,
31
+ };
32
+ }
33
+ //# sourceMappingURL=prompt-deeplink-host.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-deeplink-host.js","sourceRoot":"","sources":["../../../../src/commands/open-default-screen/utils/prompt-deeplink-host.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,MAAM,KAAK,GAAG;IACZ,GAAG,EAAE;QACH,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,KAAK;KACb;IACD,OAAO,EAAE;QACP,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,SAAS;KACjB;IACD,EAAE,EAAE;QACF,KAAK,EAAE,iBAAiB;QACxB,KAAK,EAAE,IAAI;KACZ;CACF,CAAA;AAQD,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,OAAO,CAC5B;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,4CAA4C;QACrD,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;KAC9C,EACD;QACE,QAAQ,EAAE,GAAG,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;QAC9C,CAAC;KACF,CACF,CAAA;IACD,OAAO;QACL,GAAG,EAAE,MAAM,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK;QAC/B,OAAO,EAAE,MAAM,KAAK,KAAK,CAAC,OAAO,CAAC,KAAK;QACvC,EAAE,EAAE,MAAM,KAAK,KAAK,CAAC,EAAE,CAAC,KAAK;KAC9B,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Command } from 'commander';
2
+ export declare const command: Command;
@@ -0,0 +1,77 @@
1
+ import path from 'node:path';
2
+ import fs from 'node:fs';
3
+ import { Command } from 'commander';
4
+ import { renderError, renderSelectPrompt, renderSuccess, } from '@shopify/cli-kit/node/ui';
5
+ import _ from 'lodash';
6
+ import { fetchAllOrgs, fetchAppsForOrg, token, } from '../../data/partners/query.js';
7
+ import { miniCreate } from '../../data/mini-create.js';
8
+ import { getMiniManifest } from '../../utils/minis-manifest.js';
9
+ import { syncManifest } from '../../utils/sync-manifest.js';
10
+ export const command = new Command()
11
+ .name('create')
12
+ .description('Create a new Shop Mini')
13
+ .action(async () => {
14
+ const envFilePath = path.join(process.cwd(), '.env');
15
+ let envFileContents = '';
16
+ if (fs.existsSync(envFilePath)) {
17
+ envFileContents = fs.readFileSync(envFilePath, 'utf-8');
18
+ // Prevent creating a new Mini if SHOP_MINIS_API_KEY is already set
19
+ if (envFileContents.includes('SHOP_MINIS_API_KEY')) {
20
+ console.error('SHOP_MINIS_API_KEY is already set in your .env file.');
21
+ return;
22
+ }
23
+ }
24
+ const { handle: miniHandle, name: miniName } = getMiniManifest();
25
+ // Select the organization
26
+ const organizations = await fetchAllOrgs();
27
+ const orgId = (await renderSelectPrompt({
28
+ message: 'Select your organization',
29
+ choices: organizations.map(org => ({
30
+ label: org.businessName,
31
+ value: org.id,
32
+ })),
33
+ }));
34
+ // Select the app
35
+ const apps = await fetchAppsForOrg(orgId);
36
+ const appId = (await renderSelectPrompt({
37
+ message: 'Select your app',
38
+ choices: apps.apps.map(app => ({
39
+ label: app.title,
40
+ value: app.id,
41
+ })),
42
+ }));
43
+ const selectedApp = apps.apps.find(app => app.id === appId);
44
+ const result = await miniCreate({
45
+ name: miniName,
46
+ handle: miniHandle ?? _.kebabCase(miniName),
47
+ appApiKey: selectedApp.apiKey,
48
+ partnersAccessToken: await token(),
49
+ });
50
+ if (result.userErrors.length > 0) {
51
+ renderError({
52
+ headline: 'Error creating Shop Mini',
53
+ body: result.userErrors.map(error => error.message),
54
+ });
55
+ return;
56
+ }
57
+ // Append the new SHOP_MINIS_API_KEY to the .env file
58
+ envFileContents += `\nSHOP_MINIS_API_KEY=${result.token}`;
59
+ fs.writeFileSync(envFilePath, envFileContents, {
60
+ encoding: 'utf-8',
61
+ });
62
+ // Sync the manifest
63
+ if (result.mini) {
64
+ syncManifest(result.mini);
65
+ renderSuccess({
66
+ headline: 'Shop Mini created',
67
+ body: [
68
+ 'Shop Mini with handle',
69
+ {
70
+ bold: result.mini.handle,
71
+ },
72
+ 'has been created.',
73
+ ],
74
+ });
75
+ }
76
+ });
77
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/setup/create.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { SHOP_MINIS_ADMIN_API_KEY } from '../config.js';
8
8
  import { acceptInvitation } from '../../data/accept-invitation.js';
9
9
  import { getMiniBasePath } from '../../utils/path.js';
10
10
  import { extractIdFromGID } from '../../utils/extract-id-gid.js';
11
+ import { command as createCommand } from './create.js';
11
12
  function onCancel() {
12
13
  console.log('\nCancelled setting up a new Shop Mini\n');
13
14
  process.exit(0);
@@ -16,6 +17,7 @@ export function loadCommand(parentProgram) {
16
17
  const command = new Command()
17
18
  .name('setup')
18
19
  .description('Set up a new Shop Mini')
20
+ .addCommand(createCommand, { hidden: true }) // TODO: remove hidden
19
21
  .action(async () => {
20
22
  const { confirmInvitationEmail } = await prompts.prompt({
21
23
  type: 'confirm',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/setup/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/setup/index.ts"],"names":[],"mappings":"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"}
@@ -15,11 +15,20 @@ export const command = new Command()
15
15
  outputSuccess('Your manifest is valid');
16
16
  }
17
17
  else {
18
- throw new AbortError('Invalid Manifest. Errors:', errors.map(error => ` • ${error}`).join('\n'));
18
+ const errorMessages = errors
19
+ .map((error) => {
20
+ if (typeof error === 'object' &&
21
+ error.field === 'trusted_domains') {
22
+ return ` • ${error.message} (${error.invalidDomain})`;
23
+ }
24
+ return ` • ${error}`;
25
+ })
26
+ .join('\n');
27
+ throw new AbortError('Invalid Manifest. Errors:', errorMessages);
19
28
  }
20
29
  }
21
30
  catch (err) {
22
- delete err.stack; // delete the stack to avoid a verbose error in case the manifest file does not exist
31
+ delete err.stack;
23
32
  await handleError(err);
24
33
  }
25
34
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/validate-manifest/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AACjC,OAAO,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,8BAA8B,CAAA;AACvE,OAAO,EAAC,UAAU,EAAE,OAAO,IAAI,WAAW,EAAC,MAAM,6BAA6B,CAAA;AAE9E,OAAO,EACL,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,+BAA+B,CAAA;AAStC,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE;KACjC,IAAI,CAAC,mBAAmB,CAAC;KACzB,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CACL,eAAe,EACf,gCAAgC,EAChC,qBAAqB,CACtB;KACA,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;KAC/C,MAAM,CAAC,KAAK,EAAE,OAAuC,EAAE,EAAE;IACxD,WAAW,CAAC,oCAAoC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IAE/D,IAAI;QACF,MAAM,EAAC,KAAK,EAAE,MAAM,EAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACtD,IAAI,KAAK,EAAE;YACT,aAAa,CAAC,wBAAwB,CAAC,CAAA;SACxC;aAAM;YACL,MAAM,IAAI,UAAU,CAClB,2BAA2B,EAC3B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/C,CAAA;SACF;KACF;IAAC,OAAO,GAAG,EAAE;QACZ,OAAQ,GAAa,CAAC,KAAK,CAAA,CAAC,qFAAqF;QACjH,MAAM,WAAW,CAAC,GAAG,CAAC,CAAA;KACvB;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,WAAW,CAAC,aAAsB;IAChD,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;AACnC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/validate-manifest/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AACjC,OAAO,EAAC,WAAW,EAAE,aAAa,EAAC,MAAM,8BAA8B,CAAA;AACvE,OAAO,EAAC,UAAU,EAAE,OAAO,IAAI,WAAW,EAAC,MAAM,6BAA6B,CAAA;AAE9E,OAAO,EACL,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,+BAA+B,CAAA;AAStC,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE;KACjC,IAAI,CAAC,mBAAmB,CAAC;KACzB,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CACL,eAAe,EACf,gCAAgC,EAChC,qBAAqB,CACtB;KACA,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;KAC/C,MAAM,CAAC,KAAK,EAAE,OAAuC,EAAE,EAAE;IACxD,WAAW,CAAC,oCAAoC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IAE/D,IAAI;QACF,MAAM,EAAC,KAAK,EAAE,MAAM,EAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACtD,IAAI,KAAK,EAAE;YACT,aAAa,CAAC,wBAAwB,CAAC,CAAA;SACxC;aAAM;YACL,MAAM,aAAa,GAAG,MAAM;iBACzB,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;gBAClB,IACE,OAAO,KAAK,KAAK,QAAQ;oBACzB,KAAK,CAAC,KAAK,KAAK,iBAAiB,EACjC;oBACA,OAAO,OAAO,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,aAAa,GAAG,CAAA;iBACvD;gBACD,OAAO,OAAO,KAAK,EAAE,CAAA;YACvB,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAA;YAEb,MAAM,IAAI,UAAU,CAAC,2BAA2B,EAAE,aAAa,CAAC,CAAA;SACjE;KACF;IAAC,OAAO,GAAG,EAAE;QACZ,OAAQ,GAAa,CAAC,KAAK,CAAA;QAC3B,MAAM,WAAW,CAAC,GAAG,CAAC,CAAA;KACvB;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,UAAU,WAAW,CAAC,aAAsB;IAChD,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;AACnC,CAAC"}
@@ -0,0 +1,13 @@
1
+ export declare const getLinkedApps: () => Promise<{
2
+ __typename?: "Mini" | undefined;
3
+ productionShopifyApp: {
4
+ __typename?: "ShopifyApp" | undefined;
5
+ id: string;
6
+ title: string;
7
+ };
8
+ developmentShopifyApps: {
9
+ __typename?: "ShopifyApp" | undefined;
10
+ id: string;
11
+ title: string;
12
+ }[];
13
+ }>;
@@ -0,0 +1,21 @@
1
+ import { graphql } from './types/autogenerated/shop-minis-admin-api/gql.js';
2
+ import { client } from './gql-client.js';
3
+ const getLinkedAppsQuery = graphql(/* GraphQL */ `
4
+ query LinkedApps {
5
+ mini {
6
+ productionShopifyApp {
7
+ id
8
+ title
9
+ }
10
+ developmentShopifyApps {
11
+ id
12
+ title
13
+ }
14
+ }
15
+ }
16
+ `);
17
+ export const getLinkedApps = async () => {
18
+ const data = await client.request(getLinkedAppsQuery, {}, {});
19
+ return data.mini;
20
+ };
21
+ //# sourceMappingURL=get-linked-apps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-linked-apps.js","sourceRoot":"","sources":["../../src/data/get-linked-apps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,mDAAmD,CAAA;AACzE,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAA;AAEtC,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;;;;;;;;;;;;;CAahD,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IACtC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;IAE7D,OAAO,IAAI,CAAC,IAAK,CAAA;AACnB,CAAC,CAAA"}
@@ -1,9 +1,14 @@
1
1
  import { GraphQLClient } from 'graphql-request';
2
2
  import { SHOP_MINIS_ADMIN_API, SHOP_MINIS_ADMIN_API_KEY, } from '../commands/config.js';
3
- export const clientWithoutAuthorization = new GraphQLClient(SHOP_MINIS_ADMIN_API);
3
+ export const clientWithoutAuthorization = new GraphQLClient(SHOP_MINIS_ADMIN_API, {
4
+ headers: {
5
+ 'X-Shop-Minis-Experimental': '1',
6
+ },
7
+ });
4
8
  export const client = new GraphQLClient(SHOP_MINIS_ADMIN_API, {
5
9
  headers: {
6
10
  Authorization: `Bearer ${SHOP_MINIS_ADMIN_API_KEY}`,
11
+ 'X-Shop-Minis-Experimental': '1',
7
12
  },
8
13
  });
9
14
  //# sourceMappingURL=gql-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gql-client.js","sourceRoot":"","sources":["../../src/data/gql-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAA;AAE7C,OAAO,EACL,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,uBAAuB,CAAA;AAE9B,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,aAAa,CACzD,oBAAoB,CACrB,CAAA;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,oBAAoB,EAAE;IAC5D,OAAO,EAAE;QACP,aAAa,EAAE,UAAU,wBAAwB,EAAE;KACpD;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"gql-client.js","sourceRoot":"","sources":["../../src/data/gql-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAA;AAE7C,OAAO,EACL,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,uBAAuB,CAAA;AAE9B,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,aAAa,CACzD,oBAAoB,EACpB;IACE,OAAO,EAAE;QACP,2BAA2B,EAAE,GAAG;KACjC;CACF,CACF,CAAA;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,oBAAoB,EAAE;IAC5D,OAAO,EAAE;QACP,aAAa,EAAE,UAAU,wBAAwB,EAAE;QACnD,2BAA2B,EAAE,GAAG;KACjC;CACF,CAAC,CAAA"}
@@ -0,0 +1,22 @@
1
+ export interface MiniCreateParameters {
2
+ name: string;
3
+ handle: string;
4
+ appApiKey: string;
5
+ partnersAccessToken: string;
6
+ }
7
+ export declare const miniCreate: ({ name, handle, appApiKey, partnersAccessToken, }: MiniCreateParameters) => Promise<{
8
+ __typename?: "MiniCreatePayload" | undefined;
9
+ token?: string | null | undefined;
10
+ mini?: {
11
+ __typename?: "Mini" | undefined;
12
+ handle: string;
13
+ productionShopifyAppId: string;
14
+ developmentShopifyAppIds: string[];
15
+ } | null | undefined;
16
+ userErrors: {
17
+ __typename?: "MiniCreateUserError" | undefined;
18
+ code: import("./types/autogenerated/shop-minis-admin-api/graphql.js").MiniCreateUserErrorCode;
19
+ message: string;
20
+ field?: string[] | null | undefined;
21
+ }[];
22
+ }>;
@@ -0,0 +1,39 @@
1
+ import { graphql } from './types/autogenerated/shop-minis-admin-api/gql.js';
2
+ import { clientWithoutAuthorization } from './gql-client.js';
3
+ const miniCreateQuery = graphql(/* GraphQL */ `
4
+ mutation MiniCreate(
5
+ $name: String!
6
+ $handle: String!
7
+ $appApiKey: String!
8
+ $partnersAccessToken: String!
9
+ ) {
10
+ miniCreate(
11
+ name: $name
12
+ handle: $handle
13
+ appApiKey: $appApiKey
14
+ partnersAccessToken: $partnersAccessToken
15
+ ) {
16
+ mini {
17
+ handle
18
+ productionShopifyAppId
19
+ developmentShopifyAppIds
20
+ }
21
+ token
22
+ userErrors {
23
+ code
24
+ message
25
+ field
26
+ }
27
+ }
28
+ }
29
+ `);
30
+ export const miniCreate = async ({ name, handle, appApiKey, partnersAccessToken, }) => {
31
+ const response = await clientWithoutAuthorization.request(miniCreateQuery, {
32
+ name,
33
+ handle,
34
+ appApiKey,
35
+ partnersAccessToken,
36
+ });
37
+ return response.miniCreate;
38
+ };
39
+ //# sourceMappingURL=mini-create.js.map