@plasmicpkgs/commerce 0.0.1 → 0.0.2
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 +1 -0
- package/dist/api/endpoints/cart.d.ts +4 -0
- package/dist/api/endpoints/catalog/products.d.ts +4 -0
- package/dist/api/index.d.ts +75 -0
- package/dist/api/operations.d.ts +130 -0
- package/dist/api/utils/errors.d.ts +10 -0
- package/dist/api/utils/is-allowed-method.d.ts +3 -0
- package/dist/api/utils/is-allowed-operation.d.ts +6 -0
- package/dist/api/utils/types.d.ts +34 -0
- package/dist/cart/use-add-item.d.ts +5 -6
- package/dist/cart/use-cart.d.ts +5 -6
- package/dist/cart/use-remove-item.d.ts +5 -6
- package/dist/cart/use-update-item.d.ts +5 -6
- package/dist/commerce.cjs.development.js +1851 -0
- package/dist/commerce.cjs.development.js.map +1 -0
- package/dist/commerce.cjs.production.min.js +2 -0
- package/dist/commerce.cjs.production.min.js.map +1 -0
- package/dist/commerce.d.ts +37 -0
- package/dist/commerce.esm.js +1828 -0
- package/dist/commerce.esm.js.map +1 -0
- package/dist/contexts.d.ts +10 -7
- package/dist/index.d.ts +21 -71
- package/dist/index.js +7 -28
- package/dist/product/use-price.d.ts +26 -26
- package/dist/product/use-search.d.ts +6 -6
- package/dist/registerAddToCartButton.d.ts +10 -0
- package/dist/registerProductCollection.d.ts +13 -11
- package/dist/registerProductMedia.d.ts +12 -0
- package/dist/registerProductPrice.d.ts +9 -0
- package/dist/registerProductQuantity.d.ts +11 -0
- package/dist/registerProductTextField.d.ts +10 -0
- package/dist/registerProductVariantPicker.d.ts +9 -0
- package/dist/registerUseCart.d.ts +9 -0
- package/dist/registerable.d.ts +4 -4
- package/dist/types/cart.d.ts +157 -157
- package/dist/types/checkout.d.ts +57 -57
- package/dist/types/common.d.ts +13 -13
- package/dist/types/customer/address.d.ts +110 -110
- package/dist/types/customer/card.d.ts +113 -113
- package/dist/types/customer/index.d.ts +24 -24
- package/dist/types/index.d.ts +12 -12
- package/dist/types/login.d.ts +27 -27
- package/dist/types/logout.d.ts +17 -17
- package/dist/types/page.d.ts +24 -24
- package/dist/types/product.d.ts +102 -99
- package/dist/types/signup.d.ts +23 -23
- package/dist/types/site.d.ts +17 -17
- package/dist/types/wishlist.d.ts +83 -83
- package/dist/utils/default-fetcher.d.ts +4 -4
- package/dist/utils/define-property.d.ts +21 -21
- package/dist/utils/errors.d.ts +27 -27
- package/dist/utils/get-product-price.d.ts +2 -0
- package/dist/utils/types.d.ts +95 -94
- package/dist/utils/use-data.d.ts +12 -12
- package/dist/utils/use-hook.d.ts +6 -6
- package/package.json +13 -13
- package/dist/auth/use-login.d.ts +0 -6
- package/dist/auth/use-login.js +0 -9
- package/dist/auth/use-logout.d.ts +0 -6
- package/dist/auth/use-logout.js +0 -9
- package/dist/auth/use-signup.d.ts +0 -6
- package/dist/auth/use-signup.js +0 -9
- package/dist/cart/use-add-item.js +0 -9
- package/dist/cart/use-cart.js +0 -18
- package/dist/cart/use-remove-item.js +0 -9
- package/dist/cart/use-update-item.js +0 -9
- package/dist/checkout/use-checkout.d.ts +0 -6
- package/dist/checkout/use-checkout.js +0 -18
- package/dist/checkout/use-submit-checkout.d.ts +0 -6
- package/dist/checkout/use-submit-checkout.js +0 -9
- package/dist/contexts.js +0 -46
- package/dist/customer/address/use-add-item.d.ts +0 -6
- package/dist/customer/address/use-add-item.js +0 -9
- package/dist/customer/address/use-addresses.d.ts +0 -6
- package/dist/customer/address/use-addresses.js +0 -18
- package/dist/customer/address/use-remove-item.d.ts +0 -6
- package/dist/customer/address/use-remove-item.js +0 -9
- package/dist/customer/address/use-update-item.d.ts +0 -6
- package/dist/customer/address/use-update-item.js +0 -9
- package/dist/customer/card/use-add-item.d.ts +0 -6
- package/dist/customer/card/use-add-item.js +0 -9
- package/dist/customer/card/use-cards.d.ts +0 -6
- package/dist/customer/card/use-cards.js +0 -18
- package/dist/customer/card/use-remove-item.d.ts +0 -6
- package/dist/customer/card/use-remove-item.js +0 -9
- package/dist/customer/card/use-update-item.d.ts +0 -6
- package/dist/customer/card/use-update-item.js +0 -9
- package/dist/customer/use-customer.d.ts +0 -6
- package/dist/customer/use-customer.js +0 -9
- package/dist/product/use-price.js +0 -33
- package/dist/product/use-search.js +0 -9
- package/dist/registerProductCollection.js +0 -42
- package/dist/registerProductImage.d.ts +0 -13
- package/dist/registerProductImage.js +0 -37
- package/dist/registerable.js +0 -0
- package/dist/tsconfig.tsbuildinfo +0 -2970
- package/dist/types/cart.js +0 -0
- package/dist/types/checkout.js +0 -0
- package/dist/types/common.js +0 -0
- package/dist/types/customer/address.js +0 -0
- package/dist/types/customer/card.js +0 -0
- package/dist/types/customer/index.js +0 -2
- package/dist/types/index.js +0 -11
- package/dist/types/login.js +0 -0
- package/dist/types/logout.js +0 -0
- package/dist/types/page.js +0 -0
- package/dist/types/product.js +0 -0
- package/dist/types/signup.js +0 -0
- package/dist/types/site.js +0 -0
- package/dist/types/wishlist.js +0 -0
- package/dist/utils/default-fetcher.js +0 -3
- package/dist/utils/define-property.js +0 -4
- package/dist/utils/errors.js +0 -24
- package/dist/utils/types.js +0 -0
- package/dist/utils/use-data.js +0 -43
- package/dist/utils/use-hook.js +0 -37
package/dist/auth/use-login.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.auth?.useLogin;
|
|
5
|
-
const useLogin = (...args) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(...args);
|
|
8
|
-
};
|
|
9
|
-
export default useLogin;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { HookFetcherFn, MutationHook } from '../utils/types';
|
|
2
|
-
import type { LogoutHook } from '../types/logout';
|
|
3
|
-
export declare type UseLogout<H extends MutationHook<LogoutHook<any>> = MutationHook<LogoutHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<LogoutHook>;
|
|
5
|
-
declare const useLogout: UseLogout;
|
|
6
|
-
export default useLogout;
|
package/dist/auth/use-logout.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.auth?.useLogout;
|
|
5
|
-
const useLogout = (...args) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(...args);
|
|
8
|
-
};
|
|
9
|
-
export default useLogout;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { HookFetcherFn, MutationHook } from '../utils/types';
|
|
2
|
-
import type { SignupHook } from '../types/signup';
|
|
3
|
-
export declare type UseSignup<H extends MutationHook<SignupHook<any>> = MutationHook<SignupHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<SignupHook>;
|
|
5
|
-
declare const useSignup: UseSignup;
|
|
6
|
-
export default useSignup;
|
package/dist/auth/use-signup.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.auth?.useSignup;
|
|
5
|
-
const useSignup = (...args) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(...args);
|
|
8
|
-
};
|
|
9
|
-
export default useSignup;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.cart?.useAddItem;
|
|
5
|
-
const useAddItem = (...args) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(...args);
|
|
8
|
-
};
|
|
9
|
-
export default useAddItem;
|
package/dist/cart/use-cart.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import Cookies from 'js-cookie';
|
|
2
|
-
import { useHook, useSWRHook } from '../utils/use-hook';
|
|
3
|
-
import { useCommerce } from '..';
|
|
4
|
-
export const fetcher = async ({ options, input: { cartId }, fetch, }) => {
|
|
5
|
-
return cartId ? await fetch(options) : null;
|
|
6
|
-
};
|
|
7
|
-
const fn = (provider) => provider.cart?.useCart;
|
|
8
|
-
const useCart = (input) => {
|
|
9
|
-
const hook = useHook(fn);
|
|
10
|
-
const { cartCookie } = useCommerce();
|
|
11
|
-
const fetcherFn = hook.fetcher ?? fetcher;
|
|
12
|
-
const wrapper = (context) => {
|
|
13
|
-
context.input.cartId = Cookies.get(cartCookie);
|
|
14
|
-
return fetcherFn(context);
|
|
15
|
-
};
|
|
16
|
-
return useSWRHook({ ...hook, fetcher: wrapper })(input);
|
|
17
|
-
};
|
|
18
|
-
export default useCart;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.cart?.useRemoveItem;
|
|
5
|
-
const useRemoveItem = (input) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(input);
|
|
8
|
-
};
|
|
9
|
-
export default useRemoveItem;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.cart?.useUpdateItem;
|
|
5
|
-
const useUpdateItem = (input) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(input);
|
|
8
|
-
};
|
|
9
|
-
export default useUpdateItem;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { SWRHook, HookFetcherFn } from '../utils/types';
|
|
2
|
-
import type { GetCheckoutHook } from '../types/checkout';
|
|
3
|
-
export declare type UseCheckout<H extends SWRHook<GetCheckoutHook<any>> = SWRHook<GetCheckoutHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<GetCheckoutHook>;
|
|
5
|
-
declare const useCheckout: UseCheckout;
|
|
6
|
-
export default useCheckout;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import Cookies from 'js-cookie';
|
|
2
|
-
import { useHook, useSWRHook } from '../utils/use-hook';
|
|
3
|
-
import { useCommerce } from '..';
|
|
4
|
-
export const fetcher = async ({ options, input: { cartId }, fetch, }) => {
|
|
5
|
-
return cartId ? await fetch(options) : null;
|
|
6
|
-
};
|
|
7
|
-
const fn = (provider) => provider.checkout?.useCheckout;
|
|
8
|
-
const useCheckout = (input) => {
|
|
9
|
-
const hook = useHook(fn);
|
|
10
|
-
const { cartCookie } = useCommerce();
|
|
11
|
-
const fetcherFn = hook.fetcher ?? fetcher;
|
|
12
|
-
const wrapper = (context) => {
|
|
13
|
-
context.input.cartId = Cookies.get(cartCookie);
|
|
14
|
-
return fetcherFn(context);
|
|
15
|
-
};
|
|
16
|
-
return useSWRHook({ ...hook, fetcher: wrapper })(input);
|
|
17
|
-
};
|
|
18
|
-
export default useCheckout;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { HookFetcherFn, MutationHook } from '../utils/types';
|
|
2
|
-
import type { SubmitCheckoutHook } from '../types/checkout';
|
|
3
|
-
export declare type UseSubmitCheckout<H extends MutationHook<SubmitCheckoutHook<any>> = MutationHook<SubmitCheckoutHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<SubmitCheckoutHook>;
|
|
5
|
-
declare const useSubmitCheckout: UseSubmitCheckout;
|
|
6
|
-
export default useSubmitCheckout;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.checkout?.useSubmitCheckout;
|
|
5
|
-
const useSubmitCheckout = (...args) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(...args);
|
|
8
|
-
};
|
|
9
|
-
export default useSubmitCheckout;
|
package/dist/contexts.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import React, { useContext } from "react";
|
|
2
|
-
export const ProductContext = React.createContext(undefined);
|
|
3
|
-
function useProductPlaceholder() {
|
|
4
|
-
const [product, setProduct] = React.useState();
|
|
5
|
-
React.useEffect(() => {
|
|
6
|
-
(async () => {
|
|
7
|
-
const response = await fetch(`/api/catalog/products`);
|
|
8
|
-
const { products } = await response.json();
|
|
9
|
-
setProduct(products[2]);
|
|
10
|
-
})();
|
|
11
|
-
}, []);
|
|
12
|
-
return product;
|
|
13
|
-
}
|
|
14
|
-
export function useProduct(_useProductPlaceholder) {
|
|
15
|
-
const product = useContext(ProductContext);
|
|
16
|
-
if (product) {
|
|
17
|
-
return product;
|
|
18
|
-
}
|
|
19
|
-
if (_useProductPlaceholder) {
|
|
20
|
-
return useProductPlaceholder();
|
|
21
|
-
}
|
|
22
|
-
return undefined;
|
|
23
|
-
}
|
|
24
|
-
export const ProductCollectionContext = React.createContext(undefined);
|
|
25
|
-
function useProductCollectionPlaceholder() {
|
|
26
|
-
const [collection, setCollection] = React.useState();
|
|
27
|
-
React.useEffect(() => {
|
|
28
|
-
(async () => {
|
|
29
|
-
const response = await fetch(`/api/catalog/products`);
|
|
30
|
-
const { products } = await response.json();
|
|
31
|
-
setCollection(products);
|
|
32
|
-
})();
|
|
33
|
-
}, []);
|
|
34
|
-
return collection;
|
|
35
|
-
}
|
|
36
|
-
export function useProductCollection(_useProductCollectionPlaceholder) {
|
|
37
|
-
const collection = useContext(ProductCollectionContext);
|
|
38
|
-
if (collection) {
|
|
39
|
-
return collection;
|
|
40
|
-
}
|
|
41
|
-
if (_useProductCollectionPlaceholder) {
|
|
42
|
-
return useProductCollectionPlaceholder();
|
|
43
|
-
}
|
|
44
|
-
return undefined;
|
|
45
|
-
}
|
|
46
|
-
export const CommerceProviderContext = React.createContext(undefined);
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { HookFetcherFn, MutationHook } from '../../utils/types';
|
|
2
|
-
import type { AddItemHook } from '../../types/customer/address';
|
|
3
|
-
export declare type UseAddItem<H extends MutationHook<AddItemHook<any>> = MutationHook<AddItemHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<AddItemHook>;
|
|
5
|
-
declare const useAddItem: UseAddItem;
|
|
6
|
-
export default useAddItem;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.customer?.address?.useAddItem;
|
|
5
|
-
const useAddItem = (...args) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(...args);
|
|
8
|
-
};
|
|
9
|
-
export default useAddItem;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { SWRHook, HookFetcherFn } from '../../utils/types';
|
|
2
|
-
import type { GetAddressesHook } from '../../types/customer/address';
|
|
3
|
-
export declare type UseAddresses<H extends SWRHook<GetAddressesHook<any>> = SWRHook<GetAddressesHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<GetAddressesHook>;
|
|
5
|
-
declare const useAddresses: UseAddresses;
|
|
6
|
-
export default useAddresses;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import Cookies from 'js-cookie';
|
|
2
|
-
import { useHook, useSWRHook } from '../../utils/use-hook';
|
|
3
|
-
import { useCommerce } from '../..';
|
|
4
|
-
export const fetcher = async ({ options, input: { cartId }, fetch, }) => {
|
|
5
|
-
return cartId ? await fetch(options) : null;
|
|
6
|
-
};
|
|
7
|
-
const fn = (provider) => provider.customer?.address?.useAddresses;
|
|
8
|
-
const useAddresses = (input) => {
|
|
9
|
-
const hook = useHook(fn);
|
|
10
|
-
const { cartCookie } = useCommerce();
|
|
11
|
-
const fetcherFn = hook.fetcher ?? fetcher;
|
|
12
|
-
const wrapper = (context) => {
|
|
13
|
-
context.input.cartId = Cookies.get(cartCookie);
|
|
14
|
-
return fetcherFn(context);
|
|
15
|
-
};
|
|
16
|
-
return useSWRHook({ ...hook, fetcher: wrapper })(input);
|
|
17
|
-
};
|
|
18
|
-
export default useAddresses;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { HookFetcherFn, MutationHook } from '../../utils/types';
|
|
2
|
-
import type { RemoveItemHook } from '../../types/customer/address';
|
|
3
|
-
export declare type UseRemoveItem<H extends MutationHook<RemoveItemHook<any>> = MutationHook<RemoveItemHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<RemoveItemHook>;
|
|
5
|
-
declare const useRemoveItem: UseRemoveItem;
|
|
6
|
-
export default useRemoveItem;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.customer?.address?.useRemoveItem;
|
|
5
|
-
const useRemoveItem = (input) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(input);
|
|
8
|
-
};
|
|
9
|
-
export default useRemoveItem;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { HookFetcherFn, MutationHook } from '../../utils/types';
|
|
2
|
-
import type { UpdateItemHook } from '../../types/customer/address';
|
|
3
|
-
export declare type UseUpdateItem<H extends MutationHook<UpdateItemHook<any>> = MutationHook<UpdateItemHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<UpdateItemHook>;
|
|
5
|
-
declare const useUpdateItem: UseUpdateItem;
|
|
6
|
-
export default useUpdateItem;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.customer?.address?.useUpdateItem;
|
|
5
|
-
const useUpdateItem = (input) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(input);
|
|
8
|
-
};
|
|
9
|
-
export default useUpdateItem;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { HookFetcherFn, MutationHook } from '../../utils/types';
|
|
2
|
-
import type { AddItemHook } from '../../types/customer/card';
|
|
3
|
-
export declare type UseAddItem<H extends MutationHook<AddItemHook<any>> = MutationHook<AddItemHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<AddItemHook>;
|
|
5
|
-
declare const useAddItem: UseAddItem;
|
|
6
|
-
export default useAddItem;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.customer?.card?.useAddItem;
|
|
5
|
-
const useAddItem = (...args) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(...args);
|
|
8
|
-
};
|
|
9
|
-
export default useAddItem;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { SWRHook, HookFetcherFn } from '../../utils/types';
|
|
2
|
-
import type { GetCardsHook } from '../../types/customer/card';
|
|
3
|
-
export declare type UseCards<H extends SWRHook<GetCardsHook<any>> = SWRHook<GetCardsHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<GetCardsHook>;
|
|
5
|
-
declare const useCards: UseCards;
|
|
6
|
-
export default useCards;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import Cookies from 'js-cookie';
|
|
2
|
-
import { useHook, useSWRHook } from '../../utils/use-hook';
|
|
3
|
-
import { useCommerce } from '../..';
|
|
4
|
-
export const fetcher = async ({ options, input: { cartId }, fetch, }) => {
|
|
5
|
-
return cartId ? await fetch(options) : null;
|
|
6
|
-
};
|
|
7
|
-
const fn = (provider) => provider.customer?.card?.useCards;
|
|
8
|
-
const useCards = (input) => {
|
|
9
|
-
const hook = useHook(fn);
|
|
10
|
-
const { cartCookie } = useCommerce();
|
|
11
|
-
const fetcherFn = hook.fetcher ?? fetcher;
|
|
12
|
-
const wrapper = (context) => {
|
|
13
|
-
context.input.cartId = Cookies.get(cartCookie);
|
|
14
|
-
return fetcherFn(context);
|
|
15
|
-
};
|
|
16
|
-
return useSWRHook({ ...hook, fetcher: wrapper })(input);
|
|
17
|
-
};
|
|
18
|
-
export default useCards;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { HookFetcherFn, MutationHook } from '../../utils/types';
|
|
2
|
-
import type { RemoveItemHook } from '../../types/customer/card';
|
|
3
|
-
export declare type UseRemoveItem<H extends MutationHook<RemoveItemHook<any>> = MutationHook<RemoveItemHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<RemoveItemHook>;
|
|
5
|
-
declare const useRemoveItem: UseRemoveItem;
|
|
6
|
-
export default useRemoveItem;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider.customer?.card?.useRemoveItem;
|
|
5
|
-
const useRemoveItem = (input) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(input);
|
|
8
|
-
};
|
|
9
|
-
export default useRemoveItem;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { HookFetcherFn, MutationHook } from '../../utils/types';
|
|
2
|
-
import type { UpdateItemHook } from '../../types/customer/card';
|
|
3
|
-
export declare type UseUpdateItem<H extends MutationHook<UpdateItemHook<any>> = MutationHook<UpdateItemHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<UpdateItemHook>;
|
|
5
|
-
declare const useUpdateItem: UseUpdateItem;
|
|
6
|
-
export default useUpdateItem;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useMutationHook } from '../../utils/use-hook';
|
|
2
|
-
import { mutationFetcher } from '../../utils/default-fetcher';
|
|
3
|
-
export const fetcher = mutationFetcher;
|
|
4
|
-
const fn = (provider) => provider?.customer?.card?.useUpdateItem;
|
|
5
|
-
const useUpdateItem = (input) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useMutationHook({ fetcher, ...hook })(input);
|
|
8
|
-
};
|
|
9
|
-
export default useUpdateItem;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { CustomerHook } from '../types/customer';
|
|
2
|
-
import type { HookFetcherFn, SWRHook } from '../utils/types';
|
|
3
|
-
export declare type UseCustomer<H extends SWRHook<CustomerHook<any>> = SWRHook<CustomerHook>> = ReturnType<H['useHook']>;
|
|
4
|
-
export declare const fetcher: HookFetcherFn<CustomerHook>;
|
|
5
|
-
declare const useCustomer: UseCustomer;
|
|
6
|
-
export default useCustomer;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useSWRHook } from '../utils/use-hook';
|
|
2
|
-
import { SWRFetcher } from '../utils/default-fetcher';
|
|
3
|
-
export const fetcher = SWRFetcher;
|
|
4
|
-
const fn = (provider) => provider.customer?.useCustomer;
|
|
5
|
-
const useCustomer = (input) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useSWRHook({ fetcher, ...hook })(input);
|
|
8
|
-
};
|
|
9
|
-
export default useCustomer;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { useMemo } from 'react';
|
|
2
|
-
import { useCommerce } from '..';
|
|
3
|
-
export function formatPrice({ amount, currencyCode, locale, }) {
|
|
4
|
-
const formatCurrency = new Intl.NumberFormat(locale, {
|
|
5
|
-
style: 'currency',
|
|
6
|
-
currency: currencyCode,
|
|
7
|
-
});
|
|
8
|
-
return formatCurrency.format(amount);
|
|
9
|
-
}
|
|
10
|
-
export function formatVariantPrice({ amount, baseAmount, currencyCode, locale, }) {
|
|
11
|
-
const hasDiscount = baseAmount > amount;
|
|
12
|
-
const formatDiscount = new Intl.NumberFormat(locale, { style: 'percent' });
|
|
13
|
-
const discount = hasDiscount
|
|
14
|
-
? formatDiscount.format((baseAmount - amount) / baseAmount)
|
|
15
|
-
: null;
|
|
16
|
-
const price = formatPrice({ amount, currencyCode, locale });
|
|
17
|
-
const basePrice = hasDiscount
|
|
18
|
-
? formatPrice({ amount: baseAmount, currencyCode, locale })
|
|
19
|
-
: null;
|
|
20
|
-
return { price, basePrice, discount };
|
|
21
|
-
}
|
|
22
|
-
export default function usePrice(data) {
|
|
23
|
-
const { amount, baseAmount, currencyCode } = data ?? {};
|
|
24
|
-
const { locale } = useCommerce();
|
|
25
|
-
const value = useMemo(() => {
|
|
26
|
-
if (typeof amount !== 'number' || !currencyCode)
|
|
27
|
-
return '';
|
|
28
|
-
return baseAmount
|
|
29
|
-
? formatVariantPrice({ amount, baseAmount, currencyCode, locale })
|
|
30
|
-
: formatPrice({ amount, currencyCode, locale });
|
|
31
|
-
}, [amount, baseAmount, currencyCode]);
|
|
32
|
-
return typeof value === 'string' ? { price: value } : value;
|
|
33
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { useHook, useSWRHook } from '../utils/use-hook';
|
|
2
|
-
import { SWRFetcher } from '../utils/default-fetcher';
|
|
3
|
-
export const fetcher = SWRFetcher;
|
|
4
|
-
const fn = (provider) => provider.products?.useSearch;
|
|
5
|
-
const useSearch = (input) => {
|
|
6
|
-
const hook = useHook(fn);
|
|
7
|
-
return useSWRHook({ fetcher, ...hook })(input);
|
|
8
|
-
};
|
|
9
|
-
export default useSearch;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import registerComponent from "@plasmicapp/host/registerComponent";
|
|
2
|
-
import React from "react";
|
|
3
|
-
import useSWR from "swr";
|
|
4
|
-
import { ProductCollectionContext } from "./contexts";
|
|
5
|
-
export const productCollectionMeta = {
|
|
6
|
-
name: "PlasmicCommercePkgs: ProductCollection",
|
|
7
|
-
displayName: "Product Collection",
|
|
8
|
-
props: {
|
|
9
|
-
count: {
|
|
10
|
-
type: "number",
|
|
11
|
-
description: "Set the number of products in the collection",
|
|
12
|
-
defaultValueHint: 6
|
|
13
|
-
},
|
|
14
|
-
children: {
|
|
15
|
-
type: "slot",
|
|
16
|
-
defaultValue: {
|
|
17
|
-
type: "text",
|
|
18
|
-
value: "Text"
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
importPath: "commerce-providers",
|
|
23
|
-
importName: "ProductCollection",
|
|
24
|
-
};
|
|
25
|
-
export function ProductCollection(props) {
|
|
26
|
-
const { children, count = 6 } = props;
|
|
27
|
-
const { data: products } = useSWR("/api/catalog/products", async () => {
|
|
28
|
-
if (typeof window !== "undefined") {
|
|
29
|
-
const response = await fetch(`/api/catalog/products`);
|
|
30
|
-
return await response.json();
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
if (products === undefined) {
|
|
34
|
-
return React.createElement("p", null, "Loading...");
|
|
35
|
-
}
|
|
36
|
-
console.log(count);
|
|
37
|
-
return (React.createElement(ProductCollectionContext.Provider, { value: products }, children));
|
|
38
|
-
}
|
|
39
|
-
export function registerProductCollection(loader, customProductCollection) {
|
|
40
|
-
const doRegisterComponent = (...args) => loader ? loader.registerComponent(...args) : registerComponent(...args);
|
|
41
|
-
doRegisterComponent(ProductCollection, customProductCollection ?? productCollectionMeta);
|
|
42
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { ComponentMeta } from "@plasmicapp/host/registerComponent";
|
|
3
|
-
import { Registerable } from "./registerable";
|
|
4
|
-
export declare const productImageMeta: ComponentMeta<ProductImageProps>;
|
|
5
|
-
interface ProductImageProps {
|
|
6
|
-
className: string;
|
|
7
|
-
customStyle?: object;
|
|
8
|
-
useProductPlaceholder?: boolean;
|
|
9
|
-
imageIndex?: number;
|
|
10
|
-
}
|
|
11
|
-
export declare function ProductImage(props: ProductImageProps): JSX.Element;
|
|
12
|
-
export declare function registerProductImage(loader?: Registerable, customProductImage?: ComponentMeta<ProductImageProps>): void;
|
|
13
|
-
export {};
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import registerComponent from "@plasmicapp/host/registerComponent";
|
|
2
|
-
import React from "react";
|
|
3
|
-
import { useProduct } from "./contexts";
|
|
4
|
-
export const productImageMeta = {
|
|
5
|
-
name: "CommerceProviders_ProductImage",
|
|
6
|
-
displayName: "Product Image",
|
|
7
|
-
props: {
|
|
8
|
-
customStyle: {
|
|
9
|
-
type: "object",
|
|
10
|
-
description: "Set custom css",
|
|
11
|
-
},
|
|
12
|
-
useProductPlaceholder: {
|
|
13
|
-
type: "boolean",
|
|
14
|
-
description: "Use a product placeholder to design your components"
|
|
15
|
-
},
|
|
16
|
-
imageIndex: {
|
|
17
|
-
type: "number",
|
|
18
|
-
description: "Set the image index of your product",
|
|
19
|
-
defaultValueHint: 0,
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
|
-
importPath: "commerce-providers",
|
|
23
|
-
importName: "ProductImage",
|
|
24
|
-
};
|
|
25
|
-
export function ProductImage(props) {
|
|
26
|
-
const { className, customStyle, useProductPlaceholder, imageIndex = 0 } = props;
|
|
27
|
-
const product = useProduct(useProductPlaceholder);
|
|
28
|
-
if (!product) {
|
|
29
|
-
return React.createElement("p", null, "There isn't a product collection!");
|
|
30
|
-
}
|
|
31
|
-
const image = product.images[imageIndex];
|
|
32
|
-
return (React.createElement("img", { alt: product.name || 'Product Image', src: image?.url ?? "", loading: 'lazy', className: className, style: customStyle }));
|
|
33
|
-
}
|
|
34
|
-
export function registerProductImage(loader, customProductImage) {
|
|
35
|
-
const doRegisterComponent = (...args) => loader ? loader.registerComponent(...args) : registerComponent(...args);
|
|
36
|
-
doRegisterComponent(ProductImage, customProductImage ?? productImageMeta);
|
|
37
|
-
}
|
package/dist/registerable.js
DELETED
|
File without changes
|