@backstage/plugin-catalog 0.7.1 → 0.7.5

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 (33) hide show
  1. package/CHANGELOG.md +73 -0
  2. package/dist/esm/{index-531f8367.esm.js → index-00a86fa7.esm.js} +3 -3
  3. package/dist/esm/index-00a86fa7.esm.js.map +1 -0
  4. package/dist/esm/{index-8f587acc.esm.js → index-09f72bec.esm.js} +3 -3
  5. package/dist/esm/{index-8f587acc.esm.js.map → index-09f72bec.esm.js.map} +1 -1
  6. package/dist/esm/{index-55d1a69b.esm.js → index-0d1fd1c3.esm.js} +3 -3
  7. package/dist/esm/{index-55d1a69b.esm.js.map → index-0d1fd1c3.esm.js.map} +1 -1
  8. package/dist/esm/{index-e3a14e6d.esm.js → index-45f1acd4.esm.js} +3 -3
  9. package/dist/esm/{index-e3a14e6d.esm.js.map → index-45f1acd4.esm.js.map} +1 -1
  10. package/dist/esm/{index-6366869d.esm.js → index-66d685f8.esm.js} +98 -108
  11. package/dist/esm/index-66d685f8.esm.js.map +1 -0
  12. package/dist/esm/{index-99e3a23f.esm.js → index-6cad9618.esm.js} +2 -2
  13. package/dist/esm/{index-99e3a23f.esm.js.map → index-6cad9618.esm.js.map} +1 -1
  14. package/dist/esm/{index-669e3497.esm.js → index-96cd0b79.esm.js} +3 -3
  15. package/dist/esm/index-96cd0b79.esm.js.map +1 -0
  16. package/dist/esm/{index-f2f98d41.esm.js → index-a83cc17f.esm.js} +3 -3
  17. package/dist/esm/{index-f2f98d41.esm.js.map → index-a83cc17f.esm.js.map} +1 -1
  18. package/dist/esm/{index-fc057bf8.esm.js → index-c9b0afd8.esm.js} +6 -6
  19. package/dist/esm/{index-fc057bf8.esm.js.map → index-c9b0afd8.esm.js.map} +1 -1
  20. package/dist/esm/{index-ef2084a6.esm.js → index-ca3eb997.esm.js} +3 -3
  21. package/dist/esm/{index-ef2084a6.esm.js.map → index-ca3eb997.esm.js.map} +1 -1
  22. package/dist/esm/{index-f9a9eace.esm.js → index-ce51b527.esm.js} +8 -8
  23. package/dist/esm/{index-f9a9eace.esm.js.map → index-ce51b527.esm.js.map} +1 -1
  24. package/dist/esm/{index-112e4b31.esm.js → index-f4427460.esm.js} +2 -2
  25. package/dist/esm/{index-112e4b31.esm.js.map → index-f4427460.esm.js.map} +1 -1
  26. package/dist/esm/{presets-f7f427ef.esm.js → presets-42c2cb51.esm.js} +7 -7
  27. package/dist/esm/{presets-f7f427ef.esm.js.map → presets-42c2cb51.esm.js.map} +1 -1
  28. package/dist/index.d.ts +7 -0
  29. package/dist/index.esm.js +2 -2
  30. package/package.json +19 -17
  31. package/dist/esm/index-531f8367.esm.js.map +0 -1
  32. package/dist/esm/index-6366869d.esm.js.map +0 -1
  33. package/dist/esm/index-669e3497.esm.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,78 @@
1
1
  # @backstage/plugin-catalog
2
2
 
