UNPKG

@litexa/core

Version:

Litexa, a programming language for writing Alexa skills

40 lines (34 loc) 1.21 kB
### # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ### chalk = require 'chalk' path = require 'path' fs = require 'fs' mkdirp = require 'mkdirp' module.exports.run = (options, after) -> logger = options.logger ? console if logger.disableColor chalk.enabled = false error = (line) -> logger.log chalk.red line after(err) if after? try skill = await require('./skill-builder').build(options.root, options.deployment) switch options.type when 'model' model = skill.toModelV2 options.region ? 'default' logger.log JSON.stringify(model, null, 2) when 'handler' lambda = skill.toLambda() logger.log lambda when 'manifest' { generateManifest } = require './deploy/manifest.coffee' manifest = await generateManifest options, skill logger.log JSON.stringify(manifest, null, 2) else return error "unrecognized printer #{options.type}" catch err return error err