From fc7bf1e48203584f4ea6e7be9ec5ca32e4bf35cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ji=C5=99=C3=AD=20Zaj=C3=ADc?= Date: Tue, 25 Aug 2020 15:55:24 -0700 Subject: [PATCH] gd-ui-boilerplate-v8 - Done --- gd-ui-boilerplate-v8/.gitignore | 1 + gd-ui-boilerplate-v8/.nvmrc | 1 + gd-ui-boilerplate-v8/README.md | 78 +- gd-ui-boilerplate-v8/package.json | 17 +- gd-ui-boilerplate-v8/public/index.html | 2 +- gd-ui-boilerplate-v8/public/screen1.png | Bin 0 -> 193914 bytes gd-ui-boilerplate-v8/scripts/refresh-ldm.sh | 12 + gd-ui-boilerplate-v8/src/App.css | 35 - gd-ui-boilerplate-v8/src/App.js | 95 +- gd-ui-boilerplate-v8/src/backend.js | 24 + .../src/components/CustomBarChart.js | 37 + gd-ui-boilerplate-v8/src/index.js | 1 + gd-ui-boilerplate-v8/src/ldm/full.js | 3104 +++++++++++++++++ gd-ui-boilerplate-v8/src/setupProxy.js | 1 + gd-ui-boilerplate-v8/src/utils.js | 61 + gd-ui-boilerplate-v8/yarn.lock | 1165 ++++++- 16 files changed, 4428 insertions(+), 206 deletions(-) create mode 100644 gd-ui-boilerplate-v8/.nvmrc create mode 100644 gd-ui-boilerplate-v8/public/screen1.png create mode 100755 gd-ui-boilerplate-v8/scripts/refresh-ldm.sh create mode 100644 gd-ui-boilerplate-v8/src/backend.js create mode 100644 gd-ui-boilerplate-v8/src/components/CustomBarChart.js create mode 100644 gd-ui-boilerplate-v8/src/ldm/full.js create mode 100644 gd-ui-boilerplate-v8/src/utils.js diff --git a/gd-ui-boilerplate-v8/.gitignore b/gd-ui-boilerplate-v8/.gitignore index 4d29575d..74c77f39 100644 --- a/gd-ui-boilerplate-v8/.gitignore +++ b/gd-ui-boilerplate-v8/.gitignore @@ -17,6 +17,7 @@ .env.development.local .env.test.local .env.production.local +.s3cfg npm-debug.log* yarn-debug.log* diff --git a/gd-ui-boilerplate-v8/.nvmrc b/gd-ui-boilerplate-v8/.nvmrc new file mode 100644 index 00000000..59db31cb --- /dev/null +++ b/gd-ui-boilerplate-v8/.nvmrc @@ -0,0 +1 @@ +v12.16.1 diff --git a/gd-ui-boilerplate-v8/README.md b/gd-ui-boilerplate-v8/README.md index 9c40dcdc..37d892b9 100644 --- a/gd-ui-boilerplate-v8/README.md +++ b/gd-ui-boilerplate-v8/README.md @@ -1,68 +1,46 @@ -This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). - -## Available Scripts - -In the project directory, you can run: - -### `yarn start` - -Runs the app in the development mode.
-Open [http://localhost:3000](http://localhost:3000) to view it in the browser. - -The page will reload if you make edits.
-You will also see any lint errors in the console. - -### `yarn test` - -Launches the test runner in the interactive watch mode.
-See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information. +# GoodData.UI@v8 Boilerplate App -### `yarn build` +This app follows steps from https://sdk.gooddata.com/gooddata-ui/docs/next/ht_create_your_first_visualization.html: -Builds the app for production to the `build` folder.
-It correctly bundles React in production mode and optimizes the build for the best performance. +* It initializes create-react-app +* It configures GoodData proxy +* It adds GoodData.UI dependencies -The build is minified and the filenames include the hashes.
-Your app is ready to be deployed! +This app also shows: -See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information. +* Use of `` component +* Use of `` component -### `yarn eject` +And finally this app demonstrates 3 approaches how to render visualizations: -**Note: this is a one-way operation. Once you `eject`, you can’t go back!** +* By referencing `` created in Analytical Designer +* By specifying buckets (measures, viewBy, stackBy) with `` component +* By creating custom column chart using `` component and [Highcharts](https://www.highcharts.com/) library -If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project. +## Live demo -Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own. +This app is deployed at https://gooddata-demo.s3.amazonaws.com/gd-ui-boilerplate-v8/index.html. For access, you can register at https://gooddata-examples.herokuapp.com/. -You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it. +## How to run locally -## Learn More +* `git clone --depth 1 https://github.com/gooddata/ui-sdk-examples.git` +* `cd ui-sdk-examples/gd-ui-boilerplate-v8/` +* `yarn install` +* `yarn start` -You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started). +## How to build for deployment -To learn React, check out the [React documentation](https://reactjs.org/). +* `yarn build` when deploying to root folder +* `PUBLIC_URL=/gd-ui-boilerplate-v8 yarn build` when deploying to `/gd-ui-boilerplate-v8` folder -### Code Splitting +## Backend/proxy info -This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting +This app is configured to run against https://developer.na.gooddata.com/. For access, you can register at https://gooddata-examples.herokuapp.com/. -### Analyzing the Bundle Size +## Screnshots -This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size +![homepage](https://raw.githubusercontent.com/gooddata/ui-sdk-examples/master/gd-ui-boilerplate-v8/public/screen1.png "Homepage") -### Making a Progressive Web App +--- -This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app - -### Advanced Configuration - -This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration - -### Deployment - -This section has moved here: https://facebook.github.io/create-react-app/docs/deployment - -### `yarn build` fails to minify - -This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify +This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). diff --git a/gd-ui-boilerplate-v8/package.json b/gd-ui-boilerplate-v8/package.json index ac5db175..1f62aeb2 100644 --- a/gd-ui-boilerplate-v8/package.json +++ b/gd-ui-boilerplate-v8/package.json @@ -3,22 +3,28 @@ "version": "0.1.0", "private": true, "dependencies": { - "@gooddata/sdk-backend-bear": "^8.0.0-beta.52", - "@gooddata/sdk-model": "^8.0.0-beta.52", - "@gooddata/sdk-ui": "^8.0.0-beta.52", - "@gooddata/sdk-ui-charts": "^8.0.0-beta.52", + "@gooddata/sdk-backend-bear": "^8.0.0-beta.54", + "@gooddata/sdk-model": "^8.0.0-beta.54", + "@gooddata/sdk-ui": "^8.0.0-beta.54", + "@gooddata/sdk-ui-charts": "^8.0.0-beta.54", + "@gooddata/sdk-ui-ext": "^8.0.0-beta.54", + "@gooddata/sdk-ui-filters": "^8.0.0-beta.54", "@testing-library/jest-dom": "^4.2.4", "@testing-library/react": "^9.3.2", "@testing-library/user-event": "^7.1.2", "react": "^16.13.1", "react-dom": "^16.13.1", + "react-highcharts": "^16.1.0", "react-scripts": "3.4.3" }, "scripts": { "start": "cross-env HTTPS=true react-scripts start", "build": "react-scripts build", "test": "react-scripts test", - "eject": "react-scripts eject" + "eject": "react-scripts eject", + "refresh-ldm": "./scripts/refresh-ldm.sh", + "buildgd": "cross-env PUBLIC_URL=/gd-ui-boilerplate-v8 yarn build", + "syncgd": "s3cmd --config .s3cfg sync --delete-removed ./build/ s3://gooddata-demo/gd-ui-boilerplate-v8/" }, "eslintConfig": { "extends": "react-app" @@ -36,6 +42,7 @@ ] }, "devDependencies": { + "@gooddata/catalog-export": "^8.0.0-beta.55", "cross-env": "^7.0.2" } } diff --git a/gd-ui-boilerplate-v8/public/index.html b/gd-ui-boilerplate-v8/public/index.html index aa069f27..a4078c1a 100644 --- a/gd-ui-boilerplate-v8/public/index.html +++ b/gd-ui-boilerplate-v8/public/index.html @@ -24,7 +24,7 @@ work correctly both with client-side routing and a non-root public URL. Learn how to configure a non-root public URL by running `npm run build`. --> - React App + GoodData.UI Boilerplate diff --git a/gd-ui-boilerplate-v8/public/screen1.png b/gd-ui-boilerplate-v8/public/screen1.png new file mode 100644 index 0000000000000000000000000000000000000000..15706600ce2446efc6e1a3b16cda1a409b27e9f0 GIT binary patch literal 193914 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

m%W*UN9?ZEuDqvsmG3S! z|2AwgTt%^!5!)5&MdQ6U#Z-b!^4MBp0I^`eNtPQ%h*I4$K{kljMweU(GOK6nX-~vQ zGA2(u9mg)&ySlogzm4=}sZ6y<@7s@fA7Ed>Mr%5yFpa$4JMGU^K5@t>AlB<<6Fnw_ zg~$Aryw<`7mw|Y6B~}}$V`Q~l#7IY~9A>u{ZN2G}_BS$0W?|SxTjBU(-Eu2U=Udxg z*6sQJik+T|mimE`TO<5&?dzS=OzerS1|uHJb@pR!v&IffV0_Q@I7ASCr^Na-mw~04 z<;0y4FU(?&WSAmphRgm=r*{b0LxImy7}VUCH`n%7{G@|?50ROy-{jUU!an2mJnuYY zo?)dp|J6?HSzU3O*a6%dt1hwGt1|dvW~0+FK&0;`3!Zm|_gBg=iq-TQ;S)u z(S+=-wey;uU&_izjLiblJotF^ovzEMAR6I)aEV;6ENx{gx8!qMKBppL8M?RHQewNk zzggfNOsyz#p5ltiw(C1my2i99y;!K6FqF(y0e;b22NFM1zBT4y>LAaq%dV7oZoU-7 z*K#flN-tctvpy?KQpj;mx7bL2Z^@-T&@pdqdvz++xII$yw^&7C?4jxb4BCEYI;tfKwvmR?<(N}E?{HM3V!$8}6@a{( zdc*iY9zm)2@XK**uRAV}NtP%va%oo^fC!4yrfND8mA%ZPTWv(-5?gZv zFP0-B-k}9KLJdq!4)0Un!@iDMF5PeC?Kk_>O}%etxT#RZ5DyEM#m2^7%DpqOMCrBi z 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�YZ*NkJCh`ju6 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

