{"version":3,"file":"v0alpha1AppMapper.mjs","sources":["../../../../../src/services/pluginMeta/mappers/v0alpha1AppMapper.ts"],"sourcesContent":["import { type AppPluginConfig, type PluginDependencies, type PluginExtensions, type PluginType } from '@grafana/data';\n\nimport type { AppPluginMetas, AppPluginMetasMapper, PluginMetasResponse } from '../types';\nimport type { Spec as v0alpha1Spec } from '../types/meta/types.spec.gen';\n\nimport { angularMapper, loadingStrategyMapper } from './shared';\n\nfunction dependenciesMapper(spec: v0alpha1Spec): PluginDependencies {\n  const plugins = (spec.pluginJson.dependencies?.plugins ?? []).map((v) => ({\n    ...v,\n    // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n    type: v.type as PluginType,\n    version: '',\n  }));\n\n  const dependencies: PluginDependencies = {\n    ...spec.pluginJson.dependencies,\n    extensions: {\n      exposedComponents: spec.pluginJson.dependencies.extensions?.exposedComponents ?? [],\n    },\n    grafanaDependency: spec.pluginJson.dependencies.grafanaDependency,\n    grafanaVersion: spec.pluginJson.dependencies.grafanaVersion ?? '',\n    plugins,\n  };\n\n  return dependencies;\n}\n\nfunction extensionsMapper(spec: v0alpha1Spec): PluginExtensions {\n  const addedComponents = spec.pluginJson.extensions?.addedComponents ?? [];\n  const addedFunctions = spec.pluginJson.extensions?.addedFunctions ?? [];\n  const addedLinks = spec.pluginJson.extensions?.addedLinks ?? [];\n  const exposedComponents = (spec.pluginJson.extensions?.exposedComponents ?? []).map((v) => ({\n    ...v,\n    description: v.description ?? '',\n    title: v.title ?? '',\n  }));\n  const extensionPoints = (spec.pluginJson.extensions?.extensionPoints ?? []).map((v) => ({\n    ...v,\n    description: v.description ?? '',\n    title: v.title ?? '',\n  }));\n\n  const extensions: PluginExtensions = {\n    addedComponents,\n    addedFunctions,\n    addedLinks,\n    exposedComponents,\n    extensionPoints,\n  };\n\n  return extensions;\n}\n\nfunction specMapper(spec: v0alpha1Spec): AppPluginConfig {\n  const { id, info, preload = false } = spec.pluginJson;\n  const angular = angularMapper(spec);\n  const dependencies = dependenciesMapper(spec);\n  const extensions = extensionsMapper(spec);\n  const loadingStrategy = loadingStrategyMapper(spec);\n  const path = spec.module?.path ?? '';\n  const version = info.version;\n  const buildMode = spec.pluginJson.buildMode ?? 'production';\n  const moduleHash = spec.module?.hash;\n\n  return {\n    id,\n    angular,\n    dependencies,\n    extensions,\n    loadingStrategy,\n    path,\n    preload,\n    version,\n    buildMode,\n    moduleHash,\n  };\n}\n\nexport const v0alpha1AppMapper: AppPluginMetasMapper<PluginMetasResponse> = (response) => {\n  const result: AppPluginMetas = {};\n\n  return response.items.reduce((acc, curr) => {\n    if (curr.spec.pluginJson.type !== 'app') {\n      return acc;\n    }\n\n    const config = specMapper(curr.spec);\n    acc[config.id] = config;\n    return acc;\n  }, result);\n};\n"],"names":["_a","_b"],"mappings":"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"}