@simpleapps-com/augur-api 0.2.7 → 0.2.8

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 CHANGED
@@ -1,150 +1,421 @@
1
- # Augur API Client Library
1
+ # The Augur Platform: Code That Almost Writes Itself
2
2
 
3
- A comprehensive TypeScript client library for accessing Augur microservices with type safety, runtime validation, edge caching, and excellent developer experience.
3
+ Transform enterprise API chaos into developer flow with intelligent client generation, context-aware discovery, and AI-powered development acceleration.
4
+
5
+ ## Experience the Magic in 30 Seconds
6
+
7
+ ```typescript
8
+ // Before: 35+ lines of authentication boilerplate
9
+ const userJwt = await getToken({ req: request });
10
+ if (!userJwt?.jwtToken) throw new Error('Authentication failed');
11
+ const api = new AugurAPI({ siteId: context.siteId, bearerToken: userJwt.jwtToken });
12
+
13
+ // After: Pure business intent ✨
14
+ const api = AugurAPI.fromContext(context);
15
+
16
+ // Ask for anything and find it instantly
17
+ const userOps = await api.findEndpoint('user management');
18
+ const inventory = await api.findEndpoint('stock levels');
19
+ const pricing = await api.findEndpoint('product pricing');
20
+
21
+ // Code that understands your business domain
22
+ const users = await api.joomla.users.list({ limit: 10, edgeCache: 2 });
23
+ const availability = await api.vmi.inventory.checkAvailability(warehouse);
24
+ const price = await api.pricing.getPrice({ customerId, itemId, quantity });
25
+ ```
4
26
 
5
27
  ## Table of Contents
6
28
 
