@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 +11 -0
- package/alpha/package.json +1 -1
- package/dist/index.alpha.d.ts +1 -1
- package/dist/index.beta.d.ts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.esm.js +38 -21
- package/dist/index.esm.js.map +1 -1
- package/package.json +5 -5
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
|
package/alpha/package.json
CHANGED
package/dist/index.alpha.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: (
|
|
262
|
+
export declare const EntityProvider: (props: EntityProviderProps) => JSX.Element;
|
|
263
263
|
|
|
264
264
|
/**
|
|
265
265
|
* Properties for the EntityProvider component.
|
package/dist/index.beta.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: (
|
|
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: (
|
|
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 = (
|
|
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
|
|
486
|
-
const [selectedTypes, setSelectedTypes] = useState(
|
|
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 (
|
|
489
|
-
setSelectedTypes(
|
|
488
|
+
if (flattenedQueryTypes.length) {
|
|
489
|
+
setSelectedTypes(flattenedQueryTypes);
|
|
490
490
|
}
|
|
491
|
-
}, [
|
|
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 {
|
|
669
|
-
|
|
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 {
|
|
697
|
-
|
|
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 {
|
|
763
|
-
|
|
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 {
|
|
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(() => [
|
|
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 ===
|
|
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(() => [
|
|
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(() => ({
|