@kyverno/backstage-plugin-policy-reporter 2.6.0 → 2.8.0

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 (57) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/alpha/plugin.esm.js +70 -0
  3. package/dist/alpha/plugin.esm.js.map +1 -0
  4. package/dist/alpha.d.ts +129 -0
  5. package/dist/alpha.esm.js +2 -0
  6. package/dist/alpha.esm.js.map +1 -0
  7. package/dist/api/PolicyReporterClient.esm.js.map +1 -1
  8. package/dist/components/EntityCustomPoliciesContent/EntityCustomPoliciesContent.esm.js +48 -80
  9. package/dist/components/EntityCustomPoliciesContent/EntityCustomPoliciesContent.esm.js.map +1 -1
  10. package/dist/components/EntityCustomPoliciesContent/index.esm.js +5 -1
  11. package/dist/components/EntityCustomPoliciesContent/index.esm.js.map +1 -1
  12. package/dist/components/EntityKyvernoPoliciesContent/EntityKyvernoPoliciesContent.esm.js +48 -80
  13. package/dist/components/EntityKyvernoPoliciesContent/EntityKyvernoPoliciesContent.esm.js.map +1 -1
  14. package/dist/components/EntityKyvernoPoliciesContent/index.esm.js +5 -1
  15. package/dist/components/EntityKyvernoPoliciesContent/index.esm.js.map +1 -1
  16. package/dist/components/MissingEnvironmentsEmptyState/MissingEnvironmentsEmptyState.esm.js +1 -1
  17. package/dist/components/MissingEnvironmentsEmptyState/MissingEnvironmentsEmptyState.esm.js.map +1 -1
  18. package/dist/components/PolicyReportsDrawerComponent/PolicyReportsDrawerComponent.esm.js +1 -1
  19. package/dist/components/PolicyReportsDrawerComponent/PolicyReportsDrawerComponent.esm.js.map +1 -1
  20. package/dist/components/PolicyReportsPage/PolicyReportsPage.esm.js +41 -64
  21. package/dist/components/PolicyReportsPage/PolicyReportsPage.esm.js.map +1 -1
  22. package/dist/components/PolicyReportsPage/index.esm.js +5 -1
  23. package/dist/components/PolicyReportsPage/index.esm.js.map +1 -1
  24. package/dist/components/PolicyReportsTable/PolicyReportsTable.esm.js +85 -111
  25. package/dist/components/PolicyReportsTable/PolicyReportsTable.esm.js.map +1 -1
  26. package/dist/components/SearchField/SearchField.esm.js +33 -0
  27. package/dist/components/SearchField/SearchField.esm.js.map +1 -0
  28. package/dist/components/SelectEnvironment/SelectEnvironment.esm.js +22 -41
  29. package/dist/components/SelectEnvironment/SelectEnvironment.esm.js.map +1 -1
  30. package/dist/components/SelectNamespace/SelectNamespace.esm.js +35 -45
  31. package/dist/components/SelectNamespace/SelectNamespace.esm.js.map +1 -1
  32. package/dist/components/SelectSeverity/SelectSeverity.esm.js +40 -51
  33. package/dist/components/SelectSeverity/SelectSeverity.esm.js.map +1 -1
  34. package/dist/components/SelectStatus/SelectStatus.esm.js +40 -51
  35. package/dist/components/SelectStatus/SelectStatus.esm.js.map +1 -1
  36. package/dist/components/SeverityComponent/SeverityComponent.esm.js +11 -35
  37. package/dist/components/SeverityComponent/SeverityComponent.esm.js.map +1 -1
  38. package/dist/components/StatusComponent/StatusComponent.esm.js.map +1 -1
  39. package/dist/hooks/useEntityEnvironment.esm.js +1 -9
  40. package/dist/hooks/useEntityEnvironment.esm.js.map +1 -1
  41. package/dist/hooks/useEnvironments.esm.js +17 -30
  42. package/dist/hooks/useEnvironments.esm.js.map +1 -1
  43. package/dist/hooks/useNamespaces.esm.js +4 -4
  44. package/dist/hooks/useNamespaces.esm.js.map +1 -1
  45. package/dist/hooks/usePolicyReportsFilters.esm.js +90 -0
  46. package/dist/hooks/usePolicyReportsFilters.esm.js.map +1 -0
  47. package/dist/index.d.ts +1 -1
  48. package/dist/package.json.esm.js +110 -0
  49. package/dist/package.json.esm.js.map +1 -0
  50. package/dist/plugin.esm.js +1 -1
  51. package/dist/plugin.esm.js.map +1 -1
  52. package/dist/routes.esm.js.map +1 -1
  53. package/dist/utils/annotations.esm.js +1 -1
  54. package/dist/utils/annotations.esm.js.map +1 -1
  55. package/package.json +46 -21
  56. package/dist/hooks/usePaginatedPolicies.esm.js +0 -51
  57. package/dist/hooks/usePaginatedPolicies.esm.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kyverno/backstage-plugin-policy-reporter",
