@backstage/plugin-scaffolder-react 1.10.0-next.0 → 1.10.0-next.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # @backstage/plugin-scaffolder-react
2
2
 
3
+ ## 1.10.0-next.1
4
+
5
+ ### Minor Changes
6
+
7
+ - 354e68c: Improve validation error display text in scaffolder
8
+
9
+ ### Patch Changes
10
+
11
+ - cc81579: Updated dependency `@rjsf/utils` to `5.18.5`.
12
+ Updated dependency `@rjsf/core` to `5.18.5`.
13
+ Updated dependency `@rjsf/material-ui` to `5.18.5`.
14
+ Updated dependency `@rjsf/validator-ajv8` to `5.18.5`.
15
+ - Updated dependencies
16
+ - @backstage/plugin-catalog-react@1.12.2-next.1
17
+ - @backstage/core-components@0.14.9-next.0
18
+ - @backstage/core-plugin-api@1.9.3
19
+ - @backstage/catalog-client@1.6.5
20
+ - @backstage/catalog-model@1.5.0
21
+ - @backstage/theme@0.5.6
22
+ - @backstage/types@1.1.1
23
+ - @backstage/version-bridge@1.0.8
24
+ - @backstage/plugin-permission-react@0.4.23
25
+ - @backstage/plugin-scaffolder-common@1.5.3
26
+
3
27
  ## 1.10.0-next.0
4
28
 
5
29
  ### Minor Changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@backstage/plugin-scaffolder-react__alpha",
3
- "version": "1.10.0-next.0",
3
+ "version": "1.10.0-next.1",
4
4
  "main": "../dist/alpha.esm.js",
5
5
  "module": "../dist/alpha.esm.js",
6
6
  "types": "../dist/alpha.d.ts"
@@ -17,7 +17,9 @@ const Form = (props) => {
17
17
  ...wrapperProps,
18
18
  uiSchema: wrapperProps.uiSchema ?? {},
19
19
  formData: wrapperProps.formData,
20
- rawErrors: wrapperProps.rawErrors ?? []
20
+ rawErrors: wrapperProps.rawErrors ?? [],
21
+ disabled: wrapperProps.disabled ?? false,
22
+ readonly: wrapperProps.readonly ?? false
21
23
  }
22
24
  );
