@spotify/backstage-plugin-soundcheck 0.16.0 → 0.16.1

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.
Files changed (71) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/alpha.d.ts +60 -45
  3. package/dist/api.esm.js +1 -1
  4. package/dist/components/Badges/CampaignBadge.esm.js +1 -1
  5. package/dist/components/Badges/NoLevelBadge.esm.js +1 -1
  6. package/dist/components/Badges/PlaylistBadge.esm.js +1 -1
  7. package/dist/components/CampaignForm/Steps/CampaignDetailsStep/CampaignOwnerField.esm.js +1 -1
  8. package/dist/components/CertificationSidebar/CertificationSidebar.esm.js +1 -1
  9. package/dist/components/CertificationSidebar/Check.esm.js +1 -1
  10. package/dist/components/CertificationSidebar/CheckResultInputPopup.esm.js +2 -0
  11. package/dist/components/CertificationSidebar/CheckResultSummaryList.esm.js +1 -1
  12. package/dist/components/CertificationSidebar/ExemptionJustificationDialog.esm.js +2 -0
  13. package/dist/components/CertificationsPage/CertificationTabs.esm.js +1 -1
  14. package/dist/components/CertificationsPage/CertificationsPage.esm.js +1 -1
  15. package/dist/components/CheckDetails/CheckDetails.esm.js +1 -1
  16. package/dist/components/CheckDetails/FactTable.esm.js +1 -1
  17. package/dist/components/CheckDetails/JustificationDetails.esm.js +2 -0
  18. package/dist/components/CheckDetails/ResultStateBox.esm.js +1 -1
  19. package/dist/components/CheckDryRun/CheckDryRun.esm.js +1 -1
  20. package/dist/components/CheckForm/FormFields/CheckPathResolverInput.esm.js +1 -1
  21. package/dist/components/CheckForm/FormFields/CheckScheduleSection/ScheduleSection.esm.js +1 -1
  22. package/dist/components/CheckForm/FormFields/CheckTypeInput/CheckTypeInput.esm.js +2 -0
  23. package/dist/components/CheckForm/FormFields/TeamDetailsInput/TeamDetailsInput.esm.js +1 -1
  24. package/dist/components/CheckForm/Steps/CheckDetailsStep.esm.js +1 -1
  25. package/dist/components/CheckForm/Steps/CheckReviewStep.esm.js +1 -1
  26. package/dist/components/CheckForm/Steps/CheckRulesStep.esm.js +1 -1
  27. package/dist/components/CheckForm/useCheckForm.esm.js +1 -1
  28. package/dist/components/CheckForm/utils/checkFormUtils.esm.js +2 -2
  29. package/dist/components/CheckForm/utils/validation.esm.js +1 -1
  30. package/dist/components/CollectorPage/Configurators/AzureDevOps/NumberOfWorkItemsComponent.esm.js +1 -1
  31. package/dist/components/CollectorPage/Configurators/BigQuery/QueryFactDetailsComponent.esm.js +1 -1
  32. package/dist/components/CollectorPage/Configurators/Github/CodeScanningAlertsFactDetails.esm.js +2 -0
  33. package/dist/components/CollectorPage/Configurators/Github/DependabotAlertsFactDetails.esm.js +2 -0
  34. package/dist/components/CollectorPage/Configurators/Github/GithubConfigurator.esm.js +1 -1
  35. package/dist/components/CollectorPage/Configurators/Github/SecretScanningAlertsFactDetails.esm.js +2 -0
  36. package/dist/components/CollectorPage/Configurators/Github/SecurityAdvisoriesFactDetails.esm.js +2 -0
  37. package/dist/components/CollectorPage/Configurators/Github/types.esm.js +2 -0
  38. package/dist/components/CollectorPage/Configurators/Github/utils.esm.js +1 -1
  39. package/dist/components/CollectorPage/Configurators/Github/validation.esm.js +2 -0
  40. package/dist/components/CollectorPage/Configurators/HTTP/HttpRequestComponent.esm.js +1 -1
  41. package/dist/components/CollectorPage/Configurators/HTTP/HttpStatusesInput.esm.js +1 -1
  42. package/dist/components/CollectorPage/Configurators/SCM/utils.esm.js +1 -1
  43. package/dist/components/EntityChip/EntityChip.esm.js +1 -1
  44. package/dist/components/FactExplorer/FactExplorer.esm.js +1 -1
  45. package/dist/components/Filter/EntityAutocompletePicker.esm.js +1 -1
  46. package/dist/components/FormControlledAutocomplete/FormControlledMultipleAutocomplete.esm.js +2 -0
  47. package/dist/components/FormControlledSelect/FormControlledSelect.esm.js +1 -1
  48. package/dist/components/GroupSelector/GroupSelector.esm.js +1 -1
  49. package/dist/components/OrgHealth/OrgHealthPage.esm.js +2 -0
  50. package/dist/components/OverviewPage/OverviewPageHeader.esm.js +1 -1
  51. package/dist/components/RoutingPage/RoutingPage.esm.js +1 -1
  52. package/dist/components/RuleResult/BranchResultComponent.esm.js +1 -1
  53. package/dist/components/TechHealth/Filters/FacetFilter.esm.js +1 -1
  54. package/dist/components/TechHealth/Filters/FilterProvider.esm.js +1 -1
  55. package/dist/components/TechHealthTabs/PassRateTabHeader.esm.js +1 -1
  56. package/dist/components/TrackForm/Steps/TrackDetailsStep/TrackBadgeTypeSelect/TrackBadgeTypeSelect.esm.js +1 -1
  57. package/dist/components/TrackForm/Steps/TrackDetailsStep/TrackOwnerSelect/TrackOwnerSelect.esm.js +1 -1
  58. package/dist/components/TracksPage/TracksPage.esm.js +1 -1
  59. package/dist/graphql/generated/index.esm.js +93 -54
  60. package/dist/hooks/certifications/useCertificationDetailsForTrack.esm.js +1 -1
  61. package/dist/hooks/checks/useSetManualResult.esm.js +2 -0
  62. package/dist/hooks/exemptions/useDeleteExemption.esm.js +2 -0
  63. package/dist/hooks/exemptions/useGetExemption.esm.js +2 -0
  64. package/dist/hooks/exemptions/useSetEntityExempt.esm.js +2 -0
  65. package/dist/hooks/facets/useFacetFilters.esm.js +1 -1
  66. package/dist/hooks/graphqlKeys.esm.js +1 -1
  67. package/dist/index.d.ts +0 -1
  68. package/dist/utils/export.esm.js +3 -3
  69. package/package.json +21 -21
  70. package/dist/components/CheckDetails/ExemptionDetails.esm.js +0 -2
  71. package/dist/components/CheckDryRun/checkDryRunUtils.esm.js +0 -2
@@ -1,2 +1,2 @@
1
- import{makeStyles as F,alpha as w,Box as i,Typography as z,Tooltip as L,Icon as N,IconButton as T,Chip as O,TextField as D,FormControlLabel as V,Checkbox as j}from"@material-ui/core";import B from"@material-ui/icons/ArrowDropDown";import A from"@material-ui/icons/ArrowDropUp";import H from"@material-ui/icons/CheckBox";import K from"@material-ui/icons/CheckBoxOutlineBlank";import W from"@material-ui/icons/HelpOutline";import{Autocomplete as $}from"@material-ui/lab";import{remove as q}from"lodash";import l,{useState as p,useEffect as J,useCallback as y,useMemo as M}from"react";import P from"../../Expand/Expand.esm.js";import{ListboxVirtualized as G}from"../../ListboxVirtualized/ListboxVirtualized.esm.js";import{useFilterContext as Q}from"./FilterProvider.esm.js";import{Facet as x,facetTooltips as C}from"./types.esm.js";const R=F(({palette:t,spacing:n})=>({header:{display:"flex",alignItems:"left",flexDirection:"row",cursor:"pointer",justifyContent:"space-between"},label:{display:"flex",alignItems:"center"},tooltipIcon:{display:"flex",alignItems:"center",justifyContent:"center",color:t.text.primary},chip:{maxWidth:"45%",textOverflow:"ellipsis",margin:n(.5,.5,.5,0),overflow:"hidden","& svg":{color:w(t.common.white,.7),"&:hover":{color:t.common.white}},backgroundColor:t.action.disabledBackground},autoCompleteInput:{"&& input":{margin:n(1,0,0,0),padding:`${n(0,1,1,1)} !important`,width:"100%",display:"flex",alignItems:"center",justifyContent:"center"},"&& button":{"&:hover":{backgroundColor:"transparent"}}},autoComplete:{margin:n(.5,0,1,0)},selectionLabel:{lineHeight:"1em"}})),U=({facet:t})=>{const n=R(),{getFacetOptions:k,getFacetOptionLabel:c,getSelectedFacetValues:a,setSelectedFacetValues:u}=Q(),[f,d]=p(!1),[v,h]=p(!1),[I,b]=p("");J(()=>{d(!!a(t)?.length)},[a,t]);const g=()=>{d(e=>!e)},E=e=>{(e.key==="Enter"||e.key===" ")&&g()},m=y(e=>{if(t===x.Entity&&e[e.length-1]){const o=e[e.length-1];if(!o.includes(":")||!o.includes("/")){h(!0),b("Custom entities require a valid kind and namespace such as: component:default/entity");return}}h(!1),b(""),u(t,e)},[t,u]),r=M(()=>a(t),[t,a]),S=y(e=>{const o=[...r];q(o,s=>s===e),m(o)},[r,m]);return l.createElement(i,null,l.createElement("div",{className:n.header,onClick:g,onKeyDown:E,role:"button",tabIndex:0},l.createElement("div",{className:n.label},l.createElement(i,null,l.createElement(z,{variant:"subtitle2"},t)),C[t]&&l.createElement(L,{title:C[t],className:n.tooltipIcon},l.createElement(N,null,l.createElement(W,{style:{fontSize:16,verticalAlign:"text-top"}})))),l.createElement(i,null,l.createElement(T,{size:"small",onKeyDown:E},f?l.createElement(A,{fontSize:"small"}):l.createElement(B,{fontSize:"small"})))),l.createElement(P,{visible:f},l.createElement(i,null,r.map(e=>l.createElement(O,{key:e,label:c(t,e),size:"small",className:n.chip,onDelete:()=>S(e),clickable:!1}))),l.createElement($,{className:n.autoComplete,disableCloseOnSelect:!0,fullWidth:!0,multiple:!0,freeSolo:t===x.Entity,popupIcon:null,renderTags:()=>null,options:k(t),getOptionLabel:e=>c(t,e),value:r,onChange:(e,o)=>m(o),ListboxComponent:G,ListboxProps:{itemHeight:50},renderInput:e=>l.createElement(D,{...e,className:n.autoCompleteInput,placeholder:`Search for ${t}`,error:v,helperText:I}),renderOption:(e,{selected:o})=>l.createElement(V,{onClick:s=>s.preventDefault(),control:l.createElement(j,{icon:l.createElement(K,{fontSize:"small"}),checkedIcon:l.createElement(H,{fontSize:"small"}),checked:o}),classes:{label:n.selectionLabel},label:c(t,e)})})))};export{U as FacetFilter};
1
+ import{makeStyles as F,alpha as w,Box as i,Typography as z,Tooltip as L,Icon as T,IconButton as N,Chip as O,TextField as D,FormControlLabel as V,Checkbox as j}from"@material-ui/core";import B from"@material-ui/icons/ArrowDropDown";import A from"@material-ui/icons/ArrowDropUp";import H from"@material-ui/icons/CheckBox";import K from"@material-ui/icons/CheckBoxOutlineBlank";import W from"@material-ui/icons/HelpOutline";import{Autocomplete as $}from"@material-ui/lab";import{remove as q}from"lodash";import l,{useState as p,useEffect as G,useCallback as y,useMemo as J}from"react";import M from"../../Expand/Expand.esm.js";import{ListboxVirtualized as P}from"../../ListboxVirtualized/ListboxVirtualized.esm.js";import{useFilterContext as Q}from"./FilterProvider.esm.js";import{Facet as x,facetTooltips as C}from"./types.esm.js";const R=F(({palette:t,spacing:n})=>({header:{display:"flex",alignItems:"left",flexDirection:"row",cursor:"pointer",justifyContent:"space-between"},label:{display:"flex",alignItems:"center"},tooltipIcon:{display:"flex",alignItems:"center",justifyContent:"center",color:t.text.primary},chip:{maxWidth:"45%",textOverflow:"ellipsis",margin:n(.5,.5,.5,0),overflow:"hidden","& svg":{color:w(t.common.white,.7),"&:hover":{color:t.common.white}},backgroundColor:t.action.disabledBackground},autoCompleteInput:{"&& input":{margin:n(1,0,0,0),padding:`${n(0,1,1,1)} !important`,width:"100%",display:"flex",alignItems:"center",justifyContent:"center"},"&& button":{"&:hover":{backgroundColor:"transparent"}}},autoComplete:{margin:n(.5,0,1,0)},selectionLabel:{lineHeight:"1em"}})),U=({facet:t})=>{const n=R(),{getFacetOptions:k,getFacetOptionLabel:c,getSelectedFacetValues:a,setSelectedFacetValues:u}=Q(),[f,d]=p(!1),[v,h]=p(!1),[I,b]=p("");G(()=>{d(!!a(t)?.length)},[a,t]);const g=()=>{d(e=>!e)},E=e=>{(e.key==="Enter"||e.key===" ")&&g()},m=y(e=>{if(t===x.Entity&&e[e.length-1]){const o=e[e.length-1];if(!o.includes(":")||!o.includes("/")){h(!0),b("Custom entities require a valid kind and namespace such as: component:default/entity");return}}h(!1),b(""),u(t,e)},[t,u]),r=J(()=>a(t),[t,a]),S=y(e=>{const o=[...r];q(o,s=>s===e),m(o)},[r,m]);return l.createElement(i,null,l.createElement("div",{className:n.header,onClick:g,onKeyDown:E,role:"button",tabIndex:0},l.createElement("div",{className:n.label},l.createElement(i,null,l.createElement(z,{variant:"subtitle2"},t)),C[t]&&l.createElement(L,{title:C[t],className:n.tooltipIcon},l.createElement(T,null,l.createElement(W,{style:{fontSize:16,verticalAlign:"text-top"}})))),l.createElement(i,null,l.createElement(N,{size:"small",onKeyDown:E},f?l.createElement(A,{fontSize:"small"}):l.createElement(B,{fontSize:"small"})))),l.createElement(M,{visible:f},l.createElement(i,null,r.map(e=>l.createElement(O,{key:e,label:c(t,e),size:"small",className:n.chip,onDelete:()=>S(e),clickable:!1}))),l.createElement($,{className:n.autoComplete,disableCloseOnSelect:!0,fullWidth:!0,multiple:!0,freeSolo:t===x.Entity,popupIcon:null,renderTags:()=>null,options:k(t),getOptionLabel:e=>c(t,e),value:r,onChange:(e,o)=>m(o),ListboxComponent:P,ListboxProps:{itemHeight:50},renderInput:e=>l.createElement(D,{...e,className:n.autoCompleteInput,placeholder:`Search for ${t}`,error:v,helperText:I}),renderOption:(e,{selected:o})=>l.createElement(V,{onClick:s=>s.preventDefault(),control:l.createElement(j,{icon:l.createElement(K,{fontSize:"small"}),checkedIcon:l.createElement(H,{fontSize:"small"}),checked:o}),classes:{label:n.selectionLabel},label:c(t,e)})})))};export{U as FacetFilter};
2
2
  //# sourceMappingURL=FacetFilter.esm.js.map
@@ -1,2 +1,2 @@
1
- import{parseEntityRef as L}from"@backstage/catalog-model";import{humanizeEntityRef as E}from"@backstage/plugin-catalog-react";import{createFilterOptions as U}from"@material-ui/lab/Autocomplete";import c,{createContext as h,useCallback as x,useMemo as R,useContext as S}from"react";import k from"react-use/lib/useLocalStorage";import{useLoggedInUser as A}from"../../../contexts/UserProvider.esm.js";import{useFacetFilters as C}from"../../../hooks/facets/useFacetFilters.esm.js";import{TechHealthLoading as N}from"../Loading/TechHealthLoading.esm.js";import{useFacetOptions as V}from"./useFacetOptions.esm.js";import{emptyFacetFilters as w,DEFAULT_NUMBER_OF_DAYS as I,mapFacetFiltersToFilter as T}from"./utils.esm.js";const m=h({facetOptionsLoading:!1,getFacetOptions:()=>[],getFacetOptionLabel:()=>"",facetFilters:w(),clearAllFilters:()=>{},getSelectedFacetValues:()=>[],setSelectedFacetValues:()=>{},numberOfDays:I,setNumberOfDays:()=>{},filter:{},loggedInUser:"Unknown"}),_=()=>S(m),F=f=>{const{userEntityRef:s,loading:u}=A(),{isLoading:n,facetOptions:r}=V(),[p]=k("soundcheck.overview.groupRef",null),{facetFilters:a,numberOfDays:o,setFacetFilter:d,getFacetFilter:g,clearFacetFilters:O,setNumberOfDays:y}=C(r,p??void 0),b=x(e=>r[e].map(({value:t})=>t),[r]),v=R(()=>T(r,a,o,s),[a,r,o,s]),D={facetOptionsLoading:n,getFacetOptions:b,getFacetOptionLabel:(e,t)=>{let l=r[e].find(i=>i.value===t)?.label;if(!l)try{const i=L(t);l=E(i)}catch{}return U(),l??t},facetFilters:a,clearAllFilters:O,getSelectedFacetValues:e=>g(e),setSelectedFacetValues:(e,t)=>{d(e,t)},numberOfDays:o,setNumberOfDays:y,filter:v??{},loggedInUser:"Unknown"};return n||u?c.createElement(N,null):c.createElement(m.Provider,{...f,value:D})};export{F as FilterProvider,F as default,_ as useFilterContext};
1
+ import{parseEntityRef as L}from"@backstage/catalog-model";import{humanizeEntityRef as E}from"@backstage/plugin-catalog-react";import{createFilterOptions as U}from"@material-ui/lab/Autocomplete";import c,{createContext as h,useCallback as x,useMemo as R,useContext as S}from"react";import k from"react-use/lib/useLocalStorage";import{useLoggedInUser as A}from"../../../contexts/UserProvider.esm.js";import{useFacetFilters as C}from"../../../hooks/facets/useFacetFilters.esm.js";import{TechHealthLoading as N}from"../Loading/TechHealthLoading.esm.js";import{useFacetOptions as V}from"./useFacetOptions.esm.js";import{emptyFacetFilters as w,DEFAULT_NUMBER_OF_DAYS as I,mapFacetFiltersToFilter as T}from"./utils.esm.js";const m=h({facetOptionsLoading:!1,getFacetOptions:()=>[],getFacetOptionLabel:()=>"",facetFilters:w(),clearAllFilters:()=>{},getSelectedFacetValues:()=>[],setSelectedFacetValues:()=>{},numberOfDays:I,setNumberOfDays:()=>{},filter:{},loggedInUser:"Unknown"}),_=()=>S(m),F=f=>{const{userEntityRef:s,loading:u}=A(),{isLoading:n,facetOptions:r}=V(),[p]=k("soundcheck.overview.groupRef",null),{facetFilters:a,numberOfDays:o,setFacetFilter:g,getFacetFilter:d,clearFacetFilters:O,setNumberOfDays:b}=C(r,p??void 0),y=x(e=>r[e].map(({value:t})=>t),[r]),v=R(()=>T(r,a,o,s),[a,r,o,s]),D={facetOptionsLoading:n,getFacetOptions:y,getFacetOptionLabel:(e,t)=>{let l=r[e].find(i=>i.value===t)?.label;if(!l)try{const i=L(t);l=E(i)}catch{}return U(),l??t},facetFilters:a,clearAllFilters:O,getSelectedFacetValues:e=>d(e),setSelectedFacetValues:(e,t)=>{g(e,t)},numberOfDays:o,setNumberOfDays:b,filter:v??{},loggedInUser:"Unknown"};return n||u?c.createElement(N,null):c.createElement(m.Provider,{...f,value:D})};export{F as FilterProvider,F as default,_ as useFilterContext};
2
2
  //# sourceMappingURL=FilterProvider.esm.js.map
@@ -1,2 +1,2 @@
1
- import{Grid as l,Button as B,Menu as I,MenuItem as L,ListItemIcon as w,ListItemText as z}from"@material-ui/core";import{makeStyles as M}from"@material-ui/core/styles";import N from"@material-ui/icons/Apps";import G from"@material-ui/icons/GridOn";import P from"@material-ui/icons/KeyboardArrowDown";import V from"@material-ui/icons/Reorder";import{ToggleButtonGroup as R,ToggleButton as d}from"@material-ui/lab";import e,{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 h}from"./techHealthTabUtils.esm.js";const _=M(t=>({header:{padding:t.spacing(0,0,1),display:"flex"},headerButtons:{display:"flex",gap:t.spacing(1),flexWrap:"nowrap",justifyContent:"end",alignItems:"end"},exportButton:{height:"40px",width:"112px"},csvLink:{display:"none"},menuIconSize:{minWidth:t.spacing(4),color:t.palette.text.primary},menuList:{backgroundColor:t.palette.background.paper,color:t.palette.text.primary}})),j=({viewMode:t,setViewMode:g,isLoading:m,searchTerm:f,setSearchTerm:E,searchPlaceholder:x,fetchCsvData:v,csvFilename:b})=>{const r=_(),c=A(),S=(a,p)=>{p!==null&&g(p)},[s,n]=u(null),[o,k]=u([]),i=!!s,C=a=>{n(a.currentTarget)},T=()=>{n(null)},y=async()=>{n(null);const a=await v();k(a)};return D(()=>{o.length&&c?.current?.link.click()},[o]),e.createElement(l,{container:!0,spacing:2,className:r.header},e.createElement(l,{item:!0,xs:6},e.createElement(W,{searchTerm:f,setSearchTerm:E,disabled:m,placeholder:x||"Search",variant:"outlined",size:"small"})),e.createElement(l,{item:!0,xs:6,className:r.headerButtons},e.createElement(B,{id:"export-button",className:r.exportButton,disabled:m,variant:"contained",color:"primary","aria-controls":i?"export-menu":void 0,"aria-haspopup":"true","aria-expanded":i?"true":void 0,onClick:C,endIcon:e.createElement(P,null)},"Export"),e.createElement(O,{data:o,filename:b,className:r.csvLink,ref:c,target:"_blank"}),e.createElement(I,{id:"export-menu",anchorEl:s,getContentAnchorEl:null,open:i,onClose:T,MenuListProps:{"aria-labelledby":"export-button",disablePadding:!0,className:r.menuList},anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}},e.createElement(L,{onClick:y},e.createElement(w,{color:"inherit",className:r.menuIconSize},e.createElement(G,{fontSize:"small"})),e.createElement(z,null,"CSV"))),e.createElement(R,{size:"small",value:t,exclusive:!0,onChange:S},e.createElement(d,{value:h.TABLE,title:"Table view"},e.createElement(V,{color:"inherit"})),e.createElement(d,{value:h.GRID,title:"Grid view"},e.createElement(N,{color:"inherit"})))))};export{j as PassRateTabHeader};
1
+ import{Grid as l,Button as B,Menu as I,MenuItem as L,ListItemIcon as w,ListItemText as z}from"@material-ui/core";import{makeStyles as M}from"@material-ui/core/styles";import N from"@material-ui/icons/Apps";import G from"@material-ui/icons/GridOn";import P from"@material-ui/icons/KeyboardArrowDown";import V from"@material-ui/icons/Reorder";import{ToggleButtonGroup as R,ToggleButton as d}from"@material-ui/lab";import e,{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 h}from"./techHealthTabUtils.esm.js";const _=M(t=>({header:{padding:t.spacing(0,0,1),display:"flex"},headerButtons:{display:"flex",gap:t.spacing(1),flexWrap:"nowrap",justifyContent:"end",alignItems:"end"},exportButton:{height:"40px",width:"112px"},csvLink:{display:"none"},menuIconSize:{minWidth:t.spacing(4),color:t.palette.text.primary},menuList:{backgroundColor:t.palette.background.paper,color:t.palette.text.primary}})),j=({viewMode:t,setViewMode:g,isLoading:m,searchTerm:f,setSearchTerm:E,searchPlaceholder:x,fetchCsvData:v,csvFilename:b})=>{const r=_(),c=A(),S=(a,p)=>{p!==null&&g(p)},[s,n]=u(null),[o,k]=u([]),i=!!s,y=a=>{n(a.currentTarget)},C=()=>{n(null)},T=async()=>{n(null);const a=await v();k(a)};return D(()=>{o.length&&c?.current?.link.click()},[o]),e.createElement(l,{container:!0,spacing:2,className:r.header},e.createElement(l,{item:!0,xs:6},e.createElement(W,{searchTerm:f,setSearchTerm:E,disabled:m,placeholder:x||"Search",variant:"outlined",size:"small"})),e.createElement(l,{item:!0,xs:6,className:r.headerButtons},e.createElement(B,{id:"export-button",className:r.exportButton,disabled:m,variant:"contained",color:"primary","aria-controls":i?"export-menu":void 0,"aria-haspopup":"true","aria-expanded":i?"true":void 0,onClick:y,endIcon:e.createElement(P,null)},"Export"),e.createElement(O,{data:o,filename:b,className:r.csvLink,ref:c,target:"_blank"}),e.createElement(I,{id:"export-menu",anchorEl:s,getContentAnchorEl:null,open:i,onClose:C,MenuListProps:{"aria-labelledby":"export-button",disablePadding:!0,className:r.menuList},anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}},e.createElement(L,{onClick:T},e.createElement(w,{color:"inherit",className:r.menuIconSize},e.createElement(G,{fontSize:"small"})),e.createElement(z,null,"CSV"))),e.createElement(R,{size:"small",value:t,exclusive:!0,onChange:S},e.createElement(d,{value:h.TABLE,title:"Table view"},e.createElement(V,{color:"inherit"})),e.createElement(d,{value:h.GRID,title:"Grid view"},e.createElement(N,{color:"inherit"})))))};export{j as PassRateTabHeader};
2
2
  //# sourceMappingURL=PassRateTabHeader.esm.js.map