3
- "version": "2.6.0",
3
+ "version": "2.8.0",
4
4
  "main": "dist/index.esm.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "license": "Apache-2.0",
@@ -16,13 +16,40 @@
16
16
  "@kyverno/backstage-plugin-policy-reporter",
17
17
  "@kyverno/backstage-plugin-policy-reporter-backend",
18
18
  "@kyverno/backstage-plugin-policy-reporter-common"
19
- ]
19
+ ],
20
+ "features": {
21
+ "./alpha": "@backstage/FrontendPlugin"
22
+ }
20
23
  },
21
24
  "publishConfig": {
22
25
  "access": "public",
23
26
  "main": "dist/index.esm.js",
24
27
  "types": "dist/index.d.ts"
25
28
  },
29
+ "exports": {
30
+ ".": {
31
+ "import": "./dist/index.esm.js",
32
+ "types": "./dist/index.d.ts",
33
+ "default": "./dist/index.esm.js"
34
+ },
35
+ "./alpha": {
36
+ "backstage": "@backstage/FrontendPlugin",
37
+ "import": "./dist/alpha.esm.js",
38
+ "types": "./dist/alpha.d.ts",
39
+ "default": "./dist/alpha.esm.js"
40
+ },
41
+ "./package.json": "./package.json"
42
+ },
43
+ "typesVersions": {
44
+ "*": {
45
+ "alpha": [
46
+ "dist/alpha.d.ts"
47
+ ],
48
+ "package.json": [
49
+ "package.json"
50
+ ]
51
+ }
52
+ },
26
53
  "sideEffects": false,
27
54
  "scripts": {
28
55
  "start": "backstage-cli package start",
@@ -39,40 +66,38 @@
39
66
  "directory": "plugins/policy-reporter"
40
67
  },
41
68
  "dependencies": {
42
- "@backstage/catalog-client": "^1.12.0",
43
- "@backstage/catalog-model": "^1.7.5",
44
- "@backstage/core-components": "^0.18.1",
45
- "@backstage/core-plugin-api": "^1.11.0",
46
- "@backstage/plugin-catalog-react": "^1.21.1",
47
- "@backstage/theme": "^0.6.8",
48
- "@kyverno/backstage-plugin-policy-reporter-common": "^2.2.0",
69
+ "@backstage/catalog-client": "^1.15.0",
70
+ "@backstage/catalog-model": "^1.8.0",
71
+ "@backstage/core-components": "^0.18.9",
72
+ "@backstage/core-plugin-api": "^1.12.5",
73
+ "@backstage/frontend-plugin-api": "^0.16.2",
74
+ "@backstage/plugin-catalog-react": "^2.1.4",
75
+ "@backstage/theme": "^0.7.3",
76
+ "@backstage/ui": "^0.14.3",
77
+ "@kyverno/backstage-plugin-policy-reporter-common": "^2.4.0",
49
78
  "@material-ui/core": "^4.12.4",
50
79
  "@material-ui/icons": "^4.11.3",
51
80
  "@material-ui/lab": "4.0.0-alpha.61",
81
+ "qs": "^6.15.0",
52
82
  "react-use": "^17.6.0"
53
83
  },