3
+ ## 0.7.5
4
+
5
+ ### Patch Changes
6
+
7
+ - 3fa31ec84a: Deprecated the `CatalogClientWrapper` class.
8
+
9
+ The default implementation of `catalogApiRef` that this plugin exposes, is now powered by the new `fetchApiRef`. The default implementation of _that_ API, in turn, has the ability to inject the user's Backstage token in requests in a similar manner to what the deprecated `CatalogClientWrapper` used to do. The latter has therefore been taken out of the default catalog API implementation.
10
+
11
+ If you use a custom `fetchApiRef` implementation that does NOT issue tokens, or use a custom `catalogApiRef` implementation which does NOT use the default `fetchApiRef`, you can still for some time wrap your catalog API in this class to get back the old behavior:
12
+
13
+ ```ts
14
+ // Add this to your packages/app/src/plugins.ts if you want to get back the old
15
+ // catalog client behavior:
16
+ createApiFactory({
17
+ api: catalogApiRef,
18
+ deps: { discoveryApi: discoveryApiRef, identityApi: identityApiRef },
19
+ factory: ({ discoveryApi, identityApi }) =>
20
+ new CatalogClientWrapper({
21
+ client: new CatalogClient({ discoveryApi }),
22
+ identityApi,
23
+ }),
24
+ }),
25
+ ```
26
+
27
+ But do consider migrating to making use of the `fetchApiRef` as soon as convenient, since the wrapper class will be removed in a future release.
28
+
29
+ - 7a4bd2ceac: Prefer using `Link` from `@backstage/core-components` rather than material-UI.
30
+ - Updated dependencies
31
+ - @backstage/core-plugin-api@0.4.0
32
+ - @backstage/plugin-catalog-react@0.6.8
33
+ - @backstage/core-components@0.8.2
34
+ - @backstage/catalog-client@0.5.3
35
+ - @backstage/integration-react@0.1.16
36
+
37
+ ## 0.7.4
38
+
39
+ ### Patch Changes
40
+
41
+ - 9603827bb5: Addressed some peer dependency warnings
42
+ - cd450844f6: Moved React dependencies to `peerDependencies` and allow both React v16 and v17 to be used.
43
+ - Updated dependencies
44
+ - @backstage/core-components@0.8.0
45
+ - @backstage/core-plugin-api@0.3.0
46
+ - @backstage/integration-react@0.1.15
47
+ - @backstage/plugin-catalog-react@0.6.5
48
+
49
+ ## 0.7.3
50
+
51
+ ### Patch Changes
52
+
53
+ - 38d6df6bb9: Remove the "View Api" icon in the AboutCard, as the information is misleading for some users and is
54
+ duplicated in the tabs above.
55
+ - a125278b81: Refactor out the deprecated path and icon from RouteRefs
56
+ - Updated dependencies
57
+ - @backstage/catalog-client@0.5.2
58
+ - @backstage/catalog-model@0.9.7
59
+ - @backstage/plugin-catalog-react@0.6.4
60
+ - @backstage/core-components@0.7.4
61
+ - @backstage/core-plugin-api@0.2.0
62
+ - @backstage/integration-react@0.1.14
63
+
64
+ ## 0.7.2
65
+
66
+ ### Patch Changes
67
+
68
+ - 36e67d2f24: Internal updates to apply more strict checks to throw errors.
69
+ - Updated dependencies
70
+ - @backstage/core-components@0.7.1
71
+ - @backstage/errors@0.1.3
72
+ - @backstage/core-plugin-api@0.1.11
73
+ - @backstage/plugin-catalog-react@0.6.1
74
+ - @backstage/catalog-model@0.9.5
75
+
3
76
  ## 0.7.1
4
77
 
5
78
  ### Patch Changes
@@ -1,4 +1,4 @@
1
- export { C as CatalogPage } from './index-6366869d.esm.js';
1
+ export { C as CatalogPage } from './index-66d685f8.esm.js';
2
2
  import '@backstage/catalog-model';
3
3
  import '@backstage/core-components';
4
4
  import '@backstage/core-plugin-api';
@@ -8,7 +8,6 @@ import '@material-ui/core';
8
8
  import '@material-ui/icons/Cached';
9
9
  import '@material-ui/icons/Description';
10
10
  import '@material-ui/icons/Edit';
11
- import '@material-ui/icons/Extension';
12
11
  import 'react';
13
12
  import '@material-ui/icons/OpenInNew';
14
13
  import 'lodash';
@@ -17,9 +16,10 @@ import 'react-router';
17
16
  import '@material-ui/core/styles';
18
17
  import '@material-ui/icons/Cancel';
19
18
  import '@material-ui/icons/MoreVert';
19
+ import '@backstage/errors';
20
20
  import '@backstage/catalog-client';
