New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

ui5-middleware-babel

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ui5-middleware-babel

custom ui5 middleware extension for transpiling resources using babel including caching

  • 2.1.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
10
Maintainers
1
Weekly downloads
 
Created
Source

JavaScript Style Guide

ui5-middleware-babel

Custom UI5 middleware extension for transpiling code using babel including caching.

For maximum flexibility no babel configuration files or presets will be provided by the custom middleware.

Instead you have to manage your configuration and presets within your project according to your needs.

The middleware will simply call babel.transformAsync which will use your local configuration files for all your project's javascript resources.

Prerequisites

Make sure your project is using the latest UI5 Tooling.

Getting started

Install

Custom middleware

Add the custom middleware and its peer dependencies as devDependencies to your project.

With yarn:

yarn add -D ui5-middleware-babel @babel/core

Or npm:

npm i -D ui5-middleware-babel @babel/core

Additionally the custom middleware needs to be manually defined in ui5.dependencies in your project's package.json:

{
  "ui5": {
    "dependencies": [
      "ui5-middleware-babel"
    ]
  }
}
Babel presets

Add at least one babel preset to your project's devDependencies, e.g. @babel/preset-env.

With yarn:

yarn add -D @babel/preset-env

Or npm:

npm i -D @babel/preset-env

You can learn more about babel presets here.

Configure

Custom middleware

Register the custom middleware in your project's ui5.yaml:

server:
  customMiddleware:
    # babel
    - name: ui5-middleware-babel
      afterMiddleware: compression
      configuration:
        enabled: true
        debug: true
        wrap: true
        excludes:
          - '/test/**'
          - '/localService/**'
Babel config

Create a babel config file, e.g babel.config.js in your project's root directory:

module.exports = api => {
  api.cache(true)
  const presets = [
    '@babel/preset-env'
  ]
  const plugins = []
  const sourceType = 'script'
  return {
    presets,
    plugins,
    sourceType
  }
}

You can learn more about babel config files here.

Usage

Simply run ui5 serve to transpile your code on the fly when running your project.

Additional configuration

Options

The custom middleware accepts the following configuration options

nametypedescriptionmandatorydefaultexamples
enabledbooleanenable/disablenotruetrue, false
debugbooleanenable/disable debug logsnofalsetrue, false
wrapbooleanwrap transformed code in an IIFEnotruetrue, false
excludesstring[]files globs which should not be transformed by babelno[][/test/**, /localService/**]
Browserlist

Consider adding a browserlist configuration to your project for controlling your target browsers. This configuration will automatically be used by babel.

E.g. create a file .browserslistrc in your project's root directory:

> 0.25%
not dead

Keywords

FAQs

Package last updated on 26 Jan 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc