@backstage/plugin-catalog-react 1.0.1-next.1 → 1.0.1-next.2

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 CHANGED
@@ -1,5 +1,16 @@
1
1
  # @backstage/plugin-catalog-react
2
2
 
3
+ ## 1.0.1-next.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 4be0d1e777: Changed catalog filter components to only pay attention to query parameters relevant to the component.
8
+ - 5d5fdbe541: Columns in CatalogTable now change depending on the entity kind, ensuring only relevant columns are displayed.
9
+ - 99063c39ae: Minor API report cleanup
10
+ - Updated dependencies
11
+ - @backstage/core-components@0.9.3-next.1
12
+ - @backstage/catalog-model@1.0.1-next.1
13
+
3
14
  ## 1.0.1-next.1
4
15
 
5
16
  ### Patch Changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@backstage/plugin-catalog-react",
3
- "version": "1.0.1-next.1",
3
+ "version": "1.0.1-next.2",
4
4
  "main": "../dist/index.esm.js",
5
5
  "types": "../dist/index.alpha.d.ts"
6
6
  }
@@ -259,7 +259,7 @@ export declare const EntityOwnerPicker: () => JSX.Element | null;
259
259
  *
260
260
  * @public
261
261
  */
262
- export declare const EntityProvider: ({ entity, children }: EntityProviderProps) => JSX.Element;
262
+ export declare const EntityProvider: (props: EntityProviderProps) => JSX.Element;
263
263
 
264
264
  /**
265
265
  * Properties for the EntityProvider component.
@@ -259,7 +259,7 @@ export declare const EntityOwnerPicker: () => JSX.Element | null;
259
259
  *
260
260
  * @public
261
261
  */
262
- export declare const EntityProvider: ({ entity, children }: EntityProviderProps) => JSX.Element;
262
+ export declare const EntityProvider: (props: EntityProviderProps) => JSX.Element;
263
263
 
264
264
  /**
265
265
  * Properties for the EntityProvider component.
package/dist/index.d.ts CHANGED
@@ -259,7 +259,7 @@ export declare const EntityOwnerPicker: () => JSX.Element | null;
259
259
  *
260
260
  * @public
261
261
  */
262
- export declare const EntityProvider: ({ entity, children }: EntityProviderProps) => JSX.Element;
262
+ export declare const EntityProvider: (props: EntityProviderProps) => JSX.Element;
263
263
 
