@backstage/plugin-scaffolder 1.36.3-next.1 → 1.37.0-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.
Files changed (83) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/dist/alpha/api/FormDecoratorsApi.esm.js.map +1 -1
  3. package/dist/alpha/api/ref.esm.js.map +1 -1
  4. package/dist/alpha/components/TemplateEditorPage/CustomFieldExplorer.esm.js +4 -4
  5. package/dist/alpha/components/TemplateEditorPage/CustomFieldExplorer.esm.js.map +1 -1
  6. package/dist/alpha/components/TemplateEditorPage/CustomFieldPlayground.esm.js +5 -5
  7. package/dist/alpha/components/TemplateEditorPage/CustomFieldPlayground.esm.js.map +1 -1
  8. package/dist/alpha/components/TemplateListPage/TemplateListPage.esm.js +14 -14
  9. package/dist/alpha/components/TemplateListPage/TemplateListPage.esm.js.map +1 -1
  10. package/dist/alpha/components/TemplatesSubPage.esm.js +20 -10
  11. package/dist/alpha/components/TemplatesSubPage.esm.js.map +1 -1
  12. package/dist/alpha/extensions.esm.js +28 -2
  13. package/dist/alpha/extensions.esm.js.map +1 -1
  14. package/dist/alpha/hooks/useFormDecorators.esm.js +34 -3
  15. package/dist/alpha/hooks/useFormDecorators.esm.js.map +1 -1
  16. package/dist/alpha/lib/createGroupsWithOther.esm.js +13 -0
  17. package/dist/alpha/lib/createGroupsWithOther.esm.js.map +1 -0
  18. package/dist/alpha.d.ts +14 -4
  19. package/dist/components/TemplateTypePicker/TemplateTypePicker.esm.js +4 -4
  20. package/dist/components/TemplateTypePicker/TemplateTypePicker.esm.js.map +1 -1
  21. package/dist/components/TemplatingExtensionsPage/TemplatingExtensionsPage.esm.js +4 -4
  22. package/dist/components/TemplatingExtensionsPage/TemplatingExtensionsPage.esm.js.map +1 -1
  23. package/dist/components/fields/Autocomplete/Autocomplete.esm.js +23 -0
  24. package/dist/components/fields/Autocomplete/Autocomplete.esm.js.map +1 -0
  25. package/dist/components/fields/EntityNamePicker/EntityNamePicker.esm.js +23 -2
  26. package/dist/components/fields/EntityNamePicker/EntityNamePicker.esm.js.map +1 -1
  27. package/dist/components/fields/EntityPicker/EntityPicker.esm.js +125 -9
  28. package/dist/components/fields/EntityPicker/EntityPicker.esm.js.map +1 -1
  29. package/dist/components/fields/EntityTagsPicker/EntityTagsPicker.esm.js +106 -7
  30. package/dist/components/fields/EntityTagsPicker/EntityTagsPicker.esm.js.map +1 -1
  31. package/dist/components/fields/MultiEntityPicker/MultiEntityPicker.esm.js +128 -10
  32. package/dist/components/fields/MultiEntityPicker/MultiEntityPicker.esm.js.map +1 -1
  33. package/dist/components/fields/MyGroupsPicker/MyGroupsPicker.esm.js +66 -6
  34. package/dist/components/fields/MyGroupsPicker/MyGroupsPicker.esm.js.map +1 -1
  35. package/dist/components/fields/OwnedEntityPicker/OwnedEntityPicker.esm.js +29 -6
  36. package/dist/components/fields/OwnedEntityPicker/OwnedEntityPicker.esm.js.map +1 -1
  37. package/dist/components/fields/OwnedEntityPicker/schema.esm.js +1 -0
  38. package/dist/components/fields/OwnedEntityPicker/schema.esm.js.map +1 -1
  39. package/dist/components/fields/RepoBranchPicker/BitbucketRepoBranchPicker.esm.js +29 -5
  40. package/dist/components/fields/RepoBranchPicker/BitbucketRepoBranchPicker.esm.js.map +1 -1
  41. package/dist/components/fields/RepoBranchPicker/DefaultRepoBranchPicker.esm.js +20 -3
  42. package/dist/components/fields/RepoBranchPicker/DefaultRepoBranchPicker.esm.js.map +1 -1
  43. package/dist/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.esm.js +29 -5
  44. package/dist/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.esm.js.map +1 -1
  45. package/dist/components/fields/RepoBranchPicker/RepoBranchPicker.esm.js +18 -6
  46. package/dist/components/fields/RepoBranchPicker/RepoBranchPicker.esm.js.map +1 -1
  47. package/dist/components/fields/RepoOwnerPicker/DefaultRepoOwnerPicker.esm.js +20 -3
  48. package/dist/components/fields/RepoOwnerPicker/DefaultRepoOwnerPicker.esm.js.map +1 -1
  49. package/dist/components/fields/RepoOwnerPicker/GitHubRepoOwnerPicker.esm.js +29 -5
  50. package/dist/components/fields/RepoOwnerPicker/GitHubRepoOwnerPicker.esm.js.map +1 -1
  51. package/dist/components/fields/RepoOwnerPicker/RepoOwnerPicker.esm.js +28 -31
  52. package/dist/components/fields/RepoOwnerPicker/RepoOwnerPicker.esm.js.map +1 -1
  53. package/dist/components/fields/RepoUrlPicker/AzureRepoPicker.esm.js +86 -4
  54. package/dist/components/fields/RepoUrlPicker/AzureRepoPicker.esm.js.map +1 -1
  55. package/dist/components/fields/RepoUrlPicker/BitbucketRepoPicker.esm.js +107 -11
  56. package/dist/components/fields/RepoUrlPicker/BitbucketRepoPicker.esm.js.map +1 -1
  57. package/dist/components/fields/RepoUrlPicker/GerritRepoPicker.esm.js +33 -3
  58. package/dist/components/fields/RepoUrlPicker/GerritRepoPicker.esm.js.map +1 -1
  59. package/dist/components/fields/RepoUrlPicker/GiteaRepoPicker.esm.js +42 -5
  60. package/dist/components/fields/RepoUrlPicker/GiteaRepoPicker.esm.js.map +1 -1
  61. package/dist/components/fields/RepoUrlPicker/GithubRepoPicker.esm.js +52 -7
  62. package/dist/components/fields/RepoUrlPicker/GithubRepoPicker.esm.js.map +1 -1
  63. package/dist/components/fields/RepoUrlPicker/GitlabRepoPicker.esm.js +60 -16
  64. package/dist/components/fields/RepoUrlPicker/GitlabRepoPicker.esm.js.map +1 -1
  65. package/dist/components/fields/RepoUrlPicker/RepoUrlPicker.esm.js +23 -9
  66. package/dist/components/fields/RepoUrlPicker/RepoUrlPicker.esm.js.map +1 -1
  67. package/dist/components/fields/RepoUrlPicker/RepoUrlPickerHost.esm.js +27 -3
  68. package/dist/components/fields/RepoUrlPicker/RepoUrlPickerHost.esm.js.map +1 -1
  69. package/dist/components/fields/RepoUrlPicker/RepoUrlPickerRepoName.esm.js +60 -6
  70. package/dist/components/fields/RepoUrlPicker/RepoUrlPickerRepoName.esm.js.map +1 -1
  71. package/dist/components/fields/SecretInput/SecretInput.esm.js +57 -2
  72. package/dist/components/fields/SecretInput/SecretInput.esm.js.map +1 -1
  73. package/dist/components/fields/buiChipStyles.esm.js +25 -0
  74. package/dist/components/fields/buiChipStyles.esm.js.map +1 -0
  75. package/dist/components/fields/scaffolderFieldOverrides.module.css.esm.js +8 -0
  76. package/dist/components/fields/scaffolderFieldOverrides.module.css.esm.js.map +1 -0
  77. package/dist/index.esm.js +2 -0
  78. package/dist/index.esm.js.map +1 -1
  79. package/dist/node_modules_dist/style-inject/dist/style-inject.es.esm.js +29 -0
  80. package/dist/node_modules_dist/style-inject/dist/style-inject.es.esm.js.map +1 -0
  81. package/dist/plugins/scaffolder/package.json.esm.js +3 -1
  82. package/dist/plugins/scaffolder/package.json.esm.js.map +1 -1
  83. package/package.json +9 -7
@@ -1,15 +1,70 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import { ScaffolderField, SecretWidget } from '@backstage/plugin-scaffolder-react/alpha';
2
+ import { useTemplateSecrets } from '@backstage/plugin-scaffolder-react';
3
+ import { useScaffolderTheme, ScaffolderField, SecretWidget } from '@backstage/plugin-scaffolder-react/alpha';
4
+ import { PasswordField } from '@backstage/ui';
5
+ import { useState, useMemo, useEffect } from 'react';
6
+ import debounce from 'lodash/debounce';
3
7
 
4
8
  const SecretInput = (props) => {
9
+ const theme = useScaffolderTheme();
5
10
  const {
6
- schema: { description },
11
+ name,
12
+ onChange,
13
+ schema: { title, description, minLength, maxLength },
7
14
  rawErrors,
8
15
  disabled,
9
16
  errors,
10
17
  required,
11
18
  uiSchema
12
19
  } = props;
20
+ const { setSecrets, secrets } = useTemplateSecrets();
21
+ const [localValue, setLocalValue] = useState(secrets[name] ?? "");
22
+ const debouncedSetSecrets = useMemo(
23
+ () => debounce((value) => {
24
+ setSecrets({ [name]: value });
25
+ }, 300),
26
+ [setSecrets, name]
27
+ );
28
+ useEffect(() => {
29
+ return () => {
30
+ debouncedSetSecrets.flush();
31
+ };
32
+ }, [debouncedSetSecrets]);
33
+ useEffect(() => {
34
+ setLocalValue(secrets[name] ?? "");
35
+ }, [secrets, name]);
36
+ const handleChange = (value) => {
37
+ setLocalValue(value);
38
+ onChange(Array(value.length).fill("*").join(""));
39
+ debouncedSetSecrets(value);
40
+ };
41
+ if (theme === "bui") {
42
+ return /* @__PURE__ */ jsx(
43
+ ScaffolderField,
44
+ {
45
+ rawErrors,
46
+ rawDescription: uiSchema["ui:description"] ?? description,
47
+ disabled,
48
+ errors,
49
+ required,
50
+ children: /* @__PURE__ */ jsx(
51
+ PasswordField,
52
+ {
53
+ label: title,
54
+ secondaryLabel: required ? "Required" : void 0,
55
+ onChange: handleChange,
56
+ value: localValue,
57
+ autoComplete: "off",
58
+ isRequired: required,
59
+ isDisabled: disabled,
60
+ isInvalid: rawErrors && rawErrors.length > 0,
61
+ minLength,
62
+ maxLength
63
+ }
64
+ )
65
+ }
66
+ );
67
+ }
13
68
  return /* @__PURE__ */ jsx(
14
69
  ScaffolderField,
15
70
  {
@@ -1 +1 @@
1
- {"version":3,"file":"SecretInput.esm.js","sources":["../../../../src/components/fields/SecretInput/SecretInput.tsx"],"sourcesContent":["/*\n * Copyright 2023 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 { ScaffolderRJSFFieldProps } from '@backstage/plugin-scaffolder-react';\nimport {\n ScaffolderField,\n SecretWidget,\n} from '@backstage/plugin-scaffolder-react/alpha';\n\nexport const SecretInput = (props: ScaffolderRJSFFieldProps) => {\n const {\n schema: { description },\n rawErrors,\n disabled,\n errors,\n required,\n uiSchema,\n } = props;\n\n return (\n <ScaffolderField\n rawErrors={rawErrors}\n rawDescription={uiSchema['ui:description'] ?? description}\n disabled={disabled}\n errors={errors}\n required={required}\n >\n <SecretWidget {...props} />\n </ScaffolderField>\n );\n};\n"],"names":[],"mappings":";;;AAqBO,MAAM,WAAA,GAAc,CAAC,KAAA,KAAoC;AAC9D,EAAA,MAAM;AAAA,IACJ,MAAA,EAAQ,EAAE,WAAA,EAAY;AAAA,IACtB,SAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA;AAAA,IACA,QAAA;AAAA,IACA;AAAA,GACF,GAAI,KAAA;AAEJ,EAAA,uBACE,GAAA;AAAA,IAAC,eAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,cAAA,EAAgB,QAAA,CAAS,gBAAgB,CAAA,IAAK,WAAA;AAAA,MAC9C,QAAA;AAAA,MACA,MAAA;AAAA,MACA,QAAA;AAAA,MAEA,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAc,GAAG,KAAA,EAAO;AAAA;AAAA,GAC3B;AAEJ;;;;"}
1
+ {"version":3,"file":"SecretInput.esm.js","sources":["../../../../src/components/fields/SecretInput/SecretInput.tsx"],"sourcesContent":["/*\n * Copyright 2023 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 {\n ScaffolderRJSFFieldProps,\n useTemplateSecrets,\n} from '@backstage/plugin-scaffolder-react';\nimport {\n ScaffolderField,\n SecretWidget,\n useScaffolderTheme,\n} from '@backstage/plugin-scaffolder-react/alpha';\nimport { PasswordField } from '@backstage/ui';\nimport { useEffect, useMemo, useState } from 'react';\nimport debounce from 'lodash/debounce';\n\nexport const SecretInput = (props: ScaffolderRJSFFieldProps) => {\n const theme = useScaffolderTheme();\n const {\n name,\n onChange,\n schema: { title, description, minLength, maxLength },\n rawErrors,\n disabled,\n errors,\n required,\n uiSchema,\n } = props;\n\n const { setSecrets, secrets } = useTemplateSecrets();\n const [localValue, setLocalValue] = useState(secrets[name] ?? '');\n\n const debouncedSetSecrets = useMemo(\n () =>\n debounce((value: string) => {\n setSecrets({ [name]: value });\n }, 300),\n [setSecrets, name],\n );\n\n // Persist any in-flight value on unmount so the secret isn't lost if the\n // user navigates away within the debounce window.\n useEffect(() => {\n return () => {\n debouncedSetSecrets.flush();\n };\n }, [debouncedSetSecrets]);\n\n // Mirror external changes to secrets back into the input so resets or\n // programmatic updates aren't shadowed by stale local state.\n useEffect(() => {\n setLocalValue(secrets[name] ?? '');\n }, [secrets, name]);\n\n const handleChange = (value: string) => {\n setLocalValue(value);\n onChange(Array(value.length).fill('*').join(''));\n debouncedSetSecrets(value);\n };\n\n if (theme === 'bui') {\n return (\n <ScaffolderField\n rawErrors={rawErrors}\n rawDescription={uiSchema['ui:description'] ?? description}\n disabled={disabled}\n errors={errors}\n required={required}\n >\n <PasswordField\n label={title}\n secondaryLabel={required ? 'Required' : undefined}\n onChange={handleChange}\n value={localValue}\n autoComplete=\"off\"\n isRequired={required}\n isDisabled={disabled}\n isInvalid={rawErrors && rawErrors.length > 0}\n minLength={minLength}\n maxLength={maxLength}\n />\n </ScaffolderField>\n );\n }\n\n return (\n <ScaffolderField\n rawErrors={rawErrors}\n rawDescription={uiSchema['ui:description'] ?? description}\n disabled={disabled}\n errors={errors}\n required={required}\n >\n <SecretWidget {...props} />\n </ScaffolderField>\n );\n};\n"],"names":[],"mappings":";;;;;;;AA4BO,MAAM,WAAA,GAAc,CAAC,KAAA,KAAoC;AAC9D,EAAA,MAAM,QAAQ,kBAAA,EAAmB;AACjC,EAAA,MAAM;AAAA,IACJ,IAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA,EAAQ,EAAE,KAAA,EAAO,WAAA,EAAa,WAAW,SAAA,EAAU;AAAA,IACnD,SAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA;AAAA,IACA,QAAA;AAAA,IACA;AAAA,GACF,GAAI,KAAA;AAEJ,EAAA,MAAM,EAAE,UAAA,EAAY,OAAA,EAAQ,GAAI,kBAAA,EAAmB;AACnD,EAAA,MAAM,CAAC,YAAY,aAAa,CAAA,GAAI,SAAS,OAAA,CAAQ,IAAI,KAAK,EAAE,CAAA;AAEhE,EAAA,MAAM,mBAAA,GAAsB,OAAA;AAAA,IAC1B,MACE,QAAA,CAAS,CAAC,KAAA,KAAkB;AAC1B,MAAA,UAAA,CAAW,EAAE,CAAC,IAAI,GAAG,OAAO,CAAA;AAAA,IAC9B,GAAG,GAAG,CAAA;AAAA,IACR,CAAC,YAAY,IAAI;AAAA,GACnB;AAIA,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,OAAO,MAAM;AACX,MAAA,mBAAA,CAAoB,KAAA,EAAM;AAAA,IAC5B,CAAA;AAAA,EACF,CAAA,EAAG,CAAC,mBAAmB,CAAC,CAAA;AAIxB,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,aAAA,CAAc,OAAA,CAAQ,IAAI,CAAA,IAAK,EAAE,CAAA;AAAA,EACnC,CAAA,EAAG,CAAC,OAAA,EAAS,IAAI,CAAC,CAAA;AAElB,EAAA,MAAM,YAAA,GAAe,CAAC,KAAA,KAAkB;AACtC,IAAA,aAAA,CAAc,KAAK,CAAA;AACnB,IAAA,QAAA,CAAS,KAAA,CAAM,MAAM,MAAM,CAAA,CAAE,KAAK,GAAG,CAAA,CAAE,IAAA,CAAK,EAAE,CAAC,CAAA;AAC/C,IAAA,mBAAA,CAAoB,KAAK,CAAA;AAAA,EAC3B,CAAA;AAEA,EAAA,IAAI,UAAU,KAAA,EAAO;AACnB,IAAA,uBACE,GAAA;AAAA,MAAC,eAAA;AAAA,MAAA;AAAA,QACC,SAAA;AAAA,QACA,cAAA,EAAgB,QAAA,CAAS,gBAAgB,CAAA,IAAK,WAAA;AAAA,QAC9C,QAAA;AAAA,QACA,MAAA;AAAA,QACA,QAAA;AAAA,QAEA,QAAA,kBAAA,GAAA;AAAA,UAAC,aAAA;AAAA,UAAA;AAAA,YACC,KAAA,EAAO,KAAA;AAAA,YACP,cAAA,EAAgB,WAAW,UAAA,GAAa,MAAA;AAAA,YACxC,QAAA,EAAU,YAAA;AAAA,YACV,KAAA,EAAO,UAAA;AAAA,YACP,YAAA,EAAa,KAAA;AAAA,YACb,UAAA,EAAY,QAAA;AAAA,YACZ,UAAA,EAAY,QAAA;AAAA,YACZ,SAAA,EAAW,SAAA,IAAa,SAAA,CAAU,MAAA,GAAS,CAAA;AAAA,YAC3C,SAAA;AAAA,YACA;AAAA;AAAA;AACF;AAAA,KACF;AAAA,EAEJ;AAEA,EAAA,uBACE,GAAA;AAAA,IAAC,eAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,cAAA,EAAgB,QAAA,CAAS,gBAAgB,CAAA,IAAK,WAAA;AAAA,MAC9C,QAAA;AAAA,MACA,MAAA;AAAA,MACA,QAAA;AAAA,MAEA,QAAA,kBAAA,GAAA,CAAC,YAAA,EAAA,EAAc,GAAG,KAAA,EAAO;AAAA;AAAA,GAC3B;AAEJ;;;;"}
@@ -0,0 +1,25 @@
1
+ const chipStyle = {
2
+ display: "inline-flex",
3
+ alignItems: "center",
4
+ gap: "var(--bui-space-1)",
5
+ padding: "2px var(--bui-space-2)",
6
+ borderRadius: "var(--bui-radius-3)",
7
+ backgroundColor: "var(--bui-bg-neutral-2-hover)",
8
+ fontSize: "var(--bui-font-size-3)",
9
+ color: "var(--bui-fg-primary)",
10
+ lineHeight: "1.5"
11
+ };
12
+ const chipRemoveStyle = {
13
+ background: "none",
14
+ border: "none",
15
+ cursor: "pointer",
16
+ padding: "0 2px",
17
+ color: "var(--bui-fg-secondary)",
18
+ fontSize: "1rem",
19
+ lineHeight: "1",
20
+ display: "flex",
21
+ alignItems: "center"
22
+ };
23
+
24
+ export { chipRemoveStyle, chipStyle };
25
+ //# sourceMappingURL=buiChipStyles.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buiChipStyles.esm.js","sources":["../../../src/components/fields/buiChipStyles.ts"],"sourcesContent":["/*\n * Copyright 2025 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 { type CSSProperties } from 'react';\n\nexport const chipStyle: CSSProperties = {\n display: 'inline-flex',\n alignItems: 'center',\n gap: 'var(--bui-space-1)',\n padding: '2px var(--bui-space-2)',\n borderRadius: 'var(--bui-radius-3)',\n backgroundColor: 'var(--bui-bg-neutral-2-hover)',\n fontSize: 'var(--bui-font-size-3)',\n color: 'var(--bui-fg-primary)',\n lineHeight: '1.5',\n};\n\nexport const chipRemoveStyle: CSSProperties = {\n background: 'none',\n border: 'none',\n cursor: 'pointer',\n padding: '0 2px',\n color: 'var(--bui-fg-secondary)',\n fontSize: '1rem',\n lineHeight: '1',\n display: 'flex',\n alignItems: 'center',\n};\n"],"names":[],"mappings":"AAiBO,MAAM,SAAA,GAA2B;AAAA,EACtC,OAAA,EAAS,aAAA;AAAA,EACT,UAAA,EAAY,QAAA;AAAA,EACZ,GAAA,EAAK,oBAAA;AAAA,EACL,OAAA,EAAS,wBAAA;AAAA,EACT,YAAA,EAAc,qBAAA;AAAA,EACd,eAAA,EAAiB,+BAAA;AAAA,EACjB,QAAA,EAAU,wBAAA;AAAA,EACV,KAAA,EAAO,uBAAA;AAAA,EACP,UAAA,EAAY;AACd;AAEO,MAAM,eAAA,GAAiC;AAAA,EAC5C,UAAA,EAAY,MAAA;AAAA,EACZ,MAAA,EAAQ,MAAA;AAAA,EACR,MAAA,EAAQ,SAAA;AAAA,EACR,OAAA,EAAS,OAAA;AAAA,EACT,KAAA,EAAO,yBAAA;AAAA,EACP,QAAA,EAAU,MAAA;AAAA,EACV,UAAA,EAAY,GAAA;AAAA,EACZ,OAAA,EAAS,MAAA;AAAA,EACT,UAAA,EAAY;AACd;;;;"}
@@ -0,0 +1,8 @@
1
+ import styleInject from '../../node_modules_dist/style-inject/dist/style-inject.es.esm.js';
2
+
3
+ var css_248z = "/* Duplicated in plugins/scaffolder-react/src/next/components/Form/BuiTheme/widgets/selectOverrides.module.css\n Keep in sync if changes are made. */\n\n/* Override the BUI Select trigger border-radius to match BUI TextField\n for visual consistency in scaffolder forms. Only applies to Select\n instances that explicitly use className={overrides.select}. */\n.scaffolderFieldOverrides_select__14db281ded [class*='bui-SelectTrigger'] {\n border-radius: var(--bui-radius-2);\n}\n";
4
+ var overrides = {"select":"scaffolderFieldOverrides_select__14db281ded"};
5
+ styleInject(css_248z);
6
+
7
+ export { overrides as default };
8
+ //# sourceMappingURL=scaffolderFieldOverrides.module.css.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaffolderFieldOverrides.module.css.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
package/dist/index.esm.js CHANGED
@@ -14,6 +14,7 @@ import './components/fields/VirtualizedListbox.esm.js';
14
14
  import '@backstage/core-plugin-api/alpha';
15
15
  export { scaffolderTranslationRef } from './translation.esm.js';
16
16
  import '@backstage/plugin-scaffolder-react/alpha';
17
+ import './components/fields/Autocomplete/Autocomplete.esm.js';
17
18
  export { EntityPickerFieldSchema } from './components/fields/EntityPicker/schema.esm.js';
18
19
  import 'react-use/esm/useEffectOnce';
19
20
  export { EntityTagsPickerFieldSchema } from './components/fields/EntityTagsPicker/schema.esm.js';
@@ -30,6 +31,7 @@ import 'react-use/esm/useDebounce';
30
31
  import '@material-ui/core/FormControl';
31
32
  import '@material-ui/core/FormHelperText';
32
33
  import '@backstage/core-components';
34
+ import '@backstage/ui';
33
35
  import 'lodash/uniq';
34
36
  import 'lodash/map';
35
37
  export { RepoUrlPickerFieldSchema } from './components/fields/RepoUrlPicker/schema.esm.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,29 @@
1
+ function styleInject(css, ref) {
2
+ if ( ref === void 0 ) ref = {};
3
+ var insertAt = ref.insertAt;
4
+
5
+ if (typeof document === 'undefined') { return; }
6
+
7
+ var head = document.head || document.getElementsByTagName('head')[0];
8
+ var style = document.createElement('style');
9
+ style.type = 'text/css';
10
+
11
+ if (insertAt === 'top') {
12
+ if (head.firstChild) {
13
+ head.insertBefore(style, head.firstChild);
14
+ } else {
15
+ head.appendChild(style);
16
+ }
17
+ } else {
18
+ head.appendChild(style);
19
+ }
20
+
21
+ if (style.styleSheet) {
22
+ style.styleSheet.cssText = css;
23
+ } else {
24
+ style.appendChild(document.createTextNode(css));
25
+ }
26
+ }
27
+
28
+ export { styleInject as default };
29
+ //# sourceMappingURL=style-inject.es.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style-inject.es.esm.js","sources":["../../../../../../node_modules/style-inject/dist/style-inject.es.js"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n"],"names":[],"mappings":"AAAA,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE;AAC/B,EAAE,KAAK,GAAG,KAAK,MAAM,GAAG,GAAG,GAAG,EAAE;AAChC,EAAE,IAAI,QAAQ,GAAG,GAAG,CAAC,QAAQ;;AAE7B,EAAE,IAAY,OAAO,QAAQ,KAAK,WAAW,EAAE,EAAE,OAAO,CAAC;;AAEzD,EAAE,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACtE,EAAE,IAAI,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;AAC7C,EAAE,KAAK,CAAC,IAAI,GAAG,UAAU;;AAEzB,EAAE,IAAI,QAAQ,KAAK,KAAK,EAAE;AAC1B,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;AACzB,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC;AAC/C,IAAI,CAAC,MAAM;AACX,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AAC7B,IAAI;AACJ,EAAE,CAAC,MAAM;AACT,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AAC3B,EAAE;;AAEF,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE;AACxB,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,GAAG,GAAG;AAClC,EAAE,CAAC,MAAM;AACT,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AACnD,EAAE;AACF;;;;","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
1
  var name = "@backstage/plugin-scaffolder";
2
- var version = "1.36.3-next.1";
2
+ var version = "1.37.0-next.2";
3
3
  var description = "The Backstage plugin that helps you create new things";
4
4
  var backstage = {
5
5
  role: "frontend-plugin",
@@ -62,6 +62,7 @@ var dependencies = {
62
62
  "@backstage/core-components": "workspace:^",
63
63
  "@backstage/core-plugin-api": "workspace:^",
64
64
  "@backstage/errors": "workspace:^",
65
+ "@backstage/filter-predicates": "workspace:^",
65
66
  "@backstage/frontend-plugin-api": "workspace:^",
66
67
  "@backstage/integration": "workspace:^",
67
68
  "@backstage/integration-react": "workspace:^",
@@ -97,6 +98,7 @@ var dependencies = {
97
98
  lodash: "^4.17.21",
98
99
  luxon: "^3.0.0",
99
100
  qs: "^6.9.4",
101
+ "react-aria-components": "^1.14.0",
100
102
  "react-resizable": "^3.0.5",
101
103
  "react-resizable-panels": "^3.0.4",
102
104
  "react-use": "^17.2.4",
@@ -1 +1 @@
1
- {"version":3,"file":"package.json.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"package.json.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@backstage/plugin-scaffolder",
3
- "version": "1.36.3-next.1",
3
+ "version": "1.37.0-next.2",
4
4
  "description": "The Backstage plugin that helps you create new things",
5
5
  "backstage": {
6
6
  "role": "frontend-plugin",
@@ -72,21 +72,22 @@
72
72
  "dependencies": {
73
73
  "@backstage/catalog-client": "1.15.1-next.0",
74
74
  "@backstage/catalog-model": "1.8.1-next.1",
75
- "@backstage/core-components": "0.18.10-next.0",
75
+ "@backstage/core-components": "0.18.10-next.1",
76
76
  "@backstage/core-plugin-api": "1.12.6-next.1",
77
77
  "@backstage/errors": "1.3.1-next.0",
78
+ "@backstage/filter-predicates": "0.1.3-next.0",
78
79
  "@backstage/frontend-plugin-api": "0.17.0-next.1",
79
- "@backstage/integration": "2.0.2-next.0",
80
+ "@backstage/integration": "2.0.2-next.1",
80
81
  "@backstage/integration-react": "1.2.18-next.0",
81
82
  "@backstage/plugin-catalog-common": "1.1.10-next.0",
82
83
  "@backstage/plugin-catalog-react": "2.1.5-next.1",
83
84
  "@backstage/plugin-permission-react": "0.5.1-next.0",
84
- "@backstage/plugin-scaffolder-common": "2.1.1-next.0",
85
- "@backstage/plugin-scaffolder-react": "1.20.2-next.0",
85
+ "@backstage/plugin-scaffolder-common": "2.2.0-next.1",
86
+ "@backstage/plugin-scaffolder-react": "1.21.0-next.1",
86
87
  "@backstage/plugin-techdocs-common": "0.1.1",
87
88
  "@backstage/plugin-techdocs-react": "1.3.11-next.0",
88
89
  "@backstage/types": "1.2.2",
89
- "@backstage/ui": "0.15.0-next.1",
90
+ "@backstage/ui": "0.15.0-next.3",
90
91
  "@codemirror/language": "^6.0.0",
91
92
  "@codemirror/legacy-modes": "^6.1.0",
92
93
  "@codemirror/view": "^6.0.0",
@@ -110,6 +111,7 @@
110
111
  "lodash": "^4.17.21",
111
112
  "luxon": "^3.0.0",
112
113
  "qs": "^6.9.4",
114
+ "react-aria-components": "^1.14.0",
113
115
  "react-resizable": "^3.0.5",
114
116
  "react-resizable-panels": "^3.0.4",
115
117
  "react-use": "^17.2.4",
@@ -123,7 +125,7 @@
123
125
  "@backstage/core-app-api": "1.20.1-next.0",
124
126
  "@backstage/dev-utils": "1.1.23-next.0",
125
127
  "@backstage/frontend-test-utils": "0.5.3-next.1",
126
- "@backstage/plugin-catalog": "2.0.5-next.0",
128
+ "@backstage/plugin-catalog": "2.0.5-next.1",
127
129
  "@backstage/plugin-permission-common": "0.9.9-next.1",
128
130
  "@backstage/plugin-techdocs": "1.17.6-next.1",
129
131
  "@backstage/test-utils": "1.7.18-next.0",