7
- - [🚀 Quick Start Guide](./QUICKSTART.md) - **New to Augur API? Start here!**
8
- - [Overview](#overview)
9
- - [🎯 AI-Powered Discovery System - Where Code Writes Itself](#-ai-powered-discovery-system---where-code-writes-itself)
10
- - [📖 API Discovery Guide](./API-DISCOVERY.md) - Complete discovery system reference
11
- - [Features](#features)
12
- - [Installation](#installation)
13
- - [Getting Started](#getting-started)
14
- - [Authentication & Security](#authentication--security) | [📋 Complete Auth Guide](./AUTHENTICATION.md)
15
- - [API Documentation](#api-documentation)
16
- - [Advanced Features](#advanced-features)
17
- - [Integration Guides](#integration-guides)
18
- - [Error Handling](#error-handling)
19
- - [Configuration](#configuration)
20
- - [Performance Optimization](#performance-optimization)
21
- - [Development](#development)
22
- - [Contributing](#contributing)
29
+ - [🚀 Quick Start Guide](./QUICKSTART.md) - **Experience the magic in under 5 minutes**
30
+ - [The Five Ideals in Action](#the-five-ideals-in-action)
31
+ - [🎯 AI-Powered Discovery System](#-ai-powered-discovery-system)
32
+ - [📖 API Discovery Guide](./API-DISCOVERY.md) - Natural language API navigation
33
+ - [Developer Experience Revolution](#developer-experience-revolution)
34
+ - [Context-Aware Architecture](#context-aware-architecture)
35
+ - [Installation & First Steps](#installation--first-steps)
36
+ - [Intelligent Discovery Examples](#intelligent-discovery-examples)
37
+ - [Cross-Service Intelligence](#cross-service-intelligence)
38
+ - [Advanced Capabilities](#advanced-capabilities)
39
+ - [Platform Integration](#platform-integration)
40
+ - [Performance & Caching](#performance--caching)
41
+ - [Troubleshooting & Support](#troubleshooting--support)
23
42
 
24
- ## Overview
43
+ ## The Five Ideals in Action
25
44
 
26
- The Augur API Client Library provides a unified TypeScript SDK for accessing Augur's microservices ecosystem. Built with modern web development in mind, it offers seamless integration with React, React Native, Next.js, and Node.js applications.
45
+ This platform embodies the Five Ideals from The Unicorn Project, transforming how developers interact with enterprise APIs:
27
46
 
28
- ### Key Capabilities
47
+ ### Locality and Simplicity ✨
48
+ **No more coordination across 13 different APIs.** One unified interface eliminates architectural complexity.
29
49
 
30
- - **13 Microservice Clients**: Comprehensive coverage of Joomla, Commerce, Pricing, VMI, OpenSearch, Items, Legacy, Nexus, AGR Site, Customers, Orders, P21 PIM, and Payments services
31
- - **Type-Safe Operations**: Full TypeScript support with auto-generated types from Zod schemas
32
- - **Edge Caching**: Built-in Cloudflare integration for optimal performance
33
- - **Cross-Site Authentication**: Support for multi-tenant applications
34
- - **Runtime Validation**: Zod schemas validate all requests and responses
35
- - **Developer Experience**: Rich JSDoc documentation and IntelliSense support
50
+ ```typescript
51
+ // Instead of learning 13 different authentication patterns
52
+ await joomlaAPI.authenticate(token);
53
+ await commerceAPI.setAuth(bearer);
54
+ await pricingAPI.login(credentials);
55
+
56
+ // One pattern rules them all
57
+ const api = AugurAPI.fromContext(context);
58
+ ```
36
59
 
37
- ## IDE Support & AI Assistant Integration
60
+ ### Focus, Flow, and Joy 🎯
61
+ **Zero context switching.** Intelligent discovery means never leaving your flow state.
38
62
 
39
- This client library is designed to work seamlessly with modern IDEs and AI coding assistants through comprehensive semantic documentation.
63
+ ```typescript
64
+ // No documentation hunting, no API reference browsing
65
+ const results = await api.findEndpoint('inventory management');
66
+ // Instantly find: api.vmi.warehouses.list, api.vmi.inventory.checkAvailability
40
67
 
41
- ### IntelliSense & Auto-completion
68
+ // Your IDE becomes clairvoyant with comprehensive semantic JSDoc
69
+ api.vmi.inventory. // ← Auto-complete shows exactly what you need
70
+ ```
42
71
 
43
- Every method includes detailed JSDoc with:
44
- - **Parameter descriptions** and types
45
- - **Usage examples** with real code
46
- - **Related methods** and cross-service connections
47
- - **Business context** and workflow information
72
+ ### Improvement of Daily Work 🔄
73
+ **The platform learns your patterns** and suggests related operations across services.
48
74
 
49
75
  ```typescript
50
- client.agrSite.settings. // IDE shows all available methods with descriptions
76
+ // When you work with users, it suggests related customer operations
77
+ const user = await api.joomla.users.get('123');
78
+ // Related suggestions: api.customers.customer.get, api.orders.salesRep.getOrders
51
79
  ```
52
80
 
53
- ### AI Assistant Features
81
+ ### Psychological Safety 🛡️
82
+ **Fail fast with clear, actionable errors.** No more guessing what went wrong.
54
83
 
55
- The semantic JSDoc tags help AI assistants understand:
84
+ ```typescript
85
+ try {
86
+ const api = AugurAPI.fromContext(context);
87
+ } catch (error) {
88
+ // Clear guidance: "Context missing siteId - check your context.siteId property"
89
+ // No blame, just solutions
90
+ }
91
+ ```
92
+
93
+ ### Customer Focus 📊
94
+ **Business context embedded** in every endpoint. Search by business intent, not technical implementation.
95
+
96
+ ```typescript
97
+ // Search by what you're trying to accomplish
98
+ await api.findEndpoint('customer order history');
99
+ await api.findEndpoint('product recommendations');
100
+ await api.findEndpoint('inventory replenishment');
101
+ ```
102
+
103
+ ## AI-Powered Discovery System
104
+
105
+ **Never memorize API endpoints again.** The discovery system understands business context and finds functionality through natural language.
106
+
107
+ ### Semantic Intelligence
108
+
109
+ Every endpoint includes AI-readable metadata:
56
110
 
57
111
  ```typescript
58
112
  /**
59
- * @searchTerms ["settings", "configuration", "site config"]
60
- * @relatedEndpoints ["api.agrSite.settings.get", "api.agrSite.settings.update"]
61
- * @workflow ["settings-management", "site-configuration"]
62
- * @commonPatterns ["Get all settings", "List site configuration"]
113
+ * @searchTerms ["users", "authentication", "user management", "login"]
114
+ * @relatedEndpoints ["api.customers.customer.get", "api.joomla.userGroups.list"]
115
+ * @workflow ["user-onboarding", "authentication-flow", "user-administration"]
116
+ * @commonPatterns ["Get user profile", "List active users", "Create new account"]
63
117
  */
64
118
  ```
65
119
 
66
- This means when you ask an AI assistant to "help me manage site settings", it can:
67
- 1. Find the right service (`agrSite.settings`)
68
- 2. Suggest the correct method (`list`, `get`, `create`, etc.)
69
- 3. Show related operations you might need
70
- 4. Provide complete workflow examples
120
+ ### Cross-Service Awareness
121
+
122
+ The system maps relationships between all 13 microservices:
123
+
124
+ ```typescript
125
+ // Working with users? It knows you might need customers too
126
+ const userEndpoints = await api.findEndpoint('user management');
127
+ // Suggests: joomla.users.list, customers.customer.get, orders.salesRep.getOrders
128
+
129
+ // Working with inventory? It connects you to pricing
130
+ const inventoryOps = await api.findEndpoint('stock management');
131
+ // Suggests: vmi.warehouses.list, pricing.getPrice, items.products.get
132
+ ```
71
133
 
72
- ### Dual API Pattern
134
+ ## Developer Experience Revolution
73
135
 
74
- Each service provides two ways to call methods:
136
+ ### Context-Aware Creation
137
+ Eliminate 70% of setup boilerplate with intelligent context extraction:
75
138
 
76
139
  ```typescript
77
- // Standard method - returns full response with metadata
78
- const response = await client.agrSite.settings.list();
79
- console.log(response.data, response.total, response.message);
140
+ // Traditional enterprise pattern (35+ lines)
141
+ const authentication = await authenticateUser(request);
142
+ if (!authentication.success) {
143
+ return handleAuthFailure(authentication.error);
144
+ }
145
+ const siteContext = await resolveSiteContext(authentication.user);
146
+ const apiConfig = {
147
+ siteId: siteContext.siteId,
148
+ bearerToken: authentication.jwtToken,
149
+ timeout: getConfiguredTimeout(),
150
+ retries: getRetryPolicy()
151
+ };
152
+ const api = new AugurAPI(apiConfig);
80
153
 
81
- // Data method - returns only the data portion
82
- const settings = await client.agrSite.settings.listData();
83
- console.log(settings); // Direct array access
154
+ // Context-aware magic (1 line)
155
+ const api = AugurAPI.fromContext(context);
84
156
  ```
85
157
 
86
- ### API Discovery Functions
158
+ ### Intelligent Method Discovery
159
+ Every method includes rich semantic metadata for AI assistants:
87
160
 
88
- The client provides discovery functions for exploring available services and endpoints:
161
+ ```typescript
162
+ // Ask your AI assistant: "Help me manage warehouse inventory"
163
+ // It instantly finds and suggests:
164
+ await api.vmi.warehouses.list({ customerId: 12345 });
165
+ await api.vmi.inventory.checkAvailability(warehouseId);
166
+ await api.vmi.inventory.replenish(warehouseId, { items });
167
+ ```
89
168
 
90
- #### `discover()` - Service Map
169
+ ### Factory Pattern Excellence
170
+ Sophisticated factory patterns create consistent, discoverable APIs:
91
171
 
92
- Get an overview of available services and their discoverable endpoints:
172
+ ```typescript
173
+ // Auto-generated from OpenAPI specs with semantic enhancement
174
+ export class VMIClient extends BaseServiceClient {
175
+ get warehouses() { return this.createWarehouseOperations(); }
176
+ get inventory() { return this.createInventoryOperations(); }
177
+ get distributors() { return this.createDistributorOperations(); }
178
+ }
179
+ ```
180
+
181
+ ## Installation & First Steps
182
+
183
+ ```bash
184
+ npm install @simpleapps-com/augur-api
185
+ ```
186
+
187
+ ### Immediate Value Demo
93
188
 
94
189
  ```typescript
95
- const api = new AugurAPI({ siteId: 'my-site', bearerToken: 'token' });
190
+ import { AugurAPI } from '@simpleapps-com/augur-api';
191
+
192
+ // Create from context (eliminates boilerplate)
193
+ const api = AugurAPI.fromContext(context);
194
+
195
+ // Discover capabilities (no documentation needed)
96
196
  const services = await api.discover();
197
+ console.log(`Connected to ${services.length} business services`);
97
198
 
98
- // Returns ServiceMap[] with:
99
- // - serviceName: string
100
- // - description: string
101
- // - baseUrl: string
102
- // - endpointCount: number
103
- // - endpoints: DiscoveryEndpoint[]
199
+ // Find what you need (natural language)
200
+ const userStuff = await api.findEndpoint('user management');
201
+ const inventoryStuff = await api.findEndpoint('stock levels');
104
202
 
105
- services.forEach(service => {
106
- console.log(`${service.serviceName}: ${service.endpointCount} endpoints`);
203
+ // Work with intelligent caching (sub-100ms responses)
204
+ const users = await api.joomla.users.list({
205
+ limit: 10,
206
+ edgeCache: 2 // Cloudflare edge caching
107
207
  });
108
208
  ```
109
209
 
110
- #### `findEndpoint()` - Endpoint Search
210
+ ## Intelligent Discovery Examples
211
+
212
+ ### Business Context Understanding
111
213
 
112
- Search across services for endpoints matching a search term:
214
+ The platform knows your business domain and connects related operations:
113
215
 
114
216
  ```typescript
115
- // Basic search
116
- const results = await api.findEndpoint('users');
217
+ // Search by business intent, not technical endpoints
218
+ const userOps = await api.findEndpoint('customer account management');
219
+ // Returns:
220
+ // - api.joomla.users.list (user authentication)
221
+ // - api.customers.customer.get (customer profiles)
222
+ // - api.orders.salesRep.getOrders (order history)
223
+
224
+ const inventoryOps = await api.findEndpoint('stock replenishment');
225
+ // Returns:
226
+ // - api.vmi.inventory.checkAvailability (current levels)
227
+ // - api.vmi.inventory.replenish (automated ordering)
228
+ // - api.pricing.getPrice (cost calculations)
229
+ ```
230
+
231
+ ### Workflow-Aware Suggestions
117
232
 
118
- // With options
119
- const results = await api.findEndpoint('settings', {
120
- minScore: 0.1, // Minimum relevance score (default: 0.1)
121
- maxResults: 10, // Max results (default: 10)
122
- service: 'agrSite', // Filter by service
123
- domain: 'site-content-management', // Filter by domain
124
- readOnly: true // Only GET endpoints
233
+ Working on one task? The system suggests the next logical steps:
234
+
235
+ ```typescript
236
+ // Create a user account
237
+ const newUser = await api.joomla.users.create({
238
+ username: 'john.doe',
239
+ email: 'john@company.com'
125
240
  });
126
241
 
127
- // Returns EndpointSearchResult[] with:
128
- // - endpoint: DiscoveryEndpoint (with fullPath, service, domain, etc.)
129
- // - score: number (0-1 relevance)
130
- // - matchReason: string
242
+ // System knows you might need to:
243
+ // 1. Set up customer profile: api.customers.customer.create()
244
+ // 2. Assign user groups: api.joomla.userGroups.createMapping()
245
+ // 3. Check permissions: api.joomla.users.groups.list()
246
+ ```
247
+
248
+ ### Cross-Service Intelligence
249
+
250
+ The discovery system maps business workflows across all 13 microservices:
251
+
252
+ ```typescript
253
+ // E-commerce workflow discovery
254
+ const ecommerceFlow = await api.findEndpoint('online shopping');
255
+ // Suggests complete customer journey:
256
+ // - Product search: api.opensearch.itemSearch.search()
257
+ // - Pricing: api.pricing.getPrice()
258
+ // - Cart management: api.commerce.cartHeaders.lookup()
259
+ // - Checkout: api.commerce.checkout.get()
260
+ // - Payment: api.payments.unified.transactionSetup()
131
261
  ```
132
262
 
133
- ## Features
263
+ ## Context-Aware Architecture
264
+
265
+ ### Intelligent Context Extraction
266
+
267
+ The `fromContext()` method understands various context patterns:
268
+
269
+ ```typescript
270
+ // Middleware context
271
+ const api = AugurAPI.fromContext({
272
+ siteId: req.headers['x-site-id'],
273
+ jwt: req.headers.authorization?.replace('Bearer ', ''),
274
+ userId: req.user.id
275
+ });
276
+
277
+ // Tool handler context
278
+ const api = AugurAPI.fromContext({
279
+ siteId: context.siteId,
280
+ bearerToken: context.authentication.token,
281
+ parameters: context.requestParams
282
+ });
283
+
284
+ // Next.js context
285
+ const api = AugurAPI.fromContext({
286
+ siteId: process.env.NEXT_PUBLIC_SITE_ID,
287
+ jwt: session.accessToken
288
+ });
289
+ ```
290
+
291
+ ### Factory Pattern Excellence
292
+
293
+ Each service client is lazily instantiated with sophisticated caching:
294
+
295
+ ```typescript
296
+ // Clients are created on-demand and cached
297
+ const joomla1 = api.joomla; // Creates new instance
298
+ const joomla2 = api.joomla; // Returns cached instance
299
+ console.log(joomla1 === joomla2); // true
300
+
301
+ // Token changes invalidate all clients automatically
302
+ api.setAuthToken('new-token');
303
+ const joomla3 = api.joomla; // Creates fresh instance with new token
304
+ console.log(joomla1 === joomla3); // false
305
+ ```
306
+
307
+ ### Semantic Method Generation
308
+
309
+ Every endpoint includes rich semantic metadata for AI discovery:
310
+
311
+ ```typescript
312
+ /**
313
+ * List site settings with intelligent filtering and caching
314
+ * @fullPath api.agrSite.settings.list
315
+ * @service agr-site
316
+ * @domain site-content-management
317
+ * @searchTerms ["settings", "configuration", "site management", "admin"]
318
+ * @relatedEndpoints ["api.agrSite.settings.get", "api.agrSite.settings.update"]
319
+ * @workflow ["site-administration", "configuration-management"]
320
+ * @commonPatterns ["Get all settings", "Filter by service", "Cache configuration"]
321
+ * @discoverable true
322
+ */
323
+ async list(params?: SettingListParams): Promise<SettingListResponse> {
324
+ // Implementation uses sophisticated base class patterns
325
+ }
326
+ ```
327
+
328
+ ## Advanced Capabilities
329
+
330
+ ### Intelligent Service Discovery
331
+
332
+ The discovery system provides both exploration and targeted search:
333
+
334
+ ```typescript
335
+ // Comprehensive service topology
336
+ const services = await api.discover();
337
+ console.log(`Platform connected to ${services.length} business services`);
338
+
339
+ // Each service reveals its capabilities
340
+ services.forEach(service => {
341
+ console.log(`${service.serviceName}: ${service.endpointCount} operations available`);
342
+ console.log(`Business domain: ${service.description}`);
343
+ });
344
+
345
+ // Targeted functionality search with intelligent scoring
346
+ const results = await api.findEndpoint('inventory management', {
347
+ minScore: 0.1, // Relevance threshold
348
+ maxResults: 10, // Limit results
349
+ service: 'vmi', // Optional service filter
350
+ domain: 'inventory-management', // Business domain filter
351
+ readOnly: true // Only read operations
352
+ });
353
+
354
+ // Results include relevance scores and match reasoning
355
+ results.forEach(result => {
356
+ console.log(`${result.endpoint.fullPath} (score: ${result.score})`);
357
+ console.log(`Match reason: ${result.matchReason}`);
358
+ });
359
+ ```
360
+
361
+ ### Multi-Method Pattern Innovation
362
+
363
+ Every endpoint offers dual access patterns for maximum flexibility:
364
+
365
+ ```typescript
366
+ // Full response with metadata (standard pattern)
367
+ const response = await api.joomla.users.list({ limit: 10 });
368
+ console.log(`Found ${response.data.length} users`);
369
+ console.log(`Total available: ${response.totalResults}`);
370
+ console.log(`Status: ${response.message}`);
371
+
372
+ // Data-only access (streamlined pattern)
373
+ const users = await api.joomla.users.listData({ limit: 10 });
374
+ console.log(users); // Direct array access, no wrapper
375
+ ```
376
+
377
+ ### Sophisticated Caching Architecture
378
+
379
+ Intelligent edge caching with business-aware TTL policies:
380
+
381
+ ```typescript
382
+ // Cache strategy varies by data volatility
383
+ const categories = await api.items.categories.list({
384
+ edgeCache: 8 // Static reference data - 8 hours
385
+ });
386
+
387
+ const pricing = await api.pricing.getPrice({
388
+ customerId: 12345,
389
+ itemId: 'STANDARD-ITEM',
390
+ quantity: 10,
391
+ edgeCache: 3 // Standard pricing - 3 hours
392
+ });
393
+
394
+ const cart = await api.commerce.cartHeaders.list({
395
+ userId: 123,
396
+ edgeCache: 1 // Volatile user data - 1 hour only
397
+ });
398
+
399
+ // Real-time operations never cached
400
+ const auth = await api.joomla.users.verifyPassword({
401
+ username: 'user',
402
+ password: 'pass'
403
+ // No edgeCache - authentication must be real-time
404
+ });
405
+ ```
134
406
 
135
- **Context-Aware Magic** - Eliminate 70% of setup boilerplate with `fromContext()` ⭐ NEW!
136
- ✅ **AI-Powered Discovery** - Natural language search finds any functionality instantly
137
- **Semantic Intelligence** - Understands business context and suggests workflows
138
- ✅ **Cross-Service Awareness** - Maps relationships between all microservices
139
- **Simple API** - Intuitive method names following REST conventions
140
- **Type Safe** - Full TypeScript support with auto-completion
141
- **Runtime Validation** - Zod schemas validate all requests and responses
142
- **Automatic Retries** - Built-in retry logic for failed requests
143
- **Smart Authentication** - Handles JWT tokens and site IDs automatically
144
- **Edge Caching** - Cloudflare integration for sub-100ms response times
145
- **Multi-Platform** - Works in React Native, React, Next.js, Node.js, and Electron
146
- **Great DX** - Helpful error messages and comprehensive JSDoc documentation
147
- ✅ **Cross-Site Auth** - Multi-tenant authentication support
407
+ ## Platform Capabilities Matrix
408
+
409
+ | Capability | Impact | Technical Implementation |
410
+ |------------|--------|-------------------------|
411
+ | **Context-Aware Creation** | 70% boilerplate reduction | `AugurAPI.fromContext()` with intelligent field extraction |
412
+ | **Natural Language Discovery** | Zero API documentation hunting | Semantic JSDoc parsing with cross-service mapping |
413
+ | **Intelligent Caching** | Sub-100ms response times | Cloudflare edge integration with business-aware TTL |
414
+ | **Factory Pattern Excellence** | Consistent developer experience | Lazy instantiation with automatic cache invalidation |
415
+ | **Cross-Service Intelligence** | Business workflow awareness | Relationship mapping across 13 microservices |
416
+ | **AI Assistant Integration** | Code that almost writes itself | Rich semantic metadata in every endpoint |
417
+ | **Type Safety** | Runtime validation guarantee | Zod schema validation on all requests/responses |
418
+ | **Multi-Platform Support** | Universal JavaScript compatibility | React, React Native, Next.js, Node.js, Electron |
148
419
 
149
420
  ## Installation
150
421
 
@@ -1,4 +1,4 @@
1
- export declare const VERSION = "0.2.7";
1
+ export declare const VERSION = "0.2.8";
2
2
  export { AugurAPI } from './client';
3
3
  export { authenticateUserForSite, createCrossSiteAuthenticator, type CrossSiteAuthParams, type CrossSiteAuthResult, } from './utils/cross-site-auth';
4
4
  export { AugurAPIConfig, RequestConfig, type AugurContext, ContextCreationError, } from './core/config';
package/dist/cjs/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PaymentsClient = exports.P21PimClient = exports.OrdersClient = exports.CustomersClient = exports.AgrSiteClient = exports.LegacyClient = exports.NexusClient = exports.ItemsClient = exports.OpenSearchClient = exports.VMIClient = exports.PricingClient = exports.CommerceClient = exports.JoomlaClient = exports.PaginationParamsSchema = exports.HealthCheckDataSchema = exports.BaseResponseSchema = exports.RateLimitError = exports.NotFoundError = exports.AuthenticationError = exports.ValidationError = exports.AugurError = exports.ContextCreationError = exports.createCrossSiteAuthenticator = exports.authenticateUserForSite = exports.AugurAPI = exports.VERSION = void 0;
4
- exports.VERSION = '0.2.7';
4
+ exports.VERSION = '0.2.8';
5
5
  // Main client
6
6
  var client_1 = require("./client");
7
7
  Object.defineProperty(exports, "AugurAPI", { enumerable: true, get: function () { return client_1.AugurAPI; } });