* Include @spree/storefront-api-v2-sdk
* Add basic Spree framework structure
* Add Spree as allowed Framework
* Fetch product images, standardize API fetch using Spree SDK
* Include slug and path in products
* Fetch single product during build time
* PLP with searching by category
* Fetch Spree Categories and Brands
* Sort PLP
* Search products by name
* Fix option values collection
* Fix hasNonMasterVariants
* Sort Categories and Brands
* Add configuration to show product options when there's one variant available
* Enable text search for the Spree Framework
* Allow removing line items
* Allow updating line item quantity
* Add __typename to variant options to allow adding the selected variant to the cart
* Use fetch and Request from node-fetch in Spree SDK
* Update Spree SDK fetcher
* Show placeholder message for /chechout and adjust api fetcher type
* Use kebab case instead of camel case
* Remove outdated comments
* Remove outdated comment
* Resolve isColorProductOption duplication
* Type Spree variants and line items and temporarily remove height, width and depth
* Remove outdated comment
* Update comments about cart discounts
* Remove 'spree' prefix from isomorphicConfig and add lastUpdatedProductsPrerenderCount
* Implement getAllProductPaths to prerender some products during build time
* Adjust fetchers to the latest Spree SDK interface
* Add types to Spree taxons mapping
* Revert port change in package.json scripts
* Add basic README describing Spree installation
* Expand README's installation section
* Upgrade Spree SDK to 4.7.0 and add node-fetch to dependencies
* Order providers alphanumerically
Co-authored-by: Damian Legawiec <damian@sparksolutions.co>
* Sort products by available_on when using the Trending sorting in useSearch
* Change the default Spree port to 4000 and update README in sync with Spree Starter changes
* Save primary variant's SKU when normalizing a product from Spree
* Create a new cart if Spree can't find the current using a token
* Add separator to README
* Add missing Error subclass
* Allow placeholder images for products and line items without images
* Add image
* Reset tsconfig.json paths to originla values
* Search taxonomies by permalinks instead of IDs
* Upgrade Spree SDK to version 4.7.1
* Remove references to @framework and use relative paths instead
* Generalize TypeScript and add typings to getPage
* Update fetcher to avoid parsing non-JSON responses
* Use original product image by default instead of resized
* Link to an online demo of the Spree integration in the README
* Flatten fetcher responses
* Include Spree in the list of supported ecommerce backends in README
* Update README.md
* Format Spree's README
* Add link to the Spree demo site in the main README
* Update README.md
* Update README.md
* Allow setting a taxon id for getAllProducts
* Use Spree SDK's JSON:API helpers
* Sort getAllProducts by -updated_at when using a taxonomy
* Remove slash '/' from line item's paths
* Allow filtering variant images by option type
* Upgrade checkout behavior in line with core NextJS Commerce changes
* Remove dummy submitCheckout function
* [NX-24] Display PDP option types sorted by position from Spree
* Supply Spree primary variant if a product has no option variants
* Do not throw an error if a product doesn't have NEXT_PUBLIC_SPREE_IMAGES_OPTION_FILTER
* [NX-43] Uses image transformations when fetching products images
* Use bind to properly call Spree SDK methods and update SDK fetcher in line with SDK 4.12.0
* Fix ESLint issues in useHook
* Support account sign up, login and logout
Also
- Converts the guest cart to a persisted cart tied to the logged in user after log in.
- Fixes issues with use-remove-item. The cart will now properly refresh after an item is removed.
- Uses the logged in user's token to adjust the cart and make other authenticated requests.
- Transparently refreshed the access token of the logged in user with a refresh token. Replays requests to Spree which fail with a 401 error after refreshing the access token.
* Fetch logged in user's cart after login or signup but associate guest cart only after signup
* Support Spree default wishlist show, add and remove wished items operations
* Fetch Spree CMS Pages
* Fix login, handle critical token errors and fix WishlistCard
Fix to WishlistCard changes its props to be consistent with WishlistButton when calling useRemoveItem
* Fix variable name (#574)
Variable name should be `ChevronRight`
* Update get-cart.ts (#474)
include digital items
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
* Update normalize.ts (#475)
add missing options property to `normalizeLineItem`
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
* Update add-item.ts (#473)
* Update add-item.ts
include digital items
* Update add-item.ts
include digital items
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
* fix typo (#572)
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
* Fix authentication.refreshToken arguments
* Remove redundant comments and logs
* Fix createEmptyCart request to Spree and add option to disable auto login
* Fix formatting issues
* Apply image transformation when fetching images for products in cart
* Replace call to qs with Spree SDK built-in helper
* Upgrade Spree SDK to 5.0.1
* Rename zeitFetch import to vercelFetch
* Abstract fetcher JSON Content-Type checking into separate function
* Rename imageUrl to url
getMediaGallery already provides context for the constant
* Remove return type for getProductPath
The return type can be trivially determined from the returned value.
* Change URL to Spree demo store in root README
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
* Change label for link to Spree demo store in Spree's README
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
* Change URL to Spree demo store in Spree's README
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
* Use only relative paths to /framework/spree from itself
Co-authored-by: tniezg <tomek.niezgoda@mail.com>
Co-authored-by: Damian Legawiec <damian@sparksolutions.co>
Co-authored-by: Robert Nowakowski <aplegatt@gmail.com>
Co-authored-by: Grey <57859708+greyhere@users.noreply.github.com>
Co-authored-by: pfcodes <phil@auroradigit.al>
Co-authored-by: Gonzalo Pozzo <gonzalo.pozzo4@gmail.com>
Co-authored-by: Konrad Kruk <github@konradk.pl>
* product list page and search working
* categories working
* clean things up like console.log
* undo these
* don't need sort stuff. update comment
* turns out the if statements here are necesary
* very incomplete progress on sign-in
* Revert "very incomplete progress on sign-in"
This reverts commit a8dd2af268f9c617ba17abf4b3cc7e5de10f8449.
* Vendure - Fetcher - Globally throw errors
Globally throw errors from the Vendure fetcher when we detect errors in the response body
* Remove unnecessary new function
* Remove unnecessary import
Co-authored-by: Luis Alvarez D <luis@vercel.com>
* optionsSelections takes an array of options objs
* use options array to match API expectations
Co-authored-by: Ryan Ford <ryanford@users.noreply.github.com>
* create a jwt token if there is a customerId, move the get customer id to the main utils folder. Need to add in more value to the env file. Updated the env sample.
* remove yarn.lock and tsconfig.json
* remove build settings
* remove build settings
* remove build settings
* Update tsconfig.json
* Delete package-lock.json
* fix typescript errors
* Update tsconfig.json
Co-authored-by: George Fitzgibbons <george.fitzgibbons@c02zw1aqlvdn.lan>
* 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 (#366)
* Adding more data
* Adding more data
* optimize assets (#370)
* Optimize assets (#372)
* 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>
* 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>