@shopify/create-hydrogen 2.0.1 → 2.0.2
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.
- package/CHANGELOG.md +9 -0
- package/dist/commands/init.js +10 -20
- package/dist/commands/init.js.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# @shopify/create-hydrogen
|
|
2
2
|
|
|
3
|
+
## 2.0.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- c6a9450b: Add support to scaffold function extensions
|
|
8
|
+
- Updated dependencies [c6a9450b]
|
|
9
|
+
- Updated dependencies [70d8d50d]
|
|
10
|
+
- @shopify/cli-kit@2.0.2
|
|
11
|
+
|
|
3
12
|
## 2.0.1
|
|
4
13
|
|
|
5
14
|
### Patch Changes
|
package/dist/commands/init.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { ui,
|
|
2
|
-
import download from 'download';
|
|
1
|
+
import { ui, os, constants, string, path, file, git, template, npm, output, dependency, cli } from '@shopify/cli-kit';
|
|
3
2
|
import { Writable } from 'stream';
|
|
4
3
|
import { Flags, Command } from '@oclif/core';
|
|
5
4
|
|
|
@@ -31,16 +30,6 @@ const init$1 = async (options, prompt = ui.prompt) => {
|
|
|
31
30
|
return { ...options, ...promptOutput };
|
|
32
31
|
};
|
|
33
32
|
|
|
34
|
-
async function downloadTemplate({ templateUrl, into }) {
|
|
35
|
-
const { name, user, subDirectory } = github.parseRepoUrl(templateUrl);
|
|
36
|
-
const latestRelease = await github.getLatestRelease(user, name);
|
|
37
|
-
await download(latestRelease.tarball_url, into, {
|
|
38
|
-
extract: true,
|
|
39
|
-
filter: ({ path }) => path.includes(subDirectory),
|
|
40
|
-
map: (value) => ({ ...value, path: file.stripUp(value.path, 3) })
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
|
|
44
33
|
const GIT_HOST = "git@github.com";
|
|
45
34
|
async function init(options) {
|
|
46
35
|
const user = await os.username() ?? "";
|
|
@@ -59,9 +48,9 @@ async function init(options) {
|
|
|
59
48
|
{
|
|
60
49
|
title: "Downloading template",
|
|
61
50
|
task: async (_, task) => {
|
|
62
|
-
await
|
|
63
|
-
|
|
64
|
-
|
|
51
|
+
await git.downloadRepository({
|
|
52
|
+
repoUrl: [GIT_HOST, options.template].join(":"),
|
|
53
|
+
destination: templateDownloadDir
|
|
65
54
|
});
|
|
66
55
|
task.title = "Template downloaded";
|
|
67
56
|
}
|
|
@@ -168,12 +157,12 @@ async function updateCLIDependencies(packageJSON, local, packageDependencies) {
|
|
|
168
157
|
async function installDependencies(directory, dependencyManager, stdout) {
|
|
169
158
|
await dependency.install(directory, dependencyManager, stdout);
|
|
170
159
|
}
|
|
171
|
-
async function cleanup(
|
|
160
|
+
async function cleanup(webOutputDirectory) {
|
|
172
161
|
const gitPaths = await path.glob([
|
|
173
|
-
path.join(
|
|
174
|
-
path.join(
|
|
175
|
-
path.join(
|
|
176
|
-
path.join(
|
|
162
|
+
path.join(webOutputDirectory, "**", ".git"),
|
|
163
|
+
path.join(webOutputDirectory, "**", ".github"),
|
|
164
|
+
path.join(webOutputDirectory, "**", ".gitmodules"),
|
|
165
|
+
path.join(webOutputDirectory, ".stackblitzrc")
|
|
177
166
|
], {
|
|
178
167
|
dot: true,
|
|
179
168
|
onlyFiles: false,
|
|
@@ -205,6 +194,7 @@ const _Init = class extends Command {
|
|
|
205
194
|
};
|
|
206
195
|
let Init = _Init;
|
|
207
196
|
Init.flags = {
|
|
197
|
+
...cli.globalFlags,
|
|
208
198
|
name: Flags.string({
|
|
209
199
|
char: "n",
|
|
210
200
|
env: "SHOPIFY_FLAG_NAME",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sources":["../../src/prompts/init.ts","../../src/utils/template.ts","../../src/services/init.ts","../../src/commands/init.ts"],"sourcesContent":["import {ui} from '@shopify/cli-kit'\n\nexport enum Template {\n Minimum = 'template-hydrogen-minimum',\n Default = 'template-hydrogen-default',\n}\n\ninterface InitOptions {\n name?: string\n template?: string\n}\n\ninterface InitOutput {\n name: string\n template: Template\n}\n\nconst TEMPLATE_MAP = {\n [Template.Default]: 'Shopify/hydrogen/templates/template-hydrogen-default',\n [Template.Minimum]: 'Shopify/hydrogen/templates/template-hydrogen-hello-world',\n}\n\nconst init = async (options: InitOptions, prompt = ui.prompt): Promise<InitOutput> => {\n const questions: ui.Question[] = []\n if (!options.name) {\n questions.push({\n type: 'input',\n name: 'name',\n message: 'Name your new Hydrogen storefront',\n default: 'hydrogen-app',\n })\n }\n\n if (!options.template) {\n questions.push({\n type: 'select',\n name: 'template',\n message: 'Choose a template',\n choices: Object.keys(TEMPLATE_MAP),\n default: Template.Default,\n result: (value) => TEMPLATE_MAP[value as Template],\n })\n }\n\n const promptOutput: InitOutput = await prompt(questions)\n return {...options, ...promptOutput}\n}\n\nexport default init\n","import {github, file} from '@shopify/cli-kit'\nimport download from 'download'\n\nexport async function downloadTemplate({templateUrl, into}: {templateUrl: string; into: string}) {\n const {name, user, subDirectory} = github.parseRepoUrl(templateUrl)\n const latestRelease = await github.getLatestRelease(user, name)\n\n await download(latestRelease.tarball_url, into, {\n extract: true,\n filter: ({path}) => path.includes(subDirectory),\n map: (value) => ({...value, path: file.stripUp(value.path, 3)}),\n })\n}\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n\nimport {downloadTemplate} from '../utils/template'\nimport {constants, template, string, path, file, output, os, ui, npm, dependency} from '@shopify/cli-kit'\nimport {Writable} from 'stream'\n\ninterface InitOptions {\n name: string\n template: string\n directory: string\n dependencyManager?: string\n shopifyCliVersion?: string\n cliHydrogenPackageVersion?: string\n hydrogenVersion?: string\n local: boolean\n}\n\nconst RENAME_MAP = {\n _gitignore: '.gitignore',\n}\n\nconst GIT_HOST = 'git@github.com'\n\nasync function init(options: InitOptions) {\n const user = (await os.username()) ?? ''\n const cliPackageVersion = options.shopifyCliVersion ?? constants.versions.cli\n const cliHydrogenPackageVersion = options.cliHydrogenPackageVersion ?? constants.versions.cliHydrogen\n const hydrogenPackageVersion = options.hydrogenVersion\n const dependencyManager = inferDependencyManager(options.dependencyManager)\n const hyphenizedName = string.hyphenize(options.name)\n const outputDirectory = path.join(options.directory, hyphenizedName)\n\n await file.inTemporaryDirectory(async (tmpDir) => {\n const templateDownloadDir = path.join(tmpDir, 'download')\n const templateScaffoldDir = path.join(tmpDir, 'app')\n\n await file.mkdir(templateDownloadDir)\n await file.mkdir(templateScaffoldDir)\n\n const list = new ui.Listr(\n [\n {\n title: 'Downloading template',\n task: async (_, task) => {\n await downloadTemplate({\n templateUrl: [GIT_HOST, options.template].join(':'),\n into: templateDownloadDir,\n })\n task.title = 'Template downloaded'\n },\n },\n {\n title: `Initializing your app ${hyphenizedName}`,\n task: async (_, parentTask) => {\n return parentTask.newListr(\n [\n {\n title: 'Parsing template files',\n task: async (_, task) => {\n const templateData = {\n name: hyphenizedName,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n shopify_cli_version: cliPackageVersion,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n hydrogen_version: hydrogenPackageVersion,\n author: user,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n dependency_manager: options.dependencyManager,\n }\n await template.recursiveDirectoryCopy(templateDownloadDir, templateScaffoldDir, templateData)\n\n task.title = 'Template files parsed'\n },\n },\n {\n title: 'Updating package.json',\n task: async (_, task) => {\n const packageJSON = await npm.readPackageJSON(templateScaffoldDir)\n\n await npm.updateAppData(packageJSON, hyphenizedName)\n await updateCLIDependencies(packageJSON, options.local, {\n dependencies: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/hydrogen': hydrogenPackageVersion,\n },\n devDependencies: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/cli-hydrogen': cliHydrogenPackageVersion,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/cli': cliPackageVersion,\n },\n })\n\n await npm.writePackageJSON(templateScaffoldDir, packageJSON)\n\n task.title = 'Package.json updated'\n parentTask.title = 'App initialized'\n },\n },\n ],\n {concurrent: false},\n )\n },\n },\n {\n title: `Installing dependencies with ${dependencyManager}`,\n task: async (_, task) => {\n const stdout = new Writable({\n write(chunk, encoding, next) {\n task.output = chunk.toString()\n next()\n },\n })\n await installDependencies(templateScaffoldDir, dependencyManager, stdout)\n },\n },\n {\n title: 'Cleaning up',\n task: async (_, task) => {\n await cleanup(templateScaffoldDir)\n\n task.title = 'Completed clean up'\n },\n },\n ],\n {concurrent: false},\n )\n await list.run()\n\n await file.move(templateScaffoldDir, outputDirectory)\n })\n\n output.info(output.content`\n ${hyphenizedName} is ready to build! ✨\n Run ${output.token.command(`${dependencyManager} dev`)} to start developing.\n Docs: ${output.token.link('Quick start guide', 'https://shopify.dev/custom-storefronts/hydrogen')}\n `)\n\n output.info(output.content`Your project will display inventory from the Hydrogen Demo Store.\n To connect this project to your Shopify store's inventory instead,\n update ${output.token.yellow(`${hyphenizedName}/shopify.config.js`)} with your\n store ID and Storefront API key.\\n`)\n}\n\nfunction inferDependencyManager(optionsDependencyManager: string | undefined): dependency.DependencyManager {\n if (optionsDependencyManager && dependency.dependencyManager.includes(optionsDependencyManager)) {\n return optionsDependencyManager as dependency.DependencyManager\n }\n return dependency.dependencyManagerUsedForCreating()\n}\n\nexport default init\n\ninterface PackageDependencies {\n devDependencies: {[key: string]: string | undefined}\n dependencies: {[key: string]: string | undefined}\n}\n\nasync function updateCLIDependencies(\n packageJSON: npm.PackageJSON,\n local: boolean,\n packageDependencies: PackageDependencies,\n): Promise<npm.PackageJSON> {\n const {devDependencies, dependencies} = packageDependencies\n\n packageJSON.devDependencies = packageJSON.devDependencies || {}\n packageJSON.dependencies = packageJSON.dependencies || {}\n\n Object.keys(devDependencies).forEach((key) => {\n packageJSON.devDependencies[key] = devDependencies[key] || packageJSON.devDependencies[key]\n })\n\n Object.keys(dependencies).forEach((key) => {\n packageJSON.dependencies[key] = dependencies[key] || packageJSON.dependencies[key]\n })\n\n if (local) {\n const devDependencyOverrides = {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/cli': `file:${(await path.findUp('packages/cli', {type: 'directory'})) as string}`,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/cli-hydrogen': `file:${(await path.findUp('packages/cli-hydrogen', {type: 'directory'})) as string}`,\n }\n\n packageJSON.overrides = packageJSON.overrides\n ? {...packageJSON.overrides, ...devDependencyOverrides}\n : devDependencyOverrides\n\n packageJSON.resolutions = packageJSON.resolutions\n ? {...packageJSON.resolutions, ...devDependencyOverrides}\n : devDependencyOverrides\n }\n\n return packageJSON\n}\n\nasync function installDependencies(\n directory: string,\n dependencyManager: dependency.DependencyManager,\n stdout: Writable,\n): Promise<void> {\n await dependency.install(directory, dependencyManager, stdout)\n}\n\nasync function cleanup(homeOutputDirectory: string) {\n const gitPaths = await path.glob(\n [\n path.join(homeOutputDirectory, '**', '.git'),\n path.join(homeOutputDirectory, '**', '.github'),\n path.join(homeOutputDirectory, '**', '.gitmodules'),\n path.join(homeOutputDirectory, '.stackblitzrc'),\n ],\n {\n dot: true,\n onlyFiles: false,\n onlyDirectories: false,\n ignore: ['**/node_modules/**'],\n },\n )\n\n return Promise.all(gitPaths.map((path) => file.rmdir(path, {force: true}))).then(() => {})\n}\n","import initPrompt from '../prompts/init'\nimport initService from '../services/init'\nimport {path} from '@shopify/cli-kit'\nimport {Command, Flags} from '@oclif/core'\n\nexport default class Init extends Command {\n static flags = {\n name: Flags.string({\n char: 'n',\n env: 'SHOPIFY_FLAG_NAME',\n hidden: false,\n }),\n template: Flags.string({\n char: 't',\n env: 'SHOPIFY_FLAG_TEMPLATE',\n hidden: false,\n }),\n path: Flags.string({\n char: 'p',\n env: 'SHOPIFY_FLAG_PATH',\n parse: (input, _) => Promise.resolve(path.resolve(input)),\n hidden: false,\n }),\n // eslint-disable-next-line @typescript-eslint/naming-convention\n 'dependency-manager': Flags.string({\n char: 'd',\n env: 'SHOPIFY_FLAG_DEPENDENCY_MANAGER',\n hidden: false,\n options: ['npm', 'yarn', 'pnpm'],\n }),\n // eslint-disable-next-line @typescript-eslint/naming-convention\n 'shopify-cli-version': Flags.string({\n char: 's',\n env: 'SHOPIFY_FLAG_SHOPIFY_CLI_VERSION',\n hidden: false,\n }),\n // eslint-disable-next-line @typescript-eslint/naming-convention\n 'hydrogen-version': Flags.string({\n char: 'h',\n env: 'SHOPIFY_FLAG_HYDROGEN_VERSION',\n hidden: false,\n }),\n local: Flags.boolean({\n char: 'l',\n env: 'SHOPIFY_FLAG_LOCAL',\n default: false,\n hidden: true,\n }),\n }\n\n async run(): Promise<void> {\n const {flags} = await this.parse(Init)\n const directory = flags.path ? path.resolve(flags.path) : process.cwd()\n const promptAnswers = await initPrompt({\n name: flags.name,\n template: flags.template,\n })\n await initService({\n name: promptAnswers.name,\n template: promptAnswers.template,\n dependencyManager: flags['dependency-manager'],\n shopifyCliVersion: flags['shopify-cli-version'],\n hydrogenVersion: flags['hydrogen-version'],\n directory,\n local: flags.local,\n })\n }\n}\n"],"names":["init","initPrompt","initService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sources":["../../src/prompts/init.ts","../../src/services/init.ts","../../src/commands/init.ts"],"sourcesContent":["import {ui} from '@shopify/cli-kit'\n\nexport enum Template {\n Minimum = 'template-hydrogen-minimum',\n Default = 'template-hydrogen-default',\n}\n\ninterface InitOptions {\n name?: string\n template?: string\n}\n\ninterface InitOutput {\n name: string\n template: Template\n}\n\nconst TEMPLATE_MAP = {\n [Template.Default]: 'Shopify/hydrogen/templates/template-hydrogen-default',\n [Template.Minimum]: 'Shopify/hydrogen/templates/template-hydrogen-hello-world',\n}\n\nconst init = async (options: InitOptions, prompt = ui.prompt): Promise<InitOutput> => {\n const questions: ui.Question[] = []\n if (!options.name) {\n questions.push({\n type: 'input',\n name: 'name',\n message: 'Name your new Hydrogen storefront',\n default: 'hydrogen-app',\n })\n }\n\n if (!options.template) {\n questions.push({\n type: 'select',\n name: 'template',\n message: 'Choose a template',\n choices: Object.keys(TEMPLATE_MAP),\n default: Template.Default,\n result: (value) => TEMPLATE_MAP[value as Template],\n })\n }\n\n const promptOutput: InitOutput = await prompt(questions)\n return {...options, ...promptOutput}\n}\n\nexport default init\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n\nimport {constants, template, string, path, file, output, os, ui, npm, dependency, git} from '@shopify/cli-kit'\nimport {Writable} from 'stream'\n\ninterface InitOptions {\n name: string\n template: string\n directory: string\n dependencyManager?: string\n shopifyCliVersion?: string\n cliHydrogenPackageVersion?: string\n hydrogenVersion?: string\n local: boolean\n}\n\nconst RENAME_MAP = {\n _gitignore: '.gitignore',\n}\n\nconst GIT_HOST = 'git@github.com'\n\nasync function init(options: InitOptions) {\n const user = (await os.username()) ?? ''\n const cliPackageVersion = options.shopifyCliVersion ?? constants.versions.cli\n const cliHydrogenPackageVersion = options.cliHydrogenPackageVersion ?? constants.versions.cliHydrogen\n const hydrogenPackageVersion = options.hydrogenVersion\n const dependencyManager = inferDependencyManager(options.dependencyManager)\n const hyphenizedName = string.hyphenize(options.name)\n const outputDirectory = path.join(options.directory, hyphenizedName)\n\n await file.inTemporaryDirectory(async (tmpDir) => {\n const templateDownloadDir = path.join(tmpDir, 'download')\n const templateScaffoldDir = path.join(tmpDir, 'app')\n\n await file.mkdir(templateDownloadDir)\n await file.mkdir(templateScaffoldDir)\n\n const list = new ui.Listr(\n [\n {\n title: 'Downloading template',\n task: async (_, task) => {\n await git.downloadRepository({\n repoUrl: [GIT_HOST, options.template].join(':'),\n destination: templateDownloadDir,\n })\n task.title = 'Template downloaded'\n },\n },\n {\n title: `Initializing your app ${hyphenizedName}`,\n task: async (_, parentTask) => {\n return parentTask.newListr(\n [\n {\n title: 'Parsing template files',\n task: async (_, task) => {\n const templateData = {\n name: hyphenizedName,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n shopify_cli_version: cliPackageVersion,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n hydrogen_version: hydrogenPackageVersion,\n author: user,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n dependency_manager: options.dependencyManager,\n }\n await template.recursiveDirectoryCopy(templateDownloadDir, templateScaffoldDir, templateData)\n\n task.title = 'Template files parsed'\n },\n },\n {\n title: 'Updating package.json',\n task: async (_, task) => {\n const packageJSON = await npm.readPackageJSON(templateScaffoldDir)\n\n await npm.updateAppData(packageJSON, hyphenizedName)\n await updateCLIDependencies(packageJSON, options.local, {\n dependencies: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/hydrogen': hydrogenPackageVersion,\n },\n devDependencies: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/cli-hydrogen': cliHydrogenPackageVersion,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/cli': cliPackageVersion,\n },\n })\n\n await npm.writePackageJSON(templateScaffoldDir, packageJSON)\n\n task.title = 'Package.json updated'\n parentTask.title = 'App initialized'\n },\n },\n ],\n {concurrent: false},\n )\n },\n },\n {\n title: `Installing dependencies with ${dependencyManager}`,\n task: async (_, task) => {\n const stdout = new Writable({\n write(chunk, encoding, next) {\n task.output = chunk.toString()\n next()\n },\n })\n await installDependencies(templateScaffoldDir, dependencyManager, stdout)\n },\n },\n {\n title: 'Cleaning up',\n task: async (_, task) => {\n await cleanup(templateScaffoldDir)\n\n task.title = 'Completed clean up'\n },\n },\n ],\n {concurrent: false},\n )\n await list.run()\n\n await file.move(templateScaffoldDir, outputDirectory)\n })\n\n output.info(output.content`\n ${hyphenizedName} is ready to build! ✨\n Run ${output.token.command(`${dependencyManager} dev`)} to start developing.\n Docs: ${output.token.link('Quick start guide', 'https://shopify.dev/custom-storefronts/hydrogen')}\n `)\n\n output.info(output.content`Your project will display inventory from the Hydrogen Demo Store.\n To connect this project to your Shopify store's inventory instead,\n update ${output.token.yellow(`${hyphenizedName}/shopify.config.js`)} with your\n store ID and Storefront API key.\\n`)\n}\n\nfunction inferDependencyManager(optionsDependencyManager: string | undefined): dependency.DependencyManager {\n if (optionsDependencyManager && dependency.dependencyManager.includes(optionsDependencyManager)) {\n return optionsDependencyManager as dependency.DependencyManager\n }\n return dependency.dependencyManagerUsedForCreating()\n}\n\nexport default init\n\ninterface PackageDependencies {\n devDependencies: {[key: string]: string | undefined}\n dependencies: {[key: string]: string | undefined}\n}\n\nasync function updateCLIDependencies(\n packageJSON: npm.PackageJSON,\n local: boolean,\n packageDependencies: PackageDependencies,\n): Promise<npm.PackageJSON> {\n const {devDependencies, dependencies} = packageDependencies\n\n packageJSON.devDependencies = packageJSON.devDependencies || {}\n packageJSON.dependencies = packageJSON.dependencies || {}\n\n Object.keys(devDependencies).forEach((key) => {\n packageJSON.devDependencies[key] = devDependencies[key] || packageJSON.devDependencies[key]\n })\n\n Object.keys(dependencies).forEach((key) => {\n packageJSON.dependencies[key] = dependencies[key] || packageJSON.dependencies[key]\n })\n\n if (local) {\n const devDependencyOverrides = {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/cli': `file:${(await path.findUp('packages/cli', {type: 'directory'})) as string}`,\n // eslint-disable-next-line @typescript-eslint/naming-convention\n '@shopify/cli-hydrogen': `file:${(await path.findUp('packages/cli-hydrogen', {type: 'directory'})) as string}`,\n }\n\n packageJSON.overrides = packageJSON.overrides\n ? {...packageJSON.overrides, ...devDependencyOverrides}\n : devDependencyOverrides\n\n packageJSON.resolutions = packageJSON.resolutions\n ? {...packageJSON.resolutions, ...devDependencyOverrides}\n : devDependencyOverrides\n }\n\n return packageJSON\n}\n\nasync function installDependencies(\n directory: string,\n dependencyManager: dependency.DependencyManager,\n stdout: Writable,\n): Promise<void> {\n await dependency.install(directory, dependencyManager, stdout)\n}\n\nasync function cleanup(webOutputDirectory: string) {\n const gitPaths = await path.glob(\n [\n path.join(webOutputDirectory, '**', '.git'),\n path.join(webOutputDirectory, '**', '.github'),\n path.join(webOutputDirectory, '**', '.gitmodules'),\n path.join(webOutputDirectory, '.stackblitzrc'),\n ],\n {\n dot: true,\n onlyFiles: false,\n onlyDirectories: false,\n ignore: ['**/node_modules/**'],\n },\n )\n\n return Promise.all(gitPaths.map((path) => file.rmdir(path, {force: true}))).then(() => {})\n}\n","import initPrompt from '../prompts/init'\nimport initService from '../services/init'\nimport {path, cli} from '@shopify/cli-kit'\nimport {Command, Flags} from '@oclif/core'\n\nexport default class Init extends Command {\n static flags = {\n ...cli.globalFlags,\n name: Flags.string({\n char: 'n',\n env: 'SHOPIFY_FLAG_NAME',\n hidden: false,\n }),\n template: Flags.string({\n char: 't',\n env: 'SHOPIFY_FLAG_TEMPLATE',\n hidden: false,\n }),\n path: Flags.string({\n char: 'p',\n env: 'SHOPIFY_FLAG_PATH',\n parse: (input, _) => Promise.resolve(path.resolve(input)),\n hidden: false,\n }),\n // eslint-disable-next-line @typescript-eslint/naming-convention\n 'dependency-manager': Flags.string({\n char: 'd',\n env: 'SHOPIFY_FLAG_DEPENDENCY_MANAGER',\n hidden: false,\n options: ['npm', 'yarn', 'pnpm'],\n }),\n // eslint-disable-next-line @typescript-eslint/naming-convention\n 'shopify-cli-version': Flags.string({\n char: 's',\n env: 'SHOPIFY_FLAG_SHOPIFY_CLI_VERSION',\n hidden: false,\n }),\n // eslint-disable-next-line @typescript-eslint/naming-convention\n 'hydrogen-version': Flags.string({\n char: 'h',\n env: 'SHOPIFY_FLAG_HYDROGEN_VERSION',\n hidden: false,\n }),\n local: Flags.boolean({\n char: 'l',\n env: 'SHOPIFY_FLAG_LOCAL',\n default: false,\n hidden: true,\n }),\n }\n\n async run(): Promise<void> {\n const {flags} = await this.parse(Init)\n const directory = flags.path ? path.resolve(flags.path) : process.cwd()\n const promptAnswers = await initPrompt({\n name: flags.name,\n template: flags.template,\n })\n await initService({\n name: promptAnswers.name,\n template: promptAnswers.template,\n dependencyManager: flags['dependency-manager'],\n shopifyCliVersion: flags['shopify-cli-version'],\n hydrogenVersion: flags['hydrogen-version'],\n directory,\n local: flags.local,\n })\n }\n}\n"],"names":["init","initPrompt","initService"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shopify/create-hydrogen",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A CLI tool to create a new Shopify hydrogen app.",
|
|
6
6
|
"type": "module",
|
|
@@ -51,13 +51,13 @@
|
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@bugsnag/js": "^7.16.2",
|
|
54
|
-
"@oclif/core": "1.
|
|
55
|
-
"@shopify/cli-kit": "2.0.
|
|
54
|
+
"@oclif/core": "1.7.0",
|
|
55
|
+
"@shopify/cli-kit": "2.0.2",
|
|
56
56
|
"@types/download": "^8.0.1",
|
|
57
57
|
"download": "^8.0.0"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
|
-
"vitest": "0.
|
|
60
|
+
"vitest": "0.10.0"
|
|
61
61
|
},
|
|
62
62
|
"engine-strict": true,
|
|
63
63
|
"engines": {
|