4lH$6PwjCeBZRe4?M5dJx$`zU~V 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 literal 0 HcmV?d00001 diff --git a/gd-ui-boilerplate-v8/scripts/refresh-ldm.sh b/gd-ui-boilerplate-v8/scripts/refresh-ldm.sh new file mode 100755 index 00000000..07d24a2c --- /dev/null +++ b/gd-ui-boilerplate-v8/scripts/refresh-ldm.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +SCRIPTDIR=`dirname $0` +ROOTDIR="${SCRIPTDIR}/.." +EXPORTER="${ROOTDIR}/node_modules/.bin/gdc-catalog-export" +OUTPUT="${ROOTDIR}/src/ldm/full.js" +PROJECTID="xms7ga4tf3g3nzucd8380o2bev8oeknp" + +$EXPORTER \ + --hostname "https://developer.na.gooddata.com" \ + --output "${OUTPUT}" \ + --project-id "${PROJECTID}" diff --git a/gd-ui-boilerplate-v8/src/App.css b/gd-ui-boilerplate-v8/src/App.css index 74b5e053..49316133 100644 --- a/gd-ui-boilerplate-v8/src/App.css +++ b/gd-ui-boilerplate-v8/src/App.css @@ -1,38 +1,3 @@ .App { text-align: center; } - -.App-logo { - height: 40vmin; - pointer-events: none; -} - -@media (prefers-reduced-motion: no-preference) { - .App-logo { - animation: App-logo-spin infinite 20s linear; - } -} - -.App-header { - background-color: #282c34; - min-height: 100vh; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - font-size: calc(10px + 2vmin); - color: white; -} - -.App-link { - color: #61dafb; -} - -@keyframes App-logo-spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } -} diff --git a/gd-ui-boilerplate-v8/src/App.js b/gd-ui-boilerplate-v8/src/App.js index 5fa3ea62..67f01f5a 100644 --- a/gd-ui-boilerplate-v8/src/App.js +++ b/gd-ui-boilerplate-v8/src/App.js @@ -1,33 +1,88 @@ -import React from "react"; -import { LineChart } from "@gooddata/sdk-ui-charts"; -import { newMeasure, newAttribute } from "@gooddata/sdk-model"; -import bearFactory, { - ContextDeferredAuthProvider -} from "@gooddata/sdk-backend-bear"; -import { BackendProvider, WorkspaceProvider } from "@gooddata/sdk-ui"; +// Copyright (C) 2007-2020, GoodData(R) Corporation. All rights reserved. +import React, { useState, useEffect } from "react"; +import { Headline, ColumnChart } from "@gooddata/sdk-ui-charts"; +import { newAttribute, newPositiveAttributeFilter } from "@gooddata/sdk-model"; +import { BackendProvider, WorkspaceProvider, Execute } from "@gooddata/sdk-ui"; +import { InsightView } from "@gooddata/sdk-ui-ext"; +import { AttributeFilter } from "@gooddata/sdk-ui-filters"; +import backend from "./backend"; +import CustomBarChart from "./components/CustomBarChart"; +import { loginMachinery } from "./utils"; +import * as Ldm from "./ldm/full"; import "@gooddata/sdk-ui-charts/styles/css/main.css"; +import "@gooddata/sdk-ui-filters/styles/css/main.css"; import "./App.css"; -const backend = bearFactory().withAuthentication( - new ContextDeferredAuthProvider() -); +const WORKSPACE = "xms7ga4tf3g3nzucd8380o2bev8oeknp"; function App() { - const measures = [newMeasure("aaEGaXAEgB7U", m => m.format("#,##0"))]; - const attribute = newAttribute("date.abm81lMifn6q"); + const [isLogged, setIsLogged] = useState(false); + const [filters, setFilters] = useState([]); + + useEffect(() => { + loginMachinery( + { + sdk: backend.sdk, + projectId: WORKSPACE, + domain: backend.config.hostname + }, + () => setIsLogged(true) + ); + }); + + if (!isLogged) { + return Checking your credentials, please wait…; + } return ( - +

diff --git a/gd-ui-boilerplate-v8/src/backend.js b/gd-ui-boilerplate-v8/src/backend.js new file mode 100644 index 00000000..ca0a0f0c --- /dev/null +++ b/gd-ui-boilerplate-v8/src/backend.js @@ -0,0 +1,24 @@ +// Copyright (C) 2007-2020, GoodData(R) Corporation. All rights reserved. +import bearFactory, { + ContextDeferredAuthProvider + // FixedLoginAndPasswordAuthProvider +} from "@gooddata/sdk-backend-bear"; + +const config = { + hostname: "" +}; + +if (process.env.NODE_ENV === "production") { + const gdUrl = process.env.GD_URL; + config.hostname = gdUrl + ? `https://${gdUrl}` + : "https://developer.na.gooddata.com"; +} + +const backend = bearFactory(config).withAuthentication( + new ContextDeferredAuthProvider() +); + +window.gooddata = backend; + +export default backend; diff --git a/gd-ui-boilerplate-v8/src/components/CustomBarChart.js b/gd-ui-boilerplate-v8/src/components/CustomBarChart.js new file mode 100644 index 00000000..da077c47 --- /dev/null +++ b/gd-ui-boilerplate-v8/src/components/CustomBarChart.js @@ -0,0 +1,37 @@ +// Copyright (C) 2007-2020, GoodData(R) Corporation. All rights reserved. +import React from "react"; +import ReactHighcharts from "react-highcharts"; +import * as Ldm from "../ldm/full"; + +const CustomBarChart = ({ error, isLoading, result }) => { + if (isLoading) { + return Loading…; + } + + if (error) { + return Something went wrong :-(; + } + + if (result) { + const config = { + chart: { + type: "column" + }, + title: { + text: "🎉🍾🙌 My First Custom Chart 🙌🍾🎉" + }, + series: result + .data() + .series() + .firstForMeasure(Ldm.NrChecks) + .dataPoints() + .map((row, i) => ({ data: [parseFloat(row.rawValue)] })) + }; + + return ; + } + + return "🧟‍♂️ UGLY INIT"; +}; + +export default CustomBarChart; diff --git a/gd-ui-boilerplate-v8/src/index.js b/gd-ui-boilerplate-v8/src/index.js index 9710934d..3d7462fc 100644 --- a/gd-ui-boilerplate-v8/src/index.js +++ b/gd-ui-boilerplate-v8/src/index.js @@ -1,3 +1,4 @@ +// Copyright (C) 2007-2020, GoodData(R) Corporation. All rights reserved. import React from "react"; import ReactDOM from "react-dom"; import "./index.css"; diff --git a/gd-ui-boilerplate-v8/src/ldm/full.js b/gd-ui-boilerplate-v8/src/ldm/full.js new file mode 100644 index 00000000..dc88b275 --- /dev/null +++ b/gd-ui-boilerplate-v8/src/ldm/full.js @@ -0,0 +1,3104 @@ +/* THIS FILE WAS AUTO-GENERATED USING CATALOG EXPORTER; YOU SHOULD NOT EDIT THIS FILE; GENERATE TIME: 2020-08-27T18:31:13.441Z; */ +import { newAttribute, newMeasure, idRef } from "@gooddata/sdk-model"; +export const City = { + /** + * Display Form Title: city + * Display Form ID: label.uscities.city + */ + Default: newAttribute("label.uscities.city"), + /** + * Display Form Title: location + * Display Form ID: label.uscities.city.location + */ + Location: newAttribute("label.uscities.city.location") +}; +/** + * Attribute Title: Computed Attribute + * Display Form ID: attr.comp.MUkNnlZ + */ + +export const ComputedAttribute = newAttribute("label.comp.MUkNnlZ"); +/** + * Attribute Title: Cost Type + * Display Form ID: attr.restaurantcostsfact.costtype + */ + +export const CostType = newAttribute("label.restaurantcostsfact.costtype"); +/** + * Attribute Title: Employee Id + * Display Form ID: attr.employee.employeeid + */ + +export const EmployeeId = newAttribute("label.employee.employeeid"); +export const EmployeeName = { + /** + * Display Form Title: Employee Name + * Display Form ID: label.employee.employeename + */ + Default: newAttribute("label.employee.employeename"), + /** + * Display Form Title: Employee URL + * Display Form ID: label.employee.employeename.employeeurl + */ + EmployeeURL: newAttribute("label.employee.employeename.employeeurl") +}; +/** + * Attribute Title: Is Kids Item? + * Display Form ID: attr.menuitem.iskidsitem + */ + +export const IsKidsItem = newAttribute("label.menuitem.iskidsitem"); +/** + * Attribute Title: Line Item Id + * Display Form ID: attr.salesdetailfact.lineitemid + */ + +export const LineItemId = newAttribute("label.salesdetailfact.lineitemid"); +/** + * Attribute Title: Location City + * Display Form ID: attr.restaurantlocation.locationcity + */ + +export const LocationCity = newAttribute( + "label.restaurantlocation.locationcity" +); +/** + * Attribute Title: Location Country + * Display Form ID: attr.restaurantlocation.locationcountry + */ + +export const LocationCountry = newAttribute( + "label.restaurantlocation.locationcountry" +); +/** + * Attribute Title: Location Id + * Display Form ID: attr.restaurantlocation.locationid + */ + +export const LocationId = newAttribute("label.restaurantlocation.locationid"); +export const LocationName = { + /** + * Display Form Title: Location Name + * Display Form ID: label.restaurantlocation.locationname + */ + Default: newAttribute("label.restaurantlocation.locationname"), + /** + * Display Form Title: Location URL + * Display Form ID: label.restaurantlocation.locationname.locationurl + */ + LocationURL: newAttribute("label.restaurantlocation.locationname.locationurl") +}; +/** + * Attribute Title: Location Ownership + * Display Form ID: attr.restaurantlocation.locationownership + */ + +export const LocationOwnership = newAttribute( + "label.restaurantlocation.locationownership" +); +/** + * Attribute Title: Location Resort + * Display Form ID: attr.restaurantlocation.locationresort + */ + +export const LocationResort = newAttribute( + "label.restaurantlocation.locationresort" +); +/** + * Attribute Title: Location State + * Display Form ID: attr.restaurantlocation.locationstate + */ + +export const LocationState = newAttribute( + "label.restaurantlocation.locationstate" +); +/** + * Attribute Title: Menu Category + * Display Form ID: attr.menuitem.menucategory + */ + +export const MenuCategory = newAttribute("label.menuitem.menucategory"); +/** + * Attribute Title: Menu Item Id + * Display Form ID: attr.menuitem.menuitemid + */ + +export const MenuItemId = newAttribute("label.menuitem.menuitemid"); +/** + * Attribute Title: Menu Item Name + * Display Form ID: attr.menuitem.menuitemname + */ + +export const MenuItemName = newAttribute("label.menuitem.menuitemname"); +/** + * Attribute Title: Restaurant Category + * Display Form ID: attr.restaurantprofile.restaurantcategory + */ + +export const RestaurantCategory = newAttribute( + "label.restaurantprofile.restaurantcategory" +); +/** + * Attribute Title: State Name + * Display Form ID: attr.uscities.state_name + */ + +export const StateName = newAttribute("label.uscities.state_name"); +/** + * Attribute Title: Time Zone + * Display Form ID: attr.uscities.timezone + */ + +export const TimeZone = newAttribute("label.uscities.timezone"); +/** + * Attribute Title: Transaction Id + * Display Form ID: attr.salesdetailfact.transactionid + */ + +export const TransactionId = newAttribute( + "label.salesdetailfact.transactionid" +); +/** + * Metric Title: _Filter Last 4 Quarter + * Metric ID: aaIHiWZjfWNA + * Metric Type: MAQL Metric + */ + +export const FilterLast4Quarter = newMeasure(idRef("aaIHiWZjfWNA", "measure")); +/** + * Metric Title: _Filter Quarter + * Metric ID: aaiF4bffe4yn + * Metric Type: MAQL Metric + */ + +export const FilterQuarter = newMeasure(idRef("aaiF4bffe4yn", "measure")); +/** + * Metric Title: _TIMELINE Q + * Metric ID: aaJF1ktqc10F + * Metric Type: MAQL Metric + */ + +export const TIMELINEQ = newMeasure(idRef("aaJF1ktqc10F", "measure")); +/** + * Metric Title: [AVG] Same Store Sales Growth MoM + * Metric ID: aasApLbucFp0 + * Metric Type: MAQL Metric + */ + +export const AVGSameStoreSalesGrowthMoM = newMeasure( + idRef("aasApLbucFp0", "measure") +); +/** + * Metric Title: # Checks + * Metric ID: aeOt50ngicOD + * Metric Type: MAQL Metric + */ + +export const NrChecks = newMeasure(idRef("aeOt50ngicOD", "measure")); +/** + * Metric Title: # Employees + * Metric ID: aaTJSTfSaRBg + * Metric Type: MAQL Metric + */ + +export const NrEmployees = newMeasure(idRef("aaTJSTfSaRBg", "measure")); +/** + * Metric Title: # Franchise Locations + * Metric ID: ackJFayteCFG + * Metric Type: MAQL Metric + */ + +export const NrFranchiseLocations = newMeasure( + idRef("ackJFayteCFG", "measure") +); +/** + * Metric Title: # Items on Check + * Metric ID: adFurWGrd2H8 + * Metric Type: MAQL Metric + */ + +export const NrItemsOnCheck = newMeasure(idRef("adFurWGrd2H8", "measure")); +/** + * Metric Title: # Location City + * Metric ID: aafmUcxXd17M + * Metric Type: MAQL Metric + */ + +export const NrLocationCity = newMeasure(idRef("aafmUcxXd17M", "measure")); +/** + * Metric Title: # Owned Locations + * Metric ID: aaBJGIyWbxfO + * Metric Type: MAQL Metric + */ + +export const NrOwnedLocations = newMeasure(idRef("aaBJGIyWbxfO", "measure")); +/** + * Metric Title: # Restaurants + * Metric ID: aawAq8YqhM3o + * Metric Type: MAQL Metric + */ + +export const NrRestaurants = newMeasure(idRef("aawAq8YqhM3o", "measure")); +/** + * Metric Title: % Change $ Avg Total Sales + * Metric ID: afxBqOrPc5Zh + * Metric Type: MAQL Metric + */ + +export const PercentChange$AvgTotalSales = newMeasure( + idRef("afxBqOrPc5Zh", "measure") +); +/** + * Metric Title: % Change $ Avg Total Sales by Server + * Metric ID: acMCYQZbbwJg + * Metric Type: MAQL Metric + */ + +export const PercentChange$AvgTotalSalesByServer = newMeasure( + idRef("acMCYQZbbwJg", "measure") +); +/** + * Metric Title: % of Entree on Total Check Size + * Metric ID: aagurTlZd1Ul + * Metric Type: MAQL Metric + */ + +export const PercentOfEntreeOnTotalCheckSize = newMeasure( + idRef("aagurTlZd1Ul", "measure") +); +/** + * Metric Title: $ Avg Check Size + * Metric ID: agGujhRmcjQD + * Metric Type: MAQL Metric + */ + +export const $AvgCheckSize = newMeasure(idRef("agGujhRmcjQD", "measure")); +/** + * Metric Title: $ Avg Daily Total Sales + * Metric ID: aagJGHg1bxap + * Metric Type: MAQL Metric + */ + +export const $AvgDailyTotalSales = newMeasure(idRef("aagJGHg1bxap", "measure")); +/** + * Metric Title: $ Avg Daily Total Sales by Server + * Metric ID: aaAwXH5UfVBx + * Metric Type: MAQL Metric + */ + +export const $AvgDailyTotalSalesByServer = newMeasure( + idRef("aaAwXH5UfVBx", "measure") +); +/** + * Metric Title: $ Avg Daily Total Sales by Server - For Previous + * Metric ID: aeiCXq43bzcl + * Metric Type: MAQL Metric + */ + +export const $AvgDailyTotalSalesByServerForPrevious = newMeasure( + idRef("aeiCXq43bzcl", "measure") +); +/** + * Metric Title: $ Avg Restaurant Daily Total Sales + * Metric ID: acEvQdUMiEAd + * Metric Type: MAQL Metric + */ + +export const $AvgRestaurantDailyTotalSales = newMeasure( + idRef("acEvQdUMiEAd", "measure") +); +/** + * Metric Title: $ Avg Restaurant Daily Total Sales - For Previous + * Metric ID: agbBoXF6haIe + * Metric Type: MAQL Metric + */ + +export const $AvgRestaurantDailyTotalSalesForPrevious = newMeasure( + idRef("agbBoXF6haIe", "measure") +); +/** + * Metric Title: $ Avg Total Sales by Restaurant + * Metric ID: aaAHkMhRgp7S + * Metric Type: MAQL Metric + */ + +export const $AvgTotalSalesByRestaurant = newMeasure( + idRef("aaAHkMhRgp7S", "measure") +); +/** + * Metric Title: $ Entree of Total Check Size + * Metric ID: aavuqQNNaDdc + * Metric Type: MAQL Metric + */ + +export const $EntreeOfTotalCheckSize = newMeasure( + idRef("aavuqQNNaDdc", "measure") +); +/** + * Metric Title: $ Franchise Fees + * Metric ID: aaEGaXAEgB7U + * Metric Type: MAQL Metric + */ + +export const $FranchiseFees = newMeasure(idRef("aaEGaXAEgB7U", "measure")); +/** + * Metric Title: $ Franchise Fees (Ad Royalty) + * Metric ID: aabHeqImaK0d + * Metric Type: MAQL Metric + */ + +export const $FranchiseFeesAdRoyalty = newMeasure( + idRef("aabHeqImaK0d", "measure") +); +/** + * Metric Title: $ Franchise Fees (Initial Fee) Last Quarter Timeline + * Metric ID: aayHf60BfkfS + * Metric Type: MAQL Metric + */ + +export const $FranchiseFeesInitialFeeLastQuarterTimeline = newMeasure( + idRef("aayHf60BfkfS", "measure") +); +/** + * Metric Title: $ Franchise Fees (Initial Franchise Fee) + * Metric ID: aaDHcv6wevkl + * Metric Type: MAQL Metric + */ + +export const $FranchiseFeesInitialFranchiseFee = newMeasure( + idRef("aaDHcv6wevkl", "measure") +); +/** + * Metric Title: $ Franchise Fees (Ongoing Royalty) + * Metric ID: aaWGcgnsfxIg + * Metric Type: MAQL Metric + */ + +export const $FranchiseFeesOngoingRoyalty = newMeasure( + idRef("aaWGcgnsfxIg", "measure") +); +/** + * Metric Title: $ Franchise Fees (Ongoing Royalty) Last Quarter Timeline + * Metric ID: aaeHf3Mofjir + * Metric Type: MAQL Metric + */ + +export const $FranchiseFeesOngoingRoyaltyLastQuarterTimeline = newMeasure( + idRef("aaeHf3Mofjir", "measure") +); +/** + * Metric Title: $ Franchised Sales + * Metric ID: aclF4oDIe5hP + * Metric Type: MAQL Metric + */ + +export const $FranchisedSales = newMeasure(idRef("aclF4oDIe5hP", "measure")); +/** + * Metric Title: $ Gross Profit + * Metric ID: aa5JBkFDa7sJ + * Metric Type: MAQL Metric + */ + +export const $GrossProfit = newMeasure(idRef("aa5JBkFDa7sJ", "measure")); +/** + * Metric Title: $ Owned Sales + * Metric ID: aaMF7AZGbALB + * Metric Type: MAQL Metric + */ + +export const $OwnedSales = newMeasure(idRef("aaMF7AZGbALB", "measure")); +/** + * Metric Title: $ Owned Sales Last Quarter Timeline + * Metric ID: abHF4LCfdNdt + * Metric Type: MAQL Metric + */ + +export const $OwnedSalesLastQuarterTimeline = newMeasure( + idRef("abHF4LCfdNdt", "measure") +); +/** + * Metric Title: $ Scheduled Costs + * Metric ID: aclJxvAlhCp0 + * Metric Type: MAQL Metric + */ + +export const $ScheduledCosts = newMeasure(idRef("aclJxvAlhCp0", "measure")); +/** + * Metric Title: $ Scheduled Labor Costs + * Metric ID: aaGJzwrDdbfQ + * Metric Type: MAQL Metric + */ + +export const $ScheduledLaborCosts = newMeasure( + idRef("aaGJzwrDdbfQ", "measure") +); +/** + * Metric Title: $ Total Check Value + * Metric ID: aattxAMVg2YU + * Metric Type: MAQL Metric + */ + +export const $TotalCheckValue = newMeasure(idRef("aattxAMVg2YU", "measure")); +/** + * Metric Title: $ Total Costs + * Metric ID: aaQHncjzfrtR + * Metric Type: MAQL Metric + */ + +export const $TotalCosts = newMeasure(idRef("aaQHncjzfrtR", "measure")); +/** + * Metric Title: $ Total Costs - COGs + * Metric ID: aafHpxx0f3gL + * Metric Type: MAQL Metric + */ + +export const $TotalCostsCOGs = newMeasure(idRef("aafHpxx0f3gL", "measure")); +/** + * Metric Title: $ Total Costs - Labor + * Metric ID: aamHpELXdotY + * Metric Type: MAQL Metric + */ + +export const $TotalCostsLabor = newMeasure(idRef("aamHpELXdotY", "measure")); +/** + * Metric Title: $ Total Costs - Occupany + * Metric ID: aagHqrJ6iAhD + * Metric Type: MAQL Metric + */ + +export const $TotalCostsOccupany = newMeasure(idRef("aagHqrJ6iAhD", "measure")); +/** + * Metric Title: $ Total Costs - Operating + * Metric ID: aaeHqv2qhEE1 + * Metric Type: MAQL Metric + */ + +export const $TotalCostsOperating = newMeasure( + idRef("aaeHqv2qhEE1", "measure") +); +/** + * Metric Title: $ Total Sales + * Metric ID: aa7ulGyKhIE5 + * Metric Type: MAQL Metric + */ + +export const $TotalSales = newMeasure(idRef("aa7ulGyKhIE5", "measure")); +/** + * Metric Title: $ Total Sales Last Quarter Timeline + * Metric ID: aajFRfDPaJrB + * Metric Type: MAQL Metric + */ + +export const $TotalSalesLastQuarterTimeline = newMeasure( + idRef("aajFRfDPaJrB", "measure") +); +/** + * Metric Title: Avg # Checks + * Metric ID: aakujkP2g68f + * Metric Type: MAQL Metric + */ + +export const AvgNrChecks = newMeasure(idRef("aakujkP2g68f", "measure")); +/** + * Metric Title: Avg # Employees - Franchised + * Metric ID: aciJJMmDfGYG + * Metric Type: MAQL Metric + */ + +export const AvgNrEmployeesFranchised = newMeasure( + idRef("aciJJMmDfGYG", "measure") +); +/** + * Metric Title: Avg # Employees - Owned + * Metric ID: abQJKPrmcvPv + * Metric Type: MAQL Metric + */ + +export const AvgNrEmployeesOwned = newMeasure(idRef("abQJKPrmcvPv", "measure")); +/** + * Metric Title: Avg # Items on Check + * Metric ID: adFurSoPaUaF + * Metric Type: MAQL Metric + */ + +export const AvgNrItemsOnCheck = newMeasure(idRef("adFurSoPaUaF", "measure")); +/** + * Metric Title: Avg # Items on Check By Server + * Metric ID: aaKwQwBIg1WY + * Metric Type: MAQL Metric + */ + +export const AvgNrItemsOnCheckByServer = newMeasure( + idRef("aaKwQwBIg1WY", "measure") +); +/** + * Metric Title: Avg % of Entree on Total Check size + * Metric ID: adQvRqlFawrq + * Metric Type: MAQL Metric + */ + +export const AvgPercentOfEntreeOnTotalCheckSize = newMeasure( + idRef("adQvRqlFawrq", "measure") +); +/** + * Metric Title: Avg Check Size by Restaurant + * Metric ID: abmxly1WgN0A + * Metric Type: MAQL Metric + */ + +export const AvgCheckSizeByRestaurant = newMeasure( + idRef("abmxly1WgN0A", "measure") +); +/** + * Metric Title: Avg Check Size by Server + * Metric ID: afewRzGAersh + * Metric Type: MAQL Metric + */ + +export const AvgCheckSizeByServer = newMeasure( + idRef("afewRzGAersh", "measure") +); +/** + * Metric Title: Avg Daily # Checks by Restaurant + * Metric ID: aaKvTDSga0Qc + * Metric Type: MAQL Metric + */ + +export const AvgDailyNrChecksByRestaurant = newMeasure( + idRef("aaKvTDSga0Qc", "measure") +); +/** + * Metric Title: Avg Daily # of Check by Server + * Metric ID: afgwRbw8ekwA + * Metric Type: MAQL Metric + */ + +export const AvgDailyNrOfCheckByServer = newMeasure( + idRef("afgwRbw8ekwA", "measure") +); +/** + * Metric Title: Avg Entree % By Restaurant + * Metric ID: afQHUg8AfYdl + * Metric Type: MAQL Metric + */ + +export const AvgEntreePercentByRestaurant = newMeasure( + idRef("afQHUg8AfYdl", "measure") +); +/** + * Metric Title: Avg Entree % By Server + * Metric ID: aexwEtn0eHwB + * Metric Type: MAQL Metric + */ + +export const AvgEntreePercentByServer = newMeasure( + idRef("aexwEtn0eHwB", "measure") +); +/** + * Metric Title: Franchise Fee (Initial Fee) % Change + * Metric ID: aabHgIqabggQ + * Metric Type: MAQL Metric + */ + +export const FranchiseFeeInitialFeePercentChange = newMeasure( + idRef("aabHgIqabggQ", "measure") +); +/** + * Metric Title: Franchise Fee (Ongoing Royalty) % Change + * Metric ID: aacHgvmIfZOX + * Metric Type: MAQL Metric + */ + +export const FranchiseFeeOngoingRoyaltyPercentChange = newMeasure( + idRef("aacHgvmIfZOX", "measure") +); +/** + * Metric Title: Gross Profit % + * Metric ID: abBJBoqTe5IH + * Metric Type: MAQL Metric + */ + +export const GrossProfitPercent = newMeasure(idRef("abBJBoqTe5IH", "measure")); +/** + * Metric Title: Owned Sales % Change + * Metric ID: aacF8F2Me67e + * Metric Type: MAQL Metric + */ + +export const OwnedSalesPercentChange = newMeasure( + idRef("aacF8F2Me67e", "measure") +); +/** + * Metric Title: Same Store Sales + * Metric ID: aaXAnw7hcbFY + * Metric Type: MAQL Metric + */ + +export const SameStoreSales = newMeasure(idRef("aaXAnw7hcbFY", "measure")); +/** + * Metric Title: Same Store Sales MoM Growth + * Metric ID: aciAmeQCfGmo + * Metric Type: MAQL Metric + */ + +export const SameStoreSalesMoMGrowth = newMeasure( + idRef("aciAmeQCfGmo", "measure") +); +/** + * Metric Title: Same Store Sales Previous Month + * Metric ID: aagAoGqjcuCZ + * Metric Type: MAQL Metric + */ + +export const SameStoreSalesPreviousMonth = newMeasure( + idRef("aagAoGqjcuCZ", "measure") +); +/** + * Metric Title: Total # Franchised Employees + * Metric ID: afrJGKajgogi + * Metric Type: MAQL Metric + */ + +export const TotalNrFranchisedEmployees = newMeasure( + idRef("afrJGKajgogi", "measure") +); +/** + * Metric Title: Total # Owned Employees + * Metric ID: aazJLFHCdCBh + * Metric Type: MAQL Metric + */ + +export const TotalNrOwnedEmployees = newMeasure( + idRef("aazJLFHCdCBh", "measure") +); +/** + * Metric Title: Total Sales % Change + * Metric ID: abhFQRhibZKx + * Metric Type: MAQL Metric + */ + +export const TotalSalesPercentChange = newMeasure( + idRef("abhFQRhibZKx", "measure") +); +/** + * Fact Title: $ Menu Item Sales + * Fact ID: fact.salesdetailfact.menuitemsales + */ + +export const $MenuItemSales = { + /** + * Fact Title: $ Menu Item Sales + * Fact ID: fact.salesdetailfact.menuitemsales + * Fact Aggregation: sum + */ + Sum: newMeasure(idRef("fact.salesdetailfact.menuitemsales", "fact"), m => + m.aggregation("sum") + ), + /** + * Fact Title: $ Menu Item Sales + * Fact ID: fact.salesdetailfact.menuitemsales + * Fact Aggregation: count + */ + Count: newMeasure(idRef("fact.salesdetailfact.menuitemsales", "fact"), m => + m.aggregation("count") + ), + /** + * Fact Title: $ Menu Item Sales + * Fact ID: fact.salesdetailfact.menuitemsales + * Fact Aggregation: avg + */ + Avg: newMeasure(idRef("fact.salesdetailfact.menuitemsales", "fact"), m => + m.aggregation("avg") + ), + /** + * Fact Title: $ Menu Item Sales + * Fact ID: fact.salesdetailfact.menuitemsales + * Fact Aggregation: min + */ + Min: newMeasure(idRef("fact.salesdetailfact.menuitemsales", "fact"), m => + m.aggregation("min") + ), + /** + * Fact Title: $ Menu Item Sales + * Fact ID: fact.salesdetailfact.menuitemsales + * Fact Aggregation: max + */ + Max: newMeasure(idRef("fact.salesdetailfact.menuitemsales", "fact"), m => + m.aggregation("max") + ), + /** + * Fact Title: $ Menu Item Sales + * Fact ID: fact.salesdetailfact.menuitemsales + * Fact Aggregation: median + */ + Median: newMeasure(idRef("fact.salesdetailfact.menuitemsales", "fact"), m => + m.aggregation("median") + ), + /** + * Fact Title: $ Menu Item Sales + * Fact ID: fact.salesdetailfact.menuitemsales + * Fact Aggregation: runsum + */ + Runsum: newMeasure(idRef("fact.salesdetailfact.menuitemsales", "fact"), m => + m.aggregation("runsum") + ) +}; +/** + * Fact Title: Cost + * Fact ID: fact.restaurantcostsfact.cost + */ + +export const Cost = { + /** + * Fact Title: Cost + * Fact ID: fact.restaurantcostsfact.cost + * Fact Aggregation: sum + */ + Sum: newMeasure(idRef("fact.restaurantcostsfact.cost", "fact"), m => + m.aggregation("sum") + ), + /** + * Fact Title: Cost + * Fact ID: fact.restaurantcostsfact.cost + * Fact Aggregation: count + */ + Count: newMeasure(idRef("fact.restaurantcostsfact.cost", "fact"), m => + m.aggregation("count") + ), + /** + * Fact Title: Cost + * Fact ID: fact.restaurantcostsfact.cost + * Fact Aggregation: avg + */ + Avg: newMeasure(idRef("fact.restaurantcostsfact.cost", "fact"), m => + m.aggregation("avg") + ), + /** + * Fact Title: Cost + * Fact ID: fact.restaurantcostsfact.cost + * Fact Aggregation: min + */ + Min: newMeasure(idRef("fact.restaurantcostsfact.cost", "fact"), m => + m.aggregation("min") + ), + /** + * Fact Title: Cost + * Fact ID: fact.restaurantcostsfact.cost + * Fact Aggregation: max + */ + Max: newMeasure(idRef("fact.restaurantcostsfact.cost", "fact"), m => + m.aggregation("max") + ), + /** + * Fact Title: Cost + * Fact ID: fact.restaurantcostsfact.cost + * Fact Aggregation: median + */ + Median: newMeasure(idRef("fact.restaurantcostsfact.cost", "fact"), m => + m.aggregation("median") + ), + /** + * Fact Title: Cost + * Fact ID: fact.restaurantcostsfact.cost + * Fact Aggregation: runsum + */ + Runsum: newMeasure(idRef("fact.restaurantcostsfact.cost", "fact"), m => + m.aggregation("runsum") + ) +}; +/** + * Fact Title: Density + * Fact ID: fact.uscities.density + */ + +export const Density = { + /** + * Fact Title: Density + * Fact ID: fact.uscities.density + * Fact Aggregation: sum + */ + Sum: newMeasure(idRef("fact.uscities.density", "fact"), m => + m.aggregation("sum") + ), + /** + * Fact Title: Density + * Fact ID: fact.uscities.density + * Fact Aggregation: count + */ + Count: newMeasure(idRef("fact.uscities.density", "fact"), m => + m.aggregation("count") + ), + /** + * Fact Title: Density + * Fact ID: fact.uscities.density + * Fact Aggregation: avg + */ + Avg: newMeasure(idRef("fact.uscities.density", "fact"), m => + m.aggregation("avg") + ), + /** + * Fact Title: Density + * Fact ID: fact.uscities.density + * Fact Aggregation: min + */ + Min: newMeasure(idRef("fact.uscities.density", "fact"), m => + m.aggregation("min") + ), + /** + * Fact Title: Density + * Fact ID: fact.uscities.density + * Fact Aggregation: max + */ + Max: newMeasure(idRef("fact.uscities.density", "fact"), m => + m.aggregation("max") + ), + /** + * Fact Title: Density + * Fact ID: fact.uscities.density + * Fact Aggregation: median + */ + Median: newMeasure(idRef("fact.uscities.density", "fact"), m => + m.aggregation("median") + ), + /** + * Fact Title: Density + * Fact ID: fact.uscities.density + * Fact Aggregation: runsum + */ + Runsum: newMeasure(idRef("fact.uscities.density", "fact"), m => + m.aggregation("runsum") + ) +}; +/** + * Fact Title: Menu Item Quantity + * Fact ID: fact.salesdetailfact.menuitemquantity + */ + +export const MenuItemQuantity = { + /** + * Fact Title: Menu Item Quantity + * Fact ID: fact.salesdetailfact.menuitemquantity + * Fact Aggregation: sum + */ + Sum: newMeasure(idRef("fact.salesdetailfact.menuitemquantity", "fact"), m => + m.aggregation("sum") + ), + /** + * Fact Title: Menu Item Quantity + * Fact ID: fact.salesdetailfact.menuitemquantity + * Fact Aggregation: count + */ + Count: newMeasure(idRef("fact.salesdetailfact.menuitemquantity", "fact"), m => + m.aggregation("count") + ), + /** + * Fact Title: Menu Item Quantity + * Fact ID: fact.salesdetailfact.menuitemquantity + * Fact Aggregation: avg + */ + Avg: newMeasure(idRef("fact.salesdetailfact.menuitemquantity", "fact"), m => + m.aggregation("avg") + ), + /** + * Fact Title: Menu Item Quantity + * Fact ID: fact.salesdetailfact.menuitemquantity + * Fact Aggregation: min + */ + Min: newMeasure(idRef("fact.salesdetailfact.menuitemquantity", "fact"), m => + m.aggregation("min") + ), + /** + * Fact Title: Menu Item Quantity + * Fact ID: fact.salesdetailfact.menuitemquantity + * Fact Aggregation: max + */ + Max: newMeasure(idRef("fact.salesdetailfact.menuitemquantity", "fact"), m => + m.aggregation("max") + ), + /** + * Fact Title: Menu Item Quantity + * Fact ID: fact.salesdetailfact.menuitemquantity + * Fact Aggregation: median + */ + Median: newMeasure( + idRef("fact.salesdetailfact.menuitemquantity", "fact"), + m => m.aggregation("median") + ), + /** + * Fact Title: Menu Item Quantity + * Fact ID: fact.salesdetailfact.menuitemquantity + * Fact Aggregation: runsum + */ + Runsum: newMeasure( + idRef("fact.salesdetailfact.menuitemquantity", "fact"), + m => m.aggregation("runsum") + ) +}; +/** + * Fact Title: Population + * Fact ID: fact.uscities.population + */ + +export const Population = { + /** + * Fact Title: Population + * Fact ID: fact.uscities.population + * Fact Aggregation: sum + */ + Sum: newMeasure(idRef("fact.uscities.population", "fact"), m => + m.aggregation("sum") + ), + /** + * Fact Title: Population + * Fact ID: fact.uscities.population + * Fact Aggregation: count + */ + Count: newMeasure(idRef("fact.uscities.population", "fact"), m => + m.aggregation("count") + ), + /** + * Fact Title: Population + * Fact ID: fact.uscities.population + * Fact Aggregation: avg + */ + Avg: newMeasure(idRef("fact.uscities.population", "fact"), m => + m.aggregation("avg") + ), + /** + * Fact Title: Population + * Fact ID: fact.uscities.population + * Fact Aggregation: min + */ + Min: newMeasure(idRef("fact.uscities.population", "fact"), m => + m.aggregation("min") + ), + /** + * Fact Title: Population + * Fact ID: fact.uscities.population + * Fact Aggregation: max + */ + Max: newMeasure(idRef("fact.uscities.population", "fact"), m => + m.aggregation("max") + ), + /** + * Fact Title: Population + * Fact ID: fact.uscities.population + * Fact Aggregation: median + */ + Median: newMeasure(idRef("fact.uscities.population", "fact"), m => + m.aggregation("median") + ), + /** + * Fact Title: Population + * Fact ID: fact.uscities.population + * Fact Aggregation: runsum + */ + Runsum: newMeasure(idRef("fact.uscities.population", "fact"), m => + m.aggregation("runsum") + ) +}; +/** + * Fact Title: Scheduled Cost + * Fact ID: fact.restaurantcostsfact.scheduledcost + */ + +export const ScheduledCost = { + /** + * Fact Title: Scheduled Cost + * Fact ID: fact.restaurantcostsfact.scheduledcost + * Fact Aggregation: sum + */ + Sum: newMeasure(idRef("fact.restaurantcostsfact.scheduledcost", "fact"), m => + m.aggregation("sum") + ), + /** + * Fact Title: Scheduled Cost + * Fact ID: fact.restaurantcostsfact.scheduledcost + * Fact Aggregation: count + */ + Count: newMeasure( + idRef("fact.restaurantcostsfact.scheduledcost", "fact"), + m => m.aggregation("count") + ), + /** + * Fact Title: Scheduled Cost + * Fact ID: fact.restaurantcostsfact.scheduledcost + * Fact Aggregation: avg + */ + Avg: newMeasure(idRef("fact.restaurantcostsfact.scheduledcost", "fact"), m => + m.aggregation("avg") + ), + /** + * Fact Title: Scheduled Cost + * Fact ID: fact.restaurantcostsfact.scheduledcost + * Fact Aggregation: min + */ + Min: newMeasure(idRef("fact.restaurantcostsfact.scheduledcost", "fact"), m => + m.aggregation("min") + ), + /** + * Fact Title: Scheduled Cost + * Fact ID: fact.restaurantcostsfact.scheduledcost + * Fact Aggregation: max + */ + Max: newMeasure(idRef("fact.restaurantcostsfact.scheduledcost", "fact"), m => + m.aggregation("max") + ), + /** + * Fact Title: Scheduled Cost + * Fact ID: fact.restaurantcostsfact.scheduledcost + * Fact Aggregation: median + */ + Median: newMeasure( + idRef("fact.restaurantcostsfact.scheduledcost", "fact"), + m => m.aggregation("median") + ), + /** + * Fact Title: Scheduled Cost + * Fact ID: fact.restaurantcostsfact.scheduledcost + * Fact Aggregation: runsum + */ + Runsum: newMeasure( + idRef("fact.restaurantcostsfact.scheduledcost", "fact"), + m => m.aggregation("runsum") + ) +}; +/** + * Attribute Title: Year (Date) + * Display Form ID: date.year + */ + +export const DateYear = newAttribute("date.aag81lMifn6q"); +/** + * Attribute Title: Quarter (Date) + * Display Form ID: date.quarter.in.year + */ + +export const DateQuarter = newAttribute("date.aam81lMifn6q"); +export const DateWeekSunSatYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date) + * Display Form ID: date.aaA81lMifn6q + */ + WeekNrYear: newAttribute("date.aaA81lMifn6q"), + /** + * Display Form Title: Week Starting (Date) + * Display Form ID: date.aaw81lMifn6q + */ + WeekStarting: newAttribute("date.aaw81lMifn6q"), + /** + * Display Form Title: From - To (Date) + * Display Form ID: date.aau81lMifn6q + */ + FromTo: newAttribute("date.aau81lMifn6q"), + /** + * Display Form Title: Week #/Year (Cont.) (Date) + * Display Form ID: date.aay81lMifn6q + */ + WeekNrYear_1: newAttribute("date.aay81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Cont.) (Date) + * Display Form ID: date.aaC81lMifn6q + */ + WkQtrYear: newAttribute("date.aaC81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Date) + * Display Form ID: date.aas81lMifn6q + */ + WkQtrYear_1: newAttribute("date.aas81lMifn6q") +}; +/** + * Attribute Title: Week (Sun-Sat) (Date) + * Display Form ID: date.week.in.year + */ + +export const DateWeekSunSat = newAttribute("date.aaI81lMifn6q"); +/** + * Attribute Title: Week (Sun-Sat) of Qtr (Date) + * Display Form ID: date.week.in.quarter + */ + +export const DateWeekSunSatOfQtr = newAttribute("date.aaO81lMifn6q"); +export const DateWeekMonSunYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date) + * Display Form ID: date.aa281lMifn6q + */ + WeekNrYear: newAttribute("date.aa281lMifn6q"), + /** + * Display Form Title: Week Starting (Date) + * Display Form ID: date.aaY81lMifn6q + */ + WeekStarting: newAttribute("date.aaY81lMifn6q"), + /** + * Display Form Title: From - To (Date) + * Display Form ID: date.aaW81lMifn6q + */ + FromTo: newAttribute("date.aaW81lMifn6q") +}; +/** + * Attribute Title: Week (Mon-Sun) (Date) + * Display Form ID: date.euweek.in.year + */ + +export const DateWeekMonSun = newAttribute("date.aba81lMifn6q"); +/** + * Attribute Title: Week (Mon-Sun) of Qtr (Date) + * Display Form ID: date.euweek.in.quarter + */ + +export const DateWeekMonSunOfQtr = newAttribute("date.abg81lMifn6q"); +export const DateMonth = { + /** + * Display Form Title: Short (Jan) (Date) + * Display Form ID: date.abm81lMifn6q + */ + Short: newAttribute("date.abm81lMifn6q"), + /** + * Display Form Title: Long (January) (Date) + * Display Form ID: date.abs81lMifn6q + */ + Long: newAttribute("date.abs81lMifn6q"), + /** + * Display Form Title: Number (M1) (Date) + * Display Form ID: date.abq81lMifn6q + */ + Number: newAttribute("date.abq81lMifn6q"), + /** + * Display Form Title: M/Q (M1/Q1) (Date) + * Display Form ID: date.abo81lMifn6q + */ + MQ: newAttribute("date.abo81lMifn6q") +}; +/** + * Attribute Title: Month of Quarter (Date) + * Display Form ID: date.month.in.quarter + */ + +export const DateMonthOfQuarter = newAttribute("date.aby81lMifn6q"); +/** + * Attribute Title: Day of Year (Date) + * Display Form ID: date.day.in.year + */ + +export const DateDayOfYear = newAttribute("date.abE81lMifn6q"); +export const DateDayOfWeekSunSat = { + /** + * Display Form Title: Short (Sun) (Date) + * Display Form ID: date.abK81lMifn6q + */ + Short: newAttribute("date.abK81lMifn6q"), + /** + * Display Form Title: Long (Sunday) (Date) + * Display Form ID: date.abO81lMifn6q + */ + Long: newAttribute("date.abO81lMifn6q"), + /** + * Display Form Title: Number (1=Sunday) (Date) + * Display Form ID: date.abM81lMifn6q + */ + Number: newAttribute("date.abM81lMifn6q") +}; +export const DateDayOfWeekMonSun = { + /** + * Display Form Title: Short (Mon) (Date) + * Display Form ID: date.abU81lMifn6q + */ + Short: newAttribute("date.abU81lMifn6q"), + /** + * Display Form Title: Long (Monday) (Date) + * Display Form ID: date.abY81lMifn6q + */ + Long: newAttribute("date.abY81lMifn6q"), + /** + * Display Form Title: Number (1=Monday) (Date) + * Display Form ID: date.abW81lMifn6q + */ + Number: newAttribute("date.abW81lMifn6q") +}; +/** + * Attribute Title: Day of Quarter (Date) + * Display Form ID: date.day.in.quarter + */ + +export const DateDayOfQuarter = newAttribute("date.ab481lMifn6q"); +/** + * Attribute Title: Day of Month (Date) + * Display Form ID: date.day.in.month + */ + +export const DateDayOfMonth = newAttribute("date.aca81lMifn6q"); +/** + * Attribute Title: Quarter/Year (Date) + * Display Form ID: date.quarter + */ + +export const DateQuarterYear = newAttribute("date.aci81lMifn6q"); +export const DateMonthYear = { + /** + * Display Form Title: Short (Jan 2010) (Date) + * Display Form ID: date.act81lMifn6q + */ + Short: newAttribute("date.act81lMifn6q"), + /** + * Display Form Title: Long (January 2010) (Date) + * Display Form ID: date.acx81lMifn6q + */ + Long: newAttribute("date.acx81lMifn6q"), + /** + * Display Form Title: Number (1/2010) (Date) + * Display Form ID: date.acv81lMifn6q + */ + Number: newAttribute("date.acv81lMifn6q") +}; +export const DateDate = { + /** + * Display Form Title: mm/dd/yyyy (Date) + * Display Form ID: date.date.mmddyyyy + */ + MmDdYyyy: newAttribute("date.date.mmddyyyy"), + /** + * Display Form Title: yyyy-mm-dd (Date) + * Display Form ID: date.date.yyyymmdd + */ + YyyyMmDd: newAttribute("date.date.yyyymmdd"), + /** + * Display Form Title: m/d/yy (no leading zeroes) (Date) + * Display Form ID: date.date.mdyy + */ + MDYy: newAttribute("date.date.mdyy"), + /** + * Display Form Title: Long (Mon, Jan 1, 2010) (Date) + * Display Form ID: date.date.long + */ + Long: newAttribute("date.date.long"), + /** + * Display Form Title: dd/mm/yyyy (Date) + * Display Form ID: date.date.ddmmyyyy + */ + DdMmYyyy: newAttribute("date.date.ddmmyyyy"), + /** + * Display Form Title: dd-mm-yyyy (Date) + * Display Form ID: date.date.eddmmyyyy + */ + DdMmYyyy_1: newAttribute("date.date.eddmmyyyy") +}; +/** + * Attribute Title: Year (Timeline) + * Display Form ID: timeline.year + */ + +export const TimelineYear = newAttribute("timeline.aag81lMifn6q"); +/** + * Attribute Title: Quarter (Timeline) + * Display Form ID: timeline.quarter.in.year + */ + +export const TimelineQuarter = newAttribute("timeline.aam81lMifn6q"); +export const TimelineWeekSunSatYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Timeline) + * Display Form ID: timeline.aaA81lMifn6q + */ + WeekNrYear: newAttribute("timeline.aaA81lMifn6q"), + /** + * Display Form Title: Week Starting (Timeline) + * Display Form ID: timeline.aaw81lMifn6q + */ + WeekStarting: newAttribute("timeline.aaw81lMifn6q"), + /** + * Display Form Title: From - To (Timeline) + * Display Form ID: timeline.aau81lMifn6q + */ + FromTo: newAttribute("timeline.aau81lMifn6q"), + /** + * Display Form Title: Week #/Year (Cont.) (Timeline) + * Display Form ID: timeline.aay81lMifn6q + */ + WeekNrYear_1: newAttribute("timeline.aay81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Cont.) (Timeline) + * Display Form ID: timeline.aaC81lMifn6q + */ + WkQtrYear: newAttribute("timeline.aaC81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Timeline) + * Display Form ID: timeline.aas81lMifn6q + */ + WkQtrYear_1: newAttribute("timeline.aas81lMifn6q") +}; +/** + * Attribute Title: Week (Sun-Sat) (Timeline) + * Display Form ID: timeline.week.in.year + */ + +export const TimelineWeekSunSat = newAttribute("timeline.aaI81lMifn6q"); +/** + * Attribute Title: Week (Sun-Sat) of Qtr (Timeline) + * Display Form ID: timeline.week.in.quarter + */ + +export const TimelineWeekSunSatOfQtr = newAttribute("timeline.aaO81lMifn6q"); +export const TimelineWeekMonSunYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Timeline) + * Display Form ID: timeline.aa281lMifn6q + */ + WeekNrYear: newAttribute("timeline.aa281lMifn6q"), + /** + * Display Form Title: Week Starting (Timeline) + * Display Form ID: timeline.aaY81lMifn6q + */ + WeekStarting: newAttribute("timeline.aaY81lMifn6q"), + /** + * Display Form Title: From - To (Timeline) + * Display Form ID: timeline.aaW81lMifn6q + */ + FromTo: newAttribute("timeline.aaW81lMifn6q") +}; +/** + * Attribute Title: Week (Mon-Sun) (Timeline) + * Display Form ID: timeline.euweek.in.year + */ + +export const TimelineWeekMonSun = newAttribute("timeline.aba81lMifn6q"); +/** + * Attribute Title: Week (Mon-Sun) of Qtr (Timeline) + * Display Form ID: timeline.euweek.in.quarter + */ + +export const TimelineWeekMonSunOfQtr = newAttribute("timeline.abg81lMifn6q"); +export const TimelineMonth = { + /** + * Display Form Title: Short (Jan) (Timeline) + * Display Form ID: timeline.abm81lMifn6q + */ + Short: newAttribute("timeline.abm81lMifn6q"), + /** + * Display Form Title: Long (January) (Timeline) + * Display Form ID: timeline.abs81lMifn6q + */ + Long: newAttribute("timeline.abs81lMifn6q"), + /** + * Display Form Title: Number (M1) (Timeline) + * Display Form ID: timeline.abq81lMifn6q + */ + Number: newAttribute("timeline.abq81lMifn6q"), + /** + * Display Form Title: M/Q (M1/Q1) (Timeline) + * Display Form ID: timeline.abo81lMifn6q + */ + MQ: newAttribute("timeline.abo81lMifn6q") +}; +/** + * Attribute Title: Month of Quarter (Timeline) + * Display Form ID: timeline.month.in.quarter + */ + +export const TimelineMonthOfQuarter = newAttribute("timeline.aby81lMifn6q"); +/** + * Attribute Title: Day of Year (Timeline) + * Display Form ID: timeline.day.in.year + */ + +export const TimelineDayOfYear = newAttribute("timeline.abE81lMifn6q"); +export const TimelineDayOfWeekSunSat = { + /** + * Display Form Title: Short (Sun) (Timeline) + * Display Form ID: timeline.abK81lMifn6q + */ + Short: newAttribute("timeline.abK81lMifn6q"), + /** + * Display Form Title: Long (Sunday) (Timeline) + * Display Form ID: timeline.abO81lMifn6q + */ + Long: newAttribute("timeline.abO81lMifn6q"), + /** + * Display Form Title: Number (1=Sunday) (Timeline) + * Display Form ID: timeline.abM81lMifn6q + */ + Number: newAttribute("timeline.abM81lMifn6q") +}; +export const TimelineDayOfWeekMonSun = { + /** + * Display Form Title: Short (Mon) (Timeline) + * Display Form ID: timeline.abU81lMifn6q + */ + Short: newAttribute("timeline.abU81lMifn6q"), + /** + * Display Form Title: Long (Monday) (Timeline) + * Display Form ID: timeline.abY81lMifn6q + */ + Long: newAttribute("timeline.abY81lMifn6q"), + /** + * Display Form Title: Number (1=Monday) (Timeline) + * Display Form ID: timeline.abW81lMifn6q + */ + Number: newAttribute("timeline.abW81lMifn6q") +}; +/** + * Attribute Title: Day of Quarter (Timeline) + * Display Form ID: timeline.day.in.quarter + */ + +export const TimelineDayOfQuarter = newAttribute("timeline.ab481lMifn6q"); +/** + * Attribute Title: Day of Month (Timeline) + * Display Form ID: timeline.day.in.month + */ + +export const TimelineDayOfMonth = newAttribute("timeline.aca81lMifn6q"); +/** + * Attribute Title: Quarter/Year (Timeline) + * Display Form ID: timeline.quarter + */ + +export const TimelineQuarterYear = newAttribute("timeline.aci81lMifn6q"); +export const TimelineMonthYear = { + /** + * Display Form Title: Short (Jan 2010) (Timeline) + * Display Form ID: timeline.act81lMifn6q + */ + Short: newAttribute("timeline.act81lMifn6q"), + /** + * Display Form Title: Long (January 2010) (Timeline) + * Display Form ID: timeline.acx81lMifn6q + */ + Long: newAttribute("timeline.acx81lMifn6q"), + /** + * Display Form Title: Number (1/2010) (Timeline) + * Display Form ID: timeline.acv81lMifn6q + */ + Number: newAttribute("timeline.acv81lMifn6q") +}; +export const TimelineDate = { + /** + * Display Form Title: mm/dd/yyyy (Timeline) + * Display Form ID: timeline.date.mmddyyyy + */ + MmDdYyyy: newAttribute("timeline.date.mmddyyyy"), + /** + * Display Form Title: yyyy-mm-dd (Timeline) + * Display Form ID: timeline.date.yyyymmdd + */ + YyyyMmDd: newAttribute("timeline.date.yyyymmdd"), + /** + * Display Form Title: m/d/yy (no leading zeroes) (Timeline) + * Display Form ID: timeline.date.mdyy + */ + MDYy: newAttribute("timeline.date.mdyy"), + /** + * Display Form Title: Long (Mon, Jan 1, 2010) (Timeline) + * Display Form ID: timeline.date.long + */ + Long: newAttribute("timeline.date.long"), + /** + * Display Form Title: dd/mm/yyyy (Timeline) + * Display Form ID: timeline.date.ddmmyyyy + */ + DdMmYyyy: newAttribute("timeline.date.ddmmyyyy"), + /** + * Display Form Title: dd-mm-yyyy (Timeline) + * Display Form ID: timeline.date.eddmmyyyy + */ + DdMmYyyy_1: newAttribute("timeline.date.eddmmyyyy") +}; +/** + * Attribute Title: Year (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_year + */ + +export const FiscalDateYear = newAttribute( + "fiscaldate.fiscaljun1_aag81lMifn6q" +); +/** + * Attribute Title: Quarter (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_quarter.in.year + */ + +export const FiscalDateQuarter = newAttribute( + "fiscaldate.fiscaljun1_aam81lMifn6q" +); +export const FiscalDateWeekSunSatYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_aaA81lMifn6q + */ + WeekNrYear: newAttribute("fiscaldate.fiscaljun1_aaA81lMifn6q"), + /** + * Display Form Title: Week Starting (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_aaw81lMifn6q + */ + WeekStarting: newAttribute("fiscaldate.fiscaljun1_aaw81lMifn6q"), + /** + * Display Form Title: From - To (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_aau81lMifn6q + */ + FromTo: newAttribute("fiscaldate.fiscaljun1_aau81lMifn6q"), + /** + * Display Form Title: Week #/Year (Cont.) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_aay81lMifn6q + */ + WeekNrYear_1: newAttribute("fiscaldate.fiscaljun1_aay81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Cont.) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_aaC81lMifn6q + */ + WkQtrYear: newAttribute("fiscaldate.fiscaljun1_aaC81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_aas81lMifn6q + */ + WkQtrYear_1: newAttribute("fiscaldate.fiscaljun1_aas81lMifn6q") +}; +/** + * Attribute Title: Week (Sun-Sat) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_week.in.year + */ + +export const FiscalDateWeekSunSat = newAttribute( + "fiscaldate.fiscaljun1_aaI81lMifn6q" +); +/** + * Attribute Title: Week (Sun-Sat) of Qtr (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_week.in.quarter + */ + +export const FiscalDateWeekSunSatOfQtr = newAttribute( + "fiscaldate.fiscaljun1_aaO81lMifn6q" +); +export const FiscalDateWeekMonSunYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_aa281lMifn6q + */ + WeekNrYear: newAttribute("fiscaldate.fiscaljun1_aa281lMifn6q"), + /** + * Display Form Title: Week Starting (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_aaY81lMifn6q + */ + WeekStarting: newAttribute("fiscaldate.fiscaljun1_aaY81lMifn6q"), + /** + * Display Form Title: From - To (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_aaW81lMifn6q + */ + FromTo: newAttribute("fiscaldate.fiscaljun1_aaW81lMifn6q") +}; +/** + * Attribute Title: Week (Mon-Sun) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_euweek.in.year + */ + +export const FiscalDateWeekMonSun = newAttribute( + "fiscaldate.fiscaljun1_aba81lMifn6q" +); +/** + * Attribute Title: Week (Mon-Sun) of Qtr (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_euweek.in.quarter + */ + +export const FiscalDateWeekMonSunOfQtr = newAttribute( + "fiscaldate.fiscaljun1_abg81lMifn6q" +); +export const FiscalDateMonth = { + /** + * Display Form Title: Short (Jan) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abm81lMifn6q + */ + Short: newAttribute("fiscaldate.fiscaljun1_abm81lMifn6q"), + /** + * Display Form Title: Long (January) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abs81lMifn6q + */ + Long: newAttribute("fiscaldate.fiscaljun1_abs81lMifn6q"), + /** + * Display Form Title: Number (M1) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abq81lMifn6q + */ + Number: newAttribute("fiscaldate.fiscaljun1_abq81lMifn6q"), + /** + * Display Form Title: M/Q (M1/Q1) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abo81lMifn6q + */ + MQ: newAttribute("fiscaldate.fiscaljun1_abo81lMifn6q") +}; +/** + * Attribute Title: Month of Quarter (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_month.in.quarter + */ + +export const FiscalDateMonthOfQuarter = newAttribute( + "fiscaldate.fiscaljun1_aby81lMifn6q" +); +/** + * Attribute Title: Day of Year (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_day.in.year + */ + +export const FiscalDateDayOfYear = newAttribute( + "fiscaldate.fiscaljun1_abE81lMifn6q" +); +export const FiscalDateDayOfWeekSunSat = { + /** + * Display Form Title: Short (Sun) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abK81lMifn6q + */ + Short: newAttribute("fiscaldate.fiscaljun1_abK81lMifn6q"), + /** + * Display Form Title: Long (Sunday) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abO81lMifn6q + */ + Long: newAttribute("fiscaldate.fiscaljun1_abO81lMifn6q"), + /** + * Display Form Title: Number (1=Sunday) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abM81lMifn6q + */ + Number: newAttribute("fiscaldate.fiscaljun1_abM81lMifn6q") +}; +export const FiscalDateDayOfWeekMonSun = { + /** + * Display Form Title: Short (Mon) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abU81lMifn6q + */ + Short: newAttribute("fiscaldate.fiscaljun1_abU81lMifn6q"), + /** + * Display Form Title: Long (Monday) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abY81lMifn6q + */ + Long: newAttribute("fiscaldate.fiscaljun1_abY81lMifn6q"), + /** + * Display Form Title: Number (1=Monday) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_abW81lMifn6q + */ + Number: newAttribute("fiscaldate.fiscaljun1_abW81lMifn6q") +}; +/** + * Attribute Title: Day of Quarter (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_day.in.quarter + */ + +export const FiscalDateDayOfQuarter = newAttribute( + "fiscaldate.fiscaljun1_ab481lMifn6q" +); +/** + * Attribute Title: Day of Month (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_day.in.month + */ + +export const FiscalDateDayOfMonth = newAttribute( + "fiscaldate.fiscaljun1_aca81lMifn6q" +); +/** + * Attribute Title: Quarter/Year (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_quarter + */ + +export const FiscalDateQuarterYear = newAttribute( + "fiscaldate.fiscaljun1_aci81lMifn6q" +); +export const FiscalDateMonthYear = { + /** + * Display Form Title: Short (Jan 2010) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_act81lMifn6q + */ + Short: newAttribute("fiscaldate.fiscaljun1_act81lMifn6q"), + /** + * Display Form Title: Long (January 2010) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_acx81lMifn6q + */ + Long: newAttribute("fiscaldate.fiscaljun1_acx81lMifn6q"), + /** + * Display Form Title: Number (1/2010) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_acv81lMifn6q + */ + Number: newAttribute("fiscaldate.fiscaljun1_acv81lMifn6q") +}; +export const FiscalDateDate = { + /** + * Display Form Title: mm/dd/yyyy (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_date.mmddyyyy + */ + MmDdYyyy: newAttribute("fiscaldate.fiscaljun1_date.mmddyyyy"), + /** + * Display Form Title: yyyy-mm-dd (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_date.yyyymmdd + */ + YyyyMmDd: newAttribute("fiscaldate.fiscaljun1_date.yyyymmdd"), + /** + * Display Form Title: m/d/yy (no leading zeroes) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_date.mdyy + */ + MDYy: newAttribute("fiscaldate.fiscaljun1_date.mdyy"), + /** + * Display Form Title: Long (Mon, Jan 1, 2010) (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_date.long + */ + Long: newAttribute("fiscaldate.fiscaljun1_date.long"), + /** + * Display Form Title: dd/mm/yyyy (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_date.ddmmyyyy + */ + DdMmYyyy: newAttribute("fiscaldate.fiscaljun1_date.ddmmyyyy"), + /** + * Display Form Title: dd-mm-yyyy (Fiscal Date) + * Display Form ID: fiscaldate.fiscaljun1_date.eddmmyyyy + */ + DdMmYyyy_1: newAttribute("fiscaldate.fiscaljun1_date.eddmmyyyy") +}; +/** + * Attribute Title: Year (Date 1) + * Display Form ID: date_1.year + */ + +export const Date1Year = newAttribute("date_1.aag81lMifn6q"); +/** + * Attribute Title: Quarter (Date 1) + * Display Form ID: date_1.quarter.in.year + */ + +export const Date1Quarter = newAttribute("date_1.aam81lMifn6q"); +export const Date1WeekSunSatYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date 1) + * Display Form ID: date_1.aaA81lMifn6q + */ + WeekNrYear: newAttribute("date_1.aaA81lMifn6q"), + /** + * Display Form Title: Week Starting (Date 1) + * Display Form ID: date_1.aaw81lMifn6q + */ + WeekStarting: newAttribute("date_1.aaw81lMifn6q"), + /** + * Display Form Title: From - To (Date 1) + * Display Form ID: date_1.aau81lMifn6q + */ + FromTo: newAttribute("date_1.aau81lMifn6q"), + /** + * Display Form Title: Week #/Year (Cont.) (Date 1) + * Display Form ID: date_1.aay81lMifn6q + */ + WeekNrYear_1: newAttribute("date_1.aay81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Cont.) (Date 1) + * Display Form ID: date_1.aaC81lMifn6q + */ + WkQtrYear: newAttribute("date_1.aaC81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Date 1) + * Display Form ID: date_1.aas81lMifn6q + */ + WkQtrYear_1: newAttribute("date_1.aas81lMifn6q") +}; +/** + * Attribute Title: Week (Sun-Sat) (Date 1) + * Display Form ID: date_1.week.in.year + */ + +export const Date1WeekSunSat = newAttribute("date_1.aaI81lMifn6q"); +/** + * Attribute Title: Week (Sun-Sat) of Qtr (Date 1) + * Display Form ID: date_1.week.in.quarter + */ + +export const Date1WeekSunSatOfQtr = newAttribute("date_1.aaO81lMifn6q"); +export const Date1WeekMonSunYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date 1) + * Display Form ID: date_1.aa281lMifn6q + */ + WeekNrYear: newAttribute("date_1.aa281lMifn6q"), + /** + * Display Form Title: Week Starting (Date 1) + * Display Form ID: date_1.aaY81lMifn6q + */ + WeekStarting: newAttribute("date_1.aaY81lMifn6q"), + /** + * Display Form Title: From - To (Date 1) + * Display Form ID: date_1.aaW81lMifn6q + */ + FromTo: newAttribute("date_1.aaW81lMifn6q") +}; +/** + * Attribute Title: Week (Mon-Sun) (Date 1) + * Display Form ID: date_1.euweek.in.year + */ + +export const Date1WeekMonSun = newAttribute("date_1.aba81lMifn6q"); +/** + * Attribute Title: Week (Mon-Sun) of Qtr (Date 1) + * Display Form ID: date_1.euweek.in.quarter + */ + +export const Date1WeekMonSunOfQtr = newAttribute("date_1.abg81lMifn6q"); +export const Date1Month = { + /** + * Display Form Title: Short (Jan) (Date 1) + * Display Form ID: date_1.abm81lMifn6q + */ + Short: newAttribute("date_1.abm81lMifn6q"), + /** + * Display Form Title: Long (January) (Date 1) + * Display Form ID: date_1.abs81lMifn6q + */ + Long: newAttribute("date_1.abs81lMifn6q"), + /** + * Display Form Title: Number (M1) (Date 1) + * Display Form ID: date_1.abq81lMifn6q + */ + Number: newAttribute("date_1.abq81lMifn6q"), + /** + * Display Form Title: M/Q (M1/Q1) (Date 1) + * Display Form ID: date_1.abo81lMifn6q + */ + MQ: newAttribute("date_1.abo81lMifn6q") +}; +/** + * Attribute Title: Month of Quarter (Date 1) + * Display Form ID: date_1.month.in.quarter + */ + +export const Date1MonthOfQuarter = newAttribute("date_1.aby81lMifn6q"); +/** + * Attribute Title: Day of Year (Date 1) + * Display Form ID: date_1.day.in.year + */ + +export const Date1DayOfYear = newAttribute("date_1.abE81lMifn6q"); +export const Date1DayOfWeekSunSat = { + /** + * Display Form Title: Short (Sun) (Date 1) + * Display Form ID: date_1.abK81lMifn6q + */ + Short: newAttribute("date_1.abK81lMifn6q"), + /** + * Display Form Title: Long (Sunday) (Date 1) + * Display Form ID: date_1.abO81lMifn6q + */ + Long: newAttribute("date_1.abO81lMifn6q"), + /** + * Display Form Title: Number (1=Sunday) (Date 1) + * Display Form ID: date_1.abM81lMifn6q + */ + Number: newAttribute("date_1.abM81lMifn6q") +}; +export const Date1DayOfWeekMonSun = { + /** + * Display Form Title: Short (Mon) (Date 1) + * Display Form ID: date_1.abU81lMifn6q + */ + Short: newAttribute("date_1.abU81lMifn6q"), + /** + * Display Form Title: Long (Monday) (Date 1) + * Display Form ID: date_1.abY81lMifn6q + */ + Long: newAttribute("date_1.abY81lMifn6q"), + /** + * Display Form Title: Number (1=Monday) (Date 1) + * Display Form ID: date_1.abW81lMifn6q + */ + Number: newAttribute("date_1.abW81lMifn6q") +}; +/** + * Attribute Title: Day of Quarter (Date 1) + * Display Form ID: date_1.day.in.quarter + */ + +export const Date1DayOfQuarter = newAttribute("date_1.ab481lMifn6q"); +/** + * Attribute Title: Day of Month (Date 1) + * Display Form ID: date_1.day.in.month + */ + +export const Date1DayOfMonth = newAttribute("date_1.aca81lMifn6q"); +/** + * Attribute Title: Quarter/Year (Date 1) + * Display Form ID: date_1.quarter + */ + +export const Date1QuarterYear = newAttribute("date_1.aci81lMifn6q"); +export const Date1MonthYear = { + /** + * Display Form Title: Short (Jan 2010) (Date 1) + * Display Form ID: date_1.act81lMifn6q + */ + Short: newAttribute("date_1.act81lMifn6q"), + /** + * Display Form Title: Long (January 2010) (Date 1) + * Display Form ID: date_1.acx81lMifn6q + */ + Long: newAttribute("date_1.acx81lMifn6q"), + /** + * Display Form Title: Number (1/2010) (Date 1) + * Display Form ID: date_1.acv81lMifn6q + */ + Number: newAttribute("date_1.acv81lMifn6q") +}; +export const Date1Date = { + /** + * Display Form Title: mm/dd/yyyy (Date 1) + * Display Form ID: date_1.date.mmddyyyy + */ + MmDdYyyy: newAttribute("date_1.date.mmddyyyy"), + /** + * Display Form Title: yyyy-mm-dd (Date 1) + * Display Form ID: date_1.date.yyyymmdd + */ + YyyyMmDd: newAttribute("date_1.date.yyyymmdd"), + /** + * Display Form Title: m/d/yy (no leading zeroes) (Date 1) + * Display Form ID: date_1.date.mdyy + */ + MDYy: newAttribute("date_1.date.mdyy"), + /** + * Display Form Title: Long (Mon, Jan 1, 2010) (Date 1) + * Display Form ID: date_1.date.long + */ + Long: newAttribute("date_1.date.long"), + /** + * Display Form Title: dd/mm/yyyy (Date 1) + * Display Form ID: date_1.date.ddmmyyyy + */ + DdMmYyyy: newAttribute("date_1.date.ddmmyyyy"), + /** + * Display Form Title: dd-mm-yyyy (Date 1) + * Display Form ID: date_1.date.eddmmyyyy + */ + DdMmYyyy_1: newAttribute("date_1.date.eddmmyyyy") +}; +/** + * Attribute Title: Year (Date 2) + * Display Form ID: date_2.year + */ + +export const Date2Year = newAttribute("date_2.aag81lMifn6q"); +/** + * Attribute Title: Quarter (Date 2) + * Display Form ID: date_2.quarter.in.year + */ + +export const Date2Quarter = newAttribute("date_2.aam81lMifn6q"); +export const Date2WeekSunSatYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date 2) + * Display Form ID: date_2.aaA81lMifn6q + */ + WeekNrYear: newAttribute("date_2.aaA81lMifn6q"), + /** + * Display Form Title: Week Starting (Date 2) + * Display Form ID: date_2.aaw81lMifn6q + */ + WeekStarting: newAttribute("date_2.aaw81lMifn6q"), + /** + * Display Form Title: From - To (Date 2) + * Display Form ID: date_2.aau81lMifn6q + */ + FromTo: newAttribute("date_2.aau81lMifn6q"), + /** + * Display Form Title: Week #/Year (Cont.) (Date 2) + * Display Form ID: date_2.aay81lMifn6q + */ + WeekNrYear_1: newAttribute("date_2.aay81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Cont.) (Date 2) + * Display Form ID: date_2.aaC81lMifn6q + */ + WkQtrYear: newAttribute("date_2.aaC81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Date 2) + * Display Form ID: date_2.aas81lMifn6q + */ + WkQtrYear_1: newAttribute("date_2.aas81lMifn6q") +}; +/** + * Attribute Title: Week (Sun-Sat) (Date 2) + * Display Form ID: date_2.week.in.year + */ + +export const Date2WeekSunSat = newAttribute("date_2.aaI81lMifn6q"); +/** + * Attribute Title: Week (Sun-Sat) of Qtr (Date 2) + * Display Form ID: date_2.week.in.quarter + */ + +export const Date2WeekSunSatOfQtr = newAttribute("date_2.aaO81lMifn6q"); +export const Date2WeekMonSunYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date 2) + * Display Form ID: date_2.aa281lMifn6q + */ + WeekNrYear: newAttribute("date_2.aa281lMifn6q"), + /** + * Display Form Title: Week Starting (Date 2) + * Display Form ID: date_2.aaY81lMifn6q + */ + WeekStarting: newAttribute("date_2.aaY81lMifn6q"), + /** + * Display Form Title: From - To (Date 2) + * Display Form ID: date_2.aaW81lMifn6q + */ + FromTo: newAttribute("date_2.aaW81lMifn6q") +}; +/** + * Attribute Title: Week (Mon-Sun) (Date 2) + * Display Form ID: date_2.euweek.in.year + */ + +export const Date2WeekMonSun = newAttribute("date_2.aba81lMifn6q"); +/** + * Attribute Title: Week (Mon-Sun) of Qtr (Date 2) + * Display Form ID: date_2.euweek.in.quarter + */ + +export const Date2WeekMonSunOfQtr = newAttribute("date_2.abg81lMifn6q"); +export const Date2Month = { + /** + * Display Form Title: Short (Jan) (Date 2) + * Display Form ID: date_2.abm81lMifn6q + */ + Short: newAttribute("date_2.abm81lMifn6q"), + /** + * Display Form Title: Long (January) (Date 2) + * Display Form ID: date_2.abs81lMifn6q + */ + Long: newAttribute("date_2.abs81lMifn6q"), + /** + * Display Form Title: Number (M1) (Date 2) + * Display Form ID: date_2.abq81lMifn6q + */ + Number: newAttribute("date_2.abq81lMifn6q"), + /** + * Display Form Title: M/Q (M1/Q1) (Date 2) + * Display Form ID: date_2.abo81lMifn6q + */ + MQ: newAttribute("date_2.abo81lMifn6q") +}; +/** + * Attribute Title: Month of Quarter (Date 2) + * Display Form ID: date_2.month.in.quarter + */ + +export const Date2MonthOfQuarter = newAttribute("date_2.aby81lMifn6q"); +/** + * Attribute Title: Day of Year (Date 2) + * Display Form ID: date_2.day.in.year + */ + +export const Date2DayOfYear = newAttribute("date_2.abE81lMifn6q"); +export const Date2DayOfWeekSunSat = { + /** + * Display Form Title: Short (Sun) (Date 2) + * Display Form ID: date_2.abK81lMifn6q + */ + Short: newAttribute("date_2.abK81lMifn6q"), + /** + * Display Form Title: Long (Sunday) (Date 2) + * Display Form ID: date_2.abO81lMifn6q + */ + Long: newAttribute("date_2.abO81lMifn6q"), + /** + * Display Form Title: Number (1=Sunday) (Date 2) + * Display Form ID: date_2.abM81lMifn6q + */ + Number: newAttribute("date_2.abM81lMifn6q") +}; +export const Date2DayOfWeekMonSun = { + /** + * Display Form Title: Short (Mon) (Date 2) + * Display Form ID: date_2.abU81lMifn6q + */ + Short: newAttribute("date_2.abU81lMifn6q"), + /** + * Display Form Title: Long (Monday) (Date 2) + * Display Form ID: date_2.abY81lMifn6q + */ + Long: newAttribute("date_2.abY81lMifn6q"), + /** + * Display Form Title: Number (1=Monday) (Date 2) + * Display Form ID: date_2.abW81lMifn6q + */ + Number: newAttribute("date_2.abW81lMifn6q") +}; +/** + * Attribute Title: Day of Quarter (Date 2) + * Display Form ID: date_2.day.in.quarter + */ + +export const Date2DayOfQuarter = newAttribute("date_2.ab481lMifn6q"); +/** + * Attribute Title: Day of Month (Date 2) + * Display Form ID: date_2.day.in.month + */ + +export const Date2DayOfMonth = newAttribute("date_2.aca81lMifn6q"); +/** + * Attribute Title: Quarter/Year (Date 2) + * Display Form ID: date_2.quarter + */ + +export const Date2QuarterYear = newAttribute("date_2.aci81lMifn6q"); +export const Date2MonthYear = { + /** + * Display Form Title: Short (Jan 2010) (Date 2) + * Display Form ID: date_2.act81lMifn6q + */ + Short: newAttribute("date_2.act81lMifn6q"), + /** + * Display Form Title: Long (January 2010) (Date 2) + * Display Form ID: date_2.acx81lMifn6q + */ + Long: newAttribute("date_2.acx81lMifn6q"), + /** + * Display Form Title: Number (1/2010) (Date 2) + * Display Form ID: date_2.acv81lMifn6q + */ + Number: newAttribute("date_2.acv81lMifn6q") +}; +export const Date2Date = { + /** + * Display Form Title: mm/dd/yyyy (Date 2) + * Display Form ID: date_2.date.mmddyyyy + */ + MmDdYyyy: newAttribute("date_2.date.mmddyyyy"), + /** + * Display Form Title: yyyy-mm-dd (Date 2) + * Display Form ID: date_2.date.yyyymmdd + */ + YyyyMmDd: newAttribute("date_2.date.yyyymmdd"), + /** + * Display Form Title: m/d/yy (no leading zeroes) (Date 2) + * Display Form ID: date_2.date.mdyy + */ + MDYy: newAttribute("date_2.date.mdyy"), + /** + * Display Form Title: Long (Mon, Jan 1, 2010) (Date 2) + * Display Form ID: date_2.date.long + */ + Long: newAttribute("date_2.date.long"), + /** + * Display Form Title: dd/mm/yyyy (Date 2) + * Display Form ID: date_2.date.ddmmyyyy + */ + DdMmYyyy: newAttribute("date_2.date.ddmmyyyy"), + /** + * Display Form Title: dd-mm-yyyy (Date 2) + * Display Form ID: date_2.date.eddmmyyyy + */ + DdMmYyyy_1: newAttribute("date_2.date.eddmmyyyy") +}; +/** + * Attribute Title: Year (Date 3) + * Display Form ID: date_3.year + */ + +export const Date3Year = newAttribute("date_3.aag81lMifn6q"); +/** + * Attribute Title: Quarter (Date 3) + * Display Form ID: date_3.quarter.in.year + */ + +export const Date3Quarter = newAttribute("date_3.aam81lMifn6q"); +export const Date3WeekSunSatYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date 3) + * Display Form ID: date_3.aaA81lMifn6q + */ + WeekNrYear: newAttribute("date_3.aaA81lMifn6q"), + /** + * Display Form Title: Week Starting (Date 3) + * Display Form ID: date_3.aaw81lMifn6q + */ + WeekStarting: newAttribute("date_3.aaw81lMifn6q"), + /** + * Display Form Title: From - To (Date 3) + * Display Form ID: date_3.aau81lMifn6q + */ + FromTo: newAttribute("date_3.aau81lMifn6q"), + /** + * Display Form Title: Week #/Year (Cont.) (Date 3) + * Display Form ID: date_3.aay81lMifn6q + */ + WeekNrYear_1: newAttribute("date_3.aay81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Cont.) (Date 3) + * Display Form ID: date_3.aaC81lMifn6q + */ + WkQtrYear: newAttribute("date_3.aaC81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Date 3) + * Display Form ID: date_3.aas81lMifn6q + */ + WkQtrYear_1: newAttribute("date_3.aas81lMifn6q") +}; +/** + * Attribute Title: Week (Sun-Sat) (Date 3) + * Display Form ID: date_3.week.in.year + */ + +export const Date3WeekSunSat = newAttribute("date_3.aaI81lMifn6q"); +/** + * Attribute Title: Week (Sun-Sat) of Qtr (Date 3) + * Display Form ID: date_3.week.in.quarter + */ + +export const Date3WeekSunSatOfQtr = newAttribute("date_3.aaO81lMifn6q"); +export const Date3WeekMonSunYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date 3) + * Display Form ID: date_3.aa281lMifn6q + */ + WeekNrYear: newAttribute("date_3.aa281lMifn6q"), + /** + * Display Form Title: Week Starting (Date 3) + * Display Form ID: date_3.aaY81lMifn6q + */ + WeekStarting: newAttribute("date_3.aaY81lMifn6q"), + /** + * Display Form Title: From - To (Date 3) + * Display Form ID: date_3.aaW81lMifn6q + */ + FromTo: newAttribute("date_3.aaW81lMifn6q") +}; +/** + * Attribute Title: Week (Mon-Sun) (Date 3) + * Display Form ID: date_3.euweek.in.year + */ + +export const Date3WeekMonSun = newAttribute("date_3.aba81lMifn6q"); +/** + * Attribute Title: Week (Mon-Sun) of Qtr (Date 3) + * Display Form ID: date_3.euweek.in.quarter + */ + +export const Date3WeekMonSunOfQtr = newAttribute("date_3.abg81lMifn6q"); +export const Date3Month = { + /** + * Display Form Title: Short (Jan) (Date 3) + * Display Form ID: date_3.abm81lMifn6q + */ + Short: newAttribute("date_3.abm81lMifn6q"), + /** + * Display Form Title: Long (January) (Date 3) + * Display Form ID: date_3.abs81lMifn6q + */ + Long: newAttribute("date_3.abs81lMifn6q"), + /** + * Display Form Title: Number (M1) (Date 3) + * Display Form ID: date_3.abq81lMifn6q + */ + Number: newAttribute("date_3.abq81lMifn6q"), + /** + * Display Form Title: M/Q (M1/Q1) (Date 3) + * Display Form ID: date_3.abo81lMifn6q + */ + MQ: newAttribute("date_3.abo81lMifn6q") +}; +/** + * Attribute Title: Month of Quarter (Date 3) + * Display Form ID: date_3.month.in.quarter + */ + +export const Date3MonthOfQuarter = newAttribute("date_3.aby81lMifn6q"); +/** + * Attribute Title: Day of Year (Date 3) + * Display Form ID: date_3.day.in.year + */ + +export const Date3DayOfYear = newAttribute("date_3.abE81lMifn6q"); +export const Date3DayOfWeekSunSat = { + /** + * Display Form Title: Short (Sun) (Date 3) + * Display Form ID: date_3.abK81lMifn6q + */ + Short: newAttribute("date_3.abK81lMifn6q"), + /** + * Display Form Title: Long (Sunday) (Date 3) + * Display Form ID: date_3.abO81lMifn6q + */ + Long: newAttribute("date_3.abO81lMifn6q"), + /** + * Display Form Title: Number (1=Sunday) (Date 3) + * Display Form ID: date_3.abM81lMifn6q + */ + Number: newAttribute("date_3.abM81lMifn6q") +}; +export const Date3DayOfWeekMonSun = { + /** + * Display Form Title: Short (Mon) (Date 3) + * Display Form ID: date_3.abU81lMifn6q + */ + Short: newAttribute("date_3.abU81lMifn6q"), + /** + * Display Form Title: Long (Monday) (Date 3) + * Display Form ID: date_3.abY81lMifn6q + */ + Long: newAttribute("date_3.abY81lMifn6q"), + /** + * Display Form Title: Number (1=Monday) (Date 3) + * Display Form ID: date_3.abW81lMifn6q + */ + Number: newAttribute("date_3.abW81lMifn6q") +}; +/** + * Attribute Title: Day of Quarter (Date 3) + * Display Form ID: date_3.day.in.quarter + */ + +export const Date3DayOfQuarter = newAttribute("date_3.ab481lMifn6q"); +/** + * Attribute Title: Day of Month (Date 3) + * Display Form ID: date_3.day.in.month + */ + +export const Date3DayOfMonth = newAttribute("date_3.aca81lMifn6q"); +/** + * Attribute Title: Quarter/Year (Date 3) + * Display Form ID: date_3.quarter + */ + +export const Date3QuarterYear = newAttribute("date_3.aci81lMifn6q"); +export const Date3MonthYear = { + /** + * Display Form Title: Short (Jan 2010) (Date 3) + * Display Form ID: date_3.act81lMifn6q + */ + Short: newAttribute("date_3.act81lMifn6q"), + /** + * Display Form Title: Long (January 2010) (Date 3) + * Display Form ID: date_3.acx81lMifn6q + */ + Long: newAttribute("date_3.acx81lMifn6q"), + /** + * Display Form Title: Number (1/2010) (Date 3) + * Display Form ID: date_3.acv81lMifn6q + */ + Number: newAttribute("date_3.acv81lMifn6q") +}; +export const Date3Date = { + /** + * Display Form Title: mm/dd/yyyy (Date 3) + * Display Form ID: date_3.date.mmddyyyy + */ + MmDdYyyy: newAttribute("date_3.date.mmddyyyy"), + /** + * Display Form Title: yyyy-mm-dd (Date 3) + * Display Form ID: date_3.date.yyyymmdd + */ + YyyyMmDd: newAttribute("date_3.date.yyyymmdd"), + /** + * Display Form Title: m/d/yy (no leading zeroes) (Date 3) + * Display Form ID: date_3.date.mdyy + */ + MDYy: newAttribute("date_3.date.mdyy"), + /** + * Display Form Title: Long (Mon, Jan 1, 2010) (Date 3) + * Display Form ID: date_3.date.long + */ + Long: newAttribute("date_3.date.long"), + /** + * Display Form Title: dd/mm/yyyy (Date 3) + * Display Form ID: date_3.date.ddmmyyyy + */ + DdMmYyyy: newAttribute("date_3.date.ddmmyyyy"), + /** + * Display Form Title: dd-mm-yyyy (Date 3) + * Display Form ID: date_3.date.eddmmyyyy + */ + DdMmYyyy_1: newAttribute("date_3.date.eddmmyyyy") +}; +/** + * Attribute Title: Year (Date 4) + * Display Form ID: date_4.year + */ + +export const Date4Year = newAttribute("date_4.aag81lMifn6q"); +/** + * Attribute Title: Quarter (Date 4) + * Display Form ID: date_4.quarter.in.year + */ + +export const Date4Quarter = newAttribute("date_4.aam81lMifn6q"); +export const Date4WeekSunSatYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date 4) + * Display Form ID: date_4.aaA81lMifn6q + */ + WeekNrYear: newAttribute("date_4.aaA81lMifn6q"), + /** + * Display Form Title: Week Starting (Date 4) + * Display Form ID: date_4.aaw81lMifn6q + */ + WeekStarting: newAttribute("date_4.aaw81lMifn6q"), + /** + * Display Form Title: From - To (Date 4) + * Display Form ID: date_4.aau81lMifn6q + */ + FromTo: newAttribute("date_4.aau81lMifn6q"), + /** + * Display Form Title: Week #/Year (Cont.) (Date 4) + * Display Form ID: date_4.aay81lMifn6q + */ + WeekNrYear_1: newAttribute("date_4.aay81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Cont.) (Date 4) + * Display Form ID: date_4.aaC81lMifn6q + */ + WkQtrYear: newAttribute("date_4.aaC81lMifn6q"), + /** + * Display Form Title: Wk/Qtr/Year (Date 4) + * Display Form ID: date_4.aas81lMifn6q + */ + WkQtrYear_1: newAttribute("date_4.aas81lMifn6q") +}; +/** + * Attribute Title: Week (Sun-Sat) (Date 4) + * Display Form ID: date_4.week.in.year + */ + +export const Date4WeekSunSat = newAttribute("date_4.aaI81lMifn6q"); +/** + * Attribute Title: Week (Sun-Sat) of Qtr (Date 4) + * Display Form ID: date_4.week.in.quarter + */ + +export const Date4WeekSunSatOfQtr = newAttribute("date_4.aaO81lMifn6q"); +export const Date4WeekMonSunYear = { + /** + * Display Form Title: Week #/Year (W1/2010) (Date 4) + * Display Form ID: date_4.aa281lMifn6q + */ + WeekNrYear: newAttribute("date_4.aa281lMifn6q"), + /** + * Display Form Title: Week Starting (Date 4) + * Display Form ID: date_4.aaY81lMifn6q + */ + WeekStarting: newAttribute("date_4.aaY81lMifn6q"), + /** + * Display Form Title: From - To (Date 4) + * Display Form ID: date_4.aaW81lMifn6q + */ + FromTo: newAttribute("date_4.aaW81lMifn6q") +}; +/** + * Attribute Title: Week (Mon-Sun) (Date 4) + * Display Form ID: date_4.euweek.in.year + */ + +export const Date4WeekMonSun = newAttribute("date_4.aba81lMifn6q"); +/** + * Attribute Title: Week (Mon-Sun) of Qtr (Date 4) + * Display Form ID: date_4.euweek.in.quarter + */ + +export const Date4WeekMonSunOfQtr = newAttribute("date_4.abg81lMifn6q"); +export const Date4Month = { + /** + * Display Form Title: Short (Jan) (Date 4) + * Display Form ID: date_4.abm81lMifn6q + */ + Short: newAttribute("date_4.abm81lMifn6q"), + /** + * Display Form Title: Long (January) (Date 4) + * Display Form ID: date_4.abs81lMifn6q + */ + Long: newAttribute("date_4.abs81lMifn6q"), + /** + * Display Form Title: Number (M1) (Date 4) + * Display Form ID: date_4.abq81lMifn6q + */ + Number: newAttribute("date_4.abq81lMifn6q"), + /** + * Display Form Title: M/Q (M1/Q1) (Date 4) + * Display Form ID: date_4.abo81lMifn6q + */ + MQ: newAttribute("date_4.abo81lMifn6q") +}; +/** + * Attribute Title: Month of Quarter (Date 4) + * Display Form ID: date_4.month.in.quarter + */ + +export const Date4MonthOfQuarter = newAttribute("date_4.aby81lMifn6q"); +/** + * Attribute Title: Day of Year (Date 4) + * Display Form ID: date_4.day.in.year + */ + +export const Date4DayOfYear = newAttribute("date_4.abE81lMifn6q"); +export const Date4DayOfWeekSunSat = { + /** + * Display Form Title: Short (Sun) (Date 4) + * Display Form ID: date_4.abK81lMifn6q + */ + Short: newAttribute("date_4.abK81lMifn6q"), + /** + * Display Form Title: Long (Sunday) (Date 4) + * Display Form ID: date_4.abO81lMifn6q + */ + Long: newAttribute("date_4.abO81lMifn6q"), + /** + * Display Form Title: Number (1=Sunday) (Date 4) + * Display Form ID: date_4.abM81lMifn6q + */ + Number: newAttribute("date_4.abM81lMifn6q") +}; +export const Date4DayOfWeekMonSun = { + /** + * Display Form Title: Short (Mon) (Date 4) + * Display Form ID: date_4.abU81lMifn6q + */ + Short: newAttribute("date_4.abU81lMifn6q"), + /** + * Display Form Title: Long (Monday) (Date 4) + * Display Form ID: date_4.abY81lMifn6q + */ + Long: newAttribute("date_4.abY81lMifn6q"), + /** + * Display Form Title: Number (1=Monday) (Date 4) + * Display Form ID: date_4.abW81lMifn6q + */ + Number: newAttribute("date_4.abW81lMifn6q") +}; +/** + * Attribute Title: Day of Quarter (Date 4) + * Display Form ID: date_4.day.in.quarter + */ + +export const Date4DayOfQuarter = newAttribute("date_4.ab481lMifn6q"); +/** + * Attribute Title: Day of Month (Date 4) + * Display Form ID: date_4.day.in.month + */ + +export const Date4DayOfMonth = newAttribute("date_4.aca81lMifn6q"); +/** + * Attribute Title: Quarter/Year (Date 4) + * Display Form ID: date_4.quarter + */ + +export const Date4QuarterYear = newAttribute("date_4.aci81lMifn6q"); +export const Date4MonthYear = { + /** + * Display Form Title: Short (Jan 2010) (Date 4) + * Display Form ID: date_4.act81lMifn6q + */ + Short: newAttribute("date_4.act81lMifn6q"), + /** + * Display Form Title: Long (January 2010) (Date 4) + * Display Form ID: date_4.acx81lMifn6q + */ + Long: newAttribute("date_4.acx81lMifn6q"), + /** + * Display Form Title: Number (1/2010) (Date 4) + * Display Form ID: date_4.acv81lMifn6q + */ + Number: newAttribute("date_4.acv81lMifn6q") +}; +export const Date4Date = { + /** + * Display Form Title: mm/dd/yyyy (Date 4) + * Display Form ID: date_4.date.mmddyyyy + */ + MmDdYyyy: newAttribute("date_4.date.mmddyyyy"), + /** + * Display Form Title: yyyy-mm-dd (Date 4) + * Display Form ID: date_4.date.yyyymmdd + */ + YyyyMmDd: newAttribute("date_4.date.yyyymmdd"), + /** + * Display Form Title: m/d/yy (no leading zeroes) (Date 4) + * Display Form ID: date_4.date.mdyy + */ + MDYy: newAttribute("date_4.date.mdyy"), + /** + * Display Form Title: Long (Mon, Jan 1, 2010) (Date 4) + * Display Form ID: date_4.date.long + */ + Long: newAttribute("date_4.date.long"), + /** + * Display Form Title: dd/mm/yyyy (Date 4) + * Display Form ID: date_4.date.ddmmyyyy + */ + DdMmYyyy: newAttribute("date_4.date.ddmmyyyy"), + /** + * Display Form Title: dd-mm-yyyy (Date 4) + * Display Form ID: date_4.date.eddmmyyyy + */ + DdMmYyyy_1: newAttribute("date_4.date.eddmmyyyy") +}; +export const Insights = { + /** + * Insight Title: Avg Entree % + * Insight ID: abHVSjwFgk4i + */ + AvgEntreePercent: "abHVSjwFgk4i", + /** + * Insight Title: Total Sales by City + * Insight ID: acPWDTL2bJeX + */ + TotalSalesByCity: "acPWDTL2bJeX", + /** + * Insight Title: Total Sales by Location Last Quarter + * Insight ID: abmeiDsUhTNW + */ + TotalSalesByLocationLastQuarter: "abmeiDsUhTNW", + /** + * Insight Title: Total Sales by Week + * Insight ID: aeSCEMsTfoj8 + */ + TotalSalesByWeek: "aeSCEMsTfoj8", + /** + * Insight Title: $ Check Value by Trx + * Insight ID: aa7N3HExdhKw + */ + $CheckValueByTrx: "aa7N3HExdhKw", + /** + * Insight Title: $ Total Sales by Location + * Insight ID: aaBN5UG3dXu4 + */ + $TotalSalesByLocation: "aaBN5UG3dXu4", + /** + * Insight Title: Sales over Time + * Insight ID: acFJltTsifSQ + */ + SalesOverTime: "acFJltTsifSQ", + /** + * Insight Title: Costs over Time + * Insight ID: abHJmzD1fZrW + */ + CostsOverTime: "abHJmzD1fZrW", + /** + * Insight Title: Labor Costs vs Scheduled Costs + * Insight ID: abhJpedgcfU2 + */ + LaborCostsVsScheduledCosts: "abhJpedgcfU2", + /** + * Insight Title: Gross profit % (date filters) + * Insight ID: acOfuc2QiDZK + */ + GrossProfitPercentDateFilters: "acOfuc2QiDZK", + /** + * Insight Title: Table report Labor Costs Vs Scheduled Costs + * Insight ID: aatFRvXBdilm + */ + TableReportLaborCostsVsScheduledCosts: "aatFRvXBdilm", + /** + * Insight Title: Franchise Fees + * Insight ID: aahnVeLugyFj + */ + FranchiseFees: "aahnVeLugyFj", + /** + * Insight Title: Franchise Fees 2017 + * Insight ID: aaZWa46oh9cJ + */ + FranchiseFees2017: "aaZWa46oh9cJ", + /** + * Insight Title: Too many datapoints + * Insight ID: afgeutl8hfOe + */ + TooManyDatapoints: "afgeutl8hfOe", + /** + * Insight Title: Test + * Insight ID: ab6KtJ2LfmCV + */ + Test: "ab6KtJ2LfmCV", + /** + * Insight Title: 123 + * Insight ID: ab3KtvTggKY5 + */ + _123: "ab3KtvTggKY5", + /** + * Insight Title: asdf + * Insight ID: aepRx0i8haM7 + */ + Asdf: "aepRx0i8haM7", + /** + * Insight Title: too many data points + * Insight ID: adzkfjmWiajP + */ + TooManyDataPoints: "adzkfjmWiajP", + /** + * Insight Title: test-pzb + * Insight ID: aa0wmZDugnUX + */ + TestPzb: "aa0wmZDugnUX", + /** + * Insight Title: # Checks viewed by City stacked by Location + * Insight ID: aby6oS6DbpFX + */ + NrChecksViewedByCityStackedByLocation: "aby6oS6DbpFX", + /** + * Insight Title: Kyle's Insight + * Insight ID: aazlme4wcy3O + */ + KyleSInsight: "aazlme4wcy3O", + /** + * Insight Title: Gross Profit by location + * Insight ID: ad4lhli5dn5v + */ + GrossProfitByLocation: "ad4lhli5dn5v", + /** + * Insight Title: ui-example-1 + * Insight ID: aasloSSGgcAs + */ + UiExample1: "aasloSSGgcAs", + /** + * Insight Title: DanielsFirstKPI + * Insight ID: aaHloqmuf0Ea + */ + DanielsFirstKPI: "aaHloqmuf0Ea", + /** + * Insight Title: states + * Insight ID: aayloZPWhziV + */ + States: "aayloZPWhziV", + /** + * Insight Title: Jakub's visualisation + * Insight ID: abNloeB7iy4S + */ + JakubSVisualisation: "abNloeB7iy4S", + /** + * Insight Title: sdf_restrant_per_city + * Insight ID: aamlpUW9d6gc + */ + SdfRestrantPerCity: "aamlpUW9d6gc", + /** + * Insight Title: fargo + * Insight ID: acyllEgrhybI + */ + Fargo: "acyllEgrhybI", + /** + * Insight Title: new_test + * Insight ID: aeHmbn7Ciok6 + */ + NewTest: "aeHmbn7Ciok6", + /** + * Insight Title: Zajícův insight 2 + * Insight ID: abgprmHgf3uq + */ + ZajCVInsight2: "abgprmHgf3uq", + /** + * Insight Title: previousPeriod + * Insight ID: aaMNtrdagrFW + */ + PreviousPeriod: "aaMNtrdagrFW", + /** + * Insight Title: Table to Pivot + * Insight ID: aaYPSrp3bqyQ + */ + TableToPivot: "aaYPSrp3bqyQ", + /** + * Insight Title: Table to Pivot #2 + * Insight ID: aaRUKANgdCex + */ + TableToPivotNr2: "aaRUKANgdCex", + /** + * Insight Title: Table to Pivot #3 + * Insight ID: abdUSeYRfG4P + */ + TableToPivotNr3: "abdUSeYRfG4P", + /** + * Insight Title: Bubble Chart + * Insight ID: aa6D2HhshWHB + */ + BubbleChart: "aa6D2HhshWHB", + /** + * Insight Title: hackathon + * Insight ID: abxJEfZhfOk9 + */ + Hackathon: "abxJEfZhfOk9", + /** + * Insight Title: pie2 + * Insight ID: abcJGKsFhpp5 + */ + Pie2: "abcJGKsFhpp5", + /** + * Insight Title: Column Chart + * Insight ID: acKLst3Faran + */ + ColumnChart: "acKLst3Faran", + /** + * Insight Title: Dummy chart + * Insight ID: abw8Uco2cT1B + */ + DummyChart: "abw8Uco2cT1B", + /** + * Insight Title: test insight 1 + * Insight ID: ab68UlSRcNcP + */ + TestInsight1: "ab68UlSRcNcP", + /** + * Insight Title: Pivot test + * Insight ID: abIFNtySe2mv + */ + PivotTest: "abIFNtySe2mv", + /** + * Insight Title: Table Without Measure + * Insight ID: act2Khypdnz6 + */ + TableWithoutMeasure: "act2Khypdnz6", + /** + * Insight Title: asdfasdf + * Insight ID: ab7CymgRcuDx + */ + Asdfasdf: "ab7CymgRcuDx", + /** + * Insight Title: PivotTable sort over column attribute TEST + * Insight ID: ackXHPqtheSt + */ + PivotTableSortOverColumnAttributeTEST: "ackXHPqtheSt", + /** + * Insight Title: Table Totals test + * Insight ID: abS3P51kcXLN + */ + TableTotalsTest: "abS3P51kcXLN", + /** + * Insight Title: scatter example x + * Insight ID: aaIfYMhViEjv + */ + ScatterExampleX: "aaIfYMhViEjv", + /** + * Insight Title: xxx + * Insight ID: abtwQrxcfOvC + */ + Xxx: "abtwQrxcfOvC", + /** + * Insight Title: Line Chart + * Insight ID: aaAaDFt4c1yC + */ + LineChart: "aaAaDFt4c1yC", + /** + * Insight Title: Scatter Chart + * Insight ID: ab4aHg6lej5e + */ + ScatterChart: "ab4aHg6lej5e", + /** + * Insight Title: Area Chart + * Insight ID: acCaGDIrc1iU + */ + AreaChart: "acCaGDIrc1iU", + /** + * Insight Title: Headline Chart + * Insight ID: aaiaOcMqbyMj + */ + HeadlineChart: "aaiaOcMqbyMj", + /** + * Insight Title: Bubble Chart + * Insight ID: abNaJG2Aed2M + */ + BubbleChart_1: "abNaJG2Aed2M", + /** + * Insight Title: Pie Chart + * Insight ID: aaraOcrmdjZd + */ + PieChart: "aaraOcrmdjZd", + /** + * Insight Title: Donut Chart + * Insight ID: absaJEALgcdO + */ + DonutChart: "absaJEALgcdO", + /** + * Insight Title: Treemap Chart + * Insight ID: aajaObFleXdD + */ + TreemapChart: "aajaObFleXdD", + /** + * Insight Title: Heatmap Chart + * Insight ID: abkaJfMYiiCU + */ + HeatmapChart: "abkaJfMYiiCU", + /** + * Insight Title: Bar Chart + * Insight ID: aaKaMZUJeyGo + */ + BarChart: "aaKaMZUJeyGo", + /** + * Insight Title: yxcv + * Insight ID: acGEkojJhJdr + */ + Yxcv: "acGEkojJhJdr", + /** + * Insight Title: ColumnsChart + * Insight ID: aabOspdLbbvs + */ + ColumnsChart: "aabOspdLbbvs", + /** + * Insight Title: # Checks by Quarter, State + * Insight ID: aaW7hwvlfq8Q + */ + NrChecksByQuarterState: "aaW7hwvlfq8Q", + /** + * Insight Title: e + * Insight ID: ab3sK1TAhDEl + */ + E: "ab3sK1TAhDEl", + /** + * Insight Title: TOTVS Table + * Insight ID: aesum6Klg3Pg + */ + TOTVSTable: "aesum6Klg3Pg", + /** + * Insight Title: tesst date year + * Insight ID: aa37yWEJaZgJ + */ + TesstDateYear: "aa37yWEJaZgJ", + /** + * Insight Title: pivotka + * Insight ID: abOGucCbbjYU + */ + Pivotka: "abOGucCbbjYU", + /** + * Insight Title: PivotTable with no filters + * Insight ID: abEGARwMcKcp + */ + PivotTableWithNoFilters: "abEGARwMcKcp", + /** + * Insight Title: TOTVS Table #2 + * Insight ID: aattqR1TePqz + */ + TOTVSTableNr2: "aattqR1TePqz", + /** + * Insight Title: tetsssss1 + * Insight ID: abr6SUUDg4J3 + */ + Tetsssss1: "abr6SUUDg4J3", + /** + * Insight Title: coreui-react + * Insight ID: aaSMTErxgsQZ + */ + CoreuiReact: "aaSMTErxgsQZ", + /** + * Insight Title: JZA Treemap + * Insight ID: aaGJHukYh43y + */ + JZATreemap: "aaGJHukYh43y", + /** + * Insight Title: JZA Combo + * Insight ID: aaTJJW6adsaj + */ + JZACombo: "aaTJJW6adsaj", + /** + * Insight Title: JZA Pivot Example + * Insight ID: aaVk0eDhiiyr + */ + JZAPivotExample: "aaVk0eDhiiyr", + /** + * Insight Title: Dual Axis Bar Chart + * Insight ID: acSoPx4Mc7Rr + */ + DualAxisBarChart: "acSoPx4Mc7Rr", + /** + * Insight Title: Checks by year + * Insight ID: accyE4bMhKhb + */ + ChecksByYear: "accyE4bMhKhb", + /** + * Insight Title: Checks by State + * Insight ID: ad0CPFd0eIAV + */ + ChecksByState: "ad0CPFd0eIAV", + /** + * Insight Title: DEL + * Insight ID: aaXC6TWlfQTa + */ + DEL: "aaXC6TWlfQTa", + /** + * Insight Title: DEL + * Insight ID: aagDshJTagXX + */ + DEL_1: "aagDshJTagXX", + /** + * Insight Title: Long Table + * Insight ID: aaDKNE91d2wl + */ + LongTable: "aaDKNE91d2wl", + /** + * Insight Title: test + * Insight ID: abg7q7o6dYNx + */ + Test_1: "abg7q7o6dYNx", + /** + * Insight Title: DHO-test + * Insight ID: abtZxLkZfrFD + */ + DHOTest: "abtZxLkZfrFD", + /** + * Insight Title: KPI + * Insight ID: aa5gPlRleK93 + */ + KPI: "aa5gPlRleK93", + /** + * Insight Title: PVA + * Insight ID: abCiWPjZbXVS + */ + PVA: "abCiWPjZbXVS", + /** + * Insight Title: PVA 2 + * Insight ID: aaCi3GfNaV6Y + */ + PVA2: "aaCi3GfNaV6Y", + /** + * Insight Title: Table + * Insight ID: aaimzjiVfWkM + */ + Table: "aaimzjiVfWkM", + /** + * Insight Title: Test Chart #1 + * Insight ID: aa4ESTLYiu6X + */ + TestChartNr1: "aa4ESTLYiu6X", + /** + * Insight Title: Table + * Insight ID: acN7DuCPiDoh + */ + Table_1: "acN7DuCPiDoh", + /** + * Insight Title: Chart #1 + * Insight ID: admoLzGrddbk + */ + ChartNr1: "admoLzGrddbk", + /** + * Insight Title: geoPushpinChart + * Insight ID: acebcI3fhaRI + */ + GeoPushpinChart: "acebcI3fhaRI", + /** + * Insight Title: bullet + * Insight ID: aaQxY4PLbBsQ + */ + Bullet: "aaQxY4PLbBsQ", + /** + * Insight Title: Measure Value Filter Column Chart + * Insight ID: aapcLmQzeIAz + */ + MeasureValueFilterColumnChart: "aapcLmQzeIAz", + /** + * Insight Title: Measure Value Filter treat null values as 0 + * Insight ID: ab8GBmYngtMa + */ + MeasureValueFilterTreatNullValuesAs0: "ab8GBmYngtMa", + /** + * Insight Title: VisualBI #1 + * Insight ID: aazG5vCZbY25 + */ + VisualBINr1: "aazG5vCZbY25", + /** + * Insight Title: Pivot insight + * Insight ID: ab1Kx7lUaHvU + */ + PivotInsight: "ab1Kx7lUaHvU", + /** + * Insight Title: yxcv + * Insight ID: abSTN5NZh4xW + */ + Yxcv_1: "abSTN5NZh4xW", + /** + * Insight Title: Dual + * Insight ID: aaiiYGtUims2 + */ + Dual: "aaiiYGtUims2", + /** + * Insight Title: Test #1 + * Insight ID: aasWddUAawmK + */ + TestNr1: "aasWddUAawmK" +}; diff --git a/gd-ui-boilerplate-v8/src/setupProxy.js b/gd-ui-boilerplate-v8/src/setupProxy.js index 807937ab..94bb5c32 100644 --- a/gd-ui-boilerplate-v8/src/setupProxy.js +++ b/gd-ui-boilerplate-v8/src/setupProxy.js @@ -1,3 +1,4 @@ +// Copyright (C) 2007-2020, GoodData(R) Corporation. All rights reserved. const proxy = require("http-proxy-middleware"); module.exports = function(app) { diff --git a/gd-ui-boilerplate-v8/src/utils.js b/gd-ui-boilerplate-v8/src/utils.js new file mode 100644 index 00000000..07cc82fc --- /dev/null +++ b/gd-ui-boilerplate-v8/src/utils.js @@ -0,0 +1,61 @@ +// Copyright (C) 2007-2020, GoodData(R) Corporation. All rights reserved. +export const loginMachinery = ( + { sdk, projectId, domain }, + callback = () => {} +) => { + const redirectToLogin = () => { + if (domain) { + window.location.replace( + `${domain}/account.html?lastUrl=${encodeURIComponent(window.location)}` + ); + } else { + window.location.replace( + `https://${window.location.hostname}:${ + window.location.port + }/account.html?lastUrl=${encodeURIComponent(window.location)}` + ); + } + }; + + sdk.user.isLoggedIn().then(isLogged => { + if (isLogged) { + sdk.user.getAccountInfo().then(accountInfo => { + const { profileUri } = accountInfo; + + sdk.project.getProjects(profileUri.split("/")[4]).then(projects => { + if ( + projects.find(p => p.links.self === `/gdc/projects/${projectId}`) + ) { + callback(accountInfo); + } else { + sdk.user.logout().then(() => { + redirectToLogin(); + }); + } + }); + }); + } else { + redirectToLogin(); + } + }); +}; + +export const logout = (e, { sdk, domain }) => { + e.preventDefault(); + + const redirectToLogin = () => { + if (domain) { + window.location.replace( + `${domain}/account.html?lastUrl=${encodeURIComponent(window.location)}` + ); + } else { + window.location.replace( + `https://${window.location.hostname}:${window.location.port}/account.html` + ); + } + }; + + sdk.user.logout().then(() => { + redirectToLogin(); + }); +}; diff --git a/gd-ui-boilerplate-v8/yarn.lock b/gd-ui-boilerplate-v8/yarn.lock index da306ce3..0b5ce62c 100644 --- a/gd-ui-boilerplate-v8/yarn.lock +++ b/gd-ui-boilerplate-v8/yarn.lock @@ -2,6 +2,49 @@ # yarn lockfile v1 +"@ag-grid-community/all-modules@22.1.1": + version "22.1.1" + resolved "https://registry.yarnpkg.com/@ag-grid-community/all-modules/-/all-modules-22.1.1.tgz#433411967f904eeb75cb04c5e6cb4452a58776a3" + integrity sha512-VBUbl3HRZoFKoQf/79Qq6vEUaAutF5voWq6vv6tPnDsojbCpGRrlPxAmL+Ypb39JE3oEYvW+Y/5ksKEGlab1kg== + dependencies: + "@ag-grid-community/client-side-row-model" "~22.1.1" + "@ag-grid-community/core" "~22.1.1" + "@ag-grid-community/csv-export" "~22.1.1" + "@ag-grid-community/infinite-row-model" "~22.1.1" + +"@ag-grid-community/client-side-row-model@~22.1.1": + version "22.1.1" + resolved "https://registry.yarnpkg.com/@ag-grid-community/client-side-row-model/-/client-side-row-model-22.1.1.tgz#9ac111319559b19dfaf20ea158020cddc6848365" + integrity sha512-lLqYuYHngb8pC5wSnBRYzszBDeTxRkz6TmxpVP8CHYM3QSqe2xUTp8KFkzO+RrlySB7uCCx1ym0bOR4vRkkaAw== + dependencies: + "@ag-grid-community/core" "~22.1.1" + +"@ag-grid-community/core@~22.1.1": + version "22.1.1" + resolved "https://registry.yarnpkg.com/@ag-grid-community/core/-/core-22.1.1.tgz#5b30fe9de4e309c92540dfb218ddb97db319d88a" + integrity sha512-x9dLUnsIsa+3bsweYKM8UWN42b7i5FDMvGpabAlOS0jAcJRs6krZUBK8XyZwzCc2vELuoBQ6VrKG5RWCN2phjg== + +"@ag-grid-community/csv-export@~22.1.1": + version "22.1.1" + resolved "https://registry.yarnpkg.com/@ag-grid-community/csv-export/-/csv-export-22.1.1.tgz#fd8948302f5be0ee658ef7c256b5594c401be157" + integrity sha512-x7BcFRVVwP8LWOpFqGv+Z7DP4RqDVnf+MwMeHAT2VeMDU9oHYS0Dr3tr5Z8XMEV0pQFWj79iwwC8wrvwXkG8Lg== + dependencies: + "@ag-grid-community/core" "~22.1.1" + +"@ag-grid-community/infinite-row-model@~22.1.1": + version "22.1.1" + resolved "https://registry.yarnpkg.com/@ag-grid-community/infinite-row-model/-/infinite-row-model-22.1.1.tgz#db7fcc45014fd59edd167f1b869b4ee9fd4c598d" + integrity sha512-GWSxNvqkrDsEsvMuB7Lq0Ucp9oWPejttAgAFOXLtWzDJGZ8M1ndv5OHAA4ubTm0z0VLU9q3Ysoc4pr19E600Og== + dependencies: + "@ag-grid-community/core" "~22.1.1" + +"@ag-grid-community/react@22.1.2": + version "22.1.2" + resolved "https://registry.yarnpkg.com/@ag-grid-community/react/-/react-22.1.2.tgz#1bf188177f5c8d12371aa20539d66d66a29960dd" + integrity sha512-rouYVp1NFq4hwBMmazMQ5sxcmwImcBOQC2YVn5/39uoP8+3UHTNcimMbKviAN+jMQgIHDlBTTBgjDAH9mMKmQg== + dependencies: + prop-types "^15.6.2" + "@babel/code-frame@7.8.3", "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" @@ -47,7 +90,29 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.11.0": +"@babel/core@^7.7.2": + version "7.11.4" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.11.4.tgz#4301dfdfafa01eeb97f1896c5501a3f0655d4229" + integrity sha512-5deljj5HlqRXN+5oJTY7Zs37iH3z3b++KjiKtIsJy1NrjOOVSEaJHEetLBhyu0aQOSNNZ/0IuEAan9GzRuDXHg== + dependencies: + "@babel/code-frame" "^7.10.4" + "@babel/generator" "^7.11.4" + "@babel/helper-module-transforms" "^7.11.0" + "@babel/helpers" "^7.10.4" + "@babel/parser" "^7.11.4" + "@babel/template" "^7.10.4" + "@babel/traverse" "^7.11.0" + "@babel/types" "^7.11.0" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.1" + json5 "^2.1.2" + lodash "^4.17.19" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@^7.11.0", "@babel/generator@^7.11.4": version "7.11.4" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.11.4.tgz#1ec7eec00defba5d6f83e50e3ee72ae2fee482be" integrity sha512-Rn26vueFx0eOoz7iifCN2UHT6rGtnkSGWSoDRIy8jZN3B91PzeSULbswfLoOWuTuAcNwpG/mxy+uCTDnZ9Mp1g== @@ -221,6 +286,13 @@ dependencies: "@babel/types" "^7.8.3" +"@babel/helper-module-imports@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz#4c5c54be04bd31670a7382797d75b9fa2e5b5620" + integrity sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw== + dependencies: + "@babel/types" "^7.10.4" + "@babel/helper-module-imports@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz#7fe39589b39c016331b6b8c3f441e8f0b1419498" @@ -228,6 +300,19 @@ dependencies: "@babel/types" "^7.8.3" +"@babel/helper-module-transforms@^7.11.0": + version "7.11.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz#b16f250229e47211abdd84b34b64737c2ab2d359" + integrity sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg== + dependencies: + "@babel/helper-module-imports" "^7.10.4" + "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-simple-access" "^7.10.4" + "@babel/helper-split-export-declaration" "^7.11.0" + "@babel/template" "^7.10.4" + "@babel/types" "^7.11.0" + lodash "^4.17.19" + "@babel/helper-module-transforms@^7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz#43b34dfe15961918707d247327431388e9fe96e5" @@ -303,6 +388,14 @@ "@babel/traverse" "^7.8.6" "@babel/types" "^7.8.6" +"@babel/helper-simple-access@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz#0f5ccda2945277a2a7a2d3a821e15395edcf3461" + integrity sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw== + dependencies: + "@babel/template" "^7.10.4" + "@babel/types" "^7.10.4" + "@babel/helper-simple-access@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz#7f8109928b4dab4654076986af575231deb639ae" @@ -345,6 +438,15 @@ "@babel/traverse" "^7.8.3" "@babel/types" "^7.8.3" +"@babel/helpers@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.10.4.tgz#2abeb0d721aff7c0a97376b9e1f6f65d7a475044" + integrity sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA== + dependencies: + "@babel/template" "^7.10.4" + "@babel/traverse" "^7.10.4" + "@babel/types" "^7.10.4" + "@babel/helpers@^7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.9.0.tgz#ab2c1bc4821af766cab51d4868a5038874ea5a12" @@ -377,7 +479,7 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.0.tgz#f821b32313f07ee570976d3f6238e8d2d66e0a8e" integrity sha512-Iwyp00CZsypoNJcpXCbq3G4tcDgphtlMwMVrMhhZ//XBkqjXF7LW6V511yk0+pBX3ZwwGnPea+pTKNJiqA7pUg== -"@babel/parser@^7.10.4", "@babel/parser@^7.11.0": +"@babel/parser@^7.10.4", "@babel/parser@^7.11.0", "@babel/parser@^7.11.4": version "7.11.4" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.11.4.tgz#6fa1a118b8b0d80d0267b719213dc947e88cc0ca" integrity sha512-MggwidiH+E9j5Sh8pbrX5sJvMcsqS5o+7iB42M9/k0CD63MjYbdP4nhSh7uB5wnv2/RVzTZFTxzF/kIa5mrCqA== @@ -867,7 +969,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-transform-typescript@^7.9.0": +"@babel/plugin-transform-typescript@^7.7.2", "@babel/plugin-transform-typescript@^7.9.0": version "7.11.0" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.11.0.tgz#2b4879676af37342ebb278216dd090ac67f13abb" integrity sha512-edJsNzTtvb3MaXQwj8403B7mZoGu9ElDJQZOKjGUnvilquxBA3IQoEIOvkX/1O8xfAsnHS/oQhe2w/IXrr+w0w== @@ -1052,7 +1154,7 @@ globals "^11.1.0" lodash "^4.17.13" -"@babel/traverse@^7.10.4": +"@babel/traverse@^7.10.4", "@babel/traverse@^7.11.0": version "7.11.0" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.11.0.tgz#9b996ce1b98f53f7c3e4175115605d56ed07dd24" integrity sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg== @@ -1103,6 +1205,14 @@ resolved "https://registry.yarnpkg.com/@csstools/normalize.css/-/normalize.css-10.1.0.tgz#f0950bba18819512d42f7197e56c518aa491cf18" integrity sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg== +"@dsherret/to-absolute-glob@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@dsherret/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1f6475dc8bd974cea07a2daf3864b317b1dd332c" + integrity sha1-H2R13IvZdM6gei2vOGSzF7HdMyw= + dependencies: + is-absolute "^1.0.0" + is-negated-glob "^1.0.0" + "@formatjs/intl-displaynames@^1.2.0": version "1.2.10" resolved "https://registry.yarnpkg.com/@formatjs/intl-displaynames/-/intl-displaynames-1.2.10.tgz#bb9625cca90b099978cd967c6a98aaf4e23fc878" @@ -1148,12 +1258,12 @@ resolved "https://registry.yarnpkg.com/@formatjs/intl-utils/-/intl-utils-2.3.0.tgz#2dc8c57044de0340eb53a7ba602e59abf80dc799" integrity sha512-KWk80UPIzPmUg+P0rKh6TqspRw0G6eux1PuJr+zz47ftMaZ9QDwbGzHZbtzWkl5hgayM/qrKRutllRC7D/vVXQ== -"@gooddata/api-client-bear@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/api-client-bear/-/api-client-bear-8.0.0-beta.52.tgz#125a4be8ebc6ebfdc01c7cb549638e391bac5573" - integrity sha512-S5LpnX+haM05Iee3JJzlU/BUW5Y27TupjUWEgmByRH+qUehkNQmx4slD5qO//6ELkeIzTtEwnA3WMMV9Cud8/g== +"@gooddata/api-client-bear@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/api-client-bear/-/api-client-bear-8.0.0-beta.54.tgz#905c8551709108a4f045ad4fd68427cd52889e47" + integrity sha512-66U7co5R9V59vHgodx5i8g934QD8UWi5IQ1hiARcKgsTdPlpVdKKYdBwNUtgTu0e/ZW90KaNoPb7bpWASLWRqw== dependencies: - "@gooddata/api-model-bear" "^8.0.0-beta.52" + "@gooddata/api-model-bear" "^8.0.0-beta.54" fetch-cookie "^0.7.0" isomorphic-fetch "^2.2.1" lodash "^4.17.19" @@ -1164,15 +1274,74 @@ tslib "^2.0.0" uuid "^3.3.3" -"@gooddata/api-model-bear@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/api-model-bear/-/api-model-bear-8.0.0-beta.52.tgz#1acb02abfa559930663716ee03513069bed6262e" - integrity sha512-gGAfIgGzAzrEXJSY0sBCsKvbzWNjLs4pMg7toNpvSjsD+u0teI/FuGOxvLDNVUZhGZPKQUReGvHna6QiLYpDJQ== +"@gooddata/api-client-bear@^8.0.0-beta.55": + version "8.0.0-beta.55" + resolved "https://registry.yarnpkg.com/@gooddata/api-client-bear/-/api-client-bear-8.0.0-beta.55.tgz#856257b6880cdf7055637256b1815e944f52c9da" + integrity sha512-HxNAYt2Ho0KiB9HhMU2a2hM3FcN8zQURG+DgYsA2qECiaQ0aPcme9SUWUwqZrBcEOO8RLbjrvcVqJW9qnPvU2A== + dependencies: + "@gooddata/api-model-bear" "^8.0.0-beta.55" + fetch-cookie "^0.7.0" + isomorphic-fetch "^2.2.1" + lodash "^4.17.19" + md5 "^2.2.1" + node-fetch "^1.7.3" + qs "^6.8.0" + ts-invariant "^0.4.4" + tslib "^2.0.0" + uuid "^3.3.3" + +"@gooddata/api-client-tiger@^8.0.0-beta.55": + version "8.0.0-beta.55" + resolved "https://registry.yarnpkg.com/@gooddata/api-client-tiger/-/api-client-tiger-8.0.0-beta.55.tgz#9e8daa626ca2da9c5ff6af50c5132aab4d085c0b" + integrity sha512-OEKj2ro/9JPb10VPGXK0Pf0cX81i/BQQDfhsXzJuRIF2ra5w2eLjBn5R5iAMJWKXlH+50Y9vxnyf4G85dZgHWw== + dependencies: + "@gooddata/sdk-backend-spi" "^8.0.0-beta.55" + "@gooddata/sdk-model" "^8.0.0-beta.55" + axios "^0.19.0" + lodash "^4.17.19" + qs "^6.8.0" + spark-md5 "^3.0.0" + tslib "^2.0.0" + +"@gooddata/api-model-bear@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/api-model-bear/-/api-model-bear-8.0.0-beta.54.tgz#dde8ef5dbdd4794e2b78913cf650ca329c24bce2" + integrity sha512-p3mEBjdcYWbI9YekQBXTE8nAP3IbQJQyb5Ol0Ln0DD2HFV6VWwf5vcLpU50yA0FnQ+MGd8lt48+GPFsAAeSh3w== + dependencies: + lodash "^4.17.19" + tslib "^2.0.0" + +"@gooddata/api-model-bear@^8.0.0-beta.55": + version "8.0.0-beta.55" + resolved "https://registry.yarnpkg.com/@gooddata/api-model-bear/-/api-model-bear-8.0.0-beta.55.tgz#36d98fb1d5c2618b4695009aa822bcdb7aaefdb7" + integrity sha512-kkZ3L01aK9etU37Z1dKj0l1Uwz6kvjuYvvaVfHsNAIq9MTmPArzwrJv3niEWeLa8Z+hST4DKSs/caHM8GTgZ/Q== dependencies: lodash "^4.17.19" tslib "^2.0.0" -"@gooddata/goodstrap@^68.18.1": +"@gooddata/catalog-export@^8.0.0-beta.55": + version "8.0.0-beta.55" + resolved "https://registry.yarnpkg.com/@gooddata/catalog-export/-/catalog-export-8.0.0-beta.55.tgz#b92eefcdd0c7cc286aa62e14d899a00ca154e2bc" + integrity sha512-kimbV5sOAjfnTzGNVAfxsxor7rEMV1gD+ZyNtA5Qw7E3tT8PFqDc7iPPK+k+OT5XF0k1eECCJ8NKgEIu7BBygg== + dependencies: + "@babel/core" "^7.7.2" + "@babel/plugin-transform-typescript" "^7.7.2" + "@gooddata/api-client-bear" "^8.0.0-beta.55" + "@gooddata/api-client-tiger" "^8.0.0-beta.55" + "@gooddata/api-model-bear" "^8.0.0-beta.55" + chalk "^2.4.2" + commander "^3.0.2" + inquirer "^6.5.2" + lodash "^4.17.19" + ora "^4.0.2" + p-map "^3.0.0" + prettier "~2.0.5" + prompt "^1.0.0" + strip-ansi "^5.2.0" + ts-morph "^4.2.0" + tslib "^2.0.0" + +"@gooddata/goodstrap@^68.20.1": version "68.20.1" resolved "https://registry.yarnpkg.com/@gooddata/goodstrap/-/goodstrap-68.20.1.tgz#b79c2ab3ac5dfd13964c45bd4b4ee87dff4a4b7f" integrity sha512-+7ak6NzXgaIhBrbSH3Ri15l+vFmARjcxtTKR8YI0sxcbf1zIVLQYZbNXb/hwF827IhHFMSMWVxsySBqmi1JpWw== @@ -1217,13 +1386,13 @@ resolved "https://registry.yarnpkg.com/@gooddata/numberjs/-/numberjs-3.2.4.tgz#4363751f4a589e9d3f12d185b38b954183dc1c48" integrity sha512-v4JO9dIQ9PIJCxjiBkUNCSa40tHGShFsSYBo6B+YuMxpZpslLClvC1tcXRuk7tc9OsCAorcKzcEgtHQTLPtH2A== -"@gooddata/sdk-backend-base@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/sdk-backend-base/-/sdk-backend-base-8.0.0-beta.52.tgz#17139ab9ad18e0398ca31647c1a9c1fa18a8cac2" - integrity sha512-yXGj4SAgepG+9sGj6G6Vf/egsE7drtzBBfo0ui1lVnWN9eTPpKtK20iFJtvtAQawidp2KTNSjpcwvi1e+oLlLA== +"@gooddata/sdk-backend-base@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-backend-base/-/sdk-backend-base-8.0.0-beta.54.tgz#b3bf087e136cbd21dd0fd3e31bc43dd97120c845" + integrity sha512-LUJ3JswWBvZu0NWrIOdUXfhWwcOMNQNYU7YQOyjbwUQCBuoF9dAPuuIIs+DN3dtMjdzhZVoHeyqYKB5caCYHTw== dependencies: - "@gooddata/sdk-backend-spi" "^8.0.0-beta.52" - "@gooddata/sdk-model" "^8.0.0-beta.52" + "@gooddata/sdk-backend-spi" "^8.0.0-beta.54" + "@gooddata/sdk-model" "^8.0.0-beta.54" json-stable-stringify "^1.0.1" lodash "^4.17.19" lru-cache "^4.1.5" @@ -1231,17 +1400,17 @@ ts-invariant "^0.4.4" tslib "^2.0.0" -"@gooddata/sdk-backend-bear@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/sdk-backend-bear/-/sdk-backend-bear-8.0.0-beta.52.tgz#69a2b877f635d2f0739f86ba3f5ddd73cb2558bd" - integrity sha512-cujW9lTKmRjMQ+hZgbx+fQpm6Tz9ehHjlNGuQx8ccliH7mBUKjzeBevwl8/A8a8McsNAmoVPV0lPOFP+MPOYiw== - dependencies: - "@gooddata/api-client-bear" "^8.0.0-beta.52" - "@gooddata/api-model-bear" "^8.0.0-beta.52" - "@gooddata/sdk-backend-base" "^8.0.0-beta.52" - "@gooddata/sdk-backend-spi" "^8.0.0-beta.52" - "@gooddata/sdk-embedding" "^8.0.0-beta.52" - "@gooddata/sdk-model" "^8.0.0-beta.52" +"@gooddata/sdk-backend-bear@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-backend-bear/-/sdk-backend-bear-8.0.0-beta.54.tgz#c7828add5f3f1014981f4d1ef85e063f3cfcdabf" + integrity sha512-br8SdkTzu/wLcX5Kjbsxkvdv7pB8UrjV9qpmEPTX6Hp1oYmojeofL/rOxHNgXDSPMmvgm756Y786G8e1JdImRQ== + dependencies: + "@gooddata/api-client-bear" "^8.0.0-beta.54" + "@gooddata/api-model-bear" "^8.0.0-beta.54" + "@gooddata/sdk-backend-base" "^8.0.0-beta.54" + "@gooddata/sdk-backend-spi" "^8.0.0-beta.54" + "@gooddata/sdk-embedding" "^8.0.0-beta.54" + "@gooddata/sdk-model" "^8.0.0-beta.54" http-status-codes "^1.3.0" json-stable-stringify "^1.0.1" lodash "^4.17.19" @@ -1250,30 +1419,53 @@ tslib "^2.0.0" uuid "^3.3.3" -"@gooddata/sdk-backend-spi@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/sdk-backend-spi/-/sdk-backend-spi-8.0.0-beta.52.tgz#59396822f6f98b286389045a3b64268d2c46f0db" - integrity sha512-JCuEJnvkBT+G9H8b4STeplLa2GYDGKUptesI1goG1ThSIxuMpzBafLcWaLeFeuF/prTfT6v/qnms1p7qEjK2RQ== +"@gooddata/sdk-backend-spi@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-backend-spi/-/sdk-backend-spi-8.0.0-beta.54.tgz#f872a5f7cfdbfdc941af66d008e1a8e5bc0403e3" + integrity sha512-6OvncD2nRwhfs1NkP+mcLToj/lFD2Shqk/+8+kwPASiEmko7Rsecx/C+U1kooe1Mj7ckcluAKy0yVGV+jZhSqg== + dependencies: + "@gooddata/sdk-model" "^8.0.0-beta.54" + lodash "^4.17.19" + spark-md5 "^3.0.0" + ts-invariant "^0.4.4" + tslib "^2.0.0" + +"@gooddata/sdk-backend-spi@^8.0.0-beta.55": + version "8.0.0-beta.55" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-backend-spi/-/sdk-backend-spi-8.0.0-beta.55.tgz#b573a923ab7984f8e7742e9e1f721635aefbe06c" + integrity sha512-zRTPo6DZmsDUDKzlfaUgq0EgCIsAtjWAk7sLw1/Uk7fIUtz8cxeG6NDSM64MKOnceBB1qCX/MoJaFxaVzB4feA== dependencies: - "@gooddata/sdk-model" "^8.0.0-beta.52" + "@gooddata/sdk-model" "^8.0.0-beta.55" lodash "^4.17.19" spark-md5 "^3.0.0" ts-invariant "^0.4.4" tslib "^2.0.0" -"@gooddata/sdk-embedding@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/sdk-embedding/-/sdk-embedding-8.0.0-beta.52.tgz#2be73b3bcff30215d0b1eef12c2b14055effc09c" - integrity sha512-qupDkFrQuM3T0BFiQsl9aQLqyO4uCPsSR24roZ64tUiaGFzXffRQcZB2mAEgOMCP71UBqX+MdX3h35MMD74K2g== +"@gooddata/sdk-embedding@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-embedding/-/sdk-embedding-8.0.0-beta.54.tgz#285da35c3c7b80e5f72ba0b8b2a67cdc9ce611ca" + integrity sha512-m+Am1vevcY5MXegs42NMIBc8CZ0dDzXkycI+2oj4CuJLcw9N4LRWj/wAguyPBsaBRMJP1YTuHbt7quDydEFjtQ== dependencies: - "@gooddata/api-model-bear" "^8.0.0-beta.52" + "@gooddata/api-model-bear" "^8.0.0-beta.54" lodash "^4.17.19" tslib "^2.0.0" -"@gooddata/sdk-model@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/sdk-model/-/sdk-model-8.0.0-beta.52.tgz#61ff2c5a39012a5bf2918f14314b23d235fc1ccf" - integrity sha512-/zaIY59kKcek/+m5+2iYtmknRjqUz/yWA/1XoNAfoz3LmhRGYHakI8QuqQqZ86ssGdH1NFMnG1yTm9hdCTIX9w== +"@gooddata/sdk-model@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-model/-/sdk-model-8.0.0-beta.54.tgz#cd4051644e8a643bf89c7e9c64724ba6066e86e8" + integrity sha512-6rJlJBdzBZp6v4CsaK3OOQKWDzdm8vqmTVu0AvhvlF3YTrlWC8wRgqBKyTUvxYqYnMcq6MqmFhtiDJBhF7kZkw== + dependencies: + json-stable-stringify "^1.0.1" + lodash "^4.17.19" + spark-md5 "^3.0.0" + stringify-object "^2.4.0" + ts-invariant "^0.4.4" + tslib "^2.0.0" + +"@gooddata/sdk-model@^8.0.0-beta.55": + version "8.0.0-beta.55" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-model/-/sdk-model-8.0.0-beta.55.tgz#a1cbe49fb52629948a5d1951c7efa9116adcc126" + integrity sha512-MgTOeEgkUsDAav46hkQZtq5zQXIPbiTGTwiV1s0gayccsJkFJw7JCABJWEe/au3OoayYOL5ElVi2R1QrP/OIeA== dependencies: json-stable-stringify "^1.0.1" lodash "^4.17.19" @@ -1282,18 +1474,18 @@ ts-invariant "^0.4.4" tslib "^2.0.0" -"@gooddata/sdk-ui-charts@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui-charts/-/sdk-ui-charts-8.0.0-beta.52.tgz#9d90a5ffa14e6160bc33ec76982703c5b5bcc063" - integrity sha512-84aLxi65zcEPartB0lm6GkmYhbI1wvM6GaJa8bjEywxs9cmvKj5ThYd2JHgEk+OWzqpQSnLzAa/gKU71jcr4FQ== +"@gooddata/sdk-ui-charts@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui-charts/-/sdk-ui-charts-8.0.0-beta.54.tgz#640766451a3c8504308a39b62909bb320d22237e" + integrity sha512-l+Qei95V2cCWFzvVOqn+0eyitcTVZQKJVl1oTcfVHlMBDEc6Yu65fstznNmh4Q9fkmH/zQJZHqByU28QLKlwGg== dependencies: - "@gooddata/goodstrap" "^68.18.1" + "@gooddata/goodstrap" "^68.20.1" "@gooddata/numberjs" "^3.2.4" - "@gooddata/sdk-backend-spi" "^8.0.0-beta.52" - "@gooddata/sdk-model" "^8.0.0-beta.52" - "@gooddata/sdk-ui" "^8.0.0-beta.52" - "@gooddata/sdk-ui-vis-commons" "^8.0.0-beta.52" - "@gooddata/util" "^8.0.0-beta.52" + "@gooddata/sdk-backend-spi" "^8.0.0-beta.54" + "@gooddata/sdk-model" "^8.0.0-beta.54" + "@gooddata/sdk-ui" "^8.0.0-beta.54" + "@gooddata/sdk-ui-vis-commons" "^8.0.0-beta.54" + "@gooddata/util" "^8.0.0-beta.54" classnames "^2.2.6" custom-event "^1.0.1" date-fns "^2.8.1" @@ -1306,16 +1498,108 @@ ts-invariant "^0.4.4" tslib "^2.0.0" -"@gooddata/sdk-ui-vis-commons@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui-vis-commons/-/sdk-ui-vis-commons-8.0.0-beta.52.tgz#e7767c869f3bb0e6967122673939878360c5a8ad" - integrity sha512-0++5z2wDLFtwIUDzSwPfcZiS+Seh+MaLibGm9FuPILLhCC9kVQkg4xhRsTZVMoBL0zxo7msJhe97pvwRW0K8RA== +"@gooddata/sdk-ui-ext@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui-ext/-/sdk-ui-ext-8.0.0-beta.54.tgz#5a4814f4dc07372f3aa285a97c0405f1661cb6c1" + integrity sha512-vZM/sIw4tSoNMZk8bqXny6em2p1CYGiOW3xdSycNwuDsiJe3R67iY1xSb9b+i5N/TWtqo6iAYtsVnOJa2Okd/w== dependencies: - "@gooddata/goodstrap" "^68.18.1" + "@formatjs/intl-pluralrules" "~1.3.7" + "@gooddata/goodstrap" "^68.20.1" "@gooddata/numberjs" "^3.2.4" - "@gooddata/sdk-backend-spi" "^8.0.0-beta.52" - "@gooddata/sdk-model" "^8.0.0-beta.52" - "@gooddata/sdk-ui" "^8.0.0-beta.52" + "@gooddata/sdk-backend-spi" "^8.0.0-beta.54" + "@gooddata/sdk-embedding" "^8.0.0-beta.54" + "@gooddata/sdk-model" "^8.0.0-beta.54" + "@gooddata/sdk-ui" "^8.0.0-beta.54" + "@gooddata/sdk-ui-charts" "^8.0.0-beta.54" + "@gooddata/sdk-ui-geo" "^8.0.0-beta.54" + "@gooddata/sdk-ui-pivot" "^8.0.0-beta.54" + "@gooddata/util" "^8.0.0-beta.54" + classnames "^2.2.6" + custom-event "^1.0.1" + fixed-data-table-2 "^0.8.21" + lodash "^4.17.19" + lru-cache "^4.1.5" + react-intl "^3.6.0" + react-measure "^2.3.0" + tslib "^2.0.0" + uuid "^3.3.3" + +"@gooddata/sdk-ui-filters@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui-filters/-/sdk-ui-filters-8.0.0-beta.54.tgz#63ce1d52f168d21d3052cef94ba9598e4abb0d64" + integrity sha512-ALOouZBf1S7UakZ8/R5EZL/5HAzGAaMWC/bPEjcbENSmXKJIVbPSn1v3JdwekDdlPLJBf6YRY1zyPFv/lRSHXA== + dependencies: + "@gooddata/goodstrap" "^68.20.1" + "@gooddata/numberjs" "^3.2.4" + "@gooddata/sdk-backend-spi" "^8.0.0-beta.54" + "@gooddata/sdk-model" "^8.0.0-beta.54" + "@gooddata/sdk-ui" "^8.0.0-beta.54" + "@gooddata/util" "^8.0.0-beta.54" + classnames "^2.2.6" + downshift "^3.4.7" + fixed-data-table-2 "^0.8.21" + hoist-non-react-statics "^3.3.0" + lodash "^4.17.19" + moment "^2.24.0" + react-day-picker "7.3.0" + react-intl "^3.6.0" + react-responsive "^8.0.1" + react-window "^1.8.5" + tslib "^2.0.0" + +"@gooddata/sdk-ui-geo@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui-geo/-/sdk-ui-geo-8.0.0-beta.54.tgz#fdc0b0da8f07855ad9ff2069e9331d477ddd38df" + integrity sha512-xpsR50+P++K0TOzhB5OK6Yrzmo/EQF9FRFnZMAiXCrrg2QPGQm/rtfE1gE8bu6x66SDnb7T2okkIQzd6RLoStw== + dependencies: + "@gooddata/goodstrap" "^68.20.1" + "@gooddata/numberjs" "^3.2.4" + "@gooddata/sdk-backend-spi" "^8.0.0-beta.54" + "@gooddata/sdk-model" "^8.0.0-beta.54" + "@gooddata/sdk-ui" "^8.0.0-beta.54" + "@gooddata/sdk-ui-vis-commons" "^8.0.0-beta.54" + classnames "^2.2.6" + custom-event "^1.0.1" + lodash "^4.17.19" + mapbox-gl "^1.9.1" + prop-types "^15.6.0" + react-intl "^3.6.0" + react-measure "^2.3.0" + ts-invariant "^0.4.4" + tslib "^2.0.0" + +"@gooddata/sdk-ui-pivot@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui-pivot/-/sdk-ui-pivot-8.0.0-beta.54.tgz#af5ecd280fd04309d24ee0e34a9d7ac02c097bf5" + integrity sha512-W7K0xCC+pPeXt4JrVIoVbkhhXOGG/rNoLMPkFqTn7k7DEbKXdio67o7RnA35sNN1r96VQO1nEQw65O0W2BaLUA== + dependencies: + "@ag-grid-community/all-modules" "22.1.1" + "@ag-grid-community/react" "22.1.2" + "@formatjs/intl-pluralrules" "~1.3.7" + "@gooddata/goodstrap" "^68.20.1" + "@gooddata/numberjs" "^3.2.4" + "@gooddata/sdk-backend-spi" "^8.0.0-beta.54" + "@gooddata/sdk-model" "^8.0.0-beta.54" + "@gooddata/sdk-ui" "^8.0.0-beta.54" + "@gooddata/sdk-ui-vis-commons" "^8.0.0-beta.54" + classnames "^2.2.6" + custom-event "^1.0.1" + fixed-data-table-2 "^0.8.21" + lodash "^4.17.19" + react-intl "^3.6.0" + ts-invariant "^0.4.4" + tslib "^2.0.0" + +"@gooddata/sdk-ui-vis-commons@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui-vis-commons/-/sdk-ui-vis-commons-8.0.0-beta.54.tgz#951ba7d47931ac7861556125ff7551a5c1a9a9be" + integrity sha512-kBRJWiCAP/OaWKr8MItZ1drYWzZjXiGLzxX9pqsHc8XhGUFYwSKYt1sGCaKxHUM91+DFZTYMI7wUUVBH3Uyu3A== + dependencies: + "@gooddata/goodstrap" "^68.20.1" + "@gooddata/numberjs" "^3.2.4" + "@gooddata/sdk-backend-spi" "^8.0.0-beta.54" + "@gooddata/sdk-model" "^8.0.0-beta.54" + "@gooddata/sdk-ui" "^8.0.0-beta.54" classnames "^2.2.6" lodash "^4.17.19" prop-types "^15.6.0" @@ -1323,17 +1607,17 @@ react-measure "^2.3.0" tslib "^2.0.0" -"@gooddata/sdk-ui@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui/-/sdk-ui-8.0.0-beta.52.tgz#4d78e94062249e4370bd2a90fd1a33650ca4f29f" - integrity sha512-b43tVdIjIxKRGvGWNmwMY8s8r7pg+fKDZdtHp+uKW/ypdRGAKLcesNg7KXhOBvcBMjbpKMaut0eH41IrSf/xhQ== +"@gooddata/sdk-ui@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/sdk-ui/-/sdk-ui-8.0.0-beta.54.tgz#7a827b61d33f0157fa825372e90d398c9cc0d07e" + integrity sha512-doxicjtFcCUdVtLqOQL3heSntmhStcumu+D8Bfc0rnbby8PZgMYpXU60XEo/6UghCeZwwZVQqvadpn+c1+nPIw== dependencies: "@formatjs/intl-pluralrules" "~1.3.7" - "@gooddata/goodstrap" "^68.18.1" + "@gooddata/goodstrap" "^68.20.1" "@gooddata/numberjs" "^3.2.4" - "@gooddata/sdk-backend-spi" "^8.0.0-beta.52" - "@gooddata/sdk-model" "^8.0.0-beta.52" - "@gooddata/util" "^8.0.0-beta.52" + "@gooddata/sdk-backend-spi" "^8.0.0-beta.54" + "@gooddata/sdk-model" "^8.0.0-beta.54" + "@gooddata/util" "^8.0.0-beta.54" custom-event "^1.0.1" hoist-non-react-statics "^3.3.0" http-status-codes "^1.3.0" @@ -1349,10 +1633,10 @@ dependencies: lodash "^4.17.11" -"@gooddata/util@^8.0.0-beta.52": - version "8.0.0-beta.52" - resolved "https://registry.yarnpkg.com/@gooddata/util/-/util-8.0.0-beta.52.tgz#f6669e16871c987f73602933a732629e59d57ff7" - integrity sha512-uTY48yl46Gm8+ATx82hYrEmD7VCC+Ki8tFXL0GE0fELKaK2unBobWki4HPDGFtVOqq2I2gQCA/UnE0YjZRk18w== +"@gooddata/util@^8.0.0-beta.54": + version "8.0.0-beta.54" + resolved "https://registry.yarnpkg.com/@gooddata/util/-/util-8.0.0-beta.54.tgz#62c7e1a976b56ac67ded50dc85807e85ddeb4875" + integrity sha512-fb8nUTWYH8PiSXZsgyJ8VEnXfF7MQ02kM0WTN9jeBxwe7ip1MkjThCosE9xHKTUcqU0VsXE2E0w8BF8h5MLSRA== dependencies: lodash "^4.17.19" tslib "^2.0.0" @@ -1558,6 +1842,56 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" +"@mapbox/geojson-rewind@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@mapbox/geojson-rewind/-/geojson-rewind-0.5.0.tgz#91f0ad56008c120caa19414b644d741249f4f560" + integrity sha512-73l/qJQgj/T/zO1JXVfuVvvKDgikD/7D/rHAD28S9BG1OTstgmftrmqfCx4U+zQAmtsB6HcDA3a7ymdnJZAQgg== + dependencies: + concat-stream "~2.0.0" + minimist "^1.2.5" + +"@mapbox/geojson-types@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@mapbox/geojson-types/-/geojson-types-1.0.2.tgz#9aecf642cb00eab1080a57c4f949a65b4a5846d6" + integrity sha512-e9EBqHHv3EORHrSfbR9DqecPNn+AmuAoQxV6aL8Xu30bJMJR1o8PZLZzpk1Wq7/NfCbuhmakHTPYRhoqLsXRnw== + +"@mapbox/jsonlint-lines-primitives@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz#ce56e539f83552b58d10d672ea4d6fc9adc7b234" + integrity sha1-zlblOfg1UrWNENZy6k1vya3HsjQ= + +"@mapbox/mapbox-gl-supported@^1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@mapbox/mapbox-gl-supported/-/mapbox-gl-supported-1.5.0.tgz#f60b6a55a5d8e5ee908347d2ce4250b15103dc8e" + integrity sha512-/PT1P6DNf7vjEEiPkVIRJkvibbqWtqnyGaBz3nfRdcxclNSnSdaLU5tfAgcD7I8Yt5i+L19s406YLl1koLnLbg== + +"@mapbox/point-geometry@0.1.0", "@mapbox/point-geometry@^0.1.0", "@mapbox/point-geometry@~0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz#8a83f9335c7860effa2eeeca254332aa0aeed8f2" + integrity sha1-ioP5M1x4YO/6Lu7KJUMyqgru2PI= + +"@mapbox/tiny-sdf@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@mapbox/tiny-sdf/-/tiny-sdf-1.1.1.tgz#16a20c470741bfe9191deb336f46e194da4a91ff" + integrity sha512-Ihn1nZcGIswJ5XGbgFAvVumOgWpvIjBX9jiRlIl46uQG9vJOF51ViBYHF95rEZupuyQbEmhLaDPLQlU7fUTsBg== + +"@mapbox/unitbezier@^0.0.0": + version "0.0.0" + resolved "https://registry.yarnpkg.com/@mapbox/unitbezier/-/unitbezier-0.0.0.tgz#15651bd553a67b8581fb398810c98ad86a34524e" + integrity sha1-FWUb1VOme4WB+zmIEMmK2Go0Uk4= + +"@mapbox/vector-tile@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz#d3a74c90402d06e89ec66de49ec817ff53409666" + integrity sha512-MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw== + dependencies: + "@mapbox/point-geometry" "~0.1.0" + +"@mapbox/whoots-js@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz#497c67a1cef50d1a2459ba60f315e448d2ad87fe" + integrity sha512-Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q== + "@mrmlnc/readdir-enhanced@^2.2.1": version "2.2.1" resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" @@ -1566,11 +1900,32 @@ call-me-maybe "^1.0.1" glob-to-regexp "^0.3.0" +"@nodelib/fs.scandir@2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" + integrity sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw== + dependencies: + "@nodelib/fs.stat" "2.0.3" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" + integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== + "@nodelib/fs.stat@^1.1.2": version "1.1.3" resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== +"@nodelib/fs.walk@^1.2.3": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" + integrity sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ== + dependencies: + "@nodelib/fs.scandir" "2.1.3" + fastq "^1.6.0" + "@sheerun/mutationobserver-shim@^0.3.2": version "0.3.3" resolved "https://registry.yarnpkg.com/@sheerun/mutationobserver-shim/-/mutationobserver-shim-0.3.3.tgz#5405ee8e444ed212db44e79351f0c70a582aae25" @@ -1844,7 +2199,7 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ== -"@types/minimatch@*": +"@types/minimatch@*", "@types/minimatch@^3.0.3": version "3.0.3" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== @@ -2240,7 +2595,7 @@ ansi-colors@^3.0.0: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== -ansi-escapes@^3.0.0: +ansi-escapes@^3.0.0, ansi-escapes@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== @@ -2361,6 +2716,11 @@ arr-union@^3.1.0: resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= +array-differ@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" + integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== + array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" @@ -2392,6 +2752,11 @@ array-union@^1.0.1: dependencies: array-uniq "^1.0.1" +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" @@ -2415,6 +2780,11 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= +arrify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" + integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== + asap@~2.0.3, asap@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" @@ -2488,6 +2858,16 @@ async@^2.6.2: dependencies: lodash "^4.17.14" +async@~0.9.0: + version "0.9.2" + resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d" + integrity sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0= + +async@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/async/-/async-1.0.0.tgz#f8fc04ca3a13784ade9e1641af98578cfbd647a9" + integrity sha1-+PwEyjoTeErenhZBr5hXjPvWR6k= + asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" @@ -2521,6 +2901,13 @@ aws4@^1.8.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.1.tgz#7e33d8f7d449b3f673cd72deb9abdc552dbe528e" integrity sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug== +axios@^0.19.0: + version "0.19.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.19.2.tgz#3ea36c5d8818d0d5f8a8a97a6d36b86cdc00cb27" + integrity sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA== + dependencies: + follow-redirects "1.5.10" + axobject-query@^2.0.2: version "2.1.2" resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.1.2.tgz#2bdffc0371e643e5f03ba99065d5179b9ca79799" @@ -2800,7 +3187,7 @@ braces@^2.3.1, braces@^2.3.2: split-string "^3.0.2" to-regex "^3.0.1" -braces@~3.0.2: +braces@^3.0.1, braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== @@ -3215,6 +3602,13 @@ clean-stack@^2.0.0: resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== +cli-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= + dependencies: + restore-cursor "^2.0.0" + cli-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" @@ -3222,6 +3616,11 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" +cli-spinners@^2.2.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.4.0.tgz#c6256db216b878cfba4720e719cec7cf72685d7f" + integrity sha512-sJAofoarcm76ZGpuooaO0eDy8saEy+YoZBLjC4h8srt4jeBnkYeOgqxgsJQTpyt2LjI5PTfLJHSL+41Yu4fEJA== + cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" @@ -3256,6 +3655,11 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -3270,6 +3674,11 @@ coa@^2.0.2: chalk "^2.4.1" q "^1.1.2" +code-block-writer@^10.0.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/code-block-writer/-/code-block-writer-10.1.0.tgz#54fc410ebef2af836d9c2314ac40af7d7b37eee9" + integrity sha512-RG9hpXtWFeUWhuUav1YuP/vGcyncW+t90yJLk9fNZs1De2OuHTHKAKThVCokt29PYq5RoJ0QSZaIZ+rvPO23hA== + collection-visit@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" @@ -3318,6 +3727,16 @@ color@^3.0.0: color-convert "^1.9.1" color-string "^1.5.2" +colors@1.0.x: + version "1.0.3" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" + integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= + +colors@^1.1.2: + version "1.4.0" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" + integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== + combined-stream@^1.0.6, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" @@ -3330,6 +3749,11 @@ commander@^2.11.0, commander@^2.20.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== +commander@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/commander/-/commander-3.0.2.tgz#6837c3fb677ad9933d1cfba42dd14d5117d6b39e" + integrity sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow== + commander@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" @@ -3377,6 +3801,11 @@ compression@^1.7.4: safe-buffer "5.1.2" vary "~1.1.2" +compute-scroll-into-view@^1.0.9: + version "1.0.14" + resolved "https://registry.yarnpkg.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.14.tgz#80e3ebb25d6aa89f42e533956cb4b16a04cfe759" + integrity sha512-mKDjINe3tc6hGelUMNDzuhorIUZ7kS7BwyY0r2wQd2HOH2tRuJykiC06iSEX8y1TuhNzvz4GcJnK16mM2J1NMQ== + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -3392,6 +3821,16 @@ concat-stream@^1.5.0: readable-stream "^2.2.2" typedarray "^0.0.6" +concat-stream@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.0.2" + typedarray "^0.0.6" + confusing-browser-globals@^1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz#72bc13b483c0276801681871d4898516f8f54fdd" @@ -3736,6 +4175,11 @@ css@^2.0.0, css@^2.2.3: source-map-resolve "^0.5.2" urix "^0.1.0" +csscolorparser@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/csscolorparser/-/csscolorparser-1.0.3.tgz#b34f391eea4da8f3e98231e2ccd8df9c041f171b" + integrity sha1-s085HupNqPPpgjHizNjfnAQfFxs= + cssdb@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-4.4.0.tgz#3bf2f2a68c10f5c6a08abd92378331ee803cddb0" @@ -3848,6 +4292,11 @@ custom-event@^1.0.1: resolved "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.1.tgz#5d02a46850adf1b4a317946a3928fccb5bfd0425" integrity sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU= +cycle@1.0.x: + version "1.0.3" + resolved "https://registry.yarnpkg.com/cycle/-/cycle-1.0.3.tgz#21e80b2be8580f98b468f379430662b046c34ad2" + integrity sha1-IegLK+hYD5i0aPN5QwZisEbDStI= + cyclist@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" @@ -3894,6 +4343,13 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.9: dependencies: ms "2.0.0" +debug@=3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" + debug@^3.0.0, debug@^3.1.1, debug@^3.2.5: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" @@ -3930,6 +4386,11 @@ deep-equal@^1.0.1: object-keys "^1.1.1" regexp.prototype.flags "^1.2.0" +deep-equal@~0.2.1: + version "0.2.2" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-0.2.2.tgz#84b745896f34c684e98f2ce0e42abaf43bba017d" + integrity sha1-hLdFiW80xoTpjyzg5Cq69Du6AX0= + deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" @@ -3943,6 +4404,13 @@ default-gateway@^4.2.0: execa "^1.0.0" ip-regex "^2.1.0" +defaults@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + dependencies: + clone "^1.0.2" + define-properties@^1.1.2, define-properties@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" @@ -4048,6 +4516,13 @@ dir-glob@2.0.0: arrify "^1.0.1" path-type "^3.0.0" +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + dns-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" @@ -4192,6 +4667,16 @@ dotenv@8.2.0: resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== +downshift@^3.4.7: + version "3.4.8" + resolved "https://registry.yarnpkg.com/downshift/-/downshift-3.4.8.tgz#06b7ad9e9c423a58e8a9049b2a00a5d19c7ef954" + integrity sha512-dZL3iNL/LbpHNzUQAaVq/eTD1ocnGKKjbAl/848Q0KEp6t81LJbS37w3f93oD6gqqAnjdgM7Use36qZSipHXBw== + dependencies: + "@babel/runtime" "^7.4.5" + compute-scroll-into-view "^1.0.9" + prop-types "^15.7.2" + react-is "^16.9.0" + duplexer@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" @@ -4207,6 +4692,11 @@ duplexify@^3.4.2, duplexify@^3.6.0: readable-stream "^2.0.0" stream-shift "^1.0.0" +earcut@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/earcut/-/earcut-2.2.2.tgz#41b0bc35f63e0fe80da7cddff28511e7e2e80d11" + integrity sha512-eZoZPPJcUHnfRZ0PjLvx2qBordSiO8ofC3vt+qACLM95u+4DovnbYNpQtJh0DNsWj8RnxrQytD4WA8gj5cRIaQ== + ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" @@ -4779,6 +5269,11 @@ extsprintf@^1.2.0: resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= +eyes@0.1.x: + version "0.1.8" + resolved "https://registry.yarnpkg.com/eyes/-/eyes-0.1.8.tgz#62cf120234c683785d902348a800ef3e0cc20bc0" + integrity sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A= + fast-deep-equal@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" @@ -4796,6 +5291,18 @@ fast-glob@^2.0.2: merge2 "^1.2.3" micromatch "^3.1.10" +fast-glob@^3.0.3: + version "3.2.4" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.4.tgz#d20aefbf99579383e7f3cc66529158c9b98554d3" + integrity sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.0" + merge2 "^1.3.0" + micromatch "^4.0.2" + picomatch "^2.2.1" + fast-json-stable-stringify@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" @@ -4806,6 +5313,13 @@ fast-levenshtein@~2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= +fastq@^1.6.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.8.0.tgz#550e1f9f59bbc65fe185cb6a9b4d95357107f481" + integrity sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q== + dependencies: + reusify "^1.0.4" + faye-websocket@^0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" @@ -4853,6 +5367,13 @@ figgy-pudding@^3.5.1: resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790" integrity sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w== +figures@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= + dependencies: + escape-string-regexp "^1.0.5" + figures@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" @@ -5007,6 +5528,13 @@ flush-write-stream@^1.0.0: inherits "^2.0.3" readable-stream "^2.3.6" +follow-redirects@1.5.10: + version "1.5.10" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a" + integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ== + dependencies: + debug "=3.1.0" + follow-redirects@^1.0.0: version "1.10.0" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.10.0.tgz#01f5263aee921c6a54fb91667f08f4155ce169eb" @@ -5166,6 +5694,11 @@ gensync@^1.0.0-beta.1: resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg== +geojson-vt@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/geojson-vt/-/geojson-vt-3.2.1.tgz#f8adb614d2c1d3f6ee7c4265cad4bbf3ad60c8b7" + integrity sha512-EvGQQi/zPrDA6zr6BnJD/YhwAkBP8nnJ9emh3EnHQKVMfg/MRVtPbMYdgVy/IaEmn4UfagD2a6fafPDL5hbtwg== + get-caller-file@^2.0.1: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" @@ -5200,6 +5733,11 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" +gl-matrix@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/gl-matrix/-/gl-matrix-3.3.0.tgz#232eef60b1c8b30a28cbbe75b2caf6c48fd6358b" + integrity sha512-COb7LDz+SXaHtl/h4LeaFcNdJdAQSDeVqjiIihSXNrkWObZLhDI4hIkZC11Aeqp7bcE72clzB0BnDXr2SmslRA== + glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" @@ -5215,6 +5753,13 @@ glob-parent@^5.0.0, glob-parent@~5.1.0: dependencies: is-glob "^4.0.1" +glob-parent@^5.1.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" + integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== + dependencies: + is-glob "^4.0.1" + glob-to-regexp@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" @@ -5273,6 +5818,20 @@ globby@8.0.2: pify "^3.0.0" slash "^1.0.0" +globby@^10.0.1: + version "10.0.2" + resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.2.tgz#277593e745acaa4646c3ab411289ec47a0392543" + integrity sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg== + dependencies: + "@types/glob" "^7.1.1" + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.0.3" + glob "^7.1.3" + ignore "^5.1.1" + merge2 "^1.2.3" + slash "^3.0.0" + globby@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" @@ -5289,6 +5848,11 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6 resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== +grid-index@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/grid-index/-/grid-index-1.1.0.tgz#97f8221edec1026c8377b86446a7c71e79522ea7" + integrity sha512-HZRwumpOGUrHyxO5bqKZL0B0GlUpwtCAzZ42sgxUPniu33R1LSFH5yrIcBCHjkctCAh3mtWKcKd9J4vDDdeVHA== + growly@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" @@ -5421,6 +5985,11 @@ highcharts@7.1.1: resolved "https://registry.yarnpkg.com/highcharts/-/highcharts-7.1.1.tgz#8c4433e39d5e7dbdc064685d9548181a35e12c19" integrity sha512-BQtWDQmH4AweQNFLGJCHBQwv9tj9kyp35bp2FFpmNBm7LOecCQdLjvZNgUKvCsKzBzJJIywcwWu4QEcAkPGCjg== +highcharts@^6.0.4: + version "6.2.0" + resolved "https://registry.yarnpkg.com/highcharts/-/highcharts-6.2.0.tgz#2a6d04652eb43c66f462ca7e2d2808f1f2782b61" + integrity sha512-A4E89MA+kto8giic7zyLU6ZxfXnVeCUlKOyzFsah3+n4BROx4bgonl92KIBtwLud/mIWir8ahqhuhe2by9LakQ== + hmac-drbg@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -5606,6 +6175,11 @@ hyphenate-style-name@^1.0.0: resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz#691879af8e220aea5750e8827db4ef62a54e361d" integrity sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ== +i@0.3.x: + version "0.3.6" + resolved "https://registry.yarnpkg.com/i/-/i-0.3.6.tgz#d96c92732076f072711b6b10fd7d4f65ad8ee23d" + integrity sha1-2WyScyB28HJxG2sQ/X1PZa2O4j0= + iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -5634,7 +6208,7 @@ identity-obj-proxy@3.0.0: dependencies: harmony-reflect "^1.4.6" -ieee754@^1.1.4: +ieee754@^1.1.12, ieee754@^1.1.4: version "1.1.13" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== @@ -5654,6 +6228,11 @@ ignore@^4.0.6: resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== +ignore@^5.1.1: + version "5.1.8" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + immer@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/immer/-/immer-1.10.0.tgz#bad67605ba9c810275d91e1c2a47d4582e98286d" @@ -5769,6 +6348,25 @@ inquirer@7.0.4: strip-ansi "^5.1.0" through "^2.3.6" +inquirer@^6.5.2: + version "6.5.2" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" + integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== + dependencies: + ansi-escapes "^3.2.0" + chalk "^2.4.2" + cli-cursor "^2.1.0" + cli-width "^2.0.0" + external-editor "^3.0.3" + figures "^2.0.0" + lodash "^4.17.12" + mute-stream "0.0.7" + run-async "^2.2.0" + rxjs "^6.4.0" + string-width "^2.1.0" + strip-ansi "^5.1.0" + through "^2.3.6" + inquirer@^7.0.0: version "7.1.0" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.1.0.tgz#1298a01859883e17c7264b82870ae1034f92dd29" @@ -5857,6 +6455,14 @@ is-absolute-url@^3.0.3: resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== +is-absolute@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576" + integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== + dependencies: + is-relative "^1.0.0" + is-windows "^1.0.1" + is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" @@ -6022,6 +6628,16 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" +is-interactive@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" + integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== + +is-negated-glob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" + integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= + is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -6092,6 +6708,13 @@ is-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= +is-relative@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d" + integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== + dependencies: + is-unc-path "^1.0.0" + is-resolvable@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" @@ -6131,7 +6754,14 @@ is-typedarray@~1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= -is-windows@^1.0.2: +is-unc-path@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d" + integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== + dependencies: + unc-path-regex "^0.1.2" + +is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== @@ -6176,7 +6806,7 @@ isomorphic-fetch@^2.1.1, isomorphic-fetch@^2.2.1: node-fetch "^1.0.1" whatwg-fetch ">=0.10.0" -isstream@~0.1.2: +isstream@0.1.x, isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= @@ -6796,6 +7426,11 @@ jsx-ast-utils@^2.2.1, jsx-ast-utils@^2.2.3: array-includes "^3.0.3" object.assign "^4.1.0" +kdbush@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/kdbush/-/kdbush-3.0.0.tgz#f8484794d47004cc2d85ed3a79353dbe0abc2bf0" + integrity sha512-hRkd6/XW4HTsA9vjVpY9tuXJYLSlelnkTmVFu4M9/7MIYQtFcHpbugAU7UbOfjOiVSVYl2fqgBuJ32JUmRo5Ew== + kefir@^3.7.1: version "3.8.7" resolved "https://registry.yarnpkg.com/kefir/-/kefir-3.8.7.tgz#8fa8ffa3620c6c3713838c33d92af4d976ccfce8" @@ -7004,11 +7639,18 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== -lodash@^4.17.19: +lodash@^4.17.12, lodash@^4.17.19: version "4.17.20" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== +log-symbols@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4" + integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ== + dependencies: + chalk "^2.4.2" + loglevel@^1.6.8: version "1.6.8" resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.8.tgz#8a25fb75d092230ecd4457270d80b54e28011171" @@ -7082,6 +7724,35 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" +mapbox-gl@^1.9.1: + version "1.12.0" + resolved "https://registry.yarnpkg.com/mapbox-gl/-/mapbox-gl-1.12.0.tgz#7d1c73b1153d7ee219d30d80728d7df079bc7c05" + integrity sha512-B3URR4qY9R/Bx+DKqP8qmGCai8IOZYMSZF7ZSvcCZaYTaOYhQQi8ErTEDZtFMOR0ZPj7HFWOkkhl5SqvDfpJpA== + dependencies: + "@mapbox/geojson-rewind" "^0.5.0" + "@mapbox/geojson-types" "^1.0.2" + "@mapbox/jsonlint-lines-primitives" "^2.0.2" + "@mapbox/mapbox-gl-supported" "^1.5.0" + "@mapbox/point-geometry" "^0.1.0" + "@mapbox/tiny-sdf" "^1.1.1" + "@mapbox/unitbezier" "^0.0.0" + "@mapbox/vector-tile" "^1.3.1" + "@mapbox/whoots-js" "^3.1.0" + csscolorparser "~1.0.3" + earcut "^2.2.2" + geojson-vt "^3.2.1" + gl-matrix "^3.2.1" + grid-index "^1.1.0" + minimist "^1.2.5" + murmurhash-js "^1.0.0" + pbf "^3.2.1" + potpack "^1.0.1" + quickselect "^2.0.0" + rw "^1.3.3" + supercluster "^7.1.0" + tinyqueue "^2.0.3" + vt-pbf "^3.1.1" + matchmediaquery@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/matchmediaquery/-/matchmediaquery-0.2.1.tgz#223c7005793de03e47ce92b13285a72c44ada2cf" @@ -7089,6 +7760,13 @@ matchmediaquery@^0.2.1: dependencies: css-mediaquery "^0.1.2" +matchmediaquery@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/matchmediaquery/-/matchmediaquery-0.3.1.tgz#8247edc47e499ebb7c58f62a9ff9ccf5b815c6d7" + integrity sha512-Hlk20WQHRIm9EE9luN1kjRjYXAQToHOIAHPJn9buxBwuhfTHoKUcX+lXBbxc85DVQfXYbEQ4HcwQdd128E3qHQ== + dependencies: + css-mediaquery "^0.1.2" + md5.js@^1.3.4: version "1.3.5" resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" @@ -7117,6 +7795,11 @@ media-typer@0.3.0: resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= +"memoize-one@>=3.1.1 <6": + version "5.1.1" + resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.1.1.tgz#047b6e3199b508eaec03504de71229b8eb1d75c0" + integrity sha512-HKeeBpWvqiVJD57ZUAsJNm71eHTykffzcLZVYWiVfQeI1rJtuEaS7hQiEpWfVVk18donPwJEcFKIkCmPJNOhHA== + memory-fs@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" @@ -7157,6 +7840,11 @@ merge2@^1.2.3: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.3.0.tgz#5b366ee83b2f1582c48f87e47cf1a9352103ca81" integrity sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw== +merge2@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" @@ -7186,6 +7874,14 @@ micromatch@^3.1.10, micromatch@^3.1.4: snapdragon "^0.8.1" to-regex "^3.0.2" +micromatch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" + integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== + dependencies: + braces "^3.0.1" + picomatch "^2.0.5" + miller-rabin@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" @@ -7216,6 +7912,11 @@ mime@^2.4.4: resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz#bd7b91135fc6b01cde3e9bae33d659b63d8857e5" integrity sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA== +mimic-fn@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" + integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== + mimic-fn@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" @@ -7330,6 +8031,13 @@ mkdirp@0.5.1: dependencies: minimist "0.0.8" +mkdirp@0.x.x, mkdirp@^0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + dependencies: + minimist "^1.2.5" + mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: version "0.5.3" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.3.tgz#5a514b7179259287952881e94410ec5465659f8c" @@ -7337,13 +8045,6 @@ mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: dependencies: minimist "^1.2.5" -mkdirp@^0.5.5: - version "0.5.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" - integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== - dependencies: - minimist "^1.2.5" - moment-timezone@^0.5.23: version "0.5.31" resolved "https://registry.yarnpkg.com/moment-timezone/-/moment-timezone-0.5.31.tgz#9c40d8c5026f0c7ab46eda3d63e49c155148de05" @@ -7351,7 +8052,7 @@ moment-timezone@^0.5.23: dependencies: moment ">= 2.9.0" -"moment@>= 2.9.0", moment@^2.23.0: +"moment@>= 2.9.0", moment@^2.23.0, moment@^2.24.0: version "2.27.0" resolved "https://registry.yarnpkg.com/moment/-/moment-2.27.0.tgz#8bff4e3e26a236220dfe3e36de756b6ebaa0105d" integrity sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ== @@ -7396,7 +8097,28 @@ multicast-dns@^6.0.1: dns-packet "^1.3.1" thunky "^1.0.2" -mute-stream@0.0.8: +multimatch@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-4.0.0.tgz#8c3c0f6e3e8449ada0af3dd29efb491a375191b3" + integrity sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ== + dependencies: + "@types/minimatch" "^3.0.3" + array-differ "^3.0.0" + array-union "^2.1.0" + arrify "^2.0.1" + minimatch "^3.0.4" + +murmurhash-js@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/murmurhash-js/-/murmurhash-js-1.0.0.tgz#b06278e21fc6c37fa5313732b0412bcb6ae15f51" + integrity sha1-sGJ44h/Gw3+lMTcysEEry2rhX1E= + +mute-stream@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" + integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= + +mute-stream@0.0.8, mute-stream@~0.0.4: version "0.0.8" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== @@ -7428,6 +8150,11 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= +ncp@1.0.x: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ncp/-/ncp-1.0.1.tgz#d15367e5cb87432ba117d2bf80fdf45aecfb4246" + integrity sha1-0VNn5cuHQyuhF9K/gP30Wuz7QkY= + negotiator@0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" @@ -7722,6 +8449,13 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" +onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= + dependencies: + mimic-fn "^1.0.0" + onetime@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" @@ -7764,6 +8498,20 @@ optionator@^0.8.1, optionator@^0.8.3: type-check "~0.3.2" word-wrap "~1.2.3" +ora@^4.0.2: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ora/-/ora-4.1.1.tgz#566cc0348a15c36f5f0e979612842e02ba9dddbc" + integrity sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A== + dependencies: + chalk "^3.0.0" + cli-cursor "^3.1.0" + cli-spinners "^2.2.0" + is-interactive "^1.0.0" + log-symbols "^3.0.0" + mute-stream "0.0.8" + strip-ansi "^6.0.0" + wcwidth "^1.0.1" + original@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" @@ -8039,6 +8787,14 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +pbf@^3.0.5, pbf@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/pbf/-/pbf-3.2.1.tgz#b4c1b9e72af966cd82c6531691115cc0409ffe2a" + integrity sha512-ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ== + dependencies: + ieee754 "^1.1.12" + resolve-protobuf-schema "^2.1.0" + pbkdf2@^3.0.3: version "3.0.17" resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" @@ -8060,6 +8816,11 @@ picomatch@^2.0.4, picomatch@^2.0.7: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.1.tgz#21bac888b6ed8601f831ce7816e335bc779f0a4a" integrity sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA== +picomatch@^2.0.5, picomatch@^2.2.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" + integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== + pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -8129,6 +8890,16 @@ pkg-up@3.1.0, pkg-up@^3.1.0: dependencies: find-up "^3.0.0" +pkginfo@0.3.x: + version "0.3.1" + resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.3.1.tgz#5b29f6a81f70717142e09e765bbeab97b4f81e21" + integrity sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE= + +pkginfo@0.x.x: + version "0.4.1" + resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.1.tgz#b5418ef0439de5425fc4995042dced14fb2a84ff" + integrity sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8= + pn@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" @@ -8816,6 +9587,11 @@ postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, po source-map "^0.6.1" supports-color "^6.1.0" +potpack@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/potpack/-/potpack-1.0.1.tgz#d1b1afd89e4c8f7762865ec30bd112ab767e2ebf" + integrity sha512-15vItUAbViaYrmaB/Pbw7z6qX2xENbFSTA7Ii4tgbPtasxm5v6ryKhKtL91tpWovDJzTiZqdwzhcFBCwiMVdVw== + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" @@ -8826,6 +9602,11 @@ prepend-http@^1.0.0: resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= +prettier@~2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.5.tgz#d6d56282455243f2f92cc1716692c08aa31522d4" + integrity sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg== + pretty-bytes@^5.1.0: version "5.3.0" resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.3.0.tgz#f2849e27db79fb4d6cfe24764fc4134f165989f2" @@ -8908,6 +9689,18 @@ promise@^8.0.3: dependencies: asap "~2.0.6" +prompt@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/prompt/-/prompt-1.0.0.tgz#8e57123c396ab988897fb327fd3aedc3e735e4fe" + integrity sha1-jlcSPDlquYiJf7Mn/Trtw+c15P4= + dependencies: + colors "^1.1.2" + pkginfo "0.x.x" + read "1.0.x" + revalidator "0.1.x" + utile "0.3.x" + winston "2.1.x" + prompts@^2.0.1: version "2.3.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.3.2.tgz#480572d89ecf39566d2bd3fe2c9fccb7c4c0b068" @@ -8925,6 +9718,11 @@ prop-types@15.7.2, prop-types@^15.5.6, prop-types@^15.5.7, prop-types@^15.5.8, p object-assign "^4.1.1" react-is "^16.8.1" +protocol-buffers-schema@^3.3.1: + version "3.4.0" + resolved "https://registry.yarnpkg.com/protocol-buffers-schema/-/protocol-buffers-schema-3.4.0.tgz#2f0ea31ca96627d680bf2fefae7ebfa2b6453eae" + integrity sha512-G/2kcamPF2S49W5yaMGdIpkG6+5wZF0fzBteLKgEHjbNzqjZQ85aAs1iJGto31EJaSTkNvHs5IXuHSaTLWBAiA== + proxy-addr@~2.0.5: version "2.0.6" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz#fdc2336505447d3f2f2c638ed272caf614bbb2bf" @@ -9048,6 +9846,11 @@ querystringify@^2.1.1: resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.1.tgz#60e5a5fd64a7f8bfa4d2ab2ed6fdf4c85bad154e" integrity sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA== +quickselect@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/quickselect/-/quickselect-2.0.0.tgz#f19680a486a5eefb581303e023e98faaf25dd018" + integrity sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw== + raf@^3.4.1: version "3.4.1" resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.1.tgz#0742e99a4a6552f445d73e3ee0328af0ff1ede39" @@ -9104,6 +9907,13 @@ react-day-picker@7.1.10: dependencies: prop-types "^15.6.1" +react-day-picker@7.3.0: + version "7.3.0" + resolved "https://registry.yarnpkg.com/react-day-picker/-/react-day-picker-7.3.0.tgz#59b6d4e19d274650c79dcf49fbcce2637313467d" + integrity sha512-t2kz0Zy4P5U4qwU5YhsBq2QGmypP8L/u+89TSnuD0h4dYKSEDQArFPWfin9gv8erV1ciR1Wzr485TMaYnI7FTw== + dependencies: + prop-types "^15.6.2" + react-dev-utils@^10.2.1: version "10.2.1" resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-10.2.1.tgz#f6de325ae25fa4d546d09df4bb1befdc6dd19c19" @@ -9157,6 +9967,13 @@ react-error-overlay@^6.0.7: resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.7.tgz#1dcfb459ab671d53f660a991513cb2f0a0553108" integrity sha512-TAv1KJFh3RhqxNvhzxj6LeT5NWklP6rDr2a0jaTfsZ5wSZWHOGeqQyejUp3xxLfPt2UpyJEcVQB/zyPcmonNFA== +react-highcharts@^16.1.0: + version "16.1.0" + resolved "https://registry.yarnpkg.com/react-highcharts/-/react-highcharts-16.1.0.tgz#aa2d451171197462e07fa8652a42bac43da6068a" + integrity sha512-CHpCSMN96lXKeTIpx8UJPsUgeNeJqh81NN6cbzraiHQBiQz2mzXa5aaIWYbMEQ2NHhAEWU5uj5DPhZY1f1Rq+A== + dependencies: + highcharts "^6.0.4" + react-intl@^3.6.0: version "3.12.1" resolved "https://registry.yarnpkg.com/react-intl/-/react-intl-3.12.1.tgz#e9a783ea20302e9da25e4eda59e5593a43d2ec80" @@ -9175,7 +9992,7 @@ react-intl@^3.6.0: intl-messageformat-parser "^3.6.4" shallow-equal "^1.2.1" -react-is@^16.12.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4: +react-is@^16.12.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.9.0: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -9211,6 +10028,16 @@ react-responsive@^3.0.0: matchmediaquery "^0.2.1" prop-types "^15.5.7" +react-responsive@^8.0.1: + version "8.1.0" + resolved "https://registry.yarnpkg.com/react-responsive/-/react-responsive-8.1.0.tgz#afcc2293c46a37b1e7926ff7fef66bcb147e7cba" + integrity sha512-U8Nv2/ZWACIw/fAE9XNPbc2Xo33X5q1bcCASc2SufvJ9ifB+o/rokfogfznSVcvS22hN1rafGi0uZD6GiVFEHw== + dependencies: + hyphenate-style-name "^1.0.0" + matchmediaquery "^0.3.0" + prop-types "^15.6.1" + shallow-equal "^1.1.0" + react-scripts@3.4.3: version "3.4.3" resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-3.4.3.tgz#21de5eb93de41ee92cd0b85b0e1298d0bb2e6c51" @@ -9297,6 +10124,14 @@ react-transition-group@^1.2.1: prop-types "^15.5.6" warning "^3.0.0" +react-window@^1.8.5: + version "1.8.5" + resolved "https://registry.yarnpkg.com/react-window/-/react-window-1.8.5.tgz#a56b39307e79979721021f5d06a67742ecca52d1" + integrity sha512-HeTwlNa37AFa8MDZFZOKcNEkuF2YflA0hpGPiTT9vR7OawEt+GZbfM6wqkBahD3D3pUjIabQYzsnY/BSJbgq6Q== + dependencies: + "@babel/runtime" "^7.0.0" + memoize-one ">=3.1.1 <6" + react@^16.13.1: version "16.13.1" resolved "https://registry.yarnpkg.com/react/-/react-16.13.1.tgz#2e818822f1a9743122c063d6410d85c1e3afe48e" @@ -9340,6 +10175,13 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" +read@1.0.x: + version "1.0.7" + resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" + integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ= + dependencies: + mute-stream "~0.0.4" + "readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" @@ -9353,7 +10195,7 @@ read-pkg@^3.0.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.6, readable-stream@^3.1.1: +readable-stream@^3.0.2, readable-stream@^3.0.6, readable-stream@^3.1.1: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -9595,6 +10437,13 @@ resolve-from@^4.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== +resolve-protobuf-schema@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz#9ca9a9e69cf192bbdaf1006ec1973948aa4a3758" + integrity sha512-kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ== + dependencies: + protocol-buffers-schema "^3.3.1" + resolve-url-loader@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-3.1.1.tgz#28931895fa1eab9be0647d3b2958c100ae3c0bf0" @@ -9635,6 +10484,14 @@ resolve@^1.10.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.15.1, resolve@^1.3 dependencies: path-parse "^1.0.6" +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= + dependencies: + onetime "^2.0.0" + signal-exit "^3.0.2" + restore-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" @@ -9653,6 +10510,16 @@ retry@^0.12.0: resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +revalidator@0.1.x: + version "0.1.8" + resolved "https://registry.yarnpkg.com/revalidator/-/revalidator-0.1.8.tgz#fece61bfa0c1b52a206bd6b18198184bdd523a3b" + integrity sha1-/s5hv6DBtSoga9axgZgYS91SOjs= + rework-visit@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/rework-visit/-/rework-visit-1.0.0.tgz#9945b2803f219e2f7aca00adb8bc9f640f842c9a" @@ -9683,7 +10550,7 @@ rimraf@2.6.3: dependencies: glob "^7.1.3" -rimraf@^2.5.4, rimraf@^2.6.3, rimraf@^2.7.1: +rimraf@2.x.x, rimraf@^2.5.4, rimraf@^2.6.3, rimraf@^2.7.1: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== @@ -9710,6 +10577,11 @@ run-async@^2.2.0, run-async@^2.4.0: dependencies: is-promise "^2.1.0" +run-parallel@^1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" + integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== + run-queue@^1.0.0, run-queue@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" @@ -9717,6 +10589,11 @@ run-queue@^1.0.0, run-queue@^1.0.3: dependencies: aproba "^1.1.1" +rw@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz#3f862dfa91ab766b14885ef4d01124bfda074fb4" + integrity sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q= + rxjs@^5.5.6: version "5.5.12" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.12.tgz#6fa61b8a77c3d793dbaf270bee2f43f652d741cc" @@ -9724,6 +10601,13 @@ rxjs@^5.5.6: dependencies: symbol-observable "1.0.1" +rxjs@^6.4.0: + version "6.6.2" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.2.tgz#8096a7ac03f2cc4fe5860ef6e572810d9e01c0d2" + integrity sha512-BHdBMVoWC2sL26w//BCu3YzKT4s2jip/WhwsGEDmeKYBhKDZeYezVUnHatYB7L85v5xs0BAQmg6BEYJEKxBabg== + dependencies: + tslib "^1.9.0" + rxjs@^6.5.3: version "6.5.4" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.4.tgz#e0777fe0d184cec7872df147f303572d414e211c" @@ -9966,7 +10850,7 @@ shallow-clone@^3.0.0: dependencies: kind-of "^6.0.2" -shallow-equal@^1.2.1: +shallow-equal@^1.1.0, shallow-equal@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/shallow-equal/-/shallow-equal-1.2.1.tgz#4c16abfa56043aa20d050324efa68940b0da79da" integrity sha512-S4vJDjHHMBaiZuT9NPb616CSmLf618jawtv3sufLl6ivK8WocjAo58cXwbRV1cgqxH0Qbv+iUt6m05eqEa2IRA== @@ -10257,6 +11141,11 @@ stable@^0.1.8: resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== +stack-trace@0.0.x: + version "0.0.10" + resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" + integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= + stack-utils@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.2.tgz#33eba3897788558bebfc2db059dc158ec36cebb8" @@ -10333,6 +11222,14 @@ string-length@^3.1.0: astral-regex "^1.0.0" strip-ansi "^5.2.0" +string-width@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + string-width@^3.0.0, string-width@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" @@ -10485,6 +11382,13 @@ stylehacks@^4.0.0: postcss "^7.0.0" postcss-selector-parser "^3.0.0" +supercluster@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/supercluster/-/supercluster-7.1.0.tgz#f0a457426ec0ab95d69c5f03b51e049774b94479" + integrity sha512-LDasImUAFMhTqhK+cUXfy9C2KTUqJ3gucLjmNLNFmKWOnDUBxLFLH9oKuXOTCLveecmxh8fbk8kgh6Q0gsfe2w== + dependencies: + kdbush "^3.0.0" + supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" @@ -10663,6 +11567,11 @@ tinycolor2@^1.4.1: resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8" integrity sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g= +tinyqueue@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/tinyqueue/-/tinyqueue-2.0.3.tgz#64d8492ebf39e7801d7bd34062e29b45b2035f08" + integrity sha512-ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA== + tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -10744,6 +11653,21 @@ ts-invariant@^0.4.4: dependencies: tslib "^1.9.3" +ts-morph@^4.2.0: + version "4.3.3" + resolved "https://registry.yarnpkg.com/ts-morph/-/ts-morph-4.3.3.tgz#16e61ecabc7ee3ef800ea00c9b95552942e66706" + integrity sha512-yauxRJM4Vo+KvpJFgL4Mp9PtFjwZVrt54eP3RkLIXnaaAY5TGVHTLqN2OnLGwf6YjyqkDLAKprZVOUTvVEz6ZQ== + dependencies: + "@dsherret/to-absolute-glob" "^2.0.2" + chalk "^2.4.2" + code-block-writer "^10.0.0" + fs-extra "^8.1.0" + glob-parent "^5.1.0" + globby "^10.0.1" + is-negated-glob "^1.0.0" + multimatch "^4.0.0" + typescript "3.0.1 - 3.6.4" + ts-pnp@1.1.6, ts-pnp@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.6.tgz#389a24396d425a0d3162e96d2b4638900fdc289a" @@ -10828,11 +11752,21 @@ typedarray@^0.0.6: resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= +"typescript@3.0.1 - 3.6.4": + version "3.6.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.6.4.tgz#b18752bb3792bc1a0281335f7f6ebf1bbfc5b91d" + integrity sha512-unoCll1+l+YK4i4F8f22TaNVPRHcD9PA3yCuZ8g5e0qGqlVlJ/8FSateOLLSagn+Yg5+ZwuPkL8LFUc0Jcvksg== + ua-parser-js@^0.7.18: version "0.7.21" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.21.tgz#853cf9ce93f642f67174273cc34565ae6f308777" integrity sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ== +unc-path-regex@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" + integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= + unicode-canonical-property-names-ecmascript@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" @@ -11002,6 +11936,18 @@ utila@^0.4.0, utila@~0.4: resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= +utile@0.3.x: + version "0.3.0" + resolved "https://registry.yarnpkg.com/utile/-/utile-0.3.0.tgz#1352c340eb820e4d8ddba039a4fbfaa32ed4ef3a" + integrity sha1-E1LDQOuCDk2N26A5pPv6oy7U7zo= + dependencies: + async "~0.9.0" + deep-equal "~0.2.1" + i "0.3.x" + mkdirp "0.x.x" + ncp "1.0.x" + rimraf "2.x.x" + utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" @@ -11049,6 +11995,15 @@ vm-browserify@^1.0.1: resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== +vt-pbf@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/vt-pbf/-/vt-pbf-3.1.1.tgz#b0f627e39a10ce91d943b898ed2363d21899fb82" + integrity sha512-pHjWdrIoxurpmTcbfBWXaPwSmtPAHS105253P1qyEfSTV2HJddqjM+kIHquaT/L6lVJIk9ltTGc0IxR/G47hYA== + dependencies: + "@mapbox/point-geometry" "0.1.0" + "@mapbox/vector-tile" "^1.3.1" + pbf "^3.0.5" + w3c-hr-time@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" @@ -11100,6 +12055,13 @@ wbuf@^1.1.0, wbuf@^1.7.3: dependencies: minimalistic-assert "^1.0.0" +wcwidth@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= + dependencies: + defaults "^1.0.3" + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" @@ -11290,6 +12252,19 @@ which@^2.0.1: dependencies: isexe "^2.0.0" +winston@2.1.x: + version "2.1.1" + resolved "https://registry.yarnpkg.com/winston/-/winston-2.1.1.tgz#3c9349d196207fd1bdff9d4bc43ef72510e3a12e" + integrity sha1-PJNJ0ZYgf9G9/51LxD73JRDjoS4= + dependencies: + async "~1.0.0" + colors "1.0.x" + cycle "1.0.x" + eyes "0.1.x" + isstream "0.1.x" + pkginfo "0.3.x" + stack-trace "0.0.x" + word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"