@scm-manager/ui-api 4.0.0-REACT19 → 4.0.0-REACT19-20250910-113025

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/build/index.d.ts CHANGED
@@ -388,6 +388,7 @@ declare const useNamespaces: () => ApiResult<NamespaceCollection>;
388
388
  declare const useNamespace: (name: string) => ApiResult<Namespace>;
389
389
  declare const useNamespaceStrategies: () => ApiResult<NamespaceStrategies>;
390
390
 
391
+ declare const useBranchesIfAvailable: (repository: Repository) => ApiResult<BranchCollection>;
391
392
  declare const useBranches: (repository: Repository) => ApiResult<BranchCollection>;
392
393
  declare const useBranch: (repository: Repository, name: string) => ApiResultWithFetching<Branch>;
393
394
  declare const useBranchDetailsCollection: (repository: Repository, branches: Branch[]) => {
@@ -812,6 +813,15 @@ declare const NamespaceAndNameContextProvider: FC<{
812
813
  children: ReactNode;
813
814
  }>;
814
815
 
816
+ type NamespaceContext = {
817
+ namespace: Namespace;
818
+ };
819
+ declare const useNamespaceContext: () => NamespaceContext;
820
+ declare const NamespaceContextProvider: FC<{
821
+ context: NamespaceContext;
822
+ children: ReactNode;
823
+ }>;
824
+
815
825
  declare const useRepositoryContext: () => Repository | undefined;
816
826
  declare const RepositoryContextProvider: FC<{
817
827
  repository: Repository;
@@ -824,4 +834,4 @@ declare const RepositoryRevisionContextProvider: FC<{
824
834
  children: ReactNode;
825
835
  }>;
826
836
 
827
- export { AdditionalMessage, ApiProvider, Props as ApiProviderProps, ApiResult, ApiResultWithFetching, BackendError, BackendErrorContent, BadGatewayError, BaseContext, CONTENT_TYPE_PUBLIC_KEY, CancelablePromise, ConflictError, ConvertToInternalRequest, DeleteFunction, ForbiddenError, LegacyContext, LegacyContextProvider, MissingLinkError, NamespaceAndNameContext, NamespaceAndNameContextProvider, NotFoundError, RepositoryContextProvider, RepositoryRevisionContextProvider, RevertRequest, RevertResponse, SearchOptions, TOKEN_EXPIRED_ERROR_CODE, TokenExpiredError, UnauthorizedError, UseAvailablePluginsOptions, UseDeleteRepositoryOptions, UseGroupsRequest, UseHistoryRequest, UseInstalledPluginsOptions, UseRepositoriesRequest, UseRepositoryRolesRequest, UseSourcesOptions, UseUsersRequest, Violation, apiClient, changesetQueryKey, clearCache, createBackendError, createChangesetUrl, createDiffUrl, createQueryString, createUrl, createUrlWithIdentifiers, extractXsrfTokenFromCookie, fetchResourceFromLocationHeader, getResponseJson, isBackendError, makeCancelable, objectLink, requiredLink, urls, useAlerts, useAnnotations, useApiKeys, useArchiveRepository, useAvailableGlobalPermissions, useAvailablePermissions, useAvailablePlugins, useBranch, useBranchDetails, useBranchDetailsCollection, useBranches, useCancelPendingPlugins, useCancellablePromise, useChangeUserPassword, useChangeset, useChangesets, useClearNotifications, useConfig, useConfigLink, useContainedInTags, useContentType, useConvertToExternal, useConvertToInternal, useCreateApiKey, useCreateBranch, useCreateGroup, useCreatePermission, useCreatePublicKey, useCreateRepository, useCreateRepositoryRole, useCreateTag, useCreateUser, useDefaultBranch, useDeleteApiKey, useDeleteBranch, useDeleteGroup, useDeletePermission, useDeletePublicKey, useDeleteRepository, useDeleteRepositoryRole, useDeleteTag, useDeleteUser, useDiff, useDismissNotification, useExecutePendingPlugins, useExportInfo, useExportRepository, useFileContent, useGroup, useGroupOptions, useGroupPermissions, useGroupSuggestions, useGroups, useHistory, useImportFullRepository, useImportLog, useImportRepositoryFromBundle, useImportRepositoryFromUrl, useIncomingChangesets, useIndex, useIndexJsonResource, useIndexLink, useIndexLinks, useInstallPlugin, useInstalledPlugins, useInvalidateAllCaches, useInvalidateSearchIndices, useJsonResource, useLegacyContext, useLocalStorage, useLogin, useLoginInfo, useLogout, useMe, useNamespace, useNamespaceAndNameContext, useNamespaceOptions, useNamespaceStrategies, useNamespaceSuggestions, useNamespaces, useNotificationSubscription, useNotifications, useOmniSearch, usePaths, usePendingPlugins, usePermissions, usePublicKeys, useReindexRepository, useRenameRepository, useRepositories, useRepository, useRepositoryContext, useRepositoryRevisionContext, useRepositoryRole, useRepositoryRoles, useRepositoryTypes, useRepositoryVerbs, useRequiredIndexLink, useRequiredMe, useRevert, useRunHealthCheck, useSearch, useSearchCounts, useSearchHelpContent, useSearchSyntaxContent, useSearchTypes, useSearchableTypes, useSetGroupPermissions, useSetUserPassword, useSetUserPermissions, useSources, useSubject, useSuggestions, useTag, useTags, useUnarchiveRepository, useUninstallPlugin, useUpdateConfig, useUpdateGroup, useUpdateInfo, useUpdatePermission, useUpdatePlugins, useUpdateRepository, useUpdateRepositoryRole, useUpdateUser, useUser, useUserOptions, useUserPermissionOverview, useUserPermissions, useUserSuggestions, useUsers, useVersion, waitForRestartAfter };
837
+ export { AdditionalMessage, ApiProvider, Props as ApiProviderProps, ApiResult, ApiResultWithFetching, BackendError, BackendErrorContent, BadGatewayError, BaseContext, CONTENT_TYPE_PUBLIC_KEY, CancelablePromise, ConflictError, ConvertToInternalRequest, DeleteFunction, ForbiddenError, LegacyContext, LegacyContextProvider, MissingLinkError, NamespaceAndNameContext, NamespaceAndNameContextProvider, NamespaceContext, NamespaceContextProvider, NotFoundError, RepositoryContextProvider, RepositoryRevisionContextProvider, RevertRequest, RevertResponse, SearchOptions, TOKEN_EXPIRED_ERROR_CODE, TokenExpiredError, UnauthorizedError, UseAvailablePluginsOptions, UseDeleteRepositoryOptions, UseGroupsRequest, UseHistoryRequest, UseInstalledPluginsOptions, UseRepositoriesRequest, UseRepositoryRolesRequest, UseSourcesOptions, UseUsersRequest, Violation, apiClient, changesetQueryKey, clearCache, createBackendError, createChangesetUrl, createDiffUrl, createQueryString, createUrl, createUrlWithIdentifiers, extractXsrfTokenFromCookie, fetchResourceFromLocationHeader, getResponseJson, isBackendError, makeCancelable, objectLink, requiredLink, urls, useAlerts, useAnnotations, useApiKeys, useArchiveRepository, useAvailableGlobalPermissions, useAvailablePermissions, useAvailablePlugins, useBranch, useBranchDetails, useBranchDetailsCollection, useBranches, useBranchesIfAvailable, useCancelPendingPlugins, useCancellablePromise, useChangeUserPassword, useChangeset, useChangesets, useClearNotifications, useConfig, useConfigLink, useContainedInTags, useContentType, useConvertToExternal, useConvertToInternal, useCreateApiKey, useCreateBranch, useCreateGroup, useCreatePermission, useCreatePublicKey, useCreateRepository, useCreateRepositoryRole, useCreateTag, useCreateUser, useDefaultBranch, useDeleteApiKey, useDeleteBranch, useDeleteGroup, useDeletePermission, useDeletePublicKey, useDeleteRepository, useDeleteRepositoryRole, useDeleteTag, useDeleteUser, useDiff, useDismissNotification, useExecutePendingPlugins, useExportInfo, useExportRepository, useFileContent, useGroup, useGroupOptions, useGroupPermissions, useGroupSuggestions, useGroups, useHistory, useImportFullRepository, useImportLog, useImportRepositoryFromBundle, useImportRepositoryFromUrl, useIncomingChangesets, useIndex, useIndexJsonResource, useIndexLink, useIndexLinks, useInstallPlugin, useInstalledPlugins, useInvalidateAllCaches, useInvalidateSearchIndices, useJsonResource, useLegacyContext, useLocalStorage, useLogin, useLoginInfo, useLogout, useMe, useNamespace, useNamespaceAndNameContext, useNamespaceContext, useNamespaceOptions, useNamespaceStrategies, useNamespaceSuggestions, useNamespaces, useNotificationSubscription, useNotifications, useOmniSearch, usePaths, usePendingPlugins, usePermissions, usePublicKeys, useReindexRepository, useRenameRepository, useRepositories, useRepository, useRepositoryContext, useRepositoryRevisionContext, useRepositoryRole, useRepositoryRoles, useRepositoryTypes, useRepositoryVerbs, useRequiredIndexLink, useRequiredMe, useRevert, useRunHealthCheck, useSearch, useSearchCounts, useSearchHelpContent, useSearchSyntaxContent, useSearchTypes, useSearchableTypes, useSetGroupPermissions, useSetUserPassword, useSetUserPermissions, useSources, useSubject, useSuggestions, useTag, useTags, useUnarchiveRepository, useUninstallPlugin, useUpdateConfig, useUpdateGroup, useUpdateInfo, useUpdatePermission, useUpdatePlugins, useUpdateRepository, useUpdateRepositoryRole, useUpdateUser, useUser, useUserOptions, useUserPermissionOverview, useUserPermissions, useUserSuggestions, useUsers, useVersion, waitForRestartAfter };
package/build/index.js CHANGED
@@ -35,6 +35,7 @@ __export(src_exports, {
35
35
  LegacyContextProvider: () => LegacyContextProvider,
36
36
  MissingLinkError: () => MissingLinkError,
37
37
  NamespaceAndNameContextProvider: () => NamespaceAndNameContextProvider,
38
+ NamespaceContextProvider: () => NamespaceContextProvider,
38
39
  NotFoundError: () => NotFoundError,
39
40
  RepositoryContextProvider: () => RepositoryContextProvider,
40
41
  RepositoryRevisionContextProvider: () => RepositoryRevisionContextProvider,
@@ -69,6 +70,7 @@ __export(src_exports, {
69
70
  useBranchDetails: () => useBranchDetails,
70
71
  useBranchDetailsCollection: () => useBranchDetailsCollection,
71
72
  useBranches: () => useBranches,
73
+ useBranchesIfAvailable: () => useBranchesIfAvailable,
72
74
  useCancelPendingPlugins: () => useCancelPendingPlugins,
73
75
  useCancellablePromise: () => useCancellablePromise,
74
76
  useChangeUserPassword: () => useChangeUserPassword,
@@ -134,6 +136,7 @@ __export(src_exports, {
134
136
  useMe: () => useMe,
135
137
  useNamespace: () => useNamespace,
136
138
  useNamespaceAndNameContext: () => useNamespaceAndNameContext,
139
+ useNamespaceContext: () => useNamespaceContext,
137
140
  useNamespaceOptions: () => useNamespaceOptions,
138
141
  useNamespaceStrategies: () => useNamespaceStrategies,
139
142
  useNamespaceSuggestions: () => useNamespaceSuggestions,
@@ -1283,7 +1286,10 @@ var useRepository = (namespace, name) => {
1283
1286
  const link = useRequiredIndexLink("repositories");
1284
1287
  return (0, import_react_query7.useQuery)(
1285
1288
  ["repository", namespace, name],
1286
- () => apiClient.get(concat(link, namespace, name)).then((response) => response.json())
1289
+ () => apiClient.get(concat(link, namespace, name)).then((response) => response.json()),
1290
+ {
1291
+ suspense: true
1292
+ }
1287
1293
  );
1288
1294
  };
1289
1295
  var useDeleteRepository = (options) => {
@@ -1512,7 +1518,10 @@ var useNamespace = (name) => {
1512
1518
  const namespacesLink = useRequiredIndexLink("namespaces");
1513
1519
  return (0, import_react_query8.useQuery)(
1514
1520
  ["namespace", name],
1515
- () => apiClient.get(concat(namespacesLink, name)).then((response) => response.json())
1521
+ () => apiClient.get(concat(namespacesLink, name)).then((response) => response.json()),
1522
+ {
1523
+ suspense: true
1524
+ }
1516
1525
  );
1517
1526
  };
1518
1527
  var useNamespaceStrategies = () => {
@@ -1522,6 +1531,25 @@ var useNamespaceStrategies = () => {
1522
1531
  // src/branches.ts
1523
1532
  var import_react_query9 = require("react-query");
1524
1533
  var import_react5 = require("react");
1534
+ var useBranchesIfAvailable = (repository) => {
1535
+ const queryClient2 = (0, import_react_query9.useQueryClient)();
1536
+ const link = objectLink(repository, "branches");
1537
+ return (0, import_react_query9.useQuery)(
1538
+ repoQueryKey(repository, "branches"),
1539
+ () => {
1540
+ if (!link) {
1541
+ return Promise.resolve({ _embedded: { branches: [] }, _links: {} });
1542
+ }
1543
+ return apiClient.get(link).then((response) => response.json());
1544
+ },
1545
+ {
1546
+ onSuccess: () => {
1547
+ return queryClient2.invalidateQueries(branchDetailsQueryKey(repository));
1548
+ },
1549
+ suspense: true
1550
+ }
1551
+ );
1552
+ };
1525
1553
  var useBranches = (repository) => {
1526
1554
  const queryClient2 = (0, import_react_query9.useQueryClient)();
1527
1555
  const link = requiredLink(repository, "branches");
@@ -2335,11 +2363,14 @@ var useSources = (repository, opts = UseSourcesDefaultOptions) => {
2335
2363
  };
2336
2364
  };
2337
2365
  var createSourcesLink = (repository, options) => {
2366
+ const encodeFilePath = (filePath) => {
2367
+ return filePath.split("/").map(encodeURIComponent).join("/");
2368
+ };
2338
2369
  let link = requiredLink(repository, "sources");
2339
2370
  if (options.revision) {
2340
2371
  link = concat(link, encodeURIComponent(options.revision));
2341
2372
  if (options.path) {
2342
- link = concat(link, encodeInvalidCharacters(options.path));
2373
+ link = concat(link, encodeFilePath(options.path));
2343
2374
  }
2344
2375
  }
2345
2376
  if (options.collapse) {
@@ -2347,7 +2378,6 @@ var createSourcesLink = (repository, options) => {
2347
2378
  }
2348
2379
  return link;
2349
2380
  };
2350
- var encodeInvalidCharacters = (input) => input.replace(/\[/g, "%5B").replace(/]/g, "%5D");
2351
2381
  var merge = (files) => {
2352
2382
  var _a;
2353
2383
  if (!files || files.length === 0) {
@@ -3495,25 +3525,42 @@ var NamespaceAndNameContextProvider = ({ children }) => {
3495
3525
  }, children);
3496
3526
  };
3497
3527
 
3498
- // src/RepositoryContext.tsx
3528
+ // src/NamespaceContext.tsx
3499
3529
  var import_react13 = __toESM(require("react"));
3500
3530
  var Context3 = (0, import_react13.createContext)(void 0);
3501
- var useRepositoryContext = () => (0, import_react13.useContext)(Context3);
3531
+ var useNamespaceContext = () => {
3532
+ const context = (0, import_react13.useContext)(Context3);
3533
+ if (context === void 0) {
3534
+ throw new Error("useNamespaceContext must be used within a NamespaceContextProvider");
3535
+ }
3536
+ return context;
3537
+ };
3538
+ var NamespaceContextProvider = ({
3539
+ context,
3540
+ children
3541
+ }) => /* @__PURE__ */ import_react13.default.createElement(Context3.Provider, {
3542
+ value: context
3543
+ }, children);
3544
+
3545
+ // src/RepositoryContext.tsx
3546
+ var import_react14 = __toESM(require("react"));
3547
+ var Context4 = (0, import_react14.createContext)(void 0);
3548
+ var useRepositoryContext = () => (0, import_react14.useContext)(Context4);
3502
3549
  var RepositoryContextProvider = ({
3503
3550
  repository,
3504
3551
  children
3505
- }) => /* @__PURE__ */ import_react13.default.createElement(Context3.Provider, {
3552
+ }) => /* @__PURE__ */ import_react14.default.createElement(Context4.Provider, {
3506
3553
  value: repository
3507
3554
  }, children);
3508
3555
 
3509
3556
  // src/RepositoryRevisionContext.tsx
3510
- var import_react14 = __toESM(require("react"));
3511
- var Context4 = (0, import_react14.createContext)(void 0);
3512
- var useRepositoryRevisionContext = () => (0, import_react14.useContext)(Context4);
3557
+ var import_react15 = __toESM(require("react"));
3558
+ var Context5 = (0, import_react15.createContext)(void 0);
3559
+ var useRepositoryRevisionContext = () => (0, import_react15.useContext)(Context5);
3513
3560
  var RepositoryRevisionContextProvider = ({
3514
3561
  revision,
3515
3562
  children
3516
- }) => /* @__PURE__ */ import_react14.default.createElement(Context4.Provider, {
3563
+ }) => /* @__PURE__ */ import_react15.default.createElement(Context5.Provider, {
3517
3564
  value: revision
3518
3565
  }, children);
3519
3566
  // Annotate the CommonJS export names for ESM import in node:
@@ -3527,6 +3574,7 @@ var RepositoryRevisionContextProvider = ({
3527
3574
  LegacyContextProvider,
3528
3575
  MissingLinkError,
3529
3576
  NamespaceAndNameContextProvider,
3577
+ NamespaceContextProvider,
3530
3578
  NotFoundError,
3531
3579
  RepositoryContextProvider,
3532
3580
  RepositoryRevisionContextProvider,
@@ -3561,6 +3609,7 @@ var RepositoryRevisionContextProvider = ({
3561
3609
  useBranchDetails,
3562
3610
  useBranchDetailsCollection,
3563
3611
  useBranches,
3612
+ useBranchesIfAvailable,
3564
3613
  useCancelPendingPlugins,
3565
3614
  useCancellablePromise,
3566
3615
  useChangeUserPassword,
@@ -3626,6 +3675,7 @@ var RepositoryRevisionContextProvider = ({
3626
3675
  useMe,
3627
3676
  useNamespace,
3628
3677
  useNamespaceAndNameContext,
3678
+ useNamespaceContext,
3629
3679
  useNamespaceOptions,
3630
3680
  useNamespaceStrategies,
3631
3681
  useNamespaceSuggestions,
package/build/index.mjs CHANGED
@@ -1093,7 +1093,10 @@ var useRepository = (namespace, name) => {
1093
1093
  const link = useRequiredIndexLink("repositories");
1094
1094
  return useQuery5(
1095
1095
  ["repository", namespace, name],
1096
- () => apiClient.get(concat(link, namespace, name)).then((response) => response.json())
1096
+ () => apiClient.get(concat(link, namespace, name)).then((response) => response.json()),
1097
+ {
1098
+ suspense: true
1099
+ }
1097
1100
  );
1098
1101
  };
1099
1102
  var useDeleteRepository = (options) => {
@@ -1322,7 +1325,10 @@ var useNamespace = (name) => {
1322
1325
  const namespacesLink = useRequiredIndexLink("namespaces");
1323
1326
  return useQuery6(
1324
1327
  ["namespace", name],
1325
- () => apiClient.get(concat(namespacesLink, name)).then((response) => response.json())
1328
+ () => apiClient.get(concat(namespacesLink, name)).then((response) => response.json()),
1329
+ {
1330
+ suspense: true
1331
+ }
1326
1332
  );
1327
1333
  };
1328
1334
  var useNamespaceStrategies = () => {
@@ -1332,6 +1338,25 @@ var useNamespaceStrategies = () => {
1332
1338
  // src/branches.ts
1333
1339
  import { useInfiniteQuery, useMutation as useMutation5, useQuery as useQuery7, useQueryClient as useQueryClient6 } from "react-query";
1334
1340
  import { useEffect as useEffect3 } from "react";
1341
+ var useBranchesIfAvailable = (repository) => {
1342
+ const queryClient2 = useQueryClient6();
1343
+ const link = objectLink(repository, "branches");
1344
+ return useQuery7(
1345
+ repoQueryKey(repository, "branches"),
1346
+ () => {
1347
+ if (!link) {
1348
+ return Promise.resolve({ _embedded: { branches: [] }, _links: {} });
1349
+ }
1350
+ return apiClient.get(link).then((response) => response.json());
1351
+ },
1352
+ {
1353
+ onSuccess: () => {
1354
+ return queryClient2.invalidateQueries(branchDetailsQueryKey(repository));
1355
+ },
1356
+ suspense: true
1357
+ }
1358
+ );
1359
+ };
1335
1360
  var useBranches = (repository) => {
1336
1361
  const queryClient2 = useQueryClient6();
1337
1362
  const link = requiredLink(repository, "branches");
@@ -2145,11 +2170,14 @@ var useSources = (repository, opts = UseSourcesDefaultOptions) => {
2145
2170
  };
2146
2171
  };
2147
2172
  var createSourcesLink = (repository, options) => {
2173
+ const encodeFilePath = (filePath) => {
2174
+ return filePath.split("/").map(encodeURIComponent).join("/");
2175
+ };
2148
2176
  let link = requiredLink(repository, "sources");
2149
2177
  if (options.revision) {
2150
2178
  link = concat(link, encodeURIComponent(options.revision));
2151
2179
  if (options.path) {
2152
- link = concat(link, encodeInvalidCharacters(options.path));
2180
+ link = concat(link, encodeFilePath(options.path));
2153
2181
  }
2154
2182
  }
2155
2183
  if (options.collapse) {
@@ -2157,7 +2185,6 @@ var createSourcesLink = (repository, options) => {
2157
2185
  }
2158
2186
  return link;
2159
2187
  };
2160
- var encodeInvalidCharacters = (input) => input.replace(/\[/g, "%5B").replace(/]/g, "%5D");
2161
2188
  var merge = (files) => {
2162
2189
  var _a;
2163
2190
  if (!files || files.length === 0) {
@@ -3305,25 +3332,42 @@ var NamespaceAndNameContextProvider = ({ children }) => {
3305
3332
  }, children);
3306
3333
  };
3307
3334
 
3308
- // src/RepositoryContext.tsx
3335
+ // src/NamespaceContext.tsx
3309
3336
  import React4, { createContext as createContext3, useContext as useContext3 } from "react";
3310
3337
  var Context3 = createContext3(void 0);
3311
- var useRepositoryContext = () => useContext3(Context3);
3338
+ var useNamespaceContext = () => {
3339
+ const context = useContext3(Context3);
3340
+ if (context === void 0) {
3341
+ throw new Error("useNamespaceContext must be used within a NamespaceContextProvider");
3342
+ }
3343
+ return context;
3344
+ };
3345
+ var NamespaceContextProvider = ({
3346
+ context,
3347
+ children
3348
+ }) => /* @__PURE__ */ React4.createElement(Context3.Provider, {
3349
+ value: context
3350
+ }, children);
3351
+
3352
+ // src/RepositoryContext.tsx
3353
+ import React5, { createContext as createContext4, useContext as useContext4 } from "react";
3354
+ var Context4 = createContext4(void 0);
3355
+ var useRepositoryContext = () => useContext4(Context4);
3312
3356
  var RepositoryContextProvider = ({
3313
3357
  repository,
3314
3358
  children
3315
- }) => /* @__PURE__ */ React4.createElement(Context3.Provider, {
3359
+ }) => /* @__PURE__ */ React5.createElement(Context4.Provider, {
3316
3360
  value: repository
3317
3361
  }, children);
3318
3362
 
3319
3363
  // src/RepositoryRevisionContext.tsx
3320
- import React5, { createContext as createContext4, useContext as useContext4 } from "react";
3321
- var Context4 = createContext4(void 0);
3322
- var useRepositoryRevisionContext = () => useContext4(Context4);
3364
+ import React6, { createContext as createContext5, useContext as useContext5 } from "react";
3365
+ var Context5 = createContext5(void 0);
3366
+ var useRepositoryRevisionContext = () => useContext5(Context5);
3323
3367
  var RepositoryRevisionContextProvider = ({
3324
3368
  revision,
3325
3369
  children
3326
- }) => /* @__PURE__ */ React5.createElement(Context4.Provider, {
3370
+ }) => /* @__PURE__ */ React6.createElement(Context5.Provider, {
3327
3371
  value: revision
3328
3372
  }, children);
3329
3373
  export {
@@ -3336,6 +3380,7 @@ export {
3336
3380
  LegacyContextProvider,
3337
3381
  MissingLinkError,
3338
3382
  NamespaceAndNameContextProvider,
3383
+ NamespaceContextProvider,
3339
3384
  NotFoundError,
3340
3385
  RepositoryContextProvider,
3341
3386
  RepositoryRevisionContextProvider,
@@ -3370,6 +3415,7 @@ export {
3370
3415
  useBranchDetails,
3371
3416
  useBranchDetailsCollection,
3372
3417
  useBranches,
3418
+ useBranchesIfAvailable,
3373
3419
  useCancelPendingPlugins,
3374
3420
  useCancellablePromise,
3375
3421
  useChangeUserPassword,
@@ -3435,6 +3481,7 @@ export {
3435
3481
  useMe,
3436
3482
  useNamespace,
3437
3483
  useNamespaceAndNameContext,
3484
+ useNamespaceContext,
3438
3485
  useNamespaceOptions,
3439
3486
  useNamespaceStrategies,
3440
3487
  useNamespaceSuggestions,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scm-manager/ui-api",
3
- "version": "4.0.0-REACT19",
3
+ "version": "4.0.0-REACT19-20250910-113025",
4
4
  "description": "React hook api for the SCM-Manager backend",
5
5
  "main": "build/index.js",
6
6
  "module": "build/index.mjs",
@@ -26,11 +26,11 @@
26
26
  },
27
27
  "devDependencies": {
28
28
  "@scm-manager/babel-preset": "^2.13.1",
29
- "@scm-manager/eslint-config": "^2.17.0",
29
+ "@scm-manager/eslint-config": "^2.18.2",
30
30
  "@scm-manager/jest-preset": "^2.15.0-alpha1",
31
31
  "@scm-manager/prettier-config": "^2.12.0",
32
32
  "@scm-manager/tsconfig": "^2.13.0",
33
- "@scm-manager/ui-types": "4.0.0-REACT19",
33
+ "@scm-manager/ui-types": "4.0.0-REACT19-20250910-113025",
34
34
  "@testing-library/react": "^16.3.0",
35
35
  "@types/react": "^19.1.1",
36
36
  "fetch-mock": "^7.5.1",
@@ -52,9 +52,13 @@
52
52
  },
53
53
  "prettier": "@scm-manager/prettier-config",
54
54
  "eslintConfig": {
55
- "extends": "@scm-manager/eslint-config"
55
+ "extends": "@scm-manager/eslint-config",
56
+ "rules": {
57
+ "react/display-name": "off",
58
+ "@typescript-eslint/no-explicit-any": "warn"
59
+ }
56
60
  },
57
61
  "publishConfig": {
58
62
  "access": "public"
59
63
  }
60
- }
64
+ }