JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1515
  • Score
    100M100P100Q116458F
  • License MIT

Launchpad Plugin for demo / development / testing SAP CAP-based projects

Package Exports

  • cds-launchpad-plugin
  • cds-launchpad-plugin/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (cds-launchpad-plugin) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

cds-launchpad-plugin

Launchpad Plugin for demo / development / testing SAP Cloud Application Programming Model-based projects

Installation

In your project, run following command:

npm install --save-dev cds-launchpad-plugin

Usage

SAP Cloud Application Programming (CAP) Model 6.7.0 or higher

The cds-launchpad-plugin is using the SAP Cloud Application Programming Model plugin technique. Installing the plugin as a dev dependency (see installation) is sufficient to enable the plugin automatically.

Configuration

Optionally you can configure the cds-launchpad-plugin by adding following configuration to your package.json file.

"cds": {
  "launchpad": {
    "theme":"sap_horizon", // SAPUI5 Theme
    "version": "1.120.1", // SAPUI5 Version
    "basePath": "", // Path under which you want the sandbox to be served
    "appConfigPath": "", // External sandbox appconfig json file to be merged with generated appconfig
    "locale": "", // Language to be used for the sandbox environment
    "template": "" ,// 'legacy' (non-async launchpad, default) or 'async' (async launchpad),
    "modulePaths": "" // object with module paths to be used in the launchpad.html file for "sap-ushell-config"
  }
}

The sandbox launchpad will be served on /$launchpad, like http://localhost:4004/$launchpad

SAP Cloud Application Programming (CAP) Model 6.7.0 or lower

Have this in your server.js:

const cds = require ('@sap/cds');

/* For releases before cds 7:
replace:
cds.env.production === false
with:
process.env.NODE_ENV !== 'production'
*/
if (cds.env.production === false){
    const {cds_launchpad_plugin} = require('cds-launchpad-plugin');

    // Enable launchpad plugin
    cds.once('bootstrap',(app)=>{
        const handler = new cds_launchpad_plugin();
        app.use(handler.setup({theme:'sap_horizon', version: '1.120.1'}));
    });
}

The sandbox launchpad will be served on /$launchpad, like http://localhost:4004/$launchpad

Configuration

Call setup({...}) method with the following object (configuration object can be omitted):

{
  theme:'sap_horizon', // SAPUI5 Theme
  version: '1.99.0', // SAPUI5 Version
  basePath: '', // Path under which you want the sandbox to be served
  appConfigPath: '', // External sandbox appconfig json file to be merged with generated appconfig
  locale: '', // Language to be used for the sandbox environment
  template: '', // 'legacy' (non-async launchpad) or 'async' (async launchpad)
  modulePaths: '' // object with module paths to be used in the launchpad.html file for "sap-ushell-config"
}

External references

Solution overview: https://blogs.sap.com/2022/03/14/a-fiori-launchpad-sandbox-for-all-your-cap-based-projects-overview/

Sample project setup: https://blogs.sap.com/2022/03/14/a-fiori-launchpad-sandbox-for-all-your-cap-based-projects-sample-project-setup/

Development

Prerequisites

  • node 18
  • pnpm

Setup

git clone https://github.com/geert-janklaps/cds-launchpad-plugin
cd cds-launchpad-plugin
pnpm install
pnpm watch
# run cds server
pnpm dev:sapux
# go to http://localhost:4004/$launchpad