21
21
  import 'react-use';
22
22
  import 'react-helmet';
23
23
  import '@material-ui/icons/FilterList';
24
24
  import '../components/EntityNotFound/Illo/illo.svg';
25
- //# sourceMappingURL=index-531f8367.esm.js.map
25
+ //# sourceMappingURL=index-00a86fa7.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-00a86fa7.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,11 +1,11 @@
1
1
  import { RELATION_DEPENDS_ON } from '@backstage/catalog-model';
2
2
  import React from 'react';
3
- import { R as RelatedEntitiesCard, r as resourceEntityColumns, d as componentEntityHelpLink, f as asResourceEntities } from './presets-f7f427ef.esm.js';
3
+ import { R as RelatedEntitiesCard, r as resourceEntityColumns, d as componentEntityHelpLink, f as asResourceEntities } from './presets-42c2cb51.esm.js';
4
4
  import '@material-ui/core';
5
5
  import '@backstage/plugin-catalog-react';
6
6
  import '@backstage/core-components';
7
7
 
8
- const DependsOnResourcesCard = ({variant = "gridItem"}) => {
8
+ const DependsOnResourcesCard = ({ variant = "gridItem" }) => {
9
9
  return /* @__PURE__ */ React.createElement(RelatedEntitiesCard, {
10
10
  variant,
11
11
  title: "Depends on resources",
@@ -19,4 +19,4 @@ const DependsOnResourcesCard = ({variant = "gridItem"}) => {
19
19
  };
20
20
 
21
21
  export { DependsOnResourcesCard };
22
- //# sourceMappingURL=index-8f587acc.esm.js.map
22
+ //# sourceMappingURL=index-09f72bec.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-8f587acc.esm.js","sources":["../../src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { RELATION_DEPENDS_ON } from '@backstage/catalog-model';\nimport React from 'react';\nimport {\n asResourceEntities,\n componentEntityHelpLink,\n RelatedEntitiesCard,\n resourceEntityColumns,\n} from '../RelatedEntitiesCard';\n\ntype Props = {\n variant?: 'gridItem';\n};\n\nexport const DependsOnResourcesCard = ({ variant = 'gridItem' }: Props) => {\n return (\n <RelatedEntitiesCard\n variant={variant}\n title=\"Depends on resources\"\n entityKind=\"Resource\"\n relationType={RELATION_DEPENDS_ON}\n columns={resourceEntityColumns}\n emptyMessage=\"No resource is a dependency of this component\"\n emptyHelpLink={componentEntityHelpLink}\n asRenderableEntities={asResourceEntities}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;MA6Ba,yBAAyB,CAAC,CAAE,UAAU,gBAAwB;AACzE,6CACG,qBAAD;AAAA,IACE;AAAA,IACA,OAAM;AAAA,IACN,YAAW;AAAA,IACX,cAAc;AAAA,IACd,SAAS;AAAA,IACT,cAAa;AAAA,IACb,eAAe;AAAA,IACf,sBAAsB;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index-09f72bec.esm.js","sources":["../../src/components/DependsOnResourcesCard/DependsOnResourcesCard.tsx"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { RELATION_DEPENDS_ON } from '@backstage/catalog-model';\nimport React from 'react';\nimport {\n asResourceEntities,\n componentEntityHelpLink,\n RelatedEntitiesCard,\n resourceEntityColumns,\n} from '../RelatedEntitiesCard';\n\ntype Props = {\n variant?: 'gridItem';\n};\n\nexport const DependsOnResourcesCard = ({ variant = 'gridItem' }: Props) => {\n return (\n <RelatedEntitiesCard\n variant={variant}\n title=\"Depends on resources\"\n entityKind=\"Resource\"\n relationType={RELATION_DEPENDS_ON}\n columns={resourceEntityColumns}\n emptyMessage=\"No resource is a dependency of this component\"\n emptyHelpLink={componentEntityHelpLink}\n asRenderableEntities={asResourceEntities}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;MA6Ba,yBAAyB,CAAC,EAAE,UAAU,iBAAwB;AACzE,6CACG,qBAAD;AAAA,IACE;AAAA,IACA,OAAM;AAAA,IACN,YAAW;AAAA,IACX,cAAc;AAAA,IACd,SAAS;AAAA,IACT,cAAa;AAAA,IACb,eAAe;AAAA,IACf,sBAAsB;AAAA;AAAA;;;;"}
@@ -1,11 +1,11 @@
1
1
  import { RELATION_HAS_PART } from '@backstage/catalog-model';
2
2
  import React from 'react';
3
- import { R as RelatedEntitiesCard, s as systemEntityColumns, a as asSystemEntities, b as systemEntityHelpLink } from './presets-f7f427ef.esm.js';
3
+ import { R as RelatedEntitiesCard, s as systemEntityColumns, a as asSystemEntities, b as systemEntityHelpLink } from './presets-42c2cb51.esm.js';
4
4
  import '@material-ui/core';
5
5
  import '@backstage/plugin-catalog-react';
6
6
  import '@backstage/core-components';
7
7
 
8
- const HasSystemsCard = ({variant = "gridItem"}) => {
8
+ const HasSystemsCard = ({ variant = "gridItem" }) => {
9
9
  return /* @__PURE__ */ React.createElement(RelatedEntitiesCard, {
10
10
  variant,
11
11
  title: "Has systems",
@@ -19,4 +19,4 @@ const HasSystemsCard = ({variant = "gridItem"}) => {
19
19
  };
20
20
 
21
21
  export { HasSystemsCard };
22
- //# sourceMappingURL=index-55d1a69b.esm.js.map
22
+ //# sourceMappingURL=index-0d1fd1c3.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-55d1a69b.esm.js","sources":["../../src/components/HasSystemsCard/HasSystemsCard.tsx"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { RELATION_HAS_PART } from '@backstage/catalog-model';\nimport React from 'react';\nimport {\n asSystemEntities,\n RelatedEntitiesCard,\n systemEntityColumns,\n systemEntityHelpLink,\n} from '../RelatedEntitiesCard';\n\ntype Props = {\n variant?: 'gridItem';\n};\n\nexport const HasSystemsCard = ({ variant = 'gridItem' }: Props) => {\n return (\n <RelatedEntitiesCard\n variant={variant}\n title=\"Has systems\"\n entityKind=\"System\"\n relationType={RELATION_HAS_PART}\n columns={systemEntityColumns}\n asRenderableEntities={asSystemEntities}\n emptyMessage=\"No system is part of this domain\"\n emptyHelpLink={systemEntityHelpLink}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;MA6Ba,iBAAiB,CAAC,CAAE,UAAU,gBAAwB;AACjE,6CACG,qBAAD;AAAA,IACE;AAAA,IACA,OAAM;AAAA,IACN,YAAW;AAAA,IACX,cAAc;AAAA,IACd,SAAS;AAAA,IACT,sBAAsB;AAAA,IACtB,cAAa;AAAA,IACb,eAAe;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index-0d1fd1c3.esm.js","sources":["../../src/components/HasSystemsCard/HasSystemsCard.tsx"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { RELATION_HAS_PART } from '@backstage/catalog-model';\nimport React from 'react';\nimport {\n asSystemEntities,\n RelatedEntitiesCard,\n systemEntityColumns,\n systemEntityHelpLink,\n} from '../RelatedEntitiesCard';\n\ntype Props = {\n variant?: 'gridItem';\n};\n\nexport const HasSystemsCard = ({ variant = 'gridItem' }: Props) => {\n return (\n <RelatedEntitiesCard\n variant={variant}\n title=\"Has systems\"\n entityKind=\"System\"\n relationType={RELATION_HAS_PART}\n columns={systemEntityColumns}\n asRenderableEntities={asSystemEntities}\n emptyMessage=\"No system is part of this domain\"\n emptyHelpLink={systemEntityHelpLink}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;MA6Ba,iBAAiB,CAAC,EAAE,UAAU,iBAAwB;AACjE,6CACG,qBAAD;AAAA,IACE;AAAA,IACA,OAAM;AAAA,IACN,YAAW;AAAA,IACX,cAAc;AAAA,IACd,SAAS;AAAA,IACT,sBAAsB;AAAA,IACtB,cAAa;AAAA,IACb,eAAe;AAAA;AAAA;;;;"}
@@ -1,11 +1,11 @@
1
1
  import { RELATION_HAS_PART } from '@backstage/catalog-model';
2
2
  import React from 'react';
3
- import { R as RelatedEntitiesCard, c as componentEntityColumns, d as componentEntityHelpLink, e as asComponentEntities } from './presets-f7f427ef.esm.js';
3
+ import { R as RelatedEntitiesCard, c as componentEntityColumns, d as componentEntityHelpLink, e as asComponentEntities } from './presets-42c2cb51.esm.js';
4
4
  import '@material-ui/core';
5
5
  import '@backstage/plugin-catalog-react';
6
6
  import '@backstage/core-components';
7
7
 
8
- const HasComponentsCard = ({variant = "gridItem"}) => {
8
+ const HasComponentsCard = ({ variant = "gridItem" }) => {
9
9
  return /* @__PURE__ */ React.createElement(RelatedEntitiesCard, {
10
10
  variant,
11
11
  title: "Has components",
@@ -19,4 +19,4 @@ const HasComponentsCard = ({variant = "gridItem"}) => {
19
19
  };
20
20
 
21
21
  export { HasComponentsCard };
22
- //# sourceMappingURL=index-e3a14e6d.esm.js.map
22
+ //# sourceMappingURL=index-45f1acd4.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-e3a14e6d.esm.js","sources":["../../src/components/HasComponentsCard/HasComponentsCard.tsx"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { RELATION_HAS_PART } from '@backstage/catalog-model';\nimport React from 'react';\nimport {\n asComponentEntities,\n componentEntityColumns,\n componentEntityHelpLink,\n RelatedEntitiesCard,\n} from '../RelatedEntitiesCard';\n\ntype Props = {\n variant?: 'gridItem';\n};\n\nexport const HasComponentsCard = ({ variant = 'gridItem' }: Props) => {\n return (\n <RelatedEntitiesCard\n variant={variant}\n title=\"Has components\"\n entityKind=\"Component\"\n relationType={RELATION_HAS_PART}\n columns={componentEntityColumns}\n emptyMessage=\"No component is part of this system\"\n emptyHelpLink={componentEntityHelpLink}\n asRenderableEntities={asComponentEntities}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;MA6Ba,oBAAoB,CAAC,CAAE,UAAU,gBAAwB;AACpE,6CACG,qBAAD;AAAA,IACE;AAAA,IACA,OAAM;AAAA,IACN,YAAW;AAAA,IACX,cAAc;AAAA,IACd,SAAS;AAAA,IACT,cAAa;AAAA,IACb,eAAe;AAAA,IACf,sBAAsB;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"index-45f1acd4.esm.js","sources":["../../src/components/HasComponentsCard/HasComponentsCard.tsx"],"sourcesContent":["/*\n * Copyright 2020 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { RELATION_HAS_PART } from '@backstage/catalog-model';\nimport React from 'react';\nimport {\n asComponentEntities,\n componentEntityColumns,\n componentEntityHelpLink,\n RelatedEntitiesCard,\n} from '../RelatedEntitiesCard';\n\ntype Props = {\n variant?: 'gridItem';\n};\n\nexport const HasComponentsCard = ({ variant = 'gridItem' }: Props) => {\n return (\n <RelatedEntitiesCard\n variant={variant}\n title=\"Has components\"\n entityKind=\"Component\"\n relationType={RELATION_HAS_PART}\n columns={componentEntityColumns}\n emptyMessage=\"No component is part of this system\"\n emptyHelpLink={componentEntityHelpLink}\n asRenderableEntities={asComponentEntities}\n />\n );\n};\n"],"names":[],"mappings":";;;;;;;MA6Ba,oBAAoB,CAAC,EAAE,UAAU,iBAAwB;AACpE,6CACG,qBAAD;AAAA,IACE;AAAA,IACA,OAAM;AAAA,IACN,YAAW;AAAA,IACX,cAAc;AAAA,IACd,SAAS;AAAA,IACT,cAAa;AAAA,IACb,eAAe;AAAA,IACf,sBAAsB;AAAA;AAAA;;;;"}