UNPKG

@redocly/theme

Version:

Shared UI components lib

33 lines 1.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useCatalogEntityDetails = useCatalogEntityDetails; const urls_1 = require("../../utils/urls"); function useCatalogEntityDetails({ catalogConfig, entitiesCatalogConfig, revision, version, }) { const getCatalogSpecificConfigByEntityTypeIncluded = (entity) => { var _a; if (!entitiesCatalogConfig) { return; } return Object.values((_a = entitiesCatalogConfig.catalogs) !== null && _a !== void 0 ? _a : {}).find((catalog) => { var _a; return (_a = catalog === null || catalog === void 0 ? void 0 : catalog.includes) === null || _a === void 0 ? void 0 : _a.some((include) => include.type === entity.type); }); }; const getEntityDetailsLink = (entity) => { const catalogSpecificConfig = getCatalogSpecificConfigByEntityTypeIncluded(entity); const basePath = !catalogSpecificConfig || !entitiesCatalogConfig ? (0, urls_1.withPathPrefix)(`/catalogs/${catalogConfig.slug}/entities/${entity.key}`) : (0, urls_1.withPathPrefix)(`/catalogs/${catalogSpecificConfig.slug}/entities/${entity.key}`); const params = new URLSearchParams(); if (revision) { params.set('revision', revision); } if (version !== undefined) { params.set('version', version !== null && version !== void 0 ? version : ''); } params.set('search', ''); return `${basePath}?${params.toString()}`; }; return { getEntityDetailsLink }; } //# sourceMappingURL=use-catalog-entity-details.js.map