Newton's Programmatic Measurements
    Have ideas to improve npm?Join in the discussion! »

    This package has been deprecated

    Author message:

    As at 19.03.2021, this package is deprecated and no longer maintained. We recommend https://www.npmjs.com/package/@atlassian/soy-loader.

    atlassian-soy-cli

    2.0.0 • Public • Published

    THIS PACKAGE IS DEPRECATED - PLEASE MIGRATE

    As at 19.03.2021, this package is deprecated and no longer maintained. We recommend https://www.npmjs.com/package/@atlassian/soy-loader.

    Node.js: Atlassian Soy CLI

    atlassian-soy-cli is a Node wrapper for Atlassian Soy Templates CLI.

    Why?

    Compile Soy to Javascript as part of your frontend build using frontend tools, not Maven and Java. Easily integrate with Gulp, Karma, and others.

    Installation

    npm install --save-dev atlassian-soy-cli
    

    Usage

    atlassian-soy-cli exposes a factory function that takes an options object.

    var soyCli = require('atlassian-soy-cli');
    var cli = soyCli({
      version: '4.1.2', // optional
      basedir: 'src/main/resources',
      outdir: 'target/classes',
      type: 'js' // optional
    });
    

    From then on, call compile(glob) to compile Soy files that match the glob. All methods support both callback and promise style.

    // compile all soy templates in basedir (using callback style) 
    cli.compile('**/*.soy', callback)
    
    // compile a single soy template (using promise style)
    cli.compile('myTemplate.soy').then(...)
    

    Options

    The basedir and outdir options are mandatory. Arguments passed in the extraArgs option are passed through to the Soy CLI.

    {
      version: "4.1.2", // optional
      basedir: "/path/to/soy/templates",
      outdir: "/path/to/compiled/js",
      type: 'js', // optional
      extraArgs: {
        'use-ajs-context': true,
        'rootnamespace': 'mynamespace',
        'i18n': [
          '/path/to/file1',
          '/path/to/file2'
        ]
      }
    }
    

    The above extraArgs will append the following arguments to the Soy CLI invocation.

    --use-ajs-context --rootnamespace "mynamespace" --i18n "/path/to/file1" --i18n "/path/to/file2"
    

    Keywords

    Install

    npm i atlassian-soy-cli

    DownloadsWeekly Downloads

    194

    Version

    2.0.0

    License

    Apache-2.0

    Unpacked Size

    9.19 kB

    Total Files

    3

    Last publish

    Collaborators

    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar