@shopify/cli 3.63.2 → 3.64.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.
Files changed (131) hide show
  1. package/dist/assets/cli-ruby/lib/shopify_cli/reporting_configuration_controller.rb +2 -37
  2. package/dist/assets/cli-ruby/lib/shopify_cli/theme/file.rb +5 -1
  3. package/dist/assets/dev-console/extensions/dev-console/assets/index-Cgb-oKsM.css +1 -0
  4. package/dist/assets/dev-console/extensions/dev-console/assets/{index-Dui3DO9f.js → index-D7F9wNys.js} +12 -12
  5. package/dist/assets/dev-console/index.html +2 -2
  6. package/dist/assets/hydrogen/starter/.graphqlrc.ts +27 -0
  7. package/dist/assets/hydrogen/starter/CHANGELOG.md +108 -6
  8. package/dist/assets/hydrogen/starter/app/components/AddToCartButton.tsx +37 -0
  9. package/dist/assets/hydrogen/starter/app/components/CartLineItem.tsx +150 -0
  10. package/dist/assets/hydrogen/starter/app/components/CartMain.tsx +68 -0
  11. package/dist/assets/hydrogen/starter/app/components/CartSummary.tsx +101 -0
  12. package/dist/assets/hydrogen/starter/app/components/Header.tsx +3 -3
  13. package/dist/assets/hydrogen/starter/app/components/PageLayout.tsx +2 -2
  14. package/dist/assets/hydrogen/starter/app/components/ProductForm.tsx +80 -0
  15. package/dist/assets/hydrogen/starter/app/components/ProductImage.tsx +23 -0
  16. package/dist/assets/hydrogen/starter/app/components/ProductPrice.tsx +27 -0
  17. package/dist/assets/hydrogen/starter/app/root.tsx +11 -17
  18. package/dist/assets/hydrogen/starter/app/routes/cart.tsx +1 -1
  19. package/dist/assets/hydrogen/starter/app/routes/products.$handle.tsx +51 -232
  20. package/dist/assets/hydrogen/starter/package.json +11 -11
  21. package/dist/assets/hydrogen/tailwind/package.json +1 -6
  22. package/dist/assets/hydrogen/tailwind/tailwind.css +6 -3
  23. package/dist/assets/hydrogen/vanilla-extract/package.json +2 -3
  24. package/dist/assets/hydrogen/virtual-routes/components/{Layout.jsx → PageLayout.jsx} +2 -2
  25. package/dist/assets/hydrogen/virtual-routes/virtual-root.jsx +8 -30
  26. package/dist/{chunk-YAYFJITA.js → chunk-2DXCIFDK.js} +3 -3
  27. package/dist/{chunk-EQR6CWKL.js → chunk-63D4EGTO.js} +3 -3
  28. package/dist/{chunk-EZYMDZPN.js → chunk-6PJAGL2L.js} +5 -5
  29. package/dist/{chunk-S4VBXFXP.js → chunk-7PVTYKQI.js} +220 -16
  30. package/dist/{chunk-IRWSC76I.js → chunk-7TIDA343.js} +3 -3
  31. package/dist/{chunk-NPLAQVTF.js → chunk-7W6SRTYP.js} +3 -3
  32. package/dist/{chunk-UJYIV6JP.js → chunk-ARCFCLME.js} +5 -5
  33. package/dist/{chunk-DIZHFZTJ.js → chunk-ATGUMSCJ.js} +4 -4
  34. package/dist/chunk-B3D5VLUA.js +12 -0
  35. package/dist/{chunk-UNPXLODI.js → chunk-B7RN7IRD.js} +3 -4
  36. package/dist/{chunk-5BLMIE7F.js → chunk-DX43V2L4.js} +4 -4
  37. package/dist/{chunk-6UDFXWNE.js → chunk-EJITPGUJ.js} +21 -4
  38. package/dist/chunk-FDLU3RD4.js +29 -0
  39. package/dist/{chunk-7OCUVNSF.js → chunk-H6AQTECB.js} +1485 -2977
  40. package/dist/{chunk-T54B5GJP.js → chunk-JNUJZFQL.js} +2 -2
  41. package/dist/{chunk-XER2L725.js → chunk-KUVX423E.js} +2 -2
  42. package/dist/{chunk-R5KML52V.js → chunk-KZTALMEV.js} +4 -4
  43. package/dist/{chunk-CM4H6QMH.js → chunk-M6KGRVDD.js} +3 -3
  44. package/dist/{chunk-3MDI6LZT.js → chunk-NLE3ZLU6.js} +905 -896
  45. package/dist/{chunk-WADS2TV5.js → chunk-NO7MYZEO.js} +5 -4
  46. package/dist/{chunk-LH533WG4.js → chunk-NPH2SXRO.js} +2 -2
  47. package/dist/{chunk-VZUWS5IH.js → chunk-OVWFZSJT.js} +3 -3
  48. package/dist/{chunk-UQUO22Q5.js → chunk-OXMHVKM3.js} +5 -5
  49. package/dist/{chunk-PNFEODLY.js → chunk-QNI6VLVR.js} +3 -3
  50. package/dist/{chunk-MCT2524Y.js → chunk-QYT42J3T.js} +4 -4
  51. package/dist/{chunk-VQTHQBEC.js → chunk-S3HWVIGJ.js} +9 -14
  52. package/dist/{chunk-23OKKZ5V.js → chunk-S7A7BHNA.js} +4 -4
  53. package/dist/{chunk-3TGMDPDI.js → chunk-SSAUIEBT.js} +2 -2
  54. package/dist/{chunk-YMPGWFWU.js → chunk-UQQI7TQG.js} +3 -3
  55. package/dist/{chunk-UZUD5DRI.js → chunk-UXA5YROL.js} +2 -2
  56. package/dist/{chunk-K3CVGV3F.js → chunk-V7NH4SZB.js} +3 -3
  57. package/dist/{chunk-7AVKIH7O.js → chunk-WVY52EEZ.js} +5 -5
  58. package/dist/{chunk-QEOBHRRQ.js → chunk-X3OUSYUQ.js} +17912 -17444
  59. package/dist/{chunk-EARPFFS7.js → chunk-XNCQBHNR.js} +241 -4
  60. package/dist/{chunk-EQPYUHNM.js → chunk-ZIGJPI5N.js} +1497 -112
  61. package/dist/{chunk-A2UVOX6O.js → chunk-ZKWHKX2C.js} +7066 -6051
  62. package/dist/{chunk-GPMHDCWK.js → chunk-ZRGD2HUL.js} +3 -3
  63. package/dist/{chunk-PQKGBYDC.js → chunk-ZVT2WZZF.js} +3 -3
  64. package/dist/cli/commands/auth/logout.js +14 -19
  65. package/dist/cli/commands/auth/logout.test.js +17 -21
  66. package/dist/cli/commands/debug/command-flags.js +11 -15
  67. package/dist/cli/commands/demo/catalog.js +13 -18
  68. package/dist/cli/commands/demo/generate-file.js +13 -18
  69. package/dist/cli/commands/demo/index.js +13 -18
  70. package/dist/cli/commands/demo/print-ai-prompt.js +13 -18
  71. package/dist/cli/commands/docs/generate.js +11 -15
  72. package/dist/cli/commands/docs/generate.test.js +11 -15
  73. package/dist/cli/commands/help.js +11 -15
  74. package/dist/cli/commands/kitchen-sink/async.js +12 -16
  75. package/dist/cli/commands/kitchen-sink/async.test.js +12 -16
  76. package/dist/cli/commands/kitchen-sink/index.js +14 -18
  77. package/dist/cli/commands/kitchen-sink/index.test.js +14 -18
  78. package/dist/cli/commands/kitchen-sink/prompts.js +12 -16
  79. package/dist/cli/commands/kitchen-sink/prompts.test.js +12 -16
  80. package/dist/cli/commands/kitchen-sink/static.js +12 -16
  81. package/dist/cli/commands/kitchen-sink/static.test.js +12 -16
  82. package/dist/cli/commands/search.js +12 -16
  83. package/dist/cli/commands/upgrade.js +11 -15
  84. package/dist/cli/commands/version.js +12 -16
  85. package/dist/cli/commands/version.test.js +12 -16
  86. package/dist/cli/services/commands/search.js +4 -4
  87. package/dist/cli/services/commands/search.test.js +4 -4
  88. package/dist/cli/services/commands/version.js +6 -7
  89. package/dist/cli/services/commands/version.test.js +7 -8
  90. package/dist/cli/services/demo.js +5 -6
  91. package/dist/cli/services/demo.test.js +5 -6
  92. package/dist/cli/services/kitchen-sink/async.js +4 -4
  93. package/dist/cli/services/kitchen-sink/prompts.js +4 -4
  94. package/dist/cli/services/kitchen-sink/static.js +4 -4
  95. package/dist/cli/services/upgrade.js +5 -6
  96. package/dist/cli/services/upgrade.test.js +7 -8
  97. package/dist/{constants-3CLHB4LQ.js → constants-EVER32LA.js} +3 -3
  98. package/dist/{custom-oclif-loader-D4H5EJW6.js → custom-oclif-loader-BQAFOUNG.js} +13 -6
  99. package/dist/{error-handler-HUI4HW3X.js → error-handler-S56KHSGD.js} +10 -8
  100. package/dist/hooks/postrun.js +12 -14
  101. package/dist/hooks/prerun.js +8 -11
  102. package/dist/index.js +7811 -7490
  103. package/dist/{local-7IRDZWLW.js → local-UQAQKOVL.js} +4 -4
  104. package/dist/{morph-6NYGHGNT.js → morph-DN4AZJZW.js} +9 -9
  105. package/dist/{node-UIH7JP3D.js → node-GZYZUMBW.js} +21 -19
  106. package/dist/{node-package-manager-2LWT2MNN.js → node-package-manager-AOVZD6TP.js} +5 -6
  107. package/dist/{path-JVVXOELJ.js → path-KUSF6CYC.js} +2 -2
  108. package/dist/{system-4HHX42JS.js → system-G7DVECOP.js} +4 -4
  109. package/dist/templates/ui-extensions/projects/web_pixel_extension/package.json.liquid +1 -1
  110. package/dist/tsconfig.tsbuildinfo +1 -1
  111. package/dist/{ui-NFBKMC4P.js → ui-2AOZFYFM.js} +4 -4
  112. package/dist/{workerd-4HFD3PS4.js → workerd-2MO23YDQ.js} +22 -19
  113. package/oclif.manifest.json +265 -4
  114. package/package.json +7 -10
  115. package/dist/assets/dev-console/extensions/dev-console/assets/index-Bi7y6lI5.css +0 -1
  116. package/dist/assets/hydrogen/css-modules/package.json +0 -6
  117. package/dist/assets/hydrogen/postcss/package.json +0 -10
  118. package/dist/assets/hydrogen/postcss/postcss.config.js +0 -8
  119. package/dist/assets/hydrogen/starter/.graphqlrc.yml +0 -12
  120. package/dist/assets/hydrogen/starter/app/components/Cart.tsx +0 -364
  121. package/dist/assets/hydrogen/tailwind/postcss.config.js +0 -10
  122. package/dist/assets/hydrogen/tailwind/tailwind.config.js +0 -8
  123. package/dist/chunk-4WBV3WP3.js +0 -221
  124. package/dist/chunk-OWICSMFV.js +0 -12
  125. package/dist/chunk-QCDYZY46.js +0 -1070
  126. package/dist/chunk-QEKTVN5A.js +0 -4385
  127. package/dist/chunk-QOUOFEGO.js +0 -35
  128. package/dist/chunk-WP234IUO.js +0 -265
  129. package/dist/chunk-XLPMGRR3.js +0 -496
  130. package/dist/chunk-XSKJYEAZ.js +0 -1453
  131. package/dist/error-handler-QDDLQDOJ.js +0 -43
