UNPKG

@soleil-se/build-app

Version:

Script for building WebApps, RESTApps and Widgets with Svelte in Sitevision.

41 lines (33 loc) 1.18 kB
import chalk from 'chalk'; import { logSuccess } from '@soleil-se/build-utils/log'; import { readManifest } from '../manifest.js'; import addonRequest from './api/addonRequest.js'; import handleError from './api/handleError.js'; function getPropertiesUri(type, id, version) { switch (type.toLowerCase()) { case 'webapp': case 'widget': return `WebApp%20Repository/${id}-${version}/properties`; case 'restapp': return `RestApp%20Repository/${id}-${version}/properties`; default: throw new Error('Unknown app type...'); } } export default async function activateAddon(name) { try { const { id, version, type } = await readManifest(); const { 'jcr:uuid': customModuleExecutableId } = await addonRequest({ url: getPropertiesUri(type, id, version), method: 'GET', }); await addonRequest({ url: `Addon%20Repository/${encodeURIComponent(name)}/activatecustommoduleexecutable`, method: 'PUT', searchParams: { customModuleExecutableId }, }); logSuccess(`${type} ${chalk.white(`${name} (${id}@${version})`)} activated successfully!`); } catch (error) { handleError(error); } }