@@ -1,2 +1,2 @@
1
- import{makeStyles as s}from"@material-ui/core/styles";import e from"react";import{useFormContext as m,Controller as d}from"react-hook-form";import{BadgeVariant as r}from"../../../../../graphql/generated/index.esm.js";import{LevelBadge as n}from"../../../../Badges/LevelBadge.esm.js";import"../../../../Badges/NoLevelBadge.esm.js";import"../../../../Badges/CampaignBadge.esm.js";import{FormControlledAutocomplete as g}from"../../../../FormControlledAutocomplete/FormControlledAutocomplete.esm.js";import{useLabelOptions as b}from"../../../../FormControlledAutocomplete/useLabelOptions.esm.js";import"@material-ui/core";import"@material-ui/lab";import"../../../../ListboxVirtualized/ListboxVirtualized.esm.js";import{FormFieldLabel as f}from"../../../../FormFieldLabel/FormFieldLabel.esm.js";const u=s(t=>({container:{display:"flex",flexDirection:"column",gap:t.spacing(1)},badgeTypeInput:{display:"flex",flexDirection:"row",gap:t.spacing(1)},badgeTypeIcon:{alignSelf:"center"}})),y=({disabled:t})=>{const a=u(),{control:o}=m(),l=[{value:"medal",label:"Medal",icon:e.createElement(n,{className:a.badgeTypeIcon,badge:{variant:r.Medal,options:{color:"#FCE54F",level:3}}})},{value:"status",label:"Status",icon:e.createElement(n,{className:a.badgeTypeIcon,badge:{variant:r.Status,options:{status:{passed:3,failed:2,warning:0,error:0,notApplicable:0,notReported:0,passPercentage:60}}}})}],i=b(l);return e.createElement("div",{className:a.container},e.createElement("div",null,e.createElement(f,{title:"Badge type",docLink:"https://backstage.spotify.com/docs/plugins/soundcheck/core-concepts/tracks#certifications-and-badges"})),e.createElement("div",{className:a.badgeTypeInput},e.createElement(g,{name:"detailsStep.badgeType",disableClearable:!0,control:o,width:300,freeSolo:!1,disabled:t,placeholder:"Badge type",...i}),e.createElement(d,{name:"detailsStep.badgeType",control:o,render:({field:c})=>e.createElement(e.Fragment,null,l.find(p=>p.value===c.value)?.icon)})))};export{y as TrackBadgeTypeSelect};
1
+ import{makeStyles as m}from"@material-ui/core/styles";import e from"react";import{useFormContext as s,Controller as d}from"react-hook-form";import{BadgeVariant as r}from"../../../../../graphql/generated/index.esm.js";import{LevelBadge as n}from"../../../../Badges/LevelBadge.esm.js";import"../../../../Badges/NoLevelBadge.esm.js";import"../../../../Badges/CampaignBadge.esm.js";import{FormControlledAutocomplete as g}from"../../../../FormControlledAutocomplete/FormControlledAutocomplete.esm.js";import"@material-ui/core";import"@material-ui/icons/CheckBox";import"@material-ui/icons/CheckBoxOutlineBlank";import"@material-ui/lab";import"../../../../ListboxVirtualized/ListboxVirtualized.esm.js";import{useLabelOptions as b}from"../../../../FormControlledAutocomplete/useLabelOptions.esm.js";import{FormFieldLabel as f}from"../../../../FormFieldLabel/FormFieldLabel.esm.js";const u=m(t=>({container:{display:"flex",flexDirection:"column",gap:t.spacing(1)},badgeTypeInput:{display:"flex",flexDirection:"row",gap:t.spacing(1)},badgeTypeIcon:{alignSelf:"center"}})),y=({disabled:t})=>{const a=u(),{control:o}=s(),l=[{value:"medal",label:"Medal",icon:e.createElement(n,{className:a.badgeTypeIcon,badge:{variant:r.Medal,options:{color:"#FCE54F",level:3}}})},{value:"status",label:"Status",icon:e.createElement(n,{className:a.badgeTypeIcon,badge:{variant:r.Status,options:{status:{passed:3,failed:2,warning:0,error:0,notApplicable:0,notReported:0,passPercentage:60}}}})}],i=b(l);return e.createElement("div",{className:a.container},e.createElement("div",null,e.createElement(f,{title:"Badge type",docLink:"https://backstage.spotify.com/docs/plugins/soundcheck/core-concepts/tracks#certifications-and-badges"})),e.createElement("div",{className:a.badgeTypeInput},e.createElement(g,{name:"detailsStep.badgeType",disableClearable:!0,control:o,width:300,freeSolo:!1,disabled:t,placeholder:"Badge type",...i}),e.createElement(d,{name:"detailsStep.badgeType",control:o,render:({field:c})=>e.createElement(e.Fragment,null,l.find(p=>p.value===c.value)?.icon)})))};export{y as TrackBadgeTypeSelect};
2
2
  //# sourceMappingURL=TrackBadgeTypeSelect.esm.js.map
@@ -1,2 +1,2 @@
1
- import{parseEntityRef as E}from"@backstage/catalog-model";import{Typography as i}from"@material-ui/core";import{makeStyles as y}from"@material-ui/core/styles";import{uniqBy as b}from"lodash";import t from"react";import{useFormContext as g}from"react-hook-form";import"../../../../../contexts/TrackFormContext.esm.js";import"../../../../../contexts/CheckFormContext.esm.js";import"../../../../../contexts/CampaignFormContext.esm.js";import{useLoggedInUser as w}from"../../../../../contexts/UserProvider.esm.js";import{useGroupOptions as S}from"../../../../../hooks/groups/useGroupOptions.esm.js";import{FormControlledAutocomplete as x}from"../../../../FormControlledAutocomplete/FormControlledAutocomplete.esm.js";import{useLabelOptions as R}from"../../../../FormControlledAutocomplete/useLabelOptions.esm.js";import"@material-ui/lab";import"../../../../ListboxVirtualized/ListboxVirtualized.esm.js";import"../../../utils/validation.esm.js";import{TRACK_FIELDS as h}from"../../../utils/trackFormUtils.esm.js";const L=y(m=>({container:{display:"flex",flexDirection:"column",gap:m.spacing(1)}})),O=({disabled:m,ownerEntityRef:o})=>{const a=L(),{options:l,isLoading:p}=S(),{user:s,userEntityRef:n}=w(),{control:c,formState:{errors:f}}=g();let e=b(l.map(r=>({value:r.ref,label:r.name})),"value");n&&(e=[{value:n,label:s?.metadata.name},...e]),o&&n!==o&&!e.some(r=>r.value===o)&&(e=[{value:o,label:E(o).name},...e]);const u=R(e),{name:d,description:v}=h.owner;return t.createElement("div",{className:a.container},t.createElement("div",null,t.createElement(i,{variant:"subtitle2"},d),t.createElement(i,{variant:"caption"},v)),t.createElement("div",null,t.createElement(x,{name:"detailsStep.ownerEntityRef",control:c,width:300,freeSolo:!1,disabled:m||p,helperText:f?.detailsStep?.ownerEntityRef?.message??void 0,placeholder:"Owner",...u})))};export{O as TrackOwnerSelect};
1
+ import{parseEntityRef as E}from"@backstage/catalog-model";import{Typography as n}from"@material-ui/core";import{makeStyles as y}from"@material-ui/core/styles";import{uniqBy as b}from"lodash";import t from"react";import{useFormContext as g}from"react-hook-form";import"../../../../../contexts/TrackFormContext.esm.js";import"../../../../../contexts/CheckFormContext.esm.js";import"../../../../../contexts/CampaignFormContext.esm.js";import{useLoggedInUser as w}from"../../../../../contexts/UserProvider.esm.js";import{useGroupOptions as S}from"../../../../../hooks/groups/useGroupOptions.esm.js";import{FormControlledAutocomplete as x}from"../../../../FormControlledAutocomplete/FormControlledAutocomplete.esm.js";import"@material-ui/icons/CheckBox";import"@material-ui/icons/CheckBoxOutlineBlank";import"@material-ui/lab";import"../../../../ListboxVirtualized/ListboxVirtualized.esm.js";import{useLabelOptions as R}from"../../../../FormControlledAutocomplete/useLabelOptions.esm.js";import"../../../utils/validation.esm.js";import{TRACK_FIELDS as h}from"../../../utils/trackFormUtils.esm.js";const L=y(m=>({container:{display:"flex",flexDirection:"column",gap:m.spacing(1)}})),O=({disabled:m,ownerEntityRef:o})=>{const a=L(),{options:l,isLoading:p}=S(),{user:s,userEntityRef:i}=w(),{control:c,formState:{errors:f}}=g();let e=b(l.map(r=>({value:r.ref,label:r.name})),"value");i&&(e=[{value:i,label:s?.metadata.name},...e]),o&&i!==o&&!e.some(r=>r.value===o)&&(e=[{value:o,label:E(o).name},...e]);const u=R(e),{name:d,description:v}=h.owner;return t.createElement("div",{className:a.container},t.createElement("div",null,t.createElement(n,{variant:"subtitle2"},d),t.createElement(n,{variant:"caption"},v)),t.createElement("div",null,t.createElement(x,{name:"detailsStep.ownerEntityRef",control:c,width:300,freeSolo:!1,disabled:m||p,helperText:f?.detailsStep?.ownerEntityRef?.message??void 0,placeholder:"Owner",...u})))};export{O as TrackOwnerSelect};
2
2
  //# sourceMappingURL=TrackOwnerSelect.esm.js.map