54
84
  "peerDependencies": {
55
- "react": "^16.13.1 || ^17.0.0 || ^18.0.0"
85
+ "react": "^16.13.1 || ^17.0.0 || ^18.0.0",
86
+ "react-router-dom": "^6.0.0"
56
87
  },
57
88
  "devDependencies": {
58
- "@backstage/cli": "^0.34.3",
59
- "@backstage/core-app-api": "^1.19.0",
60
- "@backstage/dev-utils": "^1.1.14",
61
- "@backstage/test-utils": "^1.7.11",
89
+ "@backstage/cli": "^0.36.1",
90
+ "@backstage/core-app-api": "^1.20.0",
91
+ "@backstage/dev-utils": "^1.1.22",
92
+ "@backstage/test-utils": "^1.7.17",
62
93
  "@testing-library/jest-dom": "^6.0.0",
63
94
  "@testing-library/react": "^14.0.0",
64
95
  "@testing-library/user-event": "^14.0.0",
96
+ "@types/qs": "^6.15.0",
65
97
  "msw": "^1.0.0"
66
98
  },
67
99
  "files": [
68
100
  "dist"
69
101
  ],
70
- "typesVersions": {
71
- "*": {
72
- "package.json": [
73
- "package.json"
74
- ]
75
- }
76
- },
77
102
  "module": "./dist/index.esm.js"
78
103
  }
