@shopify/shop-minis-cli 0.0.115 → 0.0.116-alpha.1

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.
@@ -12,6 +12,10 @@ export declare const EXTENSION_TARGET_CONFIG: {
12
12
  label: string;
13
13
  page: ExtensionPage;
14
14
  };
15
+ "shop.product.policies.render-after": {
16
+ label: string;
17
+ page: ExtensionPage;
18
+ };
15
19
  };
16
20
  export declare const EXTENSION_TARGETS_WITH_TEMPLATES: Record<ExtensionTarget, {
17
21
  label: string;
@@ -32,6 +32,10 @@ export const EXTENSION_TARGET_CONFIG = {
32
32
  label: 'Product Page - Before Variants Picker',
33
33
  page: ExtensionPage.PRODUCT_PAGE,
34
34
  },
35
+ [ExtensionTarget['shop.product.policies.render-after']]: {
36
+ label: 'Product Page - After Policies',
37
+ page: ExtensionPage.PRODUCT_PAGE,
38
+ },
35
39
  };
36
40
  export const EXTENSION_TARGETS_WITH_TEMPLATES = Object.entries(EXTENSION_TARGET_CONFIG).reduce((acc, [key, value]) => {
37
41
  if (EXTENSION_PAGE_CONFIG[value.page].templates.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/commands/create-extension/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAE,aAAa,EAAC,MAAM,+BAA+B,CAAA;AAE5E,OAAO,EAAC,aAAa,EAAC,MAAM,YAAY,CAAA;AAExC,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAA;AAE/C,MAAM,CAAC,MAAM,qBAAqB,GAA2C;IAC3E,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE;QAChC,KAAK,EAAE,kBAAkB;KAC1B;IACD,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE;QAChC,KAAK,EAAE,kBAAkB;KAC1B;IACD,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE;QAC/B,KAAK,EAAE,iBAAiB;KACzB;IACD,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE;QACjC,KAAK,EAAE,mBAAmB;KAC3B;CACF,CAAA;AAED,oGAAoG;AACpG,MAAM,CAAC,MAAM,qBAAqB,GAG9B;IACF,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE;QAC5B,SAAS,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,aAAa,CAAC,iBAAiB,CAAC;KAC5E;IACD,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE;QAC1B,SAAS,EAAE,EAAE;KACd;IACD,CAAC,aAAa,CAAC,uBAAuB,CAAC,EAAE;QACvC,SAAS,EAAE,EAAE;KACd;CACF,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,CAAC,eAAe,CAAC,qCAAqC,CAAC,CAAC,EAAE;QACxD,KAAK,EAAE,uCAAuC;QAC9C,IAAI,EAAE,aAAa,CAAC,YAAY;KACjC;CAC0E,CAAA;AAE7E,MAAM,CAAC,MAAM,gCAAgC,GAGzC,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;IACvE,IAAI,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QAC1D,GAAG,CAAC,GAAsB,CAAC,GAAG,KAAK,CAAA;KACpC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC,EAAE,EAAmE,CAAC,CAAA;AAEvE,MAAM,CAAC,MAAM,qCAAqC,GAAG,MAAM,CAAC,IAAI,CAC9D,gCAAgC,CACZ,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/commands/create-extension/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAE,aAAa,EAAC,MAAM,+BAA+B,CAAA;AAE5E,OAAO,EAAC,aAAa,EAAC,MAAM,YAAY,CAAA;AAExC,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAA;AAE/C,MAAM,CAAC,MAAM,qBAAqB,GAA2C;IAC3E,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE;QAChC,KAAK,EAAE,kBAAkB;KAC1B;IACD,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE;QAChC,KAAK,EAAE,kBAAkB;KAC1B;IACD,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE;QAC/B,KAAK,EAAE,iBAAiB;KACzB;IACD,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE;QACjC,KAAK,EAAE,mBAAmB;KAC3B;CACF,CAAA;AAED,oGAAoG;AACpG,MAAM,CAAC,MAAM,qBAAqB,GAG9B;IACF,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE;QAC5B,SAAS,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,aAAa,CAAC,iBAAiB,CAAC;KAC5E;IACD,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE;QAC1B,SAAS,EAAE,EAAE;KACd;IACD,CAAC,aAAa,CAAC,uBAAuB,CAAC,EAAE;QACvC,SAAS,EAAE,EAAE;KACd;CACF,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,CAAC,eAAe,CAAC,qCAAqC,CAAC,CAAC,EAAE;QACxD,KAAK,EAAE,uCAAuC;QAC9C,IAAI,EAAE,aAAa,CAAC,YAAY;KACjC;IACD,CAAC,eAAe,CAAC,oCAAoC,CAAC,CAAC,EAAE;QACvD,KAAK,EAAE,+BAA+B;QACtC,IAAI,EAAE,aAAa,CAAC,YAAY;KACjC;CAC0E,CAAA;AAE7E,MAAM,CAAC,MAAM,gCAAgC,GAGzC,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;IACvE,IAAI,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QAC1D,GAAG,CAAC,GAAsB,CAAC,GAAG,KAAK,CAAA;KACpC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC,EAAE,EAAmE,CAAC,CAAA;AAEvE,MAAM,CAAC,MAAM,qCAAqC,GAAG,MAAM,CAAC,IAAI,CAC9D,gCAAgC,CACZ,CAAA"}
@@ -5,6 +5,7 @@ export interface DevCommandOptions {
5
5
  host: string;
6
6
  buildType: BuildType;
7
7
  snapshotVersion?: string;
8
+ extensionTargets?: string[];
8
9
  extensionTarget?: string;
9
10
  }
10
11
  export declare function loadCommand(parentProgram: Command): Promise<void>;
@@ -8,6 +8,7 @@ import { getMiniManifest } from '../../utils/minis-manifest.js';
8
8
  import { maybeApplyPatches } from '../../utils/patch-package.js';
9
9
  import { getInvalidDependencies } from '../doctor/utils/diagnose-dependencies.js';
10
10
  import { getRunBinCommand } from '../../utils/package-manager.js';
11
+ import { getMiniExtensions } from '../../utils/extensions.js';
11
12
  import { InteractiveTerminal } from './utils/interactive-terminal.js';
12
13
  import { runMetro } from './utils/metro/metro-server.js';
13
14
  import { BuildType } from './utils/types.js';
@@ -19,15 +20,16 @@ export async function loadCommand(parentProgram) {
19
20
  .option('--reset-cache', 'reset the dev server cache')
20
21
  .option('--host <host>', "packager's host", ip)
21
22
  .option('--verbose', 'print debugging messages') // compatible with cli-kit
22
- .option('--extension-target <extensionTarget>')
23
+ .option('--extension-target <extensionTarget>', '(deprecated) specify extension targets to run')
24
+ .option('--extension-targets <extensionTargets...>', 'specify extension targets to run')
23
25
  .addOption(new Option('--build-type <buildType>', 'build type')
24
26
  .choices(Object.values(BuildType))
25
27
  .default(BuildType.Release))
26
28
  .addOption(new Option('--snapshot-version <version>', 'specify the snapshot version to use. (example: 2.100.0+544)').implies({ buildType: 'snapshot' }))
27
- .action(async (options) => {
29
+ .action(async (initialOptions) => {
28
30
  try {
29
- outputDebug(`Dev command args ${JSON.stringify(options)}`);
30
- validateOptions(options);
31
+ outputDebug(`Dev command args ${JSON.stringify(initialOptions)}`);
32
+ const options = await initialiseOptions(initialOptions);
31
33
  const { handle: miniHandle, name: miniName } = getMiniManifest();
32
34
  outputDebug(`Running mini "${miniName}"`);
33
35
  await validateDependencies();
@@ -45,13 +47,21 @@ export async function loadCommand(parentProgram) {
45
47
  });
46
48
  parentProgram.addCommand(command);
47
49
  }
48
- function validateOptions({ snapshotVersion, buildType }) {
49
- if (snapshotVersion && buildType !== 'snapshot') {
50
- console.warn('\n--snapshot-version was specified but --build-type is not `snapshot`. --snapshot-version will be ignored.');
50
+ async function initialiseOptions(options) {
51
+ if (options.snapshotVersion && options.buildType !== 'snapshot') {
52
+ console.log(chalk.bold.yellow('\n--snapshot-version was specified but --build-type is not `snapshot`. --snapshot-version will be ignored.'));
51
53
  }
52
- else if (buildType === 'snapshot' && !snapshotVersion) {
53
- console.warn('\n--build-type was set to `snapshot` but --snapshot-version was not specified. Fetching the latest available snapshot');
54
+ else if (options.buildType === 'snapshot' && !options.snapshotVersion) {
55
+ console.log(chalk.bold.yellow('\n--build-type was set to `snapshot` but --snapshot-version was not specified. Fetching the latest available snapshot'));
54
56
  }
57
+ let extensionTargets = options.extensionTargets;
58
+ if (!options.extensionTargets && options.extensionTarget) {
59
+ console.log(chalk.bold.yellow(`\n--extension-target is deprecated, used --extension-targets instead`));
60
+ extensionTargets = [options.extensionTarget];
61
+ }
62
+ const extensionsToStart = await getMiniExtensions(extensionTargets);
63
+ outputDebug(`Running extensions ${JSON.stringify(extensionsToStart)}`);
64
+ return { ...options, extensionTargets: extensionsToStart };
55
65
  }
56
66
  async function validateDependencies() {
57
67
  const { areDependenciesInvalid } = getInvalidDependencies();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/dev/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,MAAM,EAAC,MAAM,WAAW,CAAA;AACzC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,UAAU,MAAM,aAAa,CAAA;AACpC,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,6BAA6B,CAAA;AAClE,OAAO,CAAC,MAAM,QAAQ,CAAA;AAEtB,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAC,iBAAiB,EAAC,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAC,sBAAsB,EAAC,MAAM,0CAA0C,CAAA;AAC/E,OAAO,EAAC,gBAAgB,EAAC,MAAM,gCAAgC,CAAA;AAE/D,OAAO,EAAC,mBAAmB,EAAC,MAAM,iCAAiC,CAAA;AACnE,OAAO,EAAC,QAAQ,EAAC,MAAM,+BAA+B,CAAA;AACtD,OAAO,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAA;AAU1C,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,aAAsB;IACtD,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,CAAA;IAEhC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE;SAC1B,IAAI,CAAC,KAAK,CAAC;SACX,WAAW,CAAC,2CAA2C,CAAC;SACxD,MAAM,CAAC,eAAe,EAAE,4BAA4B,CAAC;SACrD,MAAM,CAAC,eAAe,EAAE,iBAAiB,EAAE,EAAE,CAAC;SAC9C,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,0BAA0B;SAC1E,MAAM,CAAC,sCAAsC,CAAC;SAC9C,SAAS,CACR,IAAI,MAAM,CAAC,0BAA0B,EAAE,YAAY,CAAC;SACjD,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SACjC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAC9B;SACA,SAAS,CACR,IAAI,MAAM,CACR,8BAA8B,EAC9B,6DAA6D,CAC9D,CAAC,OAAO,CAAC,EAAC,SAAS,EAAE,UAAU,EAAC,CAAC,CACnC;SACA,MAAM,CAAC,KAAK,EAAE,OAA0B,EAAE,EAAE;QAC3C,IAAI;YACF,WAAW,CAAC,oBAAoB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAC1D,eAAe,CAAC,OAAO,CAAC,CAAA;YAExB,MAAM,EAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAC,GAAG,eAAe,EAAE,CAAA;YAE9D,WAAW,CAAC,iBAAiB,QAAQ,GAAG,CAAC,CAAA;YAEzC,MAAM,oBAAoB,EAAE,CAAA;YAE5B,iBAAiB,EAAE,CAAA,CAAC,mFAAmF;YACvG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAA;YAEvB,OAAO,CAAC,GAAG,CACT,mCAAmC,EACnC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EACrB,eAAe,CAChB,CAAA;YAED,MAAM,mBAAmB,GAAG,IAAI,mBAAmB,CACjD,OAAO,EACP,UAAU,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,6EAA6E;aAClH,CAAA;YACD,mBAAmB,CAAC,KAAK,EAAE,CAAA;SAC5B;QAAC,OAAO,GAAG,EAAE;YACZ,OAAQ,GAAa,CAAC,KAAK,CAAA,CAAC,qFAAqF;YACjH,MAAM,WAAW,CAAC,GAAG,CAAC,CAAA;SACvB;IACH,CAAC,CAAC,CAAA;IAEJ,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;AACnC,CAAC;AAED,SAAS,eAAe,CAAC,EAAC,eAAe,EAAE,SAAS,EAAoB;IACtE,IAAI,eAAe,IAAI,SAAS,KAAK,UAAU,EAAE;QAC/C,OAAO,CAAC,IAAI,CACV,4GAA4G,CAC7G,CAAA;KACF;SAAM,IAAI,SAAS,KAAK,UAAU,IAAI,CAAC,eAAe,EAAE;QACvD,OAAO,CAAC,IAAI,CACV,uHAAuH,CACxH,CAAA;KACF;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB;IACjC,MAAM,EAAC,sBAAsB,EAAC,GAAG,sBAAsB,EAAE,CAAA;IAEzD,IAAI,sBAAsB,EAAE;QAC1B,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,MAAM,CACV,uEAAuE,KAAK,CAAC,IAAI,CAC/E,MAAM,gBAAgB,CAAC,mBAAmB,CAAC,CAC5C,wDAAwD,CAC1D,CACF,CAAA;QACD,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,MAAM,CACV,+GAA+G,CAChH,CACF,CAAA;KACF;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/dev/index.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,32 @@
1
1
  import { outputDebug } from '@shopify/cli-kit/node/output';
2
- import { getDevelopmentQueryStringParams } from '../../../utils/development-params.js';
2
+ import { getDevelopmentEntryPointParamsQueryString } from '../../../utils/development-params.js';
3
3
  import { getMiniManifest } from '../../../utils/minis-manifest.js';
4
4
  import { getReactNativeVersion } from './react-native-version.js';
5
5
  export function getBundleUrl(host) {
6
6
  return `http://${host}:8082/index.bundle`;
7
7
  }
8
- function getExtensionInputQueryUrl(host) {
9
- return `http://${host}:8082/input-query`;
8
+ function getExtensionInputQueryUrl(host, target) {
9
+ return `http://${host}:8082/input-query${target ? `/${target}` : ''}`;
10
10
  }
11
- function getDeeplinkPayload(miniHandle, host, extensionTarget) {
11
+ function getDeeplinkPayload(miniHandle, host, extensionTargets) {
12
12
  const bundleUrl = getBundleUrl(host);
13
13
  const extensionInputQueryUrl = getExtensionInputQueryUrl(host);
14
+ const extensionInputQueryUrlPrefix = getExtensionInputQueryUrl(host);
14
15
  const params = {
15
16
  handle: miniHandle,
16
17
  bundleUrl,
18
+ /*
19
+ * We used to support only one input query per mini.
20
+ * Now we support one input query per target.
21
+ * TODO: Remove usage of extensionInputQueryUrl in favor of extensionInputQueryUrlPrefix. https://github.com/Shopify/shop-client/issues/41813
22
+ */
17
23
  extensionInputQueryUrl,
24
+ extensionInputQueryUrlPrefix,
18
25
  rnVersion: getReactNativeVersion(),
19
26
  features: getMiniManifest()?.features ?? undefined,
20
27
  };
21
- if (extensionTarget) {
22
- params.extensionTarget = extensionTarget;
28
+ if (extensionTargets) {
29
+ params.extensionTargets = extensionTargets;
23
30
  }
24
31
  const stringifiedParams = JSON.stringify(params);
25
32
  return Buffer.from(stringifiedParams).toString('base64');
@@ -36,9 +43,9 @@ function getDeeplinkPayload(miniHandle, host, extensionTarget) {
36
43
  * In both cases, the base64 encoded payload contains the bundle url and extra information about the remote environment
37
44
  */
38
45
  export function getDeeplink(miniHandle, options, universalLink = false) {
39
- const deeplinkParams = getDeeplinkPayload(miniHandle, options.host, options.extensionTarget);
40
- const developmentParams = getDevelopmentQueryStringParams(options);
41
- const deeplinkPath = options.extensionTarget
46
+ const deeplinkParams = getDeeplinkPayload(miniHandle, options.host, options.extensionTargets);
47
+ const developmentParams = getDevelopmentEntryPointParamsQueryString();
48
+ const deeplinkPath = options.extensionTargets
42
49
  ? '/mini/remote-extension/'
43
50
  : '/mini/remote/';
44
51
  const deeplink = universalLink
@@ -1 +1 @@
1
- {"version":3,"file":"deeplink.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/deeplink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAExD,OAAO,EAAC,+BAA+B,EAAC,MAAM,sCAAsC,CAAA;AACpF,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAA;AAGhE,OAAO,EAAC,qBAAqB,EAAC,MAAM,2BAA2B,CAAA;AAE/D,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,UAAU,IAAI,oBAAoB,CAAA;AAC3C,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAY;IAC7C,OAAO,UAAU,IAAI,mBAAmB,CAAA;AAC1C,CAAC;AAED,SAAS,kBAAkB,CACzB,UAAkB,EAClB,IAAY,EACZ,eAAwB;IAExB,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACpC,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAA;IAE9D,MAAM,MAAM,GAAuC;QACjD,MAAM,EAAE,UAAU;QAClB,SAAS;QACT,sBAAsB;QACtB,SAAS,EAAE,qBAAqB,EAAE;QAClC,QAAQ,EAAE,eAAe,EAAE,EAAE,QAAQ,IAAI,SAAS;KACnD,CAAA;IAED,IAAI,eAAe,EAAE;QACnB,MAAM,CAAC,eAAe,GAAG,eAAe,CAAA;KACzC;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAEhD,OAAO,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACzB,UAAkB,EAClB,OAA0B,EAC1B,aAAa,GAAG,KAAK;IAErB,MAAM,cAAc,GAAG,kBAAkB,CACvC,UAAU,EACV,OAAO,CAAC,IAAK,EACb,OAAO,CAAC,eAAe,CACxB,CAAA;IACD,MAAM,iBAAiB,GAAG,+BAA+B,CAAC,OAAO,CAAC,CAAA;IAClE,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe;QAC1C,CAAC,CAAC,yBAAyB;QAC3B,CAAC,CAAC,eAAe,CAAA;IAEnB,MAAM,QAAQ,GAAG,aAAa;QAC5B,CAAC,CAAC,mBAAmB,YAAY,GAAG,cAAc,GAAG,iBAAiB,EAAE;QACxE,CAAC,CAAC,WAAW,YAAY,GAAG,cAAc,GAAG,iBAAiB,EAAE,CAAA;IAElE,WAAW,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAA;IAEpC,OAAO,QAAQ,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"deeplink.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/deeplink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAExD,OAAO,EAAC,yCAAyC,EAAC,MAAM,sCAAsC,CAAA;AAC9F,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAA;AAGhE,OAAO,EAAC,qBAAqB,EAAC,MAAM,2BAA2B,CAAA;AAE/D,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,UAAU,IAAI,oBAAoB,CAAA;AAC3C,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAY,EAAE,MAAe;IAC9D,OAAO,UAAU,IAAI,oBAAoB,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;AACvE,CAAC;AAED,SAAS,kBAAkB,CACzB,UAAkB,EAClB,IAAY,EACZ,gBAA2B;IAE3B,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACpC,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAA;IAC9D,MAAM,4BAA4B,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAA;IAEpE,MAAM,MAAM,GAAkD;QAC5D,MAAM,EAAE,UAAU;QAClB,SAAS;QACT;;;;WAIG;QACH,sBAAsB;QACtB,4BAA4B;QAC5B,SAAS,EAAE,qBAAqB,EAAE;QAClC,QAAQ,EAAE,eAAe,EAAE,EAAE,QAAQ,IAAI,SAAS;KACnD,CAAA;IAED,IAAI,gBAAgB,EAAE;QACpB,MAAM,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;KAC3C;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAEhD,OAAO,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACzB,UAAkB,EAClB,OAA0B,EAC1B,aAAa,GAAG,KAAK;IAErB,MAAM,cAAc,GAAG,kBAAkB,CACvC,UAAU,EACV,OAAO,CAAC,IAAK,EACb,OAAO,CAAC,gBAAgB,CACzB,CAAA;IACD,MAAM,iBAAiB,GAAG,yCAAyC,EAAE,CAAA;IACrE,MAAM,YAAY,GAAG,OAAO,CAAC,gBAAgB;QAC3C,CAAC,CAAC,yBAAyB;QAC3B,CAAC,CAAC,eAAe,CAAA;IAEnB,MAAM,QAAQ,GAAG,aAAa;QAC5B,CAAC,CAAC,mBAAmB,YAAY,GAAG,cAAc,GAAG,iBAAiB,EAAE;QACxE,CAAC,CAAC,WAAW,YAAY,GAAG,cAAc,GAAG,iBAAiB,EAAE,CAAA;IAElE,WAAW,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAA;IAEpC,OAAO,QAAQ,CAAA;AACjB,CAAC"}
@@ -1,7 +1,9 @@
1
+ import url from 'url';
1
2
  import path from 'node:path';
2
3
  import fs from 'node:fs';
3
4
  import serve from 'serve-static';
4
5
  import connect from 'connect';
6
+ import { outputDebug } from '@shopify/cli-kit/node/output';
5
7
  /**
6
8
  * mutates the received metro config param to inject a custom middleware.
7
9
  * needed because of https://github.com/facebook/metro/issues/660
@@ -36,19 +38,40 @@ function devPanelMiddleware(...args) {
36
38
  }
37
39
  export const DEV_PANEL_BASE_URL = `http://localhost:8082/dev-panel`;
38
40
  function inputQueryMiddlewareFactory(options) {
39
- return function inputQueryMiddleware(_, res) {
40
- if (!options.extensionTarget) {
41
+ return function inputQueryMiddleware(req, res) {
42
+ if (!req.url || !options.extensionTargets) {
41
43
  res.end();
42
44
  return;
43
45
  }
44
- const defaultTargetsFolderPath = path.join(process.cwd(), 'src', 'targets');
45
- const customTargetsPath = process.env.CUSTOM_TARGETS_PATH
46
- ? path.join(process.cwd(), process.env.CUSTOM_TARGETS_PATH)
47
- : null;
48
- const queryFilePath = path.join(customTargetsPath || defaultTargetsFolderPath, // give preference to the custom path if the env variable is present
49
- options.extensionTarget, 'input.graphql');
50
- const queryFile = fs.readFileSync(queryFilePath);
51
- res.end(queryFile);
46
+ const urlParts = url.parse(req.url);
47
+ let target = '';
48
+ if (urlParts.pathname === '/') {
49
+ outputDebug('No target specified, using the first target.');
50
+ target = options.extensionTargets[0];
51
+ }
52
+ else {
53
+ target = urlParts.pathname?.split('/')[1] ?? '';
54
+ }
55
+ if (target) {
56
+ const defaultTargetsFolderPath = path.join(process.cwd(), 'src', 'targets');
57
+ const customTargetsPath = process.env.CUSTOM_TARGETS_PATH
58
+ ? path.join(process.cwd(), process.env.CUSTOM_TARGETS_PATH)
59
+ : null;
60
+ const queryFilePath = path.join(customTargetsPath || defaultTargetsFolderPath, // give preference to the custom path if the env variable is present
61
+ target, 'input.graphql');
62
+ try {
63
+ const queryFile = fs.readFileSync(queryFilePath);
64
+ res.end(queryFile);
65
+ }
66
+ catch {
67
+ console.error(`Unable to read a query file for target ${target}`);
68
+ res.end();
69
+ }
70
+ }
71
+ else {
72
+ console.error(`Your mini does not support any extension targets yet`);
73
+ res.end();
74
+ }
52
75
  };
53
76
  }
54
77
  //# sourceMappingURL=metro-server-middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metro-server-middleware.js","sourceRoot":"","sources":["../../../../../src/commands/dev/utils/metro/metro-server-middleware.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,MAAM,SAAS,CAAA;AAExB,OAAO,KAAK,MAAM,cAAc,CAAA;AAChC,OAAO,OAAO,MAAM,SAAS,CAAA;AAI7B;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAA0B;IACnE,OAAO,OAAO,EAAE;SACb,GAAG,CAAC,cAAc,EAAE,iBAAiB,CAAC;SACtC,GAAG,CAAC,YAAY,EAAE,kBAAkB,CAAC;SACrC,GAAG,CAAC,SAAS,EAAE,oBAAoB,CAAC;SACpC,GAAG,CAAC,cAAc,EAAE,2BAA2B,CAAC,OAAO,CAAC,CAAC,CAAA;AAC9D,CAAC;AAED,qHAAqH;AACrH,SAAS,iBAAiB,CACxB,GAAyB,EACzB,IAAyB,EACzB,IAAyB;IAEzB,CAAC;IAAC,GAAgD,CAAC,OAAO,GAAG,EAAE,CAAA;IAC/D,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAEvB,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;QAC/B,CAAC;QAAC,GAAgD,CAAC,OAAO,IAAI,KAAK,CAAA;IACrE,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;QACjB,IAAI,EAAE,CAAA;IACR,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,4JAA4J;AAC5J,SAAS,oBAAoB,CAC3B,IAA0B,EAC1B,GAAwB;IAExB,GAAG,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;AACpC,CAAC;AAED,SAAS,kBAAkB,CACzB,GAAG,IAA4C;IAE/C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAC7B,OAAO,CAAC,GAAG,EAAE,EACb,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,WAAW,CACZ,CAAA;IACD,OAAO,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;AACtC,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,iCAAiC,CAAA;AAEnE,SAAS,2BAA2B,CAAC,OAA0B;IAC7D,OAAO,SAAS,oBAAoB,CAAC,CAAU,EAAE,GAAwB;QACvE,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAC5B,GAAG,CAAC,GAAG,EAAE,CAAA;YACT,OAAM;SACP;QACD,MAAM,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;QAC3E,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB;YACvD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;YAC3D,CAAC,CAAC,IAAI,CAAA;QAER,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAC7B,iBAAiB,IAAI,wBAAwB,EAAE,oEAAoE;QACnH,OAAO,CAAC,eAAe,EACvB,eAAe,CAChB,CAAA;QACD,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAA;QAChD,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACpB,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"metro-server-middleware.js","sourceRoot":"","sources":["../../../../../src/commands/dev/utils/metro/metro-server-middleware.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import jscodeshift from 'jscodeshift';
2
+ export type Root = ReturnType<typeof jscodeshift>;
2
3
  export declare const j: jscodeshift.JSCodeshift;
3
4
  /**
4
5
  * Find the first import declaration of a module
@@ -17,7 +18,7 @@ export declare const j: jscodeshift.JSCodeshift;
17
18
  * import {importedName as importedAsName} from 'importPath'
18
19
  * ```
19
20
  */
20
- export declare const findImportOf: (root: ReturnType<typeof jscodeshift>, importPath: string, importedName: string, importedAsName?: string) => {
21
+ export declare const findImportOf: (root: import("jscodeshift/src/Collection.js").Collection<any>, importPath: string, importedName: string, importedAsName?: string) => {
21
22
  specifier: import("ast-types").namedTypes.ImportSpecifier | import("ast-types").namedTypes.ImportDefaultSpecifier | import("ast-types").namedTypes.ImportNamespaceSpecifier | null;
22
23
  importDeclaration: import("ast-types").namedTypes.ImportDeclaration;
23
24
  };
@@ -29,7 +30,7 @@ export declare const findImportOf: (root: ReturnType<typeof jscodeshift>, import
29
30
  *
30
31
  * Returns the specifier and import declaration nodes that were found, edited or created
31
32
  */
32
- export declare const ensureImportOf: (root: ReturnType<typeof jscodeshift>, importPath: string, importedName: string, importedAsName?: string) => {
33
+ export declare const ensureImportOf: (root: import("jscodeshift/src/Collection.js").Collection<any>, importPath: string, importedName: string, importedAsName?: string) => {
33
34
  specifier: import("ast-types").namedTypes.ImportSpecifier | import("ast-types").namedTypes.ImportDefaultSpecifier | import("ast-types").namedTypes.ImportNamespaceSpecifier;
34
35
  importDeclaration: import("ast-types").namedTypes.ImportDeclaration;
35
36
  };
@@ -46,7 +47,26 @@ export declare const ensureImportOf: (root: ReturnType<typeof jscodeshift>, impo
46
47
  *
47
48
  * If multiple are found, the first one is returned
48
49
  */
49
- export declare const findObjectExpression: (root: ReturnType<typeof jscodeshift>, objName: string) => import("ast-types").namedTypes.ObjectExpression | null;
50
+ export declare const findObjectExpression: (root: import("jscodeshift/src/Collection.js").Collection<any>, objName: string) => import("ast-types").namedTypes.ObjectExpression | null;
51
+ /**
52
+ * Find an object's property by it's key
53
+ *
54
+ * Returns the property node that was found or null
55
+ */
56
+ export declare const findObjectProperty: ({ obj, key, }: {
57
+ obj: jscodeshift.ObjectExpression;
58
+ key: string;
59
+ }) => jscodeshift.Property | null;
60
+ /**
61
+ * Return all the objects keys
62
+ *
63
+ * Only returns keys of types Identifier and StringLiteral eg
64
+ *
65
+ * const foo = { 'cool-key': 'value', otherKey: 'ok' }
66
+ */
67
+ export declare const objectKeys: ({ obj, }: {
68
+ obj: jscodeshift.ObjectExpression;
69
+ }) => string[];
50
70
  /**
51
71
  * Ensure that an object has a property with a specific key
52
72
  *
@@ -91,6 +91,44 @@ export const findObjectExpression = (root, objName) => {
91
91
  ? result.init
92
92
  : null;
93
93
  };
94
+ /**
95
+ * Find an object's property by it's key
96
+ *
97
+ * Returns the property node that was found or null
98
+ */
99
+ export const findObjectProperty = ({ obj, key, }) => {
100
+ const properties = obj.properties;
101
+ return (properties.find(prop => {
102
+ if (prop.type !== 'ObjectProperty')
103
+ return false;
104
+ if (prop.key.type === 'Identifier' && prop.key.name === key)
105
+ return true;
106
+ if (prop.key.type === 'StringLiteral' && prop.key.value === key)
107
+ return true;
108
+ return false;
109
+ }) ?? null);
110
+ };
111
+ /**
112
+ * Return all the objects keys
113
+ *
114
+ * Only returns keys of types Identifier and StringLiteral eg
115
+ *
116
+ * const foo = { 'cool-key': 'value', otherKey: 'ok' }
117
+ */
118
+ export const objectKeys = ({ obj, }) => {
119
+ const properties = obj.properties;
120
+ return properties
121
+ .map(prop => {
122
+ if (prop.type !== 'ObjectProperty')
123
+ return null;
124
+ if (prop.key.type === 'Identifier')
125
+ return prop.key.name;
126
+ if (prop.key.type === 'StringLiteral')
127
+ return prop.key.value;
128
+ return null;
129
+ })
130
+ .filter(value => typeof value === 'string');
131
+ };
94
132
  /**
95
133
  * Ensure that an object has a property with a specific key
96
134
  *
@@ -104,15 +142,7 @@ export const findObjectExpression = (root, objName) => {
104
142
  */
105
143
  export const ensureObjectProperty = ({ obj, key, defaultValue, overwrite = false, }) => {
106
144
  const properties = obj.properties;
107
- let targetProperty = properties.find(prop => {
108
- if (prop.type !== 'ObjectProperty')
109
- return false;
110
- if (prop.key.type === 'Identifier' && prop.key.name === key)
111
- return true;
112
- if (prop.key.type === 'StringLiteral' && prop.key.value === key)
113
- return true;
114
- return false;
115
- }) ?? null;
145
+ let targetProperty = findObjectProperty({ obj, key });
116
146
  if (targetProperty) {
117
147
  if (overwrite) {
118
148
  targetProperty.value = defaultValue;
@@ -1 +1 @@
1
- {"version":3,"file":"codemod.js","sourceRoot":"","sources":["../../src/utils/codemod.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codemod.js","sourceRoot":"","sources":["../../src/utils/codemod.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { DevCommandOptions } from '../commands/dev/index.js';
2
1
  declare const ALLOWED_ENTRY_POINT_PARAMS: readonly ["product_id", "shop_id", "product_variant_id", "external_id", "shop_domain", "order_id", "category_id"];
3
2
  type DevelopmentEntryPointParams = {
4
3
  [key in (typeof ALLOWED_ENTRY_POINT_PARAMS)[number]]?: string;
@@ -10,5 +9,5 @@ type DevelopmentEntryPointParams = {
10
9
  * Returns empty string if the file does not exist or if the format of its content is incorrect.
11
10
  */
12
11
  export declare function getDevelopmentEntryPointParams(): DevelopmentEntryPointParams;
13
- export declare function getDevelopmentQueryStringParams(options: DevCommandOptions): string;
12
+ export declare function getDevelopmentEntryPointParamsQueryString(): string;
14
13
  export {};
@@ -35,17 +35,9 @@ export function getDevelopmentEntryPointParams() {
35
35
  return {};
36
36
  }
37
37
  }
38
- function getDevelopmentEntryPointParamsQueryString() {
38
+ export function getDevelopmentEntryPointParamsQueryString() {
39
39
  const paramsObject = getDevelopmentEntryPointParams();
40
40
  const paramsQueryString = new URLSearchParams(paramsObject).toString();
41
41
  return paramsQueryString ? `?${paramsQueryString}` : '';
42
42
  }
43
- function getDevelopmentWidgetParamsQueryString(extensionTarget) {
44
- return `?${new URLSearchParams({ extensionTarget }).toString()}`;
45
- }
46
- export function getDevelopmentQueryStringParams(options) {
47
- return options.extensionTarget
48
- ? getDevelopmentWidgetParamsQueryString(options.extensionTarget)
49
- : getDevelopmentEntryPointParamsQueryString();
50
- }
51
43
  //# sourceMappingURL=development-params.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"development-params.js","sourceRoot":"","sources":["../../src/utils/development-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAA;AACzC,OAAO,IAAI,MAAM,WAAW,CAAA;AAI5B,MAAM,0BAA0B,GAAG;IACjC,YAAY;IACZ,SAAS;IACT,oBAAoB;IACpB,aAAa;IACb,aAAa;IACb,UAAU;IACV,aAAa;CACL,CAAA;AAMV,MAAM,4BAA4B,GAAG,yBAAyB,CAAA;AAC9D,MAAM,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAC5C,OAAO,CAAC,GAAG,EAAE,EACb,4BAA4B,CAC7B,CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B;IAC5C,IAAI;QACF,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnD,OAAO,YAAY,CAAC,KAAK,CACvB,YAAY,CAAC,OAAO,CAAC,4BAA4B,CAAC,CACnD,CAAA;QACD,MAAM,eAAe,GAA2B,YAAY,CAC1D,4BAA4B,CAC7B,CAAA;QAED,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,MAAM,CAC5D,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,0BAA0B,CAAC,QAAQ,CACjC,GAAwC,CACzC,IAAI,OAAO,CAAC,KAAK,CAAC,CACtB,CAAA;QACD,OAAO,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;KAC3C;IAAC,OAAO,GAAQ,EAAE;QACjB,IAAI,GAAG,EAAE,IAAI,KAAK,kBAAkB,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,EAAE;YAC9D,OAAO,CAAC,GAAG,CACT,gEAAgE,CACjE,CAAA;YACD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;SAClB;QACD,sFAAsF;QACtF,OAAO,EAAE,CAAA;KACV;AACH,CAAC;AAED,SAAS,yCAAyC;IAChD,MAAM,YAAY,GAAG,8BAA8B,EAAE,CAAA;IACrD,MAAM,iBAAiB,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAA;IAEtE,OAAO,iBAAiB,CAAC,CAAC,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AACzD,CAAC;AAED,SAAS,qCAAqC,CAAC,eAAuB;IACpE,OAAO,IAAI,IAAI,eAAe,CAAC,EAAC,eAAe,EAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAA;AAChE,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,OAA0B;IACxE,OAAO,OAAO,CAAC,eAAe;QAC5B,CAAC,CAAC,qCAAqC,CAAC,OAAO,CAAC,eAAe,CAAC;QAChE,CAAC,CAAC,yCAAyC,EAAE,CAAA;AACjD,CAAC"}
1
+ {"version":3,"file":"development-params.js","sourceRoot":"","sources":["../../src/utils/development-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAA;AACzC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,MAAM,0BAA0B,GAAG;IACjC,YAAY;IACZ,SAAS;IACT,oBAAoB;IACpB,aAAa;IACb,aAAa;IACb,UAAU;IACV,aAAa;CACL,CAAA;AAMV,MAAM,4BAA4B,GAAG,yBAAyB,CAAA;AAC9D,MAAM,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAC5C,OAAO,CAAC,GAAG,EAAE,EACb,4BAA4B,CAC7B,CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B;IAC5C,IAAI;QACF,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnD,OAAO,YAAY,CAAC,KAAK,CACvB,YAAY,CAAC,OAAO,CAAC,4BAA4B,CAAC,CACnD,CAAA;QACD,MAAM,eAAe,GAA2B,YAAY,CAC1D,4BAA4B,CAC7B,CAAA;QAED,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,MAAM,CAC5D,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,0BAA0B,CAAC,QAAQ,CACjC,GAAwC,CACzC,IAAI,OAAO,CAAC,KAAK,CAAC,CACtB,CAAA;QACD,OAAO,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;KAC3C;IAAC,OAAO,GAAQ,EAAE;QACjB,IAAI,GAAG,EAAE,IAAI,KAAK,kBAAkB,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,EAAE;YAC9D,OAAO,CAAC,GAAG,CACT,gEAAgE,CACjE,CAAA;YACD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;SAClB;QACD,sFAAsF;QACtF,OAAO,EAAE,CAAA;KACV;AACH,CAAC;AAED,MAAM,UAAU,yCAAyC;IACvD,MAAM,YAAY,GAAG,8BAA8B,EAAE,CAAA;IACrD,MAAM,iBAAiB,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAA;IAEtE,OAAO,iBAAiB,CAAC,CAAC,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AACzD,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { ExtensionTarget } from '../constants/extensions.js';
2
+ export declare const CONFIG_PATH: string;
3
+ /**
4
+ * Find a list of extensions used by this mini
5
+ *
6
+ * We read this from the minis src/index.tsx config.Targets object
7
+ */
8
+ export declare function getMiniExtensions(specifiedExtensionTargets: string[] | undefined): Promise<ExtensionTarget[]>;
@@ -0,0 +1,79 @@
1
+ import path from 'node:path';
2
+ import { readFile } from 'node:fs/promises';
3
+ import { outputDebug } from '@shopify/cli-kit/node/output';
4
+ import { ExtensionTarget } from '../constants/extensions.js';
5
+ import { findObjectExpression, findObjectProperty, j, objectKeys, } from './codemod.js';
6
+ export const CONFIG_PATH = path.join('src', 'index.tsx');
7
+ const readConfigFile = () => readFile(path.join(process.cwd(), CONFIG_PATH), 'utf8');
8
+ /**
9
+ * Find a list of extensions used by this mini
10
+ *
11
+ * We read this from the minis src/index.tsx config.Targets object
12
+ */
13
+ export async function getMiniExtensions(specifiedExtensionTargets) {
14
+ let configFile;
15
+ let root;
16
+ try {
17
+ configFile = await readConfigFile();
18
+ }
19
+ catch (error) {
20
+ outputDebug(`getMiniExtensions couldn't read config at ${CONFIG_PATH}`);
21
+ return [];
22
+ }
23
+ if (!configFile || !configFile.includes('MiniAppConfig')) {
24
+ outputDebug(`getMiniExtensions couldn't find \`MiniAppConfig\` in ${CONFIG_PATH}`);
25
+ return [];
26
+ }
27
+ try {
28
+ root = j(configFile);
29
+ }
30
+ catch (error) {
31
+ outputDebug(`getMiniExtensions couldn't parse config at ${CONFIG_PATH}`);
32
+ return [];
33
+ }
34
+ // It would be better if we could find this by type `MiniAppConfig`
35
+ // Or find it by tracing back the default export of the config file
36
+ const configObject = findObjectExpression(root, 'config');
37
+ if (!configObject) {
38
+ outputDebug(`getMiniExtensions couldn't find a \`config\` object in ${CONFIG_PATH}`);
39
+ return [];
40
+ }
41
+ const targetsObject = findObjectProperty({
42
+ obj: configObject,
43
+ key: 'Targets',
44
+ });
45
+ if (!targetsObject) {
46
+ outputDebug('getMiniExtensions no `Targets` found in config');
47
+ return [];
48
+ }
49
+ const targetsValue = targetsObject.value;
50
+ if (targetsValue.type !== 'ObjectExpression') {
51
+ outputDebug(`getMiniExtensions unexpected type for Targets. Expected: ObjectExpression, Found: ${targetsValue.type}`);
52
+ return [];
53
+ }
54
+ const definedExtensions = objectKeys({ obj: targetsValue });
55
+ if (!definedExtensions) {
56
+ outputDebug('getMiniExtensions no extensions found in `Targets`');
57
+ return [];
58
+ }
59
+ const possibleExtensions = Object.values(ExtensionTarget);
60
+ const validDefinedExtensions = possibleExtensions.filter(val => definedExtensions.includes(val));
61
+ outputDebug(`getMiniExtensions extensions found in \`Targets\`: ${JSON.stringify(validDefinedExtensions)}`);
62
+ const invalidDefinedExtensions = definedExtensions.filter(val => !possibleExtensions.includes(val));
63
+ if (invalidDefinedExtensions.length > 0) {
64
+ outputDebug(`getMiniExtensions invalid extensions found in \`Targets\`: ${JSON.stringify(invalidDefinedExtensions)}`);
65
+ }
66
+ let extensionsToStart = validDefinedExtensions;
67
+ // Find the valid extensions this mini has, filter to cli-args if supplied
68
+ // We could (should?) error out if we don't find what the user wanted
69
+ if (Array.isArray(specifiedExtensionTargets) &&
70
+ specifiedExtensionTargets.length > 0) {
71
+ outputDebug(`Extensions from cli args ${JSON.stringify(specifiedExtensionTargets)}`);
72
+ extensionsToStart = validDefinedExtensions.filter(ext => specifiedExtensionTargets?.includes(ext));
73
+ }
74
+ else {
75
+ outputDebug(`No extensions from cli args`);
76
+ }
77
+ return extensionsToStart;
78
+ }
79
+ //# sourceMappingURL=extensions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../src/utils/extensions.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public",
5
5
  "@shopify:registry": "https://registry.npmjs.org/"
6
6
  },
7
- "version": "0.0.115",
7
+ "version": "0.0.116-alpha.1",
8
8
  "description": "Shop Minis CLI",
9
9
  "main": "build/index.js",
10
10
  "bin": {