@@ -1,2 +1,2 @@
1
- import{DismissableBanner as m}from"@backstage/core-components";import r from"react";import{useSearchParams as a}from"react-router-dom";import{RESULTS_PER_PAGE as i}from"../../utils/filters.esm.js";import{TrackListPage as p}from"./TrackListPage/TrackListPage.esm.js";import"@backstage/core-plugin-api";import"@backstage/plugin-permission-react";import"@spotify/backstage-plugin-soundcheck-common";import"@backstage/catalog-model";import"@tanstack/react-query";import"../../api.esm.js";import"../../hooks/graphqlKeys.esm.js";import"@backstage/plugin-catalog-react";import"../../hooks/useSoundcheckAlert.esm.js";import"../../hooks/useConfirmationModal.esm.js";import"../../routes.esm.js";import"js-yaml";import"../SummaryCard/SummaryCard.esm.js";import"./TrackListPage/TrackMetadata.esm.js";const s=()=>{const[e]=a(),t=e.get("tracksPerPage"),o=t?parseInt(t,10):i;return r.createElement("div",null,r.createElement(m,{variant:"info",message:"Programs will now be referred to as Tracks throughout the Soundcheck UI.",id:"programTrackBanner"}),r.createElement(p,{tracksPerPage:o}))};export{s as TracksPage};
1
+ import{DismissableBanner as m}from"@backstage/core-components";import r from"react";import{useSearchParams as i}from"react-router-dom";import{RESULTS_PER_PAGE as a}from"../../utils/filters.esm.js";import{TrackListPage as p}from"./TrackListPage/TrackListPage.esm.js";import"@backstage/core-plugin-api";import"@backstage/plugin-permission-react";import"@spotify/backstage-plugin-soundcheck-common";import"@backstage/catalog-model";import"@tanstack/react-query";import"../../api.esm.js";import"../../hooks/graphqlKeys.esm.js";import"@backstage/plugin-catalog-react";import"../../hooks/useSoundcheckAlert.esm.js";import"../../hooks/useConfirmationModal.esm.js";import"../../routes.esm.js";import"js-yaml";import"lodash";import"../SummaryCard/SummaryCard.esm.js";import"./TrackListPage/TrackMetadata.esm.js";const s=()=>{const[e]=i(),t=e.get("tracksPerPage"),o=t?parseInt(t,10):a;return r.createElement("div",null,r.createElement(m,{variant:"info",message:"Programs will now be referred to as Tracks throughout the Soundcheck UI.",id:"programTrackBanner"}),r.createElement(p,{tracksPerPage:o}))};export{s as TracksPage};
2
2
  //# sourceMappingURL=TracksPage.esm.js.map
@@ -1,4 +1,4 @@
1
- import i from"graphql-tag";var c=(r=>(r.Medal="MEDAL",r.Status="STATUS",r))(c||{}),o=(r=>(r.Lifecycle="LIFECYCLE",r.Name="NAME",r.Owner="OWNER",r.State="STATE",r.System="SYSTEM",r.Type="TYPE",r))(o||{}),l=(r=>(r.Default="default",r.Manual="manual",r))(l||{}),d=(r=>(r.Asc="ASC",r.Desc="DESC",r))(d||{}),g=(r=>(r.Error="ERROR",r.Exempt="EXEMPT",r.Failed="FAILED",r.NotApplicable="NOT_APPLICABLE",r.NotReported="NOT_REPORTED",r.Passed="PASSED",r.Warning="WARNING",r))(g||{}),p=(r=>(r.CertificationLevel="CERTIFICATION_LEVEL",r.CheckPassRate="CHECK_PASS_RATE",r.Lifecycle="LIFECYCLE",r.Name="NAME",r.Owner="OWNER",r.System="SYSTEM",r.Type="TYPE",r))(p||{});const s=i`
1
+ import i from"graphql-tag";var c=(r=>(r.Medal="MEDAL",r.Status="STATUS",r))(c||{}),o=(r=>(r.Lifecycle="LIFECYCLE",r.Name="NAME",r.Owner="OWNER",r.State="STATE",r.System="SYSTEM",r.Type="TYPE",r))(o||{}),l=(r=>(r.Default="default",r.Manual="manual",r))(l||{}),d=(r=>(r.Asc="ASC",r.Desc="DESC",r))(d||{}),p=(r=>(r.Error="ERROR",r.Exempt="EXEMPT",r.Failed="FAILED",r.NotApplicable="NOT_APPLICABLE",r.NotReported="NOT_REPORTED",r.Passed="PASSED",r.Warning="WARNING",r))(p||{}),g=(r=>(r.CertificationLevel="CERTIFICATION_LEVEL",r.CheckPassRate="CHECK_PASS_RATE",r.Lifecycle="LIFECYCLE",r.Name="NAME",r.Owner="OWNER",r.System="SYSTEM",r.Type="TYPE",r))(g||{});const s=i`
2
2
  fragment BadgeVariants on Badge {
3
3
  ... on BadgeVariantMedal {
4
4
  variant
@@ -42,7 +42,7 @@ import i from"graphql-tag";var c=(r=>(r.Medal="MEDAL",r.Status="STATUS",r))(c||{
42
42
  name
43
43
  description
44
44
  }
45
- `;const C=i`
45
+ `;const f=i`
46
46
  fragment CampaignLevel on Level {
47
47
  ordinal
48
48
  name
@@ -57,7 +57,7 @@ import i from"graphql-tag";var c=(r=>(r.Medal="MEDAL",r.Status="STATUS",r))(c||{
57
57
  filter
58
58
  }
59
59
  }
60
- ${s}`,f=i`
60
+ ${s}`,C=i`
61
61
  fragment milestone on Milestone {
62
62
  id
63
63
  name
@@ -156,17 +156,17 @@ ${k}`,h=i`
156
156
  id
157
157
  }
158
158
  }
159
- `,P=i`
159
+ `,D=i`
160
160
  mutation deleteCampaign($campaignId: String!) {
161
161
  campaignDeleted: deleteCampaign(campaignId: $campaignId)
162
162
  }
163
- `,D=i`
163
+ `,S=i`
164
164
  mutation updateCampaign($input: CampaignInput!) {
165
165
  campaign: updateCampaign(input: $input) {
166
166
  id
167
167
  }
168
168
  }
169
- `,S=i`
169
+ `,P=i`
170
170
  mutation createCheck($input: CheckerInput!) {
171
171
  check: createChecker(input: $input) {
172
172
  id
@@ -175,11 +175,19 @@ ${k}`,h=i`
175
175
  description
176
176
  }
177
177
  }
178
- `,T=i`
178
+ `,I=i`
179
179
  mutation deleteChecker($checkerId: String!) {
180
180
  deleteChecker(checkerId: $checkerId)
181
181
  }
182
- `,I=i`
182
+ `,T=i`
183
+ mutation deleteExemption($checkId: String!, $entityRef: String!) {
184
+ deleteExemption(checkId: $checkId, entityRef: $entityRef) {
185
+ check_id
186
+ entity_ref
187
+ deleted
188
+ }
189
+ }
190
+ `,O=i`
183
191
  mutation executeCheck($input: ExecuteCheckInput!) {
184
192
  result: executeCheck(input: $input) {
185
193
  id
@@ -199,7 +207,7 @@ ${k}`,h=i`
199
207
  }
200
208
  }
201
209
  }
202
- `,O=i`
210
+ `,F=i`
203
211
  mutation setEntityExempt($input: EntityExemptionInput!) {
204
212
  setEntityExempt(input: $input) {
205
213
  entity_ref
@@ -208,9 +216,9 @@ ${k}`,h=i`
208
216
  timestamp
209
217
  }
210
218
  }
211
- `,F=i`
212
- mutation addManualCheckResult($input: ManualCheckResultInput!) {
213
- addManualCheckResult(input: $input) {
219
+ `,w=i`
220
+ mutation setManualCheckResult($input: ManualCheckResultInput!) {
221
+ setManualCheckResult(input: $input) {
214
222
  id
215
223
  entityRef
216
224
  result
@@ -218,7 +226,7 @@ ${k}`,h=i`
218
226
  details
219
227
  }
220
228
  }
221
- `,w=i`
229
+ `,x=i`
222
230
  mutation createTrack($input: TrackInput!) {
223
231
  track: createTrack(input: $input) {
224
232
  id
@@ -228,11 +236,11 @@ ${k}`,h=i`
228
236
  documentationURL
229
237
  }
230
238
  }
231
- `,L=i`
239
+ `,G=i`
232
240
  mutation deleteTrack($trackId: String!) {
233
241
  trackDeleted: deleteTrack(trackId: $trackId)
234
242
  }
235
- `,G=i`
243
+ `,L=i`
236
244
  mutation updateTrack($input: TrackInput!) {
237
245
  track: updateTrack(input: $input) {
238
246
  id
@@ -242,7 +250,7 @@ ${k}`,h=i`
242
250
  documentationURL
243
251
  }
244
252
  }
245
- `,x=i`
253
+ `,b=i`
246
254
  mutation updateCheck($input: CheckerInput!) {
247
255
  check: updateChecker(input: $input) {
248
256
  id
@@ -251,7 +259,7 @@ ${k}`,h=i`
251
259
  description
252
260
  }
253
261
  }
254
- `,b=i`
262
+ `,N=i`
255
263
  mutation updateCollectorConfig($input: CollectorConfigInput!) {
256
264
  collector: setCollectorConfig(input: $input) {
257
265
  id
@@ -272,11 +280,11 @@ ${k}`,h=i`
272
280
  ...CertificationSummary
273
281
  }
274
282
  }
275
- ${m}`,N=i`
283
+ ${m}`,H=i`
276
284
  query getCampaignOwners {
277
285
  campaignOwners
278
286
  }
279
- `,H=i`
287
+ `,M=i`
280
288
  query getCampaigns($filter: ListEntityFilter!) {
281
289
  campaigns(filter: $filter) {
282
290
  totalCount
@@ -319,8 +327,8 @@ ${k}`,h=i`
319
327
  }
320
328
  }
321
329
  }
322
- ${f}
323
- ${C}`,M=i`
330
+ ${C}
331
+ ${f}`,B=i`
324
332
  query getCertificationDetails($entityRef: String!) {
325
333
  certifications(entityRef: $entityRef, includeFilteredChecks: false) {
326
334
  track {
@@ -338,12 +346,12 @@ ${C}`,M=i`
338
346
  }
339
347
  }
340
348
  ${s}
341
- ${u}`,B=i`
342
- query getCertificationDetailsForTrack($entityRef: String!, $trackId: String!) {
349
+ ${u}`,V=i`
350
+ query getCertificationDetailsForTrack($entityRef: String!, $trackId: String!, $includeFilteredChecks: Boolean) {
343
351
  trackCertification(
344
352
  entityRef: $entityRef
345
353
  trackId: $trackId
346
- includeFilteredChecks: false
354
+ includeFilteredChecks: $includeFilteredChecks
347
355
  ) {
348
356
  track {
349
357
  id
@@ -365,7 +373,7 @@ ${u}`,B=i`
365
373
  }
366
374
  ${s}
367
375
  ${$}
368
- ${u}`,V=i`
376
+ ${u}`,_=i`
369
377
  query getCertificationStatus($input: CertificationStatusInput!) {
370
378
  certificationStatus(input: $input) {
371
379
  numberOfEntities
@@ -396,13 +404,13 @@ ${u}`,V=i`
396
404
  }
397
405
  }
398
406
  }
399
- `,_=i`
407
+ `,Y=i`
400
408
  query getCheckResultDetails($entityRef: String!, $trackId: String!, $checkId: String!) {
401
409
  checkResult(entityRef: $entityRef, trackId: $trackId, checkId: $checkId) {
402
410
  ...CheckResultDetails
403
411
  }
404
412
  }
405
- ${h}`,Y=i`
413
+ ${h}`,W=i`
406
414
  query getCheckEntities($input: CheckEntitiesInput!) {
407
415
  checkEntities(input: $input) {
408
416
  totalCount
@@ -420,7 +428,7 @@ ${u}`,V=i`
420
428
  }
421
429
  }
422
430
  }
423
- `,W=i`
431
+ `,j=i`
424
432
  query getCheckOwners {
425
433
  checkOwners
426
434
  }
@@ -455,7 +463,7 @@ ${u}`,V=i`
455
463
  }
456
464
  }
457
465
  }
458
- `,j=i`
466
+ `,z=i`
459
467
  query getCheckStatusHistory($input: CheckStatusHistoryInput!) {
460
468
  checkStatusHistory(input: $input) {
461
469
  id
@@ -472,7 +480,7 @@ ${u}`,V=i`
472
480
  }
473
481
  }
474
482
  }
475
- `,z=i`
483
+ `,J=i`
476
484
  query getCheckStatuses($input: CheckStatusesInput!) {
477
485
  checkStatuses(input: $input) {
478
486
  id
@@ -486,7 +494,7 @@ ${u}`,V=i`
486
494
  notReported
487
495
  }
488
496
  }
489
- `,J=i`
497
+ `,Q=i`
490
498
  query getCheckTemplates {
491
499
  checkerTemplates {
492
500
  id
@@ -505,7 +513,28 @@ ${u}`,V=i`
505
513
  pathResolver
506
514
  }
507
515
  }
508
- `,Q=i`
516
+ `,Z=i`
517
+ query getCheck($id: ID!) {
518
+ check(id: $id) {
519
+ id
520
+ ownerEntityRef
521
+ supportChannel
522
+ name
523
+ description
524
+ rule
525
+ warning
526
+ passedMessage
527
+ failedMessage
528
+ filter
529
+ isEditable
530
+ schedule
531
+ pathResolver
532
+ templateRef
533
+ type
534
+ exclude
535
+ }
536
+ }
537
+ `,ee=i`
509
538
  query getCheckers($filter: ListEntityFilter!) {
510
539
  checkers(filter: $filter) {
511
540
  totalCount
@@ -538,15 +567,25 @@ ${u}`,V=i`
538
567
  }
539
568
  }
540
569
  }