23
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Form.esm.js","sources":["../../../../src/next/components/Form/Form.tsx"],"sourcesContent":["/*\n * Copyright 2022 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 { withTheme } from '@rjsf/core';\nimport React from 'react';\nimport { PropsWithChildren } from 'react';\nimport { FieldTemplate } from './FieldTemplate';\nimport { DescriptionFieldTemplate } from './DescriptionFieldTemplate';\nimport { FieldProps } from '@rjsf/utils';\nimport { ScaffolderRJSFFormProps } from '@backstage/plugin-scaffolder-react';\nimport { Theme as MuiTheme } from '@rjsf/material-ui';\n\nconst WrappedForm = withTheme(MuiTheme);\n\n/**\n * The Form component\n * @alpha\n */\nexport const Form = (props: PropsWithChildren<ScaffolderRJSFFormProps>) => {\n // This is where we unbreak the changes from RJSF, and make it work with our custom fields so we don't pass on this\n // breaking change to our users. We will look more into a better API for this in scaffolderv2.\n const wrappedFields = React.useMemo(\n () =>\n Object.fromEntries(\n Object.entries(props.fields ?? {}).map(([key, Component]) => [\n key,\n (wrapperProps: FieldProps) => {\n return (\n <Component\n {...wrapperProps}\n uiSchema={wrapperProps.uiSchema ?? {}}\n formData={wrapperProps.formData}\n rawErrors={wrapperProps.rawErrors ?? []}\n />\n );\n },\n ]),\n ),\n [props.fields],\n );\n\n const templates = React.useMemo(\n () => ({\n FieldTemplate,\n DescriptionFieldTemplate,\n ...props.templates,\n }),\n [props.templates],\n );\n\n return (\n <WrappedForm {...props} templates={templates} fields={wrappedFields} />\n );\n};\n"],"names":["MuiTheme"],"mappings":";;;;;;AAyBA,MAAM,WAAA,GAAc,UAAUA,KAAQ,CAAA,CAAA;AAMzB,MAAA,IAAA,GAAO,CAAC,KAAsD,KAAA;AAGzE,EAAA,MAAM,gBAAgB,KAAM,CAAA,OAAA;AAAA,IAC1B,MACE,MAAO,CAAA,WAAA;AAAA,MACL,MAAO,CAAA,OAAA,CAAQ,KAAM,CAAA,MAAA,IAAU,EAAE,CAAE,CAAA,GAAA,CAAI,CAAC,CAAC,GAAK,EAAA,SAAS,CAAM,KAAA;AAAA,QAC3D,GAAA;AAAA,QACA,CAAC,YAA6B,KAAA;AAC5B,UACE,uBAAA,KAAA,CAAA,aAAA;AAAA,YAAC,SAAA;AAAA,YAAA;AAAA,cACE,GAAG,YAAA;AAAA,cACJ,QAAA,EAAU,YAAa,CAAA,QAAA,IAAY,EAAC;AAAA,cACpC,UAAU,YAAa,CAAA,QAAA;AAAA,cACvB,SAAA,EAAW,YAAa,CAAA,SAAA,IAAa,EAAC;AAAA,aAAA;AAAA,WACxC,CAAA;AAAA,SAEJ;AAAA,OACD,CAAA;AAAA,KACH;AAAA,IACF,CAAC,MAAM,MAAM,CAAA;AAAA,GACf,CAAA;AAEA,EAAA,MAAM,YAAY,KAAM,CAAA,OAAA;AAAA,IACtB,OAAO;AAAA,MACL,aAAA;AAAA,MACA,wBAAA;AAAA,MACA,GAAG,KAAM,CAAA,SAAA;AAAA,KACX,CAAA;AAAA,IACA,CAAC,MAAM,SAAS,CAAA;AAAA,GAClB,CAAA;AAEA,EAAA,2CACG,WAAa,EAAA,EAAA,GAAG,KAAO,EAAA,SAAA,EAAsB,QAAQ,aAAe,EAAA,CAAA,CAAA;AAEzE;;;;"}
1
+ {"version":3,"file":"Form.esm.js","sources":["../../../../src/next/components/Form/Form.tsx"],"sourcesContent":["/*\n * Copyright 2022 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 { withTheme } from '@rjsf/core';\nimport React from 'react';\nimport { PropsWithChildren } from 'react';\nimport { FieldTemplate } from './FieldTemplate';\nimport { DescriptionFieldTemplate } from './DescriptionFieldTemplate';\nimport { FieldProps } from '@rjsf/utils';\nimport { ScaffolderRJSFFormProps } from '@backstage/plugin-scaffolder-react';\nimport { Theme as MuiTheme } from '@rjsf/material-ui';\n\nconst WrappedForm = withTheme(MuiTheme);\n\n/**\n * The Form component\n * @alpha\n */\nexport const Form = (props: PropsWithChildren<ScaffolderRJSFFormProps>) => {\n // This is where we unbreak the changes from RJSF, and make it work with our custom fields so we don't pass on this\n // breaking change to our users. We will look more into a better API for this in scaffolderv2.\n const wrappedFields = React.useMemo(\n () =>\n Object.fromEntries(\n Object.entries(props.fields ?? {}).map(([key, Component]) => [\n key,\n (wrapperProps: FieldProps) => {\n return (\n <Component\n {...wrapperProps}\n uiSchema={wrapperProps.uiSchema ?? {}}\n formData={wrapperProps.formData}\n rawErrors={wrapperProps.rawErrors ?? []}\n disabled={wrapperProps.disabled ?? false}\n readonly={wrapperProps.readonly ?? false}\n />\n );\n },\n ]),\n ),\n [props.fields],\n );\n\n const templates = React.useMemo(\n () => ({\n FieldTemplate,\n DescriptionFieldTemplate,\n ...props.templates,\n }),\n [props.templates],\n );\n\n return (\n <WrappedForm {...props} templates={templates} fields={wrappedFields} />\n );\n};\n"],"names":["MuiTheme"],"mappings":";;;;;;AAyBA,MAAM,WAAA,GAAc,UAAUA,KAAQ,CAAA,CAAA;AAMzB,MAAA,IAAA,GAAO,CAAC,KAAsD,KAAA;AAGzE,EAAA,MAAM,gBAAgB,KAAM,CAAA,OAAA;AAAA,IAC1B,MACE,MAAO,CAAA,WAAA;AAAA,MACL,MAAO,CAAA,OAAA,CAAQ,KAAM,CAAA,MAAA,IAAU,EAAE,CAAE,CAAA,GAAA,CAAI,CAAC,CAAC,GAAK,EAAA,SAAS,CAAM,KAAA;AAAA,QAC3D,GAAA;AAAA,QACA,CAAC,YAA6B,KAAA;AAC5B,UACE,uBAAA,KAAA,CAAA,aAAA;AAAA,YAAC,SAAA;AAAA,YAAA;AAAA,cACE,GAAG,YAAA;AAAA,cACJ,QAAA,EAAU,YAAa,CAAA,QAAA,IAAY,EAAC;AAAA,cACpC,UAAU,YAAa,CAAA,QAAA;AAAA,cACvB,SAAA,EAAW,YAAa,CAAA,SAAA,IAAa,EAAC;AAAA,cACtC,QAAA,EAAU,aAAa,QAAY,IAAA,KAAA;AAAA,cACnC,QAAA,EAAU,aAAa,QAAY,IAAA,KAAA;AAAA,aAAA;AAAA,WACrC,CAAA;AAAA,SAEJ;AAAA,OACD,CAAA;AAAA,KACH;AAAA,IACF,CAAC,MAAM,MAAM,CAAA;AAAA,GACf,CAAA;AAEA,EAAA,MAAM,YAAY,KAAM,CAAA,OAAA;AAAA,IACtB,OAAO;AAAA,MACL,aAAA;AAAA,MACA,wBAAA;AAAA,MACA,GAAG,KAAM,CAAA,SAAA;AAAA,KACX,CAAA;AAAA,IACA,CAAC,MAAM,SAAS,CAAA;AAAA,GAClB,CAAA;AAEA,EAAA,2CACG,WAAa,EAAA,EAAA,GAAG,KAAO,EAAA,SAAA,EAAsB,QAAQ,aAAe,EAAA,CAAA,CAAA;AAEzE;;;;"}
@@ -6,6 +6,7 @@ import ListItemText from '@material-ui/core/ListItemText';
6
6
  import Paper from '@material-ui/core/Paper';
7
7
  import { makeStyles, createStyles } from '@material-ui/core/styles';
8
8
  import ErrorIcon from '@material-ui/icons/Error';
9
+ import startCase from 'lodash/startCase';
9
10
 
10
11
  const useStyles = makeStyles(
11
12
  (_theme) => createStyles({
@@ -17,13 +18,26 @@ const useStyles = makeStyles(
17
18
  }
18
19
  })
19
20
  );
20
- const ErrorListTemplate = ({ errors }) => {
21
+ const ErrorListTemplate = ({ errors, schema }) => {
21
22
  const classes = useStyles();
23
+ function formatErrorMessage(error) {
24
+ if (error.property && error.message) {
25
+ const propertyName = error.property.startsWith(".") ? error.property.substring(1) : error.property;
26
+ if (schema.properties && propertyName in schema.properties) {
27
+ const property = schema.properties[propertyName];
28
+ if (typeof property === "object" && "title" in property) {
29
+ return `'${property.title}' ${error.message}`;
30
+ }
31
+ }
32
+ return `'${startCase(propertyName)}' ${error.message}`;
33
+ }
34
+ return error.stack;
35
+ }
22
36
  return /* @__PURE__ */ React.createElement(Paper, null, /* @__PURE__ */ React.createElement(List, { dense: true, className: classes.list }, errors.map((error, index) => /* @__PURE__ */ React.createElement(ListItem, { key: index }, /* @__PURE__ */ React.createElement(ListItemIcon, null, /* @__PURE__ */ React.createElement(ErrorIcon, { color: "error" })), /* @__PURE__ */ React.createElement(
23
37
  ListItemText,
24
38
  {
25
39
  classes: { primary: classes.text },
26
- primary: error.stack
40
+ primary: formatErrorMessage(error)
27
41
  }
28
42
  )))));
29
43
  };
@@ -1 +1 @@
1
- {"version":3,"file":"errorListTemplate.esm.js","sources":["../../../../../src/next/components/Stepper/ErrorListTemplate/errorListTemplate.tsx"],"sourcesContent":["/*\n * Copyright 2022 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 */\nimport React from 'react';\nimport { ErrorListProps } from '@rjsf/utils';\nimport List from '@material-ui/core/List';\nimport ListItem from '@material-ui/core/ListItem';\nimport ListItemIcon from '@material-ui/core/ListItemIcon';\nimport ListItemText from '@material-ui/core/ListItemText';\nimport Paper from '@material-ui/core/Paper';\nimport { Theme, createStyles, makeStyles } from '@material-ui/core/styles';\nimport ErrorIcon from '@material-ui/icons/Error';\n\nconst useStyles = makeStyles((_theme: Theme) =>\n createStyles({\n list: {\n width: '100%',\n },\n text: {\n textWrap: 'wrap',\n },\n }),\n);\n\n/**\n * Shows a list of errors found in the form\n *\n * @public\n */\nexport const ErrorListTemplate = ({ errors }: ErrorListProps) => {\n const classes = useStyles();\n\n return (\n <Paper>\n <List dense className={classes.list}>\n {errors.map((error, index) => (\n <ListItem key={index}>\n <ListItemIcon>\n <ErrorIcon color=\"error\" />\n </ListItemIcon>\n <ListItemText\n classes={{ primary: classes.text }}\n primary={error.stack}\n />\n </ListItem>\n ))}\n </List>\n </Paper>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;AAyBA,MAAM,SAAY,GAAA,UAAA;AAAA,EAAW,CAAC,WAC5B,YAAa,CAAA;AAAA,IACX,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,MAAA;AAAA,KACT;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,QAAU,EAAA,MAAA;AAAA,KACZ;AAAA,GACD,CAAA;AACH,CAAA,CAAA;AAOO,MAAM,iBAAoB,GAAA,CAAC,EAAE,MAAA,EAA6B,KAAA;AAC/D,EAAA,MAAM,UAAU,SAAU,EAAA,CAAA;AAE1B,EACE,uBAAA,KAAA,CAAA,aAAA,CAAC,KACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,IAAK,EAAA,EAAA,KAAA,EAAK,MAAC,SAAW,EAAA,OAAA,CAAQ,IAC5B,EAAA,EAAA,MAAA,CAAO,GAAI,CAAA,CAAC,OAAO,KAClB,qBAAA,KAAA,CAAA,aAAA,CAAC,QAAS,EAAA,EAAA,GAAA,EAAK,KACb,EAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,YACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,SAAU,EAAA,EAAA,KAAA,EAAM,OAAQ,EAAA,CAC3B,CACA,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,YAAA;AAAA,IAAA;AAAA,MACC,OAAS,EAAA,EAAE,OAAS,EAAA,OAAA,CAAQ,IAAK,EAAA;AAAA,MACjC,SAAS,KAAM,CAAA,KAAA;AAAA,KAAA;AAAA,GAEnB,CACD,CACH,CACF,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"errorListTemplate.esm.js","sources":["../../../../../src/next/components/Stepper/ErrorListTemplate/errorListTemplate.tsx"],"sourcesContent":["/*\n * Copyright 2022 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 */\nimport React from 'react';\nimport { ErrorListProps, RJSFValidationError } from '@rjsf/utils';\nimport List from '@material-ui/core/List';\nimport ListItem from '@material-ui/core/ListItem';\nimport ListItemIcon from '@material-ui/core/ListItemIcon';\nimport ListItemText from '@material-ui/core/ListItemText';\nimport Paper from '@material-ui/core/Paper';\nimport { Theme, createStyles, makeStyles } from '@material-ui/core/styles';\nimport ErrorIcon from '@material-ui/icons/Error';\nimport startCase from 'lodash/startCase';\n\nconst useStyles = makeStyles((_theme: Theme) =>\n createStyles({\n list: {\n width: '100%',\n },\n text: {\n textWrap: 'wrap',\n },\n }),\n);\n\n/**\n * Shows a list of errors found in the form\n *\n * @public\n */\nexport const ErrorListTemplate = ({ errors, schema }: ErrorListProps) => {\n const classes = useStyles();\n\n function formatErrorMessage(error: RJSFValidationError) {\n if (error.property && error.message) {\n const propertyName = error.property.startsWith('.')\n ? error.property.substring(1)\n : error.property;\n if (schema.properties && propertyName in schema.properties) {\n const property = schema.properties[propertyName];\n\n if (typeof property === 'object' && 'title' in property) {\n return `'${property.title}' ${error.message}`;\n }\n }\n // fall back to property name\n return `'${startCase(propertyName)}' ${error.message}`;\n }\n // fall back if property does not exist\n return error.stack;\n }\n\n return (\n <Paper>\n <List dense className={classes.list}>\n {errors.map((error, index) => (\n <ListItem key={index}>\n <ListItemIcon>\n <ErrorIcon color=\"error\" />\n </ListItemIcon>\n <ListItemText\n classes={{ primary: classes.text }}\n primary={formatErrorMessage(error)}\n />\n </ListItem>\n ))}\n </List>\n </Paper>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;AA0BA,MAAM,SAAY,GAAA,UAAA;AAAA,EAAW,CAAC,WAC5B,YAAa,CAAA;AAAA,IACX,IAAM,EAAA;AAAA,MACJ,KAAO,EAAA,MAAA;AAAA,KACT;AAAA,IACA,IAAM,EAAA;AAAA,MACJ,QAAU,EAAA,MAAA;AAAA,KACZ;AAAA,GACD,CAAA;AACH,CAAA,CAAA;AAOO,MAAM,iBAAoB,GAAA,CAAC,EAAE,MAAA,EAAQ,QAA6B,KAAA;AACvE,EAAA,MAAM,UAAU,SAAU,EAAA,CAAA;AAE1B,EAAA,SAAS,mBAAmB,KAA4B,EAAA;AACtD,IAAI,IAAA,KAAA,CAAM,QAAY,IAAA,KAAA,CAAM,OAAS,EAAA;AACnC,MAAM,MAAA,YAAA,GAAe,KAAM,CAAA,QAAA,CAAS,UAAW,CAAA,GAAG,CAC9C,GAAA,KAAA,CAAM,QAAS,CAAA,SAAA,CAAU,CAAC,CAAA,GAC1B,KAAM,CAAA,QAAA,CAAA;AACV,MAAA,IAAI,MAAO,CAAA,UAAA,IAAc,YAAgB,IAAA,MAAA,CAAO,UAAY,EAAA;AAC1D,QAAM,MAAA,QAAA,GAAW,MAAO,CAAA,UAAA,CAAW,YAAY,CAAA,CAAA;AAE/C,QAAA,IAAI,OAAO,QAAA,KAAa,QAAY,IAAA,OAAA,IAAW,QAAU,EAAA;AACvD,UAAA,OAAO,CAAI,CAAA,EAAA,QAAA,CAAS,KAAK,CAAA,EAAA,EAAK,MAAM,OAAO,CAAA,CAAA,CAAA;AAAA,SAC7C;AAAA,OACF;AAEA,MAAA,OAAO,IAAI,SAAU,CAAA,YAAY,CAAC,CAAA,EAAA,EAAK,MAAM,OAAO,CAAA,CAAA,CAAA;AAAA,KACtD;AAEA,IAAA,OAAO,KAAM,CAAA,KAAA,CAAA;AAAA,GACf;AAEA,EACE,uBAAA,KAAA,CAAA,aAAA,CAAC,KACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,IAAK,EAAA,EAAA,KAAA,EAAK,MAAC,SAAW,EAAA,OAAA,CAAQ,IAC5B,EAAA,EAAA,MAAA,CAAO,GAAI,CAAA,CAAC,OAAO,KAClB,qBAAA,KAAA,CAAA,aAAA,CAAC,QAAS,EAAA,EAAA,GAAA,EAAK,KACb,EAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,YACC,EAAA,IAAA,kBAAA,KAAA,CAAA,aAAA,CAAC,SAAU,EAAA,EAAA,KAAA,EAAM,OAAQ,EAAA,CAC3B,CACA,kBAAA,KAAA,CAAA,aAAA;AAAA,IAAC,YAAA;AAAA,IAAA;AAAA,MACC,OAAS,EAAA,EAAE,OAAS,EAAA,OAAA,CAAQ,IAAK,EAAA;AAAA,MACjC,OAAA,EAAS,mBAAmB,KAAK,CAAA;AAAA,KAAA;AAAA,GAErC,CACD,CACH,CACF,CAAA,CAAA;AAEJ;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@backstage/plugin-scaffolder-react",
3
- "version": "1.10.0-next.0",
3
+ "version": "1.10.0-next.1",
4
4
  "description": "A frontend library that helps other Backstage plugins interact with the Scaffolder",
5
5
  "backstage": {
6
6
  "role": "web-library",
@@ -61,7 +61,7 @@
61
61
  "@backstage/catalog-model": "^1.5.0",
62
62
  "@backstage/core-components": "^0.14.9-next.0",
63
63
  "@backstage/core-plugin-api": "^1.9.3",
64
- "@backstage/plugin-catalog-react": "^1.12.2-next.0",
64
+ "@backstage/plugin-catalog-react": "^1.12.2-next.1",
65
65
  "@backstage/plugin-permission-react": "^0.4.23",
66
66
  "@backstage/plugin-scaffolder-common": "^1.5.3",
67
67
  "@backstage/theme": "^0.5.6",
@@ -71,10 +71,10 @@
71
71
  "@material-ui/icons": "^4.9.1",
72
72
  "@material-ui/lab": "4.0.0-alpha.61",
73
73
  "@react-hookz/web": "^24.0.0",
74
- "@rjsf/core": "5.18.4",
75
- "@rjsf/material-ui": "5.18.4",
76
- "@rjsf/utils": "5.18.4",
77
- "@rjsf/validator-ajv8": "5.18.4",
74
+ "@rjsf/core": "5.18.5",
75
+ "@rjsf/material-ui": "5.18.5",
76
+ "@rjsf/utils": "5.18.5",
77
+ "@rjsf/validator-ajv8": "5.18.5",
78
78
  "@types/json-schema": "^7.0.9",
79
79
  "@types/react": "^16.13.1 || ^17.0.0 || ^18.0.0",
80
80
  "classnames": "^2.2.6",
@@ -92,12 +92,12 @@
92
92
  "zod-to-json-schema": "^3.20.4"
93
93
  },
94
94
  "devDependencies": {
95
- "@backstage/cli": "^0.26.10-next.0",
96
- "@backstage/core-app-api": "^1.13.0-next.0",
97
- "@backstage/plugin-catalog": "^1.21.1-next.0",
95
+ "@backstage/cli": "^0.26.11-next.1",
96
+ "@backstage/core-app-api": "^1.13.1-next.1",
97
+ "@backstage/plugin-catalog": "^1.21.1-next.1",
98
98
  "@backstage/plugin-catalog-common": "^1.0.24",
99
99
  "@backstage/plugin-permission-common": "^0.7.14",
100
- "@backstage/test-utils": "^1.5.7-next.0",
100
+ "@backstage/test-utils": "^1.5.8-next.1",
101
101
  "@testing-library/dom": "^10.0.0",
102
102
  "@testing-library/jest-dom": "^6.0.0",
103
103
  "@testing-library/react": "^15.0.0",