@shopify/cli-kit 3.43.0 → 3.44.1-pre.0
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/README.md +15 -7
- package/assets/cli-ruby/Gemfile +6 -3
- package/assets/cli-ruby/lib/project_types/extension/commands/serve.rb +10 -0
- package/assets/cli-ruby/lib/project_types/extension/models/specification_handlers/theme_app_extension.rb +1 -1
- package/assets/cli-ruby/lib/project_types/theme/cli.rb +1 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/common/root_helper.rb +3 -2
- package/assets/cli-ruby/lib/project_types/theme/commands/console.rb +15 -0
- package/assets/cli-ruby/lib/project_types/theme/commands/push.rb +1 -0
- package/assets/cli-ruby/lib/project_types/theme/messages/messages.rb +4 -2
- package/assets/cli-ruby/lib/shopify_cli/constants.rb +1 -0
- package/assets/cli-ruby/lib/shopify_cli/environment.rb +4 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload/script_injector.rb +1 -1
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/hot_reload.rb +9 -2
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server/proxy.rb +13 -12
- package/assets/cli-ruby/lib/shopify_cli/theme/dev_server.rb +2 -2
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/dev_server.rb +7 -4
- package/assets/cli-ruby/lib/shopify_cli/theme/extension/host_theme.rb +19 -14
- package/assets/cli-ruby/lib/shopify_cli/theme/repl/api.rb +107 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/repl/auth_dev_server.rb +80 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/repl/auth_middleware.rb +73 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/repl/resources/success.html +79 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/repl/resources/template.liquid +15 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/repl.rb +145 -0
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer/standard_reporter.rb +2 -2
- package/assets/cli-ruby/lib/shopify_cli/theme/syncer.rb +1 -1
- package/assets/cli-ruby/lib/shopify_cli/theme/theme.rb +6 -6
- package/dist/private/node/analytics.d.ts +2 -2
- package/dist/private/node/analytics.js.map +1 -1
- package/dist/private/node/api/graphql.js +9 -16
- package/dist/private/node/api/graphql.js.map +1 -1
- package/dist/private/node/api/headers.js +8 -5
- package/dist/private/node/api/headers.js.map +1 -1
- package/dist/private/node/api.d.ts +9 -0
- package/dist/private/node/api.js +19 -0
- package/dist/private/node/api.js.map +1 -1
- package/dist/private/node/colors.js.map +1 -0
- package/dist/private/node/conf-store.d.ts +24 -5
- package/dist/private/node/conf-store.js +21 -3
- package/dist/private/node/conf-store.js.map +1 -1
- package/dist/private/node/constants.d.ts +2 -0
- package/dist/private/node/constants.js +2 -0
- package/dist/private/node/constants.js.map +1 -1
- package/dist/private/node/content-tokens.js +1 -1
- package/dist/private/node/content-tokens.js.map +1 -1
- package/dist/private/node/semver.js.map +1 -0
- package/dist/private/node/session/identity-token-validation.d.ts +1 -1
- package/dist/private/node/session/identity-token-validation.js +45 -20
- package/dist/private/node/session/identity-token-validation.js.map +1 -1
- package/dist/private/node/session/store.js +3 -46
- package/dist/private/node/session/store.js.map +1 -1
- package/dist/private/node/session.js +13 -10
- package/dist/private/node/session.js.map +1 -1
- package/dist/private/node/themes/generate-theme-name.js.map +1 -0
- package/dist/private/node/themes/replace-invalid-characters.js.map +1 -0
- package/dist/private/node/themes/themes-api/headers.js.map +1 -0
- package/dist/private/node/themes/themes-api/retry.js.map +1 -0
- package/dist/private/node/themes/themes-api/throttler.js.map +1 -0
- package/dist/private/node/ui/components/ConcurrentOutput.d.ts +0 -1
- package/dist/private/node/ui/components/ConcurrentOutput.js +0 -1
- package/dist/private/node/ui/components/ConcurrentOutput.js.map +1 -1
- package/dist/public/common/string.d.ts +16 -4
- package/dist/public/common/string.js +25 -4
- package/dist/public/common/string.js.map +1 -1
- package/dist/public/common/ts/deep-required.d.ts +0 -1
- package/dist/public/common/ts/deep-required.js.map +1 -1
- package/dist/public/common/ts/pick-by-prefix.d.ts +0 -1
- package/dist/public/common/ts/pick-by-prefix.js.map +1 -1
- package/dist/public/common/version.d.ts +1 -1
- package/dist/public/common/version.js +1 -1
- package/dist/public/common/version.js.map +1 -1
- package/dist/public/node/base-command.d.ts +8 -5
- package/dist/public/node/base-command.js +1 -1
- package/dist/public/node/base-command.js.map +1 -1
- package/dist/public/node/cli.d.ts +1 -1
- package/dist/public/node/cli.js +0 -1
- package/dist/public/node/cli.js.map +1 -1
- package/dist/public/node/context/spin.d.ts +14 -0
- package/dist/public/node/context/spin.js +19 -0
- package/dist/public/node/context/spin.js.map +1 -1
- package/dist/public/node/environment.d.ts +12 -0
- package/dist/public/node/environment.js +14 -0
- package/dist/public/node/environment.js.map +1 -0
- package/dist/public/node/fs.d.ts +8 -12
- package/dist/public/node/fs.js +11 -35
- package/dist/public/node/fs.js.map +1 -1
- package/dist/public/node/http.js +5 -10
- package/dist/public/node/http.js.map +1 -1
- package/dist/public/node/local-storage.d.ts +37 -0
- package/dist/public/node/local-storage.js +44 -0
- package/dist/public/node/local-storage.js.map +1 -0
- package/dist/public/node/node-package-manager.js +1 -1
- package/dist/public/node/node-package-manager.js.map +1 -1
- package/dist/public/node/output.d.ts +0 -1
- package/dist/public/node/output.js +1 -2
- package/dist/public/node/output.js.map +1 -1
- package/dist/public/node/path.d.ts +58 -2
- package/dist/public/node/path.js +75 -3
- package/dist/public/node/path.js.map +1 -1
- package/dist/public/node/ruby.d.ts +2 -1
- package/dist/public/node/ruby.js +85 -31
- package/dist/public/node/ruby.js.map +1 -1
- package/dist/public/node/themes/conf.d.ts +12 -0
- package/dist/public/node/themes/conf.js +24 -0
- package/dist/public/node/themes/conf.js.map +1 -0
- package/dist/public/node/themes/theme-manager.js +1 -1
- package/dist/public/node/themes/theme-manager.js.map +1 -1
- package/dist/public/node/themes/themes-api.js +3 -3
- package/dist/public/node/themes/themes-api.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -8
- package/dist/private/node/secure-store.d.ts +0 -19
- package/dist/private/node/secure-store.js +0 -63
- package/dist/private/node/secure-store.js.map +0 -1
- package/dist/public/node/colors.js.map +0 -1
- package/dist/public/node/conf.d.ts +0 -2
- package/dist/public/node/conf.js +0 -3
- package/dist/public/node/conf.js.map +0 -1
- package/dist/public/node/semver.js.map +0 -1
- package/dist/public/node/themes/generate-theme-name.js.map +0 -1
- package/dist/public/node/themes/replace-invalid-characters.js.map +0 -1
- package/dist/public/node/themes/themes-api/headers.js.map +0 -1
- package/dist/public/node/themes/themes-api/retry.js.map +0 -1
- package/dist/public/node/themes/themes-api/throttler.js.map +0 -1
- package/dist/store/schema.d.ts +0 -3
- package/dist/store/schema.js +0 -27
- package/dist/store/schema.js.map +0 -1
- /package/dist/{public → private}/node/colors.d.ts +0 -0
- /package/dist/{public → private}/node/colors.js +0 -0
- /package/dist/{public → private}/node/semver.d.ts +0 -0
- /package/dist/{public → private}/node/semver.js +0 -0
- /package/dist/{public → private}/node/themes/generate-theme-name.d.ts +0 -0
- /package/dist/{public → private}/node/themes/generate-theme-name.js +0 -0
- /package/dist/{public → private}/node/themes/replace-invalid-characters.d.ts +0 -0
- /package/dist/{public → private}/node/themes/replace-invalid-characters.js +0 -0
- /package/dist/{public → private}/node/themes/themes-api/headers.d.ts +0 -0
- /package/dist/{public → private}/node/themes/themes-api/headers.js +0 -0
- /package/dist/{public → private}/node/themes/themes-api/retry.d.ts +0 -0
- /package/dist/{public → private}/node/themes/themes-api/retry.js +0 -0
- /package/dist/{public → private}/node/themes/themes-api/throttler.d.ts +0 -0
- /package/dist/{public → private}/node/themes/themes-api/throttler.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"themes-api.js","sourceRoot":"","sources":["../../../../src/public/node/themes/themes-api.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"themes-api.js","sourceRoot":"","sources":["../../../../src/public/node/themes/themes-api.ts"],"names":[],"mappings":"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","sourcesContent":["import {storeAdminUrl} from './theme-urls.js'\nimport {Theme} from './models/theme.js'\nimport * as throttler from '../../../private/node/themes/themes-api/throttler.js'\nimport {apiCallLimit, retryAfter} from '../../../private/node/themes/themes-api/headers.js'\nimport {retry} from '../../../private/node/themes/themes-api/retry.js'\nimport {restRequest, RestResponse} from '@shopify/cli-kit/node/api/admin'\nimport {AdminSession} from '@shopify/cli-kit/node/session'\nimport {AbortError} from '@shopify/cli-kit/node/error'\n\nexport type ThemeParams = Partial<Pick<Theme, 'name' | 'role'>>\n\nexport async function fetchTheme(id: number, session: AdminSession): Promise<Theme | undefined> {\n const response = await request('GET', `/themes/${id}`, session, undefined, {fields: 'id'})\n return buildTheme(response.json.theme)\n}\n\nexport async function fetchThemes(session: AdminSession): Promise<Theme[]> {\n const response = await request('GET', '/themes', session, undefined, {fields: 'id,name,role'})\n return buildThemes(response)\n}\n\nexport async function createTheme(params: ThemeParams, session: AdminSession): Promise<Theme | undefined> {\n const response = await request('POST', '/themes', session, {theme: {...params}})\n return buildTheme({...response.json.theme, createdAtRuntime: true})\n}\n\nexport async function updateTheme(id: number, params: ThemeParams, session: AdminSession): Promise<Theme | undefined> {\n const response = await request('PUT', `/themes/${id}`, session, {theme: {id, ...params}})\n return buildTheme(response.json.theme)\n}\n\nexport async function publishTheme(id: number, session: AdminSession): Promise<Theme | undefined> {\n return updateTheme(id, {role: 'main'}, session)\n}\n\nexport async function deleteTheme(id: number, session: AdminSession): Promise<Theme | undefined> {\n const response = await request('DELETE', `/themes/${id}`, session)\n return buildTheme(response.json.theme)\n}\n\nasync function request<T>(\n method: string,\n path: string,\n session: AdminSession,\n params?: T,\n searchParams: {[name: string]: string} = {},\n): Promise<RestResponse> {\n const response = await throttler.throttle(() => restRequest(method, path, session, params, searchParams))\n\n const status = response.status\n const callLimit = apiCallLimit(response)\n\n throttler.updateApiCallLimit(callLimit)\n\n switch (true) {\n case status >= 200 && status <= 399:\n // Returns the successful reponse\n return response\n case status === 404:\n // Defer the decision when a resource is not found\n return response\n case status === 429:\n // Retry following the \"retry-after\" header\n return retry(() => request(method, path, session, params, searchParams), retryAfter(response))\n case status === 403:\n return handleForbiddenError(session)\n case status === 401:\n throw new AbortError(`[${status}] API request unauthorized error`)\n case status >= 400 && status <= 499:\n throw new AbortError(`[${status}] API request client error`)\n case status >= 500 && status <= 599:\n throw new AbortError(`[${status}] API request server error`)\n default:\n throw new AbortError(`[${status}] API request unexpected error`)\n }\n}\n\nfunction buildThemes(response: RestResponse): Theme[] {\n const themes = response.json?.themes\n\n if (themes?.length > 0) {\n return themes.map(buildTheme)\n }\n\n return []\n}\n\n// Using `any` to avoid introducing extra DTO layers.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction buildTheme(themeJson: any): Theme | undefined {\n if (!themeJson?.id) {\n return undefined\n }\n\n return new Theme(themeJson.id, themeJson.name, themeJson.role, themeJson.createdAtRuntime)\n}\n\nfunction handleForbiddenError(session: AdminSession): never {\n const store = session.storeFqdn\n const adminUrl = storeAdminUrl(session)\n\n throw new AbortError(\n `You are not authorized to edit themes on \"${store}\".`,\n \"You can't use Shopify CLI with development stores if you only have Partner staff \" +\n 'member access. If you want to use Shopify CLI to work on a development store, then ' +\n 'you should be the store owner or create a staff account on the store.' +\n '\\n\\n' +\n \"If you're the store owner, then you need to log in to the store directly using the \" +\n `store URL at least once (for example, using \"${adminUrl}\") before you log in using ` +\n 'Shopify CLI. Logging in to the Shopify admin directly connects the development ' +\n 'store with your Shopify login.',\n )\n}\n"]}
|