541
- `,Z=i`
570
+ `,te=i`
542
571
  query getEntityRefsForTechHealthFilter($ownerEntityRef: String) {
543
572
  entityRefsForTechHealthFilter(ownerEntityRef: $ownerEntityRef)
544
573
  }
545
- `,ee=i`
574
+ `,ae=i`
546
575
  query getExecutableChecks {
547
576
  executableChecks
548
577
  }
549
- `,te=i`
578
+ `,re=i`
579
+ query getExemption($entityRef: String!, $checkId: String!) {
580
+ exemption(entityRef: $entityRef, checkId: $checkId) {
581
+ check_id
582
+ entity_ref
583
+ user_ref
584
+ justification
585
+ timestamp
586
+ }
587
+ }
588
+ `,ie=i`
550
589
  query getFacetsForOwner($ownerEntityRef: String!) {
551
590
  facetsForOwner(ownerEntityRef: $ownerEntityRef) {
552
591
  types {
@@ -556,7 +595,7 @@ ${u}`,V=i`
556
595
  }
557
596
  }
558
597
  }
559
- `,ae=i`
598
+ `,ne=i`
560
599
  query getFact($entityRef: String!, $factRef: String!, $path: String, $pathResolver: String, $refresh: Boolean) {
561
600
  fact(
562
601
  entityRef: $entityRef
@@ -580,7 +619,7 @@ ${u}`,V=i`
580
619
  resolvedValue
581
620
  }
582
621
  }
583
- `,re=i`
622
+ `,se=i`
584
623
  query getCollectors($ids: [String!]) {
585
624
  collectors(ids: $ids) {
586
625
  id
@@ -599,13 +638,13 @@ ${u}`,V=i`
599
638
  }
600
639
  }
601
640
  }
602
- `,ie=i`
641
+ `,ue=i`
603
642
  query getFactSchemas($collectorId: String!, $factName: String!) {
604
643
  factSchema(collectorId: $collectorId, factName: $factName) {
605
644
  schema
606
645
  }
607
646
  }
608
- `,ne=i`
647
+ `,ce=i`
609
648
  query getIndividualCheckPassRates($filter: Filter) {
610
649
  individualCheckPassRates(filter: $filter) {
611
650
  id
@@ -616,7 +655,7 @@ ${u}`,V=i`
616
655
  trendPassRates
617
656
  }
618
657
  }
619
- `,se=i`
658
+ `,oe=i`
620
659
  query getIndividualEntityPassRates($input: PassRatesInput) {
621
660
  individualEntityPassRates(input: $input) {
622
661
  totalCount
@@ -638,7 +677,7 @@ ${u}`,V=i`
638
677
  }
639
678
  }
640
679
  }
641
- `,ue=i`
680
+ `,le=i`
642
681
  query getIndividualGroupPassRates($input: PassRatesInput) {
643
682
  groupPassRates(input: $input) {
644
683
  totalCount
@@ -660,7 +699,7 @@ ${u}`,V=i`
660
699
  }
661
700
  }
662
701
  }
663
- `,ce=i`
702
+ `,de=i`
664
703
  query getIndividualTrackPassRate($filter: Filter) {
665
704
  individualTrackPassRate(filter: $filter) {
666
705
  id
@@ -675,25 +714,25 @@ ${u}`,V=i`
675
714
  }
676
715
  }
677
716
  }
678
- `,oe=i`
717
+ `,pe=i`
679
718
  query getOperators {
680
719
  operators {
681
720
  name
682
721
  title
683
722
  }
684
723
  }
685
- `,le=i`
724
+ `,ge=i`
686
725
  query getOverallCheckPassRates($filter: Filter) {
687
726
  overallCheckPassRates(filter: $filter)
688
727
  }
689
- `,de=i`
728
+ `,me=i`
690
729
  query getOverallEntityPassRates($filter: Filter) {
691
730
  overallEntityPassRates(filter: $filter) {
692
731
  id
693
732
  trendPassRates
694
733
  }
695
734
  }
696
- `,ge=i`
735
+ `,fe=i`
697
736
  query getOverallGroupPassRates($input: PassRatesInput) {
698
737
  groupPassRates(input: $input) {
699
738
  totalCount
@@ -713,7 +752,7 @@ ${u}`,V=i`
713
752
  }
714
753
  }
715
754
  }
716
- `,pe=i`
755
+ `,Ce=i`
717
756
  query getOverallTrackPassRate($filter: Filter) {
718
757
  overallTrackPassRate(filter: $filter) {
719
758
  levelOrdinal
@@ -721,13 +760,13 @@ ${u}`,V=i`
721
760
  trendPassRates
722
761
  }
723
762
  }
724
- `,me=i`
763
+ `,ke=i`
725
764
  query getPathResolvers {
726
765
  pathResolvers {
727
766
  id
728
767
  }
729
768
  }
730
- `,Ce=i`
769
+ `,he=i`
731
770
  query getPlaylists($entityRef: String!) {
732
771
  playlists(entityRef: $entityRef) {
733
772
  id
@@ -737,7 +776,7 @@ ${u}`,V=i`
737
776
  trackIds
738
777
  }
739
778
  }
740
- `,fe=i`
779
+ `,ye=i`
741
780
  query getTrackOverviewForOwner($ownerEntityRef: String!, $facet: FacetInput, $first: Int, $after: String, $entitySearch: String) {
742
781
  trackOverviewForOwner(
743
782
  ownerEntityRef: $ownerEntityRef
@@ -768,7 +807,7 @@ ${u}`,V=i`
768
807
  }
769
808
  }
770
809
  ${R}
771
- ${y}`,ke=i`
810
+ ${y}`,Re=i`
772
811
  query getTrackEntities($input: TrackEntitiesInput!) {
773
812
  trackEntities(input: $input) {
774
813
  totalCount
@@ -805,11 +844,11 @@ ${y}`,ke=i`
805
844
  }
806
845
  }
807
846
  }
808
- ${s}`,he=i`
847
+ ${s}`,$e=i`
809
848
  query getTrackOwners {
810
849
  trackOwners
811
850
  }
812
- `,ye=i`
851
+ `,qe=i`
813
852
  query getTracks($filter: ListEntityFilter!) {
814
853
  tracks(filter: $filter) {
815
854
  totalCount
@@ -842,5 +881,5 @@ ${y}`,ke=i`
842
881
  }
843
882
  }
844
883
  ${q}
