@misiki/gocommerce-connector 0.4.1 → 0.4.3
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 +4 -1
- package/dist/{index-DIj1rK1d.d.cts → index-wGZwLTCe.d.cts} +19 -6
- package/dist/{index-DIj1rK1d.d.ts → index-wGZwLTCe.d.ts} +19 -6
- package/dist/index.cjs +24 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +24 -7
- package/dist/index.js.map +1 -1
- package/dist/services/index.cjs +24 -6
- package/dist/services/index.cjs.map +1 -1
- package/dist/services/index.d.cts +1 -1
- package/dist/services/index.d.ts +1 -1
- package/dist/services/index.js +24 -7
- package/dist/services/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -86,7 +86,10 @@ to the domain the engine hands out subdomains of and point every
|
|
|
86
86
|
`<slug>.<base domain>` at the one deployment: a request for `acme.shopnx.in` is
|
|
87
87
|
sent to the engine with `X-Store: acme`, by the same rule the engine applies to
|
|
88
88
|
its own host (one label, case-insensitive, a port ignored). A host outside the
|
|
89
|
-
base domain falls back to `PUBLIC_GOCOMMERCE_STORE
|
|
89
|
+
base domain falls back to `PUBLIC_GOCOMMERCE_STORE`; without one it is sent as
|
|
90
|
+
it is, `X-Store: chillish.in`, which the engine answers when a store has added
|
|
91
|
+
and verified that domain. Point a store's own domain at this deployment and it
|
|
92
|
+
shows that store.
|
|
90
93
|
|
|
91
94
|
The browser knows its own host. The server does not, so tell the connector where
|
|
92
95
|
to read it, once, from `src/hooks.server.ts`:
|
|
@@ -352,6 +352,7 @@ type StoreProfile = {
|
|
|
352
352
|
email: string;
|
|
353
353
|
phone: string;
|
|
354
354
|
support_url: string;
|
|
355
|
+
language: string;
|
|
355
356
|
};
|
|
356
357
|
type Vendor = {
|
|
357
358
|
id: number;
|
|
@@ -1182,9 +1183,11 @@ declare class BaseService {
|
|
|
1182
1183
|
protected get creds(): Credentials;
|
|
1183
1184
|
/**
|
|
1184
1185
|
* The store this call is for: the request host's subdomain under
|
|
1185
|
-
* `baseDomain`, else the static `store
|
|
1186
|
-
*
|
|
1187
|
-
*
|
|
1186
|
+
* `baseDomain`, else the static `store`, else the host itself when it is a
|
|
1187
|
+
* store's own domain (the engine answers only a verified one). Read per call,
|
|
1188
|
+
* never stored on the instance, because the server shares one process (and
|
|
1189
|
+
* one credentials object) across every concurrent request and each may be
|
|
1190
|
+
* for a different host.
|
|
1188
1191
|
*/
|
|
1189
1192
|
protected get store(): string | undefined;
|
|
1190
1193
|
/**
|
|
@@ -1237,6 +1240,13 @@ declare function setRequestHost(fn: () => string | undefined): void;
|
|
|
1237
1240
|
* `shopnx.in` itself name no store.
|
|
1238
1241
|
*/
|
|
1239
1242
|
declare function storeForHost(host: string | undefined, baseDomain: string | undefined): string | undefined;
|
|
1243
|
+
/**
|
|
1244
|
+
* A host outside `baseDomain` is a store's own domain, such as `chillish.in`,
|
|
1245
|
+
* which the engine looks up among its verified domains. Only a storefront
|
|
1246
|
+
* serving many stores (one with a `baseDomain`) passes it on; the base domain
|
|
1247
|
+
* itself, `localhost` and bare addresses are nobody's.
|
|
1248
|
+
*/
|
|
1249
|
+
declare function ownDomain(host: string | undefined, baseDomain: string | undefined): string | undefined;
|
|
1240
1250
|
/** `?a=1&b=2`, dropping what was not asked for. Arrays repeat the key. */
|
|
1241
1251
|
declare function qs(query?: Query): string;
|
|
1242
1252
|
/** The family's list shape, from the engine's `{data, meta}`. Totals are the engine's, never invented. */
|
|
@@ -1265,11 +1275,14 @@ declare class StoreFacts extends BaseService {
|
|
|
1265
1275
|
/** Enabled plugins by key. A module that is not installed has no key here. */
|
|
1266
1276
|
plugins(): Promise<Map<string, Plugin>>;
|
|
1267
1277
|
pluginOn(key: string): Promise<boolean>;
|
|
1268
|
-
/**
|
|
1278
|
+
/**
|
|
1279
|
+
* The store's settlement currency and default language, from routes bound
|
|
1280
|
+
* to the store: `/health/ready` answers for the install, so on a shared
|
|
1281
|
+
* engine every store read as the install's currency.
|
|
1282
|
+
*/
|
|
1269
1283
|
ready(): Promise<{
|
|
1270
1284
|
currency: string;
|
|
1271
1285
|
language: string;
|
|
1272
|
-
version: string;
|
|
1273
1286
|
}>;
|
|
1274
1287
|
/** The store's own name and how a buyer reaches it, as set in its panel. */
|
|
1275
1288
|
profile(): Promise<StoreProfile>;
|
|
@@ -6502,4 +6515,4 @@ declare class B2bService extends BaseService {
|
|
|
6502
6515
|
}
|
|
6503
6516
|
declare const b2bService: B2bService;
|
|
6504
6517
|
|
|
6505
|
-
export { type Menu as $, type Address as A, type B2bPlaced as B, type Cart as C, CountryService as D, CouponService as E, type Credentials as F, type Credit as G, CurrencyService as H, type Customer as I, DealService as J, DemoRequestService as K, type EngineRequest as L, EnquiryService as M, type Envelope as N, type Faq as O, FaqService as P, FeedbackService as Q, type Fulfillment as R, GalleryService as S, HomeService as T, type IdentityAddress as U, InitService as V, type Invitation as W, type Lead as X, type ListMeta as Y, MeilisearchService as Z, type Member as _, AddressService as a, collectionService as a$, type MenuItem as a0, MenuService as a1, type MenuSummary as a2, type Money as a3, NewsletterService as a4, type Offer as a5, type Order as a6, type OrderLine as a7, OrderService as a8, PageService as a9, type StorefrontCategory as aA, type StorefrontMenu as aB, type StorefrontOrder as aC, type StorefrontProduct as aD, UploadService as aE, UserService as aF, type Variant as aG, type VariantImage as aH, VariantService as aI, VarniCustomDesignService as aJ, VarniCustomProductService as aK, type Vendor as aL, VendorService as aM, WarrantyService as aN, type Wishlist as aO, type WishlistItem as aP, WishlistService as aQ, addressService as aR, authService as aS, autocompleteService as aT, b2bService as aU, bannerService as aV, blogService as aW, cartService as aX, categoryService as aY, chatService as aZ, checkoutService as a_, type PaymentIntent as aa, PaymentMethodService as ab, type Plugin as ac, PluginService as ad, PopularSearchService as ae, PopularityService as af, type Product as ag, type ProductOption as ah, ProductService as ai, ProfileService as aj, type Quote as ak, REDIRECT_GATEWAYS as al, ReelsService as am, RegionService as an, type RejectedLine as ao, type Review as ap, type ReviewPage as aq, ReviewService as ar, type SearchDoc as as, type SearchResult as at, SearchService as au, SettingService as av, type ShippingRate as aw, StateService as ax, type StoreProfile as ay, StoreService as az, type AppliedDiscount as b,
|
|
6518
|
+
export { type Menu as $, type Address as A, type B2bPlaced as B, type Cart as C, CountryService as D, CouponService as E, type Credentials as F, type Credit as G, CurrencyService as H, type Customer as I, DealService as J, DemoRequestService as K, type EngineRequest as L, EnquiryService as M, type Envelope as N, type Faq as O, FaqService as P, FeedbackService as Q, type Fulfillment as R, GalleryService as S, HomeService as T, type IdentityAddress as U, InitService as V, type Invitation as W, type Lead as X, type ListMeta as Y, MeilisearchService as Z, type Member as _, AddressService as a, collectionService as a$, type MenuItem as a0, MenuService as a1, type MenuSummary as a2, type Money as a3, NewsletterService as a4, type Offer as a5, type Order as a6, type OrderLine as a7, OrderService as a8, PageService as a9, type StorefrontCategory as aA, type StorefrontMenu as aB, type StorefrontOrder as aC, type StorefrontProduct as aD, UploadService as aE, UserService as aF, type Variant as aG, type VariantImage as aH, VariantService as aI, VarniCustomDesignService as aJ, VarniCustomProductService as aK, type Vendor as aL, VendorService as aM, WarrantyService as aN, type Wishlist as aO, type WishlistItem as aP, WishlistService as aQ, addressService as aR, authService as aS, autocompleteService as aT, b2bService as aU, bannerService as aV, blogService as aW, cartService as aX, categoryService as aY, chatService as aZ, checkoutService as a_, type PaymentIntent as aa, PaymentMethodService as ab, type Plugin as ac, PluginService as ad, PopularSearchService as ae, PopularityService as af, type Product as ag, type ProductOption as ah, ProductService as ai, ProfileService as aj, type Quote as ak, REDIRECT_GATEWAYS as al, ReelsService as am, RegionService as an, type RejectedLine as ao, type Review as ap, type ReviewPage as aq, ReviewService as ar, type SearchDoc as as, type SearchResult as at, SearchService as au, SettingService as av, type ShippingRate as aw, StateService as ax, type StoreProfile as ay, StoreService as az, type AppliedDiscount as b, uploadService as b$, contactService as b0, countryService as b1, couponService as b2, currencyExponent as b3, currencyService as b4, dealService as b5, demoRequestService as b6, emptyCart as b7, emptyPage as b8, enquiryService as b9, reelsService as bA, regionService as bB, reviewService as bC, searchService as bD, setRequestHost as bE, settingService as bF, settingsService as bG, stateService as bH, staticStore as bI, storeForHost as bJ, storeService as bK, toCart as bL, toCartLine as bM, toCategory as bN, toCmsPage as bO, toCollection as bP, toEngineAddress as bQ, toIdentityAddress as bR, toMajor as bS, toMinor as bT, toOrder as bU, toPage as bV, toProduct as bW, toRating as bX, toUser as bY, toVariant as bZ, toVendor as b_, faqService as ba, feedbackService as bb, fromEngineAddress as bc, fromIdentityAddress as bd, fromSearchDoc as be, galleryService as bf, homeService as bg, initService as bh, mediaUrl as bi, meilisearchService as bj, menuService as bk, minorToMajor as bl, newsletterService as bm, orderService as bn, ownDomain as bo, pageService as bp, paymentMethodService as bq, pluginService as br, pluginsService as bs, popularSearchService as bt, popularityService as bu, priceOf as bv, productImages as bw, productService as bx, profileService as by, qs as bz, type Approval as c, userService as c0, variantService as c1, varniCustomDesignService as c2, varniCustomProductService as c3, vendorService as c4, warrantyService as c5, wishlistService as c6, type AuthResponse as d, AuthService as e, AutocompleteService as f, type B2bRole as g, B2bService as h, BannerService as i, BaseService as j, BlogService as k, type CartLine as l, CartService as m, CatalogService as n, type Category as o, CategoryService as p, ChatService as q, type CheckoutOptions as r, type CheckoutResult as s, CheckoutService as t, type CmsPage as u, type Collection as v, CollectionService as w, type Company as x, type CompanyOrder as y, ContactService as z };
|
|
@@ -352,6 +352,7 @@ type StoreProfile = {
|
|
|
352
352
|
email: string;
|
|
353
353
|
phone: string;
|
|
354
354
|
support_url: string;
|
|
355
|
+
language: string;
|
|
355
356
|
};
|
|
356
357
|
type Vendor = {
|
|
357
358
|
id: number;
|
|
@@ -1182,9 +1183,11 @@ declare class BaseService {
|
|
|
1182
1183
|
protected get creds(): Credentials;
|
|
1183
1184
|
/**
|
|
1184
1185
|
* The store this call is for: the request host's subdomain under
|
|
1185
|
-
* `baseDomain`, else the static `store
|
|
1186
|
-
*
|
|
1187
|
-
*
|
|
1186
|
+
* `baseDomain`, else the static `store`, else the host itself when it is a
|
|
1187
|
+
* store's own domain (the engine answers only a verified one). Read per call,
|
|
1188
|
+
* never stored on the instance, because the server shares one process (and
|
|
1189
|
+
* one credentials object) across every concurrent request and each may be
|
|
1190
|
+
* for a different host.
|
|
1188
1191
|
*/
|
|
1189
1192
|
protected get store(): string | undefined;
|
|
1190
1193
|
/**
|
|
@@ -1237,6 +1240,13 @@ declare function setRequestHost(fn: () => string | undefined): void;
|
|
|
1237
1240
|
* `shopnx.in` itself name no store.
|
|
1238
1241
|
*/
|
|
1239
1242
|
declare function storeForHost(host: string | undefined, baseDomain: string | undefined): string | undefined;
|
|
1243
|
+
/**
|
|
1244
|
+
* A host outside `baseDomain` is a store's own domain, such as `chillish.in`,
|
|
1245
|
+
* which the engine looks up among its verified domains. Only a storefront
|
|
1246
|
+
* serving many stores (one with a `baseDomain`) passes it on; the base domain
|
|
1247
|
+
* itself, `localhost` and bare addresses are nobody's.
|
|
1248
|
+
*/
|
|
1249
|
+
declare function ownDomain(host: string | undefined, baseDomain: string | undefined): string | undefined;
|
|
1240
1250
|
/** `?a=1&b=2`, dropping what was not asked for. Arrays repeat the key. */
|
|
1241
1251
|
declare function qs(query?: Query): string;
|
|
1242
1252
|
/** The family's list shape, from the engine's `{data, meta}`. Totals are the engine's, never invented. */
|
|
@@ -1265,11 +1275,14 @@ declare class StoreFacts extends BaseService {
|
|
|
1265
1275
|
/** Enabled plugins by key. A module that is not installed has no key here. */
|
|
1266
1276
|
plugins(): Promise<Map<string, Plugin>>;
|
|
1267
1277
|
pluginOn(key: string): Promise<boolean>;
|
|
1268
|
-
/**
|
|
1278
|
+
/**
|
|
1279
|
+
* The store's settlement currency and default language, from routes bound
|
|
1280
|
+
* to the store: `/health/ready` answers for the install, so on a shared
|
|
1281
|
+
* engine every store read as the install's currency.
|
|
1282
|
+
*/
|
|
1269
1283
|
ready(): Promise<{
|
|
1270
1284
|
currency: string;
|
|
1271
1285
|
language: string;
|
|
1272
|
-
version: string;
|
|
1273
1286
|
}>;
|
|
1274
1287
|
/** The store's own name and how a buyer reaches it, as set in its panel. */
|
|
1275
1288
|
profile(): Promise<StoreProfile>;
|
|
@@ -6502,4 +6515,4 @@ declare class B2bService extends BaseService {
|
|
|
6502
6515
|
}
|
|
6503
6516
|
declare const b2bService: B2bService;
|
|
6504
6517
|
|
|
6505
|
-
export { type Menu as $, type Address as A, type B2bPlaced as B, type Cart as C, CountryService as D, CouponService as E, type Credentials as F, type Credit as G, CurrencyService as H, type Customer as I, DealService as J, DemoRequestService as K, type EngineRequest as L, EnquiryService as M, type Envelope as N, type Faq as O, FaqService as P, FeedbackService as Q, type Fulfillment as R, GalleryService as S, HomeService as T, type IdentityAddress as U, InitService as V, type Invitation as W, type Lead as X, type ListMeta as Y, MeilisearchService as Z, type Member as _, AddressService as a, collectionService as a$, type MenuItem as a0, MenuService as a1, type MenuSummary as a2, type Money as a3, NewsletterService as a4, type Offer as a5, type Order as a6, type OrderLine as a7, OrderService as a8, PageService as a9, type StorefrontCategory as aA, type StorefrontMenu as aB, type StorefrontOrder as aC, type StorefrontProduct as aD, UploadService as aE, UserService as aF, type Variant as aG, type VariantImage as aH, VariantService as aI, VarniCustomDesignService as aJ, VarniCustomProductService as aK, type Vendor as aL, VendorService as aM, WarrantyService as aN, type Wishlist as aO, type WishlistItem as aP, WishlistService as aQ, addressService as aR, authService as aS, autocompleteService as aT, b2bService as aU, bannerService as aV, blogService as aW, cartService as aX, categoryService as aY, chatService as aZ, checkoutService as a_, type PaymentIntent as aa, PaymentMethodService as ab, type Plugin as ac, PluginService as ad, PopularSearchService as ae, PopularityService as af, type Product as ag, type ProductOption as ah, ProductService as ai, ProfileService as aj, type Quote as ak, REDIRECT_GATEWAYS as al, ReelsService as am, RegionService as an, type RejectedLine as ao, type Review as ap, type ReviewPage as aq, ReviewService as ar, type SearchDoc as as, type SearchResult as at, SearchService as au, SettingService as av, type ShippingRate as aw, StateService as ax, type StoreProfile as ay, StoreService as az, type AppliedDiscount as b,
|
|
6518
|
+
export { type Menu as $, type Address as A, type B2bPlaced as B, type Cart as C, CountryService as D, CouponService as E, type Credentials as F, type Credit as G, CurrencyService as H, type Customer as I, DealService as J, DemoRequestService as K, type EngineRequest as L, EnquiryService as M, type Envelope as N, type Faq as O, FaqService as P, FeedbackService as Q, type Fulfillment as R, GalleryService as S, HomeService as T, type IdentityAddress as U, InitService as V, type Invitation as W, type Lead as X, type ListMeta as Y, MeilisearchService as Z, type Member as _, AddressService as a, collectionService as a$, type MenuItem as a0, MenuService as a1, type MenuSummary as a2, type Money as a3, NewsletterService as a4, type Offer as a5, type Order as a6, type OrderLine as a7, OrderService as a8, PageService as a9, type StorefrontCategory as aA, type StorefrontMenu as aB, type StorefrontOrder as aC, type StorefrontProduct as aD, UploadService as aE, UserService as aF, type Variant as aG, type VariantImage as aH, VariantService as aI, VarniCustomDesignService as aJ, VarniCustomProductService as aK, type Vendor as aL, VendorService as aM, WarrantyService as aN, type Wishlist as aO, type WishlistItem as aP, WishlistService as aQ, addressService as aR, authService as aS, autocompleteService as aT, b2bService as aU, bannerService as aV, blogService as aW, cartService as aX, categoryService as aY, chatService as aZ, checkoutService as a_, type PaymentIntent as aa, PaymentMethodService as ab, type Plugin as ac, PluginService as ad, PopularSearchService as ae, PopularityService as af, type Product as ag, type ProductOption as ah, ProductService as ai, ProfileService as aj, type Quote as ak, REDIRECT_GATEWAYS as al, ReelsService as am, RegionService as an, type RejectedLine as ao, type Review as ap, type ReviewPage as aq, ReviewService as ar, type SearchDoc as as, type SearchResult as at, SearchService as au, SettingService as av, type ShippingRate as aw, StateService as ax, type StoreProfile as ay, StoreService as az, type AppliedDiscount as b, uploadService as b$, contactService as b0, countryService as b1, couponService as b2, currencyExponent as b3, currencyService as b4, dealService as b5, demoRequestService as b6, emptyCart as b7, emptyPage as b8, enquiryService as b9, reelsService as bA, regionService as bB, reviewService as bC, searchService as bD, setRequestHost as bE, settingService as bF, settingsService as bG, stateService as bH, staticStore as bI, storeForHost as bJ, storeService as bK, toCart as bL, toCartLine as bM, toCategory as bN, toCmsPage as bO, toCollection as bP, toEngineAddress as bQ, toIdentityAddress as bR, toMajor as bS, toMinor as bT, toOrder as bU, toPage as bV, toProduct as bW, toRating as bX, toUser as bY, toVariant as bZ, toVendor as b_, faqService as ba, feedbackService as bb, fromEngineAddress as bc, fromIdentityAddress as bd, fromSearchDoc as be, galleryService as bf, homeService as bg, initService as bh, mediaUrl as bi, meilisearchService as bj, menuService as bk, minorToMajor as bl, newsletterService as bm, orderService as bn, ownDomain as bo, pageService as bp, paymentMethodService as bq, pluginService as br, pluginsService as bs, popularSearchService as bt, popularityService as bu, priceOf as bv, productImages as bw, productService as bx, profileService as by, qs as bz, type Approval as c, userService as c0, variantService as c1, varniCustomDesignService as c2, varniCustomProductService as c3, vendorService as c4, warrantyService as c5, wishlistService as c6, type AuthResponse as d, AuthService as e, AutocompleteService as f, type B2bRole as g, B2bService as h, BannerService as i, BaseService as j, BlogService as k, type CartLine as l, CartService as m, CatalogService as n, type Category as o, CategoryService as p, ChatService as q, type CheckoutOptions as r, type CheckoutResult as s, CheckoutService as t, type CmsPage as u, type Collection as v, CollectionService as w, type Company as x, type CompanyOrder as y, ContactService as z };
|
package/dist/index.cjs
CHANGED
|
@@ -287,14 +287,16 @@ var BaseService = class _BaseService {
|
|
|
287
287
|
}
|
|
288
288
|
/**
|
|
289
289
|
* The store this call is for: the request host's subdomain under
|
|
290
|
-
* `baseDomain`, else the static `store
|
|
291
|
-
*
|
|
292
|
-
*
|
|
290
|
+
* `baseDomain`, else the static `store`, else the host itself when it is a
|
|
291
|
+
* store's own domain (the engine answers only a verified one). Read per call,
|
|
292
|
+
* never stored on the instance, because the server shares one process (and
|
|
293
|
+
* one credentials object) across every concurrent request and each may be
|
|
294
|
+
* for a different host.
|
|
293
295
|
*/
|
|
294
296
|
get store() {
|
|
295
297
|
const { baseDomain, store } = this.creds;
|
|
296
298
|
const host = typeof window !== "undefined" ? window.location?.hostname : requestHost?.();
|
|
297
|
-
return storeForHost(host, baseDomain) ?? store;
|
|
299
|
+
return storeForHost(host, baseDomain) ?? store ?? ownDomain(host, baseDomain);
|
|
298
300
|
}
|
|
299
301
|
/**
|
|
300
302
|
* The engine's base URL from wherever this code runs. In the browser a
|
|
@@ -444,6 +446,14 @@ function storeForHost(host, baseDomain) {
|
|
|
444
446
|
const slug = h.slice(0, -suffix.length);
|
|
445
447
|
return slug && !slug.includes(".") ? slug : void 0;
|
|
446
448
|
}
|
|
449
|
+
function ownDomain(host, baseDomain) {
|
|
450
|
+
if (!host || !baseDomain) return void 0;
|
|
451
|
+
const h = host.toLowerCase().replace(/:\d+$/, "").replace(/\.$/, "");
|
|
452
|
+
const base = baseDomain.toLowerCase().replace(/^\.+/, "").replace(/\.$/, "");
|
|
453
|
+
if (!h.includes(".") || h === base || h.endsWith("." + base) || h.endsWith(".localhost")) return void 0;
|
|
454
|
+
if (/^[\d.]+$/.test(h) || h.includes(":") || h.startsWith("[")) return void 0;
|
|
455
|
+
return h;
|
|
456
|
+
}
|
|
447
457
|
var unreachable = (base, cause) => new GoCommerceError(`Could not reach the commerce engine at ${base}: ${cause?.message ?? cause}`, 0);
|
|
448
458
|
function qs(query) {
|
|
449
459
|
if (!query) return "";
|
|
@@ -1007,9 +1017,16 @@ var StoreFacts = class extends BaseService {
|
|
|
1007
1017
|
return false;
|
|
1008
1018
|
}
|
|
1009
1019
|
}
|
|
1010
|
-
/**
|
|
1020
|
+
/**
|
|
1021
|
+
* The store's settlement currency and default language, from routes bound
|
|
1022
|
+
* to the store: `/health/ready` answers for the install, so on a shared
|
|
1023
|
+
* engine every store read as the install's currency.
|
|
1024
|
+
*/
|
|
1011
1025
|
ready() {
|
|
1012
|
-
return remember(this.key("ready"), () =>
|
|
1026
|
+
return remember(this.key("ready"), async () => {
|
|
1027
|
+
const [{ currency }, { language }] = await Promise.all([this.checkoutOptions(), this.profile()]);
|
|
1028
|
+
return { currency, language };
|
|
1029
|
+
});
|
|
1013
1030
|
}
|
|
1014
1031
|
/** The store's own name and how a buyer reaches it, as set in its panel. */
|
|
1015
1032
|
profile() {
|
|
@@ -3214,6 +3231,7 @@ exports.menuService = menuService;
|
|
|
3214
3231
|
exports.minorToMajor = minorToMajor;
|
|
3215
3232
|
exports.newsletterService = newsletterService;
|
|
3216
3233
|
exports.orderService = orderService;
|
|
3234
|
+
exports.ownDomain = ownDomain;
|
|
3217
3235
|
exports.pageService = pageService;
|
|
3218
3236
|
exports.paymentMethodService = paymentMethodService;
|
|
3219
3237
|
exports.pluginService = pluginService;
|