@simpleapps-com/augur-api 0.2.3 → 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/README.md +100 -0
- package/dist/cjs/client.d.ts +181 -0
- package/dist/cjs/client.d.ts.map +1 -1
- package/dist/cjs/client.js +449 -0
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/core/base-client.d.ts +104 -0
- package/dist/cjs/core/base-client.d.ts.map +1 -1
- package/dist/cjs/core/base-client.js +201 -0
- package/dist/cjs/core/base-client.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/services/agr-site/client.d.ts +522 -2
- package/dist/cjs/services/agr-site/client.d.ts.map +1 -1
- package/dist/cjs/services/agr-site/client.js +565 -12
- package/dist/cjs/services/agr-site/client.js.map +1 -1
- package/dist/cjs/services/items/client.d.ts +2 -2
- package/dist/cjs/services/items/schemas/categories.d.ts +20 -20
- package/dist/cjs/services/joomla/client.d.ts +644 -99
- package/dist/cjs/services/joomla/client.d.ts.map +1 -1
- package/dist/cjs/services/joomla/client.js +467 -98
- package/dist/cjs/services/joomla/client.js.map +1 -1
- package/dist/cjs/services/nexus/client.d.ts +1096 -22
- package/dist/cjs/services/nexus/client.d.ts.map +1 -1
- package/dist/cjs/services/nexus/client.js +754 -22
- package/dist/cjs/services/nexus/client.js.map +1 -1
- package/dist/cjs/services/orders/client.d.ts +3 -3
- package/dist/cjs/services/orders/schemas/orders.d.ts +12 -12
- package/dist/cjs/services/orders/schemas/purchase-orders.d.ts +22 -22
- package/dist/cjs/services/p21-core/client.d.ts +627 -0
- package/dist/cjs/services/p21-core/client.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/client.js +704 -0
- package/dist/cjs/services/p21-core/client.js.map +1 -0
- package/dist/cjs/services/p21-core/index.d.ts +3 -0
- package/dist/cjs/services/p21-core/index.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/index.js +21 -0
- package/dist/cjs/services/p21-core/index.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/address.d.ts +88 -0
- package/dist/cjs/services/p21-core/schemas/address.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/address.js +45 -0
- package/dist/cjs/services/p21-core/schemas/address.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/cash-drawer.d.ts +96 -0
- package/dist/cjs/services/p21-core/schemas/cash-drawer.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/cash-drawer.js +39 -0
- package/dist/cjs/services/p21-core/schemas/cash-drawer.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/codes.d.ts +54 -0
- package/dist/cjs/services/p21-core/schemas/codes.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/codes.js +25 -0
- package/dist/cjs/services/p21-core/schemas/codes.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/company.d.ts +80 -0
- package/dist/cjs/services/p21-core/schemas/company.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/company.js +35 -0
- package/dist/cjs/services/p21-core/schemas/company.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/health.d.ts +46 -0
- package/dist/cjs/services/p21-core/schemas/health.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/health.js +7 -0
- package/dist/cjs/services/p21-core/schemas/health.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/index.d.ts +8 -0
- package/dist/cjs/services/p21-core/schemas/index.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/index.js +25 -0
- package/dist/cjs/services/p21-core/schemas/index.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/location.d.ts +84 -0
- package/dist/cjs/services/p21-core/schemas/location.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/location.js +35 -0
- package/dist/cjs/services/p21-core/schemas/location.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/payment-types.d.ts +39 -0
- package/dist/cjs/services/p21-core/schemas/payment-types.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/payment-types.js +26 -0
- package/dist/cjs/services/p21-core/schemas/payment-types.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas.d.ts +2 -0
- package/dist/cjs/services/p21-core/schemas.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas.js +19 -0
- package/dist/cjs/services/p21-core/schemas.js.map +1 -0
- package/dist/cjs/services/vmi/schemas/inventory.d.ts +6 -6
- package/dist/cjs/services/vmi/schemas/products.d.ts +6 -6
- package/dist/cjs/services/vmi/schemas/restock.d.ts +12 -12
- package/dist/esm/client.d.ts +181 -0
- package/dist/esm/client.d.ts.map +1 -1
- package/dist/esm/client.js +449 -0
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/core/base-client.d.ts +104 -0
- package/dist/esm/core/base-client.d.ts.map +1 -1
- package/dist/esm/core/base-client.js +201 -0
- package/dist/esm/core/base-client.js.map +1 -1
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/services/agr-site/client.d.ts +522 -2
- package/dist/esm/services/agr-site/client.d.ts.map +1 -1
- package/dist/esm/services/agr-site/client.js +565 -12
- package/dist/esm/services/agr-site/client.js.map +1 -1
- package/dist/esm/services/items/client.d.ts +2 -2
- package/dist/esm/services/items/schemas/categories.d.ts +20 -20
- package/dist/esm/services/joomla/client.d.ts +644 -99
- package/dist/esm/services/joomla/client.d.ts.map +1 -1
- package/dist/esm/services/joomla/client.js +467 -98
- package/dist/esm/services/joomla/client.js.map +1 -1
- package/dist/esm/services/nexus/client.d.ts +1096 -22
- package/dist/esm/services/nexus/client.d.ts.map +1 -1
- package/dist/esm/services/nexus/client.js +754 -22
- package/dist/esm/services/nexus/client.js.map +1 -1
- package/dist/esm/services/orders/client.d.ts +3 -3
- package/dist/esm/services/orders/schemas/orders.d.ts +12 -12
- package/dist/esm/services/orders/schemas/purchase-orders.d.ts +22 -22
- package/dist/esm/services/p21-core/client.d.ts +627 -0
- package/dist/esm/services/p21-core/client.d.ts.map +1 -0
- package/dist/esm/services/p21-core/client.js +700 -0
- package/dist/esm/services/p21-core/client.js.map +1 -0
- package/dist/esm/services/p21-core/index.d.ts +3 -0
- package/dist/esm/services/p21-core/index.d.ts.map +1 -0
- package/dist/esm/services/p21-core/index.js +3 -0
- package/dist/esm/services/p21-core/index.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/address.d.ts +88 -0
- package/dist/esm/services/p21-core/schemas/address.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/address.js +42 -0
- package/dist/esm/services/p21-core/schemas/address.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/cash-drawer.d.ts +96 -0
- package/dist/esm/services/p21-core/schemas/cash-drawer.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/cash-drawer.js +36 -0
- package/dist/esm/services/p21-core/schemas/cash-drawer.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/codes.d.ts +54 -0
- package/dist/esm/services/p21-core/schemas/codes.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/codes.js +22 -0
- package/dist/esm/services/p21-core/schemas/codes.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/company.d.ts +80 -0
- package/dist/esm/services/p21-core/schemas/company.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/company.js +32 -0
- package/dist/esm/services/p21-core/schemas/company.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/health.d.ts +46 -0
- package/dist/esm/services/p21-core/schemas/health.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/health.js +4 -0
- package/dist/esm/services/p21-core/schemas/health.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/index.d.ts +8 -0
- package/dist/esm/services/p21-core/schemas/index.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/index.js +9 -0
- package/dist/esm/services/p21-core/schemas/index.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/location.d.ts +84 -0
- package/dist/esm/services/p21-core/schemas/location.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/location.js +32 -0
- package/dist/esm/services/p21-core/schemas/location.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/payment-types.d.ts +39 -0
- package/dist/esm/services/p21-core/schemas/payment-types.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/payment-types.js +23 -0
- package/dist/esm/services/p21-core/schemas/payment-types.js.map +1 -0
- package/dist/esm/services/p21-core/schemas.d.ts +2 -0
- package/dist/esm/services/p21-core/schemas.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas.js +3 -0
- package/dist/esm/services/p21-core/schemas.js.map +1 -0
- package/dist/esm/services/vmi/schemas/inventory.d.ts +6 -6
- package/dist/esm/services/vmi/schemas/products.d.ts +6 -6
- package/dist/esm/services/vmi/schemas/restock.d.ts +12 -12
- package/dist/types/client.d.ts +181 -0
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/core/base-client.d.ts +104 -0
- package/dist/types/core/base-client.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/services/agr-site/client.d.ts +522 -2
- package/dist/types/services/agr-site/client.d.ts.map +1 -1
- package/dist/types/services/items/client.d.ts +2 -2
- package/dist/types/services/items/schemas/categories.d.ts +20 -20
- package/dist/types/services/joomla/client.d.ts +644 -99
- package/dist/types/services/joomla/client.d.ts.map +1 -1
- package/dist/types/services/nexus/client.d.ts +1096 -22
- package/dist/types/services/nexus/client.d.ts.map +1 -1
- package/dist/types/services/orders/client.d.ts +3 -3
- package/dist/types/services/orders/schemas/orders.d.ts +12 -12
- package/dist/types/services/orders/schemas/purchase-orders.d.ts +22 -22
- package/dist/types/services/p21-core/client.d.ts +627 -0
- package/dist/types/services/p21-core/client.d.ts.map +1 -0
- package/dist/types/services/p21-core/index.d.ts +3 -0
- package/dist/types/services/p21-core/index.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/address.d.ts +88 -0
- package/dist/types/services/p21-core/schemas/address.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/cash-drawer.d.ts +96 -0
- package/dist/types/services/p21-core/schemas/cash-drawer.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/codes.d.ts +54 -0
- package/dist/types/services/p21-core/schemas/codes.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/company.d.ts +80 -0
- package/dist/types/services/p21-core/schemas/company.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/health.d.ts +46 -0
- package/dist/types/services/p21-core/schemas/health.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/index.d.ts +8 -0
- package/dist/types/services/p21-core/schemas/index.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/location.d.ts +84 -0
- package/dist/types/services/p21-core/schemas/location.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/payment-types.d.ts +39 -0
- package/dist/types/services/p21-core/schemas/payment-types.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas.d.ts +2 -0
- package/dist/types/services/p21-core/schemas.d.ts.map +1 -0
- package/dist/types/services/vmi/schemas/inventory.d.ts +6 -6
- package/dist/types/services/vmi/schemas/products.d.ts +6 -6
- package/dist/types/services/vmi/schemas/restock.d.ts +12 -12
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -5,6 +5,7 @@ A comprehensive TypeScript client library for accessing Augur microservices with
|
|
|
5
5
|
## Table of Contents
|
|
6
6
|
|
|
7
7
|
- [Overview](#overview)
|
|
8
|
+
- [🎯 AI-Powered Discovery System - Where Code Writes Itself](#-ai-powered-discovery-system---where-code-writes-itself)
|
|
8
9
|
- [Features](#features)
|
|
9
10
|
- [Installation](#installation)
|
|
10
11
|
- [Getting Started](#getting-started)
|
|
@@ -31,8 +32,107 @@ The Augur API Client Library provides a unified TypeScript SDK for accessing Aug
|
|
|
31
32
|
- **Runtime Validation**: Zod schemas validate all requests and responses
|
|
32
33
|
- **Developer Experience**: Rich JSDoc documentation and IntelliSense support
|
|
33
34
|
|
|
35
|
+
## IDE Support & AI Assistant Integration
|
|
36
|
+
|
|
37
|
+
This client library is designed to work seamlessly with modern IDEs and AI coding assistants through comprehensive semantic documentation.
|
|
38
|
+
|
|
39
|
+
### IntelliSense & Auto-completion
|
|
40
|
+
|
|
41
|
+
Every method includes detailed JSDoc with:
|
|
42
|
+
- **Parameter descriptions** and types
|
|
43
|
+
- **Usage examples** with real code
|
|
44
|
+
- **Related methods** and cross-service connections
|
|
45
|
+
- **Business context** and workflow information
|
|
46
|
+
|
|
47
|
+
```typescript
|
|
48
|
+
client.agrSite.settings. // ← IDE shows all available methods with descriptions
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### AI Assistant Features
|
|
52
|
+
|
|
53
|
+
The semantic JSDoc tags help AI assistants understand:
|
|
54
|
+
|
|
55
|
+
```typescript
|
|
56
|
+
/**
|
|
57
|
+
* @searchTerms ["settings", "configuration", "site config"]
|
|
58
|
+
* @relatedEndpoints ["api.agrSite.settings.get", "api.agrSite.settings.update"]
|
|
59
|
+
* @workflow ["settings-management", "site-configuration"]
|
|
60
|
+
* @commonPatterns ["Get all settings", "List site configuration"]
|
|
61
|
+
*/
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
This means when you ask an AI assistant to "help me manage site settings", it can:
|
|
65
|
+
1. Find the right service (`agrSite.settings`)
|
|
66
|
+
2. Suggest the correct method (`list`, `get`, `create`, etc.)
|
|
67
|
+
3. Show related operations you might need
|
|
68
|
+
4. Provide complete workflow examples
|
|
69
|
+
|
|
70
|
+
### Dual API Pattern
|
|
71
|
+
|
|
72
|
+
Each service provides two ways to call methods:
|
|
73
|
+
|
|
74
|
+
```typescript
|
|
75
|
+
// Standard method - returns full response with metadata
|
|
76
|
+
const response = await client.agrSite.settings.list();
|
|
77
|
+
console.log(response.data, response.total, response.message);
|
|
78
|
+
|
|
79
|
+
// Data method - returns only the data portion
|
|
80
|
+
const settings = await client.agrSite.settings.listData();
|
|
81
|
+
console.log(settings); // Direct array access
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### API Discovery Functions
|
|
85
|
+
|
|
86
|
+
The client provides discovery functions for exploring available services and endpoints:
|
|
87
|
+
|
|
88
|
+
#### `discover()` - Service Map
|
|
89
|
+
|
|
90
|
+
Get an overview of available services and their discoverable endpoints:
|
|
91
|
+
|
|
92
|
+
```typescript
|
|
93
|
+
const api = new AugurAPI({ siteId: 'my-site', bearerToken: 'token' });
|
|
94
|
+
const services = await api.discover();
|
|
95
|
+
|
|
96
|
+
// Returns ServiceMap[] with:
|
|
97
|
+
// - serviceName: string
|
|
98
|
+
// - description: string
|
|
99
|
+
// - baseUrl: string
|
|
100
|
+
// - endpointCount: number
|
|
101
|
+
// - endpoints: DiscoveryEndpoint[]
|
|
102
|
+
|
|
103
|
+
services.forEach(service => {
|
|
104
|
+
console.log(`${service.serviceName}: ${service.endpointCount} endpoints`);
|
|
105
|
+
});
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
#### `findEndpoint()` - Endpoint Search
|
|
109
|
+
|
|
110
|
+
Search across services for endpoints matching a search term:
|
|
111
|
+
|
|
112
|
+
```typescript
|
|
113
|
+
// Basic search
|
|
114
|
+
const results = await api.findEndpoint('users');
|
|
115
|
+
|
|
116
|
+
// With options
|
|
117
|
+
const results = await api.findEndpoint('settings', {
|
|
118
|
+
minScore: 0.1, // Minimum relevance score (default: 0.1)
|
|
119
|
+
maxResults: 10, // Max results (default: 10)
|
|
120
|
+
service: 'agrSite', // Filter by service
|
|
121
|
+
domain: 'site-content-management', // Filter by domain
|
|
122
|
+
readOnly: true // Only GET endpoints
|
|
123
|
+
});
|
|
124
|
+
|
|
125
|
+
// Returns EndpointSearchResult[] with:
|
|
126
|
+
// - endpoint: DiscoveryEndpoint (with fullPath, service, domain, etc.)
|
|
127
|
+
// - score: number (0-1 relevance)
|
|
128
|
+
// - matchReason: string
|
|
129
|
+
```
|
|
130
|
+
|
|
34
131
|
## Features
|
|
35
132
|
|
|
133
|
+
✅ **AI-Powered Discovery** - Natural language search finds any functionality instantly
|
|
134
|
+
✅ **Semantic Intelligence** - Understands business context and suggests workflows
|
|
135
|
+
✅ **Cross-Service Awareness** - Maps relationships between all microservices
|
|
36
136
|
✅ **Simple API** - Intuitive method names following REST conventions
|
|
37
137
|
✅ **Type Safe** - Full TypeScript support with auto-completion
|
|
38
138
|
✅ **Runtime Validation** - Zod schemas validate all requests and responses
|
package/dist/cjs/client.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { AugurAPIConfig } from './core/config';
|
|
2
|
+
import { DiscoveryEndpoint as BaseDiscoveryEndpoint } from './core/base-client';
|
|
2
3
|
import { JoomlaClient } from './services/joomla';
|
|
3
4
|
import { CommerceClient } from './services/commerce';
|
|
4
5
|
import { PricingClient } from './services/pricing';
|
|
@@ -12,6 +13,36 @@ import { CustomersClient } from './services/customers';
|
|
|
12
13
|
import { OrdersClient } from './services/orders';
|
|
13
14
|
import { P21PimClient } from './services/p21-pim';
|
|
14
15
|
import { PaymentsClient } from './services/payments';
|
|
16
|
+
/**
|
|
17
|
+
* Interface for discovery endpoint information - re-export base discovery endpoint
|
|
18
|
+
*/
|
|
19
|
+
export type DiscoveryEndpoint = BaseDiscoveryEndpoint;
|
|
20
|
+
/**
|
|
21
|
+
* Interface for service discovery results
|
|
22
|
+
*/
|
|
23
|
+
export interface ServiceMap {
|
|
24
|
+
/** Service name */
|
|
25
|
+
serviceName: string;
|
|
26
|
+
/** Service description */
|
|
27
|
+
description: string;
|
|
28
|
+
/** Base URL for the service */
|
|
29
|
+
baseUrl: string;
|
|
30
|
+
/** Number of discoverable endpoints */
|
|
31
|
+
endpointCount: number;
|
|
32
|
+
/** Array of discoverable endpoints */
|
|
33
|
+
endpoints: DiscoveryEndpoint[];
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Interface for endpoint search results
|
|
37
|
+
*/
|
|
38
|
+
export interface EndpointSearchResult {
|
|
39
|
+
/** The matching endpoint */
|
|
40
|
+
endpoint: DiscoveryEndpoint;
|
|
41
|
+
/** Relevance score (0-1) */
|
|
42
|
+
score: number;
|
|
43
|
+
/** Reason why this endpoint matched */
|
|
44
|
+
matchReason: string;
|
|
45
|
+
}
|
|
15
46
|
/**
|
|
16
47
|
* Main client factory for accessing Augur microservices
|
|
17
48
|
*
|
|
@@ -172,5 +203,155 @@ export declare class AugurAPI {
|
|
|
172
203
|
* @param siteId New site ID
|
|
173
204
|
*/
|
|
174
205
|
setSiteId(siteId: string): void;
|
|
206
|
+
/**
|
|
207
|
+
* Discover all available services and their capabilities
|
|
208
|
+
*
|
|
209
|
+
* Returns a complete service map showing all discoverable endpoints across
|
|
210
|
+
* all microservices, enabling AI agents to understand the full API topology.
|
|
211
|
+
*
|
|
212
|
+
* @returns Promise<ServiceMap[]> Array of service maps with endpoint metadata
|
|
213
|
+
*
|
|
214
|
+
* @example
|
|
215
|
+
* ```typescript
|
|
216
|
+
* const api = new AugurAPI({ siteId: 'my-site', bearerToken: 'token' });
|
|
217
|
+
* const services = await api.discover();
|
|
218
|
+
*
|
|
219
|
+
* // Find all user-related endpoints
|
|
220
|
+
* const userEndpoints = services.flatMap(s => s.endpoints)
|
|
221
|
+
* .filter(e => e.searchTerms.some(term => term.includes('user')));
|
|
222
|
+
*
|
|
223
|
+
* // Show service capabilities
|
|
224
|
+
* services.forEach(service => {
|
|
225
|
+
* console.log(`${service.serviceName}: ${service.endpointCount} endpoints`);
|
|
226
|
+
* service.endpoints.forEach(endpoint => {
|
|
227
|
+
* console.log(` ${endpoint.fullPath} - ${endpoint.description}`);
|
|
228
|
+
* });
|
|
229
|
+
* });
|
|
230
|
+
* ```
|
|
231
|
+
*/
|
|
232
|
+
discover(): Promise<ServiceMap[]>;
|
|
233
|
+
/**
|
|
234
|
+
* Find endpoints by search term or functionality description
|
|
235
|
+
*
|
|
236
|
+
* Searches across all services to find endpoints that match the given search term.
|
|
237
|
+
* Uses intelligent matching against endpoint descriptions, search terms, domains,
|
|
238
|
+
* and common usage patterns.
|
|
239
|
+
*
|
|
240
|
+
* @param searchTerm The functionality or term to search for
|
|
241
|
+
* @param options Search options for filtering and ranking
|
|
242
|
+
* @returns Promise<EndpointSearchResult[]> Array of matching endpoints with relevance scores
|
|
243
|
+
*
|
|
244
|
+
* @example
|
|
245
|
+
* ```typescript
|
|
246
|
+
* const api = new AugurAPI({ siteId: 'my-site', bearerToken: 'token' });
|
|
247
|
+
*
|
|
248
|
+
* // Find user-related endpoints
|
|
249
|
+
* const userEndpoints = await api.findEndpoint('users');
|
|
250
|
+
* console.log(`Found ${userEndpoints.length} user-related endpoints`);
|
|
251
|
+
*
|
|
252
|
+
* // Find authentication endpoints
|
|
253
|
+
* const authEndpoints = await api.findEndpoint('authentication');
|
|
254
|
+
*
|
|
255
|
+
* // Find inventory management
|
|
256
|
+
* const inventoryEndpoints = await api.findEndpoint('inventory management');
|
|
257
|
+
*
|
|
258
|
+
* // Show results with scores
|
|
259
|
+
* userEndpoints.forEach(result => {
|
|
260
|
+
* console.log(`${result.endpoint.fullPath} (${result.score.toFixed(2)}) - ${result.matchReason}`);
|
|
261
|
+
* });
|
|
262
|
+
* ```
|
|
263
|
+
*/
|
|
264
|
+
findEndpoint(searchTerm: string, options?: {
|
|
265
|
+
/** Minimum relevance score (0-1, default: 0.1) */
|
|
266
|
+
minScore?: number;
|
|
267
|
+
/** Maximum number of results (default: 10) */
|
|
268
|
+
maxResults?: number;
|
|
269
|
+
/** Filter by specific service */
|
|
270
|
+
service?: string;
|
|
271
|
+
/** Filter by business domain */
|
|
272
|
+
domain?: string;
|
|
273
|
+
/** Include only GET endpoints */
|
|
274
|
+
readOnly?: boolean;
|
|
275
|
+
}): Promise<EndpointSearchResult[]>;
|
|
276
|
+
/**
|
|
277
|
+
* Get endpoints filtered by service, domain, and method options
|
|
278
|
+
*/
|
|
279
|
+
private getFilteredEndpoints;
|
|
280
|
+
/**
|
|
281
|
+
* Search and score endpoints against search term
|
|
282
|
+
*/
|
|
283
|
+
private searchAndScoreEndpoints;
|
|
284
|
+
/**
|
|
285
|
+
* Check if endpoint has required fields
|
|
286
|
+
*/
|
|
287
|
+
private isValidEndpoint;
|
|
288
|
+
/**
|
|
289
|
+
* Calculate final score with domain filter adjustments
|
|
290
|
+
*/
|
|
291
|
+
private calculateFinalScore;
|
|
292
|
+
/**
|
|
293
|
+
* Calculate relevance score for an endpoint against a search term
|
|
294
|
+
*/
|
|
295
|
+
private calculateEndpointRelevance;
|
|
296
|
+
/**
|
|
297
|
+
* Process exact matches with appropriate combining logic
|
|
298
|
+
*/
|
|
299
|
+
private processExactMatches;
|
|
300
|
+
/**
|
|
301
|
+
* Check if match type should be exclusive (no combining)
|
|
302
|
+
*/
|
|
303
|
+
private isExclusiveMatch;
|
|
304
|
+
/**
|
|
305
|
+
* Check if match type can be combined with partial matches
|
|
306
|
+
*/
|
|
307
|
+
private isCombinableMatch;
|
|
308
|
+
/**
|
|
309
|
+
* Process fallback matches when no exact match found
|
|
310
|
+
*/
|
|
311
|
+
private processFallbackMatches;
|
|
312
|
+
/**
|
|
313
|
+
* Calculate exact field matches with high scores
|
|
314
|
+
*/
|
|
315
|
+
private calculateExactMatches;
|
|
316
|
+
/**
|
|
317
|
+
* Check for path substring matches
|
|
318
|
+
*/
|
|
319
|
+
private checkPathSubstringMatch;
|
|
320
|
+
/**
|
|
321
|
+
* Check for description substring matches
|
|
322
|
+
*/
|
|
323
|
+
private checkDescriptionSubstringMatch;
|
|
324
|
+
/**
|
|
325
|
+
* Check for other substring matches (domain, service)
|
|
326
|
+
*/
|
|
327
|
+
private checkOtherSubstringMatches;
|
|
328
|
+
/**
|
|
329
|
+
* Check for exact field matches
|
|
330
|
+
*/
|
|
331
|
+
private checkExactFieldMatches;
|
|
332
|
+
/**
|
|
333
|
+
* Check search terms and common patterns
|
|
334
|
+
*/
|
|
335
|
+
private checkSearchTermsAndPatterns;
|
|
336
|
+
/**
|
|
337
|
+
* Calculate partial word matches with lower scores
|
|
338
|
+
*/
|
|
339
|
+
private calculatePartialMatches;
|
|
340
|
+
/**
|
|
341
|
+
* Build searchable text from endpoint fields
|
|
342
|
+
*/
|
|
343
|
+
private buildSearchableText;
|
|
344
|
+
/**
|
|
345
|
+
* Count matching words in text
|
|
346
|
+
*/
|
|
347
|
+
private countWordMatches;
|
|
348
|
+
/**
|
|
349
|
+
* Build partial match result with score and reason
|
|
350
|
+
*/
|
|
351
|
+
private buildPartialMatchResult;
|
|
352
|
+
/**
|
|
353
|
+
* Calculate multi-word matches by finding the best match for each word
|
|
354
|
+
*/
|
|
355
|
+
private calculateMultiWordMatches;
|
|
175
356
|
}
|
|
176
357
|
//# sourceMappingURL=client.d.ts.map
|
package/dist/cjs/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiFG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,OAAO,CAAC,QAAQ,CAAC,CAAgB;IACjC,OAAO,CAAC,IAAI,CAAC,CAAY;IACzB,OAAO,CAAC,WAAW,CAAC,CAAmB;IACvC,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAC,CAAgB;IACjC,OAAO,CAAC,UAAU,CAAC,CAAkB;IACrC,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAiB;gBAEvB,MAAM,EAAE,cAAc;IAIlC;;OAEG;IACH,IAAI,MAAM,IAAI,YAAY,CAMzB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,cAAc,CAM7B;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,aAAa,CAM3B;IAED;;OAEG;IACH,IAAI,GAAG,IAAI,SAAS,CAMnB;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,gBAAgB,CAMjC;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,WAAW,CAMvB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,YAAY,CAMzB;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,WAAW,CAMvB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,aAAa,CAM3B;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,eAAe,CAM/B;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,YAAY,CAMzB;IAED;;OAEG;IACH,IAAI,MAAM,IAAI,YAAY,CAMzB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,cAAc,CAM7B;IAED;;;OAGG;IACH,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAkBvC;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|