845
- ${s}`,Re=(r,n,e,t)=>r();function $e(r,n=Re){return{archiveCampaign(e,t){return n(a=>r.request(v,e,{...t,...a}),"archiveCampaign","mutation",e)},createCampaign(e,t){return n(a=>r.request(E,e,{...t,...a}),"createCampaign","mutation",e)},deleteCampaign(e,t){return n(a=>r.request(P,e,{...t,...a}),"deleteCampaign","mutation",e)},updateCampaign(e,t){return n(a=>r.request(D,e,{...t,...a}),"updateCampaign","mutation",e)},createCheck(e,t){return n(a=>r.request(S,e,{...t,...a}),"createCheck","mutation",e)},deleteChecker(e,t){return n(a=>r.request(T,e,{...t,...a}),"deleteChecker","mutation",e)},executeCheck(e,t){return n(a=>r.request(I,e,{...t,...a}),"executeCheck","mutation",e)},setEntityExempt(e,t){return n(a=>r.request(O,e,{...t,...a}),"setEntityExempt","mutation",e)},addManualCheckResult(e,t){return n(a=>r.request(F,e,{...t,...a}),"addManualCheckResult","mutation",e)},createTrack(e,t){return n(a=>r.request(w,e,{...t,...a}),"createTrack","mutation",e)},deleteTrack(e,t){return n(a=>r.request(L,e,{...t,...a}),"deleteTrack","mutation",e)},updateTrack(e,t){return n(a=>r.request(G,e,{...t,...a}),"updateTrack","mutation",e)},updateCheck(e,t){return n(a=>r.request(x,e,{...t,...a}),"updateCheck","mutation",e)},updateCollectorConfig(e,t){return n(a=>r.request(b,e,{...t,...a}),"updateCollectorConfig","mutation",e)},getAllCertifications(e,t){return n(a=>r.request(A,e,{...t,...a}),"getAllCertifications","query",e)},getCampaignOwners(e,t){return n(a=>r.request(N,e,{...t,...a}),"getCampaignOwners","query",e)},getCampaigns(e,t){return n(a=>r.request(H,e,{...t,...a}),"getCampaigns","query",e)},getCertificationDetails(e,t){return n(a=>r.request(M,e,{...t,...a}),"getCertificationDetails","query",e)},getCertificationDetailsForTrack(e,t){return n(a=>r.request(B,e,{...t,...a}),"getCertificationDetailsForTrack","query",e)},getCertificationStatus(e,t){return n(a=>r.request(V,e,{...t,...a}),"getCertificationStatus","query",e)},getCertificationStatusHistory(e,t){return n(a=>r.request(U,e,{...t,...a}),"getCertificationStatusHistory","query",e)},getCheckResultDetails(e,t){return n(a=>r.request(_,e,{...t,...a}),"getCheckResultDetails","query",e)},getCheckEntities(e,t){return n(a=>r.request(Y,e,{...t,...a}),"getCheckEntities","query",e)},getCheckOwners(e,t){return n(a=>r.request(W,e,{...t,...a}),"getCheckOwners","query",e)},getCheckStatus(e,t){return n(a=>r.request(K,e,{...t,...a}),"getCheckStatus","query",e)},getCheckStatusHistories(e,t){return n(a=>r.request(X,e,{...t,...a}),"getCheckStatusHistories","query",e)},getCheckStatusHistory(e,t){return n(a=>r.request(j,e,{...t,...a}),"getCheckStatusHistory","query",e)},getCheckStatuses(e,t){return n(a=>r.request(z,e,{...t,...a}),"getCheckStatuses","query",e)},getCheckTemplates(e,t){return n(a=>r.request(J,e,{...t,...a}),"getCheckTemplates","query",e)},getCheckers(e,t){return n(a=>r.request(Q,e,{...t,...a}),"getCheckers","query",e)},getEntityRefsForTechHealthFilter(e,t){return n(a=>r.request(Z,e,{...t,...a}),"getEntityRefsForTechHealthFilter","query",e)},getExecutableChecks(e,t){return n(a=>r.request(ee,e,{...t,...a}),"getExecutableChecks","query",e)},getFacetsForOwner(e,t){return n(a=>r.request(te,e,{...t,...a}),"getFacetsForOwner","query",e)},getFact(e,t){return n(a=>r.request(ae,e,{...t,...a}),"getFact","query",e)},getCollectors(e,t){return n(a=>r.request(re,e,{...t,...a}),"getCollectors","query",e)},getFactSchemas(e,t){return n(a=>r.request(ie,e,{...t,...a}),"getFactSchemas","query",e)},getIndividualCheckPassRates(e,t){return n(a=>r.request(ne,e,{...t,...a}),"getIndividualCheckPassRates","query",e)},getIndividualEntityPassRates(e,t){return n(a=>r.request(se,e,{...t,...a}),"getIndividualEntityPassRates","query",e)},getIndividualGroupPassRates(e,t){return n(a=>r.request(ue,e,{...t,...a}),"getIndividualGroupPassRates","query",e)},getIndividualTrackPassRate(e,t){return n(a=>r.request(ce,e,{...t,...a}),"getIndividualTrackPassRate","query",e)},getOperators(e,t){return n(a=>r.request(oe,e,{...t,...a}),"getOperators","query",e)},getOverallCheckPassRates(e,t){return n(a=>r.request(le,e,{...t,...a}),"getOverallCheckPassRates","query",e)},getOverallEntityPassRates(e,t){return n(a=>r.request(de,e,{...t,...a}),"getOverallEntityPassRates","query",e)},getOverallGroupPassRates(e,t){return n(a=>r.request(ge,e,{...t,...a}),"getOverallGroupPassRates","query",e)},getOverallTrackPassRate(e,t){return n(a=>r.request(pe,e,{...t,...a}),"getOverallTrackPassRate","query",e)},getPathResolvers(e,t){return n(a=>r.request(me,e,{...t,...a}),"getPathResolvers","query",e)},getPlaylists(e,t){return n(a=>r.request(Ce,e,{...t,...a}),"getPlaylists","query",e)},getTrackOverviewForOwner(e,t){return n(a=>r.request(fe,e,{...t,...a}),"getTrackOverviewForOwner","query",e)},getTrackEntities(e,t){return n(a=>r.request(ke,e,{...t,...a}),"getTrackEntities","query",e)},getTrackOwners(e,t){return n(a=>r.request(he,e,{...t,...a}),"getTrackOwners","query",e)},getTracks(e,t){return n(a=>r.request(ye,e,{...t,...a}),"getTracks","query",e)}}}export{F as AddManualCheckResultDocument,v as ArchiveCampaignDocument,c as BadgeVariant,s as BadgeVariantsFragmentDoc,C as CampaignLevelFragmentDoc,m as CertificationSummaryFragmentDoc,o as CheckEntityField,h as CheckResultDetailsFragmentDoc,k as CheckResultSummaryFragmentDoc,l as CheckerType,E as CreateCampaignDocument,S as CreateCheckDocument,w as CreateTrackDocument,P as DeleteCampaignDocument,T as DeleteCheckerDocument,L as DeleteTrackDocument,d as Direction,I as ExecuteCheckDocument,A as GetAllCertificationsDocument,N as GetCampaignOwnersDocument,H as GetCampaignsDocument,M as GetCertificationDetailsDocument,B as GetCertificationDetailsForTrackDocument,V as GetCertificationStatusDocument,U as GetCertificationStatusHistoryDocument,Y as GetCheckEntitiesDocument,W as GetCheckOwnersDocument,_ as GetCheckResultDetailsDocument,K as GetCheckStatusDocument,X as GetCheckStatusHistoriesDocument,j as GetCheckStatusHistoryDocument,z as GetCheckStatusesDocument,J as GetCheckTemplatesDocument,Q as GetCheckersDocument,re as GetCollectorsDocument,Z as GetEntityRefsForTechHealthFilterDocument,ee as GetExecutableChecksDocument,te as GetFacetsForOwnerDocument,ae as GetFactDocument,ie as GetFactSchemasDocument,ne as GetIndividualCheckPassRatesDocument,se as GetIndividualEntityPassRatesDocument,ue as GetIndividualGroupPassRatesDocument,ce as GetIndividualTrackPassRateDocument,oe as GetOperatorsDocument,le as GetOverallCheckPassRatesDocument,de as GetOverallEntityPassRatesDocument,ge as GetOverallGroupPassRatesDocument,pe as GetOverallTrackPassRateDocument,me as GetPathResolversDocument,Ce as GetPlaylistsDocument,ke as GetTrackEntitiesDocument,fe as GetTrackOverviewForOwnerDocument,he as GetTrackOwnersDocument,ye as GetTracksDocument,$ as HighestLevelFragmentDoc,u as LevelResultDetailsFragmentDoc,f as MilestoneFragmentDoc,y as OverviewLevelResultFragmentDoc,g as ResultState,O as SetEntityExemptDocument,p as TrackEntityField,q as TrackLevelFragmentDoc,R as TrackStatusFragmentDoc,D as UpdateCampaignDocument,x as UpdateCheckDocument,b as UpdateCollectorConfigDocument,G as UpdateTrackDocument,$e as getSdk};
884
+ ${s}`,ve=(r,n,e,t)=>r();function Ee(r,n=ve){return{archiveCampaign(e,t){return n(a=>r.request(v,e,{...t,...a}),"archiveCampaign","mutation",e)},createCampaign(e,t){return n(a=>r.request(E,e,{...t,...a}),"createCampaign","mutation",e)},deleteCampaign(e,t){return n(a=>r.request(D,e,{...t,...a}),"deleteCampaign","mutation",e)},updateCampaign(e,t){return n(a=>r.request(S,e,{...t,...a}),"updateCampaign","mutation",e)},createCheck(e,t){return n(a=>r.request(P,e,{...t,...a}),"createCheck","mutation",e)},deleteChecker(e,t){return n(a=>r.request(I,e,{...t,...a}),"deleteChecker","mutation",e)},deleteExemption(e,t){return n(a=>r.request(T,e,{...t,...a}),"deleteExemption","mutation",e)},executeCheck(e,t){return n(a=>r.request(O,e,{...t,...a}),"executeCheck","mutation",e)},setEntityExempt(e,t){return n(a=>r.request(F,e,{...t,...a}),"setEntityExempt","mutation",e)},setManualCheckResult(e,t){return n(a=>r.request(w,e,{...t,...a}),"setManualCheckResult","mutation",e)},createTrack(e,t){return n(a=>r.request(x,e,{...t,...a}),"createTrack","mutation",e)},deleteTrack(e,t){return n(a=>r.request(G,e,{...t,...a}),"deleteTrack","mutation",e)},updateTrack(e,t){return n(a=>r.request(L,e,{...t,...a}),"updateTrack","mutation",e)},updateCheck(e,t){return n(a=>r.request(b,e,{...t,...a}),"updateCheck","mutation",e)},updateCollectorConfig(e,t){return n(a=>r.request(N,e,{...t,...a}),"updateCollectorConfig","mutation",e)},getAllCertifications(e,t){return n(a=>r.request(A,e,{...t,...a}),"getAllCertifications","query",e)},getCampaignOwners(e,t){return n(a=>r.request(H,e,{...t,...a}),"getCampaignOwners","query",e)},getCampaigns(e,t){return n(a=>r.request(M,e,{...t,...a}),"getCampaigns","query",e)},getCertificationDetails(e,t){return n(a=>r.request(B,e,{...t,...a}),"getCertificationDetails","query",e)},getCertificationDetailsForTrack(e,t){return n(a=>r.request(V,e,{...t,...a}),"getCertificationDetailsForTrack","query",e)},getCertificationStatus(e,t){return n(a=>r.request(_,e,{...t,...a}),"getCertificationStatus","query",e)},getCertificationStatusHistory(e,t){return n(a=>r.request(U,e,{...t,...a}),"getCertificationStatusHistory","query",e)},getCheckResultDetails(e,t){return n(a=>r.request(Y,e,{...t,...a}),"getCheckResultDetails","query",e)},getCheckEntities(e,t){return n(a=>r.request(W,e,{...t,...a}),"getCheckEntities","query",e)},getCheckOwners(e,t){return n(a=>r.request(j,e,{...t,...a}),"getCheckOwners","query",e)},getCheckStatus(e,t){return n(a=>r.request(K,e,{...t,...a}),"getCheckStatus","query",e)},getCheckStatusHistories(e,t){return n(a=>r.request(X,e,{...t,...a}),"getCheckStatusHistories","query",e)},getCheckStatusHistory(e,t){return n(a=>r.request(z,e,{...t,...a}),"getCheckStatusHistory","query",e)},getCheckStatuses(e,t){return n(a=>r.request(J,e,{...t,...a}),"getCheckStatuses","query",e)},getCheckTemplates(e,t){return n(a=>r.request(Q,e,{...t,...a}),"getCheckTemplates","query",e)},getCheck(e,t){return n(a=>r.request(Z,e,{...t,...a}),"getCheck","query",e)},getCheckers(e,t){return n(a=>r.request(ee,e,{...t,...a}),"getCheckers","query",e)},getEntityRefsForTechHealthFilter(e,t){return n(a=>r.request(te,e,{...t,...a}),"getEntityRefsForTechHealthFilter","query",e)},getExecutableChecks(e,t){return n(a=>r.request(ae,e,{...t,...a}),"getExecutableChecks","query",e)},getExemption(e,t){return n(a=>r.request(re,e,{...t,...a}),"getExemption","query",e)},getFacetsForOwner(e,t){return n(a=>r.request(ie,e,{...t,...a}),"getFacetsForOwner","query",e)},getFact(e,t){return n(a=>r.request(ne,e,{...t,...a}),"getFact","query",e)},getCollectors(e,t){return n(a=>r.request(se,e,{...t,...a}),"getCollectors","query",e)},getFactSchemas(e,t){return n(a=>r.request(ue,e,{...t,...a}),"getFactSchemas","query",e)},getIndividualCheckPassRates(e,t){return n(a=>r.request(ce,e,{...t,...a}),"getIndividualCheckPassRates","query",e)},getIndividualEntityPassRates(e,t){return n(a=>r.request(oe,e,{...t,...a}),"getIndividualEntityPassRates","query",e)},getIndividualGroupPassRates(e,t){return n(a=>r.request(le,e,{...t,...a}),"getIndividualGroupPassRates","query",e)},getIndividualTrackPassRate(e,t){return n(a=>r.request(de,e,{...t,...a}),"getIndividualTrackPassRate","query",e)},getOperators(e,t){return n(a=>r.request(pe,e,{...t,...a}),"getOperators","query",e)},getOverallCheckPassRates(e,t){return n(a=>r.request(ge,e,{...t,...a}),"getOverallCheckPassRates","query",e)},getOverallEntityPassRates(e,t){return n(a=>r.request(me,e,{...t,...a}),"getOverallEntityPassRates","query",e)},getOverallGroupPassRates(e,t){return n(a=>r.request(fe,e,{...t,...a}),"getOverallGroupPassRates","query",e)},getOverallTrackPassRate(e,t){return n(a=>r.request(Ce,e,{...t,...a}),"getOverallTrackPassRate","query",e)},getPathResolvers(e,t){return n(a=>r.request(ke,e,{...t,...a}),"getPathResolvers","query",e)},getPlaylists(e,t){return n(a=>r.request(he,e,{...t,...a}),"getPlaylists","query",e)},getTrackOverviewForOwner(e,t){return n(a=>r.request(ye,e,{...t,...a}),"getTrackOverviewForOwner","query",e)},getTrackEntities(e,t){return n(a=>r.request(Re,e,{...t,...a}),"getTrackEntities","query",e)},getTrackOwners(e,t){return n(a=>r.request($e,e,{...t,...a}),"getTrackOwners","query",e)},getTracks(e,t){return n(a=>r.request(qe,e,{...t,...a}),"getTracks","query",e)}}}export{v as ArchiveCampaignDocument,c as BadgeVariant,s as BadgeVariantsFragmentDoc,f as CampaignLevelFragmentDoc,m as CertificationSummaryFragmentDoc,o as CheckEntityField,h as CheckResultDetailsFragmentDoc,k as CheckResultSummaryFragmentDoc,l as CheckerType,E as CreateCampaignDocument,P as CreateCheckDocument,x as CreateTrackDocument,D as DeleteCampaignDocument,I as DeleteCheckerDocument,T as DeleteExemptionDocument,G as DeleteTrackDocument,d as Direction,O as ExecuteCheckDocument,A as GetAllCertificationsDocument,H as GetCampaignOwnersDocument,M as GetCampaignsDocument,B as GetCertificationDetailsDocument,V as GetCertificationDetailsForTrackDocument,_ as GetCertificationStatusDocument,U as GetCertificationStatusHistoryDocument,Z as GetCheckDocument,W as GetCheckEntitiesDocument,j as GetCheckOwnersDocument,Y as GetCheckResultDetailsDocument,K as GetCheckStatusDocument,X as GetCheckStatusHistoriesDocument,z as GetCheckStatusHistoryDocument,J as GetCheckStatusesDocument,Q as GetCheckTemplatesDocument,ee as GetCheckersDocument,se as GetCollectorsDocument,te as GetEntityRefsForTechHealthFilterDocument,ae as GetExecutableChecksDocument,re as GetExemptionDocument,ie as GetFacetsForOwnerDocument,ne as GetFactDocument,ue as GetFactSchemasDocument,ce as GetIndividualCheckPassRatesDocument,oe as GetIndividualEntityPassRatesDocument,le as GetIndividualGroupPassRatesDocument,de as GetIndividualTrackPassRateDocument,pe as GetOperatorsDocument,ge as GetOverallCheckPassRatesDocument,me as GetOverallEntityPassRatesDocument,fe as GetOverallGroupPassRatesDocument,Ce as GetOverallTrackPassRateDocument,ke as GetPathResolversDocument,he as GetPlaylistsDocument,Re as GetTrackEntitiesDocument,ye as GetTrackOverviewForOwnerDocument,$e as GetTrackOwnersDocument,qe as GetTracksDocument,$ as HighestLevelFragmentDoc,u as LevelResultDetailsFragmentDoc,C as MilestoneFragmentDoc,y as OverviewLevelResultFragmentDoc,p as ResultState,F as SetEntityExemptDocument,w as SetManualCheckResultDocument,g as TrackEntityField,q as TrackLevelFragmentDoc,R as TrackStatusFragmentDoc,S as UpdateCampaignDocument,b as UpdateCheckDocument,N as UpdateCollectorConfigDocument,L as UpdateTrackDocument,Ee as getSdk};
846
885
  //# sourceMappingURL=index.esm.js.map
