| 12345678910111213141516171819202122232425262728 |
- import path from 'path';
- import { PluginInfo } from '../types.js';
- /**
- * Returns an array of the paths to plugins, based on the info provided by the ConfigLoaderApi.
- */
- export function getDashboardPaths(pluginInfo: PluginInfo[]) {
- return (
- pluginInfo
- ?.flatMap(({ dashboardEntryPath, sourcePluginPath, pluginPath }) => {
- if (!dashboardEntryPath) {
- return [];
- }
- const sourcePaths = [];
- if (sourcePluginPath) {
- sourcePaths.push(
- path.join(path.dirname(sourcePluginPath), path.dirname(dashboardEntryPath)),
- );
- }
- if (pluginPath) {
- sourcePaths.push(path.join(path.dirname(pluginPath), path.dirname(dashboardEntryPath)));
- }
- return sourcePaths;
- })
- .filter(x => x != null) ?? []
- );
- }
|