Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "linkedapi-node",
"version": "1.2.1",
"version": "1.2.2",
"description": "Official TypeScript SDK for Linked API",
"main": "dist/index.js",
"types": "dist/index.d.ts",
Expand Down
7 changes: 5 additions & 2 deletions src/core/operation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ export interface WaitForCompletionOptions {
}

export abstract class Operation<TParams, TResult> {
protected abstract readonly operationName: TOperationName;
public abstract readonly operationName: TOperationName;
protected abstract readonly mapper: BaseMapper<TParams, TResult>;

constructor(private readonly httpClient: HttpClient) {}
Expand All @@ -67,7 +67,10 @@ export abstract class Operation<TParams, TResult> {
options: WaitForCompletionOptions = {},
): Promise<TMappedResponse<TResult>> {
try {
return pollWorkflowResult<TMappedResponse<TResult>>(() => this.status(workflowId), options);
return await pollWorkflowResult<TMappedResponse<TResult>>(
() => this.status(workflowId),
options,
);
} catch (error) {
if (error instanceof LinkedApiError && error.type === 'workflowTimeout') {
throw new LinkedApiWorkflowTimeoutError(workflowId, this.operationName);
Expand Down
2 changes: 1 addition & 1 deletion src/operations/check-connection-status.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export class CheckConnectionStatus extends Operation<
TCheckConnectionStatusParams,
TCheckConnectionStatusResult
> {
protected override readonly operationName: TOperationName = 'checkConnectionStatus';
public readonly operationName: TOperationName = 'checkConnectionStatus';
protected override readonly mapper = new SimpleWorkflowMapper<
TCheckConnectionStatusParams,
TCheckConnectionStatusResult
Expand Down
2 changes: 1 addition & 1 deletion src/operations/comment-on-post.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { VoidWorkflowMapper } from '../mappers';
import { TCommentOnPostParams } from '../types';

export class CommentOnPost extends Operation<TCommentOnPostParams, void> {
protected override readonly operationName: TOperationName = 'commentOnPost';
public override readonly operationName: TOperationName = 'commentOnPost';
protected override readonly mapper = new VoidWorkflowMapper<TCommentOnPostParams>(
'st.commentOnPost',
);
Expand Down
2 changes: 1 addition & 1 deletion src/operations/custom-workflow.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { BaseMapper, TMappedResponse } from '../mappers';
import { TWorkflowCompletion, TWorkflowDefinition } from '../types';

export class CustomWorkflow extends Operation<TWorkflowDefinition, TWorkflowCompletion> {
protected readonly operationName: TOperationName = 'customWorkflow';
public readonly operationName: TOperationName = 'customWorkflow';
protected readonly mapper = new CustomWorkflowMapper();
}

Expand Down
2 changes: 1 addition & 1 deletion src/operations/fetch-company.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {
} from '../types';

export class FetchCompany extends Operation<TBaseFetchCompanyParams, TFetchCompanyResult> {
protected override readonly operationName: TOperationName = 'fetchCompany';
public override readonly operationName: TOperationName = 'fetchCompany';
protected override readonly mapper = new FetchCompanyMapper();

constructor(httpClient: HttpClient) {
Expand Down
2 changes: 1 addition & 1 deletion src/operations/fetch-person.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { TActionConfig, ThenWorkflowMapper } from '../mappers/then-workflow-mapp
import { TBaseFetchPersonParams, TFetchPersonParams, TFetchPersonResult } from '../types';

export class FetchPerson extends Operation<TBaseFetchPersonParams, TFetchPersonResult> {
protected override readonly operationName: TOperationName = 'fetchPerson';
public override readonly operationName: TOperationName = 'fetchPerson';
protected override readonly mapper = new FetchPersonMapper();

public override async execute<TParams extends TBaseFetchPersonParams>(
Expand Down
2 changes: 1 addition & 1 deletion src/operations/fetch-post.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { SimpleWorkflowMapper } from '../mappers';
import { TFetchPostParams, TFetchPostResult } from '../types';

export class FetchPost extends Operation<TFetchPostParams, TFetchPostResult> {
protected override readonly operationName: TOperationName = 'fetchPost';
public override readonly operationName: TOperationName = 'fetchPost';
protected override readonly mapper = new SimpleWorkflowMapper<TFetchPostParams, TFetchPostResult>(
{
actionType: 'st.openPost',
Expand Down
2 changes: 1 addition & 1 deletion src/operations/nv-fetch-company.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { TActionConfig, ThenWorkflowMapper } from '../mappers/then-workflow-mapp
import { TNvBaseFetchCompanyParams, TNvFetchCompanyParams, TNvFetchCompanyResult } from '../types';

export class NvFetchCompany extends Operation<TNvBaseFetchCompanyParams, TNvFetchCompanyResult> {
protected override readonly operationName: TOperationName = 'nvFetchCompany';
public override readonly operationName: TOperationName = 'nvFetchCompany';
protected override readonly mapper = new NvFetchCompanyMapper();

public override async execute<TParams extends TNvBaseFetchCompanyParams>(
Expand Down
2 changes: 1 addition & 1 deletion src/operations/nv-fetch-person.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { ThenWorkflowMapper } from '../mappers';
import { TNvOpenPersonPageParams, TNvOpenPersonPageResult } from '../types';

export class NvFetchPerson extends Operation<TNvOpenPersonPageParams, TNvOpenPersonPageResult> {
protected override readonly operationName: TOperationName = 'nvFetchPerson';
public override readonly operationName: TOperationName = 'nvFetchPerson';
protected override readonly mapper = new NvFetchPersonMapper();
}

Expand Down
2 changes: 1 addition & 1 deletion src/operations/nv-search-companies.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export class NvSearchCompanies extends Operation<
TNvSearchCompaniesParams,
TNvSearchCompanyResult[]
> {
protected override readonly operationName: TOperationName = 'nvSearchCompanies';
public override readonly operationName: TOperationName = 'nvSearchCompanies';
protected override readonly mapper = new ArrayWorkflowMapper<
TNvSearchCompaniesParams,
TNvSearchCompanyResult
Expand Down
2 changes: 1 addition & 1 deletion src/operations/nv-search-people.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { ArrayWorkflowMapper } from '../mappers/array-workflow-mapper';
import { TNvSearchPeopleParams, TNvSearchPeopleResult } from '../types';

export class NvSearchPeople extends Operation<TNvSearchPeopleParams, TNvSearchPeopleResult[]> {
protected override readonly operationName: TOperationName = 'nvSearchPeople';
public override readonly operationName: TOperationName = 'nvSearchPeople';
protected override readonly mapper = new ArrayWorkflowMapper<
TNvSearchPeopleParams,
TNvSearchPeopleResult
Expand Down
2 changes: 1 addition & 1 deletion src/operations/nv-send-message.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { VoidWorkflowMapper } from '../mappers/void-workflow-mapper';
import { TNvSendMessageParams } from '../types';

export class NvSendMessage extends Operation<TNvSendMessageParams, void> {
protected override readonly operationName: TOperationName = 'nvSendMessage';
public override readonly operationName: TOperationName = 'nvSendMessage';
protected override readonly mapper = new VoidWorkflowMapper<TNvSendMessageParams>(
'nv.sendMessage',
);
Expand Down
2 changes: 1 addition & 1 deletion src/operations/nv-sync-conversation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { VoidWorkflowMapper } from '../mappers';
import { TNvSyncConversationParams } from '../types';

export class NvSyncConversation extends Operation<TNvSyncConversationParams, void> {
protected override readonly operationName: TOperationName = 'nvSyncConversation';
public override readonly operationName: TOperationName = 'nvSyncConversation';
protected override readonly mapper = new VoidWorkflowMapper<TNvSyncConversationParams>(
'nv.syncConversation',
);
Expand Down
2 changes: 1 addition & 1 deletion src/operations/react-to-post.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ import { VoidWorkflowMapper } from '../mappers';
import { TReactToPostParams } from '../types';

export class ReactToPost extends Operation<TReactToPostParams, void> {
protected override readonly operationName: TOperationName = 'reactToPost';
public override readonly operationName: TOperationName = 'reactToPost';
protected override readonly mapper = new VoidWorkflowMapper<TReactToPostParams>('st.reactToPost');
}
2 changes: 1 addition & 1 deletion src/operations/remove-connection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { VoidWorkflowMapper } from '../mappers';
import { TRemoveConnectionParams } from '../types';

export class RemoveConnection extends Operation<TRemoveConnectionParams, void> {
protected override readonly operationName: TOperationName = 'removeConnection';
public override readonly operationName: TOperationName = 'removeConnection';
protected override readonly mapper = new VoidWorkflowMapper<TRemoveConnectionParams>(
'st.removeConnection',
);
Expand Down
2 changes: 1 addition & 1 deletion src/operations/retrieve-connections.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export class RetrieveConnections extends Operation<
TRetrieveConnectionsParams,
TRetrieveConnectionsResult[]
> {
protected override readonly operationName: TOperationName = 'retrieveConnections';
public override readonly operationName: TOperationName = 'retrieveConnections';
protected override readonly mapper = new ArrayWorkflowMapper<
TRetrieveConnectionsParams,
TRetrieveConnectionsResult
Expand Down
2 changes: 1 addition & 1 deletion src/operations/retrieve-pending-requests.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { ArrayWorkflowMapper } from '../mappers/array-workflow-mapper';
import { TRetrievePendingRequestsResult } from '../types';

export class RetrievePendingRequests extends Operation<void, TRetrievePendingRequestsResult[]> {
protected override readonly operationName: TOperationName = 'retrievePendingRequests';
public override readonly operationName: TOperationName = 'retrievePendingRequests';
protected override readonly mapper = new ArrayWorkflowMapper<
void,
TRetrievePendingRequestsResult
Expand Down
2 changes: 1 addition & 1 deletion src/operations/retrieve-performance.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { SimpleWorkflowMapper } from '../mappers';
import { TRetrievePerformanceResult } from '../types';

export class RetrievePerformance extends Operation<void, TRetrievePerformanceResult> {
protected override readonly operationName: TOperationName = 'retrievePerformance';
public override readonly operationName: TOperationName = 'retrievePerformance';
protected override readonly mapper = new SimpleWorkflowMapper<void, TRetrievePerformanceResult>({
actionType: 'st.retrievePerformance',
});
Expand Down
2 changes: 1 addition & 1 deletion src/operations/retrieve-ssi.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { SimpleWorkflowMapper } from '../mappers';
import { TRetrieveSSIResult } from '../types';

export class RetrieveSSI extends Operation<void, TRetrieveSSIResult> {
protected override readonly operationName: TOperationName = 'retrieveSSI';
public override readonly operationName: TOperationName = 'retrieveSSI';
protected override readonly mapper = new SimpleWorkflowMapper<void, TRetrieveSSIResult>({
actionType: 'st.retrieveSSI',
});
Expand Down
2 changes: 1 addition & 1 deletion src/operations/search-companies.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { ArrayWorkflowMapper } from '../mappers/array-workflow-mapper';
import { TSearchCompaniesParams, TSearchCompanyResult } from '../types';

export class SearchCompanies extends Operation<TSearchCompaniesParams, TSearchCompanyResult[]> {
protected override readonly operationName: TOperationName = 'searchCompanies';
public override readonly operationName: TOperationName = 'searchCompanies';
protected override readonly mapper = new ArrayWorkflowMapper<
TSearchCompaniesParams,
TSearchCompanyResult
Expand Down
2 changes: 1 addition & 1 deletion src/operations/search-people.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { ArrayWorkflowMapper } from '../mappers/array-workflow-mapper';
import { TSearchPeopleParams, TSearchPeopleResult } from '../types';

export class SearchPeople extends Operation<TSearchPeopleParams, TSearchPeopleResult[]> {
protected override readonly operationName: TOperationName = 'searchPeople';
public override readonly operationName: TOperationName = 'searchPeople';
protected override readonly mapper = new ArrayWorkflowMapper<
TSearchPeopleParams,
TSearchPeopleResult
Expand Down
2 changes: 1 addition & 1 deletion src/operations/send-connection-request.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { VoidWorkflowMapper } from '../mappers';
import { TSendConnectionRequestParams } from '../types';

export class SendConnectionRequest extends Operation<TSendConnectionRequestParams, void> {
protected override readonly operationName: TOperationName = 'sendConnectionRequest';
public override readonly operationName: TOperationName = 'sendConnectionRequest';
protected override readonly mapper = new VoidWorkflowMapper<TSendConnectionRequestParams>(
'st.sendConnectionRequest',
);
Expand Down
2 changes: 1 addition & 1 deletion src/operations/send-message.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ import { VoidWorkflowMapper } from '../mappers/void-workflow-mapper';
import { TSendMessageParams } from '../types';

export class SendMessage extends Operation<TSendMessageParams, void> {
protected override readonly operationName: TOperationName = 'sendMessage';
public override readonly operationName: TOperationName = 'sendMessage';
protected override readonly mapper = new VoidWorkflowMapper<TSendMessageParams>('st.sendMessage');
}
2 changes: 1 addition & 1 deletion src/operations/sync-conversation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { VoidWorkflowMapper } from '../mappers';
import { TSyncConversationParams } from '../types';

export class SyncConversation extends Operation<TSyncConversationParams, void> {
protected override readonly operationName: TOperationName = 'syncConversation';
public override readonly operationName: TOperationName = 'syncConversation';
protected override readonly mapper = new VoidWorkflowMapper<TSyncConversationParams>(
'st.syncConversation',
);
Expand Down
2 changes: 1 addition & 1 deletion src/operations/withdraw-connection-request.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { VoidWorkflowMapper } from '../mappers';
import { TWithdrawConnectionRequestParams } from '../types';

export class WithdrawConnectionRequest extends Operation<TWithdrawConnectionRequestParams, void> {
protected override readonly operationName: TOperationName = 'withdrawConnectionRequest';
public override readonly operationName: TOperationName = 'withdrawConnectionRequest';
protected override readonly mapper = new VoidWorkflowMapper<TWithdrawConnectionRequestParams>(
'st.withdrawConnectionRequest',
);
Expand Down
2 changes: 1 addition & 1 deletion src/types/errors.ts
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ export class LinkedApiWorkflowTimeoutError extends LinkedApiError {
constructor(workflowId: string, operationName: TOperationName) {
super(
'workflowTimeout',
`Workflow ${workflowId} timed out. Call .result again to continue checking the workflow.`,
`Workflow ${workflowId} timed out. Call ${operationName}.result() again to continue checking the workflow.`,
{
workflowId,
operationName,
Expand Down