4
0
forked from crowetic/commerce

563 Commits

Author SHA1 Message Date
Michael Novotny
1918c25f4a
Fixes bundle size for Hobby plan users () 2023-07-05 07:26:30 -07:00
Michael Novotny
8c8240956a
Removes Framer Motion () 2023-06-21 15:13:58 -07:00
Michael Novotny
9678306b23
Fixes cart closing and reopening with first interaction ()
* Works

* Adds animation back
2023-06-21 13:13:10 -07:00
Michael Novotny
585b3bbff8
Replaces Route Handlers with Server Actions () 2023-06-17 11:18:00 -07:00
Logan
7eb8816854
Fixed misaligned navbar links () 2023-06-16 13:50:10 -05:00
Michael Novotny
87c385fcd6
Converts to Opengraph Image file convention. () 2023-06-07 20:57:31 -05:00
Lee Robinson
fecc60eb36
Update dependencies and fix TS errors. () 2023-06-06 20:36:44 -05:00
Michael Novotny
f5dade74fb
Fixes search page bugs. () 2023-05-12 16:02:51 -07:00
Michael Novotny
a0c0d10fae
Changes mobile menu animation to be consistent with cart animation. () 2023-05-11 12:53:04 -07:00
Tobias Lins
9ea5671579
Don't fail when collections are not found ()
* Don't fail when collections are not found