@@ -1,51 +0,0 @@
1
- import { useAsync } from 'react-use';
2
- import { useApi } from '@backstage/core-plugin-api';
3
- import { policyReporterApiRef } from '../api/PolicyReporterClient.esm.js';
4
- import { useState, useEffect } from 'react';
5
-
6
- const DEFAULT_OFFSET = 5;
7
- const DEFAULT_PAGE = 0;
8
- const usePaginatedPolicies = (currentEnvironment, filter, pagination) => {
9
- const policyReporterApi = useApi(policyReporterApiRef);
10
- const [currentPage, setCurrentPage] = useState(
11
- pagination?.page ?? DEFAULT_PAGE
12
- );
13
- const [currentOffset, setCurrentOffset] = useState(
14
- pagination?.offset ?? DEFAULT_OFFSET
15
- );
16
- const [initialLoading, setInitialLoading] = useState(true);
17
- useEffect(() => {
18
- setInitialLoading(true);
19
- }, [currentEnvironment]);
20
- const {
21
- value: policies,
22
- loading: policiesLoading,
23
- error: policiesError
24
- } = useAsync(async () => {
25
- const data = await policyReporterApi.getNamespacedResults({
26
- query: {
27
- environment: encodeURI(currentEnvironment.entityRef),
28
- ...filter,
29
- // Material UI expects the first page to be 0. But the Policy Reporter API expects the first page to be 1
30
- // This increments the currentPage with 1 to match the expected page by the Policy Reporter API
31
- page: currentPage + 1,
32
- offset: currentOffset
33
- }
34
- });
35
- setInitialLoading(false);
36
- return data.json();
37
- }, [currentEnvironment, filter, currentPage, currentOffset]);
38
- return {
39
- policies,
40
- policiesLoading,
41
- policiesError,
42
- currentPage,
43
- setCurrentPage,
44
- currentOffset,
45
- setCurrentOffset,
46
- initialLoading
47
- };
48
- };
49
-
50
- export { usePaginatedPolicies };
51
- //# sourceMappingURL=usePaginatedPolicies.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePaginatedPolicies.esm.js","sources":["../../src/hooks/usePaginatedPolicies.ts"],"sourcesContent":["import { useAsync } from 'react-use';\nimport {\n Environment,\n Pagination,\n} from '@kyverno/backstage-plugin-policy-reporter-common';\nimport { useApi } from '@backstage/core-plugin-api';\nimport { policyReporterApiRef } from '../api';\nimport {\n Filter,\n ResultList,\n} from '@kyverno/backstage-plugin-policy-reporter-common';\nimport { useEffect, useState } from 'react';\n\nconst DEFAULT_OFFSET = 5;\nconst DEFAULT_PAGE = 0;\n\nexport const usePaginatedPolicies = (\n currentEnvironment: Environment,\n filter: Filter,\n pagination?: Partial<Pagination>,\n) => {\n const policyReporterApi = useApi(policyReporterApiRef);\n const [currentPage, setCurrentPage] = useState<number>(\n pagination?.page ?? DEFAULT_PAGE,\n );\n const [currentOffset, setCurrentOffset] = useState<number>(\n pagination?.offset ?? DEFAULT_OFFSET,\n );\n const [initialLoading, setInitialLoading] = useState<boolean>(true);\n\n useEffect(() => {\n setInitialLoading(true);\n }, [currentEnvironment]);\n\n const {\n value: policies,\n loading: policiesLoading,\n error: policiesError,\n } = useAsync(async (): Promise<ResultList> => {\n const data = await policyReporterApi.getNamespacedResults({\n query: {\n environment: encodeURI(currentEnvironment.entityRef),\n ...filter,\n // Material UI expects the first page to be 0. But the Policy Reporter API expects the first page to be 1\n // This increments the currentPage with 1 to match the expected page by the Policy Reporter API\n page: currentPage + 1,\n offset: currentOffset,\n },\n });\n\n setInitialLoading(false);\n return data.json();\n }, [currentEnvironment, filter, currentPage, currentOffset]);\n\n return {\n policies,\n policiesLoading,\n policiesError,\n currentPage,\n setCurrentPage,\n currentOffset,\n setCurrentOffset,\n initialLoading,\n };\n};\n"],"names":[],"mappings":";;;;;AAaA,MAAM,cAAiB,GAAA,CAAA;AACvB,MAAM,YAAe,GAAA,CAAA;AAEd,MAAM,oBAAuB,GAAA,CAClC,kBACA,EAAA,MAAA,EACA,UACG,KAAA;AACH,EAAM,MAAA,iBAAA,GAAoB,OAAO,oBAAoB,CAAA;AACrD,EAAM,MAAA,CAAC,WAAa,EAAA,cAAc,CAAI,GAAA,QAAA;AAAA,IACpC,YAAY,IAAQ,IAAA;AAAA,GACtB;AACA,EAAM,MAAA,CAAC,aAAe,EAAA,gBAAgB,CAAI,GAAA,QAAA;AAAA,IACxC,YAAY,MAAU,IAAA;AAAA,GACxB;AACA,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAI,SAAkB,IAAI,CAAA;AAElE,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,iBAAA,CAAkB,IAAI,CAAA;AAAA,GACxB,EAAG,CAAC,kBAAkB,CAAC,CAAA;AAEvB,EAAM,MAAA;AAAA,IACJ,KAAO,EAAA,QAAA;AAAA,IACP,OAAS,EAAA,eAAA;AAAA,IACT,KAAO,EAAA;AAAA,GACT,GAAI,SAAS,YAAiC;AAC5C,IAAM,MAAA,IAAA,GAAO,MAAM,iBAAA,CAAkB,oBAAqB,CAAA;AAAA,MACxD,KAAO,EAAA;AAAA,QACL,WAAA,EAAa,SAAU,CAAA,kBAAA,CAAmB,SAAS,CAAA;AAAA,QACnD,GAAG,MAAA;AAAA;AAAA;AAAA,QAGH,MAAM,WAAc,GAAA,CAAA;AAAA,QACpB,MAAQ,EAAA;AAAA;AACV,KACD,CAAA;AAED,IAAA,iBAAA,CAAkB,KAAK,CAAA;AACvB,IAAA,OAAO,KAAK,IAAK,EAAA;AAAA,KAChB,CAAC,kBAAA,EAAoB,MAAQ,EAAA,WAAA,EAAa,aAAa,CAAC,CAAA;AAE3D,EAAO,OAAA;AAAA,IACL,QAAA;AAAA,IACA,eAAA;AAAA,IACA,aAAA;AAAA,IACA,WAAA;AAAA,IACA,cAAA;AAAA,IACA,aAAA;AAAA,IACA,gBAAA;AAAA,IACA;AAAA,GACF;AACF;;;;"}