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

@ordergroove/smi-precompile

Package Overview
Dependencies
Maintainers
0
Versions
82
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ordergroove/smi-precompile

Prcompilers for smi-core

1.10.8
latest
Source
npm
Version published
Weekly downloads
33
-82.45%
Maintainers
0
Weekly downloads
 
Created
Source

smi-precompile

Precompiles a liquid style template into smi function generator. Precompile returns code as a string

Precompilers for smi-core

Usage

resultCode = precompile(source, partials, locales, settings, (defaultLocale = 'en'));

Example

const precompile = require('@ordergroove/smi-precompile');

const result = precompile(
  `
  {% set some_value = 'yes' %}
  {% if some_value == ('some_setting' | setting) %} 
    {% include 'some-include' %}
  {% endif %}`,
  {
    'some-include.liquid': `{{ 'my_custom_text' | t }}`
  },
  [
    {
      locale: 'en',
      translations: { my_custom_text: 'Hello world' }
    },
    {
      locale: 'es',
      translations: { my_custom_text: 'Hola mundo' }
    }
  ],
  {
    some_setting: 'yes'
  }
);

** outputs **

function template(html, repeat, unsafeHTML) {
  function template_en({}, _F) {
    var some_value;
    return html`
      ${(() => {
        some_value = 'yes';
      })()} ${some_value == 'yes'
        ? html`
            Hello world
          `
        : ''}
    `;
  }

  function template_es({}, _F) {
    var some_value;
    return html`
      ${(() => {
        some_value = 'yes';
      })()} ${some_value == 'yes'
        ? html`
            Hola mundo
          `
        : ''}
    `;
  }

  return {
    en: template_en,
    es: template_es
  };
}

FAQs

Package last updated on 19 Feb 2025

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