@@ -1,35 +0,0 @@
1
- import {
2
- ZodObject,
3
- ZodOptional,
4
- z
5
- } from "./chunk-6UDFXWNE.js";
6
- import {
7
- init_cjs_shims
8
- } from "./chunk-ZPL24Y2D.js";
9
-
10
- // ../cli-kit/src/public/node/schema.ts
11
- init_cjs_shims();
12
- function deepStrict(schema) {
13
- if (schema instanceof ZodObject) {
14
- const shape = schema.shape;
15
- const strictShape = Object.fromEntries(
16
- Object.entries(shape).map(([key, value]) => [key, deepStrict(value)])
17
- );
18
- return z.object(strictShape).strict();
19
- } else if (schema instanceof ZodOptional) {
20
- return deepStrict(schema._def.innerType).optional();
21
- } else {
22
- return schema;
23
- }
24
- }
25
- function errorsToString(errors) {
26
- return errors.map(
27
- (error) => error.path.join(".").concat(": ").concat(error.message ?? "Unknow error")
28
- ).join("\n");
29
- }
30
-
31
- export {
32
- deepStrict,
33
- errorsToString
34
- };
35
- //# sourceMappingURL=chunk-QOUOFEGO.js.map
@@ -1,265 +0,0 @@
1
- import {
2
- require_toml
3
- } from "./chunk-EARPFFS7.js";
4
- import {
5
- errorHandler,
6
- registerCleanBugsnagErrorsFromWithinPlugins
7
- } from "./chunk-4WBV3WP3.js";
8
- import {
9
- hashString
10
- } from "./chunk-VQTHQBEC.js";
11
- import {
12
- AbortError,
13
- addPublicMetadata,
14
- addSensitiveMetadata,
15
- findPathUp,
16
- isDevelopment,
17
- isTruthy,
18
- outputContent,
19
- outputInfo,
20
- outputToken,
21
- readFile,
22
- renderInfo,
23
- renderWarning,
24
- terminalSupportsRawMode,
25
- underscore
26
- } from "./chunk-3MDI6LZT.js";
27
- import {
28
- require_lib
29
- } from "./chunk-GEN4RXTD.js";
30
- import {
31
- cwd
32
- } from "./chunk-UNPXLODI.js";
33
- import {
34
- __toESM,
35
- init_cjs_shims
36
- } from "./chunk-ZPL24Y2D.js";
37
-
38
- // ../cli-kit/src/public/node/base-command.ts
39
- init_cjs_shims();
40
-
41
- // ../cli-kit/src/public/node/environments.ts
42
- init_cjs_shims();
43
-
44
- // ../cli-kit/src/public/node/toml.ts
45
- init_cjs_shims();
46
- var toml = __toESM(require_toml(), 1);
47
- function decodeToml(input) {
48
- const normalizedInput = input.replace(/\r\n$/g, "\n");
49
- return toml.parse(normalizedInput);
50
- }
51
- function encodeToml(content) {
52
- const tomlSafeContent = content;
53
- return toml.stringify(tomlSafeContent);
54
- }
55
-
56
- // ../cli-kit/src/public/node/environments.ts
57
- async function loadEnvironment(environmentName, fileName, options) {
58
- const basePath = options?.from && options?.from !== "." ? options.from : cwd();
59
- const filePath = await findPathUp(fileName, {
60
- cwd: basePath,
61
- type: "file"
62
- });
63
- if (!filePath) {
64
- renderWarning({ body: "Environment file not found." });
65
- return void 0;
66
- }
67
- const environmentsJson = decodeToml(await readFile(filePath));
68
- const environments = environmentsJson.environments;
69
- if (!environments) {
70
- renderWarning({
71
- body: ["No environments found in", { command: filePath }, { char: "." }]
72
- });
73
- return void 0;
74
- }
75
- const environment = environments[environmentName];
76
- if (!environment)
77
- renderWarning({
78
- body: ["Environment", { command: environmentName }, "not found."]
79
- });
80
- await addSensitiveMetadata(() => ({
81
- environmentFlags: JSON.stringify(environment)
82
- }));
83
- return environment;
84
- }
85
-
86
- // ../cli-kit/src/public/node/base-command.ts
87
- var import_core = __toESM(require_lib(), 1);
88
- var BaseCommand = class extends import_core.Command {
89
- static {
90
- // eslint-disable-next-line @typescript-eslint/ban-types
91
- this.baseFlags = {};
92
- }
93
- // Replace markdown links to plain text like: "link label" (url)
94
- static descriptionWithoutMarkdown() {
95
- return (this.descriptionWithMarkdown ?? "").replace(/(\[)(.*?)(])(\()(.*?)(\))/gm, '"$2" ($5)');
96
- }
97
- static analyticsNameOverride() {
98
- return void 0;
99
- }
100
- static analyticsStopCommand() {
101
- return void 0;
102
- }
103
- async catch(error) {
104
- error.skipOclifErrorHandling = true;
105
- await errorHandler(error, this.config);
106
- return import_core.Errors.handle(error);
107
- }
108
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
109
- async init() {
110
- this.exitWithTimestampWhenEnvVariablePresent();
111
- if (!isDevelopment()) {
112
- await registerCleanBugsnagErrorsFromWithinPlugins(this.config);
113
- }
114
- this.showNpmFlagWarning();
115
- return super.init();
116
- }
117
- // NPM creates an environment variable for every flag passed to a script.
118
- // This function checks for the presence of any of the available CLI flags
119
- // and warns the user to use the `--` separator.
120
- showNpmFlagWarning() {
121
- const commandVariables = this.constructor;
122
- const commandFlags = Object.keys(commandVariables.flags || {});
123
- const possibleNpmEnvVars = commandFlags.map((key) => `npm_config_${underscore(key).replace(/^no_/, "")}`);
124
- if (possibleNpmEnvVars.some((flag) => process.env[flag] !== void 0)) {
125
- renderWarning({
126
- body: [
127
- "NPM scripts require an extra",
128
- { command: "--" },
129
- "separator to pass the flags. Example:",
130
- { command: "npm run dev -- --reset" }
131
- ]
132
- });
133
- }
134
- }
135
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
136
- exitWithTimestampWhenEnvVariablePresent() {
137
- if (isTruthy(process.env.SHOPIFY_CLI_ENV_STARTUP_PERFORMANCE_RUN)) {
138
- outputInfo(`
139
- SHOPIFY_CLI_TIMESTAMP_START
140
- { "timestamp": ${Date.now()} }
141
- SHOPIFY_CLI_TIMESTAMP_END
142
- `);
143
- process.exit(0);
144
- }
145
- }
146
- async parse(options, argv) {
147
- let result = await super.parse(options, argv);
148
- result = await this.resultWithEnvironment(result, options, argv);
149
- await addFromParsedFlags(result.flags);
150
- return { ...result, ...{ argv: result.argv } };
151
- }
152
- environmentsFilename() {
153
- return void 0;
154
- }
155
- failMissingNonTTYFlags(flags, requiredFlags) {
156
- if (terminalSupportsRawMode())
157
- return;
158
- requiredFlags.forEach((name) => {
159
- if (!(name in flags)) {
160
- throw new AbortError(
161
- outputContent`Flag not specified:
162
-
163
- ${outputToken.cyan(name)}
164
-
165
- This flag is required in non-interactive terminal environments, such as a CI environment, or when piping input from another process.`,
166
- "To resolve this, specify the option in the command, or run the command in an interactive environment such as your local terminal."
167
- );
168
- }
169
- });
170
- }
171
- async resultWithEnvironment(originalResult, options, argv) {
172
- const flags = originalResult.flags;
173
- const environmentsFileName = this.environmentsFilename();
174
- if (!flags.environment || !environmentsFileName)
175
- return originalResult;
176
- const environment = await loadEnvironment(flags.environment, environmentsFileName, { from: flags.path });
177
- if (!environment)
178
- return originalResult;
179
- const noDefaultsResult = await super.parse(noDefaultsOptions(options), argv);
180
- const result = await super.parse(options, [
181
- // Need to specify argv default because we're merging with argsFromEnvironment.
182
- ...argv || this.argv,
183
- ...argsFromEnvironment(environment, options, noDefaultsResult)
184
- ]);
185
- reportEnvironmentApplication(
186
- noDefaultsResult.flags,
187
- result.flags,
188
- flags.environment,
189
- environment
190
- );
191
- return result;
192
- }
193
- };
194
- async function addFromParsedFlags(flags) {
195
- await addPublicMetadata(() => ({
196
- cmd_all_verbose: flags.verbose,
197
- cmd_all_path_override: flags.path !== void 0,
198
- cmd_all_path_override_hash: flags.path === void 0 ? void 0 : hashString(flags.path)
199
- }));
200
- }
201
- function reportEnvironmentApplication(noDefaultsFlags, flagsWithEnvironments, environmentName, environment) {
202
- const changes = {};
203
- for (const [name, value] of Object.entries(flagsWithEnvironments)) {
204
- const userSpecifiedThisFlag = Object.prototype.hasOwnProperty.call(noDefaultsFlags, name);
205
- const environmentContainsFlag = Object.prototype.hasOwnProperty.call(environment, name);
206
- if (!userSpecifiedThisFlag && environmentContainsFlag) {
207
- const valueToReport = name === "password" ? `********${value.substr(-4)}` : value;
208
- changes[name] = valueToReport;
209
- }
210
- }
211
- if (Object.keys(changes).length === 0)
212
- return;
213
- const items = Object.entries(changes).map(([name, value]) => `${name}: ${value}`);
214
- renderInfo({
215
- headline: ["Using applicable flags from", { userInput: environmentName }, "environment:"],
216
- body: [{ list: { items } }]
217
- });
218
- }
219
- function noDefaultsOptions(options) {
220
- if (!options?.flags)
221
- return options;
222
- return {
223
- ...options,
224
- flags: Object.fromEntries(
225
- Object.entries(options.flags).map(([label, settings]) => {
226
- const copiedSettings = { ...settings };
227
- delete copiedSettings.default;
228
- return [label, copiedSettings];
229
- })
230
- )
231
- };
232
- }
233
- function argsFromEnvironment(environment, options, noDefaultsResult) {
234
- const args = [];
235
- for (const [label, value] of Object.entries(environment)) {
236
- const flagIsRelevantToCommand = options?.flags && Object.prototype.hasOwnProperty.call(options.flags, label);
237
- const userSpecifiedThisFlag = noDefaultsResult.flags && Object.prototype.hasOwnProperty.call(noDefaultsResult.flags, label);
238
- if (flagIsRelevantToCommand && !userSpecifiedThisFlag) {
239
- if (typeof value === "boolean") {
240
- if (value === true) {
241
- args.push(`--${label}`);
242
- } else {
243
- throw new AbortError(
244
- outputContent`Environments can only specify true for boolean flags. Attempted to set ${outputToken.yellow(
245
- label
246
- )} to false.`
247
- );
248
- }
249
- } else if (Array.isArray(value)) {
250
- value.forEach((element) => args.push(`--${label}`, `${element}`));
251
- } else {
252
- args.push(`--${label}`, `${value}`);
253
- }
254
- }
255
- }
256
- return args;
257
- }
258
- var base_command_default = BaseCommand;
259
-
260
- export {
261
- decodeToml,
262
- encodeToml,
263
- base_command_default
264
- };
265
- //# sourceMappingURL=chunk-WP234IUO.js.map