UNPKG

@shopify/cli-kit

Version:

A set of utilities, interfaces, and models that are common across all the platform features

31 lines 1.13 kB
import { buildHeaders } from './headers.js'; import { themeKitAccessDomain } from '../constants.js'; export function restRequestBody(requestBody) { if (!requestBody) { return; } return JSON.stringify(requestBody); } export function restRequestUrl(session, apiVersion, path, searchParams = {}) { const url = new URL(isThemeAccessSession(session) ? `https://${themeKitAccessDomain}/cli/admin/api/${apiVersion}${path}.json` : `https://${session.storeFqdn}/admin/api/${apiVersion}${path}.json`); Object.entries(searchParams).forEach(([name, value]) => { url.searchParams.set(name, value); }); return url.toString(); } export function restRequestHeaders(session) { const store = session.storeFqdn; const token = session.token; const headers = buildHeaders(session.token); if (isThemeAccessSession(session)) { headers['X-Shopify-Shop'] = store; headers['X-Shopify-Access-Token'] = token; } return headers; } export function isThemeAccessSession(session) { return session.token.startsWith('shptka_'); } //# sourceMappingURL=rest.js.map