Socket
Socket
Sign inDemoInstall

monaco-azure-logic-app-lang

Package Overview
Dependencies
4
Maintainers
1
Versions
33
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    monaco-azure-logic-app-lang

Azure logic app language


Version published
Weekly downloads
1.1K
decreased by-28.41%
Maintainers
1
Install size
1.48 MB
Created
Weekly downloads
 

Readme

Source

Azure logic app language

An azure logic app language module for monaco editor.

npm version Build Status Coverage Status Code style

This is a very early release, do not suggest using it in production till latter its stable version

A simple example explains the purpose of this module:

import * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
import {
  default as AzLogicAppExpressionLang,
  IdentifierType,
  AzLgcExpDocument,
  AzLogicAppExpressionLangMonacoEditor,
  ValidateResult
} from 'monaco-azure-logic-app-lang';
import scannerPath from 'monaco-azure-logic-app-lang/scanner/scanner.wasm';

AzLogicAppExpressionLang.scannerOrItsPath = scannerPath;
AzLogicAppExpressionLang.monaco = monaco;
// AzLogicAppExpressionLang.emitBinaryTokens = true;
// AzLogicAppExpressionLang.inSyntaxDebugMode = true;
// AzLogicAppExpressionLang.inSemanticDebugMode = true;

const sampleCodes = "";

export const MONACO_EDITOR_ID = 'first-expression-monaco-editor';

function subscribeCodeDoc(azLgcExpDocument?: AzLgcExpDocument) {
  if (azLgcExpDocument) {
    (window as any).expCodeDocument = azLgcExpDocument.codeDocument;
    (window as any).expCodeDocumentText = azLgcExpDocument.codeDocument.text;
  }
}

function subscribeValidateResult(vr?: ValidateResult) {
  (window as any).expProblems = vr?.problems || [];
}

export const mount = (root:HTMLDivElement)=> {
  const theEditor = new AzLogicAppExpressionLangMonacoEditor(
    root,
    {
      theme: 'hc-black',
      contextmenu: false,
      value: sampleCodes,
      automaticLayout: true,
    },
    MONACO_EDITOR_ID
  )
  AzLogicAppExpressionLangMonacoEditor.init.then(()=>{
    theEditor.azLgcExpDocEventEmitter?.subscribe(subscribeCodeDoc);
    theEditor.validationResultEventEmitter?.subscribe(subscribeValidateResult);
  })
}

const rootEle = document.getElementById('root');

if (rootEle){
  const expressionEditorEle = document.createElement('div');
  expressionEditorEle.id = EXPRESSION_MONACO_EDITOR_ID
  expressionEditorEle.style.height = '100vh';
  expressionEditorEle.style.width = '100vw';
  rootEle.appendChild(expressionEditorEle);
  mount(expressionEditorEle);
}

Keywords

FAQs

Last updated on 20 Apr 2023

Did you know?

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc