@kuadrant/kuadrant-backstage-plugin-frontend 0.0.2-dev-24d0757 → 0.0.2-dev-7d09bfa
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/dist/components/ApiAccessCard/ApiAccessCard.esm.js +229 -11
- package/dist/components/ApiAccessCard/ApiAccessCard.esm.js.map +1 -1
- package/dist/components/ApiKeyManagementTab/ApiKeyManagementTab.esm.js +15 -151
- package/dist/components/ApiKeyManagementTab/ApiKeyManagementTab.esm.js.map +1 -1
- package/dist/components/ApiProductDetailPage/ApiProductDetailPage.esm.js +25 -6
- package/dist/components/ApiProductDetailPage/ApiProductDetailPage.esm.js.map +1 -1
- package/dist/components/ApiProductDetails/ApiProductDetails.esm.js +6 -1
- package/dist/components/ApiProductDetails/ApiProductDetails.esm.js.map +1 -1
- package/dist/components/ApiProductInfoCard/ApiProductInfoCard.esm.js +15 -2
- package/dist/components/ApiProductInfoCard/ApiProductInfoCard.esm.js.map +1 -1
- package/dist/components/CreateAPIProductDialog/CreateAPIProductDialog.esm.js +2 -4
- package/dist/components/CreateAPIProductDialog/CreateAPIProductDialog.esm.js.map +1 -1
- package/dist/components/OidcProviderCard/OidcProviderCard.esm.js +23 -0
- package/dist/components/OidcProviderCard/OidcProviderCard.esm.js.map +1 -0
- package/dist/components/RequestAccessDialog/RequestAccessDialog.esm.js +167 -0
- package/dist/components/RequestAccessDialog/RequestAccessDialog.esm.js.map +1 -0
- package/dist/index.d.ts +1 -2
- package/dist/index.esm.js +1 -1
- package/dist/plugin.esm.js +1 -9
- package/dist/plugin.esm.js.map +1 -1
- package/dist/utils/validation.esm.js.map +1 -1
- package/dist-scalprum/configSchema.json +27 -1
- package/dist-scalprum/internal.plugin-kuadrant.5d9e1e73c7f21bbed39a.js +2 -0
- package/dist-scalprum/internal.plugin-kuadrant.5d9e1e73c7f21bbed39a.js.map +1 -0
- package/dist-scalprum/plugin-manifest.json +2 -2
- package/dist-scalprum/static/1994.19e6a1c5.chunk.js +3 -0
- package/dist-scalprum/static/1994.19e6a1c5.chunk.js.map +1 -0
- package/dist-scalprum/static/{2628.6619bf8b.chunk.js → 2628.0605e07f.chunk.js} +3 -3
- package/dist-scalprum/static/2628.0605e07f.chunk.js.map +1 -0
- package/dist-scalprum/static/2752.df63f31c.chunk.js +2 -0
- package/dist-scalprum/static/2752.df63f31c.chunk.js.map +1 -0
- package/dist-scalprum/static/2822.27a4ac5b.chunk.js +2 -0
- package/dist-scalprum/static/2822.27a4ac5b.chunk.js.map +1 -0
- package/dist-scalprum/static/2967.8d9c1b1f.chunk.js +2 -0
- package/dist-scalprum/static/2967.8d9c1b1f.chunk.js.map +1 -0
- package/dist-scalprum/static/{3097.4bd6b35f.chunk.js → 3097.582b68d3.chunk.js} +2 -2
- package/dist-scalprum/static/{3097.4bd6b35f.chunk.js.map → 3097.582b68d3.chunk.js.map} +1 -1
- package/dist-scalprum/static/327.cd6b3fee.chunk.js +2 -0
- package/dist-scalprum/static/327.cd6b3fee.chunk.js.map +1 -0
- package/dist-scalprum/static/3459.a7c29521.chunk.js +2 -0
- package/dist-scalprum/static/3459.a7c29521.chunk.js.map +1 -0
- package/dist-scalprum/static/3584.c820a5c7.chunk.js +2 -0
- package/dist-scalprum/static/3584.c820a5c7.chunk.js.map +1 -0
- package/dist-scalprum/static/3587.490690d6.chunk.js +2 -0
- package/dist-scalprum/static/3587.490690d6.chunk.js.map +1 -0
- package/dist-scalprum/static/{3647.b96f9b3e.chunk.js → 3647.67079e5f.chunk.js} +2 -2
- package/dist-scalprum/static/{3647.b96f9b3e.chunk.js.map → 3647.67079e5f.chunk.js.map} +1 -1
- package/dist-scalprum/static/3650.4f0dc550.chunk.js +2 -0
- package/dist-scalprum/static/3650.4f0dc550.chunk.js.map +1 -0
- package/dist-scalprum/static/3947.7458971d.chunk.js +2 -0
- package/dist-scalprum/static/3947.7458971d.chunk.js.map +1 -0
- package/dist-scalprum/static/3984.7bc07774.chunk.js +2 -0
- package/dist-scalprum/static/3984.7bc07774.chunk.js.map +1 -0
- package/dist-scalprum/static/4302.9a59485e.chunk.js +2 -0
- package/dist-scalprum/static/4302.9a59485e.chunk.js.map +1 -0
- package/dist-scalprum/static/441.f708f1e0.chunk.js +2 -0
- package/dist-scalprum/static/441.f708f1e0.chunk.js.map +1 -0
- package/dist-scalprum/static/4611.0d064cdf.chunk.js +2 -0
- package/dist-scalprum/static/4611.0d064cdf.chunk.js.map +1 -0
- package/dist-scalprum/static/4651.c85cecc4.chunk.js +2 -0
- package/dist-scalprum/static/4651.c85cecc4.chunk.js.map +1 -0
- package/dist-scalprum/static/{4682.6959fcd1.chunk.js → 4682.3c7098a8.chunk.js} +2 -2
- package/dist-scalprum/static/{4682.6959fcd1.chunk.js.map → 4682.3c7098a8.chunk.js.map} +1 -1
- package/dist-scalprum/static/501.87de76da.chunk.js +3 -0
- package/dist-scalprum/static/501.87de76da.chunk.js.LICENSE.txt +21 -0
- package/dist-scalprum/static/501.87de76da.chunk.js.map +1 -0
- package/dist-scalprum/static/{5010.a4aa0f8e.chunk.js → 5010.2228c754.chunk.js} +3 -3
- package/dist-scalprum/static/{5010.a4aa0f8e.chunk.js.map → 5010.2228c754.chunk.js.map} +1 -1
- package/dist-scalprum/static/5203.43732b3f.chunk.js +2 -0
- package/dist-scalprum/static/5203.43732b3f.chunk.js.map +1 -0
- package/dist-scalprum/static/5235.2a59dc45.chunk.js +2 -0
- package/dist-scalprum/static/5235.2a59dc45.chunk.js.map +1 -0
- package/dist-scalprum/static/5453.b3ee2392.chunk.js +2 -0
- package/dist-scalprum/static/5453.b3ee2392.chunk.js.map +1 -0
- package/dist-scalprum/static/{7556.aa8a002f.chunk.js → 5568.5dbce633.chunk.js} +3 -3
- package/dist-scalprum/static/{3466.43dfe991.chunk.js.LICENSE.txt → 5568.5dbce633.chunk.js.LICENSE.txt} +9 -0
- package/dist-scalprum/static/5568.5dbce633.chunk.js.map +1 -0
- package/dist-scalprum/static/6272.ef31cb1c.chunk.js +2 -0
- package/dist-scalprum/static/6272.ef31cb1c.chunk.js.map +1 -0
- package/dist-scalprum/static/6371.c4899d73.chunk.js +3 -0
- package/dist-scalprum/static/6371.c4899d73.chunk.js.map +1 -0
- package/dist-scalprum/static/6386.6386.ce38cef3.css +5 -0
- package/dist-scalprum/static/6386.6386.ce38cef3.css.map +1 -0
- package/dist-scalprum/static/6386.903891f3.chunk.js +3 -0
- package/dist-scalprum/static/6386.903891f3.chunk.js.LICENSE.txt +26 -0
- package/dist-scalprum/static/6386.903891f3.chunk.js.map +1 -0
- package/dist-scalprum/static/65.0e01be7c.chunk.js +2 -0
- package/dist-scalprum/static/65.0e01be7c.chunk.js.map +1 -0
- package/dist-scalprum/static/6753.76832e72.chunk.js +2 -0
- package/dist-scalprum/static/6753.76832e72.chunk.js.map +1 -0
- package/dist-scalprum/static/{8563.7e068fb0.chunk.js → 6763.d6cd937f.chunk.js} +3 -3
- package/dist-scalprum/static/6763.d6cd937f.chunk.js.map +1 -0
- package/dist-scalprum/static/{6800.736d5da3.chunk.js → 6800.8ec3a2eb.chunk.js} +2 -2
- package/dist-scalprum/static/6800.8ec3a2eb.chunk.js.map +1 -0
- package/dist-scalprum/static/{6840.4728fab9.chunk.js → 6840.6cc88a16.chunk.js} +2 -2
- package/dist-scalprum/static/6840.6cc88a16.chunk.js.map +1 -0
- package/dist-scalprum/static/7076.8745d395.chunk.js +2 -0
- package/dist-scalprum/static/7076.8745d395.chunk.js.map +1 -0
- package/dist-scalprum/static/7367.62c9669e.chunk.js +3 -0
- package/dist-scalprum/static/7367.62c9669e.chunk.js.LICENSE.txt +21 -0
- package/dist-scalprum/static/7367.62c9669e.chunk.js.map +1 -0
- package/dist-scalprum/static/7791.55db7365.chunk.js +2 -0
- package/dist-scalprum/static/7791.55db7365.chunk.js.map +1 -0
- package/dist-scalprum/static/8172.e89bbae7.chunk.js +2 -0
- package/dist-scalprum/static/8172.e89bbae7.chunk.js.map +1 -0
- package/dist-scalprum/static/8627.111cbac9.chunk.js +2 -0
- package/dist-scalprum/static/8627.111cbac9.chunk.js.map +1 -0
- package/dist-scalprum/static/8799.4ea4639c.chunk.js +2 -0
- package/dist-scalprum/static/8799.4ea4639c.chunk.js.map +1 -0
- package/dist-scalprum/static/9510.e4112e19.chunk.js +3 -0
- package/dist-scalprum/static/{2946.167c50c2.chunk.js.LICENSE.txt → 9510.e4112e19.chunk.js.LICENSE.txt} +0 -10
- package/dist-scalprum/static/9510.e4112e19.chunk.js.map +1 -0
- package/dist-scalprum/static/9644.7d342123.chunk.js +2 -0
- package/dist-scalprum/static/9644.7d342123.chunk.js.map +1 -0
- package/dist-scalprum/static/993.c164940e.chunk.js +2 -0
- package/dist-scalprum/static/993.c164940e.chunk.js.map +1 -0
- package/dist-scalprum/static/exposed-PluginRoot.5b6638e2.chunk.js +2 -0
- package/dist-scalprum/static/exposed-PluginRoot.5b6638e2.chunk.js.map +1 -0
- package/package.json +3 -1
- package/dist/components/PlanPolicyDetailPage/PlanPolicyDetailPage.esm.js +0 -89
- package/dist/components/PlanPolicyDetailPage/PlanPolicyDetailPage.esm.js.map +0 -1
- package/dist/components/PlanPolicyDetailPage/index.esm.js +0 -2
- package/dist/components/PlanPolicyDetailPage/index.esm.js.map +0 -1
- package/dist-scalprum/internal.plugin-kuadrant.95817f34e88db81b5e8f.js +0 -2
- package/dist-scalprum/internal.plugin-kuadrant.95817f34e88db81b5e8f.js.map +0 -1
- package/dist-scalprum/static/1085.536aa0fa.chunk.js +0 -3
- package/dist-scalprum/static/1085.536aa0fa.chunk.js.map +0 -1
- package/dist-scalprum/static/1613.71f0fccd.chunk.js +0 -3
- package/dist-scalprum/static/1613.71f0fccd.chunk.js.LICENSE.txt +0 -10
- package/dist-scalprum/static/1613.71f0fccd.chunk.js.map +0 -1
- package/dist-scalprum/static/1836.b74b4c40.chunk.js +0 -3
- package/dist-scalprum/static/1836.b74b4c40.chunk.js.LICENSE.txt +0 -10
- package/dist-scalprum/static/1836.b74b4c40.chunk.js.map +0 -1
- package/dist-scalprum/static/2198.5905970e.chunk.js +0 -2
- package/dist-scalprum/static/2198.5905970e.chunk.js.map +0 -1
- package/dist-scalprum/static/2628.6619bf8b.chunk.js.map +0 -1
- package/dist-scalprum/static/2759.fceb317f.chunk.js +0 -2
- package/dist-scalprum/static/2759.fceb317f.chunk.js.map +0 -1
- package/dist-scalprum/static/2928.4303c12e.chunk.js +0 -3
- package/dist-scalprum/static/2928.4303c12e.chunk.js.map +0 -1
- package/dist-scalprum/static/2946.167c50c2.chunk.js +0 -3
- package/dist-scalprum/static/2946.167c50c2.chunk.js.map +0 -1
- package/dist-scalprum/static/2967.ac3a4bee.chunk.js +0 -2
- package/dist-scalprum/static/2967.ac3a4bee.chunk.js.map +0 -1
- package/dist-scalprum/static/2987.1da15560.chunk.js +0 -2
- package/dist-scalprum/static/2987.1da15560.chunk.js.map +0 -1
- package/dist-scalprum/static/3459.5c90b5a3.chunk.js +0 -2
- package/dist-scalprum/static/3459.5c90b5a3.chunk.js.map +0 -1
- package/dist-scalprum/static/3466.43dfe991.chunk.js +0 -3
- package/dist-scalprum/static/3466.43dfe991.chunk.js.map +0 -1
- package/dist-scalprum/static/3503.66b6e510.chunk.js +0 -2
- package/dist-scalprum/static/3503.66b6e510.chunk.js.map +0 -1
- package/dist-scalprum/static/3650.515c743a.chunk.js +0 -2
- package/dist-scalprum/static/3650.515c743a.chunk.js.map +0 -1
- package/dist-scalprum/static/3657.59d45756.chunk.js +0 -3
- package/dist-scalprum/static/3657.59d45756.chunk.js.LICENSE.txt +0 -10
- package/dist-scalprum/static/3657.59d45756.chunk.js.map +0 -1
- package/dist-scalprum/static/428.0a290bc6.chunk.js +0 -2
- package/dist-scalprum/static/428.0a290bc6.chunk.js.map +0 -1
- package/dist-scalprum/static/441.9f02e61b.chunk.js +0 -2
- package/dist-scalprum/static/441.9f02e61b.chunk.js.map +0 -1
- package/dist-scalprum/static/5453.280127dd.chunk.js +0 -2
- package/dist-scalprum/static/5453.280127dd.chunk.js.map +0 -1
- package/dist-scalprum/static/5603.05d9ca7f.chunk.js +0 -2
- package/dist-scalprum/static/5603.05d9ca7f.chunk.js.map +0 -1
- package/dist-scalprum/static/6272.b5ee5195.chunk.js +0 -3
- package/dist-scalprum/static/6272.b5ee5195.chunk.js.LICENSE.txt +0 -9
- package/dist-scalprum/static/6272.b5ee5195.chunk.js.map +0 -1
- package/dist-scalprum/static/6371.c83dc422.chunk.js +0 -2
- package/dist-scalprum/static/6371.c83dc422.chunk.js.map +0 -1
- package/dist-scalprum/static/6422.97baf774.chunk.js +0 -2
- package/dist-scalprum/static/6422.97baf774.chunk.js.map +0 -1
- package/dist-scalprum/static/6800.736d5da3.chunk.js.map +0 -1
- package/dist-scalprum/static/6840.4728fab9.chunk.js.map +0 -1
- package/dist-scalprum/static/7556.aa8a002f.chunk.js.LICENSE.txt +0 -8
- package/dist-scalprum/static/7556.aa8a002f.chunk.js.map +0 -1
- package/dist-scalprum/static/7601.4df83556.chunk.js +0 -3
- package/dist-scalprum/static/7601.4df83556.chunk.js.LICENSE.txt +0 -9
- package/dist-scalprum/static/7601.4df83556.chunk.js.map +0 -1
- package/dist-scalprum/static/7791.12162a71.chunk.js +0 -2
- package/dist-scalprum/static/7791.12162a71.chunk.js.map +0 -1
- package/dist-scalprum/static/7984.c8511b89.chunk.js +0 -2
- package/dist-scalprum/static/7984.c8511b89.chunk.js.map +0 -1
- package/dist-scalprum/static/8365.d3360f18.chunk.js +0 -2
- package/dist-scalprum/static/8365.d3360f18.chunk.js.map +0 -1
- package/dist-scalprum/static/8563.7e068fb0.chunk.js.map +0 -1
- package/dist-scalprum/static/8799.7c749838.chunk.js +0 -2
- package/dist-scalprum/static/8799.7c749838.chunk.js.map +0 -1
- package/dist-scalprum/static/exposed-PluginRoot.a5792fb2.chunk.js +0 -2
- package/dist-scalprum/static/exposed-PluginRoot.a5792fb2.chunk.js.map +0 -1
- /package/dist-scalprum/static/{2928.4303c12e.chunk.js.LICENSE.txt → 1994.19e6a1c5.chunk.js.LICENSE.txt} +0 -0
- /package/dist-scalprum/static/{2628.6619bf8b.chunk.js.LICENSE.txt → 2628.0605e07f.chunk.js.LICENSE.txt} +0 -0
- /package/dist-scalprum/static/{5010.a4aa0f8e.chunk.js.LICENSE.txt → 5010.2228c754.chunk.js.LICENSE.txt} +0 -0
- /package/dist-scalprum/static/{1085.536aa0fa.chunk.js.LICENSE.txt → 6371.c4899d73.chunk.js.LICENSE.txt} +0 -0
- /package/dist-scalprum/static/{8563.7e068fb0.chunk.js.LICENSE.txt → 6763.d6cd937f.chunk.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"static/993.c164940e.chunk.js","mappings":"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","sources":["webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/analytics/AnalyticsContext.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/system/useApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/system/ApiRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/AnalyticsApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/analytics/Tracker.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/analytics/useAnalytics.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/AppTreeApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/auth.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/AlertApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/AppLanguageApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/AppThemeApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/SwappableComponentsApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/ConfigApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/DiscoveryApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/ErrorApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/FeatureFlagsApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/FetchApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/IconsApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/IdentityApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/DialogApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/OAuthRequestApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/RouteResolutionApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/StorageApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/TranslationApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/system/helpers.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/Options.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/any.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/errorMessages.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/date.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/string.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/record.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/union.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/object.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/selectParser.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/number.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/null.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/array.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/map.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/set.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/never.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/default.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/parseDef.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/index.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/zod-to-json-schema/dist/esm/Refs.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/createExtensionDataRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/frontend-internal/src/wiring/createExtensionDataContainer.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/resolveInputOverrides.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/schema/createSchemaFromZod.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/opaque-internal/src/OpaqueType.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/frontend-internal/src/wiring/InternalExtensionDefinition.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/frontend-internal/src/wiring/InternalExtensionInput.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/createExtension.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/createExtensionBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/AnalyticsImplementationBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/ApiBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/coreExtensionData.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/AppRootElementBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/AppRootWrapperBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/IconBundleBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/NavContentBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/NavItemBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/frontend-internal/src/wiring/InternalSwappableComponentRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/components/createSwappableComponent.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/components/DefaultSwappableComponents.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/components/ErrorDisplayBoundary.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/components/ErrorApiBoundary.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/core-plugin-api/src/analytics/Tracker.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/apis/definitions/PluginWrapperApi.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/components/AppNodeProvider.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/components/ExtensionBoundary.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/PageBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/RouterBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/SignInPageBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/ThemeBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/TranslationBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/blueprints/SwappableComponentBlueprint.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/routing/describeParentCallSite.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/frontend-internal/src/routing/OpaqueRouteRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/routing/RouteRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/frontend-internal/src/routing/OpaqueSubRouteRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/routing/SubRouteRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/frontend-internal/src/routing/OpaqueExternalRouteRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/routing/ExternalRouteRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/routing/useRouteRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/routing/useRouteRefParams.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/translation/TranslationMessages.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/translation/TranslationResource.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/translation/TranslationRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/translation/useTranslationRef.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/createExtensionInput.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/resolveExtensionDefinition.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/frontend-internal/src/wiring/InternalFrontendPlugin.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/createFrontendPlugin.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/createFrontendModule.esm.js","webpack://internal.plugin-kuadrant/./node_modules/@backstage/plugin-techdocs-react/node_modules/@backstage/frontend-plugin-api/dist/wiring/createFrontendFeatureLoader.esm.js"],"sourcesContent":["import { jsx } from 'react/jsx-runtime';\nimport { createVersionedContext, createVersionedValueMap } from '@backstage/version-bridge';\nimport { useContext } from 'react';\n\nconst AnalyticsReactContext = createVersionedContext(\"analytics-context\");\nconst useAnalyticsContext = () => {\n const theContext = useContext(AnalyticsReactContext);\n if (theContext === void 0) {\n return {\n pluginId: \"app\",\n extensionId: \"app\"\n };\n }\n const theValue = theContext.atVersion(1);\n if (theValue === void 0) {\n throw new Error(\"No context found for version 1.\");\n }\n return theValue;\n};\nconst AnalyticsContext = (options) => {\n const { attributes, children } = options;\n const parentValues = useAnalyticsContext();\n const combinedValue = {\n ...parentValues,\n ...attributes\n };\n const versionedCombinedValue = createVersionedValueMap({ 1: combinedValue });\n return /* @__PURE__ */ jsx(AnalyticsReactContext.Provider, { value: versionedCombinedValue, children });\n};\n\nexport { AnalyticsContext, useAnalyticsContext };\n//# sourceMappingURL=AnalyticsContext.esm.js.map\n","import { jsx } from 'react/jsx-runtime';\nimport { useVersionedContext } from '@backstage/version-bridge';\nimport { NotImplementedError } from '@backstage/errors';\n\nfunction useApiHolder() {\n const versionedHolder = useVersionedContext(\"api-context\");\n if (!versionedHolder) {\n throw new NotImplementedError(\"API context is not available\");\n }\n const apiHolder = versionedHolder.atVersion(1);\n if (!apiHolder) {\n throw new NotImplementedError(\"ApiContext v1 not available\");\n }\n return apiHolder;\n}\nfunction useApi(apiRef) {\n const apiHolder = useApiHolder();\n const api = apiHolder.get(apiRef);\n if (!api) {\n throw new NotImplementedError(`No implementation available for ${apiRef}`);\n }\n return api;\n}\nfunction withApis(apis) {\n return function withApisWrapper(WrappedComponent) {\n const Hoc = (props) => {\n const apiHolder = useApiHolder();\n const impls = {};\n for (const key in apis) {\n if (apis.hasOwnProperty(key)) {\n const ref = apis[key];\n const api = apiHolder.get(ref);\n if (!api) {\n throw new NotImplementedError(\n `No implementation available for ${ref}`\n );\n }\n impls[key] = api;\n }\n }\n return /* @__PURE__ */ jsx(WrappedComponent, { ...props, ...impls });\n };\n const displayName = WrappedComponent.displayName || WrappedComponent.name || \"Component\";\n Hoc.displayName = `withApis(${displayName})`;\n return Hoc;\n };\n}\n\nexport { useApi, useApiHolder, withApis };\n//# sourceMappingURL=useApi.esm.js.map\n","class ApiRefImpl {\n constructor(config) {\n this.config = config;\n const valid = config.id.split(\".\").flatMap((part) => part.split(\"-\")).every((part) => part.match(/^[a-z][a-z0-9]*$/));\n if (!valid) {\n throw new Error(\n `API id must only contain period separated lowercase alphanum tokens with dashes, got '${config.id}'`\n );\n }\n }\n get id() {\n return this.config.id;\n }\n // Utility for getting type of an api, using `typeof apiRef.T`\n get T() {\n throw new Error(`tried to read ApiRef.T of ${this}`);\n }\n toString() {\n return `apiRef{${this.config.id}}`;\n }\n}\nfunction createApiRef(config) {\n return new ApiRefImpl(config);\n}\n\nexport { createApiRef };\n//# sourceMappingURL=ApiRef.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst analyticsApiRef = createApiRef({\n id: \"core.analytics\"\n});\n\nexport { analyticsApiRef };\n//# sourceMappingURL=AnalyticsApi.esm.js.map\n","import { getOrCreateGlobalSingleton } from '@backstage/version-bridge';\n\nconst globalEvents = getOrCreateGlobalSingleton(\n \"core-plugin-api:analytics-tracker-events\",\n () => ({\n mostRecentGatheredNavigation: void 0,\n mostRecentRoutableExtensionRender: void 0,\n beforeUnloadRegistered: false\n })\n);\nconst routableExtensionRenderedEvent = \"_ROUTABLE-EXTENSION-RENDERED\";\nclass Tracker {\n analyticsApi;\n context;\n constructor(analyticsApi, context = {\n pluginId: \"root\",\n extensionId: \"App\"\n }) {\n this.analyticsApi = analyticsApi;\n this.context = context;\n if (!globalEvents.beforeUnloadRegistered) {\n addEventListener(\n \"beforeunload\",\n () => {\n if (globalEvents.mostRecentGatheredNavigation) {\n this.analyticsApi.captureEvent({\n ...globalEvents.mostRecentGatheredNavigation,\n ...globalEvents.mostRecentRoutableExtensionRender\n });\n globalEvents.mostRecentGatheredNavigation = void 0;\n globalEvents.mostRecentRoutableExtensionRender = void 0;\n }\n },\n { once: true, passive: true }\n );\n globalEvents.beforeUnloadRegistered = true;\n }\n }\n setContext(context) {\n this.context = context;\n }\n captureEvent(action, subject, {\n value,\n attributes\n } = {}) {\n const context = this.context;\n if (action === routableExtensionRenderedEvent) {\n if (globalEvents.mostRecentGatheredNavigation) {\n globalEvents.mostRecentRoutableExtensionRender = {\n context: {\n ...context,\n extensionId: \"App\"\n }\n };\n }\n return;\n }\n if (globalEvents.mostRecentGatheredNavigation) {\n try {\n this.analyticsApi.captureEvent({\n ...globalEvents.mostRecentGatheredNavigation,\n ...globalEvents.mostRecentRoutableExtensionRender\n });\n } catch (e) {\n console.warn(\"Error during analytics event capture. %o\", e);\n }\n globalEvents.mostRecentGatheredNavigation = void 0;\n globalEvents.mostRecentRoutableExtensionRender = void 0;\n }\n if (action === \"navigate\" && context.pluginId === \"root\") {\n globalEvents.mostRecentGatheredNavigation = {\n action,\n subject,\n value,\n attributes,\n context\n };\n return;\n }\n try {\n this.analyticsApi.captureEvent({\n action,\n subject,\n value,\n attributes,\n context\n });\n } catch (e) {\n console.warn(\"Error during analytics event capture. %o\", e);\n }\n }\n}\n\nexport { Tracker, routableExtensionRenderedEvent };\n//# sourceMappingURL=Tracker.esm.js.map\n","import { useApi } from '../apis/system/useApi.esm.js';\nimport { useAnalyticsContext } from './AnalyticsContext.esm.js';\nimport '../apis/definitions/AppTreeApi.esm.js';\nimport '../apis/definitions/auth.esm.js';\nimport '../apis/definitions/AlertApi.esm.js';\nimport '../apis/definitions/AppLanguageApi.esm.js';\nimport '../apis/definitions/AppThemeApi.esm.js';\nimport '../apis/definitions/SwappableComponentsApi.esm.js';\nimport '../apis/definitions/ConfigApi.esm.js';\nimport '../apis/definitions/DiscoveryApi.esm.js';\nimport '../apis/definitions/ErrorApi.esm.js';\nimport '../apis/definitions/FeatureFlagsApi.esm.js';\nimport '../apis/definitions/FetchApi.esm.js';\nimport '../apis/definitions/IconsApi.esm.js';\nimport '../apis/definitions/IdentityApi.esm.js';\nimport '../apis/definitions/DialogApi.esm.js';\nimport '../apis/definitions/OAuthRequestApi.esm.js';\nimport '../apis/definitions/RouteResolutionApi.esm.js';\nimport '../apis/definitions/StorageApi.esm.js';\nimport { analyticsApiRef } from '../apis/definitions/AnalyticsApi.esm.js';\nimport '../apis/definitions/TranslationApi.esm.js';\nimport { useRef } from 'react';\nimport { Tracker } from './Tracker.esm.js';\n\nfunction useAnalyticsApi() {\n try {\n return useApi(analyticsApiRef);\n } catch (error) {\n if (error.name === \"NotImplementedError\") {\n return { captureEvent: () => {\n } };\n }\n throw error;\n }\n}\nfunction useAnalytics() {\n const trackerRef = useRef(null);\n const context = useAnalyticsContext();\n const analyticsApi = useAnalyticsApi();\n function getTracker() {\n if (trackerRef.current === null) {\n trackerRef.current = new Tracker(analyticsApi);\n }\n return trackerRef.current;\n }\n const tracker = getTracker();\n tracker.setContext(context);\n return tracker;\n}\n\nexport { useAnalytics };\n//# sourceMappingURL=useAnalytics.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst appTreeApiRef = createApiRef({ id: \"core.app-tree\" });\n\nexport { appTreeApiRef };\n//# sourceMappingURL=AppTreeApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst SessionState = {\n /**\n * User signed in.\n */\n SignedIn: \"SignedIn\",\n /**\n * User not signed in.\n */\n SignedOut: \"SignedOut\"\n};\nconst googleAuthApiRef = createApiRef({\n id: \"core.auth.google\"\n});\nconst githubAuthApiRef = createApiRef({\n id: \"core.auth.github\"\n});\nconst oktaAuthApiRef = createApiRef({\n id: \"core.auth.okta\"\n});\nconst gitlabAuthApiRef = createApiRef({\n id: \"core.auth.gitlab\"\n});\nconst microsoftAuthApiRef = createApiRef({\n id: \"core.auth.microsoft\"\n});\nconst oneloginAuthApiRef = createApiRef({\n id: \"core.auth.onelogin\"\n});\nconst bitbucketAuthApiRef = createApiRef({\n id: \"core.auth.bitbucket\"\n});\nconst bitbucketServerAuthApiRef = createApiRef({\n id: \"core.auth.bitbucket-server\"\n});\nconst atlassianAuthApiRef = createApiRef({\n id: \"core.auth.atlassian\"\n});\nconst vmwareCloudAuthApiRef = createApiRef({\n id: \"core.auth.vmware-cloud\"\n});\nconst openshiftAuthApiRef = createApiRef({\n id: \"core.auth.openshift\"\n});\n\nexport { SessionState, atlassianAuthApiRef, bitbucketAuthApiRef, bitbucketServerAuthApiRef, githubAuthApiRef, gitlabAuthApiRef, googleAuthApiRef, microsoftAuthApiRef, oktaAuthApiRef, oneloginAuthApiRef, openshiftAuthApiRef, vmwareCloudAuthApiRef };\n//# sourceMappingURL=auth.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst alertApiRef = createApiRef({\n id: \"core.alert\"\n});\n\nexport { alertApiRef };\n//# sourceMappingURL=AlertApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst appLanguageApiRef = createApiRef({\n id: \"core.applanguage\"\n});\n\nexport { appLanguageApiRef };\n//# sourceMappingURL=AppLanguageApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst appThemeApiRef = createApiRef({\n id: \"core.apptheme\"\n});\n\nexport { appThemeApiRef };\n//# sourceMappingURL=AppThemeApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst swappableComponentsApiRef = createApiRef({\n id: \"core.swappable-components\"\n});\n\nexport { swappableComponentsApiRef };\n//# sourceMappingURL=SwappableComponentsApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst configApiRef = createApiRef({\n id: \"core.config\"\n});\n\nexport { configApiRef };\n//# sourceMappingURL=ConfigApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst discoveryApiRef = createApiRef({\n id: \"core.discovery\"\n});\n\nexport { discoveryApiRef };\n//# sourceMappingURL=DiscoveryApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst errorApiRef = createApiRef({\n id: \"core.error\"\n});\n\nexport { errorApiRef };\n//# sourceMappingURL=ErrorApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst FeatureFlagState = {\n /**\n * Feature flag inactive (disabled).\n */\n None: 0,\n /**\n * Feature flag active (enabled).\n */\n Active: 1\n};\nconst featureFlagsApiRef = createApiRef({\n id: \"core.featureflags\"\n});\n\nexport { FeatureFlagState, featureFlagsApiRef };\n//# sourceMappingURL=FeatureFlagsApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst fetchApiRef = createApiRef({\n id: \"core.fetch\"\n});\n\nexport { fetchApiRef };\n//# sourceMappingURL=FetchApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst iconsApiRef = createApiRef({\n id: \"core.icons\"\n});\n\nexport { iconsApiRef };\n//# sourceMappingURL=IconsApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst identityApiRef = createApiRef({\n id: \"core.identity\"\n});\n\nexport { identityApiRef };\n//# sourceMappingURL=IdentityApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst dialogApiRef = createApiRef({\n id: \"core.dialog\"\n});\n\nexport { dialogApiRef };\n//# sourceMappingURL=DialogApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst oauthRequestApiRef = createApiRef({\n id: \"core.oauthrequest\"\n});\n\nexport { oauthRequestApiRef };\n//# sourceMappingURL=OAuthRequestApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst routeResolutionApiRef = createApiRef({\n id: \"core.route-resolution\"\n});\n\nexport { routeResolutionApiRef };\n//# sourceMappingURL=RouteResolutionApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst storageApiRef = createApiRef({\n id: \"core.storage\"\n});\n\nexport { storageApiRef };\n//# sourceMappingURL=StorageApi.esm.js.map\n","import 'react/jsx-runtime';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport { createApiRef } from '../system/ApiRef.esm.js';\n\nconst translationApiRef = createApiRef({\n id: \"core.translation\"\n});\n\nexport { translationApiRef };\n//# sourceMappingURL=TranslationApi.esm.js.map\n","function createApiFactory(factory, instance) {\n if (\"id\" in factory) {\n return {\n api: factory,\n deps: {},\n factory: () => instance\n };\n }\n return factory;\n}\n\nexport { createApiFactory };\n//# sourceMappingURL=helpers.esm.js.map\n","export const ignoreOverride = Symbol(\"Let zodToJsonSchema decide on which parser to use\");\nexport const jsonDescription = (jsonSchema, def) => {\n if (def.description) {\n try {\n return {\n ...jsonSchema,\n ...JSON.parse(def.description),\n };\n }\n catch { }\n }\n return jsonSchema;\n};\nexport const defaultOptions = {\n name: undefined,\n $refStrategy: \"root\",\n basePath: [\"#\"],\n effectStrategy: \"input\",\n pipeStrategy: \"all\",\n dateStrategy: \"format:date-time\",\n mapStrategy: \"entries\",\n removeAdditionalStrategy: \"passthrough\",\n allowedAdditionalProperties: true,\n rejectedAdditionalProperties: false,\n definitionPath: \"definitions\",\n target: \"jsonSchema7\",\n strictUnions: false,\n definitions: {},\n errorMessages: false,\n markdownDescription: false,\n patternStrategy: \"escape\",\n applyRegexFlags: false,\n emailStrategy: \"format:email\",\n base64Strategy: \"contentEncoding:base64\",\n nameStrategy: \"ref\",\n openAiAnyTypeName: \"OpenAiAnyType\"\n};\nexport const getDefaultOptions = (options) => (typeof options === \"string\"\n ? {\n ...defaultOptions,\n name: options,\n }\n : {\n ...defaultOptions,\n ...options,\n });\n","export const getRelativePath = (pathA, pathB) => {\n let i = 0;\n for (; i < pathA.length && i < pathB.length; i++) {\n if (pathA[i] !== pathB[i])\n break;\n }\n return [(pathA.length - i).toString(), ...pathB.slice(i)].join(\"/\");\n};\n","import { getRelativePath } from \"../getRelativePath.js\";\nexport function parseAnyDef(refs) {\n if (refs.target !== \"openAi\") {\n return {};\n }\n const anyDefinitionPath = [\n ...refs.basePath,\n refs.definitionPath,\n refs.openAiAnyTypeName,\n ];\n refs.flags.hasReferencedOpenAiAnyType = true;\n return {\n $ref: refs.$refStrategy === \"relative\"\n ? getRelativePath(anyDefinitionPath, refs.currentPath)\n : anyDefinitionPath.join(\"/\"),\n };\n}\n","export function addErrorMessage(res, key, errorMessage, refs) {\n if (!refs?.errorMessages)\n return;\n if (errorMessage) {\n res.errorMessage = {\n ...res.errorMessage,\n [key]: errorMessage,\n };\n }\n}\nexport function setResponseValueAndErrors(res, key, value, errorMessage, refs) {\n res[key] = value;\n addErrorMessage(res, key, errorMessage, refs);\n}\n","import { parseDef } from \"../parseDef.js\";\nexport function parseBrandedDef(_def, refs) {\n return parseDef(_def.type._def, refs);\n}\n","import { setResponseValueAndErrors } from \"../errorMessages.js\";\nexport function parseDateDef(def, refs, overrideDateStrategy) {\n const strategy = overrideDateStrategy ?? refs.dateStrategy;\n if (Array.isArray(strategy)) {\n return {\n anyOf: strategy.map((item, i) => parseDateDef(def, refs, item)),\n };\n }\n switch (strategy) {\n case \"string\":\n case \"format:date-time\":\n return {\n type: \"string\",\n format: \"date-time\",\n };\n case \"format:date\":\n return {\n type: \"string\",\n format: \"date\",\n };\n case \"integer\":\n return integerDateParser(def, refs);\n }\n}\nconst integerDateParser = (def, refs) => {\n const res = {\n type: \"integer\",\n format: \"unix-time\",\n };\n if (refs.target === \"openApi3\") {\n return res;\n }\n for (const check of def.checks) {\n switch (check.kind) {\n case \"min\":\n setResponseValueAndErrors(res, \"minimum\", check.value, // This is in milliseconds\n check.message, refs);\n break;\n case \"max\":\n setResponseValueAndErrors(res, \"maximum\", check.value, // This is in milliseconds\n check.message, refs);\n break;\n }\n }\n return res;\n};\n","import { setResponseValueAndErrors } from \"../errorMessages.js\";\nlet emojiRegex = undefined;\n/**\n * Generated from the regular expressions found here as of 2024-05-22:\n * https://github.com/colinhacks/zod/blob/master/src/types.ts.\n *\n * Expressions with /i flag have been changed accordingly.\n */\nexport const zodPatterns = {\n /**\n * `c` was changed to `[cC]` to replicate /i flag\n */\n cuid: /^[cC][^\\s-]{8,}$/,\n cuid2: /^[0-9a-z]+$/,\n ulid: /^[0-9A-HJKMNP-TV-Z]{26}$/,\n /**\n * `a-z` was added to replicate /i flag\n */\n email: /^(?!\\.)(?!.*\\.\\.)([a-zA-Z0-9_'+\\-\\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\\-]*\\.)+[a-zA-Z]{2,}$/,\n /**\n * Constructed a valid Unicode RegExp\n *\n * Lazily instantiate since this type of regex isn't supported\n * in all envs (e.g. React Native).\n *\n * See:\n * https://github.com/colinhacks/zod/issues/2433\n * Fix in Zod:\n * https://github.com/colinhacks/zod/commit/9340fd51e48576a75adc919bff65dbc4a5d4c99b\n */\n emoji: () => {\n if (emojiRegex === undefined) {\n emojiRegex = RegExp(\"^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$\", \"u\");\n }\n return emojiRegex;\n },\n /**\n * Unused\n */\n uuid: /^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$/,\n /**\n * Unused\n */\n ipv4: /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,\n ipv4Cidr: /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\/(3[0-2]|[12]?[0-9])$/,\n /**\n * Unused\n */\n ipv6: /^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,\n ipv6Cidr: /^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,\n base64: /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,\n base64url: /^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,\n nanoid: /^[a-zA-Z0-9_-]{21}$/,\n jwt: /^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$/,\n};\nexport function parseStringDef(def, refs) {\n const res = {\n type: \"string\",\n };\n if (def.checks) {\n for (const check of def.checks) {\n switch (check.kind) {\n case \"min\":\n setResponseValueAndErrors(res, \"minLength\", typeof res.minLength === \"number\"\n ? Math.max(res.minLength, check.value)\n : check.value, check.message, refs);\n break;\n case \"max\":\n setResponseValueAndErrors(res, \"maxLength\", typeof res.maxLength === \"number\"\n ? Math.min(res.maxLength, check.value)\n : check.value, check.message, refs);\n break;\n case \"email\":\n switch (refs.emailStrategy) {\n case \"format:email\":\n addFormat(res, \"email\", check.message, refs);\n break;\n case \"format:idn-email\":\n addFormat(res, \"idn-email\", check.message, refs);\n break;\n case \"pattern:zod\":\n addPattern(res, zodPatterns.email, check.message, refs);\n break;\n }\n break;\n case \"url\":\n addFormat(res, \"uri\", check.message, refs);\n break;\n case \"uuid\":\n addFormat(res, \"uuid\", check.message, refs);\n break;\n case \"regex\":\n addPattern(res, check.regex, check.message, refs);\n break;\n case \"cuid\":\n addPattern(res, zodPatterns.cuid, check.message, refs);\n break;\n case \"cuid2\":\n addPattern(res, zodPatterns.cuid2, check.message, refs);\n break;\n case \"startsWith\":\n addPattern(res, RegExp(`^${escapeLiteralCheckValue(check.value, refs)}`), check.message, refs);\n break;\n case \"endsWith\":\n addPattern(res, RegExp(`${escapeLiteralCheckValue(check.value, refs)}$`), check.message, refs);\n break;\n case \"datetime\":\n addFormat(res, \"date-time\", check.message, refs);\n break;\n case \"date\":\n addFormat(res, \"date\", check.message, refs);\n break;\n case \"time\":\n addFormat(res, \"time\", check.message, refs);\n break;\n case \"duration\":\n addFormat(res, \"duration\", check.message, refs);\n break;\n case \"length\":\n setResponseValueAndErrors(res, \"minLength\", typeof res.minLength === \"number\"\n ? Math.max(res.minLength, check.value)\n : check.value, check.message, refs);\n setResponseValueAndErrors(res, \"maxLength\", typeof res.maxLength === \"number\"\n ? Math.min(res.maxLength, check.value)\n : check.value, check.message, refs);\n break;\n case \"includes\": {\n addPattern(res, RegExp(escapeLiteralCheckValue(check.value, refs)), check.message, refs);\n break;\n }\n case \"ip\": {\n if (check.version !== \"v6\") {\n addFormat(res, \"ipv4\", check.message, refs);\n }\n if (check.version !== \"v4\") {\n addFormat(res, \"ipv6\", check.message, refs);\n }\n break;\n }\n case \"base64url\":\n addPattern(res, zodPatterns.base64url, check.message, refs);\n break;\n case \"jwt\":\n addPattern(res, zodPatterns.jwt, check.message, refs);\n break;\n case \"cidr\": {\n if (check.version !== \"v6\") {\n addPattern(res, zodPatterns.ipv4Cidr, check.message, refs);\n }\n if (check.version !== \"v4\") {\n addPattern(res, zodPatterns.ipv6Cidr, check.message, refs);\n }\n break;\n }\n case \"emoji\":\n addPattern(res, zodPatterns.emoji(), check.message, refs);\n break;\n case \"ulid\": {\n addPattern(res, zodPatterns.ulid, check.message, refs);\n break;\n }\n case \"base64\": {\n switch (refs.base64Strategy) {\n case \"format:binary\": {\n addFormat(res, \"binary\", check.message, refs);\n break;\n }\n case \"contentEncoding:base64\": {\n setResponseValueAndErrors(res, \"contentEncoding\", \"base64\", check.message, refs);\n break;\n }\n case \"pattern:zod\": {\n addPattern(res, zodPatterns.base64, check.message, refs);\n break;\n }\n }\n break;\n }\n case \"nanoid\": {\n addPattern(res, zodPatterns.nanoid, check.message, refs);\n }\n case \"toLowerCase\":\n case \"toUpperCase\":\n case \"trim\":\n break;\n default:\n ((_) => { })(check);\n }\n }\n }\n return res;\n}\nfunction escapeLiteralCheckValue(literal, refs) {\n return refs.patternStrategy === \"escape\"\n ? escapeNonAlphaNumeric(literal)\n : literal;\n}\nconst ALPHA_NUMERIC = new Set(\"ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789\");\nfunction escapeNonAlphaNumeric(source) {\n let result = \"\";\n for (let i = 0; i < source.length; i++) {\n if (!ALPHA_NUMERIC.has(source[i])) {\n result += \"\\\\\";\n }\n result += source[i];\n }\n return result;\n}\n// Adds a \"format\" keyword to the schema. If a format exists, both formats will be joined in an allOf-node, along with subsequent ones.\nfunction addFormat(schema, value, message, refs) {\n if (schema.format || schema.anyOf?.some((x) => x.format)) {\n if (!schema.anyOf) {\n schema.anyOf = [];\n }\n if (schema.format) {\n schema.anyOf.push({\n format: schema.format,\n ...(schema.errorMessage &&\n refs.errorMessages && {\n errorMessage: { format: schema.errorMessage.format },\n }),\n });\n delete schema.format;\n if (schema.errorMessage) {\n delete schema.errorMessage.format;\n if (Object.keys(schema.errorMessage).length === 0) {\n delete schema.errorMessage;\n }\n }\n }\n schema.anyOf.push({\n format: value,\n ...(message &&\n refs.errorMessages && { errorMessage: { format: message } }),\n });\n }\n else {\n setResponseValueAndErrors(schema, \"format\", value, message, refs);\n }\n}\n// Adds a \"pattern\" keyword to the schema. If a pattern exists, both patterns will be joined in an allOf-node, along with subsequent ones.\nfunction addPattern(schema, regex, message, refs) {\n if (schema.pattern || schema.allOf?.some((x) => x.pattern)) {\n if (!schema.allOf) {\n schema.allOf = [];\n }\n if (schema.pattern) {\n schema.allOf.push({\n pattern: schema.pattern,\n ...(schema.errorMessage &&\n refs.errorMessages && {\n errorMessage: { pattern: schema.errorMessage.pattern },\n }),\n });\n delete schema.pattern;\n if (schema.errorMessage) {\n delete schema.errorMessage.pattern;\n if (Object.keys(schema.errorMessage).length === 0) {\n delete schema.errorMessage;\n }\n }\n }\n schema.allOf.push({\n pattern: stringifyRegExpWithFlags(regex, refs),\n ...(message &&\n refs.errorMessages && { errorMessage: { pattern: message } }),\n });\n }\n else {\n setResponseValueAndErrors(schema, \"pattern\", stringifyRegExpWithFlags(regex, refs), message, refs);\n }\n}\n// Mutate z.string.regex() in a best attempt to accommodate for regex flags when applyRegexFlags is true\nfunction stringifyRegExpWithFlags(regex, refs) {\n if (!refs.applyRegexFlags || !regex.flags) {\n return regex.source;\n }\n // Currently handled flags\n const flags = {\n i: regex.flags.includes(\"i\"),\n m: regex.flags.includes(\"m\"),\n s: regex.flags.includes(\"s\"), // `.` matches newlines\n };\n // The general principle here is to step through each character, one at a time, applying mutations as flags require. We keep track when the current character is escaped, and when it's inside a group /like [this]/ or (also) a range like /[a-z]/. The following is fairly brittle imperative code; edit at your peril!\n const source = flags.i ? regex.source.toLowerCase() : regex.source;\n let pattern = \"\";\n let isEscaped = false;\n let inCharGroup = false;\n let inCharRange = false;\n for (let i = 0; i < source.length; i++) {\n if (isEscaped) {\n pattern += source[i];\n isEscaped = false;\n continue;\n }\n if (flags.i) {\n if (inCharGroup) {\n if (source[i].match(/[a-z]/)) {\n if (inCharRange) {\n pattern += source[i];\n pattern += `${source[i - 2]}-${source[i]}`.toUpperCase();\n inCharRange = false;\n }\n else if (source[i + 1] === \"-\" && source[i + 2]?.match(/[a-z]/)) {\n pattern += source[i];\n inCharRange = true;\n }\n else {\n pattern += `${source[i]}${source[i].toUpperCase()}`;\n }\n continue;\n }\n }\n else if (source[i].match(/[a-z]/)) {\n pattern += `[${source[i]}${source[i].toUpperCase()}]`;\n continue;\n }\n }\n if (flags.m) {\n if (source[i] === \"^\") {\n pattern += `(^|(?<=[\\r\\n]))`;\n continue;\n }\n else if (source[i] === \"$\") {\n pattern += `($|(?=[\\r\\n]))`;\n continue;\n }\n }\n if (flags.s && source[i] === \".\") {\n pattern += inCharGroup ? `${source[i]}\\r\\n` : `[${source[i]}\\r\\n]`;\n continue;\n }\n pattern += source[i];\n if (source[i] === \"\\\\\") {\n isEscaped = true;\n }\n else if (inCharGroup && source[i] === \"]\") {\n inCharGroup = false;\n }\n else if (!inCharGroup && source[i] === \"[\") {\n inCharGroup = true;\n }\n }\n try {\n new RegExp(pattern);\n }\n catch {\n console.warn(`Could not convert regex pattern at ${refs.currentPath.join(\"/\")} to a flag-independent form! Falling back to the flag-ignorant source`);\n return regex.source;\n }\n return pattern;\n}\n","import { ZodFirstPartyTypeKind, } from \"zod/v3\";\nimport { parseDef } from \"../parseDef.js\";\nimport { parseStringDef } from \"./string.js\";\nimport { parseBrandedDef } from \"./branded.js\";\nimport { parseAnyDef } from \"./any.js\";\nexport function parseRecordDef(def, refs) {\n if (refs.target === \"openAi\") {\n console.warn(\"Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.\");\n }\n if (refs.target === \"openApi3\" &&\n def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodEnum) {\n return {\n type: \"object\",\n required: def.keyType._def.values,\n properties: def.keyType._def.values.reduce((acc, key) => ({\n ...acc,\n [key]: parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"properties\", key],\n }) ?? parseAnyDef(refs),\n }), {}),\n additionalProperties: refs.rejectedAdditionalProperties,\n };\n }\n const schema = {\n type: \"object\",\n additionalProperties: parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"additionalProperties\"],\n }) ?? refs.allowedAdditionalProperties,\n };\n if (refs.target === \"openApi3\") {\n return schema;\n }\n if (def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodString &&\n def.keyType._def.checks?.length) {\n const { type, ...keyType } = parseStringDef(def.keyType._def, refs);\n return {\n ...schema,\n propertyNames: keyType,\n };\n }\n else if (def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodEnum) {\n return {\n ...schema,\n propertyNames: {\n enum: def.keyType._def.values,\n },\n };\n }\n else if (def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodBranded &&\n def.keyType._def.type._def.typeName === ZodFirstPartyTypeKind.ZodString &&\n def.keyType._def.type._def.checks?.length) {\n const { type, ...keyType } = parseBrandedDef(def.keyType._def, refs);\n return {\n ...schema,\n propertyNames: keyType,\n };\n }\n return schema;\n}\n","import { parseDef } from \"../parseDef.js\";\nexport const primitiveMappings = {\n ZodString: \"string\",\n ZodNumber: \"number\",\n ZodBigInt: \"integer\",\n ZodBoolean: \"boolean\",\n ZodNull: \"null\",\n};\nexport function parseUnionDef(def, refs) {\n if (refs.target === \"openApi3\")\n return asAnyOf(def, refs);\n const options = def.options instanceof Map ? Array.from(def.options.values()) : def.options;\n // This blocks tries to look ahead a bit to produce nicer looking schemas with type array instead of anyOf.\n if (options.every((x) => x._def.typeName in primitiveMappings &&\n (!x._def.checks || !x._def.checks.length))) {\n // all types in union are primitive and lack checks, so might as well squash into {type: [...]}\n const types = options.reduce((types, x) => {\n const type = primitiveMappings[x._def.typeName]; //Can be safely casted due to row 43\n return type && !types.includes(type) ? [...types, type] : types;\n }, []);\n return {\n type: types.length > 1 ? types : types[0],\n };\n }\n else if (options.every((x) => x._def.typeName === \"ZodLiteral\" && !x.description)) {\n // all options literals\n const types = options.reduce((acc, x) => {\n const type = typeof x._def.value;\n switch (type) {\n case \"string\":\n case \"number\":\n case \"boolean\":\n return [...acc, type];\n case \"bigint\":\n return [...acc, \"integer\"];\n case \"object\":\n if (x._def.value === null)\n return [...acc, \"null\"];\n case \"symbol\":\n case \"undefined\":\n case \"function\":\n default:\n return acc;\n }\n }, []);\n if (types.length === options.length) {\n // all the literals are primitive, as far as null can be considered primitive\n const uniqueTypes = types.filter((x, i, a) => a.indexOf(x) === i);\n return {\n type: uniqueTypes.length > 1 ? uniqueTypes : uniqueTypes[0],\n enum: options.reduce((acc, x) => {\n return acc.includes(x._def.value) ? acc : [...acc, x._def.value];\n }, []),\n };\n }\n }\n else if (options.every((x) => x._def.typeName === \"ZodEnum\")) {\n return {\n type: \"string\",\n enum: options.reduce((acc, x) => [\n ...acc,\n ...x._def.values.filter((x) => !acc.includes(x)),\n ], []),\n };\n }\n return asAnyOf(def, refs);\n}\nconst asAnyOf = (def, refs) => {\n const anyOf = (def.options instanceof Map\n ? Array.from(def.options.values())\n : def.options)\n .map((x, i) => parseDef(x._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", `${i}`],\n }))\n .filter((x) => !!x &&\n (!refs.strictUnions ||\n (typeof x === \"object\" && Object.keys(x).length > 0)));\n return anyOf.length ? { anyOf } : undefined;\n};\n","import { parseDef } from \"../parseDef.js\";\nexport function parseObjectDef(def, refs) {\n const forceOptionalIntoNullable = refs.target === \"openAi\";\n const result = {\n type: \"object\",\n properties: {},\n };\n const required = [];\n const shape = def.shape();\n for (const propName in shape) {\n let propDef = shape[propName];\n if (propDef === undefined || propDef._def === undefined) {\n continue;\n }\n let propOptional = safeIsOptional(propDef);\n if (propOptional && forceOptionalIntoNullable) {\n if (propDef._def.typeName === \"ZodOptional\") {\n propDef = propDef._def.innerType;\n }\n if (!propDef.isNullable()) {\n propDef = propDef.nullable();\n }\n propOptional = false;\n }\n const parsedDef = parseDef(propDef._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"properties\", propName],\n propertyPath: [...refs.currentPath, \"properties\", propName],\n });\n if (parsedDef === undefined) {\n continue;\n }\n result.properties[propName] = parsedDef;\n if (!propOptional) {\n required.push(propName);\n }\n }\n if (required.length) {\n result.required = required;\n }\n const additionalProperties = decideAdditionalProperties(def, refs);\n if (additionalProperties !== undefined) {\n result.additionalProperties = additionalProperties;\n }\n return result;\n}\nfunction decideAdditionalProperties(def, refs) {\n if (def.catchall._def.typeName !== \"ZodNever\") {\n return parseDef(def.catchall._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"additionalProperties\"],\n });\n }\n switch (def.unknownKeys) {\n case \"passthrough\":\n return refs.allowedAdditionalProperties;\n case \"strict\":\n return refs.rejectedAdditionalProperties;\n case \"strip\":\n return refs.removeAdditionalStrategy === \"strict\"\n ? refs.allowedAdditionalProperties\n : refs.rejectedAdditionalProperties;\n }\n}\nfunction safeIsOptional(schema) {\n try {\n return schema.isOptional();\n }\n catch {\n return true;\n }\n}\n","import { parseDef } from \"../parseDef.js\";\nexport const parseReadonlyDef = (def, refs) => {\n return parseDef(def.innerType._def, refs);\n};\n","import { ZodFirstPartyTypeKind } from \"zod/v3\";\nimport { parseAnyDef } from \"./parsers/any.js\";\nimport { parseArrayDef } from \"./parsers/array.js\";\nimport { parseBigintDef } from \"./parsers/bigint.js\";\nimport { parseBooleanDef } from \"./parsers/boolean.js\";\nimport { parseBrandedDef } from \"./parsers/branded.js\";\nimport { parseCatchDef } from \"./parsers/catch.js\";\nimport { parseDateDef } from \"./parsers/date.js\";\nimport { parseDefaultDef } from \"./parsers/default.js\";\nimport { parseEffectsDef } from \"./parsers/effects.js\";\nimport { parseEnumDef } from \"./parsers/enum.js\";\nimport { parseIntersectionDef } from \"./parsers/intersection.js\";\nimport { parseLiteralDef } from \"./parsers/literal.js\";\nimport { parseMapDef } from \"./parsers/map.js\";\nimport { parseNativeEnumDef } from \"./parsers/nativeEnum.js\";\nimport { parseNeverDef } from \"./parsers/never.js\";\nimport { parseNullDef } from \"./parsers/null.js\";\nimport { parseNullableDef } from \"./parsers/nullable.js\";\nimport { parseNumberDef } from \"./parsers/number.js\";\nimport { parseObjectDef } from \"./parsers/object.js\";\nimport { parseOptionalDef } from \"./parsers/optional.js\";\nimport { parsePipelineDef } from \"./parsers/pipeline.js\";\nimport { parsePromiseDef } from \"./parsers/promise.js\";\nimport { parseRecordDef } from \"./parsers/record.js\";\nimport { parseSetDef } from \"./parsers/set.js\";\nimport { parseStringDef } from \"./parsers/string.js\";\nimport { parseTupleDef } from \"./parsers/tuple.js\";\nimport { parseUndefinedDef } from \"./parsers/undefined.js\";\nimport { parseUnionDef } from \"./parsers/union.js\";\nimport { parseUnknownDef } from \"./parsers/unknown.js\";\nimport { parseReadonlyDef } from \"./parsers/readonly.js\";\nexport const selectParser = (def, typeName, refs) => {\n switch (typeName) {\n case ZodFirstPartyTypeKind.ZodString:\n return parseStringDef(def, refs);\n case ZodFirstPartyTypeKind.ZodNumber:\n return parseNumberDef(def, refs);\n case ZodFirstPartyTypeKind.ZodObject:\n return parseObjectDef(def, refs);\n case ZodFirstPartyTypeKind.ZodBigInt:\n return parseBigintDef(def, refs);\n case ZodFirstPartyTypeKind.ZodBoolean:\n return parseBooleanDef();\n case ZodFirstPartyTypeKind.ZodDate:\n return parseDateDef(def, refs);\n case ZodFirstPartyTypeKind.ZodUndefined:\n return parseUndefinedDef(refs);\n case ZodFirstPartyTypeKind.ZodNull:\n return parseNullDef(refs);\n case ZodFirstPartyTypeKind.ZodArray:\n return parseArrayDef(def, refs);\n case ZodFirstPartyTypeKind.ZodUnion:\n case ZodFirstPartyTypeKind.ZodDiscriminatedUnion:\n return parseUnionDef(def, refs);\n case ZodFirstPartyTypeKind.ZodIntersection:\n return parseIntersectionDef(def, refs);\n case ZodFirstPartyTypeKind.ZodTuple:\n return parseTupleDef(def, refs);\n case ZodFirstPartyTypeKind.ZodRecord:\n return parseRecordDef(def, refs);\n case ZodFirstPartyTypeKind.ZodLiteral:\n return parseLiteralDef(def, refs);\n case ZodFirstPartyTypeKind.ZodEnum:\n return parseEnumDef(def);\n case ZodFirstPartyTypeKind.ZodNativeEnum:\n return parseNativeEnumDef(def);\n case ZodFirstPartyTypeKind.ZodNullable:\n return parseNullableDef(def, refs);\n case ZodFirstPartyTypeKind.ZodOptional:\n return parseOptionalDef(def, refs);\n case ZodFirstPartyTypeKind.ZodMap:\n return parseMapDef(def, refs);\n case ZodFirstPartyTypeKind.ZodSet:\n return parseSetDef(def, refs);\n case ZodFirstPartyTypeKind.ZodLazy:\n return () => def.getter()._def;\n case ZodFirstPartyTypeKind.ZodPromise:\n return parsePromiseDef(def, refs);\n case ZodFirstPartyTypeKind.ZodNaN:\n case ZodFirstPartyTypeKind.ZodNever:\n return parseNeverDef(refs);\n case ZodFirstPartyTypeKind.ZodEffects:\n return parseEffectsDef(def, refs);\n case ZodFirstPartyTypeKind.ZodAny:\n return parseAnyDef(refs);\n case ZodFirstPartyTypeKind.ZodUnknown:\n return parseUnknownDef(refs);\n case ZodFirstPartyTypeKind.ZodDefault:\n return parseDefaultDef(def, refs);\n case ZodFirstPartyTypeKind.ZodBranded:\n return parseBrandedDef(def, refs);\n case ZodFirstPartyTypeKind.ZodReadonly:\n return parseReadonlyDef(def, refs);\n case ZodFirstPartyTypeKind.ZodCatch:\n return parseCatchDef(def, refs);\n case ZodFirstPartyTypeKind.ZodPipeline:\n return parsePipelineDef(def, refs);\n case ZodFirstPartyTypeKind.ZodFunction:\n case ZodFirstPartyTypeKind.ZodVoid:\n case ZodFirstPartyTypeKind.ZodSymbol:\n return undefined;\n default:\n return ((_) => undefined)(typeName);\n }\n};\n","import { addErrorMessage, setResponseValueAndErrors, } from \"../errorMessages.js\";\nexport function parseNumberDef(def, refs) {\n const res = {\n type: \"number\",\n };\n if (!def.checks)\n return res;\n for (const check of def.checks) {\n switch (check.kind) {\n case \"int\":\n res.type = \"integer\";\n addErrorMessage(res, \"type\", check.message, refs);\n break;\n case \"min\":\n if (refs.target === \"jsonSchema7\") {\n if (check.inclusive) {\n setResponseValueAndErrors(res, \"minimum\", check.value, check.message, refs);\n }\n else {\n setResponseValueAndErrors(res, \"exclusiveMinimum\", check.value, check.message, refs);\n }\n }\n else {\n if (!check.inclusive) {\n res.exclusiveMinimum = true;\n }\n setResponseValueAndErrors(res, \"minimum\", check.value, check.message, refs);\n }\n break;\n case \"max\":\n if (refs.target === \"jsonSchema7\") {\n if (check.inclusive) {\n setResponseValueAndErrors(res, \"maximum\", check.value, check.message, refs);\n }\n else {\n setResponseValueAndErrors(res, \"exclusiveMaximum\", check.value, check.message, refs);\n }\n }\n else {\n if (!check.inclusive) {\n res.exclusiveMaximum = true;\n }\n setResponseValueAndErrors(res, \"maximum\", check.value, check.message, refs);\n }\n break;\n case \"multipleOf\":\n setResponseValueAndErrors(res, \"multipleOf\", check.value, check.message, refs);\n break;\n }\n }\n return res;\n}\n","import { setResponseValueAndErrors } from \"../errorMessages.js\";\nexport function parseBigintDef(def, refs) {\n const res = {\n type: \"integer\",\n format: \"int64\",\n };\n if (!def.checks)\n return res;\n for (const check of def.checks) {\n switch (check.kind) {\n case \"min\":\n if (refs.target === \"jsonSchema7\") {\n if (check.inclusive) {\n setResponseValueAndErrors(res, \"minimum\", check.value, check.message, refs);\n }\n else {\n setResponseValueAndErrors(res, \"exclusiveMinimum\", check.value, check.message, refs);\n }\n }\n else {\n if (!check.inclusive) {\n res.exclusiveMinimum = true;\n }\n setResponseValueAndErrors(res, \"minimum\", check.value, check.message, refs);\n }\n break;\n case \"max\":\n if (refs.target === \"jsonSchema7\") {\n if (check.inclusive) {\n setResponseValueAndErrors(res, \"maximum\", check.value, check.message, refs);\n }\n else {\n setResponseValueAndErrors(res, \"exclusiveMaximum\", check.value, check.message, refs);\n }\n }\n else {\n if (!check.inclusive) {\n res.exclusiveMaximum = true;\n }\n setResponseValueAndErrors(res, \"maximum\", check.value, check.message, refs);\n }\n break;\n case \"multipleOf\":\n setResponseValueAndErrors(res, \"multipleOf\", check.value, check.message, refs);\n break;\n }\n }\n return res;\n}\n","export function parseBooleanDef() {\n return {\n type: \"boolean\",\n };\n}\n","import { parseAnyDef } from \"./any.js\";\nexport function parseUndefinedDef(refs) {\n return {\n not: parseAnyDef(refs),\n };\n}\n","export function parseNullDef(refs) {\n return refs.target === \"openApi3\"\n ? {\n enum: [\"null\"],\n nullable: true,\n }\n : {\n type: \"null\",\n };\n}\n","import { ZodFirstPartyTypeKind } from \"zod/v3\";\nimport { setResponseValueAndErrors } from \"../errorMessages.js\";\nimport { parseDef } from \"../parseDef.js\";\nexport function parseArrayDef(def, refs) {\n const res = {\n type: \"array\",\n };\n if (def.type?._def &&\n def.type?._def?.typeName !== ZodFirstPartyTypeKind.ZodAny) {\n res.items = parseDef(def.type._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\"],\n });\n }\n if (def.minLength) {\n setResponseValueAndErrors(res, \"minItems\", def.minLength.value, def.minLength.message, refs);\n }\n if (def.maxLength) {\n setResponseValueAndErrors(res, \"maxItems\", def.maxLength.value, def.maxLength.message, refs);\n }\n if (def.exactLength) {\n setResponseValueAndErrors(res, \"minItems\", def.exactLength.value, def.exactLength.message, refs);\n setResponseValueAndErrors(res, \"maxItems\", def.exactLength.value, def.exactLength.message, refs);\n }\n return res;\n}\n","import { parseDef } from \"../parseDef.js\";\nconst isJsonSchema7AllOfType = (type) => {\n if (\"type\" in type && type.type === \"string\")\n return false;\n return \"allOf\" in type;\n};\nexport function parseIntersectionDef(def, refs) {\n const allOf = [\n parseDef(def.left._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", \"0\"],\n }),\n parseDef(def.right._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", \"1\"],\n }),\n ].filter((x) => !!x);\n let unevaluatedProperties = refs.target === \"jsonSchema2019-09\"\n ? { unevaluatedProperties: false }\n : undefined;\n const mergedAllOf = [];\n // If either of the schemas is an allOf, merge them into a single allOf\n allOf.forEach((schema) => {\n if (isJsonSchema7AllOfType(schema)) {\n mergedAllOf.push(...schema.allOf);\n if (schema.unevaluatedProperties === undefined) {\n // If one of the schemas has no unevaluatedProperties set,\n // the merged schema should also have no unevaluatedProperties set\n unevaluatedProperties = undefined;\n }\n }\n else {\n let nestedSchema = schema;\n if (\"additionalProperties\" in schema &&\n schema.additionalProperties === false) {\n const { additionalProperties, ...rest } = schema;\n nestedSchema = rest;\n }\n else {\n // As soon as one of the schemas has additionalProperties set not to false, we allow unevaluatedProperties\n unevaluatedProperties = undefined;\n }\n mergedAllOf.push(nestedSchema);\n }\n });\n return mergedAllOf.length\n ? {\n allOf: mergedAllOf,\n ...unevaluatedProperties,\n }\n : undefined;\n}\n","import { parseDef } from \"../parseDef.js\";\nexport function parseTupleDef(def, refs) {\n if (def.rest) {\n return {\n type: \"array\",\n minItems: def.items.length,\n items: def.items\n .map((x, i) => parseDef(x._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", `${i}`],\n }))\n .reduce((acc, x) => (x === undefined ? acc : [...acc, x]), []),\n additionalItems: parseDef(def.rest._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"additionalItems\"],\n }),\n };\n }\n else {\n return {\n type: \"array\",\n minItems: def.items.length,\n maxItems: def.items.length,\n items: def.items\n .map((x, i) => parseDef(x._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", `${i}`],\n }))\n .reduce((acc, x) => (x === undefined ? acc : [...acc, x]), []),\n };\n }\n}\n","export function parseLiteralDef(def, refs) {\n const parsedType = typeof def.value;\n if (parsedType !== \"bigint\" &&\n parsedType !== \"number\" &&\n parsedType !== \"boolean\" &&\n parsedType !== \"string\") {\n return {\n type: Array.isArray(def.value) ? \"array\" : \"object\",\n };\n }\n if (refs.target === \"openApi3\") {\n return {\n type: parsedType === \"bigint\" ? \"integer\" : parsedType,\n enum: [def.value],\n };\n }\n return {\n type: parsedType === \"bigint\" ? \"integer\" : parsedType,\n const: def.value,\n };\n}\n","export function parseEnumDef(def) {\n return {\n type: \"string\",\n enum: Array.from(def.values),\n };\n}\n","export function parseNativeEnumDef(def) {\n const object = def.values;\n const actualKeys = Object.keys(def.values).filter((key) => {\n return typeof object[object[key]] !== \"number\";\n });\n const actualValues = actualKeys.map((key) => object[key]);\n const parsedTypes = Array.from(new Set(actualValues.map((values) => typeof values)));\n return {\n type: parsedTypes.length === 1\n ? parsedTypes[0] === \"string\"\n ? \"string\"\n : \"number\"\n : [\"string\", \"number\"],\n enum: actualValues,\n };\n}\n","import { parseDef } from \"../parseDef.js\";\nimport { primitiveMappings } from \"./union.js\";\nexport function parseNullableDef(def, refs) {\n if ([\"ZodString\", \"ZodNumber\", \"ZodBigInt\", \"ZodBoolean\", \"ZodNull\"].includes(def.innerType._def.typeName) &&\n (!def.innerType._def.checks || !def.innerType._def.checks.length)) {\n if (refs.target === \"openApi3\") {\n return {\n type: primitiveMappings[def.innerType._def.typeName],\n nullable: true,\n };\n }\n return {\n type: [\n primitiveMappings[def.innerType._def.typeName],\n \"null\",\n ],\n };\n }\n if (refs.target === \"openApi3\") {\n const base = parseDef(def.innerType._def, {\n ...refs,\n currentPath: [...refs.currentPath],\n });\n if (base && \"$ref\" in base)\n return { allOf: [base], nullable: true };\n return base && { ...base, nullable: true };\n }\n const base = parseDef(def.innerType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", \"0\"],\n });\n return base && { anyOf: [base, { type: \"null\" }] };\n}\n","import { parseDef } from \"../parseDef.js\";\nimport { parseAnyDef } from \"./any.js\";\nexport const parseOptionalDef = (def, refs) => {\n if (refs.currentPath.toString() === refs.propertyPath?.toString()) {\n return parseDef(def.innerType._def, refs);\n }\n const innerSchema = parseDef(def.innerType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", \"1\"],\n });\n return innerSchema\n ? {\n anyOf: [\n {\n not: parseAnyDef(refs),\n },\n innerSchema,\n ],\n }\n : parseAnyDef(refs);\n};\n","import { parseDef } from \"../parseDef.js\";\nimport { parseRecordDef } from \"./record.js\";\nimport { parseAnyDef } from \"./any.js\";\nexport function parseMapDef(def, refs) {\n if (refs.mapStrategy === \"record\") {\n return parseRecordDef(def, refs);\n }\n const keys = parseDef(def.keyType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", \"items\", \"0\"],\n }) || parseAnyDef(refs);\n const values = parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", \"items\", \"1\"],\n }) || parseAnyDef(refs);\n return {\n type: \"array\",\n maxItems: 125,\n items: {\n type: \"array\",\n items: [keys, values],\n minItems: 2,\n maxItems: 2,\n },\n };\n}\n","import { setResponseValueAndErrors } from \"../errorMessages.js\";\nimport { parseDef } from \"../parseDef.js\";\nexport function parseSetDef(def, refs) {\n const items = parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\"],\n });\n const schema = {\n type: \"array\",\n uniqueItems: true,\n items,\n };\n if (def.minSize) {\n setResponseValueAndErrors(schema, \"minItems\", def.minSize.value, def.minSize.message, refs);\n }\n if (def.maxSize) {\n setResponseValueAndErrors(schema, \"maxItems\", def.maxSize.value, def.maxSize.message, refs);\n }\n return schema;\n}\n","import { parseDef } from \"../parseDef.js\";\nexport function parsePromiseDef(def, refs) {\n return parseDef(def.type._def, refs);\n}\n","import { parseAnyDef } from \"./any.js\";\nexport function parseNeverDef(refs) {\n return refs.target === \"openAi\"\n ? undefined\n : {\n not: parseAnyDef({\n ...refs,\n currentPath: [...refs.currentPath, \"not\"],\n }),\n };\n}\n","import { parseDef } from \"../parseDef.js\";\nimport { parseAnyDef } from \"./any.js\";\nexport function parseEffectsDef(_def, refs) {\n return refs.effectStrategy === \"input\"\n ? parseDef(_def.schema._def, refs)\n : parseAnyDef(refs);\n}\n","import { parseAnyDef } from \"./any.js\";\nexport function parseUnknownDef(refs) {\n return parseAnyDef(refs);\n}\n","import { parseDef } from \"../parseDef.js\";\nexport function parseDefaultDef(_def, refs) {\n return {\n ...parseDef(_def.innerType._def, refs),\n default: _def.defaultValue(),\n };\n}\n","import { parseDef } from \"../parseDef.js\";\nexport const parseCatchDef = (def, refs) => {\n return parseDef(def.innerType._def, refs);\n};\n","import { parseDef } from \"../parseDef.js\";\nexport const parsePipelineDef = (def, refs) => {\n if (refs.pipeStrategy === \"input\") {\n return parseDef(def.in._def, refs);\n }\n else if (refs.pipeStrategy === \"output\") {\n return parseDef(def.out._def, refs);\n }\n const a = parseDef(def.in._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", \"0\"],\n });\n const b = parseDef(def.out._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", a ? \"1\" : \"0\"],\n });\n return {\n allOf: [a, b].filter((x) => x !== undefined),\n };\n};\n","import { ignoreOverride } from \"./Options.js\";\nimport { selectParser } from \"./selectParser.js\";\nimport { getRelativePath } from \"./getRelativePath.js\";\nimport { parseAnyDef } from \"./parsers/any.js\";\nexport function parseDef(def, refs, forceResolution = false) {\n const seenItem = refs.seen.get(def);\n if (refs.override) {\n const overrideResult = refs.override?.(def, refs, seenItem, forceResolution);\n if (overrideResult !== ignoreOverride) {\n return overrideResult;\n }\n }\n if (seenItem && !forceResolution) {\n const seenSchema = get$ref(seenItem, refs);\n if (seenSchema !== undefined) {\n return seenSchema;\n }\n }\n const newItem = { def, path: refs.currentPath, jsonSchema: undefined };\n refs.seen.set(def, newItem);\n const jsonSchemaOrGetter = selectParser(def, def.typeName, refs);\n // If the return was a function, then the inner definition needs to be extracted before a call to parseDef (recursive)\n const jsonSchema = typeof jsonSchemaOrGetter === \"function\"\n ? parseDef(jsonSchemaOrGetter(), refs)\n : jsonSchemaOrGetter;\n if (jsonSchema) {\n addMeta(def, refs, jsonSchema);\n }\n if (refs.postProcess) {\n const postProcessResult = refs.postProcess(jsonSchema, def, refs);\n newItem.jsonSchema = jsonSchema;\n return postProcessResult;\n }\n newItem.jsonSchema = jsonSchema;\n return jsonSchema;\n}\nconst get$ref = (item, refs) => {\n switch (refs.$refStrategy) {\n case \"root\":\n return { $ref: item.path.join(\"/\") };\n case \"relative\":\n return { $ref: getRelativePath(refs.currentPath, item.path) };\n case \"none\":\n case \"seen\": {\n if (item.path.length < refs.currentPath.length &&\n item.path.every((value, index) => refs.currentPath[index] === value)) {\n console.warn(`Recursive reference detected at ${refs.currentPath.join(\"/\")}! Defaulting to any`);\n return parseAnyDef(refs);\n }\n return refs.$refStrategy === \"seen\" ? parseAnyDef(refs) : undefined;\n }\n }\n};\nconst addMeta = (def, refs, jsonSchema) => {\n if (def.description) {\n jsonSchema.description = def.description;\n if (refs.markdownDescription) {\n jsonSchema.markdownDescription = def.description;\n }\n }\n return jsonSchema;\n};\n","export * from \"./Options.js\";\nexport * from \"./Refs.js\";\nexport * from \"./errorMessages.js\";\nexport * from \"./getRelativePath.js\";\nexport * from \"./parseDef.js\";\nexport * from \"./parseTypes.js\";\nexport * from \"./parsers/any.js\";\nexport * from \"./parsers/array.js\";\nexport * from \"./parsers/bigint.js\";\nexport * from \"./parsers/boolean.js\";\nexport * from \"./parsers/branded.js\";\nexport * from \"./parsers/catch.js\";\nexport * from \"./parsers/date.js\";\nexport * from \"./parsers/default.js\";\nexport * from \"./parsers/effects.js\";\nexport * from \"./parsers/enum.js\";\nexport * from \"./parsers/intersection.js\";\nexport * from \"./parsers/literal.js\";\nexport * from \"./parsers/map.js\";\nexport * from \"./parsers/nativeEnum.js\";\nexport * from \"./parsers/never.js\";\nexport * from \"./parsers/null.js\";\nexport * from \"./parsers/nullable.js\";\nexport * from \"./parsers/number.js\";\nexport * from \"./parsers/object.js\";\nexport * from \"./parsers/optional.js\";\nexport * from \"./parsers/pipeline.js\";\nexport * from \"./parsers/promise.js\";\nexport * from \"./parsers/readonly.js\";\nexport * from \"./parsers/record.js\";\nexport * from \"./parsers/set.js\";\nexport * from \"./parsers/string.js\";\nexport * from \"./parsers/tuple.js\";\nexport * from \"./parsers/undefined.js\";\nexport * from \"./parsers/union.js\";\nexport * from \"./parsers/unknown.js\";\nexport * from \"./selectParser.js\";\nexport * from \"./zodToJsonSchema.js\";\nimport { zodToJsonSchema } from \"./zodToJsonSchema.js\";\nexport default zodToJsonSchema;\n","import { parseDef } from \"./parseDef.js\";\nimport { getRefs } from \"./Refs.js\";\nimport { parseAnyDef } from \"./parsers/any.js\";\nconst zodToJsonSchema = (schema, options) => {\n const refs = getRefs(options);\n let definitions = typeof options === \"object\" && options.definitions\n ? Object.entries(options.definitions).reduce((acc, [name, schema]) => ({\n ...acc,\n [name]: parseDef(schema._def, {\n ...refs,\n currentPath: [...refs.basePath, refs.definitionPath, name],\n }, true) ?? parseAnyDef(refs),\n }), {})\n : undefined;\n const name = typeof options === \"string\"\n ? options\n : options?.nameStrategy === \"title\"\n ? undefined\n : options?.name;\n const main = parseDef(schema._def, name === undefined\n ? refs\n : {\n ...refs,\n currentPath: [...refs.basePath, refs.definitionPath, name],\n }, false) ?? parseAnyDef(refs);\n const title = typeof options === \"object\" &&\n options.name !== undefined &&\n options.nameStrategy === \"title\"\n ? options.name\n : undefined;\n if (title !== undefined) {\n main.title = title;\n }\n if (refs.flags.hasReferencedOpenAiAnyType) {\n if (!definitions) {\n definitions = {};\n }\n if (!definitions[refs.openAiAnyTypeName]) {\n definitions[refs.openAiAnyTypeName] = {\n // Skipping \"object\" as no properties can be defined and additionalProperties must be \"false\"\n type: [\"string\", \"number\", \"integer\", \"boolean\", \"array\", \"null\"],\n items: {\n $ref: refs.$refStrategy === \"relative\"\n ? \"1\"\n : [\n ...refs.basePath,\n refs.definitionPath,\n refs.openAiAnyTypeName,\n ].join(\"/\"),\n },\n };\n }\n }\n const combined = name === undefined\n ? definitions\n ? {\n ...main,\n [refs.definitionPath]: definitions,\n }\n : main\n : {\n $ref: [\n ...(refs.$refStrategy === \"relative\" ? [] : refs.basePath),\n refs.definitionPath,\n name,\n ].join(\"/\"),\n [refs.definitionPath]: {\n ...definitions,\n [name]: main,\n },\n };\n if (refs.target === \"jsonSchema7\") {\n combined.$schema = \"http://json-schema.org/draft-07/schema#\";\n }\n else if (refs.target === \"jsonSchema2019-09\" || refs.target === \"openAi\") {\n combined.$schema = \"https://json-schema.org/draft/2019-09/schema#\";\n }\n if (refs.target === \"openAi\" &&\n (\"anyOf\" in combined ||\n \"oneOf\" in combined ||\n \"allOf\" in combined ||\n (\"type\" in combined && Array.isArray(combined.type)))) {\n console.warn(\"Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.\");\n }\n return combined;\n};\nexport { zodToJsonSchema };\n","import { getDefaultOptions } from \"./Options.js\";\nexport const getRefs = (options) => {\n const _options = getDefaultOptions(options);\n const currentPath = _options.name !== undefined\n ? [..._options.basePath, _options.definitionPath, _options.name]\n : _options.basePath;\n return {\n ..._options,\n flags: { hasReferencedOpenAiAnyType: false },\n currentPath: currentPath,\n propertyPath: undefined,\n seen: new Map(Object.entries(_options.definitions).map(([name, def]) => [\n def._def,\n {\n def: def._def,\n path: [..._options.basePath, _options.definitionPath, name],\n // Resolution of references will be forced even though seen, so it's ok that the schema is undefined here for now.\n jsonSchema: undefined,\n },\n ])),\n };\n};\n","function createExtensionDataRef() {\n const createRef = (refId) => Object.assign(\n (value) => ({\n $$type: \"@backstage/ExtensionDataValue\",\n id: refId,\n value\n }),\n {\n id: refId,\n $$type: \"@backstage/ExtensionDataRef\",\n config: {},\n optional() {\n return {\n ...this,\n config: { ...this.config, optional: true }\n };\n },\n toString() {\n const optional = Boolean(this.config.optional);\n return `ExtensionDataRef{id=${refId},optional=${optional}}`;\n }\n }\n );\n return {\n with(options) {\n return createRef(options.id);\n }\n };\n}\n\nexport { createExtensionDataRef };\n//# sourceMappingURL=createExtensionDataRef.esm.js.map\n","function createExtensionDataContainer(values, contextName, declaredRefs) {\n if (typeof values !== \"object\" || !values?.[Symbol.iterator]) {\n throw new Error(`${contextName} did not provide an iterable object`);\n }\n const container = /* @__PURE__ */ new Map();\n const verifyRefs = declaredRefs && new Map(declaredRefs.map((ref) => [ref.id, ref]));\n for (const output of values) {\n if (verifyRefs) {\n if (!verifyRefs.delete(output.id)) {\n throw new Error(\n `extension data '${output.id}' was provided but not declared`\n );\n }\n }\n container.set(output.id, output);\n }\n const remainingRefs = verifyRefs && Array.from(verifyRefs.values()).filter((ref) => !ref.config.optional);\n if (remainingRefs && remainingRefs.length > 0) {\n throw new Error(\n `missing required extension data value(s) '${remainingRefs.map((ref) => ref.id).join(\", \")}'`\n );\n }\n return {\n get(ref) {\n return container.get(ref.id)?.value;\n },\n [Symbol.iterator]() {\n return container.values();\n }\n };\n}\n\nexport { createExtensionDataContainer };\n//# sourceMappingURL=createExtensionDataContainer.esm.js.map\n","import { createExtensionDataContainer } from '../frontend-internal/src/wiring/createExtensionDataContainer.esm.js';\nimport '../frontend-internal/src/wiring/InternalExtensionDefinition.esm.js';\nimport '../frontend-internal/src/wiring/InternalExtensionInput.esm.js';\nimport '../frontend-internal/src/wiring/InternalFrontendPlugin.esm.js';\nimport '../frontend-internal/src/wiring/InternalSwappableComponentRef.esm.js';\n\nfunction expectArray(value) {\n return value;\n}\nfunction expectItem(value) {\n return value;\n}\nfunction resolveInputOverrides(declaredInputs, inputs, inputOverrides) {\n if (!declaredInputs || !inputs || !inputOverrides) {\n return inputs;\n }\n const newInputs = {};\n for (const name in declaredInputs) {\n if (!Object.hasOwn(declaredInputs, name)) {\n continue;\n }\n const declaredInput = declaredInputs[name];\n const providedData = inputOverrides[name];\n if (declaredInput.config.singleton) {\n const originalInput = expectItem(inputs[name]);\n if (providedData) {\n const providedContainer = createExtensionDataContainer(\n providedData,\n \"extension input override\",\n declaredInput.extensionData\n );\n if (!originalInput) {\n throw new Error(\n `attempted to override data of input '${name}' but it is not present in the original inputs`\n );\n }\n newInputs[name] = Object.assign(providedContainer, {\n node: originalInput.node\n });\n }\n } else {\n const originalInput = expectArray(inputs[name]);\n if (!Array.isArray(providedData)) {\n throw new Error(\n `override data provided for input '${name}' must be an array`\n );\n }\n if (providedData.length === 0) {\n newInputs[name] = [];\n } else {\n const withNodesCount = providedData.filter((d) => \"node\" in d).length;\n if (withNodesCount === 0) {\n if (originalInput.length !== providedData.length) {\n throw new Error(\n `override data provided for input '${name}' must match the length of the original inputs`\n );\n }\n newInputs[name] = providedData.map((data, i) => {\n const providedContainer = createExtensionDataContainer(\n data,\n \"extension input override\",\n declaredInput.extensionData\n );\n return Object.assign(providedContainer, {\n node: originalInput[i].node\n });\n });\n } else if (withNodesCount === providedData.length) {\n newInputs[name] = providedData;\n } else {\n throw new Error(\n `override data for input '${name}' may not mix forwarded inputs with data overrides`\n );\n }\n }\n }\n }\n return newInputs;\n}\n\nexport { resolveInputOverrides };\n//# sourceMappingURL=resolveInputOverrides.esm.js.map\n","import { z } from 'zod';\nimport zodToJsonSchema from 'zod-to-json-schema';\n\nfunction createSchemaFromZod(schemaCreator) {\n const schema = schemaCreator(z);\n return {\n // TODO: Types allow z.array etc here but it will break stuff\n parse: (input) => {\n const result = schema.safeParse(input);\n if (result.success) {\n return result.data;\n }\n throw new Error(result.error.issues.map(formatIssue).join(\"; \"));\n },\n // TODO: Verify why we are not compatible with the latest zodToJsonSchema.\n schema: zodToJsonSchema(schema)\n };\n}\nfunction formatIssue(issue) {\n if (issue.code === \"invalid_union\") {\n return formatIssue(issue.unionErrors[0].issues[0]);\n }\n let message = issue.message;\n if (message === \"Required\") {\n message = `Missing required value`;\n }\n if (issue.path.length) {\n message += ` at '${issue.path.join(\".\")}'`;\n }\n return message;\n}\n\nexport { createSchemaFromZod };\n//# sourceMappingURL=createSchemaFromZod.esm.js.map\n","class OpaqueType {\n /**\n * Creates a new opaque type.\n *\n * @param options.type The type identifier of the opaque type\n * @param options.versions The available versions of the opaque type\n * @returns A new opaque type helper\n */\n static create(options) {\n return new OpaqueType(options.type, new Set(options.versions));\n }\n #type;\n #versions;\n constructor(type, versions) {\n this.#type = type;\n this.#versions = versions;\n }\n /**\n * The internal version of the opaque type, used like this: `typeof MyOpaqueType.TPublic`\n *\n * @remarks\n *\n * This property is only useful for type checking, its runtime value is `undefined`.\n */\n TPublic = void 0;\n /**\n * The internal version of the opaque type, used like this: `typeof MyOpaqueType.TInternal`\n *\n * @remarks\n *\n * This property is only useful for type checking, its runtime value is `undefined`.\n */\n TInternal = void 0;\n /**\n * @param value Input value expected to be an instance of this opaque type\n * @returns True if the value matches this opaque type\n */\n isType = (value) => {\n return this.#isThisInternalType(value);\n };\n /**\n * @param value Input value expected to be an instance of this opaque type\n * @throws If the value is not an instance of this opaque type or is of an unsupported version\n * @returns The internal version of the opaque type\n */\n toInternal = (value) => {\n if (!this.#isThisInternalType(value)) {\n throw new TypeError(\n `Invalid opaque type, expected '${this.#type}', but got '${this.#stringifyUnknown(value)}'`\n );\n }\n if (!this.#versions.has(value.version)) {\n const versions = Array.from(this.#versions).map(this.#stringifyVersion);\n if (versions.length > 1) {\n versions[versions.length - 1] = `or ${versions[versions.length - 1]}`;\n }\n const expected = versions.length > 2 ? versions.join(\", \") : versions.join(\" \");\n throw new TypeError(\n `Invalid opaque type instance, got version ${this.#stringifyVersion(\n value.version\n )}, expected ${expected}`\n );\n }\n return value;\n };\n /**\n * Creates an instance of the opaque type, returning the public type.\n *\n * @param version The version of the instance to create\n * @param value The remaining public and internal properties of the instance\n * @returns An instance of the opaque type\n */\n createInstance(version, props) {\n return Object.assign(props, {\n $$type: this.#type,\n ...version && { version }\n });\n }\n #isThisInternalType(value) {\n if (value === null || typeof value !== \"object\") {\n return false;\n }\n return value.$$type === this.#type;\n }\n #stringifyUnknown(value) {\n if (typeof value !== \"object\") {\n return `<${typeof value}>`;\n }\n if (value === null) {\n return \"<null>\";\n }\n if (\"$$type\" in value) {\n return String(value.$$type);\n }\n return String(value);\n }\n #stringifyVersion = (version) => {\n return version ? `'${version}'` : \"undefined\";\n };\n}\n\nexport { OpaqueType };\n//# sourceMappingURL=OpaqueType.esm.js.map\n","import { OpaqueType } from '../../../opaque-internal/src/OpaqueType.esm.js';\n\nconst OpaqueExtensionDefinition = OpaqueType.create({\n type: \"@backstage/ExtensionDefinition\",\n versions: [\"v1\", \"v2\"]\n});\n\nexport { OpaqueExtensionDefinition };\n//# sourceMappingURL=InternalExtensionDefinition.esm.js.map\n","import { OpaqueType } from '../../../opaque-internal/src/OpaqueType.esm.js';\n\nconst OpaqueExtensionInput = OpaqueType.create({\n type: \"@backstage/ExtensionInput\",\n versions: [void 0]\n});\n\nexport { OpaqueExtensionInput };\n//# sourceMappingURL=InternalExtensionInput.esm.js.map\n","import { resolveInputOverrides } from './resolveInputOverrides.esm.js';\nimport { createSchemaFromZod } from '../schema/createSchemaFromZod.esm.js';\nimport { OpaqueExtensionDefinition } from '../frontend-internal/src/wiring/InternalExtensionDefinition.esm.js';\nimport { createExtensionDataContainer } from '../frontend-internal/src/wiring/createExtensionDataContainer.esm.js';\nimport { OpaqueExtensionInput } from '../frontend-internal/src/wiring/InternalExtensionInput.esm.js';\nimport '../frontend-internal/src/wiring/InternalFrontendPlugin.esm.js';\nimport '../frontend-internal/src/wiring/InternalSwappableComponentRef.esm.js';\n\nconst ctxParamsSymbol = /* @__PURE__ */ Symbol(\"params\");\nfunction bindInputs(inputs, kind, name) {\n if (!inputs) {\n return {};\n }\n return Object.fromEntries(\n Object.entries(inputs).map(([inputName, input]) => [\n inputName,\n OpaqueExtensionInput.toInternal(input).withContext?.({\n kind,\n name,\n input: inputName\n }) ?? input\n ])\n );\n}\nfunction createExtension(options) {\n const schemaDeclaration = options.config?.schema;\n const configSchema = schemaDeclaration && createSchemaFromZod(\n (innerZ) => innerZ.object(\n Object.fromEntries(\n Object.entries(schemaDeclaration).map(([k, v]) => [k, v(innerZ)])\n )\n )\n );\n return OpaqueExtensionDefinition.createInstance(\"v2\", {\n T: void 0,\n kind: options.kind,\n name: options.name,\n attachTo: options.attachTo,\n disabled: options.disabled ?? false,\n inputs: bindInputs(options.inputs, options.kind, options.name),\n output: options.output,\n configSchema,\n factory: options.factory,\n toString() {\n const parts = [];\n if (options.kind) {\n parts.push(`kind=${options.kind}`);\n }\n if (options.name) {\n parts.push(`name=${options.name}`);\n }\n const attachTo = [options.attachTo].flat().map((aAny) => {\n const a = aAny;\n if (OpaqueExtensionInput.isType(a)) {\n const { context } = OpaqueExtensionInput.toInternal(a);\n if (!context) {\n return \"<detached-input>\";\n }\n let id = \"<plugin>\";\n if (context?.kind) {\n id = `${context?.kind}:${id}`;\n }\n if (context?.name) {\n id = `${id}/${context?.name}`;\n }\n return `${id}@${context.input}`;\n }\n if (\"relative\" in a && a.relative) {\n let id = \"<plugin>\";\n if (a.relative.kind) {\n id = `${a.relative.kind}:${id}`;\n }\n if (a.relative.name) {\n id = `${id}/${a.relative.name}`;\n }\n return `${id}@${a.input}`;\n }\n if (\"id\" in a) {\n return `${a.id}@${a.input}`;\n }\n throw new Error(\"Invalid attachment point specification\");\n }).join(\"+\");\n parts.push(`attachTo=${attachTo}`);\n return `ExtensionDefinition{${parts.join(\",\")}}`;\n },\n override(overrideOptions) {\n if (!Array.isArray(options.output)) {\n throw new Error(\n \"Cannot override an extension that is not declared using the new format with outputs as an array\"\n );\n }\n if (overrideOptions.output && !overrideOptions.factory) {\n throw new Error(\n \"Refused to override output without also overriding factory\"\n );\n }\n if (overrideOptions.params && overrideOptions.factory) {\n throw new Error(\n \"Refused to override params and factory at the same time\"\n );\n }\n return createExtension({\n kind: options.kind,\n name: options.name,\n attachTo: overrideOptions.attachTo ?? options.attachTo,\n disabled: overrideOptions.disabled ?? options.disabled,\n inputs: bindInputs(\n {\n ...options.inputs ?? {},\n ...overrideOptions.inputs ?? {}\n },\n options.kind,\n options.name\n ),\n output: overrideOptions.output ?? options.output,\n config: options.config || overrideOptions.config ? {\n schema: {\n ...options.config?.schema,\n ...overrideOptions.config?.schema\n }\n } : void 0,\n factory: ({ node, apis, config, inputs }) => {\n if (!overrideOptions.factory) {\n return options.factory({\n node,\n apis,\n config,\n inputs,\n [ctxParamsSymbol]: overrideOptions.params\n });\n }\n const parentResult = overrideOptions.factory(\n (innerContext) => {\n return createExtensionDataContainer(\n options.factory({\n node,\n apis,\n config: innerContext?.config ?? config,\n inputs: resolveInputOverrides(\n options.inputs,\n inputs,\n innerContext?.inputs\n ),\n [ctxParamsSymbol]: innerContext?.params\n }),\n \"original extension factory\",\n options.output\n );\n },\n {\n node,\n apis,\n config,\n inputs\n }\n );\n if (typeof parentResult !== \"object\" || !parentResult?.[Symbol.iterator]) {\n throw new Error(\n \"extension factory override did not provide an iterable object\"\n );\n }\n const deduplicatedResult = /* @__PURE__ */ new Map();\n for (const item of parentResult) {\n deduplicatedResult.set(item.id, item);\n }\n return deduplicatedResult.values();\n }\n });\n }\n });\n}\n\nexport { createExtension, ctxParamsSymbol };\n//# sourceMappingURL=createExtension.esm.js.map\n","import { createExtension, ctxParamsSymbol } from './createExtension.esm.js';\nimport { resolveInputOverrides } from './resolveInputOverrides.esm.js';\nimport { OpaqueType } from '../opaque-internal/src/OpaqueType.esm.js';\nimport { createExtensionDataContainer } from '../frontend-internal/src/wiring/createExtensionDataContainer.esm.js';\n\nconst OpaqueBlueprintParams = OpaqueType.create({\n type: \"@backstage/BlueprintParams\",\n versions: [\"v1\"]\n});\nfunction createExtensionBlueprintParams(params) {\n return OpaqueBlueprintParams.createInstance(\"v1\", { T: null, params });\n}\nfunction unwrapParamsFactory(params, defineParams, kind) {\n const paramDefinition = params(defineParams);\n try {\n return OpaqueBlueprintParams.toInternal(paramDefinition).params;\n } catch (e) {\n throw new TypeError(\n `Invalid invocation of blueprint with kind '${kind}', the parameter definition callback function did not return a valid parameter definition object; Caused by: ${e.message}`\n );\n }\n}\nfunction unwrapParams(params, ctx, defineParams, kind) {\n const overrideParams = ctx[ctxParamsSymbol];\n if (defineParams) {\n if (overrideParams) {\n if (typeof overrideParams !== \"function\") {\n throw new TypeError(\n `Invalid extension override of blueprint with kind '${kind}', the override params were passed as a plain object, but this blueprint requires them to be passed in callback form`\n );\n }\n return unwrapParamsFactory(overrideParams, defineParams, kind);\n }\n if (typeof params !== \"function\") {\n throw new TypeError(\n `Invalid invocation of blueprint with kind '${kind}', the parameters where passed as a plain object, but this blueprint requires them to be passed in callback form`\n );\n }\n return unwrapParamsFactory(params, defineParams, kind);\n }\n const base = typeof params === \"function\" ? unwrapParamsFactory(\n params,\n createExtensionBlueprintParams,\n kind\n ) : params;\n const overrides = typeof overrideParams === \"function\" ? unwrapParamsFactory(\n overrideParams,\n createExtensionBlueprintParams,\n kind\n ) : overrideParams;\n return {\n ...base,\n ...overrides\n };\n}\nfunction createExtensionBlueprint(options) {\n const defineParams = options.defineParams;\n return {\n dataRefs: options.dataRefs,\n make(args) {\n return createExtension({\n kind: options.kind,\n name: args.name,\n attachTo: args.attachTo ?? options.attachTo,\n disabled: args.disabled ?? options.disabled,\n inputs: options.inputs,\n output: options.output,\n config: options.config,\n factory: (ctx) => options.factory(\n unwrapParams(args.params, ctx, defineParams, options.kind),\n ctx\n )\n });\n },\n makeWithOverrides(args) {\n return createExtension({\n kind: options.kind,\n name: args.name,\n attachTo: args.attachTo ?? options.attachTo,\n disabled: args.disabled ?? options.disabled,\n inputs: { ...args.inputs, ...options.inputs },\n output: args.output ?? options.output,\n config: options.config || args.config ? {\n schema: {\n ...options.config?.schema,\n ...args.config?.schema\n }\n } : void 0,\n factory: (ctx) => {\n const { node, config, inputs, apis } = ctx;\n return args.factory(\n (innerParams, innerContext) => {\n return createExtensionDataContainer(\n options.factory(\n unwrapParams(innerParams, ctx, defineParams, options.kind),\n {\n apis,\n node,\n config: innerContext?.config ?? config,\n inputs: resolveInputOverrides(\n options.inputs,\n inputs,\n innerContext?.inputs\n )\n }\n ),\n \"original blueprint factory\",\n options.output\n );\n },\n {\n apis,\n node,\n config,\n inputs\n }\n );\n }\n });\n }\n };\n}\n\nexport { createExtensionBlueprint, createExtensionBlueprintParams };\n//# sourceMappingURL=createExtensionBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint, createExtensionBlueprintParams } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst factoryDataRef = createExtensionDataRef().with({\n id: \"core.analytics.factory\"\n});\nconst AnalyticsImplementationBlueprint = createExtensionBlueprint({\n kind: \"analytics\",\n attachTo: [{ id: \"api:app/analytics\", input: \"implementations\" }],\n output: [factoryDataRef],\n dataRefs: {\n factory: factoryDataRef\n },\n defineParams: (params) => createExtensionBlueprintParams(params),\n *factory(params) {\n yield factoryDataRef(params);\n }\n});\n\nexport { AnalyticsImplementationBlueprint };\n//# sourceMappingURL=AnalyticsImplementationBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint, createExtensionBlueprintParams } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst factoryDataRef = createExtensionDataRef().with({\n id: \"core.api.factory\"\n});\nconst ApiBlueprint = createExtensionBlueprint({\n kind: \"api\",\n attachTo: { id: \"root\", input: \"apis\" },\n output: [factoryDataRef],\n dataRefs: {\n factory: factoryDataRef\n },\n defineParams: (params) => createExtensionBlueprintParams(params),\n *factory(params) {\n yield factoryDataRef(params);\n }\n});\n\nexport { ApiBlueprint };\n//# sourceMappingURL=ApiBlueprint.esm.js.map\n","import { createExtensionDataRef } from './createExtensionDataRef.esm.js';\n\nconst coreExtensionData = {\n title: createExtensionDataRef().with({ id: \"core.title\" }),\n reactElement: createExtensionDataRef().with({\n id: \"core.reactElement\"\n }),\n routePath: createExtensionDataRef().with({ id: \"core.routing.path\" }),\n routeRef: createExtensionDataRef().with({ id: \"core.routing.ref\" })\n};\n\nexport { coreExtensionData };\n//# sourceMappingURL=coreExtensionData.esm.js.map\n","import { jsx } from 'react/jsx-runtime';\nimport { ExtensionBoundary } from '@backstage/frontend-plugin-api';\nimport { coreExtensionData } from '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst AppRootElementBlueprint = createExtensionBlueprint({\n kind: \"app-root-element\",\n attachTo: { id: \"app/root\", input: \"elements\" },\n output: [coreExtensionData.reactElement],\n *factory(params, { node }) {\n yield coreExtensionData.reactElement(\n /* @__PURE__ */ jsx(ExtensionBoundary, { node, errorPresentation: \"error-api\", children: params.element })\n );\n }\n});\n\nexport { AppRootElementBlueprint };\n//# sourceMappingURL=AppRootElementBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst componentDataRef = createExtensionDataRef().with({ id: \"app.root.wrapper\" });\nconst AppRootWrapperBlueprint = createExtensionBlueprint({\n kind: \"app-root-wrapper\",\n attachTo: { id: \"app/root\", input: \"wrappers\" },\n output: [componentDataRef],\n dataRefs: {\n component: componentDataRef\n },\n *factory(params) {\n yield componentDataRef(params.component);\n }\n});\n\nexport { AppRootWrapperBlueprint };\n//# sourceMappingURL=AppRootWrapperBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst iconsDataRef = createExtensionDataRef().with({ id: \"core.icons\" });\nconst IconBundleBlueprint = createExtensionBlueprint({\n kind: \"icon-bundle\",\n attachTo: { id: \"api:app/icons\", input: \"icons\" },\n output: [iconsDataRef],\n factory: (params) => [\n iconsDataRef(params.icons)\n ],\n dataRefs: {\n icons: iconsDataRef\n }\n});\n\nexport { IconBundleBlueprint };\n//# sourceMappingURL=IconBundleBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst componentDataRef = createExtensionDataRef().with({\n id: \"core.nav-content.component\"\n});\nconst NavContentBlueprint = createExtensionBlueprint({\n kind: \"nav-content\",\n attachTo: { id: \"app/nav\", input: \"content\" },\n output: [componentDataRef],\n dataRefs: {\n component: componentDataRef\n },\n *factory(params) {\n yield componentDataRef(params.component);\n }\n});\n\nexport { NavContentBlueprint };\n//# sourceMappingURL=NavContentBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst targetDataRef = createExtensionDataRef().with({ id: \"core.nav-item.target\" });\nconst NavItemBlueprint = createExtensionBlueprint({\n kind: \"nav-item\",\n attachTo: { id: \"app/nav\", input: \"items\" },\n output: [targetDataRef],\n dataRefs: {\n target: targetDataRef\n },\n factory: ({\n icon,\n routeRef,\n title\n }, { config }) => [\n targetDataRef({\n title: config.title ?? title,\n icon,\n routeRef\n })\n ],\n config: {\n schema: {\n title: (z) => z.string().optional()\n }\n }\n});\n\nexport { NavItemBlueprint };\n//# sourceMappingURL=NavItemBlueprint.esm.js.map\n","import { OpaqueType } from '../../../opaque-internal/src/OpaqueType.esm.js';\n\nconst OpaqueSwappableComponentRef = OpaqueType.create({\n versions: [\"v1\"],\n type: \"@backstage/SwappableComponentRef\"\n});\n\nexport { OpaqueSwappableComponentRef };\n//# sourceMappingURL=InternalSwappableComponentRef.esm.js.map\n","import { jsx } from 'react/jsx-runtime';\nimport '../apis/definitions/AppTreeApi.esm.js';\nimport '../apis/definitions/auth.esm.js';\nimport '../apis/definitions/AlertApi.esm.js';\nimport '../apis/definitions/AppLanguageApi.esm.js';\nimport '../apis/definitions/AppThemeApi.esm.js';\nimport { swappableComponentsApiRef } from '../apis/definitions/SwappableComponentsApi.esm.js';\nimport '../apis/definitions/ConfigApi.esm.js';\nimport '../apis/definitions/DiscoveryApi.esm.js';\nimport '../apis/definitions/ErrorApi.esm.js';\nimport '../apis/definitions/FeatureFlagsApi.esm.js';\nimport '../apis/definitions/FetchApi.esm.js';\nimport '../apis/definitions/IconsApi.esm.js';\nimport '../apis/definitions/IdentityApi.esm.js';\nimport '../apis/definitions/DialogApi.esm.js';\nimport '../apis/definitions/OAuthRequestApi.esm.js';\nimport '../apis/definitions/RouteResolutionApi.esm.js';\nimport '../apis/definitions/StorageApi.esm.js';\nimport '../apis/definitions/AnalyticsApi.esm.js';\nimport '../apis/definitions/TranslationApi.esm.js';\nimport { useApi } from '../apis/system/useApi.esm.js';\nimport { lazy } from 'react';\nimport { OpaqueSwappableComponentRef } from '../frontend-internal/src/wiring/InternalSwappableComponentRef.esm.js';\nimport '../frontend-internal/src/wiring/InternalExtensionDefinition.esm.js';\nimport '../frontend-internal/src/wiring/InternalExtensionInput.esm.js';\nimport '../frontend-internal/src/wiring/InternalFrontendPlugin.esm.js';\n\nconst useComponentRefApi = () => {\n try {\n return useApi(swappableComponentsApiRef);\n } catch (e) {\n return void 0;\n }\n};\nfunction createSwappableComponent(options) {\n const FallbackComponent = (p) => /* @__PURE__ */ jsx(\"div\", { \"data-testid\": options.id, ...p });\n const ref = OpaqueSwappableComponentRef.createInstance(\"v1\", {\n id: options.id,\n TProps: null,\n TExternalProps: null,\n toString() {\n return `SwappableComponentRef{id=${options.id}}`;\n },\n defaultComponent: lazy(async () => {\n const Component = await options.loader?.() ?? FallbackComponent;\n return { default: Component };\n }),\n transformProps: options.transformProps\n });\n const ComponentRefImpl = (props) => {\n const api = useComponentRefApi();\n if (!api) {\n const internalRef = OpaqueSwappableComponentRef.toInternal(ref);\n const Component2 = internalRef.defaultComponent;\n const innerProps = internalRef.transformProps?.(props) ?? props;\n return /* @__PURE__ */ jsx(Component2, { ...innerProps });\n }\n const Component = api.getComponent(ref);\n return /* @__PURE__ */ jsx(Component, { ...props });\n };\n Object.assign(ComponentRefImpl, { ref });\n return ComponentRefImpl;\n}\n\nexport { createSwappableComponent };\n//# sourceMappingURL=createSwappableComponent.esm.js.map\n","import { jsx } from 'react/jsx-runtime';\nimport { createSwappableComponent } from './createSwappableComponent.esm.js';\n\nconst Progress = createSwappableComponent({\n id: \"core-progress\"\n});\nconst NotFoundErrorPage = createSwappableComponent({\n id: \"core-not-found-error-page\"\n});\nconst ErrorDisplay = createSwappableComponent({\n id: \"core-error-display\",\n loader: () => (props) => /* @__PURE__ */ jsx(\"div\", { \"data-testid\": \"core-error-display\", children: props.error.message })\n});\n\nexport { ErrorDisplay, NotFoundErrorPage, Progress };\n//# sourceMappingURL=DefaultSwappableComponents.esm.js.map\n","import { jsx } from 'react/jsx-runtime';\nimport { Component } from 'react';\nimport { ErrorDisplay } from './DefaultSwappableComponents.esm.js';\n\nclass ErrorDisplayBoundary extends Component {\n static getDerivedStateFromError(error) {\n return { error };\n }\n state = { error: void 0 };\n handleErrorReset = () => {\n this.setState({ error: void 0 });\n };\n render() {\n const { error } = this.state;\n const { plugin, children } = this.props;\n if (error) {\n return /* @__PURE__ */ jsx(\n ErrorDisplay,\n {\n plugin,\n error,\n resetError: this.handleErrorReset\n }\n );\n }\n return children;\n }\n}\n\nexport { ErrorDisplayBoundary };\n//# sourceMappingURL=ErrorDisplayBoundary.esm.js.map\n","import { Component } from 'react';\nimport { ForwardedError } from '@backstage/errors';\n\nclass ErrorApiBoundary extends Component {\n static getDerivedStateFromError(error) {\n return { error };\n }\n state = { error: void 0 };\n componentDidCatch(error, _errorInfo) {\n const { node, errorApi } = this.props;\n errorApi?.post(\n new ForwardedError(`Error in extension '${node.spec.id}'`, error)\n );\n }\n render() {\n if (this.state.error) {\n return null;\n }\n return this.props.children;\n }\n}\n\nexport { ErrorApiBoundary };\n//# sourceMappingURL=ErrorApiBoundary.esm.js.map\n","import { getOrCreateGlobalSingleton } from '@backstage/version-bridge';\n\ngetOrCreateGlobalSingleton(\n \"core-plugin-api:analytics-tracker-events\",\n () => ({\n mostRecentGatheredNavigation: void 0,\n mostRecentRoutableExtensionRender: void 0,\n beforeUnloadRegistered: false\n })\n);\nconst routableExtensionRenderedEvent = \"_ROUTABLE-EXTENSION-RENDERED\";\n\nexport { routableExtensionRenderedEvent };\n//# sourceMappingURL=Tracker.esm.js.map\n","import { createApiRef } from '@backstage/frontend-plugin-api';\n\nconst pluginWrapperApiRef = createApiRef({\n id: \"core.plugin-wrapper.alpha\"\n});\n\nexport { pluginWrapperApiRef };\n//# sourceMappingURL=PluginWrapperApi.esm.js.map\n","import { jsx } from 'react/jsx-runtime';\nimport { createVersionedContext, createVersionedValueMap, useVersionedContext } from '@backstage/version-bridge';\n\nconst CONTEXT_KEY = \"app-node-context\";\nconst AppNodeContext = createVersionedContext(CONTEXT_KEY);\nfunction AppNodeProvider({\n node,\n children\n}) {\n const versionedValue = createVersionedValueMap({ 1: { node } });\n return /* @__PURE__ */ jsx(AppNodeContext.Provider, { value: versionedValue, children });\n}\nfunction useAppNode() {\n const versionedContext = useVersionedContext(CONTEXT_KEY);\n if (!versionedContext) {\n return void 0;\n }\n const context = versionedContext.atVersion(1);\n if (!context) {\n throw new Error(\"AppNodeContext v1 not available\");\n }\n return context.node;\n}\n\nexport { AppNodeProvider, useAppNode };\n//# sourceMappingURL=AppNodeProvider.esm.js.map\n","import { jsx, Fragment } from 'react/jsx-runtime';\nimport { lazy, useMemo, Suspense, useEffect } from 'react';\nimport { AnalyticsContext } from '../analytics/AnalyticsContext.esm.js';\nimport { useAnalytics } from '../analytics/useAnalytics.esm.js';\nimport { ErrorDisplayBoundary } from './ErrorDisplayBoundary.esm.js';\nimport { ErrorApiBoundary } from './ErrorApiBoundary.esm.js';\nimport { routableExtensionRenderedEvent } from '../core-plugin-api/src/analytics/Tracker.esm.js';\nimport '../apis/definitions/AppTreeApi.esm.js';\nimport '../apis/definitions/auth.esm.js';\nimport '../apis/definitions/AlertApi.esm.js';\nimport '../apis/definitions/AppLanguageApi.esm.js';\nimport '../apis/definitions/AppThemeApi.esm.js';\nimport '../apis/definitions/SwappableComponentsApi.esm.js';\nimport '../apis/definitions/ConfigApi.esm.js';\nimport '../apis/definitions/DiscoveryApi.esm.js';\nimport { errorApiRef } from '../apis/definitions/ErrorApi.esm.js';\nimport '../apis/definitions/FeatureFlagsApi.esm.js';\nimport '../apis/definitions/FetchApi.esm.js';\nimport '../apis/definitions/IconsApi.esm.js';\nimport '../apis/definitions/IdentityApi.esm.js';\nimport '../apis/definitions/DialogApi.esm.js';\nimport '../apis/definitions/OAuthRequestApi.esm.js';\nimport '../apis/definitions/RouteResolutionApi.esm.js';\nimport '../apis/definitions/StorageApi.esm.js';\nimport '../apis/definitions/AnalyticsApi.esm.js';\nimport '../apis/definitions/TranslationApi.esm.js';\nimport { useApi } from '../apis/system/useApi.esm.js';\nimport { pluginWrapperApiRef } from '../apis/definitions/PluginWrapperApi.esm.js';\nimport { coreExtensionData } from '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport '../wiring/createExtensionBlueprint.esm.js';\nimport { AppNodeProvider } from './AppNodeProvider.esm.js';\nimport { Progress } from './DefaultSwappableComponents.esm.js';\n\nfunction useOptionalErrorApi() {\n try {\n return useApi(errorApiRef);\n } catch {\n return void 0;\n }\n}\nfunction useOptionalPluginWrapperApi() {\n try {\n return useApi(pluginWrapperApiRef);\n } catch {\n return void 0;\n }\n}\nconst RouteTracker = (props) => {\n const { enabled, children } = props;\n const analytics = useAnalytics();\n useEffect(() => {\n if (enabled) {\n analytics.captureEvent(routableExtensionRenderedEvent, \"\");\n }\n }, [analytics, enabled]);\n return /* @__PURE__ */ jsx(Fragment, { children });\n};\nfunction ExtensionBoundary(props) {\n const { node, children } = props;\n const errorApi = useOptionalErrorApi();\n const hasRoutePathOutput = Boolean(\n node.instance?.getData(coreExtensionData.routePath)\n );\n const plugin = node.spec.plugin;\n const pluginId = plugin.id ?? \"app\";\n const pluginWrapperApi = useOptionalPluginWrapperApi();\n const PluginWrapper = useMemo(() => {\n return pluginWrapperApi?.getPluginWrapper(pluginId);\n }, [pluginWrapperApi, pluginId]);\n const attributes = {\n extensionId: node.spec.id,\n pluginId\n };\n let content = /* @__PURE__ */ jsx(AnalyticsContext, { attributes, children: /* @__PURE__ */ jsx(RouteTracker, { enabled: hasRoutePathOutput, children }) });\n if (PluginWrapper) {\n content = /* @__PURE__ */ jsx(PluginWrapper, { children: content });\n }\n if (props.errorPresentation === \"error-api\") {\n content = /* @__PURE__ */ jsx(ErrorApiBoundary, { node, errorApi, children: content });\n } else {\n content = /* @__PURE__ */ jsx(ErrorDisplayBoundary, { plugin, children: content });\n }\n return /* @__PURE__ */ jsx(AppNodeProvider, { node, children: /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(Progress, {}), children: content }) });\n}\n((ExtensionBoundary2) => {\n function lazy$1(appNode, loader) {\n const ExtensionComponent = lazy(\n () => loader().then((element) => ({ default: () => element }))\n );\n return /* @__PURE__ */ jsx(ExtensionBoundary2, { node: appNode, children: /* @__PURE__ */ jsx(ExtensionComponent, {}) });\n }\n ExtensionBoundary2.lazy = lazy$1;\n function lazyComponent(appNode, loader) {\n const ExtensionComponent = lazy(\n () => loader().then((Component) => ({ default: Component }))\n );\n return (props) => /* @__PURE__ */ jsx(ExtensionBoundary2, { node: appNode, children: /* @__PURE__ */ jsx(ExtensionComponent, { ...props }) });\n }\n ExtensionBoundary2.lazyComponent = lazyComponent;\n})(ExtensionBoundary || (ExtensionBoundary = {}));\n\nexport { ExtensionBoundary };\n//# sourceMappingURL=ExtensionBoundary.esm.js.map\n","import { coreExtensionData } from '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\nimport { ExtensionBoundary } from '../components/ExtensionBoundary.esm.js';\nimport 'react/jsx-runtime';\nimport '../apis/definitions/AppTreeApi.esm.js';\nimport '../apis/definitions/auth.esm.js';\nimport '../apis/definitions/AlertApi.esm.js';\nimport '../apis/definitions/AppLanguageApi.esm.js';\nimport '../apis/definitions/AppThemeApi.esm.js';\nimport '../apis/definitions/SwappableComponentsApi.esm.js';\nimport '../apis/definitions/ConfigApi.esm.js';\nimport '../apis/definitions/DiscoveryApi.esm.js';\nimport '../apis/definitions/ErrorApi.esm.js';\nimport '../apis/definitions/FeatureFlagsApi.esm.js';\nimport '../apis/definitions/FetchApi.esm.js';\nimport '../apis/definitions/IconsApi.esm.js';\nimport '../apis/definitions/IdentityApi.esm.js';\nimport '../apis/definitions/DialogApi.esm.js';\nimport '../apis/definitions/OAuthRequestApi.esm.js';\nimport '../apis/definitions/RouteResolutionApi.esm.js';\nimport '../apis/definitions/StorageApi.esm.js';\nimport '../apis/definitions/AnalyticsApi.esm.js';\nimport '../apis/definitions/TranslationApi.esm.js';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport 'react';\nimport '../components/AppNodeProvider.esm.js';\nimport '../components/DefaultSwappableComponents.esm.js';\n\nconst PageBlueprint = createExtensionBlueprint({\n kind: \"page\",\n attachTo: { id: \"app/routes\", input: \"routes\" },\n output: [\n coreExtensionData.routePath,\n coreExtensionData.reactElement,\n coreExtensionData.routeRef.optional()\n ],\n config: {\n schema: {\n path: (z) => z.string().optional()\n }\n },\n *factory(params, { config, node }) {\n yield coreExtensionData.routePath(config.path ?? params.path);\n yield coreExtensionData.reactElement(\n ExtensionBoundary.lazy(node, params.loader)\n );\n if (params.routeRef) {\n yield coreExtensionData.routeRef(params.routeRef);\n }\n }\n});\n\nexport { PageBlueprint };\n//# sourceMappingURL=PageBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst componentDataRef = createExtensionDataRef().with({ id: \"app.router.wrapper\" });\nconst RouterBlueprint = createExtensionBlueprint({\n kind: \"app-router-component\",\n attachTo: { id: \"app/root\", input: \"router\" },\n output: [componentDataRef],\n dataRefs: {\n component: componentDataRef\n },\n *factory(params) {\n yield componentDataRef(params.component);\n }\n});\n\nexport { RouterBlueprint };\n//# sourceMappingURL=RouterBlueprint.esm.js.map\n","import { jsx } from 'react/jsx-runtime';\nimport { lazy } from 'react';\nimport '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\nimport { ExtensionBoundary } from '../components/ExtensionBoundary.esm.js';\nimport '../apis/definitions/AppTreeApi.esm.js';\nimport '../apis/definitions/auth.esm.js';\nimport '../apis/definitions/AlertApi.esm.js';\nimport '../apis/definitions/AppLanguageApi.esm.js';\nimport '../apis/definitions/AppThemeApi.esm.js';\nimport '../apis/definitions/SwappableComponentsApi.esm.js';\nimport '../apis/definitions/ConfigApi.esm.js';\nimport '../apis/definitions/DiscoveryApi.esm.js';\nimport '../apis/definitions/ErrorApi.esm.js';\nimport '../apis/definitions/FeatureFlagsApi.esm.js';\nimport '../apis/definitions/FetchApi.esm.js';\nimport '../apis/definitions/IconsApi.esm.js';\nimport '../apis/definitions/IdentityApi.esm.js';\nimport '../apis/definitions/DialogApi.esm.js';\nimport '../apis/definitions/OAuthRequestApi.esm.js';\nimport '../apis/definitions/RouteResolutionApi.esm.js';\nimport '../apis/definitions/StorageApi.esm.js';\nimport '../apis/definitions/AnalyticsApi.esm.js';\nimport '../apis/definitions/TranslationApi.esm.js';\nimport '@backstage/version-bridge';\nimport '@backstage/errors';\nimport '../components/AppNodeProvider.esm.js';\nimport '../components/DefaultSwappableComponents.esm.js';\n\nconst componentDataRef = createExtensionDataRef().with({ id: \"core.sign-in-page.component\" });\nconst SignInPageBlueprint = createExtensionBlueprint({\n kind: \"sign-in-page\",\n attachTo: { id: \"app/root\", input: \"signInPage\" },\n output: [componentDataRef],\n dataRefs: {\n component: componentDataRef\n },\n *factory({\n loader\n }, { node }) {\n const ExtensionComponent = lazy(\n () => loader().then((component) => ({ default: component }))\n );\n yield componentDataRef((props) => /* @__PURE__ */ jsx(ExtensionBoundary, { node, children: /* @__PURE__ */ jsx(ExtensionComponent, { ...props }) }));\n }\n});\n\nexport { SignInPageBlueprint };\n//# sourceMappingURL=SignInPageBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst themeDataRef = createExtensionDataRef().with({\n id: \"core.theme.theme\"\n});\nconst ThemeBlueprint = createExtensionBlueprint({\n kind: \"theme\",\n attachTo: { id: \"api:app/app-theme\", input: \"themes\" },\n output: [themeDataRef],\n dataRefs: {\n theme: themeDataRef\n },\n factory: ({ theme }) => [themeDataRef(theme)]\n});\n\nexport { ThemeBlueprint };\n//# sourceMappingURL=ThemeBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst translationDataRef = createExtensionDataRef().with({ id: \"core.translation.translation\" });\nconst TranslationBlueprint = createExtensionBlueprint({\n kind: \"translation\",\n attachTo: { id: \"api:app/translations\", input: \"translations\" },\n output: [translationDataRef],\n dataRefs: {\n translation: translationDataRef\n },\n factory: ({\n resource\n }) => [translationDataRef(resource)]\n});\n\nexport { TranslationBlueprint };\n//# sourceMappingURL=TranslationBlueprint.esm.js.map\n","import '../wiring/coreExtensionData.esm.js';\nimport 'zod';\nimport 'zod-to-json-schema';\nimport { createExtensionDataRef } from '../wiring/createExtensionDataRef.esm.js';\nimport { createExtensionBlueprint, createExtensionBlueprintParams } from '../wiring/createExtensionBlueprint.esm.js';\n\nconst componentDataRef = createExtensionDataRef().with({ id: \"core.swappableComponent\" });\nconst SwappableComponentBlueprint = createExtensionBlueprint({\n kind: \"component\",\n attachTo: { id: \"api:app/swappable-components\", input: \"components\" },\n output: [componentDataRef],\n dataRefs: {\n component: componentDataRef\n },\n defineParams(params) {\n return createExtensionBlueprintParams(params);\n },\n factory: (params) => [\n componentDataRef({\n ref: params.component.ref,\n loader: params.loader\n })\n ]\n});\n\nexport { SwappableComponentBlueprint, componentDataRef };\n//# sourceMappingURL=SwappableComponentBlueprint.esm.js.map\n","const MESSAGE_MARKER = \"eHgtF5hmbrXyiEvo\";\nfunction describeParentCallSite(ErrorConstructor = Error) {\n const { stack } = new ErrorConstructor(MESSAGE_MARKER);\n if (!stack) {\n return \"<unknown>\";\n }\n const startIndex = stack.includes(MESSAGE_MARKER) ? stack.indexOf(\"\\n\") + 1 : 0;\n const secondEntryStart = stack.indexOf(\"\\n\", stack.indexOf(\"\\n\", startIndex) + 1) + 1;\n const secondEntryEnd = stack.indexOf(\"\\n\", secondEntryStart);\n const line = stack.substring(secondEntryStart, secondEntryEnd).trim();\n if (!line) {\n return \"unknown\";\n }\n if (line.includes(\"(\")) {\n return line.substring(line.indexOf(\"(\") + 1, line.indexOf(\")\"));\n }\n if (line.includes(\"@\")) {\n return line.substring(line.indexOf(\"@\") + 1);\n }\n return line;\n}\n\nexport { describeParentCallSite };\n//# sourceMappingURL=describeParentCallSite.esm.js.map\n","import { OpaqueType } from '../../../opaque-internal/src/OpaqueType.esm.js';\n\nconst OpaqueRouteRef = OpaqueType.create({\n type: \"@backstage/RouteRef\",\n versions: [\"v1\"]\n});\n\nexport { OpaqueRouteRef };\n//# sourceMappingURL=OpaqueRouteRef.esm.js.map\n","import { describeParentCallSite } from './describeParentCallSite.esm.js';\nimport { OpaqueRouteRef } from '../frontend-internal/src/routing/OpaqueRouteRef.esm.js';\nimport '../frontend-internal/src/routing/OpaqueSubRouteRef.esm.js';\nimport '../frontend-internal/src/routing/OpaqueExternalRouteRef.esm.js';\n\nfunction createRouteRef(config) {\n const params = config?.params ?? [];\n const creationSite = describeParentCallSite();\n let id = void 0;\n return OpaqueRouteRef.createInstance(\"v1\", {\n T: void 0,\n getParams() {\n return params;\n },\n getDescription() {\n if (id) {\n return id;\n }\n return `created at '${creationSite}'`;\n },\n alias: config?.aliasFor,\n setId(newId) {\n if (!newId) {\n throw new Error(`RouteRef id must be a non-empty string`);\n }\n if (id && id !== newId) {\n throw new Error(\n `RouteRef was referenced twice as both '${id}' and '${newId}'`\n );\n }\n id = newId;\n },\n toString() {\n return `routeRef{id=${id},at='${creationSite}'}`;\n }\n });\n}\n\nexport { createRouteRef };\n//# sourceMappingURL=RouteRef.esm.js.map\n","import { OpaqueType } from '../../../opaque-internal/src/OpaqueType.esm.js';\n\nconst OpaqueSubRouteRef = OpaqueType.create({\n type: \"@backstage/SubRouteRef\",\n versions: [\"v1\"]\n});\n\nexport { OpaqueSubRouteRef };\n//# sourceMappingURL=OpaqueSubRouteRef.esm.js.map\n","import { OpaqueSubRouteRef } from '../frontend-internal/src/routing/OpaqueSubRouteRef.esm.js';\nimport { OpaqueRouteRef } from '../frontend-internal/src/routing/OpaqueRouteRef.esm.js';\nimport '../frontend-internal/src/routing/OpaqueExternalRouteRef.esm.js';\n\nconst PARAM_PATTERN = /^\\w+$/;\nfunction createSubRouteRef(config) {\n const { path, parent } = config;\n const internalParent = OpaqueRouteRef.toInternal(parent);\n const parentParams = internalParent.getParams();\n const parentDescription = internalParent.getDescription();\n const pathParams = path.split(\"/\").filter((p) => p.startsWith(\":\")).map((p) => p.substring(1));\n const params = [...parentParams, ...pathParams];\n if (parentParams.some((p) => pathParams.includes(p))) {\n throw new Error(\n \"SubRouteRef may not have params that overlap with its parent\"\n );\n }\n if (!path.startsWith(\"/\")) {\n throw new Error(`SubRouteRef path must start with '/', got '${path}'`);\n }\n if (path.endsWith(\"/\")) {\n throw new Error(`SubRouteRef path must not end with '/', got '${path}'`);\n }\n for (const param of pathParams) {\n if (!PARAM_PATTERN.test(param)) {\n throw new Error(`SubRouteRef path has invalid param, got '${param}'`);\n }\n }\n return OpaqueSubRouteRef.createInstance(\"v1\", {\n T: void 0,\n path,\n getParams() {\n return params;\n },\n getParent() {\n return parent;\n },\n getDescription() {\n return `at ${path} with parent ${parentDescription}`;\n },\n toString() {\n return `subRouteRef{path='${path}',parent=${parent}}`;\n }\n });\n}\n\nexport { createSubRouteRef };\n//# sourceMappingURL=SubRouteRef.esm.js.map\n","import { OpaqueType } from '../../../opaque-internal/src/OpaqueType.esm.js';\n\nconst OpaqueExternalRouteRef = OpaqueType.create({\n type: \"@backstage/ExternalRouteRef\",\n versions: [\"v1\"]\n});\n\nexport { OpaqueExternalRouteRef };\n//# sourceMappingURL=OpaqueExternalRouteRef.esm.js.map\n","import { describeParentCallSite } from './describeParentCallSite.esm.js';\nimport { OpaqueExternalRouteRef } from '../frontend-internal/src/routing/OpaqueExternalRouteRef.esm.js';\nimport '../frontend-internal/src/routing/OpaqueRouteRef.esm.js';\nimport '../frontend-internal/src/routing/OpaqueSubRouteRef.esm.js';\n\nfunction createExternalRouteRef(config) {\n const params = config?.params ?? [];\n const creationSite = describeParentCallSite();\n let id = void 0;\n return OpaqueExternalRouteRef.createInstance(\"v1\", {\n T: void 0,\n getParams() {\n return params;\n },\n getDescription() {\n if (id) {\n return id;\n }\n return `created at '${creationSite}'`;\n },\n getDefaultTarget() {\n return config?.defaultTarget;\n },\n setId(newId) {\n if (!newId) {\n throw new Error(`ExternalRouteRef id must be a non-empty string`);\n }\n if (id && id !== newId) {\n throw new Error(\n `ExternalRouteRef was referenced twice as both '${id}' and '${newId}'`\n );\n }\n id = newId;\n },\n toString() {\n return `externalRouteRef{id=${id},at='${creationSite}'}`;\n }\n });\n}\n\nexport { createExternalRouteRef };\n//# sourceMappingURL=ExternalRouteRef.esm.js.map\n","import { useMemo } from 'react';\nimport { useLocation } from 'react-router-dom';\nimport '../apis/definitions/AppTreeApi.esm.js';\nimport '../apis/definitions/auth.esm.js';\nimport '../apis/definitions/AlertApi.esm.js';\nimport '../apis/definitions/AppLanguageApi.esm.js';\nimport '../apis/definitions/AppThemeApi.esm.js';\nimport '../apis/definitions/SwappableComponentsApi.esm.js';\nimport '../apis/definitions/ConfigApi.esm.js';\nimport '../apis/definitions/DiscoveryApi.esm.js';\nimport '../apis/definitions/ErrorApi.esm.js';\nimport '../apis/definitions/FeatureFlagsApi.esm.js';\nimport '../apis/definitions/FetchApi.esm.js';\nimport '../apis/definitions/IconsApi.esm.js';\nimport '../apis/definitions/IdentityApi.esm.js';\nimport '../apis/definitions/DialogApi.esm.js';\nimport '../apis/definitions/OAuthRequestApi.esm.js';\nimport { routeResolutionApiRef } from '../apis/definitions/RouteResolutionApi.esm.js';\nimport '../apis/definitions/StorageApi.esm.js';\nimport '../apis/definitions/AnalyticsApi.esm.js';\nimport '../apis/definitions/TranslationApi.esm.js';\nimport { useApi } from '../apis/system/useApi.esm.js';\n\nfunction useRouteRef(routeRef) {\n const { pathname } = useLocation();\n const routeResolutionApi = useApi(routeResolutionApiRef);\n const routeFunc = useMemo(\n () => routeResolutionApi.resolve(routeRef, { sourcePath: pathname }),\n [routeResolutionApi, routeRef, pathname]\n );\n return routeFunc;\n}\n\nexport { useRouteRef };\n//# sourceMappingURL=useRouteRef.esm.js.map\n","import { useParams } from 'react-router-dom';\n\nfunction useRouteRefParams(_routeRef) {\n return useParams();\n}\n\nexport { useRouteRefParams };\n//# sourceMappingURL=useRouteRefParams.esm.js.map\n","function createTranslationMessages(options) {\n return {\n $$type: \"@backstage/TranslationMessages\",\n id: options.ref.id,\n full: Boolean(options.full),\n messages: options.messages\n };\n}\n\nexport { createTranslationMessages };\n//# sourceMappingURL=TranslationMessages.esm.js.map\n","function createTranslationResource(options) {\n return {\n $$type: \"@backstage/TranslationResource\",\n version: \"v1\",\n id: options.ref.id,\n resources: Object.entries(options.translations).map(\n ([language, loader]) => ({\n language,\n loader: () => loader().then((m) => {\n const value = m.default;\n return {\n messages: value?.$$type === \"@backstage/TranslationMessages\" ? value.messages : value\n };\n })\n })\n )\n };\n}\n\nexport { createTranslationResource };\n//# sourceMappingURL=TranslationResource.esm.js.map\n","import { createTranslationResource } from './TranslationResource.esm.js';\n\nfunction flattenMessages(nested) {\n const entries = new Array();\n function visit(obj, prefix) {\n for (const [key, value] of Object.entries(obj)) {\n if (typeof value === \"string\") {\n entries.push([prefix + key, value]);\n } else {\n visit(value, `${prefix}${key}.`);\n }\n }\n }\n visit(nested, \"\");\n return Object.fromEntries(entries);\n}\nclass TranslationRefImpl {\n #id;\n #messages;\n #resources;\n constructor(options) {\n this.#id = options.id;\n this.#messages = flattenMessages(\n options.messages\n );\n }\n $$type = \"@backstage/TranslationRef\";\n version = \"v1\";\n get id() {\n return this.#id;\n }\n get T() {\n throw new Error(\"Not implemented\");\n }\n getDefaultMessages() {\n return this.#messages;\n }\n setDefaultResource(resources) {\n this.#resources = resources;\n }\n getDefaultResource() {\n return this.#resources;\n }\n toString() {\n return `TranslationRef{id=${this.id}}`;\n }\n}\nfunction createTranslationRef(config) {\n const ref = new TranslationRefImpl(config);\n if (config.translations) {\n ref.setDefaultResource(\n createTranslationResource({\n ref,\n translations: config.translations\n })\n );\n }\n return ref;\n}\n\nexport { createTranslationRef };\n//# sourceMappingURL=TranslationRef.esm.js.map\n","import { useState, useMemo, useCallback, useEffect, useRef } from 'react';\nimport '../apis/definitions/AppTreeApi.esm.js';\nimport '../apis/definitions/auth.esm.js';\nimport '../apis/definitions/AlertApi.esm.js';\nimport '../apis/definitions/AppLanguageApi.esm.js';\nimport '../apis/definitions/AppThemeApi.esm.js';\nimport '../apis/definitions/SwappableComponentsApi.esm.js';\nimport '../apis/definitions/ConfigApi.esm.js';\nimport '../apis/definitions/DiscoveryApi.esm.js';\nimport { errorApiRef } from '../apis/definitions/ErrorApi.esm.js';\nimport '../apis/definitions/FeatureFlagsApi.esm.js';\nimport '../apis/definitions/FetchApi.esm.js';\nimport '../apis/definitions/IconsApi.esm.js';\nimport '../apis/definitions/IdentityApi.esm.js';\nimport '../apis/definitions/DialogApi.esm.js';\nimport '../apis/definitions/OAuthRequestApi.esm.js';\nimport '../apis/definitions/RouteResolutionApi.esm.js';\nimport '../apis/definitions/StorageApi.esm.js';\nimport '../apis/definitions/AnalyticsApi.esm.js';\nimport { translationApiRef } from '../apis/definitions/TranslationApi.esm.js';\nimport { useApi } from '../apis/system/useApi.esm.js';\n\nconst loggedRefs = /* @__PURE__ */ new WeakSet();\nconst useTranslationRef = (translationRef) => {\n const errorApi = useApi(errorApiRef);\n const translationApi = useApi(translationApiRef);\n const [snapshot, setSnapshot] = useState(\n () => translationApi.getTranslation(translationRef)\n );\n const observable = useMemo(\n () => translationApi.translation$(translationRef),\n [translationApi, translationRef]\n );\n const onError = useCallback(\n (error) => {\n if (!loggedRefs.has(translationRef)) {\n const errMsg = `Failed to load translation resource '${translationRef.id}'; caused by ${error}`;\n console.error(errMsg);\n errorApi.post(new Error(errMsg));\n loggedRefs.add(translationRef);\n }\n },\n [errorApi, translationRef]\n );\n useEffect(() => {\n const subscription = observable.subscribe({\n next(next) {\n if (next.ready) {\n setSnapshot(next);\n }\n },\n error(error) {\n onError(error);\n }\n });\n return () => {\n subscription.unsubscribe();\n };\n }, [observable, onError]);\n const initialRenderRef = useRef(true);\n useEffect(() => {\n if (initialRenderRef.current) {\n initialRenderRef.current = false;\n } else {\n setSnapshot(translationApi.getTranslation(translationRef));\n }\n }, [translationApi, translationRef]);\n if (!snapshot.ready) {\n throw new Promise((resolve) => {\n const subscription = observable.subscribe({\n next(next) {\n if (next.ready) {\n subscription.unsubscribe();\n resolve();\n }\n },\n error(error) {\n subscription.unsubscribe();\n onError(error);\n resolve();\n }\n });\n });\n }\n return { t: snapshot.t };\n};\n\nexport { useTranslationRef };\n//# sourceMappingURL=useTranslationRef.esm.js.map\n","import { OpaqueExtensionInput } from '../frontend-internal/src/wiring/InternalExtensionInput.esm.js';\n\nfunction createExtensionInput(extensionData, config) {\n if (process.env.NODE_ENV !== \"production\") {\n if (Array.isArray(extensionData)) {\n const seen = /* @__PURE__ */ new Set();\n const duplicates = [];\n for (const dataRef of extensionData) {\n if (seen.has(dataRef.id)) {\n duplicates.push(dataRef.id);\n } else {\n seen.add(dataRef.id);\n }\n }\n if (duplicates.length > 0) {\n throw new Error(\n `ExtensionInput may not have duplicate data refs: '${duplicates.join(\n \"', '\"\n )}'`\n );\n }\n }\n }\n const baseOptions = {\n extensionData,\n config: {\n singleton: Boolean(config?.singleton),\n optional: Boolean(config?.optional)\n },\n replaces: config?.replaces\n };\n function createInstance(parent) {\n return OpaqueExtensionInput.createInstance(void 0, {\n ...baseOptions,\n context: parent,\n withContext: createInstance\n });\n }\n return createInstance();\n}\n\nexport { createExtensionInput };\n//# sourceMappingURL=createExtensionInput.esm.js.map\n","import { OpaqueExtensionDefinition } from '../frontend-internal/src/wiring/InternalExtensionDefinition.esm.js';\nimport { OpaqueExtensionInput } from '../frontend-internal/src/wiring/InternalExtensionInput.esm.js';\n\nfunction resolveExtensionId(kind, namespace, name) {\n const namePart = name && namespace ? `${namespace}/${name}` : namespace || name;\n if (!namePart) {\n throw new Error(\n `Extension must declare an explicit namespace or name as it could not be resolved from context, kind=${kind} namespace=${namespace} name=${name}`\n );\n }\n return kind ? `${kind}:${namePart}` : namePart;\n}\nfunction resolveAttachTo(attachTo, namespace) {\n const resolveSpec = (spec) => {\n if (OpaqueExtensionInput.isType(spec)) {\n const { context } = OpaqueExtensionInput.toInternal(spec);\n if (!context) {\n throw new Error(\n \"Invalid input object without a parent extension used as attachment point\"\n );\n }\n return {\n id: resolveExtensionId(context.kind, namespace, context.name),\n input: context.input\n };\n }\n if (\"relative\" in spec && spec.relative) {\n return {\n id: resolveExtensionId(\n spec.relative.kind,\n namespace,\n spec.relative.name\n ),\n input: spec.input\n };\n }\n if (\"id\" in spec) {\n return { id: spec.id, input: spec.input };\n }\n throw new Error(\"Invalid attachment point specification\");\n };\n if (Array.isArray(attachTo)) {\n return attachTo.map(resolveSpec);\n }\n return resolveSpec(attachTo);\n}\nfunction resolveExtensionDefinition(definition, context) {\n const internalDefinition = OpaqueExtensionDefinition.toInternal(definition);\n const {\n name,\n kind,\n namespace: internalNamespace,\n override: _skip2,\n attachTo,\n ...rest\n } = internalDefinition;\n const namespace = internalNamespace ?? context?.namespace;\n const id = resolveExtensionId(kind, namespace, name);\n return {\n ...rest,\n attachTo: resolveAttachTo(attachTo, namespace),\n $$type: \"@backstage/Extension\",\n version: internalDefinition.version,\n id,\n toString() {\n return `Extension{id=${id}}`;\n }\n };\n}\n\nexport { resolveExtensionDefinition };\n//# sourceMappingURL=resolveExtensionDefinition.esm.js.map\n","import { OpaqueType } from '../../../opaque-internal/src/OpaqueType.esm.js';\n\nconst OpaqueFrontendPlugin = OpaqueType.create({\n type: \"@backstage/FrontendPlugin\",\n versions: [\"v1\"]\n});\n\nexport { OpaqueFrontendPlugin };\n//# sourceMappingURL=InternalFrontendPlugin.esm.js.map\n","import { resolveExtensionDefinition } from './resolveExtensionDefinition.esm.js';\nimport { OpaqueFrontendPlugin } from '../frontend-internal/src/wiring/InternalFrontendPlugin.esm.js';\nimport { OpaqueExtensionDefinition } from '../frontend-internal/src/wiring/InternalExtensionDefinition.esm.js';\nimport '../frontend-internal/src/wiring/InternalExtensionInput.esm.js';\nimport '../frontend-internal/src/wiring/InternalSwappableComponentRef.esm.js';\n\nfunction createFrontendPlugin(options) {\n const pluginId = options.pluginId;\n const extensions = new Array();\n const extensionDefinitionsById = /* @__PURE__ */ new Map();\n for (const def of options.extensions ?? []) {\n const internal = OpaqueExtensionDefinition.toInternal(def);\n const ext = resolveExtensionDefinition(def, { namespace: pluginId });\n extensions.push(ext);\n extensionDefinitionsById.set(ext.id, {\n ...internal,\n namespace: pluginId\n });\n }\n if (extensions.length !== extensionDefinitionsById.size) {\n const extensionIds = extensions.map((e) => e.id);\n const duplicates = Array.from(\n new Set(\n extensionIds.filter((id, index) => extensionIds.indexOf(id) !== index)\n )\n );\n throw new Error(\n `Plugin '${pluginId}' provided duplicate extensions: ${duplicates.join(\n \", \"\n )}`\n );\n }\n return OpaqueFrontendPlugin.createInstance(\"v1\", {\n id: pluginId,\n routes: options.routes ?? {},\n externalRoutes: options.externalRoutes ?? {},\n featureFlags: options.featureFlags ?? [],\n extensions,\n infoOptions: options.info,\n // This method is overridden when the plugin instance is installed in an app\n async info() {\n throw new Error(\n `Attempted to load plugin info for plugin '${pluginId}', but the plugin instance is not installed in an app`\n );\n },\n getExtension(id) {\n const ext = extensionDefinitionsById.get(id);\n if (!ext) {\n throw new Error(\n `Attempted to get non-existent extension '${id}' from plugin '${pluginId}'`\n );\n }\n return ext;\n },\n toString() {\n return `Plugin{id=${pluginId}}`;\n },\n withOverrides(overrides) {\n const overriddenExtensionIds = new Set(\n overrides.extensions.map(\n (e) => resolveExtensionDefinition(e, { namespace: pluginId }).id\n )\n );\n const nonOverriddenExtensions = (options.extensions ?? []).filter(\n (e) => !overriddenExtensionIds.has(\n resolveExtensionDefinition(e, { namespace: pluginId }).id\n )\n );\n return createFrontendPlugin({\n ...options,\n pluginId,\n extensions: [...nonOverriddenExtensions, ...overrides.extensions],\n info: {\n ...options.info,\n ...overrides.info\n }\n });\n }\n });\n}\n\nexport { createFrontendPlugin };\n//# sourceMappingURL=createFrontendPlugin.esm.js.map\n","import { resolveExtensionDefinition } from './resolveExtensionDefinition.esm.js';\nimport { OpaqueExtensionDefinition } from '../frontend-internal/src/wiring/InternalExtensionDefinition.esm.js';\n\nfunction createFrontendModule(options) {\n const { pluginId } = options;\n const extensions = new Array();\n const extensionDefinitionsById = /* @__PURE__ */ new Map();\n for (const def of options.extensions ?? []) {\n const internal = OpaqueExtensionDefinition.toInternal(def);\n const ext = resolveExtensionDefinition(def, { namespace: pluginId });\n extensions.push(ext);\n extensionDefinitionsById.set(ext.id, {\n ...internal,\n namespace: pluginId\n });\n }\n if (extensions.length !== extensionDefinitionsById.size) {\n const extensionIds = extensions.map((e) => e.id);\n const duplicates = Array.from(\n new Set(\n extensionIds.filter((id, index) => extensionIds.indexOf(id) !== index)\n )\n );\n throw new Error(\n `Plugin '${pluginId}' provided duplicate extensions: ${duplicates.join(\n \", \"\n )}`\n );\n }\n return {\n $$type: \"@backstage/FrontendModule\",\n version: \"v1\",\n pluginId,\n featureFlags: options.featureFlags ?? [],\n extensions,\n toString() {\n return `Module{pluginId=${pluginId}}`;\n }\n };\n}\n\nexport { createFrontendModule };\n//# sourceMappingURL=createFrontendModule.esm.js.map\n","import { describeParentCallSite } from '../routing/describeParentCallSite.esm.js';\n\nfunction createFrontendFeatureLoader(options) {\n const description = `created at '${describeParentCallSite()}'`;\n return {\n $$type: \"@backstage/FrontendFeatureLoader\",\n version: \"v1\",\n description,\n toString() {\n return `FeatureLoader{description=${description}}`;\n },\n async loader(deps) {\n const it = await options.loader(deps);\n const result = new Array();\n for await (const item of it) {\n if (isFeatureOrLoader(item)) {\n result.push(item);\n } else if (\"default\" in item) {\n result.push(item.default);\n } else {\n throw new Error(`Invalid item \"${item}\"`);\n }\n }\n return result;\n }\n };\n}\nfunction isFeatureOrLoader(obj) {\n if (obj !== null && typeof obj === \"object\" && \"$$type\" in obj) {\n return obj.$$type === \"@backstage/FrontendPlugin\" || obj.$$type === \"@backstage/FrontendModule\" || obj.$$type === \"@backstage/FrontendFeatureLoader\";\n }\n return false;\n}\n\nexport { createFrontendFeatureLoader };\n//# sourceMappingURL=createFrontendFeatureLoader.esm.js.map\n"],"names":["AnalyticsReactContext","createVersionedContext","useAnalyticsContext","theContext","useContext","pluginId","extensionId","theValue","atVersion","Error","AnalyticsContext","options","attributes","children","combinedValue","versionedCombinedValue","createVersionedValueMap","jsx","Provider","value","useApiHolder","versionedHolder","useVersionedContext","apiHolder","useApi","apiRef","api","get","withApis","apis","WrappedComponent","Hoc","props","impls","key","hasOwnProperty","ref","displayName","name","ApiRefImpl","constructor","config","this","id","split","flatMap","part","every","match","T","toString","createApiRef","analyticsApiRef","globalEvents","getOrCreateGlobalSingleton","mostRecentGatheredNavigation","mostRecentRoutableExtensionRender","beforeUnloadRegistered","Tracker","analyticsApi","context","addEventListener","captureEvent","once","passive","setContext","action","subject","e","console","warn","useAnalytics","trackerRef","useRef","error","useAnalyticsApi","tracker","current","appTreeApiRef","SessionState","SignedIn","SignedOut","googleAuthApiRef","githubAuthApiRef","oktaAuthApiRef","gitlabAuthApiRef","microsoftAuthApiRef","oneloginAuthApiRef","bitbucketAuthApiRef","bitbucketServerAuthApiRef","atlassianAuthApiRef","vmwareCloudAuthApiRef","openshiftAuthApiRef","alertApiRef","appLanguageApiRef","appThemeApiRef","swappableComponentsApiRef","configApiRef","discoveryApiRef","errorApiRef","FeatureFlagState","None","Active","featureFlagsApiRef","fetchApiRef","iconsApiRef","identityApiRef","dialogApiRef","oauthRequestApiRef","routeResolutionApiRef","storageApiRef","translationApiRef","createApiFactory","factory","instance","deps","ignoreOverride","Symbol","defaultOptions","undefined","$refStrategy","basePath","effectStrategy","pipeStrategy","dateStrategy","mapStrategy","removeAdditionalStrategy","allowedAdditionalProperties","rejectedAdditionalProperties","definitionPath","target","strictUnions","definitions","errorMessages","markdownDescription","patternStrategy","applyRegexFlags","emailStrategy","base64Strategy","nameStrategy","openAiAnyTypeName","getRelativePath","pathA","pathB","i","length","slice","join","parseAnyDef","refs","anyDefinitionPath","flags","hasReferencedOpenAiAnyType","$ref","currentPath","addErrorMessage","res","errorMessage","setResponseValueAndErrors","parseBrandedDef","_def","parseDef","type","parseDateDef","def","overrideDateStrategy","strategy","Array","isArray","anyOf","map","item","format","integerDateParser","check","checks","kind","message","emojiRegex","zodPatterns","RegExp","parseStringDef","minLength","Math","max","maxLength","min","addFormat","addPattern","regex","escapeLiteralCheckValue","version","literal","source","result","ALPHA_NUMERIC","has","escapeNonAlphaNumeric","Set","schema","some","x","push","Object","keys","pattern","allOf","stringifyRegExpWithFlags","includes","toLowerCase","isEscaped","inCharGroup","inCharRange","toUpperCase","parseRecordDef","keyType","typeName","ZodEnum","required","values","properties","reduce","acc","valueType","additionalProperties","ZodString","propertyNames","enum","ZodBranded","primitiveMappings","ZodNumber","ZodBigInt","ZodBoolean","ZodNull","asAnyOf","Map","from","filter","safeIsOptional","isOptional","selectParser","inclusive","exclusiveMinimum","exclusiveMaximum","parseNumberDef","ZodObject","forceOptionalIntoNullable","shape","propName","propDef","propOptional","innerType","isNullable","nullable","parsedDef","propertyPath","catchall","unknownKeys","decideAdditionalProperties","parseObjectDef","parseBigintDef","ZodDate","ZodUndefined","not","parseUndefinedDef","parseNullDef","ZodArray","ZodAny","items","exactLength","parseArrayDef","ZodUnion","ZodDiscriminatedUnion","types","description","uniqueTypes","a","indexOf","parseUnionDef","ZodIntersection","left","right","unevaluatedProperties","mergedAllOf","forEach","nestedSchema","rest","parseIntersectionDef","ZodTuple","minItems","additionalItems","maxItems","parseTupleDef","ZodRecord","ZodLiteral","parsedType","const","parseLiteralDef","parseEnumDef","ZodNativeEnum","object","actualValues","parsedTypes","parseNativeEnumDef","ZodNullable","base","parseNullableDef","ZodOptional","innerSchema","parseOptionalDef","ZodMap","parseMapDef","ZodSet","uniqueItems","minSize","maxSize","parseSetDef","ZodLazy","getter","ZodPromise","parsePromiseDef","ZodNaN","ZodNever","parseNeverDef","ZodEffects","parseEffectsDef","ZodUnknown","parseUnknownDef","ZodDefault","default","defaultValue","parseDefaultDef","ZodReadonly","ZodCatch","parseCatchDef","ZodPipeline","in","out","parsePipelineDef","ZodFunction","ZodVoid","ZodSymbol","forceResolution","seenItem","seen","override","overrideResult","seenSchema","get$ref","newItem","path","jsonSchema","set","jsonSchemaOrGetter","addMeta","postProcess","postProcessResult","index","_options","getDefaultOptions","entries","getRefs","main","title","combined","$schema","createExtensionDataRef","createRef","refId","assign","$$type","optional","Boolean","with","createExtensionDataContainer","contextName","declaredRefs","iterator","container","verifyRefs","output","delete","remainingRefs","expectArray","expectItem","resolveInputOverrides","declaredInputs","inputs","inputOverrides","newInputs","hasOwn","declaredInput","providedData","singleton","originalInput","providedContainer","extensionData","node","withNodesCount","d","data","formatIssue","issue","code","unionErrors","issues","OpaqueType","create","versions","TPublic","TInternal","isType","toInternal","TypeError","expected","createInstance","String","OpaqueExtensionDefinition","OpaqueExtensionInput","ctxParamsSymbol","bindInputs","fromEntries","inputName","input","withContext","createExtension","schemaDeclaration","configSchema","innerZ","k","v","parse","safeParse","success","createSchemaFromZod","attachTo","disabled","parts","flat","aAny","relative","overrideOptions","params","parentResult","innerContext","deduplicatedResult","OpaqueBlueprintParams","createExtensionBlueprintParams","unwrapParamsFactory","defineParams","paramDefinition","unwrapParams","ctx","overrideParams","createExtensionBlueprint","dataRefs","make","args","makeWithOverrides","innerParams","factoryDataRef","AnalyticsImplementationBlueprint","ApiBlueprint","coreExtensionData","reactElement","routePath","routeRef","AppRootElementBlueprint","ExtensionBoundary","errorPresentation","element","componentDataRef","AppRootWrapperBlueprint","component","iconsDataRef","IconBundleBlueprint","icons","NavContentBlueprint","targetDataRef","NavItemBlueprint","icon","z","string","OpaqueSwappableComponentRef","useComponentRefApi","createSwappableComponent","FallbackComponent","p","TProps","TExternalProps","defaultComponent","lazy","async","loader","transformProps","ComponentRefImpl","internalRef","Component2","innerProps","Component","getComponent","Progress","NotFoundErrorPage","ErrorDisplay","ErrorDisplayBoundary","getDerivedStateFromError","state","handleErrorReset","setState","render","plugin","resetError","ErrorApiBoundary","componentDidCatch","_errorInfo","errorApi","post","spec","pluginWrapperApiRef","CONTEXT_KEY","AppNodeContext","AppNodeProvider","versionedValue","useAppNode","versionedContext","RouteTracker","enabled","analytics","useEffect","Fragment","useOptionalErrorApi","hasRoutePathOutput","getData","pluginWrapperApi","useOptionalPluginWrapperApi","PluginWrapper","useMemo","getPluginWrapper","content","Suspense","fallback","ExtensionBoundary2","appNode","ExtensionComponent","then","lazyComponent","PageBlueprint","RouterBlueprint","SignInPageBlueprint","themeDataRef","ThemeBlueprint","theme","translationDataRef","TranslationBlueprint","translation","resource","SwappableComponentBlueprint","MESSAGE_MARKER","describeParentCallSite","ErrorConstructor","stack","startIndex","secondEntryStart","secondEntryEnd","line","substring","trim","OpaqueRouteRef","createRouteRef","creationSite","getParams","getDescription","alias","aliasFor","setId","newId","OpaqueSubRouteRef","PARAM_PATTERN","createSubRouteRef","parent","internalParent","parentParams","parentDescription","pathParams","startsWith","endsWith","param","test","getParent","OpaqueExternalRouteRef","createExternalRouteRef","getDefaultTarget","defaultTarget","useRouteRef","pathname","useLocation","routeResolutionApi","resolve","sourcePath","useRouteRefParams","_routeRef","useParams","createTranslationMessages","full","messages","createTranslationResource","resources","translations","language","m","TranslationRefImpl","nested","visit","obj","prefix","flattenMessages","getDefaultMessages","setDefaultResource","getDefaultResource","createTranslationRef","loggedRefs","WeakSet","useTranslationRef","translationRef","translationApi","snapshot","setSnapshot","useState","getTranslation","observable","translation$","onError","useCallback","errMsg","add","subscription","subscribe","next","ready","unsubscribe","initialRenderRef","Promise","t","createExtensionInput","baseOptions","replaces","resolveExtensionId","namespace","namePart","resolveAttachTo","resolveSpec","resolveExtensionDefinition","definition","internalDefinition","internalNamespace","_skip2","OpaqueFrontendPlugin","createFrontendPlugin","extensions","extensionDefinitionsById","internal","ext","size","extensionIds","duplicates","routes","externalRoutes","featureFlags","infoOptions","info","getExtension","withOverrides","overrides","overriddenExtensionIds","nonOverriddenExtensions","createFrontendModule","createFrontendFeatureLoader","it","isFeatureOrLoader"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkinternal_plugin_kuadrant=self.webpackChunkinternal_plugin_kuadrant||[]).push([[879],{72627:(e,n,t)=>{t.r(n),t.d(n,{ApiKeyDetailPage:()=>A,ApiKeysPage:()=>u,ApiProductDetailPage:()=>h,ApiProductsPage:()=>d,EntityKuadrantApiAccessCard:()=>l,EntityKuadrantApiApprovalTab:()=>y,EntityKuadrantApiKeyManagementTab:()=>m,EntityKuadrantApiKeysContent:()=>c,EntityKuadrantApiProductInfoContent:()=>P,EntityKuadrantApiProductOpenApiAlert:()=>K,KuadrantApprovalQueueCard:()=>s,KuadrantPage:()=>p,kuadrantPlugin:()=>r});var a=t(22097);const o=(0,a.createRouteRef)({id:"kuadrant"}),i=(0,a.createSubRouteRef)({id:"kuadrant/resource",parent:o,path:"/:kind/:namespace/:name"}),r=(0,a.createPlugin)({id:"kuadrant",routes:{root:o,resource:i}}),p=r.provide((0,a.createRoutableExtension)({name:"KuadrantPage",component:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(1994),t.e(4651),t.e(7076),t.e(5235),t.e(5010),t.e(6763),t.e(3984),t.e(5478),t.e(5427),t.e(9634),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(8799),t.e(3459)]).then(t.bind(t,44477)).then(e=>e.KuadrantPage),mountPoint:o})),d=r.provide((0,a.createRoutableExtension)({name:"ApiProductsPage",component:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(1994),t.e(4651),t.e(7076),t.e(5235),t.e(5010),t.e(6763),t.e(3984),t.e(5478),t.e(5427),t.e(9634),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(8799),t.e(3459)]).then(t.bind(t,44477)).then(e=>e.ApiProductsPage),mountPoint:o})),u=r.provide((0,a.createRoutableExtension)({name:"ApiKeysPage",component:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(1994),t.e(4651),t.e(7076),t.e(5235),t.e(5010),t.e(6763),t.e(5478),t.e(5427),t.e(9634),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(6840),t.e(4682)]).then(t.bind(t,14682)).then(e=>e.ApiKeysPage),mountPoint:o})),l=r.provide((0,a.createComponentExtension)({name:"EntityKuadrantApiAccessCard",component:{lazy:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(1994),t.e(4651),t.e(8172),t.e(5478),t.e(5427),t.e(9634),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(5203)]).then(t.bind(t,60441)).then(e=>e.ApiAccessCard)}})),m=r.provide((0,a.createComponentExtension)({name:"EntityKuadrantApiKeyManagementTab",component:{lazy:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(1994),t.e(4651),t.e(7076),t.e(5235),t.e(5010),t.e(5478),t.e(5427),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(6840),t.e(3650)]).then(t.bind(t,23650)).then(e=>e.ApiKeyManagementTab)}})),c=r.provide((0,a.createComponentExtension)({name:"EntityKuadrantApiKeysContent",component:{lazy:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(1994),t.e(4651),t.e(7076),t.e(5235),t.e(5010),t.e(5478),t.e(5427),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(6840),t.e(3650)]).then(t.bind(t,23650)).then(e=>e.ApiKeyManagementTab)}})),s=r.provide((0,a.createComponentExtension)({name:"KuadrantApprovalQueueCard",component:{lazy:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(1994),t.e(4651),t.e(7076),t.e(5235),t.e(5010),t.e(5478),t.e(5427),t.e(9634),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(3097)]).then(t.bind(t,43097)).then(e=>e.ApprovalQueueCard)}})),P=r.provide((0,a.createComponentExtension)({name:"EntityKuadrantApiProductInfoContent",component:{lazy:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(1994),t.e(327),t.e(5478),t.e(5427),t.e(9634),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(3947),t.e(5453)]).then(t.bind(t,75453)).then(e=>e.ApiProductInfoCard)}})),A=r.provide((0,a.createRoutableExtension)({name:"ApiKeyDetailPage",component:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(7076),t.e(6763),t.e(5478),t.e(5427),t.e(9634),t.e(484),t.e(1942),t.e(7976),t.e(2967)]).then(t.bind(t,72967)).then(e=>e.ApiKeyDetailPage),mountPoint:o})),y=r.provide((0,a.createComponentExtension)({name:"EntityKuadrantApiApprovalTab",component:{lazy:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(1994),t.e(4651),t.e(7076),t.e(5235),t.e(5010),t.e(5478),t.e(5427),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(6800)]).then(t.bind(t,46800)).then(e=>e.EntityApiApprovalTab)}})),K=r.provide((0,a.createComponentExtension)({name:"EntityKuadrantApiProductOpenApiAlert",component:{lazy:()=>Promise.all([t.e(9400),t.e(9510),t.e(5478),t.e(5427),t.e(9634),t.e(484),t.e(1942),t.e(7976),t.e(6371)]).then(t.bind(t,36371)).then(e=>e.ApiProductOpenApiAlert)}})),h=r.provide((0,a.createRoutableExtension)({name:"ApiProductDetailPage",component:()=>Promise.all([t.e(5568),t.e(9400),t.e(9510),t.e(2628),t.e(4611),t.e(1994),t.e(4651),t.e(7076),t.e(5235),t.e(6763),t.e(65),t.e(5478),t.e(5427),t.e(9634),t.e(484),t.e(1942),t.e(7976),t.e(7094),t.e(8799),t.e(3947),t.e(7791)]).then(t.bind(t,57791)).then(e=>e.ApiProductDetailPage),mountPoint:o}))}}]);
|
|
2
|
+
//# sourceMappingURL=exposed-PluginRoot.5b6638e2.chunk.js.map
|