microsoft / Kusto-Query-Language

Kusto Query Language is a simple and productive language for querying Big Data.
Apache License 2.0
510 stars 97 forks source link

How does the JavaScript code work? #89

Closed FaresKi closed 1 year ago

FaresKi commented 1 year ago

Hi! I'm trying to use the Javascript package (btw the only reference is here, so I suppose it's this.

However, there isn't any documentation. const Kusto = require('@kusto/language-service-next')

const query = `RandomDB
| limit 10`
const {SyntaxElement} = kusto.Language.Syntax
const parsedQuery = Kusto.Language.KustoCode.Parse(query).Analyze()
SyntaxElement.WalkNodes(parsedQuery.Syntax, (operator) =>{
    console.log('operator', operator)
})

Everytime I try to run it I get this issue:

query-parsing/node_modules/@kusto/language-service-next/Kusto.Language.Bridge.js:6
Bridge.assembly("Kusto.Language.Bridge", function ($asm, globals) {
^

ReferenceError: Bridge is not defined
    at Object.<anonymous> (query-parsing/node_modules/@kusto/language-service-next/Kusto.Language.Bridge.js:6:1)
    at Module._compile (node:internal/modules/cjs/loader:1105:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (/Users/b242pn/Documents/SOC/query-parsing/index.js:1:15)
    at Module._compile (node:internal/modules/cjs/loader:1105:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)

Is there an additional thing to download? A complimentary package?

TIA

mattwar commented 1 year ago

@kusto/language-service-next is mostly a staging ground for moving the output of building the kusto.language.bridge project into @kusto/monaco-kusto, a kusto query editor. This package uses multiple bridge translated projects so we might not be including the bridge files in @kusto/language-service-next because it is duplicate of files already being included.

If you build the kusto.language.bridge project the bridge.js files will be in the output directory.