@jam-nodes/core 0.2.4 → 0.2.5
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/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/node.d.ts +40 -1
- package/dist/types/node.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { NodeExecutionContext, NodeExecutionResult, NodeExecutor, NodeApprovalRequest, NodeCapabilities, NodeCategory, NodeMetadata, NodeDefinition, NodeApprovalConfig, NodeNotificationConfig, BaseNodeConfig, NodeServices, ApolloClient, ApolloContact, DataForSeoClient, DataForSeoAuditResult, DataForSeoKeyword, TwitterClient, TwitterPost, ForumScoutClient, LinkedInPost, OpenAIClient, AnthropicClient, NotificationService, StorageService, CacheService, EmailDraftsService, EmailDraft, AnalyzedPostsStorage, AnalyzedPostData, CredentialType, AuthenticateType, CredentialAuthenticate, OAuth2Config, BaseCredentialDefinition, ApiKeyCredentialDefinition, OAuth2CredentialDefinition, BearerCredentialDefinition, BasicCredentialDefinition, WebhookCredentialDefinition, CustomCredentialDefinition, CredentialDefinition, ResolvedCredentials, CredentialProvider, CredentialRegistry, } from './types/index.js';
|
|
1
|
+
export type { NodeCredentials, NodeExecutionContext, NodeExecutionResult, NodeExecutor, NodeApprovalRequest, NodeCapabilities, NodeCategory, NodeMetadata, NodeDefinition, NodeApprovalConfig, NodeNotificationConfig, BaseNodeConfig, NodeServices, ApolloClient, ApolloContact, DataForSeoClient, DataForSeoAuditResult, DataForSeoKeyword, TwitterClient, TwitterPost, ForumScoutClient, LinkedInPost, OpenAIClient, AnthropicClient, NotificationService, StorageService, CacheService, EmailDraftsService, EmailDraft, AnalyzedPostsStorage, AnalyzedPostData, CredentialType, AuthenticateType, CredentialAuthenticate, OAuth2Config, BaseCredentialDefinition, ApiKeyCredentialDefinition, OAuth2CredentialDefinition, BearerCredentialDefinition, BasicCredentialDefinition, WebhookCredentialDefinition, CustomCredentialDefinition, CredentialDefinition, ResolvedCredentials, CredentialProvider, CredentialRegistry, } from './types/index.js';
|
|
2
2
|
export { defineApiKeyCredential, defineOAuth2Credential, defineBearerCredential, defineBasicCredential, } from './types/index.js';
|
|
3
3
|
export { ExecutionContext, createExecutionContext, prepareNodeInput, } from './execution/index.js';
|
|
4
4
|
export { NodeRegistry, createRegistry } from './registry/index.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,EAEd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,gBAAgB,EAEhB,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EACZ,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGnE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,EAEd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,gBAAgB,EAEhB,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EACZ,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGnE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAoDA,qBAAqB;AACrB,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAE1B,oBAAoB;AACpB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAE9B,WAAW;AACX,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEnE,YAAY;AACZ,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { NodeExecutionContext, NodeExecutionResult, NodeExecutor, NodeApprovalRequest, NodeCapabilities, NodeCategory, NodeMetadata, NodeDefinition, } from './node.js';
|
|
1
|
+
export type { NodeCredentials, NodeExecutionContext, NodeExecutionResult, NodeExecutor, NodeApprovalRequest, NodeCapabilities, NodeCategory, NodeMetadata, NodeDefinition, } from './node.js';
|
|
2
2
|
export type { NodeApprovalConfig, NodeNotificationConfig, BaseNodeConfig, } from './config.js';
|
|
3
3
|
export type { NodeServices, ApolloClient, ApolloContact, DataForSeoClient, DataForSeoAuditResult, DataForSeoKeyword, TwitterClient, TwitterPost, ForumScoutClient, LinkedInPost, OpenAIClient, AnthropicClient, NotificationService, StorageService, CacheService, EmailDraftsService, EmailDraft, AnalyzedPostsStorage, AnalyzedPostData, } from './services.js';
|
|
4
4
|
export type { CredentialType, AuthenticateType, CredentialAuthenticate, OAuth2Config, BaseCredentialDefinition, ApiKeyCredentialDefinition, OAuth2CredentialDefinition, BearerCredentialDefinition, BasicCredentialDefinition, WebhookCredentialDefinition, CustomCredentialDefinition, CredentialDefinition, ResolvedCredentials, CredentialProvider, CredentialRegistry, } from './credentials.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EACZ,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EACZ,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC"}
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AA0DA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC"}
|
package/dist/types/node.d.ts
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
import type { z } from 'zod';
|
|
2
2
|
import type { NodeServices } from './services.js';
|
|
3
|
+
/**
|
|
4
|
+
* Credentials for API authentication.
|
|
5
|
+
* Nodes use these to make direct HTTP calls without requiring injected services.
|
|
6
|
+
*/
|
|
7
|
+
export interface NodeCredentials {
|
|
8
|
+
/** Apollo.io API credentials */
|
|
9
|
+
apollo?: {
|
|
10
|
+
apiKey: string;
|
|
11
|
+
};
|
|
12
|
+
/** Twitter/X API credentials */
|
|
13
|
+
twitter?: {
|
|
14
|
+
/** Official Twitter API v2 Bearer Token */
|
|
15
|
+
bearerToken?: string;
|
|
16
|
+
/** TwitterAPI.io API key (third-party, simpler) */
|
|
17
|
+
twitterApiIoKey?: string;
|
|
18
|
+
};
|
|
19
|
+
/** ForumScout API credentials (for LinkedIn monitoring) */
|
|
20
|
+
forumScout?: {
|
|
21
|
+
apiKey: string;
|
|
22
|
+
};
|
|
23
|
+
/** DataForSEO API credentials */
|
|
24
|
+
dataForSeo?: {
|
|
25
|
+
/** Base64 encoded login:password */
|
|
26
|
+
apiToken: string;
|
|
27
|
+
};
|
|
28
|
+
/** OpenAI API credentials */
|
|
29
|
+
openai?: {
|
|
30
|
+
apiKey: string;
|
|
31
|
+
};
|
|
32
|
+
/** Anthropic API credentials */
|
|
33
|
+
anthropic?: {
|
|
34
|
+
apiKey: string;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
3
37
|
/**
|
|
4
38
|
* Base execution context passed to all node executors.
|
|
5
39
|
* Provides access to workflow state and utilities.
|
|
@@ -15,7 +49,12 @@ export interface NodeExecutionContext {
|
|
|
15
49
|
variables: Record<string, unknown>;
|
|
16
50
|
/** Resolve nested path like "contact.email" or "data[0].name" */
|
|
17
51
|
resolveNestedPath: (path: string) => unknown;
|
|
18
|
-
/**
|
|
52
|
+
/** API credentials for direct HTTP calls */
|
|
53
|
+
credentials?: NodeCredentials;
|
|
54
|
+
/**
|
|
55
|
+
* Optional services injected by host application.
|
|
56
|
+
* @deprecated Use credentials instead for standalone operation.
|
|
57
|
+
*/
|
|
19
58
|
services?: NodeServices;
|
|
20
59
|
}
|
|
21
60
|
/**
|
package/dist/types/node.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/types/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,iEAAiE;IACjE,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/types/node.ts"],"names":[],"mappings":"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"}
|