264
264
  /**
265
265
  * Properties for the EntityProvider component.
package/dist/index.esm.js CHANGED
@@ -125,12 +125,12 @@ const AsyncEntityProvider = ({
125
125
  value: createVersionedValueMap({ 1: value })
126
126
  }, children);
127
127
  };
128
- const EntityProvider = ({ entity, children }) => /* @__PURE__ */ React.createElement(AsyncEntityProvider, {
129
- entity,
130
- loading: !Boolean(entity),
128
+ const EntityProvider = (props) => /* @__PURE__ */ React.createElement(AsyncEntityProvider, {
129
+ entity: props.entity,
130
+ loading: !Boolean(props.entity),
131
131
  error: void 0,
132
132
  refresh: void 0,
133
- children
133
+ children: props.children
134
134
  });
135
135
  function useEntity() {
136
136
  const versionedHolder = useVersionedContext("entity-context");
@@ -479,16 +479,16 @@ function useEntityTypeFilter() {
479
479
  const catalogApi = useApi(catalogApiRef);
480
480
  const {
481
481
  filters: { kind: kindFilter, type: typeFilter },
482
- queryParameters,
482
+ queryParameters: { type: typeParameter },
483
483
  updateFilters
484
484
  } = useEntityList();
485
- const queryParamTypes = useMemo(() => [queryParameters.type].flat().filter(Boolean), [queryParameters]);
486
- const [selectedTypes, setSelectedTypes] = useState(queryParamTypes.length ? queryParamTypes : (_a = typeFilter == null ? void 0 : typeFilter.getTypes()) != null ? _a : []);
485
+ const flattenedQueryTypes = useMemo(() => [typeParameter].flat().filter(Boolean), [typeParameter]);
486
+ const [selectedTypes, setSelectedTypes] = useState(flattenedQueryTypes.length ? flattenedQueryTypes : (_a = typeFilter == null ? void 0 : typeFilter.getTypes()) != null ? _a : []);
487
487
  useEffect(() => {
488
- if (queryParamTypes.length) {
489
- setSelectedTypes(queryParamTypes);
488
+ if (flattenedQueryTypes.length) {
489
+ setSelectedTypes(flattenedQueryTypes);
490
490
  }
491
- }, [queryParamTypes]);
491
+ }, [flattenedQueryTypes]);
492
492
  const [availableTypes, setAvailableTypes] = useState([]);
493
493
  const kind = useMemo(() => kindFilter == null ? void 0 : kindFilter.value, [kindFilter]);
494
494
  const {
@@ -665,8 +665,11 @@ function useEntityPermission(permission) {
665
665
  const EntityKindPicker = (props) => {
666
666
  var _a;
667
667
  const { initialFilter, hidden } = props;
668
- const { updateFilters, queryParameters } = useEntityList();
669
- const [selectedKind] = useState((_a = [queryParameters.kind].flat()[0]) != null ? _a : initialFilter);
668
+ const {
669
+ updateFilters,
670
+ queryParameters: { kind: kindParameter }
671
+ } = useEntityList();
672
+ const [selectedKind] = useState((_a = [kindParameter].flat()[0]) != null ? _a : initialFilter);
670
673
  useEffect(() => {
671
674
  updateFilters({
672
675
  kind: selectedKind ? new EntityKindFilter(selectedKind) : void 0
@@ -693,8 +696,13 @@ const checkedIcon$2 = /* @__PURE__ */ React.createElement(CheckBoxIcon, {
693
696
  const EntityLifecyclePicker = () => {
694
697
  var _a, _b;
695
698
  const classes = useStyles$b();
696
- const { updateFilters, backendEntities, filters, queryParameters } = useEntityList();
697
- const queryParamLifecycles = useMemo(() => [queryParameters.lifecycles].flat().filter(Boolean), [queryParameters]);
699
+ const {
700
+ updateFilters,
701
+ backendEntities,
702
+ filters,
703
+ queryParameters: { lifecycles: lifecyclesParameter }
704
+ } = useEntityList();
705
+ const queryParamLifecycles = useMemo(() => [lifecyclesParameter].flat().filter(Boolean), [lifecyclesParameter]);
698
706
  const [selectedLifecycles, setSelectedLifecycles] = useState(queryParamLifecycles.length ? queryParamLifecycles : (_b = (_a = filters.lifecycles) == null ? void 0 : _a.values) != null ? _b : []);
699
707
  useEffect(() => {
700
708
  if (queryParamLifecycles.length) {
@@ -759,8 +767,13 @@ const checkedIcon$1 = /* @__PURE__ */ React.createElement(CheckBoxIcon, {
759
767
  const EntityOwnerPicker = () => {
760
768
  var _a, _b;
761
769
  const classes = useStyles$a();
762
- const { updateFilters, backendEntities, filters, queryParameters } = useEntityList();
763
- const queryParamOwners = useMemo(() => [queryParameters.owners].flat().filter(Boolean), [queryParameters]);
770
+ const {
771
+ updateFilters,
772
+ backendEntities,
773
+ filters,
774
+ queryParameters: { owners: ownersParameter }
775
+ } = useEntityList();
776
+ const queryParamOwners = useMemo(() => [ownersParameter].flat().filter(Boolean), [ownersParameter]);
764
777
  const [selectedOwners, setSelectedOwners] = useState(queryParamOwners.length ? queryParamOwners : (_b = (_a = filters.owners) == null ? void 0 : _a.values) != null ? _b : []);
765
778
  useEffect(() => {
766
779
  if (queryParamOwners.length) {
@@ -1032,7 +1045,11 @@ const checkedIcon = /* @__PURE__ */ React.createElement(CheckBoxIcon, {
1032
1045
  const EntityTagPicker = () => {
1033
1046
  var _a, _b;
1034
1047
  const classes = useStyles$7();
1035
- const { updateFilters, filters, queryParameters } = useEntityList();
1048
+ const {
1049
+ updateFilters,
1050
+ filters,
1051
+ queryParameters: { tags: tagsParameter }
1052
+ } = useEntityList();
1036
1053
  const catalogApi = useApi(catalogApiRef);
1037
1054
  const { value: availableTags } = useAsync(async () => {
1038
1055
  var _a2;
@@ -1043,7 +1060,7 @@ const EntityTagPicker = () => {
1043
1060
  });
1044
1061
  return facets[facet].map(({ value }) => value);
1045
1062
  }, [filters.kind]);
1046
- const queryParamTags = useMemo(() => [queryParameters.tags].flat().filter(Boolean), [queryParameters]);
1063
+ const queryParamTags = useMemo(() => [tagsParameter].flat().filter(Boolean), [tagsParameter]);
1047
1064
  const [selectedTags, setSelectedTags] = useState(queryParamTags.length ? queryParamTags : (_b = (_a = filters.tags) == null ? void 0 : _a.values) != null ? _b : []);
1048
1065
  useEffect(() => {
1049
1066
  if (queryParamTags.length) {
@@ -1962,20 +1979,20 @@ const UserListPicker = (props) => {
1962
1979
  filters,
1963
1980
  updateFilters,
1964
1981
  backendEntities,
1965
- queryParameters,
1982
+ queryParameters: { kind: kindParameter, user: userParameter },
1966
1983
  loading: loadingBackendEntities
1967
1984
  } = useEntityList();
1968
1985
  const userAndGroupFilterIds = ["starred", "all"];
1969
1986
  const filterGroups = getFilterGroups(orgName).map((filterGroup) => ({
1970
1987
  ...filterGroup,
1971
- items: filterGroup.items.filter(({ id }) => ["group", "user"].some((kind) => kind === queryParameters.kind) ? userAndGroupFilterIds.includes(id) : !availableFilters || availableFilters.includes(id))
1988
+ items: filterGroup.items.filter(({ id }) => ["group", "user"].some((kind) => kind === kindParameter) ? userAndGroupFilterIds.includes(id) : !availableFilters || availableFilters.includes(id))
1972
1989
  })).filter(({ items }) => !!items.length);
1973
1990
  const { isStarredEntity } = useStarredEntities();
1974
1991
  const { isOwnedEntity, loading: loadingEntityOwnership } = useEntityOwnership();
1975
1992
  const loading = loadingBackendEntities || loadingEntityOwnership;
1976
1993
  const ownedFilter = useMemo(() => new UserListFilter("owned", isOwnedEntity, isStarredEntity), [isOwnedEntity, isStarredEntity]);
1977
1994
  const starredFilter = useMemo(() => new UserListFilter("starred", isOwnedEntity, isStarredEntity), [isOwnedEntity, isStarredEntity]);
1978
- const queryParamUserFilter = useMemo(() => [queryParameters.user].flat()[0], [queryParameters]);
1995
+ const queryParamUserFilter = useMemo(() => [userParameter].flat()[0], [userParameter]);
1979
1996
  const [selectedUserFilter, setSelectedUserFilter] = useState(queryParamUserFilter != null ? queryParamUserFilter : initialFilter);
1980
1997
  const entitiesWithoutUserFilter = useMemo(() => backendEntities.filter(reduceEntityFilters(compact(Object.values({ ...filters, user: void 0 })))), [filters, backendEntities]);
1981
1998
  const filterCounts = useMemo(() => ({