@nova-ui/dashboards
Version:
Nova Dashboards is a framework designed to provide feature developers with a common solution for presenting data coming from various sources within a single view, as well as a set of predefined widget visualizations that are 100% configuration-driven and
61 lines • 11.8 kB
JavaScript
// © 2022 SolarWinds Worldwide, LLC. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to
// deal in the Software without restriction, including without limitation the
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
// sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
import { kpiConfigurator } from "./kpi-configurator";
import { kpiWidget } from "./kpi-widget";
import { DEFAULT_PIZZAGNA_ROOT } from "../../services/types";
import { WellKnownPathKey } from "../../types";
const tileDescriptionConfiguratorTemplatePath = `tiles.properties.template[0]`;
const dataSourceConfiguratorTemplatePath = `tiles.properties.template[1]`;
const backgroundColorRulesConfiguratorTemplatePath = `tiles.properties.template[3]`;
/***********************************************************************************************************
* KPI widget definition starts here
***********************************************************************************************************/
export const kpi = {
/***************************************************************************************************
* Paths to important settings in this type definition
***************************************************************************************************/
paths: {
widget: {
[WellKnownPathKey.Root]: DEFAULT_PIZZAGNA_ROOT,
},
configurator: {
[WellKnownPathKey.Root]: DEFAULT_PIZZAGNA_ROOT,
// this points at the component type you need to change if you want to change the component for data source configuration
[WellKnownPathKey.DataSourceConfigComponentType]: `${dataSourceConfiguratorTemplatePath}.componentType`,
// this points at the component type you need to change if you want to change the component for tile description configuration
[WellKnownPathKey.TileDescriptionConfigComponentType]: `${tileDescriptionConfiguratorTemplatePath}.componentType`,
// for the default data source configuration component, this changes the list of data sources to pick from
[WellKnownPathKey.DataSourceProviders]: `${dataSourceConfiguratorTemplatePath}.properties.dataSourceProviders`,
// this points to the Tile's description background color picker
[WellKnownPathKey.TileDescriptionBackgroundColors]: `${tileDescriptionConfiguratorTemplatePath}.properties.backgroundColors`,
// this points to the Background Color Rules background color picker
[WellKnownPathKey.TileBackgroundColorRulesBackgroundColors]: `${backgroundColorRulesConfiguratorTemplatePath}.properties.backgroundColors`,
},
},
/***************************************************************************************************
* Widget section describes the structural part of the KPI widget
***************************************************************************************************/
widget: kpiWidget,
/***************************************************************************************************
* Configurator section describes the form that is used to configure the widget
***************************************************************************************************/
configurator: kpiConfigurator,
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3BpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi93aWRnZXQtdHlwZXMva3BpL2twaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5REFBeUQ7QUFDekQsRUFBRTtBQUNGLCtFQUErRTtBQUMvRSw0RUFBNEU7QUFDNUUsOEVBQThFO0FBQzlFLCtFQUErRTtBQUMvRSw4RUFBOEU7QUFDOUUsNERBQTREO0FBQzVELEVBQUU7QUFDRiw2RUFBNkU7QUFDN0UsdURBQXVEO0FBQ3ZELEVBQUU7QUFDRiw2RUFBNkU7QUFDN0UsNEVBQTRFO0FBQzVFLCtFQUErRTtBQUMvRSwwRUFBMEU7QUFDMUUsaUZBQWlGO0FBQ2pGLDZFQUE2RTtBQUM3RSxpQkFBaUI7QUFFakIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRS9DLE1BQU0sdUNBQXVDLEdBQUcsOEJBQThCLENBQUM7QUFDL0UsTUFBTSxrQ0FBa0MsR0FBRyw4QkFBOEIsQ0FBQztBQUMxRSxNQUFNLDRDQUE0QyxHQUFHLDhCQUE4QixDQUFDO0FBRXBGOzs2R0FFNkc7QUFDN0csTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUEwQjtJQUN0Qzs7eUdBRXFHO0lBQ3JHLEtBQUssRUFBRTtRQUNILE1BQU0sRUFBRTtZQUNKLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUscUJBQXFCO1NBQ2pEO1FBQ0QsWUFBWSxFQUFFO1lBQ1YsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxxQkFBcUI7WUFDOUMseUhBQXlIO1lBQ3pILENBQUMsZ0JBQWdCLENBQUMsNkJBQTZCLENBQUMsRUFBRSxHQUFHLGtDQUFrQyxnQkFBZ0I7WUFDdkcsOEhBQThIO1lBQzlILENBQUMsZ0JBQWdCLENBQUMsa0NBQWtDLENBQUMsRUFBRSxHQUFHLHVDQUF1QyxnQkFBZ0I7WUFDakgsMEdBQTBHO1lBQzFHLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLENBQUMsRUFBRSxHQUFHLGtDQUFrQyxpQ0FBaUM7WUFDOUcsZ0VBQWdFO1lBQ2hFLENBQUMsZ0JBQWdCLENBQUMsK0JBQStCLENBQUMsRUFBRSxHQUFHLHVDQUF1Qyw4QkFBOEI7WUFDNUgsb0VBQW9FO1lBQ3BFLENBQUMsZ0JBQWdCLENBQUMsd0NBQXdDLENBQUMsRUFBRSxHQUFHLDRDQUE0Qyw4QkFBOEI7U0FDN0k7S0FDSjtJQUNEOzt5R0FFcUc7SUFDckcsTUFBTSxFQUFFLFNBQVM7SUFDakI7O3lHQUVxRztJQUNyRyxZQUFZLEVBQUUsZUFBZTtDQUNoQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gwqkgMjAyMiBTb2xhcldpbmRzIFdvcmxkd2lkZSwgTExDLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vICBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0b1xuLy8gIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlXG4vLyAgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yXG4vLyAgc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vICBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyAgYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vICBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vICBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCB7IGtwaUNvbmZpZ3VyYXRvciB9IGZyb20gXCIuL2twaS1jb25maWd1cmF0b3JcIjtcbmltcG9ydCB7IGtwaVdpZGdldCB9IGZyb20gXCIuL2twaS13aWRnZXRcIjtcbmltcG9ydCB7IElXaWRnZXRUeXBlRGVmaW5pdGlvbiB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL3dpZGdldC90eXBlc1wiO1xuaW1wb3J0IHsgREVGQVVMVF9QSVpaQUdOQV9ST09UIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3R5cGVzXCI7XG5pbXBvcnQgeyBXZWxsS25vd25QYXRoS2V5IH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5cbmNvbnN0IHRpbGVEZXNjcmlwdGlvbkNvbmZpZ3VyYXRvclRlbXBsYXRlUGF0aCA9IGB0aWxlcy5wcm9wZXJ0aWVzLnRlbXBsYXRlWzBdYDtcbmNvbnN0IGRhdGFTb3VyY2VDb25maWd1cmF0b3JUZW1wbGF0ZVBhdGggPSBgdGlsZXMucHJvcGVydGllcy50ZW1wbGF0ZVsxXWA7XG5jb25zdCBiYWNrZ3JvdW5kQ29sb3JSdWxlc0NvbmZpZ3VyYXRvclRlbXBsYXRlUGF0aCA9IGB0aWxlcy5wcm9wZXJ0aWVzLnRlbXBsYXRlWzNdYDtcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBLUEkgd2lkZ2V0IGRlZmluaXRpb24gc3RhcnRzIGhlcmVcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmV4cG9ydCBjb25zdCBrcGk6IElXaWRnZXRUeXBlRGVmaW5pdGlvbiA9IHtcbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogIFBhdGhzIHRvIGltcG9ydGFudCBzZXR0aW5ncyBpbiB0aGlzIHR5cGUgZGVmaW5pdGlvblxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICAgcGF0aHM6IHtcbiAgICAgICAgd2lkZ2V0OiB7XG4gICAgICAgICAgICBbV2VsbEtub3duUGF0aEtleS5Sb290XTogREVGQVVMVF9QSVpaQUdOQV9ST09ULFxuICAgICAgICB9LFxuICAgICAgICBjb25maWd1cmF0b3I6IHtcbiAgICAgICAgICAgIFtXZWxsS25vd25QYXRoS2V5LlJvb3RdOiBERUZBVUxUX1BJWlpBR05BX1JPT1QsXG4gICAgICAgICAgICAvLyB0aGlzIHBvaW50cyBhdCB0aGUgY29tcG9uZW50IHR5cGUgeW91IG5lZWQgdG8gY2hhbmdlIGlmIHlvdSB3YW50IHRvIGNoYW5nZSB0aGUgY29tcG9uZW50IGZvciBkYXRhIHNvdXJjZSBjb25maWd1cmF0aW9uXG4gICAgICAgICAgICBbV2VsbEtub3duUGF0aEtleS5EYXRhU291cmNlQ29uZmlnQ29tcG9uZW50VHlwZV06IGAke2RhdGFTb3VyY2VDb25maWd1cmF0b3JUZW1wbGF0ZVBhdGh9LmNvbXBvbmVudFR5cGVgLFxuICAgICAgICAgICAgLy8gdGhpcyBwb2ludHMgYXQgdGhlIGNvbXBvbmVudCB0eXBlIHlvdSBuZWVkIHRvIGNoYW5nZSBpZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhlIGNvbXBvbmVudCBmb3IgdGlsZSBkZXNjcmlwdGlvbiBjb25maWd1cmF0aW9uXG4gICAgICAgICAgICBbV2VsbEtub3duUGF0aEtleS5UaWxlRGVzY3JpcHRpb25Db25maWdDb21wb25lbnRUeXBlXTogYCR7dGlsZURlc2NyaXB0aW9uQ29uZmlndXJhdG9yVGVtcGxhdGVQYXRofS5jb21wb25lbnRUeXBlYCxcbiAgICAgICAgICAgIC8vIGZvciB0aGUgZGVmYXVsdCBkYXRhIHNvdXJjZSBjb25maWd1cmF0aW9uIGNvbXBvbmVudCwgdGhpcyBjaGFuZ2VzIHRoZSBsaXN0IG9mIGRhdGEgc291cmNlcyB0byBwaWNrIGZyb21cbiAgICAgICAgICAgIFtXZWxsS25vd25QYXRoS2V5LkRhdGFTb3VyY2VQcm92aWRlcnNdOiBgJHtkYXRhU291cmNlQ29uZmlndXJhdG9yVGVtcGxhdGVQYXRofS5wcm9wZXJ0aWVzLmRhdGFTb3VyY2VQcm92aWRlcnNgLFxuICAgICAgICAgICAgLy8gdGhpcyBwb2ludHMgdG8gdGhlIFRpbGUncyBkZXNjcmlwdGlvbiBiYWNrZ3JvdW5kIGNvbG9yIHBpY2tlclxuICAgICAgICAgICAgW1dlbGxLbm93blBhdGhLZXkuVGlsZURlc2NyaXB0aW9uQmFja2dyb3VuZENvbG9yc106IGAke3RpbGVEZXNjcmlwdGlvbkNvbmZpZ3VyYXRvclRlbXBsYXRlUGF0aH0ucHJvcGVydGllcy5iYWNrZ3JvdW5kQ29sb3JzYCxcbiAgICAgICAgICAgIC8vIHRoaXMgcG9pbnRzIHRvIHRoZSBCYWNrZ3JvdW5kIENvbG9yIFJ1bGVzIGJhY2tncm91bmQgY29sb3IgcGlja2VyXG4gICAgICAgICAgICBbV2VsbEtub3duUGF0aEtleS5UaWxlQmFja2dyb3VuZENvbG9yUnVsZXNCYWNrZ3JvdW5kQ29sb3JzXTogYCR7YmFja2dyb3VuZENvbG9yUnVsZXNDb25maWd1cmF0b3JUZW1wbGF0ZVBhdGh9LnByb3BlcnRpZXMuYmFja2dyb3VuZENvbG9yc2AsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogIFdpZGdldCBzZWN0aW9uIGRlc2NyaWJlcyB0aGUgc3RydWN0dXJhbCBwYXJ0IG9mIHRoZSBLUEkgd2lkZ2V0XG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiAgICB3aWRnZXQ6IGtwaVdpZGdldCxcbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogIENvbmZpZ3VyYXRvciBzZWN0aW9uIGRlc2NyaWJlcyB0aGUgZm9ybSB0aGF0IGlzIHVzZWQgdG8gY29uZmlndXJlIHRoZSB3aWRnZXRcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuICAgIGNvbmZpZ3VyYXRvcjoga3BpQ29uZmlndXJhdG9yLFxufTtcbiJdfQ==