UNPKG

@modyo/cli

Version:

Modyo CLI Command line to expose local development tools

46 lines (45 loc) 1.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const core_1 = require("@oclif/core"); const debug_1 = tslib_1.__importDefault(require("debug")); const axios_1 = tslib_1.__importDefault(require("axios")); const api_client_1 = tslib_1.__importDefault(require("../utils/api-client")); const modyo_api_paths_1 = require("./modyo-api-paths"); const debug = (0, debug_1.default)('push/create-widget.ts'); const debugError = (0, debug_1.default)('error::push/create-widget.ts'); async function createWidget(name, { version, accountUrl, siteId, token, }) { var _a; const url = `${accountUrl}/${modyo_api_paths_1.MODYO_API_PATH[version]}/sites/${siteId}/widget_definitions`; debug(`creating widget in ${url}`); const query = { method: 'POST', url, headers: { Authorization: `Bearer ${token}`, }, data: { name, read_only: true, public: true, }, }; debug(query); core_1.ux.action.start(`Creating widget ${name} in a Modyo ${version} site accountUrl=${accountUrl} siteId=${siteId}`); try { const response = await api_client_1.default.request(query); const json = response.data; debug('the response is'); debug(json); core_1.ux.action.stop(`widget ${json.id}`); return json.id; } catch (error) { if (axios_1.default.isAxiosError(error) && ((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) === 401) { throw new Error('Unauthorized, please check your Modyo Api Access Token'); } debugError(error); throw error; } } exports.default = createWidget;