@thorprovider/adapters 4.2.0 → 4.2.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/CHANGELOG.md +6 -0
- package/README.md +19 -0
- package/dist/index.d.mts +90 -2
- package/dist/index.d.ts +90 -2
- package/dist/index.js +1066 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1064 -0
- package/dist/index.mjs.map +1 -1
- package/docs/capabilities-system.md +30 -0
- package/docs/providers-overview.md +14 -0
- package/docs/services-overview.md +16 -0
- package/package.json +10 -6
- package/quick-reference.md +1 -0
- package/src/factory/index.ts +4 -0
- package/src/index.ts +3 -0
- package/src/providers/index.ts +3 -0
- package/src/providers/stelorder/client.test-helpers.ts +3 -0
- package/src/providers/stelorder/client.test.ts +58 -0
- package/src/providers/stelorder/client.ts +326 -0
- package/src/providers/stelorder/index.test.ts +48 -0
- package/src/providers/stelorder/index.ts +685 -0
- package/src/providers/stelorder/live-smoke.test.ts +54 -0
- package/src/providers/stelorder/transforms.test.ts +103 -0
- package/src/providers/stelorder/transforms.ts +631 -0
- package/src/types/capabilities.types.ts +51 -0
- package/vitest.config.ts +13 -0
- package/vitest.setup.ts +6 -0
- package/.turbo/turbo-build.log +0 -18
- package/dist/.tsbuildinfo +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 4.2.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Fix the published export map so bundlers do not resolve the `development` condition to an incomplete source graph. The package now resolves development/import/default entrypoints to built `dist` files, preventing Turbopack module-resolution failures in consumers.
|
|
8
|
+
|
|
3
9
|
## 4.2.0
|
|
4
10
|
|
|
5
11
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -133,6 +133,7 @@ Need e-commerce backend integration?
|
|
|
133
133
|
Currently implemented:
|
|
134
134
|
- ✅ **Mock** — Fixture-backed provider for local development, previews, and backend-optional storefront bootstrapping
|
|
135
135
|
- ✅ **Medusa JS** (v2) — Full implementation with multi-tenant support
|
|
136
|
+
- ✅ **Stel Order** — ERP adapter (v1): catalog, categories, inventory, customers, orders, payment/delivery listing. No cart/checkout/auth (single-company ERP).
|
|
136
137
|
|
|
137
138
|
Planned (Phase 2–3):
|
|
138
139
|
- 🟡 **Shopify** — In progress
|
|
@@ -162,6 +163,17 @@ const commerce = createProvider({
|
|
|
162
163
|
}
|
|
163
164
|
});
|
|
164
165
|
|
|
166
|
+
// Stel Order ERP (catalog + CRM read/write, no cart/checkout)
|
|
167
|
+
const stelCommerce = createProvider({
|
|
168
|
+
provider: 'stelorder',
|
|
169
|
+
config: {
|
|
170
|
+
baseUrl: 'https://your-company.stelorder.com/app',
|
|
171
|
+
apiKey: process.env.STEL_ORDER_API_KEY,
|
|
172
|
+
currencyCode: 'EUR',
|
|
173
|
+
companyName: 'My Company',
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
|
|
165
177
|
const products = await commerce.getProducts();
|
|
166
178
|
```
|
|
167
179
|
|
|
@@ -438,6 +450,7 @@ if (commerce.capabilities.updateEmail) {
|
|
|
438
450
|
| Platform | Status | Documentation |
|
|
439
451
|
|----------|--------|---------------|
|
|
440
452
|
| **Medusa v2** | ✅ Production Ready | [Medusa Docs](https://docs.medusajs.com/) |
|
|
453
|
+
| **Stel Order** | ✅ ERP Adapter (v1) | Catalog, CRM, orders — no cart/checkout/auth |
|
|
441
454
|
| **Shopify** | 🚧 Planned | [Shopify API](https://shopify.dev/api/storefront) |
|
|
442
455
|
| **WooCommerce** | 🗓️ Roadmap | [WooCommerce API](https://woocommerce.github.io/woocommerce-rest-api-docs/) |
|
|
443
456
|
| **BigCommerce** | 🗓️ Roadmap | [BigCommerce API](https://developer.bigcommerce.com/) |
|
|
@@ -465,6 +478,11 @@ if (commerce.capabilities.updateEmail) {
|
|
|
465
478
|
- [Add New Service](../../docs/workflows/legacy/add-adapter-service.md) - Service workflow
|
|
466
479
|
- [Type Definitions](./src/types/) - Full TypeScript types
|
|
467
480
|
|
|
481
|
+
### Testing
|
|
482
|
+
- Unit/integration tests: `yarn workspace @thorprovider/adapters test`
|
|
483
|
+
- Optional live Stel smoke test: `STEL_ORDER_SMOKE_TEST=1 STEL_ORDER_BASE_URL=... STEL_ORDER_API_KEY=... yarn workspace @thorprovider/adapters test:live`
|
|
484
|
+
- Live smoke stays read-only unless `STEL_ORDER_TEST_CUSTOMER_ID` is explicitly set
|
|
485
|
+
|
|
468
486
|
---
|
|
469
487
|
|
|
470
488
|
## Examples
|
|
@@ -584,6 +602,7 @@ const products = await commerce.getProducts();
|
|
|
584
602
|
├── types/ # Unified types (Product, Cart, etc.)
|
|
585
603
|
├── providers/ # Provider implementations
|
|
586
604
|
│ ├── medusa/ # Medusa v2 provider
|
|
605
|
+
│ ├── stelorder/ # Stel Order ERP adapter
|
|
587
606
|
│ └── shopify/ # (coming soon)
|
|
588
607
|
├── core/ # Core utilities (errors, logger)
|
|
589
608
|
└── factory/ # Provider factory
|
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _thorprovider_types from '@thorprovider/types';
|
|
2
|
-
import { BackendCapabilities, Money, PaymentMethod, FulfillmentOption, CartItem, StockLocation, InventoryLevel, StorefrontConfig, DashboardMetrics, ProviderTypeString, CommerceProvider, AuthProvider, ProviderConfig, AuthConfig, Product, GetProductsOptions, AdvancedSearchProductsOptions, SearchResultMeta, FilterConfig, Collection, GetCollectionsOptions, CollectionProductsOptions, ProductCategory, GetCategoriesOptions, Cart, CartLineInput, CartLineUpdate, GetOrdersOptions, Order, GetCustomersOptions, Customer, Address, Region, AdminProduct, PaymentMethodsOptions, StockValidation, StorefrontContext, DesignerConfig, DesignerHistoryEntry, ShippingMethod } from '@thorprovider/types';
|
|
2
|
+
import { BackendCapabilities, Money, PaymentMethod, FulfillmentOption, CartItem, StockLocation, InventoryLevel, StorefrontConfig, DashboardMetrics, ProviderTypeString, CommerceProvider, AuthProvider, ProviderConfig, AuthConfig, Product, GetProductsOptions, AdvancedSearchProductsOptions, SearchResultMeta, FilterConfig, Collection, GetCollectionsOptions, CollectionProductsOptions, ProductCategory, GetCategoriesOptions, Cart, CartLineInput, CartLineUpdate, GetOrdersOptions, Order, GetCustomersOptions, Customer, Address, Region, AdminProduct, PaymentMethodsOptions, StockValidation, StorefrontContext, DesignerConfig, DesignerHistoryEntry, ShippingMethod, Country } from '@thorprovider/types';
|
|
3
3
|
export * from '@thorprovider/types';
|
|
4
4
|
export { BackendCapabilities, CommerceProvider, DesignerConfig, DesignerHistoryEntry, DesignerNavItem, DesignerThemeConfig, DesignerThemePreset, ProviderConfig, StorefrontConfig, StorefrontConfigError, StorefrontContext, StorefrontPlatformType, StorefrontSeoDefaults } from '@thorprovider/types';
|
|
5
5
|
import Medusa from '@medusajs/js-sdk';
|
|
@@ -239,6 +239,13 @@ declare const MOCK_CAPABILITIES: Readonly<BackendCapabilities>;
|
|
|
239
239
|
* @see https://docs.medusajs.com/api/store
|
|
240
240
|
*/
|
|
241
241
|
declare const MEDUSA_CAPABILITIES: Readonly<BackendCapabilities>;
|
|
242
|
+
/**
|
|
243
|
+
* Stel Order backend capabilities
|
|
244
|
+
*
|
|
245
|
+
* ERP/document API with catalog, CRM, inventory visibility, and sales documents,
|
|
246
|
+
* but without cart, checkout, customer auth, or storefront-native payment flows.
|
|
247
|
+
*/
|
|
248
|
+
declare const STELORDER_CAPABILITIES: Readonly<BackendCapabilities>;
|
|
242
249
|
/**
|
|
243
250
|
* Shopify backend capabilities
|
|
244
251
|
*
|
|
@@ -2461,6 +2468,84 @@ declare class MagentoProvider implements CommerceProvider {
|
|
|
2461
2468
|
isStorefrontRequired(): boolean;
|
|
2462
2469
|
}
|
|
2463
2470
|
|
|
2471
|
+
interface StelOrderProviderConfig extends ProviderConfig {
|
|
2472
|
+
baseUrl: string;
|
|
2473
|
+
apiKey?: string;
|
|
2474
|
+
publishableKey?: string;
|
|
2475
|
+
currencyCode?: string;
|
|
2476
|
+
companyName?: string;
|
|
2477
|
+
storefrontId?: string;
|
|
2478
|
+
retry?: RetryConfig;
|
|
2479
|
+
}
|
|
2480
|
+
|
|
2481
|
+
declare class StelOrderProvider implements CommerceProvider {
|
|
2482
|
+
readonly name = "stelorder";
|
|
2483
|
+
readonly version = "1.0.0";
|
|
2484
|
+
readonly capabilities: BackendCapabilities;
|
|
2485
|
+
private readonly client;
|
|
2486
|
+
private readonly logger;
|
|
2487
|
+
private readonly currencyCode;
|
|
2488
|
+
private readonly storefrontId;
|
|
2489
|
+
private readonly companyName;
|
|
2490
|
+
constructor(config: StelOrderProviderConfig);
|
|
2491
|
+
getProduct(handle: string, _options?: {
|
|
2492
|
+
regionId?: string;
|
|
2493
|
+
}): Promise<Product | undefined>;
|
|
2494
|
+
getProducts(options?: GetProductsOptions): Promise<Product[]>;
|
|
2495
|
+
getProductRecommendations(_productId: string): Promise<Product[]>;
|
|
2496
|
+
getCategory(idOrHandle: string): Promise<ProductCategory | undefined>;
|
|
2497
|
+
getCategories(options?: GetCategoriesOptions): Promise<ProductCategory[]>;
|
|
2498
|
+
getCategoryProducts(handle: string, options?: CollectionProductsOptions): Promise<Product[]>;
|
|
2499
|
+
getCollection(handle: string): Promise<Collection | undefined>;
|
|
2500
|
+
getCollections(options?: GetCollectionsOptions): Promise<Collection[]>;
|
|
2501
|
+
getCollectionProducts(handle: string, options?: CollectionProductsOptions): Promise<Product[]>;
|
|
2502
|
+
getStockLocations(_params?: {
|
|
2503
|
+
salesChannelId?: string;
|
|
2504
|
+
}): Promise<StockLocation[]>;
|
|
2505
|
+
checkInventoryLevels(variantId: string, _salesChannelId?: string): Promise<InventoryLevel[]>;
|
|
2506
|
+
validateCartStock(_cartId: string): Promise<StockValidation>;
|
|
2507
|
+
getFulfillmentOptions(_cartId: string, _salesChannelId: string): Promise<FulfillmentOption[]>;
|
|
2508
|
+
createCart(_options?: {
|
|
2509
|
+
regionId?: string;
|
|
2510
|
+
}): Promise<Cart>;
|
|
2511
|
+
getCart(_cartId: string): Promise<Cart | undefined>;
|
|
2512
|
+
addToCart(_cartId: string, _lines: CartLineInput[]): Promise<Cart>;
|
|
2513
|
+
removeFromCart(_cartId: string, _lineIds: string[]): Promise<Cart>;
|
|
2514
|
+
updateCart(_cartId: string, _lines: CartLineUpdate[]): Promise<Cart>;
|
|
2515
|
+
completeCheckout(_cartId: string): Promise<Order>;
|
|
2516
|
+
getRegionCountries(_regionId: string): Promise<Country[]>;
|
|
2517
|
+
addShippingMethod(_cartId: string, _methodId: string): Promise<Cart>;
|
|
2518
|
+
initiatePaymentSession(_cartId: string, _providerId: string): Promise<void>;
|
|
2519
|
+
applyDiscountCode(_cartId: string, _code: string): Promise<Cart>;
|
|
2520
|
+
removeDiscountCode(_cartId: string, _code: string): Promise<Cart>;
|
|
2521
|
+
getPaymentMethods(_options: PaymentMethodsOptions): Promise<PaymentMethod[]>;
|
|
2522
|
+
getShippingMethods(_cartId: string): Promise<ShippingMethod[]>;
|
|
2523
|
+
getCustomer(customerId: string): Promise<Customer | undefined>;
|
|
2524
|
+
getCustomers(options?: GetCustomersOptions): Promise<Customer[]>;
|
|
2525
|
+
updateCustomer(customerId: string, data: Partial<Omit<Customer, 'id' | 'createdAt'>>): Promise<Customer>;
|
|
2526
|
+
getOrder(orderId: string): Promise<Order | undefined>;
|
|
2527
|
+
getOrders(options: GetOrdersOptions): Promise<Order[]>;
|
|
2528
|
+
getAdminOrders(options?: {
|
|
2529
|
+
search?: string;
|
|
2530
|
+
status?: string | string[];
|
|
2531
|
+
limit?: number;
|
|
2532
|
+
offset?: number;
|
|
2533
|
+
}): Promise<{
|
|
2534
|
+
orders: Order[];
|
|
2535
|
+
count: number;
|
|
2536
|
+
}>;
|
|
2537
|
+
cancelOrder(_orderId: string): Promise<Order>;
|
|
2538
|
+
createFulfillment(_orderId: string, _items?: Array<{
|
|
2539
|
+
id: string;
|
|
2540
|
+
quantity: number;
|
|
2541
|
+
}>): Promise<void>;
|
|
2542
|
+
createRefund(_orderId: string, _amount?: number, _reason?: string): Promise<void>;
|
|
2543
|
+
getStorefrontContext(): Promise<StorefrontContext>;
|
|
2544
|
+
isStorefrontRequired(): boolean;
|
|
2545
|
+
private notSupported;
|
|
2546
|
+
private wrapError;
|
|
2547
|
+
}
|
|
2548
|
+
|
|
2464
2549
|
interface MockProviderConfig extends ProviderConfig {
|
|
2465
2550
|
currencyCode?: string;
|
|
2466
2551
|
siteUrl?: string;
|
|
@@ -2557,6 +2642,9 @@ type ProviderFactoryConfig = {
|
|
|
2557
2642
|
} | {
|
|
2558
2643
|
provider: 'medusa';
|
|
2559
2644
|
config: MedusaProviderConfig;
|
|
2645
|
+
} | {
|
|
2646
|
+
provider: 'stelorder';
|
|
2647
|
+
config: StelOrderProviderConfig;
|
|
2560
2648
|
} | {
|
|
2561
2649
|
provider: 'shopify';
|
|
2562
2650
|
config: ShopifyProviderConfig;
|
|
@@ -2602,4 +2690,4 @@ declare function createProvider(options: ProviderFactoryConfig | RuntimeProvider
|
|
|
2602
2690
|
*/
|
|
2603
2691
|
declare function isProviderType<T extends ProviderType>(provider: CommerceProvider, type: T): boolean;
|
|
2604
2692
|
|
|
2605
|
-
export { AdminAuthService, type AdminSession, AdminSessionService, BIGCOMMERCE_CAPABILITIES, type BackendMapping, type BackendMetadataAdapter, type BackendMetadataAdapterConfig, BigCommerceProvider, type BigCommerceProviderConfig, CHANNEL_ASSIGNED_AT_KEY, CHANNEL_ASSIGNED_BY_KEY, CHANNEL_SCOPE_KEY, type ChannelScopeMetadata, ChannelScopeValidationError, type ChannelScopeable, CircuitBreaker, type CircuitBreakerConfig, CircuitBreakerOpenError, type CircuitBreakerStats, type CircuitState, CommerceError, ConfigurationError, type Coordinates, type FulfillmentGroup, type FulfillmentPlan, type LogLevel, type Logger, MAGENTO_CAPABILITIES, MEDUSA_CAPABILITIES, MOCK_CAPABILITIES, MagentoProvider, type MagentoProviderConfig, MedusaMetadataAdapter, MedusaProvider, type MedusaProviderConfig, type MetricsOrderInput, type MetricsProductInput, MetricsService, MockProvider, type MockProviderConfig, type PlanFulfillmentShippingAddress, ProviderAPIError, type ProviderFactoryConfig, ProviderNotFoundError, type ProviderType, ResourceNotFoundError, SHOPIFY_CAPABILITIES, SPREE_CAPABILITIES, ShopifyProvider, type ShopifyProviderConfig, SpreeProvider, type SpreeProviderConfig, type UICartItem, type UICartTotals, type UIDiscountCode, type UIPaymentMethod, type UIShippingMethod, WOOCOMMERCE_CAPABILITIES, WooCommerceProvider, type WooCommerceProviderConfig, assertEntityBelongsToChannel, backendCircuitBreaker, buildChannelScopeMetadata, calculateDistance, createBackendMetadataAdapter, createLogger, createProvider, filterByChannel, filterGlobalOnly, geocodeAddress, getBackendProviderId, getCapabilityDescription, getChannelScope, isBackendCapabilities, isGlobalEntity, isProviderType, isScopedToChannel, moneyToNumber, moneyToNumberSafe, numberToMoney, partitionByChannel, planFulfillment, transformFulfillmentOption, transformInventoryLevel, transformStockLocation, transformStorefrontConfig, validateAssignedBy, validateChannelId, validateChannelScopeAssignment, validateEntityId, validatePaymentId };
|
|
2693
|
+
export { AdminAuthService, type AdminSession, AdminSessionService, BIGCOMMERCE_CAPABILITIES, type BackendMapping, type BackendMetadataAdapter, type BackendMetadataAdapterConfig, BigCommerceProvider, type BigCommerceProviderConfig, CHANNEL_ASSIGNED_AT_KEY, CHANNEL_ASSIGNED_BY_KEY, CHANNEL_SCOPE_KEY, type ChannelScopeMetadata, ChannelScopeValidationError, type ChannelScopeable, CircuitBreaker, type CircuitBreakerConfig, CircuitBreakerOpenError, type CircuitBreakerStats, type CircuitState, CommerceError, ConfigurationError, type Coordinates, type FulfillmentGroup, type FulfillmentPlan, type LogLevel, type Logger, MAGENTO_CAPABILITIES, MEDUSA_CAPABILITIES, MOCK_CAPABILITIES, MagentoProvider, type MagentoProviderConfig, MedusaMetadataAdapter, MedusaProvider, type MedusaProviderConfig, type MetricsOrderInput, type MetricsProductInput, MetricsService, MockProvider, type MockProviderConfig, type PlanFulfillmentShippingAddress, ProviderAPIError, type ProviderFactoryConfig, ProviderNotFoundError, type ProviderType, ResourceNotFoundError, SHOPIFY_CAPABILITIES, SPREE_CAPABILITIES, STELORDER_CAPABILITIES, ShopifyProvider, type ShopifyProviderConfig, SpreeProvider, type SpreeProviderConfig, StelOrderProvider, type StelOrderProviderConfig, type UICartItem, type UICartTotals, type UIDiscountCode, type UIPaymentMethod, type UIShippingMethod, WOOCOMMERCE_CAPABILITIES, WooCommerceProvider, type WooCommerceProviderConfig, assertEntityBelongsToChannel, backendCircuitBreaker, buildChannelScopeMetadata, calculateDistance, createBackendMetadataAdapter, createLogger, createProvider, filterByChannel, filterGlobalOnly, geocodeAddress, getBackendProviderId, getCapabilityDescription, getChannelScope, isBackendCapabilities, isGlobalEntity, isProviderType, isScopedToChannel, moneyToNumber, moneyToNumberSafe, numberToMoney, partitionByChannel, planFulfillment, transformFulfillmentOption, transformInventoryLevel, transformStockLocation, transformStorefrontConfig, validateAssignedBy, validateChannelId, validateChannelScopeAssignment, validateEntityId, validatePaymentId };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _thorprovider_types from '@thorprovider/types';
|
|
2
|
-
import { BackendCapabilities, Money, PaymentMethod, FulfillmentOption, CartItem, StockLocation, InventoryLevel, StorefrontConfig, DashboardMetrics, ProviderTypeString, CommerceProvider, AuthProvider, ProviderConfig, AuthConfig, Product, GetProductsOptions, AdvancedSearchProductsOptions, SearchResultMeta, FilterConfig, Collection, GetCollectionsOptions, CollectionProductsOptions, ProductCategory, GetCategoriesOptions, Cart, CartLineInput, CartLineUpdate, GetOrdersOptions, Order, GetCustomersOptions, Customer, Address, Region, AdminProduct, PaymentMethodsOptions, StockValidation, StorefrontContext, DesignerConfig, DesignerHistoryEntry, ShippingMethod } from '@thorprovider/types';
|
|
2
|
+
import { BackendCapabilities, Money, PaymentMethod, FulfillmentOption, CartItem, StockLocation, InventoryLevel, StorefrontConfig, DashboardMetrics, ProviderTypeString, CommerceProvider, AuthProvider, ProviderConfig, AuthConfig, Product, GetProductsOptions, AdvancedSearchProductsOptions, SearchResultMeta, FilterConfig, Collection, GetCollectionsOptions, CollectionProductsOptions, ProductCategory, GetCategoriesOptions, Cart, CartLineInput, CartLineUpdate, GetOrdersOptions, Order, GetCustomersOptions, Customer, Address, Region, AdminProduct, PaymentMethodsOptions, StockValidation, StorefrontContext, DesignerConfig, DesignerHistoryEntry, ShippingMethod, Country } from '@thorprovider/types';
|
|
3
3
|
export * from '@thorprovider/types';
|
|
4
4
|
export { BackendCapabilities, CommerceProvider, DesignerConfig, DesignerHistoryEntry, DesignerNavItem, DesignerThemeConfig, DesignerThemePreset, ProviderConfig, StorefrontConfig, StorefrontConfigError, StorefrontContext, StorefrontPlatformType, StorefrontSeoDefaults } from '@thorprovider/types';
|
|
5
5
|
import Medusa from '@medusajs/js-sdk';
|
|
@@ -239,6 +239,13 @@ declare const MOCK_CAPABILITIES: Readonly<BackendCapabilities>;
|
|
|
239
239
|
* @see https://docs.medusajs.com/api/store
|
|
240
240
|
*/
|
|
241
241
|
declare const MEDUSA_CAPABILITIES: Readonly<BackendCapabilities>;
|
|
242
|
+
/**
|
|
243
|
+
* Stel Order backend capabilities
|
|
244
|
+
*
|
|
245
|
+
* ERP/document API with catalog, CRM, inventory visibility, and sales documents,
|
|
246
|
+
* but without cart, checkout, customer auth, or storefront-native payment flows.
|
|
247
|
+
*/
|
|
248
|
+
declare const STELORDER_CAPABILITIES: Readonly<BackendCapabilities>;
|
|
242
249
|
/**
|
|
243
250
|
* Shopify backend capabilities
|
|
244
251
|
*
|
|
@@ -2461,6 +2468,84 @@ declare class MagentoProvider implements CommerceProvider {
|
|
|
2461
2468
|
isStorefrontRequired(): boolean;
|
|
2462
2469
|
}
|
|
2463
2470
|
|
|
2471
|
+
interface StelOrderProviderConfig extends ProviderConfig {
|
|
2472
|
+
baseUrl: string;
|
|
2473
|
+
apiKey?: string;
|
|
2474
|
+
publishableKey?: string;
|
|
2475
|
+
currencyCode?: string;
|
|
2476
|
+
companyName?: string;
|
|
2477
|
+
storefrontId?: string;
|
|
2478
|
+
retry?: RetryConfig;
|
|
2479
|
+
}
|
|
2480
|
+
|
|
2481
|
+
declare class StelOrderProvider implements CommerceProvider {
|
|
2482
|
+
readonly name = "stelorder";
|
|
2483
|
+
readonly version = "1.0.0";
|
|
2484
|
+
readonly capabilities: BackendCapabilities;
|
|
2485
|
+
private readonly client;
|
|
2486
|
+
private readonly logger;
|
|
2487
|
+
private readonly currencyCode;
|
|
2488
|
+
private readonly storefrontId;
|
|
2489
|
+
private readonly companyName;
|
|
2490
|
+
constructor(config: StelOrderProviderConfig);
|
|
2491
|
+
getProduct(handle: string, _options?: {
|
|
2492
|
+
regionId?: string;
|
|
2493
|
+
}): Promise<Product | undefined>;
|
|
2494
|
+
getProducts(options?: GetProductsOptions): Promise<Product[]>;
|
|
2495
|
+
getProductRecommendations(_productId: string): Promise<Product[]>;
|
|
2496
|
+
getCategory(idOrHandle: string): Promise<ProductCategory | undefined>;
|
|
2497
|
+
getCategories(options?: GetCategoriesOptions): Promise<ProductCategory[]>;
|
|
2498
|
+
getCategoryProducts(handle: string, options?: CollectionProductsOptions): Promise<Product[]>;
|
|
2499
|
+
getCollection(handle: string): Promise<Collection | undefined>;
|
|
2500
|
+
getCollections(options?: GetCollectionsOptions): Promise<Collection[]>;
|
|
2501
|
+
getCollectionProducts(handle: string, options?: CollectionProductsOptions): Promise<Product[]>;
|
|
2502
|
+
getStockLocations(_params?: {
|
|
2503
|
+
salesChannelId?: string;
|
|
2504
|
+
}): Promise<StockLocation[]>;
|
|
2505
|
+
checkInventoryLevels(variantId: string, _salesChannelId?: string): Promise<InventoryLevel[]>;
|
|
2506
|
+
validateCartStock(_cartId: string): Promise<StockValidation>;
|
|
2507
|
+
getFulfillmentOptions(_cartId: string, _salesChannelId: string): Promise<FulfillmentOption[]>;
|
|
2508
|
+
createCart(_options?: {
|
|
2509
|
+
regionId?: string;
|
|
2510
|
+
}): Promise<Cart>;
|
|
2511
|
+
getCart(_cartId: string): Promise<Cart | undefined>;
|
|
2512
|
+
addToCart(_cartId: string, _lines: CartLineInput[]): Promise<Cart>;
|
|
2513
|
+
removeFromCart(_cartId: string, _lineIds: string[]): Promise<Cart>;
|
|
2514
|
+
updateCart(_cartId: string, _lines: CartLineUpdate[]): Promise<Cart>;
|
|
2515
|
+
completeCheckout(_cartId: string): Promise<Order>;
|
|
2516
|
+
getRegionCountries(_regionId: string): Promise<Country[]>;
|
|
2517
|
+
addShippingMethod(_cartId: string, _methodId: string): Promise<Cart>;
|
|
2518
|
+
initiatePaymentSession(_cartId: string, _providerId: string): Promise<void>;
|
|
2519
|
+
applyDiscountCode(_cartId: string, _code: string): Promise<Cart>;
|
|
2520
|
+
removeDiscountCode(_cartId: string, _code: string): Promise<Cart>;
|
|
2521
|
+
getPaymentMethods(_options: PaymentMethodsOptions): Promise<PaymentMethod[]>;
|
|
2522
|
+
getShippingMethods(_cartId: string): Promise<ShippingMethod[]>;
|
|
2523
|
+
getCustomer(customerId: string): Promise<Customer | undefined>;
|
|
2524
|
+
getCustomers(options?: GetCustomersOptions): Promise<Customer[]>;
|
|
2525
|
+
updateCustomer(customerId: string, data: Partial<Omit<Customer, 'id' | 'createdAt'>>): Promise<Customer>;
|
|
2526
|
+
getOrder(orderId: string): Promise<Order | undefined>;
|
|
2527
|
+
getOrders(options: GetOrdersOptions): Promise<Order[]>;
|
|
2528
|
+
getAdminOrders(options?: {
|
|
2529
|
+
search?: string;
|
|
2530
|
+
status?: string | string[];
|
|
2531
|
+
limit?: number;
|
|
2532
|
+
offset?: number;
|
|
2533
|
+
}): Promise<{
|
|
2534
|
+
orders: Order[];
|
|
2535
|
+
count: number;
|
|
2536
|
+
}>;
|
|
2537
|
+
cancelOrder(_orderId: string): Promise<Order>;
|
|
2538
|
+
createFulfillment(_orderId: string, _items?: Array<{
|
|
2539
|
+
id: string;
|
|
2540
|
+
quantity: number;
|
|
2541
|
+
}>): Promise<void>;
|
|
2542
|
+
createRefund(_orderId: string, _amount?: number, _reason?: string): Promise<void>;
|
|
2543
|
+
getStorefrontContext(): Promise<StorefrontContext>;
|
|
2544
|
+
isStorefrontRequired(): boolean;
|
|
2545
|
+
private notSupported;
|
|
2546
|
+
private wrapError;
|
|
2547
|
+
}
|
|
2548
|
+
|
|
2464
2549
|
interface MockProviderConfig extends ProviderConfig {
|
|
2465
2550
|
currencyCode?: string;
|
|
2466
2551
|
siteUrl?: string;
|
|
@@ -2557,6 +2642,9 @@ type ProviderFactoryConfig = {
|
|
|
2557
2642
|
} | {
|
|
2558
2643
|
provider: 'medusa';
|
|
2559
2644
|
config: MedusaProviderConfig;
|
|
2645
|
+
} | {
|
|
2646
|
+
provider: 'stelorder';
|
|
2647
|
+
config: StelOrderProviderConfig;
|
|
2560
2648
|
} | {
|
|
2561
2649
|
provider: 'shopify';
|
|
2562
2650
|
config: ShopifyProviderConfig;
|
|
@@ -2602,4 +2690,4 @@ declare function createProvider(options: ProviderFactoryConfig | RuntimeProvider
|
|
|
2602
2690
|
*/
|
|
2603
2691
|
declare function isProviderType<T extends ProviderType>(provider: CommerceProvider, type: T): boolean;
|
|
2604
2692
|
|
|
2605
|
-
export { AdminAuthService, type AdminSession, AdminSessionService, BIGCOMMERCE_CAPABILITIES, type BackendMapping, type BackendMetadataAdapter, type BackendMetadataAdapterConfig, BigCommerceProvider, type BigCommerceProviderConfig, CHANNEL_ASSIGNED_AT_KEY, CHANNEL_ASSIGNED_BY_KEY, CHANNEL_SCOPE_KEY, type ChannelScopeMetadata, ChannelScopeValidationError, type ChannelScopeable, CircuitBreaker, type CircuitBreakerConfig, CircuitBreakerOpenError, type CircuitBreakerStats, type CircuitState, CommerceError, ConfigurationError, type Coordinates, type FulfillmentGroup, type FulfillmentPlan, type LogLevel, type Logger, MAGENTO_CAPABILITIES, MEDUSA_CAPABILITIES, MOCK_CAPABILITIES, MagentoProvider, type MagentoProviderConfig, MedusaMetadataAdapter, MedusaProvider, type MedusaProviderConfig, type MetricsOrderInput, type MetricsProductInput, MetricsService, MockProvider, type MockProviderConfig, type PlanFulfillmentShippingAddress, ProviderAPIError, type ProviderFactoryConfig, ProviderNotFoundError, type ProviderType, ResourceNotFoundError, SHOPIFY_CAPABILITIES, SPREE_CAPABILITIES, ShopifyProvider, type ShopifyProviderConfig, SpreeProvider, type SpreeProviderConfig, type UICartItem, type UICartTotals, type UIDiscountCode, type UIPaymentMethod, type UIShippingMethod, WOOCOMMERCE_CAPABILITIES, WooCommerceProvider, type WooCommerceProviderConfig, assertEntityBelongsToChannel, backendCircuitBreaker, buildChannelScopeMetadata, calculateDistance, createBackendMetadataAdapter, createLogger, createProvider, filterByChannel, filterGlobalOnly, geocodeAddress, getBackendProviderId, getCapabilityDescription, getChannelScope, isBackendCapabilities, isGlobalEntity, isProviderType, isScopedToChannel, moneyToNumber, moneyToNumberSafe, numberToMoney, partitionByChannel, planFulfillment, transformFulfillmentOption, transformInventoryLevel, transformStockLocation, transformStorefrontConfig, validateAssignedBy, validateChannelId, validateChannelScopeAssignment, validateEntityId, validatePaymentId };
|
|
2693
|
+
export { AdminAuthService, type AdminSession, AdminSessionService, BIGCOMMERCE_CAPABILITIES, type BackendMapping, type BackendMetadataAdapter, type BackendMetadataAdapterConfig, BigCommerceProvider, type BigCommerceProviderConfig, CHANNEL_ASSIGNED_AT_KEY, CHANNEL_ASSIGNED_BY_KEY, CHANNEL_SCOPE_KEY, type ChannelScopeMetadata, ChannelScopeValidationError, type ChannelScopeable, CircuitBreaker, type CircuitBreakerConfig, CircuitBreakerOpenError, type CircuitBreakerStats, type CircuitState, CommerceError, ConfigurationError, type Coordinates, type FulfillmentGroup, type FulfillmentPlan, type LogLevel, type Logger, MAGENTO_CAPABILITIES, MEDUSA_CAPABILITIES, MOCK_CAPABILITIES, MagentoProvider, type MagentoProviderConfig, MedusaMetadataAdapter, MedusaProvider, type MedusaProviderConfig, type MetricsOrderInput, type MetricsProductInput, MetricsService, MockProvider, type MockProviderConfig, type PlanFulfillmentShippingAddress, ProviderAPIError, type ProviderFactoryConfig, ProviderNotFoundError, type ProviderType, ResourceNotFoundError, SHOPIFY_CAPABILITIES, SPREE_CAPABILITIES, STELORDER_CAPABILITIES, ShopifyProvider, type ShopifyProviderConfig, SpreeProvider, type SpreeProviderConfig, StelOrderProvider, type StelOrderProviderConfig, type UICartItem, type UICartTotals, type UIDiscountCode, type UIPaymentMethod, type UIShippingMethod, WOOCOMMERCE_CAPABILITIES, WooCommerceProvider, type WooCommerceProviderConfig, assertEntityBelongsToChannel, backendCircuitBreaker, buildChannelScopeMetadata, calculateDistance, createBackendMetadataAdapter, createLogger, createProvider, filterByChannel, filterGlobalOnly, geocodeAddress, getBackendProviderId, getCapabilityDescription, getChannelScope, isBackendCapabilities, isGlobalEntity, isProviderType, isScopedToChannel, moneyToNumber, moneyToNumberSafe, numberToMoney, partitionByChannel, planFulfillment, transformFulfillmentOption, transformInventoryLevel, transformStockLocation, transformStorefrontConfig, validateAssignedBy, validateChannelId, validateChannelScopeAssignment, validateEntityId, validatePaymentId };
|