{"version":3,"sources":["components/NavMenu.js","components/Layout.js","components/Home.js","components/FetchData.js","components/Counter.js","App.js","registerServiceWorker.js","Helper.ts","PowerFxLanguageClient.ts","components/Tabs/TabNavBar.js","components/types.ts","components/Tabs/TokenTab.js","components/Tabs/EvaluationTab.js","components/Tabs/ParseTab.js","components/Tabs/Tabs.js","PowerFxDemoPage.tsx","index.js"],"names":["NavMenu","props","toggleNavbar","bind","state","collapsed","this","setState","Navbar","className","light","Container","NavbarBrand","tag","Link","to","NavbarToggler","onClick","Collapse","isOpen","navbar","NavItem","NavLink","Component","displayName","name","Layout","children","Home","href","FetchData","forecasts","loading","populateWeatherData","contents","renderForecastsTable","style","marginTop","target","rel","fetch","response","json","data","border","map","forecast","key","url","value","Counter","currentCount","incrementCounter","App","exact","path","component","isLocalhost","Boolean","window","location","hostname","match","registerValidSW","swUrl","navigator","serviceWorker","register","then","registration","onupdatefound","installingWorker","installing","onstatechange","controller","console","log","catch","error","getServerUrl","origin","pathname","sendDataAsync","endpoint","method","headers","body","PowerFxLanguageClient","_onDataReceived","result","ok","text","JSON","parse","forEach","item","TabNavBar","TabDictionary","setActiveTab","Object","keys","id","title","TokenKindList","TokenTab","tokens","expression","maxHeight","overflow","token","kind","span","min","lim","substring","EvaluationTab","evaluation","width","height","readOnly","ParseTab","stringify","Tabs","useState","activeTab","PowerFxDemoPage","_languageClient","_messageProcessor","_editor","_listener","_getDocumentUriAsync","context","_evalAsync","hasErrors","addListener","listener","dispose","sendAsync","onChange","ev","getDocumentUriAsync","defaultValue","messageProcessor","maxLineCount","minLineCount","newValue","onEditorDidMount","editor","_","useQuickFixHover","lspConfig","enableSignatureHelpRequest","notifyCommandExecuted","enableCodeAction","React","baseUrl","document","getElementsByTagName","getAttribute","rootElement","getElementById","ReactDOM","render","basename","URL","process","addEventListener","status","get","indexOf","ready","unregister","reload","checkValidServiceWorker","registerServiceWorker"],"mappings":"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","file":"static/js/main.ad73fc54.chunk.js","sourcesContent":["import React, { Component } from 'react';\r\nimport { Collapse, Container, Navbar, NavbarBrand, NavbarToggler, NavItem, NavLink } from 'reactstrap';\r\nimport { Link } from 'react-router-dom';\r\nimport './NavMenu.css';\r\n\r\nexport class NavMenu extends Component {\r\n static displayName = NavMenu.name;\r\n\r\n constructor (props) {\r\n super(props);\r\n\r\n this.toggleNavbar = this.toggleNavbar.bind(this);\r\n this.state = {\r\n collapsed: true\r\n };\r\n }\r\n\r\n toggleNavbar () {\r\n this.setState({\r\n collapsed: !this.state.collapsed\r\n });\r\n }\r\n\r\n render () {\r\n return (\r\n
\r\n \r\n \r\n Project1\r\n \r\n \r\n
    \r\n \r\n Home\r\n \r\n \r\n Counter\r\n \r\n \r\n Fetch data\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Container } from 'reactstrap';\r\nimport { NavMenu } from './NavMenu';\r\n\r\nexport class Layout extends Component {\r\n static displayName = Layout.name;\r\n\r\n render () {\r\n return (\r\n
\r\n \r\n \r\n {this.props.children}\r\n \r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\n\r\nexport class Home extends Component {\r\n static displayName = Home.name;\r\n\r\n render () {\r\n return (\r\n
\r\n

Hello, world!

\r\n

Welcome to your new single-page application, built with:

\r\n \r\n

To help you get started, we have also set up:

\r\n \r\n

The ClientApp subdirectory is a standard React application based on the create-react-app template. If you open a command prompt in that directory, you can run npm commands such as npm test or npm install.

\r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\n\r\nexport class FetchData extends Component {\r\n static displayName = FetchData.name;\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = { forecasts: [], loading: true };\r\n }\r\n\r\n componentDidMount() {\r\n this.populateWeatherData();\r\n }\r\n\r\n static renderForecastsTable(forecasts) {\r\n return (\r\n \r\n \r\n {forecasts.map(forecast =>\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n
{forecast.key}\r\n \r\n {forecast.value}\r\n \r\n
\r\n );\r\n }\r\n\r\n render() {\r\n let contents = this.state.loading\r\n ?

Loading...

\r\n : FetchData.renderForecastsTable(this.state.forecasts);\r\n\r\n return (\r\n
\r\n

Version Info

\r\n
\r\n Get source code\r\n
\r\n {contents}\r\n
\r\n );\r\n }\r\n\r\n async populateWeatherData() {\r\n const response = await fetch('VersionInfo');\r\n const data = await response.json();\r\n this.setState({ forecasts: data, loading: false });\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\n\r\nexport class Counter extends Component {\r\n static displayName = Counter.name;\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = { currentCount: 0 };\r\n this.incrementCounter = this.incrementCounter.bind(this);\r\n }\r\n\r\n incrementCounter() {\r\n this.setState({\r\n currentCount: this.state.currentCount + 1\r\n });\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n

Counter

\r\n\r\n

This is a simple example of a React component.

\r\n\r\n

Current count: {this.state.currentCount}

\r\n\r\n \r\n
\r\n );\r\n }\r\n}\r\n","import React, { Component } from 'react';\r\nimport { Route } from 'react-router';\r\nimport { Layout } from './components/Layout';\r\nimport { Home } from './components/Home';\r\nimport { FetchData } from './components/FetchData';\r\nimport { Counter } from './components/Counter';\r\n\r\nimport './custom.css'\r\n\r\nexport default class App extends Component {\r\n static displayName = App.name;\r\n\r\n render () {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n","// In production, we register a service worker to serve assets from local cache.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\r\n// cached resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\r\n// This link also includes instructions on opting out of this behavior.\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.1/8 is considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\nexport default function register () {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Lets check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl);\r\n } else {\r\n // Is not local host. Just register service worker\r\n registerValidSW(swUrl);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW (swUrl) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the old content will have been purged and\r\n // the fresh content will have been added to the cache.\r\n // It's the perfect time to display a \"New content is\r\n // available; please refresh.\" message in your web app.\r\n console.log('New content is available; please refresh.');\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker (swUrl) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl)\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n if (\r\n response.status === 404 ||\r\n response.headers.get('content-type').indexOf('javascript') === -1\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\r\n });\r\n}\r\n\r\nexport function unregister () {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister();\r\n });\r\n }\r\n}\r\n","\r\nfunction getServerUrl() {\r\n return `${window.location.origin}${window.location.pathname}`;\r\n}\r\n\r\nexport async function sendDataAsync(endpoint: string, data: string): Promise {\r\n const url = getServerUrl();\r\n return await fetch(url + endpoint, {\r\n method: 'POST',\r\n headers: { 'Content-Type': 'application/json' },\r\n body: data\r\n });\r\n}","/*!\r\n * Copyright (C) Microsoft Corporation. All rights reserved.\r\n */\r\n\r\nimport { sendDataAsync } from './Helper';\r\n\r\nexport class PowerFxLanguageClient {\r\n public constructor(private _onDataReceived: (data: string) => void) {\r\n }\r\n\r\n public async sendAsync(data: string) {\r\n console.log('[LSP Client] Send: ' + data);\r\n\r\n try {\r\n const result = await sendDataAsync('lsp', data);\r\n if (!result.ok) {\r\n return;\r\n }\r\n\r\n const response = await result.text();\r\n if (response) {\r\n const responseArray = JSON.parse(response);\r\n responseArray.forEach((item: string) => {\r\n console.log('[LSP Client] Receive: ' + item);\r\n this._onDataReceived(item);\r\n })\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n }\r\n}\r\n","import { object } from 'prop-types'\r\nimport React from 'react'\r\n\r\nexport const TabNavBar = ({ TabDictionary, setActiveTab }) => {\r\n return (\r\n
\r\n {\r\n Object.keys(TabDictionary).map(\r\n (key, value) => (\r\n \r\n )\r\n )\r\n }\r\n
\r\n )\r\n}\r\n","export interface TabListItem {\r\n id: number;\r\n title: string;\r\n isActive: boolean;\r\n}\r\n\r\nexport interface TabNavigationProp {\r\n tabList: TabListItem[];\r\n}\r\n\r\nexport interface TabProp {\r\n tabList: TabListItem[];\r\n result: string;\r\n}\r\n\r\nexport interface Span {\r\n lim: number;\r\n min: number;\r\n}\r\n\r\nexport interface Token {\r\n kind: number;\r\n span: Span;\r\n}\r\n\r\nexport const TabDictionary = {\r\n 'evaluation': {\r\n id: 1,\r\n title: 'Evaluation'\r\n },\r\n 'tokens': {\r\n id: 2,\r\n title: 'Tokens'\r\n },\r\n 'parse': {\r\n id: 3,\r\n title: 'Parse'\r\n }\r\n}\r\n\r\nexport const TokenKindList = [\r\n 'None',\r\n 'Eof',\r\n 'Error',\r\n 'Ident',\r\n 'NumLit',\r\n 'StrLit',\r\n 'Comment',\r\n 'Whitespace',\r\n 'Add',\r\n 'Sub',\r\n 'Mul',\r\n 'Div',\r\n 'Caret',\r\n 'ParenOpen',\r\n 'ParenClose',\r\n 'CurlyOpen',\r\n 'CurlyClose',\r\n 'BracketOpen',\r\n 'BracketClose',\r\n 'Equ',\r\n 'Lss',\r\n 'LssEqu',\r\n 'Grt',\r\n 'GrtEqu',\r\n 'LssGrt',\r\n 'Comma',\r\n 'Dot',\r\n 'Colon',\r\n 'Ampersand',\r\n 'PercentSign',\r\n 'Semicolon',\r\n 'At',\r\n 'Or',\r\n 'And',\r\n 'Bang',\r\n 'True',\r\n 'False',\r\n 'In',\r\n 'Exactin',\r\n 'Self',\r\n 'Parent',\r\n 'KeyOr',\r\n 'KeyAnd',\r\n 'KeyNot',\r\n 'As',\r\n 'StrInterpStart',\r\n 'StrInterpEnd',\r\n 'IslandStart',\r\n 'IslandEnd'\r\n]","import React from 'react'\r\nimport { TokenKindList } from '../types';\r\n\r\nexport const TokenTab = ({ tokens, expression }) => {\r\n return (\r\n
\r\n

Tokens

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n tokens.map(\r\n (token) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n )\r\n }\r\n \r\n
Token KindToken SpanToken Value
{ TokenKindList[token.kind]}[{token.span.min} - {token.span.lim}){expression.substring(token.span.min, token.span.lim)}
\r\n
\r\n )\r\n}\r\n\r\nexport default TokenTab","import React from 'react'\r\n\r\nexport const EvaluationTab = ({ evaluation: evaluation }) => {\r\n return (\r\n
\r\n

Evaluation

\r\n