@harnessio/react-ssca-manager-client 0.84.46 → 0.86.0

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.
@@ -3,9 +3,9 @@ import type { ExemptionIdResponse } from '../schemas/ExemptionIdResponse';
3
3
  import type { ExemptionCreateRequestBody } from '../schemas/ExemptionCreateRequestBody';
4
4
  import type { ResponseWithPagination } from '../helpers';
5
5
  import { FetcherOptions } from '../../../../fetcher/index.js';
6
- export interface CreateExemptionMutationPathParams {
7
- org: string;
8
- project: string;
6
+ export interface CreateExemptionMutationQueryParams {
7
+ orgId: string;
8
+ projectId: string;
9
9
  }
10
10
  export interface CreateExemptionMutationHeaderParams {
11
11
  'Harness-Account': string;
@@ -13,11 +13,12 @@ export interface CreateExemptionMutationHeaderParams {
13
13
  export type CreateExemptionRequestBody = ExemptionCreateRequestBody;
14
14
  export type CreateExemptionOkResponse = ResponseWithPagination<ExemptionIdResponse>;
15
15
  export type CreateExemptionErrorResponse = unknown;
16
- export interface CreateExemptionProps extends CreateExemptionMutationPathParams, Omit<FetcherOptions<unknown, CreateExemptionRequestBody, CreateExemptionMutationHeaderParams>, 'url'> {
16
+ export interface CreateExemptionProps extends Omit<FetcherOptions<CreateExemptionMutationQueryParams, CreateExemptionRequestBody, CreateExemptionMutationHeaderParams>, 'url'> {
17
+ queryParams: CreateExemptionMutationQueryParams;
17
18
  body: CreateExemptionRequestBody;
18
19
  }
19
20
  export declare function createExemption(props: CreateExemptionProps): Promise<CreateExemptionOkResponse>;
20
21
  /**
21
- * File a new exemption request for an SBOM component. Always filed at the project in the path. The exemption is created in PENDING status.
22
+ * File a new exemption request for an SBOM component. A request is always filed at a concrete project, so orgId and projectId are required query params. The exemption is created in PENDING status.
22
23
  */
23
24
  export declare function useCreateExemptionMutation(options?: Omit<UseMutationOptions<CreateExemptionOkResponse, CreateExemptionErrorResponse, CreateExemptionProps>, 'mutationKey' | 'mutationFn'>): import("@tanstack/react-query").UseMutationResult<CreateExemptionOkResponse, unknown, CreateExemptionProps, unknown>;
@@ -4,10 +4,10 @@
4
4
  import { useMutation } from '@tanstack/react-query';
5
5
  import { fetcher } from '../../../../fetcher/index.js';
6
6
  export function createExemption(props) {
7
- return fetcher(Object.assign({ url: `/v1/orgs/${props.org}/projects/${props.project}/exemptions`, method: 'POST' }, props));
7
+ return fetcher(Object.assign({ url: `/v1/exemptions`, method: 'POST' }, props));
8
8
  }
9
9
  /**
10
- * File a new exemption request for an SBOM component. Always filed at the project in the path. The exemption is created in PENDING status.
10
+ * File a new exemption request for an SBOM component. A request is always filed at a concrete project, so orgId and projectId are required query params. The exemption is created in PENDING status.
11
11
  */
12
12
  export function useCreateExemptionMutation(options) {
13
13
  return useMutation((mutateProps) => createExemption(mutateProps), options);
@@ -19,7 +19,7 @@ export type { CreateComponentTicketErrorResponse, CreateComponentTicketMutationP
19
19
  export { createComponentTicket, useCreateComponentTicketMutation, } from './hooks/useCreateComponentTicketMutation';
20
20
  export type { CreateEolArtifactSourceComponentTicketErrorResponse, CreateEolArtifactSourceComponentTicketMutationPathParams, CreateEolArtifactSourceComponentTicketMutationQueryParams, CreateEolArtifactSourceComponentTicketOkResponse, CreateEolArtifactSourceComponentTicketProps, CreateEolArtifactSourceComponentTicketRequestBody, } from './hooks/useCreateEolArtifactSourceComponentTicketMutation';
21
21
  export { createEolArtifactSourceComponentTicket, useCreateEolArtifactSourceComponentTicketMutation, } from './hooks/useCreateEolArtifactSourceComponentTicketMutation';
22
- export type { CreateExemptionErrorResponse, CreateExemptionMutationPathParams, CreateExemptionOkResponse, CreateExemptionProps, CreateExemptionRequestBody, } from './hooks/useCreateExemptionMutation';
22
+ export type { CreateExemptionErrorResponse, CreateExemptionMutationQueryParams, CreateExemptionOkResponse, CreateExemptionProps, CreateExemptionRequestBody, } from './hooks/useCreateExemptionMutation';
23
23
  export { createExemption, useCreateExemptionMutation } from './hooks/useCreateExemptionMutation';
24
24
  export type { CreateIntegrationErrorResponse, CreateIntegrationMutationPathParams, CreateIntegrationOkResponse, CreateIntegrationProps, CreateIntegrationRequestBody, } from './hooks/useCreateIntegrationMutation';
25
25
  export { createIntegration, useCreateIntegrationMutation, } from './hooks/useCreateIntegrationMutation';
@@ -613,6 +613,7 @@ export type { ExemptionReviewRequestBody } from './schemas/ExemptionReviewReques
613
613
  export type { ExemptionScopeDto } from './schemas/ExemptionScopeDto';
614
614
  export type { ExemptionStatusCounts } from './schemas/ExemptionStatusCounts';
615
615
  export type { ExemptionStatusDto } from './schemas/ExemptionStatusDto';
616
+ export type { ExemptionVersionFilter } from './schemas/ExemptionVersionFilter';
616
617
  export type { FetchComplianceResultByArtifactResponseBody } from './schemas/FetchComplianceResultByArtifactResponseBody';
617
618
  export type { GetIntegrationSummaryResponse } from './schemas/GetIntegrationSummaryResponse';
618
619
  export type { GithubExecutionContext } from './schemas/GithubExecutionContext';
@@ -7,6 +7,10 @@ export interface AiBomComponentViewRequestBody {
7
7
  * Filter by component type (e.g. model, pkg, agent, framework)
8
8
  */
9
9
  ai_component_type?: string;
10
+ /**
11
+ * Filter by SPDX license identifier (e.g. proprietary, MIT). Matches plugin or enrichment licenses.
12
+ */
13
+ license_filter?: AiBomStringFilter;
10
14
  name_filter?: AiBomStringFilter;
11
15
  provider_filter?: AiBomStringFilter;
12
16
  }
@@ -39,6 +39,10 @@ export interface AiBomComponentViewResponse {
39
39
  * Programming language (e.g. python)
40
40
  */
41
41
  language?: string;
42
+ /**
43
+ * Comma-separated license family classifications for all licenses of the component
44
+ */
45
+ license_family?: string;
42
46
  /**
43
47
  * Total number of source code occurrences
44
48
  */
@@ -85,6 +85,11 @@ export interface ArtifactComponentViewResponse {
85
85
  * List of parent components for the current component
86
86
  */
87
87
  parents?: ComponentParent[];
88
+ /**
89
+ * Publish date (epoch millis) of the current version of the component
90
+ * @format int64
91
+ */
92
+ publish_date?: number;
88
93
  purl?: string;
89
94
  /**
90
95
  * Name of the package being squatted, if this is a typosquat
@@ -1,3 +1,5 @@
1
+ import type { NameOperator } from '../schemas/NameOperator';
2
+ import type { ExemptionVersionFilter } from '../schemas/ExemptionVersionFilter';
1
3
  import type { ExemptionReasonDto } from '../schemas/ExemptionReasonDto';
2
4
  import type { ExemptionScopeDto } from '../schemas/ExemptionScopeDto';
3
5
  /**
@@ -5,13 +7,13 @@ import type { ExemptionScopeDto } from '../schemas/ExemptionScopeDto';
5
7
  */
6
8
  export interface ExemptionListingRequestBody {
7
9
  /**
8
- * Case-insensitive prefix match on component name.
10
+ * Case-insensitive match on component name. Same operator set as dependency / remediation name filters.
9
11
  */
10
- component_name?: string;
11
- /**
12
- * Exact component version match.
13
- */
14
- component_version?: string;
12
+ component_name_filter?: {
13
+ operator: NameOperator;
14
+ value: string;
15
+ };
16
+ component_version_filter?: ExemptionVersionFilter;
15
17
  /**
16
18
  * Multi-select reason filter.
17
19
  */
@@ -0,0 +1,18 @@
1
+ import type { NameOperator } from '../schemas/NameOperator';
2
+ /**
3
+ * Version filter for exemptions listing. ALL matches exemptions with null componentVersion (applies to all versions). SPECIFIC applies operator+value to the filed componentVersion string — it does not include ALL-version (null) exemptions even when those would cover the queried version at enforcement time.
4
+ */
5
+ export interface ExemptionVersionFilter {
6
+ /**
7
+ * ALL = exemptions filed for all versions (componentVersion is null). SPECIFIC = filter a concrete version with operator and value.
8
+ */
9
+ mode: 'ALL' | 'SPECIFIC';
10
+ /**
11
+ * Required when mode is SPECIFIC. Ignored when mode is ALL.
12
+ */
13
+ operator?: NameOperator;
14
+ /**
15
+ * Required when mode is SPECIFIC. Ignored when mode is ALL.
16
+ */
17
+ value?: string;
18
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@harnessio/react-ssca-manager-client",
3
- "version": "0.84.46",
3
+ "version": "0.86.0",
4
4
  "description": "Harness SSCA manager APIs integrated with react hooks",
5
5
  "author": "Harness Inc",
6
6
  "license": "MIT",