@spotify/backstage-plugin-soundcheck 0.19.7 → 0.19.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/dist/alpha/entity-content.esm.js +1 -1
- package/dist/alpha.d.ts +3 -116
- package/dist/blueprints/IntegrationPageBlueprint.esm.js +1 -1
- package/dist/components/AreaChart/AreaChart.esm.js +1 -1
- package/dist/components/CampaignCreatePage/CampaignCreatePage.esm.js +1 -1
- package/dist/components/CampaignForm/CampaignForm.esm.js +1 -1
- package/dist/components/CampaignForm/Steps/CampaignMilestonesStep.esm.js +1 -1
- package/dist/components/CampaignForm/hooks/utils.esm.js +1 -1
- package/dist/components/CampaignForm/utils/campaignFormUtils.esm.js +2 -2
- package/dist/components/CampaignPage/CampaignPage.esm.js +1 -1
- package/dist/components/CampaignPage/CampaignPageBUI.esm.js +1 -1
- package/dist/components/CampaignPage/CampaignStatusBarBUI.esm.js +2 -0
- package/dist/components/CampaignPage/CampaignStatusCard.esm.js +2 -0
- package/dist/components/CampaignPage/CampaignStatusTableBUI.esm.js +2 -0
- package/dist/components/CampaignPage/CampaignTechInsightsExplorerPage.esm.js +1 -1
- package/dist/components/CampaignsPage/CampaignListPageBUI.esm.js +1 -1
- package/dist/components/CampaignsPage/CampaignsPage.esm.js +1 -1
- package/dist/components/CampaignsPage/EditCampaignView.esm.js +1 -1
- package/dist/components/Cards/HistoricalCheckStatusCard/HistoricalCheckStatusCard.esm.js +1 -1
- package/dist/components/Cards/TrackStatusCard/TrackStatusCard.esm.js +1 -1
- package/dist/components/CategoryBar/CategoryBar.esm.js +1 -1
- package/dist/components/Charts/chartUtils.esm.js +1 -1
- package/dist/components/CheckCreatePage/CheckCreatePage.esm.js +1 -1
- package/dist/components/CheckForm/CheckForm.esm.js +1 -1
- package/dist/components/CheckForm/FormFields/RuleInput/Conditions/RuleConditionInput.esm.js +1 -1
- package/dist/components/CheckForm/Steps/CheckApplicabilityStep.esm.js +1 -1
- package/dist/components/CheckForm/Steps/CheckReviewStep.esm.js +1 -1
- package/dist/components/CheckForm/utils/checkFormUtils.esm.js +2 -2
- package/dist/components/CheckForm/utils/validation.esm.js +1 -1
- package/dist/components/CheckPage/CheckEditPage.esm.js +1 -1
- package/dist/components/CheckPage/CheckEntitiesTable/CheckEntitiesTableBUI.esm.js +1 -1
- package/dist/components/CheckPage/CheckPage.esm.js +1 -1
- package/dist/components/CheckPage/CheckPageBUI.esm.js +1 -1
- package/dist/components/CheckPage/CheckStatusHistoryChartBUI.esm.js +1 -1
- package/dist/components/CheckPage/CheckStatusTableBUI.esm.js +1 -1
- package/dist/components/CheckPage/ExemptionsTableBUI.esm.js +1 -1
- package/dist/components/CheckPage/utils.esm.js +1 -1
- package/dist/components/CheckSelection/CheckSelection.esm.js +1 -1
- package/dist/components/CheckStatusBar/CheckStatusBar.esm.js +1 -1
- package/dist/components/CheckTemplatesPage/CheckTemplatesPage.esm.js +1 -1
- package/dist/components/CheckTemplatesPage/CheckTemplatesPageDeprecated.esm.js +1 -1
- package/dist/components/CheckTemplatesPage/TemplateCategory.esm.js +1 -1
- package/dist/components/ChecksPage/ChecksListPageBUI.esm.js +1 -1
- package/dist/components/ChecksPage/ChecksPage.esm.js +1 -1
- package/dist/components/ChecksTab/ChecksTab.esm.js +1 -1
- package/dist/components/ChecksTable/ChecksTable.esm.js +1 -1
- package/dist/components/CollectorPage/CollectorDetailsPage.esm.js +1 -1
- package/dist/components/CollectorPage/CollectorDetailsPageBUI.esm.js +1 -1
- package/dist/components/CollectorPage/CollectorDetailsPageDeprecated.esm.js +1 -1
- package/dist/components/CollectorPage/CollectorFactTable.esm.js +1 -1
- package/dist/components/CollectorPage/CollectorFactTableBUI.esm.js +1 -1
- package/dist/components/CollectorPage/CollectorPage.esm.js +1 -1
- package/dist/components/CollectorPage/Configurators/AzureDevOps/NumberOfWorkItemsComponent.esm.js +1 -1
- package/dist/components/CollectorPage/Configurators/BigQuery/QueryFactDetailsComponent.esm.js +1 -1
- package/dist/components/CollectorPage/Configurators/Common/CollectorOption.esm.js +1 -1
- package/dist/components/CollectorPage/Configurators/Common/FactCollectionConfig.esm.js +1 -1
- package/dist/components/CollectorPage/Configurators/Common/utils.esm.js +1 -1
- package/dist/components/CollectorPage/Configurators/HTTP/HttpRequestComponent.esm.js +1 -1
- package/dist/components/CollectorPage/Configurators/SCM/JsonFactDetailsComponent.esm.js +1 -1
- package/dist/components/CollectorPage/Configurators/SCM/RegexFactDetailsComponent.esm.js +1 -1
- package/dist/components/CollectorsPage/CollectorListPage/CollectorListPageDeprecated.esm.js +1 -1
- package/dist/components/CollectorsPage/CollectorListPage/CollectorSummaryCard.esm.js +1 -1
- package/dist/components/CollectorsPage/CollectorsPage.esm.js +1 -1
- package/dist/components/CollectorsPage/IntegrationsListPageBUI.esm.js +1 -1
- package/dist/components/FactExplorer/FactExplorer.esm.js +1 -1
- package/dist/components/FactExplorer/FactExplorerContext.esm.js +1 -1
- package/dist/components/FactExplorer/FactExplorerDialogBUI.esm.js +1 -1
- package/dist/components/Filter/FilterComponent.esm.js +1 -1
- package/dist/components/Filter/FilterPreviewTable/FilterPreviewTable.esm.js +1 -1
- package/dist/components/Filter/KeyValueInputDialog.esm.js +1 -1
- package/dist/components/Filter/types.esm.js +1 -1
- package/dist/components/Filter/utils.esm.js +1 -1
- package/dist/components/FilterSidebar/FilterSidebar.esm.js +1 -1
- package/dist/components/FilterSidebar/StateFilter.esm.js +1 -1
- package/dist/components/FormControlledAutocomplete/ControlledAutocomplete.esm.js +1 -1
- package/dist/components/FormFilterSection/FormFilterSection.esm.js +1 -1
- package/dist/components/FormStepper/FormStepper.esm.js +1 -1
- package/dist/components/HierarchicalTechInsightsPage/visualizations/LoadingOverlay.esm.js +1 -1
- package/dist/components/HierarchicalTechInsightsPage/visualizations/NivoCirclePacking.esm.js +1 -1
- package/dist/components/HierarchicalTechInsightsPage/visualizations/NivoIcicle.esm.js +1 -1
- package/dist/components/HierarchicalTechInsightsPage/visualizations/NivoSunburst.esm.js +1 -1
- package/dist/components/HierarchicalTechInsightsPage/visualizations/NivoTreemap.esm.js +1 -1
- package/dist/components/HierarchicalTechInsightsPage/visualizations/VisualizationBreadcrumb.esm.js +1 -1
- package/dist/components/ImportExportPanel/ImportExportPanelBUI.esm.js +1 -1
- package/dist/components/ImportExportPanel/ImportExportPanelDeprecated.esm.js +1 -1
- package/dist/components/OverviewPage/OverviewPageContent.esm.js +1 -1
- package/dist/components/OverviewPage/OverviewPageHeader.esm.js +1 -1
- package/dist/components/Pagination/Pagination.esm.js +1 -1
- package/dist/components/PassRateGrid/PassRateMetadata.esm.js +1 -1
- package/dist/components/RoutingPage/RoutingPage.esm.js +1 -1
- package/dist/components/RoutingPage/RoutingPageWrapper.esm.js +1 -1
- package/dist/components/SoundcheckHeader/Breadcrumbs.esm.js +1 -1
- package/dist/components/SoundcheckHeader/SoundcheckHeader.esm.js +1 -1
- package/dist/components/SoundcheckHeader/SoundcheckHeaderBUI.esm.js +1 -1
- package/dist/components/SoundcheckHeader/useHeader.esm.js +1 -1
- package/dist/components/SummaryCard/SummaryCardActionsMenu.esm.js +1 -1
- package/dist/components/TableRowWithOwner/TableRowWithOwner.esm.js +1 -1
- package/dist/components/TechHealth/TechHealth.esm.js +1 -1
- package/dist/components/TechHealthTabs/PassRateTabHeader.esm.js +1 -1
- package/dist/components/TechInsights/TechInsightsPage.esm.js +1 -1
- package/dist/components/TechInsights/TechInsightsPageBUI.esm.js +1 -1
- package/dist/components/TechInsights/TechInsightsTableBUI.esm.js +1 -1
- package/dist/components/TechInsightsExplorerTable/TechInsightsExplorerTable.esm.js +1 -1
- package/dist/components/TechInsightsGroupSelector/TechInsightsGroupSelector.esm.js +1 -1
- package/dist/components/TopFailingChecksTable/TopFailingChecksTableBUI.esm.js +1 -1
- package/dist/components/TrackCreatePage/TrackCreatePage.esm.js +1 -1
- package/dist/components/TrackEditPage/TrackEditPage.esm.js +1 -1
- package/dist/components/TrackForm/Steps/LevelsStep/LevelsStepNew.esm.js +1 -1
- package/dist/components/TrackForm/TrackForm.esm.js +1 -1
- package/dist/components/TrackForm/utils/useTrackForm.esm.js +1 -1
- package/dist/components/TrackPage/TrackEntitiesTable/TrackEntitiesTableBUI.esm.js +1 -1
- package/dist/components/TrackPage/TrackEntitiesTable/utils.esm.js +1 -1
- package/dist/components/TrackPage/TrackPage.esm.js +1 -1
- package/dist/components/TrackPage/TrackPageBUI.esm.js +1 -1
- package/dist/components/TrackPage/TrackStatusTableBUI.esm.js +1 -1
- package/dist/components/TrackPage/TrackTechInsightsExplorerPage.esm.js +1 -1
- package/dist/components/TracksPage/TracksListPageBUI.esm.js +1 -1
- package/dist/components/TracksPage/TracksPage.esm.js +1 -1
- package/dist/components/TracksTab/TracksTab.esm.js +1 -1
- package/dist/hooks/aggregations/useAggregatedCheckPassRateTrend.esm.js +1 -1
- package/dist/hooks/aggregations/useAggregatedEntityPassRateTrend.esm.js +1 -1
- package/dist/hooks/aggregations/useAggregatedGroupPassRateTrend.esm.js +1 -1
- package/dist/hooks/aggregations/useAggregatedTrackPassRateTrend.esm.js +1 -1
- package/dist/hooks/aggregations/useCertificationStatus.esm.js +1 -1
- package/dist/hooks/aggregations/useCertificationStatusHistory.esm.js +1 -1
- package/dist/hooks/aggregations/useCheckPassRateTrend.esm.js +1 -1
- package/dist/hooks/aggregations/useCheckStatus.esm.js +1 -1
- package/dist/hooks/aggregations/useCheckStatusHistory.esm.js +1 -1
- package/dist/hooks/aggregations/useCheckStatuses.esm.js +1 -1
- package/dist/hooks/aggregations/useEntityPassRateTrend.esm.js +1 -1
- package/dist/hooks/aggregations/useGroupPassRateTrend.esm.js +1 -1
- package/dist/hooks/aggregations/useTrackPassRateTrend.esm.js +1 -1
- package/dist/hooks/cache/useEntityCountCached.esm.js +1 -1
- package/dist/hooks/cache/useTrackCountCached.esm.js +1 -1
- package/dist/hooks/campaigns/useGetCampaign.esm.js +1 -1
- package/dist/hooks/catalog/useGetEntityCount.esm.js +1 -1
- package/dist/hooks/checks/useCheck.esm.js +1 -1
- package/dist/hooks/checks/useExecutableChecks.esm.js +1 -1
- package/dist/hooks/checks/useGetChecks.esm.js +1 -1
- package/dist/hooks/collectors/useGetCollectors.esm.js +1 -1
- package/dist/hooks/collectors/useGetFactSchema.esm.js +1 -1
- package/dist/hooks/collectors/useUpdateCollectorConfig.esm.js +1 -1
- package/dist/hooks/entities/useEntityRefsForUser.esm.js +1 -1
- package/dist/hooks/exemptions/useExemptions.esm.js +1 -1
- package/dist/hooks/facets/useFacetsForOwner.esm.js +1 -1
- package/dist/hooks/filters/useFilters.esm.js +1 -1
- package/dist/hooks/groups/useAllGroups.esm.js +1 -1
- package/dist/hooks/tracks/useGetTracksApplicableEntityCount.esm.js +1 -1
- package/dist/hooks/tracks/useTrack.esm.js +1 -1
- package/dist/hooks/useSortSearchParams.esm.js +2 -0
- package/dist/index.d.ts +11 -11
- package/dist/routes.esm.js +1 -1
- package/dist/utils/filters.esm.js +1 -1
- package/dist/utils/formStyles.esm.js +1 -1
- package/dist/utils/helpers.esm.js +1 -1
- package/dist/utils/json.esm.js +2 -0
- package/dist/utils/validation.esm.js +1 -1
- package/package.json +19 -19
- package/dist/components/CampaignPage/CampaignPageDeprecated.esm.js +0 -2
- package/dist/components/CampaignPage/CampaignStatusHistoryTile.esm.js +0 -2
- package/dist/components/CampaignPage/CampaignStatusTile.esm.js +0 -2
- package/dist/components/CampaignPage/DaysRemainingTile.esm.js +0 -2
- package/dist/components/CampaignsPage/CampaignListPage/CampaignListPageDeprecated.esm.js +0 -2
- package/dist/components/CampaignsPage/CampaignListPage/CampaignMetadata.esm.js +0 -2
- package/dist/components/CampaignsPage/CampaignListPage/CampaignSummaryCard.esm.js +0 -2
- package/dist/components/CampaignsPage/CampaignListPage/CampaignTypes.esm.js +0 -2
- package/dist/components/CampaignsPage/CampaignListPage/CampaignsOverviewSkeleton.esm.js +0 -2
- package/dist/components/Charts/LoadingChart.esm.js +0 -2
- package/dist/components/CheckPage/CheckEntitiesTable/CheckEntitiesTable.esm.js +0 -2
- package/dist/components/CheckPage/CheckEntitiesTable/columns.esm.js +0 -2
- package/dist/components/CheckPage/CheckPageDeprecated.esm.js +0 -2
- package/dist/components/CheckPage/CheckStatusHistoryChart.esm.js +0 -2
- package/dist/components/CheckPage/CheckStatusTable.esm.js +0 -2
- package/dist/components/CheckPage/ExemptionsTable.esm.js +0 -2
- package/dist/components/ChecksPage/CheckListPage/CheckListPageDeprecated.esm.js +0 -2
- package/dist/components/ChecksPage/CheckListPage/CheckMetadata.esm.js +0 -2
- package/dist/components/ChecksPage/CheckListPage/CheckSummaryCard.esm.js +0 -2
- package/dist/components/ChecksPage/skeletons/ChecksOverviewSkeleton.esm.js +0 -2
- package/dist/components/CollectorsPage/CollectorListPage/CollectorListSkeleton.esm.js +0 -2
- package/dist/components/ColorChip/ColorChip.esm.js +0 -2
- package/dist/components/GroupHierarchySelector/GroupHierarchyCategorySelection.esm.js +0 -2
- package/dist/components/GroupHierarchySelector/GroupHierarchyChip.esm.js +0 -2
- package/dist/components/GroupHierarchySelector/GroupHierarchyGroupInfo.esm.js +0 -2
- package/dist/components/GroupHierarchySelector/GroupHierarchySelector.esm.js +0 -2
- package/dist/components/GroupHierarchySelector/GroupHierarchySelectorDialog.esm.js +0 -2
- package/dist/components/HierarchicalTechInsightsPage/ColorLegend.esm.js +0 -2
- package/dist/components/HierarchicalTechInsightsPage/HierarchicalTechInsightsPage.esm.js +0 -2
- package/dist/components/HierarchicalTechInsightsPage/HierarchyTable.esm.js +0 -2
- package/dist/components/HierarchicalTechInsightsPage/LowestPerformingTeams.esm.js +0 -2
- package/dist/components/HierarchicalTechInsightsPage/SelectedNodeSidebar.esm.js +0 -2
- package/dist/components/HierarchicalTechInsightsPage/TeamPerformanceCard.esm.js +0 -2
- package/dist/components/HierarchicalTechInsightsPage/TeamPerformanceListCard.esm.js +0 -2
- package/dist/components/HierarchicalTechInsightsPage/TopPerformingTeams.esm.js +0 -2
- package/dist/components/HierarchicalTechInsightsPage/visualizations/findNodePath.esm.js +0 -2
- package/dist/components/LevelsTable/CheckRowContent.esm.js +0 -2
- package/dist/components/LevelsTable/LevelsTable.esm.js +0 -2
- package/dist/components/PassingPercentProgressbar/PassPercentageProgressbar.esm.js +0 -2
- package/dist/components/QuickstartPage/HowDoIListItem.esm.js +0 -2
- package/dist/components/QuickstartPage/QuickstartCardBase.esm.js +0 -2
- package/dist/components/QuickstartPage/QuickstartPage.esm.js +0 -3
- package/dist/components/QuickstartPage/WelcomeHelpSection.esm.js +0 -7
- package/dist/components/QuickstartPage/styles.esm.js +0 -2
- package/dist/components/RichTooltip/RichTooltip.esm.js +0 -2
- package/dist/components/RoutingPage/NewFeatureTab.esm.js +0 -2
- package/dist/components/RoutingPage/RoutingPageDeprecated.esm.js +0 -2
- package/dist/components/RoutingPage/RoutingPageWrapperDeprecated.esm.js +0 -2
- package/dist/components/SearchFilters/SearchFilters.esm.js +0 -2
- package/dist/components/SendCampaignNotificationDialog/SendCampaignNotificationDialog.esm.js +0 -2
- package/dist/components/SoundcheckEntityLink/SoundcheckEntityLink.esm.js +0 -2
- package/dist/components/SoundcheckHeader/headerUtil.esm.js +0 -2
- package/dist/components/TeamStatusBar/TeamStatusBar.esm.js +0 -2
- package/dist/components/TechInsights/FilterControls.esm.js +0 -2
- package/dist/components/TechInsights/SummaryTiles.esm.js +0 -2
- package/dist/components/TechInsights/TechInsightsPageDeprecated.esm.js +0 -2
- package/dist/components/TechInsights/TechInsightsTableView.esm.js +0 -2
- package/dist/components/TimePeriodBar/TimePeriodBar.esm.js +0 -2
- package/dist/components/TopFailingChecksTable/TopFailingChecksTable.esm.js +0 -2
- package/dist/components/TrackPage/TrackEntitiesTable/TrackEntitiesTable.esm.js +0 -2
- package/dist/components/TrackPage/TrackEntitiesTable/TrackStatusChip.esm.js +0 -2
- package/dist/components/TrackPage/TrackEntitiesTable/columns.esm.js +0 -2
- package/dist/components/TrackPage/TrackHistoryChart.esm.js +0 -2
- package/dist/components/TrackPage/TrackPageDeprecated.esm.js +0 -2
- package/dist/components/TrackPage/TrackProgressCard.esm.js +0 -2
- package/dist/components/TrackPage/TrackStatus.esm.js +0 -2
- package/dist/components/TrackPage/TrackStatusBar.esm.js +0 -2
- package/dist/components/TrackPage/TrackStatusTable.esm.js +0 -2
- package/dist/components/TrackPage/utils.esm.js +0 -2
- package/dist/components/TrackSelection/TrackSelection.esm.js +0 -2
- package/dist/components/TracksPage/TrackListPage/TrackEmptyState.esm.js +0 -2
- package/dist/components/TracksPage/TrackListPage/TrackListPageDeprecated.esm.js +0 -2
- package/dist/components/TracksPage/TrackListPage/TrackMetadata.esm.js +0 -2
- package/dist/components/TracksPage/TrackListPage/TrackSummaryCard.esm.js +0 -2
- package/dist/components/TracksPage/TrackListPage/TracksOverviewSkeleton.esm.js +0 -2
- package/dist/hooks/campaigns/useGetCampaignOwners.esm.js +0 -2
- package/dist/hooks/checks/useGetCheckOwners.esm.js +0 -2
- package/dist/hooks/heirarchy/useGroupTypeHierarchy.esm.js +0 -2
- package/dist/hooks/tracks/useGetTrackOwners.esm.js +0 -2
- package/dist/utils/colors.esm.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as f,Fragment as P}from"react/jsx-runtime";import{parseEntityRef as j,stringifyEntityRef as S}from"@backstage/catalog-model";import{Table as D}from"@backstage/core-components";import{makeStyles as O,useTheme as N}from"@material-ui/core";import{combineEntityFilterQueries as A,difference as B}from"@spotify/backstage-plugin-soundcheck-common";import{useState as C,useMemo as d}from"react";import{useEntitiesByRefs as M}from"../../../hooks/catalog/useEntitiesByRefs.esm.js";import{useGetEntityRefs as F}from"../../../hooks/catalog/useGetEntityRefs.esm.js";import{mapFiltersToCatalogFilter as b}from"../utils.esm.js";import{createEntityRefColumn as W,createSystemColumn as k,createOwnerColumn as G,createKindColumn as I,createSpecTypeColumn as K,createSpecLifecycleColumn as Q,createTagsColumn as U}from"./EntityTableColumns.esm.js";const X=O(()=>({entityTable:{'& span[class*="CatalogReactEntityDisplayName-root"]':{"&:hover":{textDecoration:"underline"}}}})),z=[W(),k(),G(),I(),K(),Q(),U()],$=15e3,q=({includeFilter:u,excludeFilter:p})=>{const a=b(u),r=!!a?.[0]&&Object.values(a[0]).some(t=>!!t),n=p?.length?b(p):[],e=!!n?.[0]&&Object.values(n[0]).some(t=>!!t),{data:m,isFetching:g}=F(a,e&&!r?$:void 0,r),c=m?.items.map(t=>S(t)),l=e?A(a,n):void 0,{data:y,isFetching:s}=F(l??{},void 0,r&&!!l),o=y?.items.map(t=>S(t));return{allEntityRefs:d(()=>B(c??[],o??[]),[o,c]),isLoading:g||s}},H=({includeFilter:u,excludeFilter:p,additionalColumns:a=[],title:r,hideTags:n=!1})=>{const[e,m]=C({page:0,pageSize:10}),[g,c]=C(""),{allEntityRefs:l,isLoading:y}=q({includeFilter:u,excludeFilter:p}),s=d(()=>{const i=new RegExp(g,"i");return l.filter(L=>j(L).name.match(i))},[l,g]),o=s.length,t=N(),R=X(),w=d(()=>s.slice(e.page*e.pageSize,(e.page+1)*e.pageSize),[s,e.page,e.pageSize]),{data:E,isLoading:h}=M({entityRefs:w}),T=d(()=>n?[...z.slice(0,-1),...a]:[...z,...a],[a,n]),v=o>0?`All (${o||0}) `:"No Items",x=r||v;return f(P,{children:f("div",{className:R.entityTable,children:f(D,{title:x,columns:T,subtitle:o===0?"Add or adjust filters to see preview.":"",data:E?.items?.filter(i=>!!i)??[],isLoading:h||y,options:{padding:"dense",paging:o>e.pageSize,toolbar:!0,draggable:!1,tableLayout:"fixed",search:!0,showTitle:!0,rowStyle:{fontSize:t.typography.body1.fontSize},showFirstLastPageButtons:!1,emptyRowsWhenPaging:!0,pageSizeOptions:[10,25,50],loadingType:"linear",showEmptyDataSourceMessage:!h,pageSize:e.pageSize,sorting:!1},onPageChange:i=>{m({...e,page:i})},onSearchChange:i=>{c(i)},onRowsPerPageChange:i=>{m({...e,pageSize:i})},page:e.page,totalCount:o,localization:{pagination:{labelDisplayedRows:""}}})})})};export{H as FilterPreviewTable};
|
|
2
2
|
//# sourceMappingURL=FilterPreviewTable.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as e,jsxs as v,Fragment as z}from"react/jsx-runtime";import{Box as i,IconButton as
|
|
1
|
+
import{jsx as e,jsxs as v,Fragment as z}from"react/jsx-runtime";import{Box as i,IconButton as B,Divider as A,Button as T,FormHelperText as V,TextField as W,Chip as E}from"@material-ui/core";import F from"@material-ui/icons/Add";import G from"@material-ui/icons/Delete";import{useEffect as j,useCallback as f,useMemo as L,useState as M}from"react";import{useImmer as w}from"use-immer";import{SoundcheckDialog as $}from"../SoundcheckDialog/SoundcheckDialog.esm.js";const D=({value:h,onChange:c,onKeyDown:u,placeholder:o,endAdornment:m,error:r,helperText:t})=>v(z,{children:[t&&e(V,{error:r,children:t}),e(i,{display:"flex",alignItems:"center",children:e(W,{value:h,onChange:c,variant:"outlined",margin:"dense",fullWidth:!0,onKeyDown:u,placeholder:o,InputProps:{endAdornment:m},error:r})})]}),H=({values:h,addValue:c,deleteValue:u})=>{const[o,m]=M("");return v(i,{width:"100%",children:[e(i,{marginTop:1,marginBottom:1,display:"flex",gridGap:1,flexWrap:"wrap",children:h.map(r=>e(E,{label:r,size:"small",onDelete:()=>u(r),style:{marginBottom:4}},r))}),e(D,{value:o,onChange:r=>m(r.currentTarget.value),onKeyDown:r=>{r.key==="Enter"&&(c(o),m(""))},placeholder:"Type a value and press enter to add to value list.",endAdornment:e(i,{display:"flex",alignItems:"center",children:e(T,{onClick:()=>c(o),style:{padding:0},size:"small",variant:"text",disabled:!o?.length,children:"Add"})})})]})},P=({title:h,open:c,handleClose:u,values:o,onSave:m,validateKey:r})=>{const[t,d]=w([{key:"",value:[]}]);j(()=>{o?.length>0?d(o):d([{key:"",value:[]}])},[o]);const[y,g]=w({}),x=f(({key:a,value:l,idx:n})=>{d(p=>{const s=p[n];s.key=a===void 0?s.key:a,s.value=l===void 0?s.value:l,a&&y[n]&&g(k=>{k[n]=""})})},[y,g,d]),I=f(a=>{d(l=>{l.splice(a,1),l.length===0&&l.push({key:"",value:[]})})},[d]),b=f(a=>{d(l=>{l.splice(a+1,0,{key:"",value:[]})})},[d]),K=f(()=>{let a=!1;if(r){const n=t.map(s=>s.key);let p=0;g(s=>{for(const k of n){const{errorMessage:C}=r(k);C&&(a=!0),s[p]=C??"",p++}})}if(a)return;const l=t.filter(n=>n.key&&n.value);m(l),u()},[r,t,m,u,g]),S=L(()=>t.every(a=>!!a.key&&a.value?.length||!a.key&&!a.value?.length),[t]);return e($,{title:h,open:c,handleClose:u,fullScreen:!1,children:v(i,{marginLeft:1,minWidth:640,children:[t.map((a,l)=>v(i,{children:[v(i,{display:"flex",alignItems:"flex-end",gridGap:12,marginBottom:2,children:[e(i,{flexGrow:1,children:e(D,{value:a.key,onChange:n=>x({key:n.target.value,idx:l}),placeholder:"Key",error:!!y[l],helperText:y[l]})}),e(i,{width:480,children:e(H,{values:a.value,addValue:n=>{x({idx:l,value:[...a.value,n]})},deleteValue:n=>{x({idx:l,value:a.value.filter(p=>p!==n)})}})}),e(i,{marginBottom:.75,children:e(B,{"aria-label":`remove index ${l} key value pair`,size:"small",onClick:()=>b(l),children:e(F,{})})}),e(i,{marginBottom:.75,children:e(B,{"aria-label":`remove index ${l} key value pair`,size:"small",onClick:()=>I(l),children:e(G,{})})})]}),e(A,{})]},l)),e(i,{display:"flex",paddingTop:2,marginTop:1,children:e(T,{variant:"contained",size:"medium",color:"primary",onClick:K,disabled:!S,children:"Save"})})]})})};export{P as KeyValueInputDialog};
|
|
2
2
|
//# sourceMappingURL=KeyValueInputDialog.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=()=>({
|
|
1
|
+
const e=()=>({selectedKinds:[],selectedLifecycles:[],selectedOwners:[],selectedSystems:[],selectedTags:[],selectedTypes:[],selectedLabels:[],selectedAnnotations:[],selectedOtherFilters:[]}),s=[{facet:"kind",label:"Kind",key:"selectedKinds"},{facet:"spec.type",label:"Type",key:"selectedTypes"},{facet:"spec.lifecycle",label:"Lifecycle",key:"selectedLifecycles"},{facet:"relations.ownedBy",label:"Owner",key:"selectedOwners",isOwnerSelect:!0},{facet:"spec.system",label:"System",key:"selectedSystems"},{facet:"metadata.tags",label:"Tags",key:"selectedTags"}];export{s as FILTER_OPTIONS,e as emptyFilters};
|
|
2
2
|
//# sourceMappingURL=types.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{stringifyEntityRef as
|
|
1
|
+
import{stringifyEntityRef as b,parseEntityRef as F,DEFAULT_NAMESPACE as k}from"@backstage/catalog-model";import{asArray as i}from"@spotify/backstage-plugin-soundcheck-common";import{isEmpty as m}from"lodash";import{emptyFilters as f}from"./types.esm.js";const p="spec.owner",n={selectedKinds:"kind",selectedTypes:"spec.type",selectedLifecycles:"spec.lifecycle",selectedOwners:"relations.ownedBy",selectedSystems:"spec.system",selectedTags:"metadata.tags"},h=t=>Object.values(n).includes(t)||t===p||["metadata.annotations","metadata.labels"].some(s=>t.startsWith(s))?{isValid:!1,errorMessage:`Filter key ${t} is already part of the standard key selection.`}:t==="catalog"?{isValid:!1,errorMessage:"Legacy catalog filters are not supported"}:{isValid:!0},u=t=>t?t.map(s=>b(F(s,{defaultKind:"group",defaultNamespace:k}))):[],O=t=>{const s=t?i(t):[];if(s.length){const a=[];for(const l of s){const e=Object.keys(n).reduce((r,c)=>c===p?(r[n.selectedOwners]=u(i(l?.[p]??[])),r):(r[c]=i(l?.[n[c]]??[]),r),f()),d=l?.[p];d?.length&&(e.selectedOwners=[...e.selectedOwners,...u(d)]);const y=new RegExp(/^\.|^\['|^\["/),g=new RegExp(/']$|"]$/);for(const[r,c]of Object.entries(l)){if(r.startsWith("metadata.labels")){let o=r.replace(/^metadata.labels/,"");o=o.replace(y,""),o=o.replace(g,""),e.selectedLabels.push({key:o,value:i(c)})}else if(r.startsWith("metadata.annotations")){let o=r.replace(/^metadata.annotations/,"");o=o.replace(y,""),o=o.replace(g,""),e.selectedAnnotations.push({key:o,value:i(c)})}h(r).isValid&&e.selectedOtherFilters.push({key:r,value:i(c)})}a.push(e)}return a}return[f()]},v=t=>{if(t&&!t.hasOwnProperty("catalog"))return O(t);const s=Object.keys(n).reduce((l,e)=>(l[e]=i(t?.catalog?.[n[e]]??[]),l),f()),a=t?.catalog?.[p];return a?.length&&(s.selectedOwners=[...s.selectedOwners,...u(a)]),[s]},w=t=>{const s=[];for(const a of t??[]){const l={};if(a&&Object.values(a).some(e=>e.length>0))for(const[e,d]of Object.entries(a))Object.keys(n).includes(e)&&d?.length>0&&(l[n[e]]=d);for(const e of a.selectedLabels??[])e.value?.length>0&&(l[`metadata.labels.${e.key}`]=e.value);for(const e of a.selectedAnnotations??[])e.value?.length>0&&(l[`metadata.annotations.${e.key}`]=e.value);for(const e of a.selectedOtherFilters??[])e.value?.length>0&&(l[e.key]=e.value);m(l)||s.push(l)}if(!m(s))return s},j=(t=[f()])=>t.some(s=>Object.values(s).some(a=>!m(a)));export{j as filterPresent,h as isValidOtherFilterKey,O as mapCatalogFilterToFilters,w as mapFiltersToCatalogFilter,v as mapInputFilterToFormFilters};
|
|
2
2
|
//# sourceMappingURL=utils.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import"react";import"@backstage/catalog-model";import"@backstage/core-plugin-api";import"@backstage/plugin-catalog-react";import{makeStyles as t}from"@material-ui/core";import"@material-ui/lab";import"@spotify/backstage-plugin-soundcheck-common";import"../EntitiesAutocompletePicker/EntitiesAutocompletePicker.esm.js";import"../Filter/EntityAutocompletePicker.esm.js";import"../FormFieldLabel/FormFieldLabel.esm.js";t(i=>({sidebar:{width:"275px",flexShrink:0,height:"100%",padding:i.spacing(3),display:"flex",flexDirection:"column",borderRight:`1px solid ${i.palette.divider}`},filterLabel:{fontWeight:"bold",marginBottom:i.spacing(1)},entityFilterLabel:{fontWeight:"bold",marginTop:i.spacing(2)},additionalFilters:{marginTop:i.spacing(2)}}));
|
|
2
2
|
//# sourceMappingURL=FilterSidebar.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import{makeStyles as o}from"@material-ui/core";import"@material-ui/icons/CheckBox";import"@material-ui/icons/CheckBoxOutlineBlank";import"@material-ui/icons/ExpandMore";import"@material-ui/lab";import"react";import"../CheckIcon/CheckIcon.esm.js";import"../../graphql/generated/index.esm.js";import"../FormFieldLabel/FormFieldLabel.esm.js";import"../ListboxVirtualized/ListboxVirtualized.esm.js";o({container:{padding:0},formControl:{flexGrow:1},label:{lineHeight:"1em"}});
|
|
2
2
|
//# sourceMappingURL=StateFilter.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as n,jsxs as
|
|
1
|
+
import{jsx as n,jsxs as T,Fragment as V}from"react/jsx-runtime";import{makeStyles as v,TextField as z,IconButton as j}from"@material-ui/core";import k from"@material-ui/icons/Clear";import{Autocomplete as D}from"@material-ui/lab";import{useState as F,useMemo as W}from"react";import{ListboxVirtualized as y}from"../ListboxVirtualized/ListboxVirtualized.esm.js";const B=v(l=>({clearIndicator:{marginRight:l.spacing(.5)}})),M=({options:l,onChange:r,value:t,placeholder:d,getOptionLabel:s,disabled:p,fullWidth:u,noOptionsText:m,freeSolo:c=!1,isLoading:g=!1,autoSelect:b=!0,renderOption:I,testId:O,disableCloseOnSelect:f,multiple:o,multipleValue:a,getOptionSelected:S,getOptionDisabled:h})=>{const[C,x]=F(t??""),A=B(),L=W(()=>o?a||[]:t||null,[o,a,t]),P=!o&&t;return n(D,{multiple:o,disableCloseOnSelect:f,options:l,inputValue:C,classes:{clearIndicator:A.clearIndicator},onInputChange:(e,i)=>x(i),onChange:(e,i)=>r(i),value:L,getOptionLabel:s,ListboxComponent:y,disabled:p,fullWidth:u,noOptionsText:m,freeSolo:c,loading:g,closeIcon:null,disableClearable:!0,getOptionSelected:S,getOptionDisabled:h,autoSelect:b,renderOption:I,renderTags:()=>null,"data-testid":O,renderInput:e=>n(z,{...e,placeholder:d,variant:"outlined",margin:"dense",InputProps:{...e.InputProps,endAdornment:P?T(V,{children:[n(j,{onClick:()=>r(""),size:"small",children:n(k,{fontSize:"small"})}),e.InputProps.endAdornment]}):e.InputProps.endAdornment}})})};export{M as ControlledAutocomplete};
|
|
2
2
|
//# sourceMappingURL=ControlledAutocomplete.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as
|
|
1
|
+
import{jsxs as l,jsx as e}from"react/jsx-runtime";import{Typography as d}from"@material-ui/core";import{formStyles as n}from"../../utils/formStyles.esm.js";import"@backstage/catalog-model";import"@spotify/backstage-plugin-soundcheck-common";import"lodash";import{FilterComponent as p}from"../Filter/FilterComponent.esm.js";const s=({description:r,includeFilterName:i,excludeFilterName:t,disabled:o})=>{const m=n();return l("div",{className:m.filters,children:[e(d,{variant:"body2",children:r}),e(p,{includeFilterName:i,excludeFilterName:t,disabled:o})]})};export{s as FormFilterSection};
|
|
2
2
|
//# sourceMappingURL=FormFilterSection.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as e,Fragment as
|
|
1
|
+
import{jsx as e,Fragment as N,jsxs as n}from"react/jsx-runtime";import{makeStyles as f,Grid as r,Card as T,Stepper as F,Step as L,StepLabel as w,StepContent as R,Box as j,Button as s}from"@material-ui/core";import{useStepper as A}from"../../hooks/useStepper.esm.js";import{formStyles as P}from"../../utils/formStyles.esm.js";import{FooterButtons as V}from"../FooterButtons/FooterButtons.esm.js";const G=f(i=>({iconRoot:{color:i.palette.action.disabledBackground},iconText:{fill:i.palette.text.secondary},iconActive:{"& text":{fill:i.palette.primary.contrastText}}})),I=({onClose:i,handleSubmit:p,trigger:d,onSubmit:m,initialVisited:h,stepNameMap:x,steps:l,isLoading:S,isReadOnly:v,saveButtonText:u})=>{const t=P(),a=G(),{activeStep:b,handleNext:B,handleBack:C,isPreviousStep:g,isVisitedStep:k,onStepClick:y}=A(h,x);return e(N,{children:n(r,{container:!0,spacing:2,className:t.root,children:[e(r,{item:!0,style:{width:"100%"},children:e(T,{className:t.card,children:e(F,{className:t.stepper,activeStep:b,orientation:"vertical",children:l.map((c,o)=>n(L,{children:[e(w,{className:g(o)||k(o)?t.stepLabel:void 0,onClick:()=>y(o),StepIconProps:{classes:{root:a.iconRoot,text:a.iconText,active:a.iconActive}},children:c.label}),n(R,{children:[c.content(),e(j,{className:t.buttonChoices,sx:{mb:2},children:n("div",{children:[o!==0&&e(s,{className:t.backButton,onClick:C,children:"Back"}),o!==l.length-1&&e(s,{variant:"contained",color:"primary",onClick:async()=>{await B(d)},children:"Next"})]})})]})]},c.label))})})}),e(r,{item:!0,xs:12,children:e(V,{onCancel:i,saveButtonText:u,isLoading:S,onSave:v?void 0:p(m)})})]})})};export{I as FormStepper};
|
|
2
2
|
//# sourceMappingURL=FormStepper.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import{makeStyles as e}from"@material-ui/core";e(t=>({overlay:{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0, 0, 0, 0.7)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1e3},messageContainer:{textAlign:"center",padding:t.spacing(2)},mainMessage:{color:t.palette.common.white,fontSize:"1.5rem",marginBottom:t.spacing(2)},statsMessage:{color:t.palette.common.white,fontSize:"0.875rem",opacity:.8}}));
|
|
2
2
|
//# sourceMappingURL=LoadingOverlay.esm.js.map
|
package/dist/components/HierarchicalTechInsightsPage/visualizations/NivoCirclePacking.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import"@backstage/core-plugin-api";import"@backstage/plugin-catalog-react";import"@material-ui/core";import{makeStyles as t}from"@material-ui/core/styles";import"@nivo/circle-packing";import"react";import"@nivo/colors";import"d3-color";import"d3-interpolate";import"d3-scale";import"./LoadingOverlay.esm.js";t(o=>({root:{position:"relative",width:"100%",height:"100%"},nivoContainer:{width:"100%",height:"100%"},tooltip:{position:"absolute",pointerEvents:"none",zIndex:1e3},tooltipContent:{backgroundColor:o.palette.background.paper,padding:o.spacing(1),borderRadius:o.shape.borderRadius,boxShadow:o.shadows[1]},loadingOverlay:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"rgba(0, 0, 0, 0.7)",zIndex:1e3,"& > *":{color:o.palette.common.white}}}));
|
|
2
2
|
//# sourceMappingURL=NivoCirclePacking.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import"@backstage/core-plugin-api";import"@backstage/plugin-catalog-react";import"@material-ui/core";import{makeStyles as t}from"@material-ui/core/styles";import"@nivo/icicle";import"react";import"@nivo/colors";import"d3-color";import"d3-interpolate";import"d3-scale";import"./LoadingOverlay.esm.js";t(o=>({root:{position:"relative",width:"100%",height:"100%"},nivoContainer:{width:"100%",height:"100%"},tooltip:{position:"absolute",pointerEvents:"none",zIndex:1e3},tooltipContent:{backgroundColor:o.palette.background.paper,padding:o.spacing(1),borderRadius:o.shape.borderRadius,boxShadow:o.shadows[1]},loadingOverlay:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"rgba(0, 0, 0, 0.7)",zIndex:1e3,"& > *":{color:o.palette.common.white}}}));
|
|
2
2
|
//# sourceMappingURL=NivoIcicle.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import"@backstage/core-plugin-api";import"@backstage/plugin-catalog-react";import"@material-ui/core";import{makeStyles as t}from"@material-ui/core/styles";import"@nivo/sunburst";import"react";import"@nivo/colors";import"d3-color";import"d3-interpolate";import"d3-scale";import"./LoadingOverlay.esm.js";t(o=>({root:{position:"relative",width:"100%",height:"100%"},nivoContainer:{width:"100%",height:"100%"},tooltip:{position:"absolute",pointerEvents:"none",zIndex:1e3},tooltipContent:{backgroundColor:o.palette.background.paper,padding:o.spacing(1),borderRadius:o.shape.borderRadius,boxShadow:o.shadows[1]},loadingOverlay:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"rgba(0, 0, 0, 0.7)",zIndex:1e3,"& > *":{color:o.palette.common.white}}}));
|
|
2
2
|
//# sourceMappingURL=NivoSunburst.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import"@backstage/core-plugin-api";import"@backstage/plugin-catalog-react";import"@material-ui/core";import{makeStyles as t}from"@material-ui/core/styles";import"@nivo/treemap";import"react";import"@nivo/colors";import"d3-color";import"d3-interpolate";import"d3-scale";import"./LoadingOverlay.esm.js";t(o=>({root:{position:"relative",width:"100%",height:"100%"},nivoContainer:{width:"100%",height:"100%"},tooltip:{position:"absolute",pointerEvents:"none",zIndex:1e3},tooltipContent:{backgroundColor:o.palette.background.paper,padding:o.spacing(1),borderRadius:o.shape.borderRadius,boxShadow:o.shadows[1]},loadingOverlay:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"rgba(0, 0, 0, 0.7)",zIndex:1e3,"& > *":{color:o.palette.common.white}}}));
|
|
2
2
|
//# sourceMappingURL=NivoTreemap.esm.js.map
|
package/dist/components/HierarchicalTechInsightsPage/visualizations/VisualizationBreadcrumb.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import{makeStyles as t}from"@material-ui/core";import"@material-ui/icons/ChevronRight";import"react";t(e=>({breadcrumbContainer:{display:"flex",alignItems:"center",height:24},chevronIcon:{color:e.palette.text.secondary,marginLeft:4,marginRight:4},breadcrumbLink:{color:e.palette.text.secondary,fontWeight:400,cursor:"pointer",background:"none",border:"none",padding:0,font:"inherit",textDecoration:"none","&:hover":{textDecoration:"underline"},"&.active":{color:e.palette.text.primary,fontWeight:600},"&.disabled":{cursor:"default","&:hover":{textDecoration:"none"}}},breadcrumbText:{color:"inherit",fontWeight:"inherit"}}));
|
|
2
2
|
//# sourceMappingURL=VisualizationBreadcrumb.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as e,Fragment as Y,jsx as t}from"react/jsx-runtime";import{TooltipTrigger as x,ButtonLink as $,Tooltip as E}from"@backstage/ui";import{RiExportLine as
|
|
1
|
+
import{jsxs as e,Fragment as Y,jsx as t}from"react/jsx-runtime";import{TooltipTrigger as x,ButtonLink as $,Tooltip as E}from"@backstage/ui";import{RiExportLine as j,RiImportLine as B}from"@remixicon/react";import D from"js-yaml";import{capitalize as a}from"lodash";import{useState as A,useRef as F}from"react";import{useSoundcheckAlert as O}from"../../hooks/useSoundcheckAlert.esm.js";const P=({resourceType:r,disableImport:I,disableExport:S,onImport:k,onExport:v})=>{const w=`${a(r)} Import Success`,l=`Error Importing ${a(r)}s`,L=`Error Exporting ${a(r)}s`,{showAlert:n}=O(),[b,c]=A(!1),[M,p]=A(!1),m=F(null);return e(Y,{children:[e(x,{children:[t($,{isDisabled:S||M,onClick:async()=>{try{p(!0),await v()}catch(o){n({title:L,message:`An error occurred while exporting ${r}s: ${o.message}`,severity:"error"})}finally{p(!1)}},"aria-label":"Export All to YAML",iconStart:t(j,{}),variant:"secondary",children:"Export"}),e(E,{children:["Export all ",r,"s to YAML"]})]}),e(x,{children:[t($,{isDisabled:I||b,"aria-label":"Import from YAML",iconStart:t(B,{}),variant:"secondary",onClick:()=>m?.current?.click(),children:"Import"}),e(E,{children:["Import ",r,"s from YAML"]})]}),t("input",{type:"file",hidden:!0,onChange:async o=>{try{c(!0);const i=o.target?.files?.[0],d=new FileReader;i&&(d.readAsText(i,"utf-8"),d.onload=async T=>{const g=T.target?.result?.toString();if(g){const C=D.load(g);try{const{created:f,skipped:R,failed:s}=await k(C);let h=w,u="success",y=`Successfully imported ${f.length} ${r}(s), failed ${s.length} ${r}(s), ${R.length} ${r}(s) already existed.`;s.length&&(h=l,u=f.length?"warning":"error",y+=` Errors: ${JSON.stringify(s)}.`),n({title:h,message:y,severity:u})}catch{}}})}catch(i){n({title:l,message:`An error occurred while importing ${r}s: ${i.message}`,severity:"error"})}finally{o.target.value="",c(!1)}},accept:".yaml",ref:m})]})};export{P as ImportExportPanelBUI};
|
|
2
2
|
//# sourceMappingURL=ImportExportPanelBUI.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import{makeStyles as r}from"@material-ui/core";import"@material-ui/icons/GetApp";import"@material-ui/icons/Publish";import"js-yaml";import"lodash";import"react";import"../../hooks/useSoundcheckAlert.esm.js";r(i=>({button:{height:"44px",lineHeight:"1.25rem",padding:i.spacing(1.5,1),marginRight:i.spacing(.5),borderRadius:"12px",color:i.palette.text.primary}}));
|
|
2
2
|
//# sourceMappingURL=ImportExportPanelDeprecated.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as i,jsxs as $}from"react/jsx-runtime";import{makeStyles as j,Grid as g}from"@material-ui/core";import{createContext as D,useMemo as A,useState as t,useEffect as y,useCallback as H}from"react";import{useSearchParams as z}from"react-router-dom";import B from"react-use/lib/useDebounce";import{useFacetsForOwner as I}from"../../hooks/facets/useFacetsForOwner.esm.js";import{useLCPReporting as K}from"../../hooks/useLCPReporting.esm.js";import{useLoadTimeReporting as M}from"../../hooks/useLoadTimeReporting.esm.js";import{LoadingIndicator as Q}from"../LoadingIndicator/LoadingIndicator.esm.js";import{OverviewTable as q}from"../OverviewTable/OverviewTable.esm.js";import{RowHeights as J}from"../OverviewTable/resultsTableUtils.esm.js";import{OverviewPageHeader as U}from"./OverviewPageHeader.esm.js";const W=j(e=>({tableContainer:{padding:0,backgroundColor:"transparent",paddingBottom:J.paginationControl},campaignsGrid:{margin:`0 0 ${e.spacing(3)}px`,border:`1px solid ${e.palette.divider}`},campaignsCard:{display:"flex",width:"100%",flexDirection:"column",padding:e.spacing(2),gap:e.spacing(2)},campaignsLink:{textAlign:"center",margin:`${e.spacing(1)}rem 0 ${e.spacing(1)}`},tableLoading:{backgroundColor:e.palette.background.paper,padding:e.spacing(6)},noPadding:{padding:0},accordion:{boxShadow:"none"}})),C=D({searchValue:"",updateSearchValue:e=>{},debouncedSearchValue:"",updateDebouncedSearchValue:e=>{},pivot:!1,updatePivot:e=>{}}),X=({isFixedGroup:e=!1})=>{const[r,u]=z(),{group:d,kind:o,type:n}=Object.fromEntries(r.entries()),f=A(()=>({routeName:"soundcheck-overview",additionalAttributes:{group:d||"",selectedKind:o||"",selectedType:n||""}}),[d,o,n]),{reportContentLoaded:h}=M(f),{reporter:P}=K(f),[a,v]=t(void 0),[L,S]=t(void 0),[w,V]=t(),[c,E]=t(""),[O,b]=t(""),[F,G]=t(!1);B(()=>{b(c)},800,[c]),y(()=>{(a?.kind!==o||a?.type!==n)&&v({kind:o,type:n})},[o,n,a]);const{data:k,isLoading:p}=I(d),R=L||w,N=H((s,m,T)=>{s&&(v({kind:s,type:m}),m?(r.set("kind",s),r.set("type",m)):(r.delete("type"),r.set("kind",s)),u(r,{replace:T}))},[r,u]),l=W(),x=P?.getLCPValue();return y(()=>{p||h({lcp:x})},[p,h,x]),i(C.Provider,{value:{searchValue:c,updateSearchValue:E,debouncedSearchValue:O,updateDebouncedSearchValue:b,pivot:F,updatePivot:G},children:$(g,{container:!0,spacing:0,children:[i(g,{item:!0,xs:12,className:l.noPadding,children:i(U,{unfilteredFacets:k,kind:a?.kind,type:a?.type,onChange:N,setError:V,isLoading:p,isFixedGroup:e})}),i(g,{item:!0,xs:12,className:l.tableContainer,children:p?i("div",{className:l.tableLoading,children:i(Q,{size:80})}):i(q,{facets:k,kind:a?.kind,type:a?.type,setError:S,hasError:R,ownerEntityRef:d,isFixedGroup:e})})]})})};export{X as OverviewPageContent,C as OverviewPageContext};
|
|
2
2
|
//# sourceMappingURL=OverviewPageContent.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as p,jsx as n,Fragment as S}from"react/jsx-runtime";import{makeStyles as j,Typography as
|
|
1
|
+
import{jsxs as p,jsx as n,Fragment as S}from"react/jsx-runtime";import{makeStyles as j,Typography as h,TextField as $,CircularProgress as R,Switch as V}from"@material-ui/core";import c from"@material-ui/core/Box";import z from"@material-ui/icons/Search";import{Autocomplete as D}from"@material-ui/lab";import{groupBy as H,sortBy as M,maxBy as N}from"lodash";import{useContext as X,useEffect as w,useMemo as v}from"react";import{useSearchParams as q}from"react-router-dom";import J from"react-use/lib/useLocalStorage";import{GroupSelector as Q}from"../GroupSelector/GroupSelector.esm.js";import{OverviewPageContext as U}from"./OverviewPageContent.esm.js";const Y=j(r=>({wrapper:{background:r.palette.background.default,paddingTop:r.spacing(0),paddingBottom:r.spacing(2),paddingRight:r.spacing(3),display:"flex",gap:r.spacing(3)},switchLabel:{marginLeft:r.spacing(1.5)}})),Z=({setError:r,unfilteredFacets:I,kind:y,type:d,onChange:x,isLoading:g,isFixedGroup:E})=>{const L=Y(),o={types:I?.types.filter(({count:e})=>e>0)??[]},[b,B]=J("soundcheck-overview-pivot-status",!1),[k]=q(),P=k.get("kind"),F=k.get("type"),{searchValue:W,updateSearchValue:A,pivot:m,updatePivot:T}=X(U);w(()=>{b!==m&&T(!!b)},[]);const s=v(()=>o?.types.map(({kind:e,type:t,count:a})=>{const i=`${e}|${t??""}`;return{facetKind:e,facetType:t,key:i,label:`${t??e} (${a>50?"50+":a})`,id:i,count:a}}).sort((e,t)=>e.key.localeCompare(t.key))??[],[o?.types]),C=v(()=>{const e=H(s,t=>t.facetKind);return Object.values(e).map(t=>t.reduce((a,i)=>{const u=a.count+i.count,l=`${i.facetKind}|all`;return{facetKind:i.facetKind,facetType:"all",count:u,key:l,id:l,label:`all ${i.facetKind.toLowerCase()}s (${u>50?"50+":u})`}},{count:0,facetType:"all",facetKind:"",key:"",label:"",id:""}))},[s]),K=v(()=>M([...s,...C],"facetKind"),[C,s]);w(()=>{if(g)return;const e=y??P,t=d??F,a=o?.types&&o.types.length>=0,i=!e&&a,u=!!e&&t!=="all"&&a&&!o?.types.find(({kind:l,type:f})=>e===l&&(!d&&!f||d===f));if(i||u){const l=N(s,f=>f.count);x(l?.facetKind??"",l?.facetType??"",!0)}},[y,P,d,g]);const G=K.find(e=>e.key===`${y}|${d??""}`)??null,O=o&&(o.types?.length??0)>0;return p(c,{className:L.wrapper,children:[!E&&p(c,{flex:1,maxWidth:364,children:[n(h,{variant:"subtitle2",component:"div",children:"Group"}),n(Q,{baseClass:!0,margin:"dense",setError:r})]}),O&&p(S,{children:[p(c,{flex:1,maxWidth:500,children:[n(h,{variant:"subtitle2",component:"div",children:"Entity Type"}),n(D,{"aria-label":"Entity Type Selection",disableClearable:!0,options:K??[],freeSolo:!1,groupBy:e=>e.facetKind,getOptionLabel:e=>e.label,value:G,onChange:(e,t)=>x(t.facetKind,t.facetType,!0),renderInput:e=>n($,{...e,variant:"outlined",placeholder:"Select entity type",margin:"dense",fullWidth:!0,InputProps:{...e.InputProps,endAdornment:p(S,{children:[g?n(R,{color:"inherit",size:20}):null,e.InputProps.endAdornment]})}})})]}),p(c,{maxWidth:580,flex:1,children:[n(h,{variant:"subtitle2",component:"div",children:"Search Entities"}),n($,{margin:"dense",placeholder:"Search entities",variant:"outlined",fullWidth:!0,value:W,onChange:e=>A(e.currentTarget.value),InputProps:{startAdornment:n(c,{marginRight:.75,display:"flex",alignItems:"center",children:n(z,{color:"inherit"})})}})]}),p(c,{display:"flex",flexDirection:"column",children:[n(h,{style:{marginLeft:10},variant:"subtitle2",component:"div",children:"Pivot"}),n(c,{flex:1,display:"flex",alignItems:"center",children:n(V,{checked:m,onChange:()=>{B(!m),T(!m)},inputProps:{"aria-label":"pivot overview table"}})})]})]})]})};export{Z as OverviewPageHeader};
|
|
2
2
|
//# sourceMappingURL=OverviewPageHeader.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import{makeStyles as t}from"@material-ui/core";import"react";import"../../utils/filters.esm.js";t(i=>({pagination:{width:"-webkit-fill-available",display:"flex",justifyContent:"center",position:"fixed",bottom:"0",backgroundColor:i.palette.background.paper,borderTop:`1px solid ${i.palette.divider}`,marginRight:"40px"}}));
|
|
2
2
|
//# sourceMappingURL=Pagination.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as i,jsx as t}from"react/jsx-runtime";import{EntityRefLink as f}from"@backstage/plugin-catalog-react";import{makeStyles as y,List as N,Typography as o,ListItem as a,Tooltip as l,ListItemIcon as m,ListItemText as c}from"@material-ui/core";import
|
|
1
|
+
import{jsxs as i,jsx as t}from"react/jsx-runtime";import{EntityRefLink as f}from"@backstage/plugin-catalog-react";import{makeStyles as y,List as N,Typography as o,ListItem as a,Tooltip as l,ListItemIcon as m,ListItemText as c}from"@material-ui/core";import x from"@material-ui/icons/Group";import L from"@material-ui/icons/TrendingDown";import g from"@material-ui/icons/TrendingFlat";import T from"@material-ui/icons/TrendingUp";import{Trend as s}from"./types.esm.js";const R=y(r=>({cardSection:{marginBottom:r.spacing(2)},listItem:{padding:0},listItemText:{margin:0},listItemIcon:{marginRight:r.spacing(1),minWidth:0},ownerLink:{"& span":{"&:hover":{textDecoration:"underline"}}}})),S=({ownerEntityRef:r,passRates:d})=>{const e=R();return i(N,{dense:!0,disablePadding:!0,className:e.cardSection,children:[t(o,{variant:"overline",color:"textSecondary",children:"Details"}),r&&i(a,{disableGutters:!0,className:e.listItem,children:[t(l,{title:"Owner",children:t(m,{className:e.listItemIcon,children:t(x,{color:"inherit",fontSize:"small"})})}),t(c,{className:e.listItemText,primary:t(f,{className:e.ownerLink,entityRef:r??"No Owner",hideIcon:!0})})]}),d.map(({name:h,value:p,trend:n},I)=>i(a,{disableGutters:!0,className:e.listItem,children:[t(l,{title:"The most recent pass rate.",children:i(m,{className:e.listItemIcon,children:[n===s.UP&&t(T,{color:"inherit",fontSize:"small"}),n===s.DOWN&&t(L,{color:"inherit",fontSize:"small"}),n===s.FLAT&&t(g,{color:"inherit",fontSize:"small"})]})}),t(c,{className:e.listItemText,primary:i(o,{variant:"body2",color:"textPrimary",children:[h??"Latest Pass Rate",": ",i("b",{children:[Math.round(p),"%"]})]})})]},I))]})};export{S as PassRateMetadata};
|
|
2
2
|
//# sourceMappingURL=PassRateMetadata.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{RoutingPageBUI as r}from"./RoutingPageBUI.esm.js";const g=o=>t(r,{...o});export{g as RoutingPage};
|
|
2
2
|
//# sourceMappingURL=RoutingPage.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{RoutingPageWrapperBUI as i}from"./RoutingPageWrapperBUI.esm.js";const o=({title:r,children:t})=>e(i,{title:r,children:t});export{o as RoutingPageWrapper};
|
|
2
2
|
//# sourceMappingURL=RoutingPageWrapper.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import"@backstage/core-components";import"@backstage/core-plugin-api";import{makeStyles as t}from"@material-ui/core";import"react-router-dom";import"../../routes.esm.js";t(o=>({breadcrumbs:{marginBottom:o.spacing(1),color:o.page.fontColor,fontSize:o.typography.body2.fontSize},link:{color:"inherit"},endText:{fontWeight:"bold"}}));
|
|
2
2
|
//# sourceMappingURL=Breadcrumbs.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"react/jsx-runtime";import"@backstage/core-components";import"@backstage/core-plugin-api";import{makeStyles as o}from"@material-ui/core";import"@material-ui/icons/InfoOutlined";import"@material-ui/icons/MenuBook";import"react";import"react-router-dom";import"../../routes.esm.js";import"./Breadcrumbs.esm.js";import"./SoundcheckHeaderContext.esm.js";o(i=>({subtitle:{maxWidth:"75%",marginTop:i.spacing(.5),whiteSpace:"pre-line"},docLink:{display:"flex",alignItems:"center",marginTop:i.spacing(.5),marginBottom:i.spacing(0),width:"fit-content",fontSize:i.typography.body2.fontSize,color:"inherit"},descriptionIcon:{marginRight:i.spacing(.25)},headerContent:{color:i.page.fontColor},link:{},button:{textTransform:"none",marginRight:i.spacing(2),color:i.page.fontColor},icon:{paddingRight:i.spacing(1)},title:{},breadcrumbs:{}}),{name:"SoundcheckHeader"});
|
|
2
2
|
//# sourceMappingURL=SoundcheckHeader.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as t,Fragment as k}from"react/jsx-runtime";import{useRouteRef as e,useApi as b,featureFlagsApiRef as S}from"@backstage/core-plugin-api";import{usePermission as v}from"@backstage/plugin-permission-react";import{Header as x,ButtonLink as y}from"@backstage/ui";import{RiCheckDoubleLine as P,RiSettings2Line as A}from"@remixicon/react";import{soundcheckCollectorReadPermission as C}from"@spotify/backstage-plugin-soundcheck-common";import{rootRouteRef as w,tracksPageRouteRef as H,checksPageRouteRef as I,campaignsPageRouteRef as L,integrationsPageRouteRef as F,overviewRouteRef as T,techHealthRouteRef as B,techInsightsPageRouteRef as j}from"../../routes.esm.js";const z=()=>{const c=e(w)(),o=e(H)(),s=e(I)(),n=e(L)(),h=e(F)(),l=e(T)(),f=e(B)(),m=e(j)(),i=b(S),r=i.getRegisteredFlags(),g=!r.find(a=>a.name==="soundcheck-enable-campaigns")||i.isActive("soundcheck-enable-campaigns"),{loading:d,allowed:u}=v({permission:C}),R=(!r.find(a=>a.name==="soundcheck-enable-collectors")||i.isActive("soundcheck-enable-collectors"))&&!d&&u,p=[{id:"tech-insights",label:"Tech Insights",href:m,matchStrategy:"prefix"},{id:"checks",label:"Checks",href:s,matchStrategy:"prefix"},{id:"tracks",label:"Tracks",href:o,matchStrategy:"prefix"},...g?[{id:"campaigns",label:"Campaigns",href:n,matchStrategy:"prefix"}]:[],...R?[{id:"integrations",label:"Integrations",href:h,matchStrategy:"prefix"}]:[],{id:"classic-overview",label:"Classic Overview",href:l,matchStrategy:"exact"},{id:"tech-health",label:"Tech Health",href:f,matchStrategy:"exact"}];return t(x,{title:"Soundcheck",icon:t(P,{size:18}),titleLink:c,tabs:p,customActions:t(k,{children:t(y,{href:"/settings",variant:"secondary",iconStart:t(A,{})})})})};export{z as SoundcheckHeaderBUI};
|
|
2
2
|
//# sourceMappingURL=SoundcheckHeaderBUI.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{useContext as h,useEffect as k}from"react";import{SoundcheckHeaderContext as
|
|
1
|
+
import{useContext as h,useEffect as k}from"react";import{SoundcheckHeaderContext as D}from"./SoundcheckHeaderContext.esm.js";const R=({title:t,description:e,docLink:i,customSubtitle:o,sectionRight:c})=>{const{updateTitle:u,title:s,updateDescription:d,description:n,docLink:p,updateDocLink:r,customSubtitle:a,updateCustomSubtitle:l,sectionRight:m,updateSectionRight:f,setDefaultTitle:S}=h(D);k(()=>{t?s!==t&&u(t):S(),n!==e&&d(e),p!==i&&r(i),a!==o&&l(o),m!==c&&f(c)},[t,e,u,d,s,n,p,i,r,a,l,o,m,c,f,S])};export{R as useHeader};
|
|
2
2
|
//# sourceMappingURL=useHeader.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as i,Fragment as z,jsx as n}from"react/jsx-runtime";import{makeStyles as S,IconButton as N,Menu as g,MenuItem as o,ListItemIcon as c,ListItemText as l}from"@material-ui/core";import k from"@material-ui/icons/Archive";import x from"@material-ui/icons/Delete";import C from"@material-ui/icons/Edit";import v from"@material-ui/icons/MoreVert";import b from"@material-ui/icons/OpenInBrowser";import E from"@material-ui/icons/Refresh";import L from"@material-ui/icons/SaveAlt";import{useState as
|
|
1
|
+
import{jsxs as i,Fragment as z,jsx as n}from"react/jsx-runtime";import{makeStyles as S,IconButton as N,Menu as g,MenuItem as o,ListItemIcon as c,ListItemText as l}from"@material-ui/core";import k from"@material-ui/icons/Archive";import x from"@material-ui/icons/Delete";import C from"@material-ui/icons/Edit";import v from"@material-ui/icons/MoreVert";import b from"@material-ui/icons/OpenInBrowser";import E from"@material-ui/icons/Refresh";import L from"@material-ui/icons/SaveAlt";import{useState as A}from"react";const M=S(t=>({menuList:{backgroundColor:t.palette.background.paper,color:t.palette.text.primary},menuIcon:{color:t.palette.text.primary},menuIconSize:{minWidth:t.spacing(4)}})),w=({handleDelete:t,handleArchive:s,handleView:d,handleEdit:u,handleExport:h,handleRecertify:p})=>{const r=M(),[f,y]=A(null),m=!!f,I=e=>{e.stopPropagation(),y(e.currentTarget)},a=e=>{e.stopPropagation(),y(null)};return i(z,{children:[n(N,{"aria-label":"summary-card-actions",id:"summary-card-action-menu-button","aria-controls":m?"summary-card-action-menu":void 0,"aria-expanded":m?"true":void 0,"aria-haspopup":"true",onClick:I,children:n(v,{})}),i(g,{id:"summary-card-action-menu",anchorEl:f,open:m,onClose:a,getContentAnchorEl:null,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"right"},MenuListProps:{"aria-labelledby":"summary-card-action-menu-button",className:r.menuList},children:[d&&i(o,{"data-testid":"summary-card-action-view",onClick:e=>{d(e),a(e)},children:[n(c,{className:r.menuIconSize,children:n(b,{fontSize:"small",color:"inherit",className:r.menuIcon})}),n(l,{children:"View"})]}),u&&i(o,{"data-testid":"summary-card-action-edit",onClick:e=>{u(e),a(e)},children:[n(c,{className:r.menuIconSize,children:n(C,{fontSize:"small",color:"inherit",className:r.menuIcon})}),n(l,{children:"Edit"})]}),h&&i(o,{"data-testid":"summary-card-action-export",onClick:e=>{h(e),a(e)},children:[n(c,{className:r.menuIconSize,children:n(L,{fontSize:"small",color:"inherit",className:r.menuIcon})}),n(l,{children:"Export"})]}),p&&i(o,{"data-testid":"summary-card-action-recertify",onClick:e=>{p(e),a(e)},children:[n(c,{className:r.menuIconSize,children:n(E,{fontSize:"small",color:"inherit",className:r.menuIcon})}),n(l,{children:"Recertify"})]}),s&&i(o,{"data-testid":"summary-card-action-archive",onClick:e=>{s(e),a(e)},children:[n(c,{className:r.menuIconSize,children:n(k,{fontSize:"small",color:"inherit",className:r.menuIcon})}),n(l,{children:"Archive"})]}),t&&i(o,{"data-testid":"summary-card-action-delete",onClick:e=>{t(e),a(e)},children:[n(c,{className:r.menuIconSize,children:n(x,{fontSize:"small",color:"inherit",className:r.menuIcon})}),n(l,{children:"Delete"})]})]})]})};export{w as SummaryCardActionsMenu};
|
|
2
2
|
//# sourceMappingURL=SummaryCardActionsMenu.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as u,jsx as i}from"react/jsx-runtime";import{useApi as h}from"@backstage/core-plugin-api";import{entityPresentationApiRef as g}from"@backstage/plugin-catalog-react";import{Row as R,
|
|
1
|
+
import{jsxs as u,jsx as i}from"react/jsx-runtime";import{useApi as h}from"@backstage/core-plugin-api";import{entityPresentationApiRef as g}from"@backstage/plugin-catalog-react";import{Row as R,CellText as k,CellProfile as y}from"@backstage/ui";import{useNavigate as A}from"react-router-dom";import{CustomCell as w}from"../CustomCell/CustomCell.esm.js";import{DescriptionCell as x}from"../DescriptionCell/DescriptionCell.esm.js";import{SimpleMenu as P}from"../Menus/SimpleMenu.esm.js";import"@backstage/plugin-permission-react";import"@remixicon/react";import"@spotify/backstage-plugin-soundcheck-common";import"react";import"@backstage/catalog-model";import"@tanstack/react-query";import"../../api.esm.js";import"../../hooks/graphqlKeys.esm.js";import"../../hooks/useSoundcheckAlert.esm.js";import"../../hooks/useConfirmationModal.esm.js";import"react-use/lib/useLocalStorage";import"../../routes.esm.js";import"js-yaml";import"lodash";import"../../contexts/TrackFormContext.esm.js";import"../../contexts/CheckFormContext.esm.js";import"../../contexts/CampaignFormContext.esm.js";import"../../contexts/UserProvider.esm.js";import"uuid";import"../CampaignsPage/CampaignListPage/useArchiveConfirmationModal.esm.js";const T=({ownerEntityRef:r,href:t,profileImageSrc:l,cells:c,menuActions:e,name:m,description:s,documentationURL:a})=>{const f=h(g),p=r?f.forEntity(r):void 0,n=A();return u(R,{onAction:()=>t&&n(t),children:[i(x,{title:m,description:s,onClick:()=>t&&n(t)}),c.map((o,d)=>i(k,{title:o.title,leadingIcon:o.icon,onClick:C=>{o.onClick&&(C.stopPropagation(),o.onClick())}},`cell-${d}`)),i(y,{name:p?.snapshot.primaryTitle,src:l??p?.snapshot.primaryTitle}),i(w,{onClick:o=>o.stopPropagation(),children:i(P,{label:`${m} actions`,disabled:!e?.length,placement:"left top",menuActions:e??[],documentationURL:a,isHeaderMenu:!1})})]})};export{T as TableRowWithOwner};
|
|
2
2
|
//# sourceMappingURL=TableRowWithOwner.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as r,jsx as e}from"react/jsx-runtime";import{DismissableBanner as p,TabbedLayout as i}from"@backstage/core-components";import{useApi as m,featureFlagsApiRef as n}from"@backstage/core-plugin-api";import{makeStyles as s,Typography as c,Box as d}from"@material-ui/core";import{Routes as h,Route as u}from"react-router-dom";import{useLCPReporting as f}from"../../hooks/useLCPReporting.esm.js";import
|
|
1
|
+
import{jsxs as r,jsx as e}from"react/jsx-runtime";import{DismissableBanner as p,TabbedLayout as i}from"@backstage/core-components";import{useApi as m,featureFlagsApiRef as n}from"@backstage/core-plugin-api";import{makeStyles as s,Typography as c,Box as d}from"@material-ui/core";import{Routes as h,Route as u}from"react-router-dom";import{useLCPReporting as f}from"../../hooks/useLCPReporting.esm.js";import{TechHealthSummary as g}from"../TechHealthSummary/TechHealthSummary.esm.js";import"../SoundcheckMarkdownContent/SoundcheckMarkdownContentDeprecated.esm.js";import"react";import"react-markdown";import"rehype-raw";import"remark-gfm";import"../SoundcheckMarkdownContent/SoundcheckMarkdownContentBUI.esm.js";import"../TechHealthTabs/PassRateTabStyles.esm.js";import"../StyledTooltip/StyledTooltip.esm.js";import"../TechHealthTabs/OwnerColumn.esm.js";import{TrackResultsTab as b}from"../TechHealthTabs/TrackResultsTab/TrackResultsTab.esm.js";import{EntityResultsTab as x}from"../TechHealthTabs/EntityResultsTab/EntityResultsTab.esm.js";import{GroupResultsTab as R}from"../TechHealthTabs/GroupResultsTab/GroupResultsTab.esm.js";import{CampaignResultsTab as T}from"../TechHealthTabs/CampaignResultsTab/CampaignResultsTab.esm.js";import{CheckResultsTab as k}from"../TechHealthTabs/CheckResultsTab/CheckResultsTab.esm.js";import"./Filters/types.esm.js";import"./Filters/FacetFilter.esm.js";import{FilterProvider as y}from"./Filters/FilterProvider.esm.js";import{Filters as C}from"./Filters/Filters.esm.js";import"./Filters/FiltersHeader.esm.js";import"./Filters/FiltersSection.esm.js";import"@backstage/catalog-model";import"lodash";import"../../contexts/TrackFormContext.esm.js";import"../../contexts/CheckFormContext.esm.js";import"../../contexts/CampaignFormContext.esm.js";import"../../contexts/UserProvider.esm.js";import"@tanstack/react-query";import"../../api.esm.js";import"../../hooks/graphqlKeys.esm.js";import"@backstage/plugin-catalog-react";import"@spotify/backstage-plugin-soundcheck-common";import"../../hooks/useSoundcheckAlert.esm.js";import"../../hooks/useConfirmationModal.esm.js";import"react-use/lib/useLocalStorage";const v=s(t=>({container:{display:"flex",margin:"-24px",backgroundColor:t.palette.background.paper,borderTop:`1px solid ${t.palette.border}`,flex:1},fixedColumn:{width:"300px",flex:"none",borderRight:`1px solid ${t.palette.divider}`},flexibleColumn:{display:"flex",flexDirection:"column",flex:1,backgroundColor:t.palette.background.paper,height:"100%",maxWidth:"100%"},pageLayout:{display:"flex",flexDirection:"column",flex:"1 1 0%",backgroundColor:t.palette.background.default,"& > article":{display:"flex",flexDirection:"column",flex:"1 1 auto",borderTop:`1px solid ${t.palette.border}`,padding:`${t.spacing(3)}px !important`}},warning:{margin:"0 -24px"}})),w=()=>{const t=v(),o=m(n),a=!o.getRegisteredFlags().find(l=>l.name==="soundcheck-enable-campaigns")||o.isActive("soundcheck-enable-campaigns");return f({routeName:"soundcheck-tech-health",additionalAttributes:{campaignsEnabled:a.toString()}}),r(y,{children:[e("div",{className:t.warning,children:e(p,{id:"sunset-tech-health-banner",variant:"warning",message:e(c,{variant:"body2",children:"The Tech Health page will be retired in an upcoming release. Please use the new Tech Insights page for continued visibility into health data."})})}),r("div",{className:t.container,children:[e("div",{className:t.fixedColumn,children:e(C,{})}),e("div",{className:t.flexibleColumn,children:e(d,{className:t.pageLayout,"aria-label":"tech health tabs",children:e(h,{children:e(u,{path:"/*",element:r(i,{children:[e(i.Route,{title:"Summary",path:"/",children:e(g,{})}),a&&e(i.Route,{title:"Campaigns",path:"/campaigns",children:e(T,{})}),e(i.Route,{title:"Checks",path:"/checks",children:e(k,{})}),e(i.Route,{title:"Tracks",path:"/tracks",children:e(b,{})}),e(i.Route,{title:"Entities",path:"/entities",children:e(x,{})}),e(i.Route,{title:"Teams",path:"/teams",children:e(R,{})})]})})})})})]})]})};export{w as TechHealth};
|
|
2
2
|
//# sourceMappingURL=TechHealth.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsxs as o,jsx as e}from"react/jsx-runtime";import{Grid as s,Button as I,Menu as w,MenuItem as z,ListItemIcon as M,ListItemText as N}from"@material-ui/core";import{makeStyles as E}from"@material-ui/core/styles";import G from"@material-ui/icons/Apps";import P from"@material-ui/icons/GridOn";import V from"@material-ui/icons/KeyboardArrowDown";import j from"@material-ui/icons/Reorder";import{ToggleButtonGroup as R,ToggleButton as h}from"@material-ui/lab";import{useRef as A,useState as u,useEffect as D}from"react";import{CSVLink as O}from"react-csv";import{SearchBar as W}from"../SearchBar/SearchBar.esm.js";import{ViewMode as g}from"./techHealthTabUtils.esm.js";const _=E(r=>({header:{padding:r.spacing(0,0,1),display:"flex"},headerButtons:{display:"flex",gap:r.spacing(1),flexWrap:"nowrap",justifyContent:"end",alignItems:"end"},exportButton:{height:"40px",width:"112px"},csvLink:{display:"none"},menuIconSize:{minWidth:r.spacing(4),color:r.palette.text.primary},menuList:{backgroundColor:r.palette.background.paper,color:r.palette.text.primary}})),F=({viewMode:r,setViewMode:f,isLoading:c,searchTerm:x,setSearchTerm:v,searchPlaceholder:b,fetchCsvData:
|
|
1
|
+
import{jsxs as o,jsx as e}from"react/jsx-runtime";import{Grid as s,Button as I,Menu as w,MenuItem as z,ListItemIcon as M,ListItemText as N}from"@material-ui/core";import{makeStyles as E}from"@material-ui/core/styles";import G from"@material-ui/icons/Apps";import P from"@material-ui/icons/GridOn";import V from"@material-ui/icons/KeyboardArrowDown";import j from"@material-ui/icons/Reorder";import{ToggleButtonGroup as R,ToggleButton as h}from"@material-ui/lab";import{useRef as A,useState as u,useEffect as D}from"react";import{CSVLink as O}from"react-csv";import{SearchBar as W}from"../SearchBar/SearchBar.esm.js";import{ViewMode as g}from"./techHealthTabUtils.esm.js";const _=E(r=>({header:{padding:r.spacing(0,0,1),display:"flex"},headerButtons:{display:"flex",gap:r.spacing(1),flexWrap:"nowrap",justifyContent:"end",alignItems:"end"},exportButton:{height:"40px",width:"112px"},csvLink:{display:"none"},menuIconSize:{minWidth:r.spacing(4),color:r.palette.text.primary},menuList:{backgroundColor:r.palette.background.paper,color:r.palette.text.primary}})),F=({viewMode:r,setViewMode:f,isLoading:c,searchTerm:x,setSearchTerm:v,searchPlaceholder:b,fetchCsvData:S,csvFilename:k})=>{const t=_(),m=A(),B=(i,p)=>{p!==null&&f(p)},[d,n]=u(null),[a,C]=u([]),l=!!d,L=i=>{n(i.currentTarget)},T=()=>{n(null)},y=async()=>{n(null);const i=await S();C(i)};return D(()=>{a.length&&m?.current?.link.click()},[a]),o(s,{container:!0,spacing:2,className:t.header,children:[e(s,{item:!0,xs:6,children:e(W,{searchTerm:x,setSearchTerm:v,disabled:c,placeholder:b||"Search",variant:"outlined",size:"small"})}),o(s,{item:!0,xs:6,className:t.headerButtons,children:[e(I,{id:"export-button",className:t.exportButton,disabled:c,variant:"contained",color:"primary","aria-controls":l?"export-menu":void 0,"aria-haspopup":"true","aria-expanded":l?"true":void 0,onClick:L,endIcon:e(V,{}),children:"Export"}),e(O,{data:a,filename:k,className:t.csvLink,ref:m,target:"_blank"}),e(w,{id:"export-menu",anchorEl:d,getContentAnchorEl:null,open:l,onClose:T,MenuListProps:{"aria-labelledby":"export-button",disablePadding:!0,className:t.menuList},anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:o(z,{onClick:y,children:[e(M,{color:"inherit",className:t.menuIconSize,children:e(P,{fontSize:"small"})}),e(N,{children:"CSV"})]})}),o(R,{size:"small",value:r,exclusive:!0,onChange:B,children:[e(h,{value:g.TABLE,title:"Table view",children:e(j,{color:"inherit"})}),e(h,{value:g.GRID,title:"Grid view",children:e(G,{color:"inherit"})})]})]})]})};export{F as PassRateTabHeader};
|
|
2
2
|
//# sourceMappingURL=PassRateTabHeader.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as o}from"react/jsx-runtime";import{TechInsightsPageBUI as s}from"./TechInsightsPageBUI.esm.js";const t=()=>o(s,{});export{t as TechInsightsPage};
|
|
2
2
|
//# sourceMappingURL=TechInsightsPage.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as a,jsxs as x,Fragment as
|
|
1
|
+
import{jsx as a,jsxs as x,Fragment as ut}from"react/jsx-runtime";import{useApi as gt,useRouteRef as X}from"@backstage/core-plugin-api";import{entityPresentationApiRef as ft}from"@backstage/plugin-catalog-react";import{Box as U,HeaderPage as ht,Flex as kt,SearchField as yt,Container as Tt}from"@backstage/ui";import{makeStyles as St,LinearProgress as Ct}from"@material-ui/core";import{isEmpty as Et}from"lodash";import{useState as _,useMemo as i,useCallback as wt,useEffect as Rt}from"react";import{useSearchParams as Lt,useNavigate as vt}from"react-router-dom";import bt from"react-use/lib/useDebounce";import"@backstage/catalog-model";import"@tanstack/react-query";import"../../api.esm.js";import"../../hooks/graphqlKeys.esm.js";import"@spotify/backstage-plugin-soundcheck-common";import"../../hooks/useSoundcheckAlert.esm.js";import"../../hooks/useConfirmationModal.esm.js";import{useSortTableLocalStorage as It}from"../../hooks/useSortTableLocalStorage.esm.js";import{useBatchedHierarchicalTrackStatuses as Pt}from"../../hooks/heirarchy/useBatchedHierarchicalTrackStatuses.esm.js";import{useGroupHierarchy as Bt}from"../../hooks/heirarchy/useGroupHierarchy.esm.js";import{useTracksApplicableToGroup as At}from"../../hooks/tracks/useTracksApplicableToGroup.esm.js";import{useLCPReporting as xt}from"../../hooks/useLCPReporting.esm.js";import{useLoadTimeReporting as Ut}from"../../hooks/useLoadTimeReporting.esm.js";import{trackExplorerRouteRef as Mt,campaignExplorerRouteRef as $t}from"../../routes.esm.js";import{getAllOwnedEntityCount as Gt}from"../../utils/getAllOwnedEntityCount.esm.js";import{getEntitiesBucket as Nt,getTracksBucket as Dt}from"../../utils/helpers.esm.js";import{showTrack as Ft}from"../../utils/tracks.esm.js";import"../EmptyState/EmptyState.esm.js";import{EmptyStateBUI as Ht}from"../EmptyState/EmptyStateBUI.esm.js";import"@backstage/plugin-permission-react";import"@remixicon/react";import{TechInsightsGroupSelector as Ot}from"../TechInsightsGroupSelector/TechInsightsGroupSelector.esm.js";import{SummaryTilesBUI as jt}from"./SummaryTilesBUI.esm.js";import{TechInsightsTableBUI as Vt}from"./TechInsightsTableBUI.esm.js";const zt=St(()=>({container:{marginBottom:"var(--bui-space-12)"}})),Wt=()=>{const Y=zt(),[y,Z]=Lt(),r=y.get("group")||"",[l,tt]=_(y.get("search")||""),[g,et]=_(""),M=i(()=>({routeName:"soundcheck-tech-insights",additionalAttributes:{group:r||"",tracksSearch:g||""}}),[r,g]),{reportContentLoaded:$}=Ut({...M,enabled:!!r}),{reporter:rt}=xt(M),G=vt(),T=gt(ft),{order:ot,orderBy:at,handleSort:it}=It({localStoragePrefix:"soundcheck-tech-insights",defaultSortBy:"entities",defaultDirection:"desc"});bt(()=>{et(l);const t=new URLSearchParams(y.toString());l?t.set("search",l):t.delete("search"),Z(t,{replace:!0})},500,[l]);const{tracks:S,campaigns:N,counts:C,isLoading:f,error:E,activeTrackCount:w}=At(r,{},{enabled:!!r}),p=S.filter(t=>t.type==="campaign"),R=S.filter(t=>t.type!=="campaign"),D=p.filter(t=>{const e=g.toLowerCase(),s=(t.ownerEntityRef?T.forEntity(t.ownerEntityRef):void 0)?.snapshot.primaryTitle?.toLowerCase()||"";return e===""||t.name.toLowerCase().includes(e)||t.ownerEntityRef?.toLowerCase().includes(e)||s.includes(e)}),F=R.filter(t=>{const e=g.toLowerCase(),s=(t.ownerEntityRef?T.forEntity(t.ownerEntityRef):void 0)?.snapshot.primaryTitle?.toLowerCase()||"";return e===""||t.name.toLowerCase().includes(e)||t.ownerEntityRef?.toLowerCase().includes(e)||s.includes(e)}),L=i(()=>[...D,...F],[D,F]),m=i(()=>[...p.map(t=>t.id),...R.map(t=>t.id)],[p,R]),{data:v,isLoading:nt,error:st,progress:o}=Pt({trackIds:m,groupRef:r||"",skip:!r||m.length===0}),{data:H,isLoading:h}=Bt(r,{includeParent:!0}),b=i(()=>{const t=new Map;return Array.isArray(v)&&v.forEach(e=>{e&&e.trackId&&t.set(e.trackId,e)}),t},[v]),ct=i(()=>{const t=new Map;return Array.isArray(C)&&C.forEach(e=>{e&&e.id&&t.set(e.id,e.applicableEntityCount)}),t},[C]),O=f&&!E&&!!r,j=E||st,I=m.length>0&&nt&&!j&&!!r,V=i(()=>({totalActiveTracksCampaigns:w}),[w]),z=i(()=>{if(I)return{numTeams:void 0,avgCompliance:void 0,totalCampaigns:void 0,totalTracks:void 0};let t=0,e=0,s=0,u=0;const n=new Set;return L.forEach(k=>{const c=b.get(k.id);if(c){c.status&&typeof c.status.allPassPercentage=="number"&&(t+=c.status.allPassPercentage,e++),c.groupRef&&n.add(c.groupRef);const B=[c];for(;B.length>0;){const dt=B.pop();for(const A of dt.children)n.has(A.groupRef)||(n.add(A.groupRef),B.push(A))}}Ft(c?.status)&&(k.type==="campaign"?s++:u++)}),{numTeams:n.size,avgCompliance:e>0?Math.round(t/e):0,totalCampaigns:s,totalTracks:u}},[L,b,I]),d=i(()=>{if(h)return{numEntities:void 0};const t=H?.[r];return{numEntities:Gt(t)}},[H,h,r]),mt=i(()=>({...V,...z,...d}),[V,z,d]),W=X(Mt),q=X($t),lt=wt(t=>{if(!r)return;const e=new URLSearchParams;e.set("group",r),e.set("node",r);const s=p.find(({id:n})=>n===t);let u=W({trackId:t});if(s){const n=N?.edges.find(({node:k})=>k.track.id===t)?.node.id;n&&(u=q({campaignId:n}))}G(`${u}?${e.toString()}`)},[r,G,p,N,q,W]),J=r?T.forEntity(r).snapshot.primaryTitle:void 0,P=i(()=>!o||o.totalTracks===0?0:o.loadedTracks/o.totalTracks*100,[o]),K=f&&r&&!E||I&&o&&o.totalTracks>0,Q=rt?.getLCPValue();Rt(()=>{if(!h&&!f&&(P===100||m.length===0)){const t=d.numEntities??0,e=m.length;$({lcp:Q,numberOfEntities:d.numEntities,entitiesBucket:Nt(t),numberOfTracks:m.length,tracksBucket:Dt(e)})}},[h,f,P,m.length,d.numEntities,$,Q]);const pt=a(jt,{summaryStats:mt,isLoading:O});return j?a(U,{mt:"6",children:a(Ht,{title:"No Tech Insights Data",body:"There was an error loading Tech Insights data."})}):x(ut,{children:[a(ht,{title:`${J?`${J}'s `:""}Tech Insights`,customActions:x(kt,{align:"center",gap:"3",children:[a(Ot,{hideSelected:!0}),a(yt,{isDisabled:Et(S),value:l,onChange:tt,placeholder:"Search tracks or campaigns",style:{minWidth:250},"aria-label":"Search"})]})}),x(Tt,{className:Y.container,children:[a(U,{style:{marginTop:0},children:pt}),K&&a(U,{style:{marginBottom:16},children:a(Ct,{variant:o&&o.totalTracks>0?"determinate":"indeterminate",value:o&&o.totalTracks>0?P:void 0,"data-testid":"batch-loading-indicator"})}),a(Vt,{tracks:L,trackStatusMap:b,trackCountsMap:ct,sortColumn:at,order:ot,handleSort:it,handleTrackClick:lt,isLoading:O||!!K,isSearch:!!l,activeTrackCount:w,hasGroupSelected:!!r})]})]})};export{Wt as TechInsightsPageBUI};
|
|
2
2
|
//# sourceMappingURL=TechInsightsPageBUI.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as r,jsxs as p,Fragment as A}from"react/jsx-runtime";import{useApi as $}from"@backstage/core-plugin-api";import{entityPresentationApiRef as j}from"@backstage/plugin-catalog-react";import{Table as D,TableHeader as F,Column as u,TableBody as H,Row as U,Flex as q,Box as
|
|
1
|
+
import{jsx as r,jsxs as p,Fragment as A}from"react/jsx-runtime";import{useApi as $}from"@backstage/core-plugin-api";import{entityPresentationApiRef as j}from"@backstage/plugin-catalog-react";import{Table as D,TableHeader as F,Column as u,TableBody as H,Row as U,Flex as q,Box as N,Text as G,CellText as x,CellProfile as O}from"@backstage/ui";import{makeStyles as Y}from"@material-ui/core";import{uniq as z,isEmpty as I,isNumber as v}from"lodash";import{useMemo as m}from"react";import{useProfileImages as J}from"../../hooks/catalog/useProfileImages.esm.js";import{getPercentage as y}from"../../utils/formatters.esm.js";import{showTrack as K}from"../../utils/tracks.esm.js";import{CustomCell as Q}from"../CustomCell/CustomCell.esm.js";import{DescriptionCell as V}from"../DescriptionCell/DescriptionCell.esm.js";import"../EmptyState/EmptyState.esm.js";import{EmptyStateBUI as W}from"../EmptyState/EmptyStateBUI.esm.js";import{EmptyStateNoTracks as B}from"../EmptyState/EmptyStateNoTracks.esm.js";import"@backstage/plugin-permission-react";import"@remixicon/react";import"@spotify/backstage-plugin-soundcheck-common";import"react-router-dom";import"../../routes.esm.js";import{LoadingTableSkeleton as L}from"../LoadingTableSkeleton/LoadingTableSkeleton.esm.js";import{StatusBar as X}from"../StatusBar/StatusBar.esm.js";const Z=Y(()=>({statusPercent:{width:"var(--bui-space-12)"},statusBar:{width:"100%"}})),_=({track:a,trackStatus:e,entitiesCount:h,handleTrackClick:w,profileImageMap:g})=>{const l=Z(),c=$(j).forEntity(a.ownerEntityRef),f=m(()=>a.levels.reduce((t,s)=>t+s.checks.length,0),[a.levels]),i=m(()=>(e?.passed??0)+(e?.failed??0)+(e?.warning??0)+(e?.error??0)+(e?.notReported??0)+(e?.exempt??0),[e]),k=m(()=>{let t;return e?.allPassPercentage!==null&&e?.allPassPercentage!==void 0?t=e.allPassPercentage:e&&(t=y(e.passed+e.exempt,i)),t},[e,i]),P=m(()=>y(e?.failed,i),[e,i]),C=m(()=>y(e?.warning,i),[e,i]),d=m(()=>y(e?.notReported,i),[e,i]),S=m(()=>y(e?.error,i),[e,i]),T=g[c.snapshot.entityRef];return p(U,{onAction:()=>{w(a.id)},children:[r(V,{title:a.name??a.id,description:a.description??"",onClick:()=>w(a.id)}),r(Q,{children:p(q,{align:"center",gap:"2",children:[r(N,{className:l.statusPercent,children:p(G,{children:[k,"%"]})}),r(N,{className:l.statusBar,children:r(X,{passedPercent:k,failedPercent:P,warningPercent:C,notReportedPercent:d,errorPercent:S})})]})}),r(x,{title:a.type==="campaign"?"Campaign":"Track"}),r(x,{title:v(f)?`${f} Check${f===1?"":"s"}`:"N/A"}),r(x,{title:v(h)?`${h} ${h===1?"Entity":"Entities"}`:"N/A"}),r(O,{name:c.snapshot.primaryTitle,src:T??c.snapshot.primaryTitle})]})},ee=({order:a,sortColumn:e,handleSort:h,handleTrackClick:w,tracks:g,trackStatusMap:l,trackCountsMap:c,isSearch:f,isLoading:i,activeTrackCount:k,hasGroupSelected:P})=>{const C=m(()=>[...g].filter(t=>K(l.get(t.id)?.status)).sort((t,s)=>{const b=l.get(t.id),M=l.get(s.id);let o,n;switch(e){case"name":o=t.name?.toLowerCase()||"",n=s.name?.toLowerCase()||"";break;case"type":o=t.type||"",n=s.type||"";break;case"owner":o=t.ownerEntityRef?.toLowerCase()||"",n=s.ownerEntityRef?.toLowerCase()||"";break;case"compliance":o=b?.status?.allPassPercentage??null,n=M?.status?.allPassPercentage??null;break;case"checks":o=t.levels.reduce((R,E)=>R+E.checks.length,0),n=s.levels.reduce((R,E)=>R+E.checks.length,0);break;case"entities":o=c.get(t.id)??0,n=c.get(s.id)??0;break;default:return 0}return typeof o=="number"&&typeof n=="number"?a==="asc"?o-n:n-o:typeof o=="number"&&n===null?-1:o===null&&typeof n=="number"?1:typeof o=="string"&&typeof n=="string"?a==="asc"?o.localeCompare(n):n.localeCompare(o):0}),[g,l,e,c,a]),d=m(()=>C.map(t=>{const s=l.get(t.id)?.status,b=c.get(t.id)??0;return{track:t,trackStatus:s,entitiesCount:b}}),[C,c,l]),S=z(d.map(t=>t.track.ownerEntityRef)),{profileImageMap:T}=J(S);return!i&&I(g)?P?f&&k>0?r(W,{title:"No tracks or campaigns found.",body:"Your current search term did not return any tracks or campaigns. Please try a different search term. "}):r(B,{title:k>0?"No applicable tracks found for the selected group":void 0}):r(B,{title:"Select a group or create a new track"}):p(A,{children:[p(D,{sortDescriptor:{column:e,direction:a==="asc"?"ascending":"descending"},onSortChange:t=>h(t.column),children:[p(F,{children:[r(u,{id:"name",allowsSorting:!0,isRowHeader:!0,style:{width:"43%"},children:"Name"}),r(u,{id:"compliance",allowsSorting:!0,style:{width:"12%"},children:"Compliance"}),r(u,{id:"type",allowsSorting:!0,style:{width:"10%"},children:"Type"}),r(u,{id:"checks",allowsSorting:!0,style:{width:"10%"},children:"Checks"}),r(u,{id:"entities",allowsSorting:!0,style:{width:"10%"},children:"Entities"}),r(u,{id:"owner",allowsSorting:!0,style:{width:"15%"},children:"Track Owner"})]}),r(H,{children:d.map(t=>r(_,{handleTrackClick:w,profileImageMap:T??{},...t},t.track.id))})]}),I(d)&&i&&r(L,{rowCount:10}),!I(d)&&i&&r(L,{rowCount:4})]})};export{ee as TechInsightsTableBUI};
|
|
2
2
|
//# sourceMappingURL=TechInsightsTableBUI.esm.js.map
|