@@ -1,2 +1,2 @@
1
- import{stringifyEntityRef as o}from"@backstage/catalog-model";import{useApi as f}from"@backstage/core-plugin-api";import{useQuery as n}from"@tanstack/react-query";import{soundcheckApiRef as s}from"../../api.esm.js";import{QueryKeys as a}from"../graphqlKeys.esm.js";function c(e,i){const t=f(s),r=o(e);return n([a.CertificationDetails,r,i],async()=>t.getCertificationDetailsForTrack(r,i),{enabled:!!i})}export{c as useCertificationDetailsForTrack};
1
+ import{stringifyEntityRef as f}from"@backstage/catalog-model";import{useApi as n}from"@backstage/core-plugin-api";import{useQuery as s}from"@tanstack/react-query";import{soundcheckApiRef as a}from"../../api.esm.js";import{QueryKeys as c}from"../graphqlKeys.esm.js";function m(e,i,t=!1){const o=n(a),r=f(e);return s([c.CertificationDetails,r,i],async()=>o.getCertificationDetailsForTrack(r,i,t),{enabled:!!i})}export{m as useCertificationDetailsForTrack};
2
2
  //# sourceMappingURL=useCertificationDetailsForTrack.esm.js.map
@@ -0,0 +1,2 @@
1
+ import{useApi as c}from"@backstage/core-plugin-api";import{useQueryClient as l,useMutation as y}from"@tanstack/react-query";import{useParams as m}from"react-router-dom";import{soundcheckApiRef as f}from"../../api.esm.js";import{MutationKeys as d,QueryKeys as i}from"../graphqlKeys.esm.js";import{useSoundcheckAlert as h}from"../useSoundcheckAlert.esm.js";function k(){const s=c(f),r=l(),{showAlert:u}=h(),o=async t=>{const e=await s.setManualCheckResult(t);if(!e)throw new Error(`Failed to set manual result for check ${t.checkId} on entity ${t.entityRef}.`);return e},{trackId:n}=m();return y([d.SetResult],o,{onSuccess:(t,{checkId:e,entityRef:a})=>Promise.all([r.invalidateQueries({queryKey:[i.CertificationDetails,a]}),r.invalidateQueries({queryKey:[i.CertificationStatus,a]}),r.invalidateQueries({queryKey:[i.Certifications,a]}),r.invalidateQueries({queryKey:[i.CheckDetails,a,n,e]}),r.invalidateQueries({queryKey:[i.CheckStatus,e,a]}),r.invalidateQueries({queryKey:[i.TrackEntities]})]),onError:t=>{let e="Failed to execute check.";t instanceof Error&&(e=t.message),u({severity:"error",title:"Failed to set manual result.",message:e})}})}export{k as useSetManualResult};
2
+ //# sourceMappingURL=useSetManualResult.esm.js.map
@@ -0,0 +1,2 @@
1
+ import{useApi as l}from"@backstage/core-plugin-api";import{useQueryClient as c,useMutation as y}from"@tanstack/react-query";import{soundcheckApiRef as m}from"../../api.esm.js";import{MutationKeys as d,QueryKeys as r}from"../graphqlKeys.esm.js";import{useSoundcheckAlert as f}from"../useSoundcheckAlert.esm.js";function p(){const s=l(m),i=c(),{showAlert:a}=f(),u=async o=>{const{checkId:t,entityRef:e}=o,n=await s.deleteExemption(t,e);if(!n)throw new Error(`Failed to delete exemption for entity ${e} from check id ${t}.`);return n};return y([d.DeleteExemption],u,{onSuccess:({deleteExemption:o})=>{const{check_id:t,entity_ref:e}=o;return Promise.all([i.invalidateQueries({queryKey:[r.getExemption,e,t]}),i.invalidateQueries({queryKey:[r.GetChecks,t]}),i.invalidateQueries({queryKey:[r.TrackEntities,e]}),i.invalidateQueries({queryKey:[r.CertificationDetails,e]}),i.invalidateQueries({queryKey:[r.CertificationStatus,e]}),i.invalidateQueries({queryKey:[r.Certifications,e]}),i.invalidateQueries({queryKey:[r.CheckDetails,e]}),i.invalidateQueries({queryKey:[r.CheckStatus,t,e]})])},onError:o=>{let t="Failed to delete exemption.";o instanceof Error&&(t=o.message),a({severity:"error",title:"Error Deleting Exemption",message:t})}})}export{p as useDeleteExemption};
2
+ //# sourceMappingURL=useDeleteExemption.esm.js.map
@@ -0,0 +1,2 @@
1
+ import{useApi as i}from"@backstage/core-plugin-api";import{useQuery as n}from"@tanstack/react-query";import{soundcheckApiRef as m}from"../../api.esm.js";import{QueryKeys as f}from"../graphqlKeys.esm.js";function p(t,e){const r=i(m);return n([f.getExemption,t,e],async()=>{if(!e)return null;const o=await r.getExemption(e,t);if(!o)throw new Error(`Failed to check for exemption for entity ${t} for check id ${e}.`);return o})}export{p as useGetExemption};
2
+ //# sourceMappingURL=useGetExemption.esm.js.map
@@ -0,0 +1,2 @@
1
+ import{useApi as y}from"@backstage/core-plugin-api";import{useQueryClient as m,useMutation as f}from"@tanstack/react-query";import{soundcheckApiRef as l}from"../../api.esm.js";import{MutationKeys as d,QueryKeys as r}from"../graphqlKeys.esm.js";import{useSoundcheckAlert as p}from"../useSoundcheckAlert.esm.js";const E="Error Setting Exemption";function h(){const s=y(l),t=m(),{showAlert:a}=p(),u=async i=>{const{checkId:e,entityRef:n,justification:c}=i,o=await s.setEntityExempt({checkId:e,entityRef:n,justification:c});if(!o)throw new Error(`Failed to exempt entity ${n} from check id ${e}.`);return o};return f([d.CreateExemption],u,{onSuccess:({check_id:i,entity_ref:e})=>Promise.all([t.invalidateQueries({queryKey:[r.getExemption,e,i]}),t.invalidateQueries({queryKey:[r.GetChecks,i]}),t.invalidateQueries({queryKey:[r.TrackEntities,e]}),t.invalidateQueries({queryKey:[r.CertificationDetails,e]}),t.invalidateQueries({queryKey:[r.CertificationStatus,e]}),t.invalidateQueries({queryKey:[r.Certifications,e]}),t.invalidateQueries({queryKey:[r.CheckDetails,e]}),t.invalidateQueries({queryKey:[r.CheckStatus,i,e]})]),onError:i=>{let e="Failed to set exemption";i instanceof Error&&(e=i.message),a({severity:"error",title:E,message:e})}})}export{h as useSetEntityExempt};
2
+ //# sourceMappingURL=useSetEntityExempt.esm.js.map
@@ -1,2 +1,2 @@
1
- import{camelCase as l}from"lodash";import{useCallback as _,useEffect as g,useLayoutEffect as b}from"react";import{useSearchParams as N,useLocation as D,useNavigate as j}from"react-router-dom";import E from"react-use/lib/useLocalStorage";import{Facet as n}from"../../components/TechHealth/Filters/types.esm.js";import"../../components/TechHealth/Filters/FacetFilter.esm.js";import"../../components/TechHealth/Filters/FilterProvider.esm.js";import"../../components/TechHealth/Filters/Filters.esm.js";import"../../components/TechHealth/Filters/FiltersHeader.esm.js";import"../../components/TechHealth/Filters/FiltersSection.esm.js";import"@backstage/catalog-model";import"../../contexts/TrackFormContext.esm.js";import"../../contexts/CheckFormContext.esm.js";import"../../contexts/CampaignFormContext.esm.js";import"../../contexts/UserProvider.esm.js";import"@backstage/core-plugin-api";import"@tanstack/react-query";import"../../api.esm.js";import"../graphqlKeys.esm.js";import"@backstage/plugin-catalog-react";import"@spotify/backstage-plugin-soundcheck-common";import"../useSoundcheckAlert.esm.js";import"../useConfirmationModal.esm.js";import{emptyFacetFilters as h,DEFAULT_NUMBER_OF_DAYS as f,MIN_NUMBER_OF_DAYS as v,MAX_NUMBER_OF_DAYS as A}from"../../components/TechHealth/Filters/utils.esm.js";const M=(S,O)=>{const[e]=N(),s=D(),i=j(),u=O??S[n.EntityOwner][0]?.value,[a=h(u),p]=E("soundcheck.techHealth.facetFilters",h(u));a&&Object.values(n).forEach(t=>{a[t]||(a[t]=[])});const[c=f,F]=E("soundcheck.techHealth.numberOfDays",f),d=t=>!isNaN(t)&&t>=v&&t<=A,y=_((t,r)=>{const o={...a??h()};o[t]=r,p(o)},[a,p]);return g(()=>{const t=e.get("days");if(t&&t!==c.toString()){const r=parseInt(t,10);F(d(r)?r:f)}},[]),g(()=>{const t=e.get("days");(!t||t!==c.toString())&&(e.set("days",c.toString()),i({pathname:s.pathname,search:`?${e.toString()}`}))},[c,e,s,i]),b(()=>{let t=!0;const r=a;Object.values(n).forEach(o=>{const m=e.get(l(o));m?(t=!1,r[o]=m.split(",")):r[o]=[]}),t||p(r)},[]),g(()=>{Object.values(n).forEach(t=>{const r=a[t].join(","),o=l(t);r.length&&e.get(o)!==r&&(e.set(o,r),i({pathname:s.pathname,search:`?${e.toString()}`}))})},[a,e,s,i,u]),{setFacetFilter:(t,r)=>{y(t,r);const o=l(t);if(r.length){const m=r.join(",");e.get(o)!==m&&e.set(o,m)}else e.delete(o);i({pathname:s.pathname,search:`?${e.toString()}`})},getFacetFilter:t=>a?a[t]:[],clearFacetFilters:()=>{F(f),p(h()),e.delete("days"),Object.values(n).forEach(t=>{e.delete(l(t))}),i({pathname:s.pathname,search:`?${e.toString()}`})},facetFilters:a,numberOfDays:c,setNumberOfDays:F}};export{M as useFacetFilters};
1
+ import{camelCase as l}from"lodash";import{useCallback as d,useEffect as g,useLayoutEffect as _}from"react";import{useSearchParams as N,useLocation as D,useNavigate as j}from"react-router-dom";import E from"react-use/lib/useLocalStorage";import{Facet as n}from"../../components/TechHealth/Filters/types.esm.js";import"../../components/TechHealth/Filters/FacetFilter.esm.js";import"../../components/TechHealth/Filters/FilterProvider.esm.js";import"../../components/TechHealth/Filters/Filters.esm.js";import"../../components/TechHealth/Filters/FiltersHeader.esm.js";import"../../components/TechHealth/Filters/FiltersSection.esm.js";import"@backstage/catalog-model";import"../../contexts/TrackFormContext.esm.js";import"../../contexts/CheckFormContext.esm.js";import"../../contexts/CampaignFormContext.esm.js";import"../../contexts/UserProvider.esm.js";import"@backstage/core-plugin-api";import"@tanstack/react-query";import"../../api.esm.js";import"../graphqlKeys.esm.js";import"@backstage/plugin-catalog-react";import"@spotify/backstage-plugin-soundcheck-common";import"../useSoundcheckAlert.esm.js";import"../useConfirmationModal.esm.js";import{emptyFacetFilters as h,DEFAULT_NUMBER_OF_DAYS as f,MIN_NUMBER_OF_DAYS as v,MAX_NUMBER_OF_DAYS as A}from"../../components/TechHealth/Filters/utils.esm.js";const M=(S,O)=>{const[e]=N(),s=D(),i=j(),u=O??S[n.EntityOwner][0]?.value,[a=h(u),p]=E("soundcheck.techHealth.facetFilters",h(u));a&&Object.values(n).forEach(t=>{a[t]||(a[t]=[])});const[c=f,F]=E("soundcheck.techHealth.numberOfDays",f),y=t=>!isNaN(t)&&t>=v&&t<=A,b=d((t,r)=>{const o={...a??h()};o[t]=r,p(o)},[a,p]);return g(()=>{const t=e.get("days");if(t&&t!==c.toString()){const r=parseInt(t,10);F(y(r)?r:f)}},[]),g(()=>{const t=e.get("days");(!t||t!==c.toString())&&(e.set("days",c.toString()),i({pathname:s.pathname,search:`?${e.toString()}`}))},[c,e,s,i]),_(()=>{let t=!0;const r=a;Object.values(n).forEach(o=>{const m=e.get(l(o));m?(t=!1,r[o]=m.split(",")):r[o]=[]}),t||p(r)},[]),g(()=>{Object.values(n).forEach(t=>{const r=a[t].join(","),o=l(t);r.length&&e.get(o)!==r&&(e.set(o,r),i({pathname:s.pathname,search:`?${e.toString()}`}))})},[a,e,s,i,u]),{setFacetFilter:(t,r)=>{b(t,r);const o=l(t);if(r.length){const m=r.join(",");e.get(o)!==m&&e.set(o,m)}else e.delete(o);i({pathname:s.pathname,search:`?${e.toString()}`})},getFacetFilter:t=>a?a[t]:[],clearFacetFilters:()=>{F(f),p(h()),e.delete("days"),Object.values(n).forEach(t=>{e.delete(l(t))}),i({pathname:s.pathname,search:`?${e.toString()}`})},facetFilters:a,numberOfDays:c,setNumberOfDays:F}};export{M as useFacetFilters};
2
2
  //# sourceMappingURL=useFacetFilters.esm.js.map