* fix another error
2023-04-26 09:26:52 -05:00
Michael Novotny
af21b29b73
Disables Add to Cart while mutating () 2023-04-25 09:38:47 -05:00
Michael Novotny
8ff670d7d6
Fixes quirks with featured and related products. () 2023-04-21 12:19:08 -04:00
Michael Novotny
7de3ae5583
Removes unnecessary async on ProductGridItems () 2023-04-20 13:54:04 -05:00
Stephanie Dietz
acb4ff400b
Updates recommended products to use ProductGridItems component () 2023-04-20 11:27:18 -05:00
Stephanie Dietz
a677c17f78
Update canary version to fix scroll to top. () 2023-04-20 10:40:29 -05:00
Michael Novotny
67a192eba8
Adds documentation on how to configure Next.js Commerce and Shopify () 2023-04-20 06:46:35 -04:00
Michael Novotny
e9a26c2935
Fixes cart item button layout shift () 2023-04-18 12:08:18 -05:00
Lee Robinson
fd9450aecb
Next.js Commerce refresh. ()
We're making some updates to Next.js Commerce. Everything prior to this commit marks what we're calling [`v1`](https://github.com/vercel/commerce/releases/tag/v1) as a point in time to be able to reference and still use going into the future. The current architecture of Commerce is a multi-vendor, interoperable solution, including:

- [Shopify](https://shopify.vercel.store/)
- [Swell](https://swell.vercel.store/)
- [BigCommerce](https://bigcommerce.vercel.store/)
- [Vendure](https://vendure.vercel.store/)
- [Saleor](https://saleor.vercel.store/)
- [Ordercloud](https://ordercloud.vercel.store/)
- [Spree](https://spree.vercel.store/)
- [Kibo Commerce](https://kibocommerce.vercel.store/)
- [Commerce.js](https://commercejs.vercel.store/)
- [SalesForce Cloud Commerce](https://salesforce-cloud-commerce.vercel.store/)

All features can be toggled on or off, and it's easy to change between commerce providers. To support this, we needed to create a ["commerce metaframework"](d1d9e8c434/packages/commerce/new-provider.md) where providers could confirm to an API spec to add support for Next.js Commerce. While this worked and was successful for `v1`, we have different design goals and ambitions for `v2`.

**What You Need To Know**

- `v1` will not be updated moving forward. If you need to reference `v1`, you will still be able to clone and deploy the version tagged at this release.
- `v2` will be shifting to be a single provider vs. provider agnostic. Other providers are welcome to fork this repository and swap out the underlying `lib/` implementation that connects to the selected commerce provider (Shopify). This architecture was chosen to reduce the surface area of the codebase, remove the intermediate metaframework layer for provider-interoperability, and enable usage with the latest Next.js and React features.
- We will be sharing more about `v2` in the future as we continue to iterate before the marked release.
2023-04-17 22:00:47 -05:00
Luis Alvarez D
0afe686fe9
Monorepo with Turborepo ()
* Moved everything

* Figuring out how to make imports work

* Updated exports

* Added missing exports

* Added @vercel/commerce-local to `site`

* Updated commerce config

* Updated exports and commerce config

* Updated commerce hoc

* Fixed exports in local

* Added publish config

* Updated imports in site

* It's actually working

* Don't use debugger in dev for better speeds

* Improved DX when editing packages

* Set up eslint with husky

* Updated prettier config

* Added prettier setup to every package

* Moved bigcommerce

* Moved Bigcommerce to src and package updates

* Updated setup of bigcommerce

* Moved definitions script

* Moved commercejs

* Move to src

* Fixed types in commercejs

* Moved kibocommerce

* Moved kibocommerce to src

* Added package/tsconfig to kibocommerce

* Fixed imports and other things

* Moved ordercloud

* Moved ordercloud to src

* Fixed imports

* Added missing prettier files

* Moved Saleor

* Moved Saleor to src

* Fixed imports

* Replaced all imports to @commerce

* Added prettierignore/rc to all providers

* Moved shopify to src

* Build shopify in packages

* Moved Spree

* Moved spree to src

* Updated spree

* Moved swell

* Moved swell to src

* Fixed type imports in swell

* Moved Vendure to packages

* Moved vendure to src

* Fixed imports in vendure

* Added codegen to saleor

* Updated codegen setup for shopify

* Added codegen to vendure

* Added codegen to kibocommerce

* Added all packages to site's deps

* Updated codegen setup in bigcommerce

* Minor fixes

* Updated providers' names in site

* Updated packages based on Bel's changes

* Updated turbo to latest

* Fixed ts complains

* Set npm engine in root

* New lockfile install

* remove engines

* Regen lockfile

* Switched from npm to yarn

* Updated typesVersions in all packages

* Moved dep

* Updated SWR to the just released 1.2.0

* Removed "isolatedModules" from packages

* Updated list of providers and default

* Updated swell declaration

* Removed next import from kibocommerce

* Added COMMERCE_PROVIDER log

* Added another log

* Updated turbo config

* Updated docs

* Removed test logs

Co-authored-by: Jared Palmer <jared@jaredpalmer.com>
2022-02-01 14:14:05 -05:00
Alessandro Casazza
de24bd041c
fix: Render item in wishlist properly if ID is a string () 2022-01-16 10:58:26 -03:00
B
f3cdbe682b
Bump ()
* Packages Bump

* Code Updated

* More API Changes

* Working updates

* Updated Tailwind Config

* SWR API updates

* More changes

* Commercejs Types

* Commercejs Types

* Commercejs Types
2022-01-13 15:30:14 +01:00
Michael
4b2df2242c
Fixes issue with next/dynamic when running next version > 12.0.3 ()
Co-authored-by: mdupree <mdupree@acromedia.com>
2021-12-22 13:19:27 -03:00
Lars Salling
98af5f4615
Remove unnecessary check in the Sidebar component ()
* refactor: remove unneccessary code

* refactor: remove excessive function call in modal

Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
2021-12-17 11:55:04 -03:00
Chris Vibert
d8b42acfa2
Commerce.js Provider ()
* commercejs: Initial commit with basic product list

* ui: Handle no variants on product

* commercejs: Support individual product pages

* commercejs: Use separate sdkFetch function

* commercejs: Show option hex colors based on option name

* commercejs: Support product search and filter

* commercejs: Enable carts feature

* commercejs: Remove unused API endpoints

* commercejs: Fix adding variants to cart

* commercejs: Fix types for update cart hook

* commercejs: Update README

* commercejs: Add sorting to product search

* commercejs: Add generic types to cart actions

* commercejs: Better cart normalization

* commercejs: Provide typing for sdkFetch function

* commercejs: Refactor product search logic

* commercejs: Update commercejs types package and export types from local directory

* commercejs: Remove unused checkout hooks

* commercejs: Enhance fetcher to allow custom API routes

* commercejs: Fix product types

* commercejs: Add checkout functionality

* commercejs: Add commercejs to README list of providers

* commercejs: Add login/logout auth hooks

* commercejs: Adds comment to sdkFetch function

* commercejs: Bring back empty useSignup hook to fix build

* commercejs: Refactor useCheckout hook logic

* commercejs: Add errors to fetcher function if using invalid resource/method

* commercejs: Remove use of hex colors for color variants

* ui: Fix undefined error when no variants

* commercejs: Handle add to cart when no variants

* commercejs: Enable customer auth feature

* commercejs: Rename public key env variable as commercejs

* commercejs: Remove duplicate customer fields

* commercejs: Use variants API to generate product variants

* commercejs: Fetch all products using sort order

* commercejs: Fix use of normalizeProduct function

* commercejs: Disable customer auth

* commercejs: Show selected variant details in cart view

* commercejs: Update to latest commercejs types

* commercejs: Fix login email

* commercejs: Remove unnecessary ts-ignore

* api: Allow parameter to be passed to login API

* api: Allow login handler to accept GET requests

* commercejs: Add login API for login callback email link

* commercejs: Remove unused argument to API

* commercejs: Add hook to fetch logged in customer

* commercejs: Rename token to match SDK name

* commercejs: Enable logout

* commercejs: Fix VERCEL_URL env variable

* commercejs: Fix using vercel deployment url

* commercejs: Add deployment url env vars to templates

* Replace yarn with npm

* commercejs: Allow checkout submit even without card/address details

* ui: Add loading and cart refresh to checkout

* commercejs: Leave link to issue on TODO comment

* Update docs/README/env.template for commercejs provider

* ui: Prevent toggle loading after component unmount

* commercejs: Handle product without images

* ui: Explicity set loading to false after checkout

* Revert "api: Allow parameter to be passed to login API"

This reverts commit c3713ec6e23f1b423a071a31221069995d419486.

* commercejs: Handle login using API redirect

* commercejs: Adds shipping and billing details to checkout data

* commercejs: Fix types for fetcher and submit checkout

* commercejs: Update README with demo url

* commercejs: Update checkout hooks to use checkout context

* commercejs: Update checkout logic to use customer fields

* ui: Clear checkout fields context after checkout

* commercejs: Remove unused clear checkout function

* commercejs: Import constants directly
2021-12-16 16:06:52 -03:00
Maaz
2271864057
Update keen-slider ()
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
2021-12-15 14:24:06 -03:00
Gonzalo Pozzo
ea1bbcf1bb
Fix cart item image error () 2021-12-09 16:41:29 +01:00
Gonzalo Pozzo
d65b2efe9a
Custom checkout improvements ()
* Add context for storing checkout information

* Remove unused useState
2021-12-06 18:45:54 -03:00
Chris Vibert
950a7637a5
Fix typo and add missing feature to local config ()
* Add customCheckout feature flag to local config

* Fix typo
2021-11-29 10:52:43 -03:00
Nine
82cb719ad6
Feature/hamburger menu ()
* Setup Mobile Menu Sidebar

* Setup Basic Mobile Menu Items Styling

* Implement full width styling for mobile devices

* Cleanup

Co-authored-by: Nine <at059214@Abdurahmans-MacBook-Pro.local>
2021-11-25 15:09:21 -03:00
Gonzalo Pozzo
73470c9232
Run prettier fix on all files () 2021-11-25 09:17:13 -03:00
Gonzalo Pozzo
96e990268d
Add aria attributes () 2021-11-24 14:29:55 -03:00
Luis Orbaiceta
c8787865b3
Fix dynamically import Modal component ()
* fix: dynamically import Modal component

fixes error "document is not defined" if the user decides to display a modal at the beginning (for ads, promotions, etc...)

* fix: remove spread operator

* remove top level modal import

* fix import path for Modal

Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
2021-11-24 11:00:33 -03:00
Tomek Niezgoda
e7fc93f9c7
Make wishlist's useRemoveItem call in WishlistCard consistent with WishlistButton () 2021-11-24 09:15:22 -03:00
Shaokun-X
179c10a53f
Wrap mobile search bar in env condition ()
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
2021-11-23 16:05:41 -03:00
Grey
0cfbe42d86
Fix variable name ()
Variable name should be `ChevronRight`
2021-11-18 11:58:30 -03:00
Luis Alvarez D
582e9257d9
Update Next.js to 12 and switch to npm ()
* Update Commerce to Next.js 12

* Switch to npm

* Removed yarn

* Updated fetch type

* Fixed issue with BC deployment
2021-11-09 10:12:00 -06:00
Vinicius Zucatti
c440ff06d4
Fix next/link should be used with anchor as children () 2021-09-23 17:32:17 -05:00
Pedro Vinícius
4b58f6365a
Update ProductView.tsx ()
When you navigate to other product page, the options selected by default don't change and the options from the last product navigated are used. Adding a key to "ProductSideBar" component, makes it refresh default options and refresh actual product selected options when i navigate for many products.
2021-09-23 14:44:32 -03:00
Leah Wagner
fd10eba10d
Add title to page and add styling for base typography elements for Text component ()
* Add title to page and add styling for base typography elements for Text component

* Remove additional title

Co-authored-by: B <curciobelen@gmail.com>
Co-authored-by: Luis Alvarez D <luis@vercel.com>
2021-09-22 20:40:20 -05:00
Gonzalo Pozzo
1720bd698c
Implement custom checkout ()
* Implement custom checkout core

* Fix elements on core

* Add files to providers

* Adapt providers

* Update types

* Update shopify file

* Format files
2021-09-22 19:20:58 -05:00
Federico Joel Orlandau
61d075daf1
Improve a11y on the cart and sidebar ()
* Improve a11y on the cart

* Fix button style

* Remove extra space

* Move cart item count to the right position

Co-authored-by: Luis Alvarez D <luis@vercel.com>
2021-09-07 14:14:28 -05:00
Luis Alvarez D
0e7e7b7d5f
Add Next.js ESLint ()
* Added Next.js eslint

* added eslint to lint-staged

* Added eslint config for prettier

* Fixed eslint issues in multiple files

* Fixed error in linter
2021-08-02 21:54:58 -05:00
Guillermo Angulo
0603b342be
Update SORT object to access from filter button on mobile () 2021-08-02 12:42:14 -05:00
Gandharv
44ce537b57
remove spread operator from <Link> component ()
* remove spread operator from <Link> component

* Remove props destructuring

Co-authored-by: Luis Alvarez <luis@vercel.com>
2021-07-29 23:57:02 -05:00
Gandharv
07dbeb4194
fix login button staying disabled ()
When an error occurs the login button stays disabled,
2021-07-29 23:47:45 -05:00
B
a314893f62
Bump API Version ()
* Bump API Version

* changes
2021-06-29 13:46:29 -03:00
B
cb6d70570d
New Feature Updates, more coverage. ()
* Shouldn't be there.

* Removing

* Removing old libraries

* Updating

* Feature Changes and updates

* Update README.md
2021-06-22 17:19:07 -03:00
Tobias Koppers
1a50be125a
build performance improvements ()
* performance improvements

* enable incremental typechecking

* upgrade dependencies

* remove unused dependencies
2021-06-22 16:37:44 -03:00
B
78cc378a72
New Release ()
* Custom Checkout Progress

* Updates to Checkout

* Custom Checkout Progress

* Adding tabs

* Adding Collapse

* Adding Collapse

* Improving Sidebar Scroll

* Modif footer

* Changes

* More design updates

* sidebar cart

* More design updates

* More design updates

* More design updates

* More design updates

* Types

* Types

* Design Updates

* More changes

* More changes

* More changes

* Changes

* Changes

* Changes

* New tailwind required changes

* Sidebar Styling issues with Mobile

* Latest changes - Normalizing cart

* Styling Fixes

* New changes

* Changes

* latest

* Refactor and Renaming some UI Props

* Adding Quantity Component

* Adding Rating Component

* Rating Component

* More updates

* User Select disabled, plus hidding horizontal scroll bars

* Changes

* Adding ProductOptions Component and more helpers

* Styling updates

* Styling updates

* Fix for slim tags

* Missmatch with RightArrow

* Footer updates and some styles

* Latest Updates

* Latest Updates

* Latest Updates

* Removing Portal, since it's not needed. We might add it later I'd rather not to.

* Removing Portal, since it's not needed. We might add it later I'd rather not to.

* Sam backdrop filter

* General UI Improvements

* General UI Improvements

* Search now with Geist Colors

* Now with Geist Colors

* Changes

* Scroll for Mobile on IOs devises

* LoadingDots Working (:

* Changes

* More Changes

* Perf changes

* More perf changes

* Fade to the Nametags in the ProductCard

* changes

* Search issue ui

* Search issue ui

* Make sure to only refresh navbar and modals when required

* Index revalidate

* Fixed image issue

* hide album scroll on windows

* Fix scrollbar

* Changing

* Adding 404 with Layout

* Removing Toast

* Adding Assets

* Adding Assets

* Progress with LocalProvider

* New productTag

* Only images for the drop

* changes

* Empty SWRhooks

* Adding Local Provider

* Working local

* Working view of a LocalProvider

* More updates

* Changes

* Removed react-ticker

* default to local if no env available

* default to local if no env available

* add missing `@` to css import

* rewrite search rewrites to multiple pages

* allow requests in getStaticProps to execute in parallel

* make type import explicit

* add a tsconfig.js file

* use local provider in tsconfig.js

* avoid a circular dependency

* Saleor was not in the providers list

* avoid circular dependency in bigcommerce

* Adding more to the Local Provider ()

* Adding more data

* Adding more data

* optimize assets ()

* Optimize assets ()

* optimize assets

* remove assets

* remove assets

* cart enabled

* Adding saleor

* Changes with Webpack

* Changes

Co-authored-by: Luis Alvarez <luis@vercel.com>
Co-authored-by: Tobias Koppers <tobias.koppers@googlemail.com>
Co-authored-by: Shu Ding <g@shud.in>
2021-06-15 20:23:17 -03:00
Jakub Neander
3b2bf654fe
Updated Saleor Provider ()
* Initial work, copied from the Shopify provider

* Added basis setup and type generation for the products queries

* refactor: adjust the types

* task: relax the Node.js constraint

* fix: page/product properties

* disable unknown fields

* mention Saleor in the README

* setup debugging for Next.js

* Check nextjs-commerce bug if no images are added for a product

* fix: client/server pecularities for env visibility

Must prefix with `NEXT_PUBLIC_` so that the API URL is
visible on the client

* re: make search work with Saleor API (WIP)

* task: update deps

* task: move to Webpack 5.x

* saleor: initial cart integration

* update deps

* saleor: shall the cart appear!

* task: remove deprecated packages

* saleor: adding/removing from the cart

* saleor: preliminary signup process

* saleor: fix the prices in the cart

* update deps

* update deps

* Added the options for a variant to the product page

* Mapped options to variants

* Mapped options to variants

* saleor: refine the auth process

* saleor: remove unused code

* saleor: handle customer find via refresh

temporary solution

* saleor: update deps

* saleor: fix the session handling

* saleor: fix the variants

* saleor: simplify the naming for GraphQL statements

* saleor: fix the type for collection

* saleor: arrange the error codes

* saleor: integrate collections

* saleor: fix product sorting

* saleor: set cookie location

* saleor: update the schema

* saleor: attach checkout to customer

* saleor: fix the checkout flow

* saleor: unify GraphQL naming approach

* task: update deps

* Add the env variables for saleor to the template

* task: prettier

* saleor: stub API for build/typescript compilation

thanks @cond0r

* task: temporarily disable for the `build`

* saleor: refactor GraphQL queries

* saleor: adjust the config

* task: update dependencies

* revert: Next.js to `10.0.9`

* saleor: fix the checkout fetch query

* task: update dependencies

* saleor: adapt for displaying featured products

* saleor: update the provider structure

* saleor: make the home page representable

* feature/cart: display the variant name (cond)

Co-authored-by: Patryk Zawadzki <patrys@room-303.com>
Co-authored-by: royderks <10717410+royderks@users.noreply.github.com>
2021-06-10 01:46:28 -05:00