Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
const run = async () => {
try {
let result
result = await packProject(projectUIDL, {
...packerOptions,
projectType: ProjectType.REACTNATIVE,
})
console.info(ProjectType.REACTNATIVE, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.REACT })
console.info(ProjectType.REACT, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.NEXT })
console.info(ProjectType.NEXT, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.NUXT })
console.info(ProjectType.NUXT, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.VUE })
console.info(ProjectType.VUE, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.STENCIL })
console.info(ProjectType.STENCIL, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.PREACT })
console.info(ProjectType.PREACT, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.ANGULAR })
console.info(ProjectType.ANGULAR, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.GRIDSOME })
console.info(ProjectType.GRIDSOME, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.GATSBY })
const run = async () => {
try {
let result
result = await packProject(projectUIDL, {
...packerOptions,
projectType: ProjectType.REACTNATIVE,
})
console.info(ProjectType.REACTNATIVE, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.REACT })
console.info(ProjectType.REACT, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.NEXT })
console.info(ProjectType.NEXT, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.NUXT })
console.info(ProjectType.NUXT, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.VUE })
console.info(ProjectType.VUE, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.STENCIL })
console.info(ProjectType.STENCIL, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.PREACT })
console.info(ProjectType.PREACT, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.ANGULAR })
console.info(ProjectType.ANGULAR, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.GRIDSOME })
console.info(ProjectType.GRIDSOME, '-', result.payload)
result = await packProject(projectUIDL, { ...packerOptions, projectType: ProjectType.GATSBY })
console.info(ProjectType.GATSBY, '-', result.payload)
it('creates a react project', async () => {
const options: PackerOptions = {
projectType: ProjectType.REACT,
assets,
publisher: PublisherType.DISK,
publishOptions: { outputPath: reactProjectPath },
}
const { success } = await packProject(projectUIDL, options)
expect(success).toBeTruthy()
})
import { readFileSync } from 'fs'
import { join } from 'path'
import { packProject } from '@teleporthq/teleport-code-generator'
import { ProjectUIDL, PackerOptions, ProjectType, PublisherType } from '@teleporthq/teleport-types'
import projectJSON from '../../../examples/uidl-samples/project.json'
const projectUIDL = (projectJSON as unknown) as ProjectUIDL
const assetFile = readFileSync(join(__dirname, 'asset.png'))
const base64File = new Buffer(assetFile).toString('base64')
const packerOptions: PackerOptions = {
publisher: PublisherType.DISK,
projectType: ProjectType.REACT,
publishOptions: {
outputPath: 'dist',
},
assets: [
{
type: 'png',
name: 'icons-192',
data: base64File,
},
{
type: 'png',
name: 'icons-512',
data: base64File,
},
],
}
[ComponentType.VUE]: createVueComponentGenerator,
[ComponentType.STENCIL]: createStencilComponentGenerator,
[ComponentType.REACTNATIVE]: createReactNativeComponentGenerator,
}
const componentGeneratorProjectMappings = {
[ComponentType.REACT]: ReactProjectMapping,
[ComponentType.PREACT]: PreactProjectMapping,
[ComponentType.ANGULAR]: AngularProjectMapping,
[ComponentType.VUE]: VueProjectMapping,
[ComponentType.STENCIL]: StencilProjectMapping,
[ComponentType.REACTNATIVE]: ReactNativeProjectMapping,
}
const projectGeneratorFactories = {
[ProjectType.REACT]: createReactProjectGenerator,
[ProjectType.NEXT]: createNextProjectGenerator,
[ProjectType.VUE]: createVueProjectGenerator,
[ProjectType.NUXT]: createNuxtProjectGenerator,
[ProjectType.PREACT]: createPreactProjectGenerator,
[ProjectType.STENCIL]: createStencilProjectGenerator,
[ProjectType.ANGULAR]: createAngularProjectGenerator,
[ProjectType.REACTNATIVE]: createReactNativeProjectGenerator,
[ProjectType.GRIDSOME]: createGridsomeProjectGenerator,
[ProjectType.GATSBY]: createGatsbyProjectGenerator,
}
const templates = {
[ProjectType.REACT]: ReactTemplate,
[ProjectType.NEXT]: NextTemplate,
[ProjectType.VUE]: VueTemplate,
[ProjectType.NUXT]: NuxtTemplate,