@@ -1,2 +1,2 @@
1
- var t=(e=>(e.GetAllTracks="soundcheck/tracks",e.GetChecks="soundcheck/checks",e.GetCollectors="soundcheck/collectors",e.GetFactSchema="soundcheck/collectors/schema",e.GetEntityFacets="soundcheck/catalog/facets",e.GetSoftwareEntityRefsForUser="soundcheck/entities/softwareEntityRefsForUser",e.GetEntityRefs="soundcheck/catalog/entityRefs",e.ExecutableChecks="soundcheck/executableChecks",e.GetCampaigns="soundcheck/campaigns",e.GetOverallCheckPassRateTrends="soundcheck/charts/overallCheckPassRateTrends",e.GetIndividualCheckPassRateTrends="soundcheck/charts/getIndividualCheckPassRateTrends",e.GetOverallTrackPassRateTrends="soundcheck/charts/overallTrackPassRateTrends",e.GetIndividualTrackPassRateTrends="soundcheck/charts/individualTrackPassRateTrends",e.GetOverallEntityPassRateTrends="soundcheck/charts/overallEntityPassRateTrends",e.GetIndividualEntityPassRateTrends="soundcheck/charts/individualEntityPassRateTrends",e.GetOverallGroupPassRateTrends="soundcheck/charts/overallGroupPassRateTrends",e.GetIndividualGroupPassRateTrends="soundcheck/charts/individualGroupPassRateTrends",e.EntityByRef="soundcheck/catalog/entityByRef",e.EntitiesByRefs="soundcheck/catalog/entitiesByRef",e.TrackEntities="soundcheck/track/entities",e.CheckEntities="soundcheck/check/entities",e.CertificationStatus="soundcheck/certificationStatus",e.CertificationStatusHistory="soundcheck/certificationStatusHistory",e.CheckStatus="soundcheck/checkStatus",e.CheckStatuses="soundcheck/checkStatuses",e.CheckStatusHistory="soundcheck/checkStatusHistory",e.CheckStatusHistories="soundcheck/checkStatusHistories",e.CheckDetails="soundcheck/checkDetails",e.Certifications="soundcheck/certifications",e.CertificationDetails="soundcheck/certificationDetails",e.GetCheckOwners="soundcheck/checks/getOwners",e.GetTrackOwners="soundcheck/tracks/getOwners",e.GetCampaignOwners="soundcheck/campaigns/getOwners",e.GetTrackRelatedGroups="soundcheck/track/getTrackRelatedGroups",e.CheckTemplates="soundcheck/checkTemplates",e.GetFacetsForOwner="soundcheck/facets-for-owner",e.GetTrackOverviewForOwner="soundcheck/track-overview-for-owner",e))(t||{}),s=(e=>(e.DeleteCheck="soundcheck/deleteCheck",e.CreateCheck="soundcheck/createCheck",e.UpdateCheck="soundcheck/updateCheck",e.ExecuteCheck="soundcheck/executeCheck",e.DeleteTrack="soundcheck/deleteTrack",e.CreateTrack="soundcheck/createTrack",e.UpdateTrack="soundcheck/updateTrack",e.UpdateCollectorConfig="soundcheck/updateCollectorConfig",e.CreateCampaign="soundcheck/createCampaign",e.UpdateCampaign="soundcheck/updateCampaign",e.DeleteCampaign="soundcheck/deleteCampaign",e.ArchiveCampaign="soundcheck/archiveCampaign",e))(s||{});export{s as MutationKeys,t as QueryKeys};
1
+ var t=(e=>(e.GetAllTracks="soundcheck/tracks",e.GetChecks="soundcheck/checks",e.GetCollectors="soundcheck/collectors",e.GetFactSchema="soundcheck/collectors/schema",e.GetEntityFacets="soundcheck/catalog/facets",e.GetSoftwareEntityRefsForUser="soundcheck/entities/softwareEntityRefsForUser",e.GetEntityRefs="soundcheck/catalog/entityRefs",e.ExecutableChecks="soundcheck/executableChecks",e.GetCampaigns="soundcheck/campaigns",e.GetOverallCheckPassRateTrends="soundcheck/charts/overallCheckPassRateTrends",e.GetIndividualCheckPassRateTrends="soundcheck/charts/getIndividualCheckPassRateTrends",e.GetOverallTrackPassRateTrends="soundcheck/charts/overallTrackPassRateTrends",e.GetIndividualTrackPassRateTrends="soundcheck/charts/individualTrackPassRateTrends",e.GetOverallEntityPassRateTrends="soundcheck/charts/overallEntityPassRateTrends",e.GetIndividualEntityPassRateTrends="soundcheck/charts/individualEntityPassRateTrends",e.GetOverallGroupPassRateTrends="soundcheck/charts/overallGroupPassRateTrends",e.GetIndividualGroupPassRateTrends="soundcheck/charts/individualGroupPassRateTrends",e.EntityByRef="soundcheck/catalog/entityByRef",e.EntitiesByRefs="soundcheck/catalog/entitiesByRef",e.TrackEntities="soundcheck/track/entities",e.CheckEntities="soundcheck/check/entities",e.CertificationStatus="soundcheck/certificationStatus",e.CertificationStatusHistory="soundcheck/certificationStatusHistory",e.CheckStatus="soundcheck/checkStatus",e.CheckStatuses="soundcheck/checkStatuses",e.CheckStatusHistory="soundcheck/checkStatusHistory",e.CheckStatusHistories="soundcheck/checkStatusHistories",e.CheckDetails="soundcheck/checkDetails",e.Certifications="soundcheck/certifications",e.CertificationDetails="soundcheck/certificationDetails",e.GetCheckOwners="soundcheck/checks/getOwners",e.GetTrackOwners="soundcheck/tracks/getOwners",e.GetCampaignOwners="soundcheck/campaigns/getOwners",e.GetTrackRelatedGroups="soundcheck/track/getTrackRelatedGroups",e.CheckTemplates="soundcheck/checkTemplates",e.GetFacetsForOwner="soundcheck/facets-for-owner",e.GetTrackOverviewForOwner="soundcheck/track-overview-for-owner",e.getExemption="soundcheck/getExemption",e))(t||{}),s=(e=>(e.DeleteCheck="soundcheck/deleteCheck",e.CreateCheck="soundcheck/createCheck",e.UpdateCheck="soundcheck/updateCheck",e.ExecuteCheck="soundcheck/executeCheck",e.SetResult="soundcheck/setResult",e.CreateExemption="soundcheck/createExemption",e.UpdateExemption="soundcheck/updateExemption",e.DeleteExemption="soundcheck/deleteExemption",e.DeleteTrack="soundcheck/deleteTrack",e.CreateTrack="soundcheck/createTrack",e.UpdateTrack="soundcheck/updateTrack",e.UpdateCollectorConfig="soundcheck/updateCollectorConfig",e.CreateCampaign="soundcheck/createCampaign",e.UpdateCampaign="soundcheck/updateCampaign",e.DeleteCampaign="soundcheck/deleteCampaign",e.ArchiveCampaign="soundcheck/archiveCampaign",e))(s||{});export{s as MutationKeys,t as QueryKeys};
2
2
  //# sourceMappingURL=graphqlKeys.esm.js.map
package/dist/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import * as react from 'react';
3
2
  import * as _backstage_core_plugin_api from '@backstage/core-plugin-api';
4
3