@railtownai/railengine 0.0.1
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/LICENSE +21 -0
- package/README.md +570 -0
- package/dist/cjs/index.js +892 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/esm/index.js +890 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/types/auth.d.ts +24 -0
- package/dist/types/auth.d.ts.map +1 -0
- package/dist/types/client.d.ts +196 -0
- package/dist/types/client.d.ts.map +1 -0
- package/dist/types/embeddings.d.ts +17 -0
- package/dist/types/embeddings.d.ts.map +1 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/indexing.d.ts +17 -0
- package/dist/types/indexing.d.ts.map +1 -0
- package/dist/types/storage.d.ts +63 -0
- package/dist/types/storage.d.ts.map +1 -0
- package/package.json +47 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../shared/dist/esm/index.js","../../src/auth.ts","../../src/embeddings.ts","../../src/storage.ts","../../src/indexing.ts","../../src/client.ts"],"sourcesContent":["/**\n * Base error class for all Railtown API errors.\n */\nclass RailtownError extends Error {\n constructor(message, statusCode, responseBody) {\n super(message);\n this.statusCode = statusCode;\n this.responseBody = responseBody;\n this.name = \"RailtownError\";\n Object.setPrototypeOf(this, RailtownError.prototype);\n }\n}\n/**\n * Error thrown when authentication fails (401).\n */\nclass RailtownUnauthorizedError extends RailtownError {\n constructor(message = \"Authentication failed\", responseBody) {\n super(message, 401, responseBody);\n this.name = \"RailtownUnauthorizedError\";\n Object.setPrototypeOf(this, RailtownUnauthorizedError.prototype);\n }\n}\n/**\n * Error thrown when a resource is not found (404).\n */\nclass RailtownNotFoundError extends RailtownError {\n constructor(message = \"Resource not found\", responseBody) {\n super(message, 404, responseBody);\n this.name = \"RailtownNotFoundError\";\n Object.setPrototypeOf(this, RailtownNotFoundError.prototype);\n }\n}\n/**\n * Error thrown when a bad request is made (400).\n */\nclass RailtownBadRequestError extends RailtownError {\n constructor(message = \"Bad request\", responseBody) {\n super(message, 400, responseBody);\n this.name = \"RailtownBadRequestError\";\n Object.setPrototypeOf(this, RailtownBadRequestError.prototype);\n }\n}\n/**\n * Error thrown when a conflict occurs (409).\n */\nclass RailtownConflictError extends RailtownError {\n constructor(message = \"Conflict\", responseBody) {\n super(message, 409, responseBody);\n this.name = \"RailtownConflictError\";\n Object.setPrototypeOf(this, RailtownConflictError.prototype);\n }\n}\n/**\n * Error thrown when a server error occurs (500+).\n */\nclass RailtownServerError extends RailtownError {\n constructor(message = \"Server error\", statusCode = 500, responseBody) {\n super(message, statusCode, responseBody);\n this.name = \"RailtownServerError\";\n Object.setPrototypeOf(this, RailtownServerError.prototype);\n }\n}\n/**\n * Maps HTTP status codes to appropriate Railtown error classes.\n */\nfunction createRailtownError(statusCode, message, responseBody) {\n switch (statusCode) {\n case 401:\n return new RailtownUnauthorizedError(message, responseBody);\n case 404:\n return new RailtownNotFoundError(message, responseBody);\n case 400:\n return new RailtownBadRequestError(message, responseBody);\n case 409:\n return new RailtownConflictError(message, responseBody);\n default:\n if (statusCode >= 500) {\n return new RailtownServerError(message, statusCode, responseBody);\n }\n return new RailtownError(message || `HTTP ${statusCode}`, statusCode, responseBody);\n }\n}\n\n/**\n * Normalizes a URL by ensuring it has a protocol and proper path.\n *\n * @param url - The URL to normalize\n * @param defaultPath - Optional default path to append if no path is present\n * @returns Normalized URL string\n */\nfunction normalizeUrl(url, defaultPath) {\n let normalized = url.trim();\n // Add protocol if missing\n if (!normalized.match(/^https?:\\/\\//)) {\n normalized = `https://${normalized}`;\n }\n // Remove trailing slash\n normalized = normalized.replace(/\\/$/, \"\");\n // Append default path if provided and no path exists\n if (defaultPath && !normalized.match(/\\/[^/]/)) {\n const path = defaultPath.startsWith(\"/\") ? defaultPath : `/${defaultPath}`;\n normalized = `${normalized}${path}`;\n }\n return normalized;\n}\n/**\n * Strips the /api suffix from a URL if present.\n *\n * @param url - The URL to process\n * @returns URL without /api suffix\n */\nfunction stripApiSuffix(url) {\n return url.replace(/\\/api\\/?$/, \"\");\n}\n/**\n * Safely parses a JSON string with error handling.\n *\n * @param jsonString - JSON string to parse\n * @param errorMessage - Optional custom error message prefix\n * @returns Parsed JSON object\n * @throws {Error} If JSON parsing fails\n */\nfunction safeJsonParse(jsonString, errorMessage) {\n try {\n return JSON.parse(jsonString);\n }\n catch (error) {\n const message = errorMessage || \"Failed to parse JSON\";\n throw new Error(`${message}: ${error instanceof Error ? error.message : String(error)}`);\n }\n}\n\n/**\n * Makes an HTTP request with timeout support.\n *\n * @param url - Request URL\n * @param options - Request options\n * @returns Response object\n * @throws {Error} If request fails or times out\n */\nasync function makeHttpRequest(url, options = {}) {\n const { timeout = 30000, signal, ...fetchOptions } = options;\n const controller = new AbortController();\n const timeoutId = timeout > 0 ? setTimeout(() => controller.abort(), timeout) : null;\n try {\n const response = await fetch(url, {\n ...fetchOptions,\n signal: signal || controller.signal\n });\n if (timeoutId)\n clearTimeout(timeoutId);\n return response;\n }\n catch (error) {\n if (timeoutId)\n clearTimeout(timeoutId);\n throw error;\n }\n}\n/**\n * Handles HTTP response errors by creating appropriate RailtownError.\n *\n * @param response - HTTP response object\n * @param defaultMessage - Default error message\n * @returns Never (always throws)\n * @throws {RailtownError} Appropriate error based on status code\n */\nasync function handleHttpError(response, defaultMessage) {\n const responseBody = await getResponseBody(response);\n throw createRailtownError(response.status, defaultMessage, responseBody);\n}\n/**\n * Safely extracts response body as text, returning empty string on error.\n *\n * @param response - HTTP response object\n * @returns Response body as string (empty string if extraction fails)\n */\nasync function getResponseBody(response) {\n return await response.text().catch(() => \"\");\n}\n/**\n * Handles request errors (timeout, network, etc.) with consistent error messages.\n *\n * @param error - Caught error\n * @param timeout - Request timeout in milliseconds\n * @param context - Context description for error message\n * @returns Never (always throws)\n * @throws {RailtownError} If error is a RailtownError\n * @throws {Error} For timeout or other errors\n */\nfunction handleRequestError(error, timeout, context) {\n if (error instanceof RailtownError) {\n throw error;\n }\n if (error instanceof Error && error.name === \"AbortError\") {\n throw new Error(`Request timeout after ${timeout}ms`);\n }\n throw new Error(`${context}: ${error instanceof Error ? error.message : String(error)}`);\n}\n\nexport { RailtownBadRequestError, RailtownConflictError, RailtownError, RailtownNotFoundError, RailtownServerError, RailtownUnauthorizedError, createRailtownError, getResponseBody, handleHttpError, handleRequestError, makeHttpRequest, normalizeUrl, safeJsonParse, stripApiSuffix };\n//# sourceMappingURL=index.js.map\n",null,null,null,null,null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration data for RailEngine client.
|
|
3
|
+
*/
|
|
4
|
+
export interface RailEngineConfig {
|
|
5
|
+
/** Personal Access Token for authentication */
|
|
6
|
+
pat: string;
|
|
7
|
+
/** Engine identifier */
|
|
8
|
+
engineId: string;
|
|
9
|
+
/** Base API URL (original, as provided) */
|
|
10
|
+
apiUrl: string;
|
|
11
|
+
/** Normalized base API URL (with /api suffix stripped for internal use) */
|
|
12
|
+
normalizedApiUrl: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Validates and normalizes RailEngine configuration.
|
|
16
|
+
*
|
|
17
|
+
* @param pat - PAT token from options or environment variable
|
|
18
|
+
* @param engineId - Engine ID from options or environment variable
|
|
19
|
+
* @param apiUrl - Base API URL from options or environment variable
|
|
20
|
+
* @returns Validated and normalized configuration
|
|
21
|
+
* @throws {RailtownBadRequestError} If PAT or engineId is missing
|
|
22
|
+
*/
|
|
23
|
+
export declare function validateRailEngineConfig(pat?: string, engineId?: string, apiUrl?: string): RailEngineConfig;
|
|
24
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+CAA+C;IAC/C,GAAG,EAAE,MAAM,CAAC;IACZ,wBAAwB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,2EAA2E;IAC3E,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAiC3G"}
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* Options for configuring the RailEngine client.
|
|
4
|
+
*/
|
|
5
|
+
export interface RailEngineOptions<T = unknown> {
|
|
6
|
+
/** Personal Access Token. If not provided, reads from ENGINE_PAT environment variable. */
|
|
7
|
+
pat?: string;
|
|
8
|
+
/** Engine ID. If not provided, reads from ENGINE_ID environment variable. */
|
|
9
|
+
engineId?: string;
|
|
10
|
+
/** Base API URL. If not provided, reads from RAILTOWN_API_URL environment variable or defaults to production. */
|
|
11
|
+
apiUrl?: string;
|
|
12
|
+
/** Optional Zod schema for validating retrieved data. */
|
|
13
|
+
schema?: z.ZodSchema<T>;
|
|
14
|
+
/** Request timeout in milliseconds. Defaults to 30000 (30 seconds). */
|
|
15
|
+
timeout?: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Client for retrieving and searching data from Rail Engine.
|
|
19
|
+
*/
|
|
20
|
+
export declare class RailEngine<T = unknown> {
|
|
21
|
+
/** Personal Access Token for authentication */
|
|
22
|
+
readonly pat: string;
|
|
23
|
+
/** Engine identifier */
|
|
24
|
+
readonly engineId: string;
|
|
25
|
+
/** Base API URL (as provided, for display) */
|
|
26
|
+
readonly apiUrl: string;
|
|
27
|
+
/** Normalized base API URL (with /api suffix stripped, for internal use) */
|
|
28
|
+
private readonly normalizedApiUrl;
|
|
29
|
+
/** Optional Zod schema for data validation */
|
|
30
|
+
private readonly schema?;
|
|
31
|
+
/** Request timeout in milliseconds */
|
|
32
|
+
private readonly timeout;
|
|
33
|
+
/**
|
|
34
|
+
* Initialize the Rail Engine retrieval client.
|
|
35
|
+
*
|
|
36
|
+
* @param options - Configuration options
|
|
37
|
+
* @throws {RailtownBadRequestError} If PAT or engineId is missing
|
|
38
|
+
*/
|
|
39
|
+
constructor(options?: RailEngineOptions<T>);
|
|
40
|
+
/**
|
|
41
|
+
* Makes an authenticated HTTP request.
|
|
42
|
+
*
|
|
43
|
+
* @param method - HTTP method
|
|
44
|
+
* @param path - API path (will be appended to base URL)
|
|
45
|
+
* @param options - Request options
|
|
46
|
+
* @returns Response object
|
|
47
|
+
* @throws {RailtownError} If the request fails
|
|
48
|
+
*/
|
|
49
|
+
private _request;
|
|
50
|
+
/**
|
|
51
|
+
* Search a vector store using semantic similarity.
|
|
52
|
+
*
|
|
53
|
+
* @param engineId - Engine identifier
|
|
54
|
+
* @param vectorStore - Vector store name (e.g., "VectorStore1")
|
|
55
|
+
* @param query - Search query string
|
|
56
|
+
* @param options - Optional filter function and schema override
|
|
57
|
+
* @returns Async iterable of search results
|
|
58
|
+
*/
|
|
59
|
+
searchVectorStore(engineId: string, vectorStore: string, query: string, options?: {
|
|
60
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
61
|
+
schema?: z.ZodSchema<unknown>;
|
|
62
|
+
}): AsyncIterable<T | Record<string, unknown>>;
|
|
63
|
+
/**
|
|
64
|
+
* Get a storage document by EventId.
|
|
65
|
+
*
|
|
66
|
+
* @param params - Parameters object
|
|
67
|
+
* @param params.eventId - Event identifier
|
|
68
|
+
* @param params.engineId - Optional engine identifier (defaults to client.engineId)
|
|
69
|
+
* @param params.filterFn - Optional filter function
|
|
70
|
+
* @param params.schema - Optional schema override
|
|
71
|
+
* @param params.raw - If true, returns full wrapper object with metadata instead of deserialized Body
|
|
72
|
+
* @returns Document or null if not found. When a schema is provided (via constructor or options), returns T | null.
|
|
73
|
+
* When no schema is provided, returns Record<string, unknown> | null.
|
|
74
|
+
*/
|
|
75
|
+
getStorageDocumentByEventId(params: {
|
|
76
|
+
eventId: string;
|
|
77
|
+
engineId?: string;
|
|
78
|
+
filterFn?: (document: T | Record<string, unknown>) => boolean;
|
|
79
|
+
schema?: z.ZodSchema<unknown>;
|
|
80
|
+
raw?: boolean;
|
|
81
|
+
}): Promise<T | null>;
|
|
82
|
+
/**
|
|
83
|
+
* Get storage documents by CustomerKey.
|
|
84
|
+
*
|
|
85
|
+
* @param params - Parameters object
|
|
86
|
+
* @param params.customerKey - Customer key
|
|
87
|
+
* @param params.engineId - Optional engine identifier (defaults to client.engineId)
|
|
88
|
+
* @param params.pageNumber - Optional page number (defaults to 1)
|
|
89
|
+
* @param params.pageSize - Optional page size (defaults to 25, max 100)
|
|
90
|
+
* @param params.filterFn - Optional filter function
|
|
91
|
+
* @param params.schema - Optional schema override
|
|
92
|
+
* @param params.raw - If true, returns full wrapper object with metadata instead of deserialized Body
|
|
93
|
+
* @returns Promise that resolves to an array of documents. Pagination is handled automatically.
|
|
94
|
+
* When a schema is provided (via constructor or options), returns Promise<T[]>.
|
|
95
|
+
*/
|
|
96
|
+
getStorageDocumentByCustomerKey(params: {
|
|
97
|
+
customerKey: string;
|
|
98
|
+
engineId?: string;
|
|
99
|
+
pageNumber?: number;
|
|
100
|
+
pageSize?: number;
|
|
101
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
102
|
+
schema?: z.ZodSchema<unknown>;
|
|
103
|
+
raw?: boolean;
|
|
104
|
+
}): Promise<T[]>;
|
|
105
|
+
/**
|
|
106
|
+
* Query storage documents using JSONPath.
|
|
107
|
+
*
|
|
108
|
+
* @param params - Parameters object
|
|
109
|
+
* @param params.jsonPathQuery - JSONPath query string (e.g., "$.direct_report_id:1")
|
|
110
|
+
* @param params.engineId - Optional engine identifier (defaults to client.engineId)
|
|
111
|
+
* @param params.filterFn - Optional filter function
|
|
112
|
+
* @param params.schema - Optional schema override
|
|
113
|
+
* @param params.raw - If true, returns full wrapper object with metadata instead of deserialized Body
|
|
114
|
+
* @returns Promise that resolves to an array of matching documents.
|
|
115
|
+
* When a schema is provided (via constructor or options), returns Promise<T[]>.
|
|
116
|
+
*/
|
|
117
|
+
queryStorageByJsonPath(params: {
|
|
118
|
+
jsonPathQuery: string;
|
|
119
|
+
engineId?: string;
|
|
120
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
121
|
+
schema?: z.ZodSchema<unknown>;
|
|
122
|
+
raw?: boolean;
|
|
123
|
+
}): Promise<T[]>;
|
|
124
|
+
/**
|
|
125
|
+
* List storage documents.
|
|
126
|
+
*
|
|
127
|
+
* @param params - Parameters object
|
|
128
|
+
* @param params.engineId - Optional engine identifier (defaults to client.engineId)
|
|
129
|
+
* @param params.customerKey - Optional customer key filter
|
|
130
|
+
* @param params.pageNumber - Optional page number (defaults to 1)
|
|
131
|
+
* @param params.pageSize - Optional page size (defaults to 100, max 100)
|
|
132
|
+
* @param params.filterFn - Optional filter function
|
|
133
|
+
* @param params.schema - Optional schema override
|
|
134
|
+
* @param params.raw - If true, returns full wrapper object with metadata instead of deserialized Body
|
|
135
|
+
* @returns Promise that resolves to an array of documents. Pagination is handled automatically.
|
|
136
|
+
* When a schema is provided (via constructor or options), returns Promise<T[]>.
|
|
137
|
+
*/
|
|
138
|
+
listStorageDocuments(params?: {
|
|
139
|
+
engineId?: string;
|
|
140
|
+
customerKey?: string;
|
|
141
|
+
pageNumber?: number;
|
|
142
|
+
pageSize?: number;
|
|
143
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
144
|
+
schema?: z.ZodSchema<unknown>;
|
|
145
|
+
raw?: boolean;
|
|
146
|
+
}): Promise<T[]>;
|
|
147
|
+
/**
|
|
148
|
+
* Search index using Azure Search.
|
|
149
|
+
*
|
|
150
|
+
* @param projectId - Project identifier
|
|
151
|
+
* @param engineId - Engine identifier
|
|
152
|
+
* @param query - Search query object (e.g., { search: "query" })
|
|
153
|
+
* @param options - Optional filter function and schema override
|
|
154
|
+
* @returns Async iterable of search results
|
|
155
|
+
*/
|
|
156
|
+
searchIndex(projectId: string, engineId: string, query: Record<string, unknown>, options?: {
|
|
157
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
158
|
+
schema?: z.ZodSchema<unknown>;
|
|
159
|
+
}): AsyncIterable<T | Record<string, unknown>>;
|
|
160
|
+
/**
|
|
161
|
+
* Delete an event from the engine.
|
|
162
|
+
*
|
|
163
|
+
* @param params - Parameters object
|
|
164
|
+
* @param params.eventId - Event identifier to delete
|
|
165
|
+
* @param params.engineId - Optional engine identifier (defaults to client.engineId)
|
|
166
|
+
* @returns Promise that resolves when deletion is successful or accepted
|
|
167
|
+
* @throws {RailtownNotFoundError} If engine is not found (404)
|
|
168
|
+
* @throws {RailtownServerError} If service is unavailable (503)
|
|
169
|
+
* @throws {RailtownUnauthorizedError} If authentication fails (401)
|
|
170
|
+
*
|
|
171
|
+
* The operation is idempotent - calling deleteEvent multiple times with the same eventId
|
|
172
|
+
* will succeed. The API returns:
|
|
173
|
+
* - 204: Event deleted immediately or already deleted
|
|
174
|
+
* - 202: Deletion accepted, may take time (eventually consistent)
|
|
175
|
+
*/
|
|
176
|
+
deleteEvent(params: {
|
|
177
|
+
eventId: string;
|
|
178
|
+
engineId?: string;
|
|
179
|
+
}): Promise<void>;
|
|
180
|
+
/**
|
|
181
|
+
* Internal method to make authenticated requests (used by API modules).
|
|
182
|
+
*
|
|
183
|
+
* @internal
|
|
184
|
+
*/
|
|
185
|
+
_makeRequest(method: string, path: string, options?: {
|
|
186
|
+
body?: unknown;
|
|
187
|
+
queryParams?: Record<string, string>;
|
|
188
|
+
}): Promise<Response>;
|
|
189
|
+
/**
|
|
190
|
+
* Get the default schema for this client.
|
|
191
|
+
*
|
|
192
|
+
* @internal
|
|
193
|
+
*/
|
|
194
|
+
_getSchema(): z.ZodSchema<unknown> | undefined;
|
|
195
|
+
}
|
|
196
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { RailEngine } from "./client.js";
|
|
3
|
+
/**
|
|
4
|
+
* Search a vector store using semantic similarity.
|
|
5
|
+
*
|
|
6
|
+
* @param client - RailEngine client instance
|
|
7
|
+
* @param engineId - Engine identifier
|
|
8
|
+
* @param vectorStore - Vector store name (e.g., "VectorStore1", "VectorStore2", "VectorStore3")
|
|
9
|
+
* @param query - Search query string
|
|
10
|
+
* @param options - Optional filter function and schema override
|
|
11
|
+
* @returns Async iterable of search results (validated against schema if provided)
|
|
12
|
+
*/
|
|
13
|
+
export declare function searchVectorStore<T = unknown>(client: RailEngine<T>, engineId: string, vectorStore: string, query: string, options?: {
|
|
14
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
15
|
+
schema?: z.ZodSchema<unknown>;
|
|
16
|
+
}): AsyncIterable<T | Record<string, unknown>>;
|
|
17
|
+
//# sourceMappingURL=embeddings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embeddings.d.ts","sourceRoot":"","sources":["../../src/embeddings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;;GASG;AACH,wBAAuB,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAClD,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EACrB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;IAC1D,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;CAC/B,GACA,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA0D5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { RailEngine } from "./client.js";
|
|
3
|
+
/**
|
|
4
|
+
* Search index using Azure Search.
|
|
5
|
+
*
|
|
6
|
+
* @param client - RailEngine client instance
|
|
7
|
+
* @param projectId - Project identifier
|
|
8
|
+
* @param engineId - Engine identifier
|
|
9
|
+
* @param query - Search query object (e.g., { search: "query" })
|
|
10
|
+
* @param options - Optional filter function and schema override
|
|
11
|
+
* @returns Async iterable of search results (validated against schema if provided)
|
|
12
|
+
*/
|
|
13
|
+
export declare function searchIndex<T = unknown>(client: RailEngine<T>, projectId: string, engineId: string, query: Record<string, unknown>, options?: {
|
|
14
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
15
|
+
schema?: z.ZodSchema<unknown>;
|
|
16
|
+
}): AsyncIterable<T | Record<string, unknown>>;
|
|
17
|
+
//# sourceMappingURL=indexing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexing.d.ts","sourceRoot":"","sources":["../../src/indexing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;;GASG;AACH,wBAAuB,WAAW,CAAC,CAAC,GAAG,OAAO,EAC5C,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EACrB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;IAC1D,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;CAC/B,GACA,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA6D5C"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { RailEngine } from "./client.js";
|
|
3
|
+
/**
|
|
4
|
+
* Get a storage document by EventId.
|
|
5
|
+
*
|
|
6
|
+
* @param client - RailEngine client instance
|
|
7
|
+
* @param engineId - Engine identifier
|
|
8
|
+
* @param eventId - Event identifier
|
|
9
|
+
* @param options - Optional filter function and schema override
|
|
10
|
+
* @returns Document or null if not found or filtered out
|
|
11
|
+
*/
|
|
12
|
+
export declare function getStorageDocumentByEventId<T = unknown>(client: RailEngine<T>, engineId: string, eventId: string, options?: {
|
|
13
|
+
filterFn?: (document: T | Record<string, unknown>) => boolean;
|
|
14
|
+
schema?: z.ZodSchema<unknown>;
|
|
15
|
+
raw?: boolean;
|
|
16
|
+
}): Promise<T | Record<string, unknown> | null>;
|
|
17
|
+
/**
|
|
18
|
+
* Get storage documents by CustomerKey.
|
|
19
|
+
*
|
|
20
|
+
* @param client - RailEngine client instance
|
|
21
|
+
* @param engineId - Engine identifier
|
|
22
|
+
* @param customerKey - Customer key
|
|
23
|
+
* @param options - Optional pagination, filter function, and schema override
|
|
24
|
+
* @returns Async iterable of documents (paginated results automatically flattened and filtered)
|
|
25
|
+
*/
|
|
26
|
+
export declare function getStorageDocumentByCustomerKey<T = unknown>(client: RailEngine<T>, engineId: string, customerKey: string, options?: {
|
|
27
|
+
pageNumber?: number;
|
|
28
|
+
pageSize?: number;
|
|
29
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
30
|
+
schema?: z.ZodSchema<unknown>;
|
|
31
|
+
raw?: boolean;
|
|
32
|
+
}): AsyncIterable<T | Record<string, unknown>>;
|
|
33
|
+
/**
|
|
34
|
+
* Query storage documents using JSONPath.
|
|
35
|
+
*
|
|
36
|
+
* @param client - RailEngine client instance
|
|
37
|
+
* @param engineId - Engine identifier
|
|
38
|
+
* @param jsonPathQuery - JSONPath query string (e.g., "$.direct_report_id:1")
|
|
39
|
+
* @param options - Optional filter function and schema override
|
|
40
|
+
* @returns Async iterable of matching documents
|
|
41
|
+
*/
|
|
42
|
+
export declare function queryStorageByJsonPath<T = unknown>(client: RailEngine<T>, engineId: string, jsonPathQuery: string, options?: {
|
|
43
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
44
|
+
schema?: z.ZodSchema<unknown>;
|
|
45
|
+
raw?: boolean;
|
|
46
|
+
}): AsyncIterable<T | Record<string, unknown>>;
|
|
47
|
+
/**
|
|
48
|
+
* List storage documents.
|
|
49
|
+
*
|
|
50
|
+
* @param client - RailEngine client instance
|
|
51
|
+
* @param engineId - Engine identifier
|
|
52
|
+
* @param options - Optional pagination, customer key filter, filter function, and schema override
|
|
53
|
+
* @returns Async iterable of documents (paginated results automatically flattened and filtered)
|
|
54
|
+
*/
|
|
55
|
+
export declare function listStorageDocuments<T = unknown>(client: RailEngine<T>, engineId: string, options?: {
|
|
56
|
+
customerKey?: string;
|
|
57
|
+
pageNumber?: number;
|
|
58
|
+
pageSize?: number;
|
|
59
|
+
filterFn?: (item: T | Record<string, unknown>) => boolean;
|
|
60
|
+
schema?: z.ZodSchema<unknown>;
|
|
61
|
+
raw?: boolean;
|
|
62
|
+
}): AsyncIterable<T | Record<string, unknown>>;
|
|
63
|
+
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAuD9C;;;;;;;;GAQG;AACH,wBAAsB,2BAA2B,CAAC,CAAC,GAAG,OAAO,EAC3D,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;IAC9D,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9B,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,GACA,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CA4D7C;AAED;;;;;;;;GAQG;AACH,wBAAuB,+BAA+B,CAAC,CAAC,GAAG,OAAO,EAChE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EACrB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IACR,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;IAC1D,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9B,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,GACA,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAiF5C;AAED;;;;;;;;GAQG;AACH,wBAAuB,sBAAsB,CAAC,CAAC,GAAG,OAAO,EACvD,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EACrB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;IAC1D,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9B,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,GACA,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAgE5C;AAED;;;;;;;GAOG;AACH,wBAAuB,oBAAoB,CAAC,CAAC,GAAG,OAAO,EACrD,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IACR,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;IAC1D,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9B,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,GACA,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAuF5C"}
|
package/package.json
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@railtownai/railengine",
|
|
3
|
+
"license": "MIT",
|
|
4
|
+
"author": "Railtown AI",
|
|
5
|
+
"version": "0.0.1",
|
|
6
|
+
"description": "JavaScript/TypeScript SDK for Railtown AI Rail Engine - Retrieval",
|
|
7
|
+
"type": "module",
|
|
8
|
+
"main": "./dist/cjs/index.js",
|
|
9
|
+
"types": "./dist/types/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/types/index.d.ts",
|
|
13
|
+
"import": "./dist/esm/index.js",
|
|
14
|
+
"require": "./dist/cjs/index.js"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist",
|
|
19
|
+
"README.md"
|
|
20
|
+
],
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"zod": "4.3.6"
|
|
23
|
+
},
|
|
24
|
+
"devDependencies": {
|
|
25
|
+
"@rollup/plugin-node-resolve": "16.0.3",
|
|
26
|
+
"@rollup/plugin-typescript": "12.3.0",
|
|
27
|
+
"@types/node": "25.0.10",
|
|
28
|
+
"prettier": "3.8.1",
|
|
29
|
+
"rimraf": "6.1.2",
|
|
30
|
+
"rollup": "4.57.0",
|
|
31
|
+
"tslib": "2.8.1",
|
|
32
|
+
"typescript": "5.9.3",
|
|
33
|
+
"vitest": "4.0.18",
|
|
34
|
+
"@railtownai/shared": "0.0.1"
|
|
35
|
+
},
|
|
36
|
+
"engines": {
|
|
37
|
+
"node": ">=20.0.0"
|
|
38
|
+
},
|
|
39
|
+
"scripts": {
|
|
40
|
+
"clean": "rimraf dist",
|
|
41
|
+
"build": "rollup -c && tsc --project tsconfig.types.json",
|
|
42
|
+
"test": "vitest run --passWithNoTests",
|
|
43
|
+
"format": "prettier --write src",
|
|
44
|
+
"update": "npx npm-check-updates -u",
|
|
45
|
+
"dry-run": "pnpm publish --no-git-checks --access public --registry https://registry.npmjs.org --dry-run"
|
|
46
|
+
}
|
|
47
|
+
}
|