0.5.16 • Published 10 months ago

@springmicro/cart v0.5.16

Weekly downloads
-
License
-
Repository
-
Last release
10 months ago

@springmicro/cart

A package for eCommerce sites that provides shopping cart functionality.

Exports

Components

CartProvider

Provides and handles all the data for the cart. Requires a ReactNode child. apiUrl will be modified to end with /api/ecommerce/cart. If the user object changes, the provider automatically logs in and out of the cart.

Required props:

user={({ id: number | string } & any) | undefined}
apiUrl={string}

CartContext

Allows all scopes under the CartProvider to read from the cart data and the functions to modify the cart.

Provisions:

  • cart: Cart
    • Provides cart and authentication data.
  • addToCart: (product: CartProduct) => void
    • Adds a product to the cart.
  • removeFromCart: (i: number) => void
    • Removes an item from the cart at the given index.
  • clearCart: () => void
    • Clears the cart.

CartButton

A frontend-facing component to display the cart contents in a Modal. This component is designed to go in a top navbar, ideally on the right-hand side. This component is required to be in a CartProvider scope.

Types

Cart

The type of the cart in CartContext.cart.

{
  cart: CartProducts[],
  authentication: {loggedIn: boolean, user_id: string | number}
}

CartProduct

The type of the products listed in Cart.cart.

{
  id: number | string,
  name: string,
  quantity: number | undefined
}
0.5.10

10 months ago

0.5.11

10 months ago

0.5.8

11 months ago

0.5.7

11 months ago

0.5.9

10 months ago

0.5.16

10 months ago

0.5.14

10 months ago

0.5.15

10 months ago

0.5.12

10 months ago

0.5.13

10 months ago

0.3.0

1 year ago

0.5.4

11 months ago

0.5.3

11 months ago

0.3.5

1 year ago

0.5.6

11 months ago

0.5.5

11 months ago

0.5.0

12 months ago

0.4.1

12 months ago

0.3.2

1 year ago

0.4.0

1 year ago

0.5.2

11 months ago

0.3.4

1 year ago

0.5.1

12 months ago

0.2.1

2 years ago

0.2.0

2 years ago

0.2.0-alpha.4

2 years ago

0.2.0-alpha.3

2 years ago

0.2.0-alpha.2

2 years ago

0.2.0-alpha.1

2 years ago