Mike Jolley
8eec47e241
Use same query for headers collection ( https://github.com/woocommerce/woocommerce-blocks/pull/1196 )
2019-11-19 13:17:03 +01:00
Darren Ethier
2ca9f5eca2
Fix: Page selection will reset to 1 after deselecting filterable item, re-sorting products, and selecting new page. ( https://github.com/woocommerce/woocommerce-blocks/pull/1205 )
...
* initial commit
* change initialization state when user triggered page change
2019-11-19 06:20:23 -05:00
Darren Ethier
652aa0caa2
Fix paging issues ( https://github.com/woocommerce/woocommerce-blocks/pull/1202 )
2019-11-19 04:55:16 -05:00
Darren Ethier
3189a9483b
Implement useProductLayoutContext for layout prefix in atomic blocks. ( https://github.com/woocommerce/woocommerce-blocks/pull/1183 )
...
* implement product layout context for product button
* convert product image component to functional component
- also implements useProductLayoutContext
* ensure edit context for AllProducts block has appropriate providers wrapping it.
* update price block with useProductLayoutContext
* convert ProductRating block to functional component and add useProductLayoutContext
* add useProductLayoutContext to ProductSummary
* update sale badge component adding useProductLayoutContext
* add useProductLayoutContext to ProductTitle component
* update ProductListItem component to add useProductLayoutContext
* update ProductList component to add useProductLayoutContext
2019-11-18 15:25:29 +01:00
renovate[bot]
99502f744f
Lock file maintenance ( https://github.com/woocommerce/woocommerce-blocks/pull/1191 )
2019-11-18 11:01:44 +00:00
Albert Juhé Lluveras
e965842726
Add All Blocks and filter blocks to readme.txt ( https://github.com/woocommerce/woocommerce-blocks/pull/1193 )
2019-11-18 11:01:26 +00:00
Mike Jolley
abd92e0c32
Filter block previews ( https://github.com/woocommerce/woocommerce-blocks/pull/1184 )
...
* Enable preview for price filter block
Using the defaults works fine, so no options required.
* Attribute preview via block attribute
* Add sample content for preview
* remove unnecessary key
* remove unneeded export
2019-11-15 16:10:49 -05:00
Darren Ethier
cd3914b9a1
don’t use deprected imports ( https://github.com/woocommerce/woocommerce-blocks/pull/1186 )
2019-11-15 15:57:20 -05:00
Seghir Nadir
1d67ec5ce9
Add on_sale to Store API for it to work. ( https://github.com/woocommerce/woocommerce-blocks/pull/1185 )
...
* add on sale to store api
* fix onsale to on_sale
* update preview to use on_sale
* update tests to use on_sale
2019-11-15 19:11:03 +01:00
Darren Ethier
b4df4e056c
Enhance useCollection for conditionally returning previous results ( https://github.com/woocommerce/woocommerce-blocks/pull/1182 )
...
* add new config to `useCollection` options for controlling whether to invoke select or not.
also adds tests.
* update inline docs
2019-11-15 11:11:48 -05:00
Albert Juhé Lluveras
47e082ef58
Update minimum WooCommerce version to 3.7 ( https://github.com/woocommerce/woocommerce-blocks/pull/1181 )
...
* Update minimum WooCommerce version to 3.7
* Update README sentence
2019-11-15 16:32:40 +01:00
Mike Jolley
bf370806ed
Add grid block previews using an SVG image ( https://github.com/woocommerce/woocommerce-blocks/pull/1118 )
...
* Implement preview for on-sale products
* Previews for other grid blocks
* Shared previews
* Fix SVG
* add svg as asset
* Add image via path
* cleanup
2019-11-15 15:16:18 +00:00
Mike Jolley
d613d2fde6
Active filters block ( https://github.com/woocommerce/woocommerce-blocks/pull/1168 )
...
* Basic block construction
* Register on PHP side
* wc-active-filters script
* Price utils
* Refactor price slider so state reflects the query
Moves some logic from the component to the block so that min and max price can change (via query) and be reflected by the price sliders.
This allows the active filters block to change the query and have those new values reflected by the slider.
* Fix type checking of numbers
* Styles for filter block
* Improved attribute helper for getting attribute taxonomy data from ID/taxonomy
* Refactor attribute filter to use updateAttributeFilter helper
* Disable checkboxes when loading to avoid multiple queries
* Add todos - this is blocked
* Remove checked state from Attribute Filter so it gets updated from the store (https://github.com/woocommerce/woocommerce-blocks/pull/1170 )
* isLoading check
* active price filtering rendering
* Block heading
* Implement block options; chip display with clear button
* Clear all should remove all attributes
* Enable previews
* Introduce a component to look up terms from slugs using collections (which are cached)
* Correct all docblocks
* activePriceFilters null return
* renderRemovableListItem
* Remove useMemo for hasFilters
* Switch classnames notation
* Ensure slug is array in removeAttributeFilterBySlug
* null -> undefined return types for attributes
* Remove fragment
* Check we have a termObject in ActiveAttributeFilters
* Refactor formatPriceRange return statements
* Ensure query array index will exist
* Only sort when adding a query
* Remove aria-label with dupe text
* hasFilters is function
* Update useQueryStateByKey usage
* More doc block fixes
* Update getAttributeFromTaxonomy return and docblock
* getAttributeFromID return/docblock
2019-11-15 14:41:23 +00:00
Albert Juhé Lluveras
0739e4c536
Add block error boundary to JS-rendered blocks ( https://github.com/woocommerce/woocommerce-blocks/pull/1166 )
...
* Add block error boundary to All Products and Reviews blocks
* Add block error boundary to Price Filter and Attributes Filter blocks
* Add image
* Make block error component use props instead of hardcoded values
* Add props to BlockErrorBoundary
* Change 'text' prop to 'content'
* Add docs to proptypes
* Replace 'content' prop with 'text'
2019-11-15 15:15:55 +01:00
Albert Juhé Lluveras
2fde5d6890
Show notices when WP or PHP versions are not met ( https://github.com/woocommerce/woocommerce-blocks/pull/1160 )
...
* Show notices when PHP or WP versions are not met
* Update version-changes.sh so it updates versions in woocommerce-gutenberg-products-block.php
* Convert constants to normal variables
* Remove error_log calls
* Remove button with PHP update link
* Show notices only in plugins and WooCommerce pages
2019-11-15 13:33:43 +01:00
Darren Ethier
5f7dfe0ac8
Fix Package::init breakage for including plugin in WC core ( https://github.com/woocommerce/woocommerce-blocks/pull/1175 )
...
* fix broken Package init process
* add missing @since tag
* update version bump file to account for file location for version change
2019-11-14 12:19:22 -05:00
Darren Ethier
534d8f6fdd
Add context for query state context string. ( https://github.com/woocommerce/woocommerce-blocks/pull/1172 )
...
* ensure useProductLayoutContext actually returns the context!
* add query state context and export provider and hook.
* implement useQueryStateContext in existing querySTate hooks and refactor other implementations
* add back in documentation removed in rebase
* default layout context to empty string (no need to add additional classes by default
* fix jsdoc
2019-11-14 12:16:27 -05:00
Darren Ethier
380019f489
Rename modelName to resourceName everywhere ( https://github.com/woocommerce/woocommerce-blocks/pull/1173 )
...
* rename modelName to resourceName
* fix inline doc alignment
2019-11-14 11:10:50 -05:00
Darren Ethier
7ae6d78ea5
Add context value validation for context apis that receive an object. ( https://github.com/woocommerce/woocommerce-blocks/pull/1174 )
...
* add a context value validator and tests
This handles validation incoming value prop on a context provider with an object.
* implement context validator and fix related bugs
* rename context to better match it’s purpose
* correct spelling
* Update assets/js/base/context/utils.js
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* tighten up the iteration
2019-11-14 09:51:32 -05:00
Mike Jolley
7e98aaf391
Set loading state when searching ( https://github.com/woocommerce/woocommerce-blocks/pull/1171 )
...
* Set loading state when searching
* Remove 2nd loading state setter
* isLargeCatalog should be 100
2019-11-14 14:40:04 +00:00
Seghir Nadir
f6401a87c4
Remove h1 from atomic title ( https://github.com/woocommerce/woocommerce-blocks/pull/1167 )
...
* remove option to use H1
2019-11-14 14:26:35 +01:00
Mike Jolley
a84990d10f
Add editable filter widget headings ( https://github.com/woocommerce/woocommerce-blocks/pull/1169 )
...
* Move heading toolbar component so it can be resused
* Add heading to attribute block
* Add heading to price filter block
* Fix missing loading state
2019-11-13 16:15:20 +00:00
renovate[bot]
9c9b248c6d
Update dependency core-js to v3.4.1 ( https://github.com/woocommerce/woocommerce-blocks/pull/1164 )
2019-11-13 10:14:01 +01:00
renovate[bot]
e721c2d6c7
Update dependency eslint-plugin-jest to v22.21.0 ( https://github.com/woocommerce/woocommerce-blocks/pull/1165 )
2019-11-13 10:13:51 +01:00
renovate[bot]
69af13bc45
Update dependency @octokit/rest to v16.35.0 ( https://github.com/woocommerce/woocommerce-blocks/pull/1163 )
2019-11-13 09:48:43 +01:00
renovate[bot]
cff026bd93
Update dependency @babel/core to v7.7.2 ( https://github.com/woocommerce/woocommerce-blocks/pull/1162 )
2019-11-13 09:48:31 +01:00
Darren Ethier
2b7fad30d4
Update version script to account for changes in version setting on bootstrap ( https://github.com/woocommerce/woocommerce-blocks/pull/1158 )
...
* update version change script so it accounts for the new version setting in Package
* fix hardcoded version string in replacement script
* change version registration block
* improve specificity of version string change
2019-11-12 11:26:35 -05:00
Darren Ethier
7be18d3802
Ensure frontend script assets are registered with the right suffix for the environment. ( https://github.com/woocommerce/woocommerce-blocks/pull/1157 )
...
* ensure registered frontend scripts use correct suffix for environment
* update how suffix is added to frontend builds!
2019-11-12 12:13:59 +00:00
Mike Jolley
c412dde269
Store API - Add tests for product attributes endpoints ( https://github.com/woocommerce/woocommerce-blocks/pull/1151 )
...
* Add product attribute unit tests
* Add missing description param
* Allow returning empty terms
* Attribute terms tests
* Update tests/php/RestApi/StoreApi/Controllers/ProductAttributes.php
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* Update tests/php/RestApi/StoreApi/Controllers/ProductAttributeTerms.php
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
2019-11-12 12:04:19 +00:00
Darren Ethier
0ee090d16d
Remove unnecessary package version reading of @wordpress/components ( https://github.com/woocommerce/woocommerce-blocks/pull/1154 )
...
* remove unnecessary package version reading of @wordpress/components
* comment out unused variable
2019-11-11 13:09:09 -05:00
Albert Juhé Lluveras
8fe23415ba
Update WooCommerce compatibility version to 3.8.0 ( https://github.com/woocommerce/woocommerce-blocks/pull/1149 )
...
* Update WooCommerce compatibility version to 3.8.0
* Add PHP compatibility versions
* Fix wrong values for minimum WP and PHP versions
* Remove ending .0
2019-11-11 18:06:03 +01:00
Mike Jolley
f1153ccea8
Move renderFrontend to internal dependencies ( https://github.com/woocommerce/woocommerce-blocks/pull/1152 )
2019-11-11 15:38:57 +00:00
Mike Jolley
8f0bef5516
Use placeholder when contraints are invalid ( https://github.com/woocommerce/woocommerce-blocks/pull/1145 )
...
* Use placeholder when contraints are invalid
* Update assets/js/base/components/price-slider/style.scss
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* Update assets/js/base/components/price-slider/style.scss
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* Move hasValidConstraints
2019-11-11 11:05:18 +00:00
Mike Jolley
c038a7fed4
Filter all products block by attribute ( https://github.com/woocommerce/woocommerce-blocks/pull/1127 )
...
* Block setup
* Working filtering and intersection of arrays
* Implement block settings and no attribute placeholder
* Correctly toggle counts
* Implement filtering
* Fix price slider constraints
* Fix price slider constraints
* Edit mode
* Rename ProductAttributeControl to ProductAttributeTermControl
* Attribute ID saving
* fix incorrect test fixtures
* fix incorrect regex for parsing model (or resource names) from the route.
* Fix query classes for some endpoints
* Style improvements
* Update inline comments
* use previous tests
* Show attribute control in sidebar
* Remove displayStyle option
* Sort attributes by name
* Show more/less toggle
* Use renderFrontend
* Only sort when adding values
* Rename memo placeholder
* More specific CSS for pointer
* Update assets/js/base/hooks/use-query-state.js
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* Remove always true taxonomy check
* Update assets/js/blocks/attribute-filter/block.js
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* Remove lodash join
* native js for string casting
* Move internal deps
* hyphenate attributes
* Correct data set names
* Remove unwanted dependency
* Moving imports
* Missing deps
* replace yoda conditonal
* Missing deps
* Missing deps
* Check value exists
* Remove undefined filter
* renderedOptions usememo
* Set defaults in checkbox list
* Show more/less refactor
* Use getAdminLink
* Fix object length check
* Correct AND query handling for counts
* useQueryStateByContext
* Add store rest endpoints
* Update assets/js/base/components/checkbox-list/index.js
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* Update assets/js/base/components/checkbox-list/index.js
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* Update assets/js/base/components/checkbox-list/index.js
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* Update assets/js/blocks/attribute-filter/block.js
Co-Authored-By: Albert Juhé Lluveras <aljullu@gmail.com>
* Feedback
* feedback
* API readme
* Fix API relation queries for multiple attributes
* Prevent all options flashing visible during loads
* null check
* Improve loading state
* Remove null options change - it's no longer needed
2019-11-11 10:32:56 +00:00
renovate[bot]
16f576f2f9
Lock file maintenance ( https://github.com/woocommerce/woocommerce-blocks/pull/1148 )
2019-11-11 09:46:28 +01:00
Albert Juhé Lluveras
2f04c61223
Update dependencies order ( https://github.com/woocommerce/woocommerce-blocks/pull/1146 )
...
* Update dependencies order
* Create eslint WooCommerce plugin with dependency group rule
* Update WCPackageLocality definition so it only includes External and Internal
* Rename WPPackageLocality to WCPackageLocality
* Delete old typedef
2019-11-08 17:30:11 +01:00
Albert Juhé Lluveras
2dbb1a0ca5
All Products: avoid pagination disappearing when switching pages/changing sort value ( https://github.com/woocommerce/woocommerce-blocks/pull/1144 )
2019-11-08 13:40:09 +00:00
Darren Ethier
0b61988487
Add anti yoda conditional eslint rule ( https://github.com/woocommerce/woocommerce-blocks/pull/1142 )
...
* add anti yoda rule
* apply eslint fix to all existing yoda conditional uses
2019-11-07 09:45:45 -05:00
Darren Ethier
46fceae0d7
rename useQueryState to useQueryStateByContext ( https://github.com/woocommerce/woocommerce-blocks/pull/1140 )
...
this is more precise and removes ambuiguity about whether this returns React Context or not.
2019-11-07 08:58:32 -05:00
Albert Juhé Lluveras
1bd60ebaab
Use renderFrontend function to render the Price Filter block in the frontend ( https://github.com/woocommerce/woocommerce-blocks/pull/1136 )
...
* Fix minor issues in comments
* Use renderFrontend function for price filter
2019-11-07 11:18:56 +00:00
Mike Jolley
c824b481e2
Fix price slider constraints ( https://github.com/woocommerce/woocommerce-blocks/pull/1125 )
...
* Fix price slider constraints
* Update inline comments
* use previous tests
2019-11-06 13:25:37 -05:00
renovate[bot]
0295379b49
Update dependency @octokit/rest to v16.34.1 ( https://github.com/woocommerce/woocommerce-blocks/pull/1130 )
2019-11-06 11:44:26 +01:00
renovate[bot]
3882541824
Update dependency core-js to v3.3.6 ( https://github.com/woocommerce/woocommerce-blocks/pull/1132 )
2019-11-06 11:39:10 +01:00
renovate[bot]
1d2d4102fd
Update dependency autoprefixer to v9.7.1 ( https://github.com/woocommerce/woocommerce-blocks/pull/1131 )
2019-11-06 11:39:00 +01:00
renovate[bot]
4abb516638
Update babel monorepo to v7.7.0 ( https://github.com/woocommerce/woocommerce-blocks/pull/1129 )
2019-11-06 11:38:47 +01:00
Mike Jolley
524de4555e
Move "prices" data from rest API to store API ( https://github.com/woocommerce/woocommerce-blocks/pull/1128 )
2019-11-05 16:47:32 +00:00
Darren Ethier
b21efcb233
Fix incorrect parsing of routes from placeholder route strings. ( https://github.com/woocommerce/woocommerce-blocks/pull/1124 )
...
* fix incorrect test fixtures
* fix incorrect regex for parsing model (or resource names) from the route.
2019-11-05 14:55:49 +00:00
Mike Jolley
f1299cf0d9
Add featured category preview ( https://github.com/woocommerce/woocommerce-blocks/pull/1122 )
2019-11-05 10:33:07 +00:00
Mike Jolley
a1e6184bee
Add previews for the category list and product search ( https://github.com/woocommerce/woocommerce-blocks/pull/1123 )
...
* Enable preview for product search block
* Enable category preview
2019-11-05 10:32:53 +00:00
Darren Ethier
a7beb3b845
Followup: switch namespace on useStoreProducts hook. ( https://github.com/woocommerce/woocommerce-blocks/pull/1102 )
...
* add missing `add_to_cart` properties to product schema
Also camelcase properties.
* switch namespace to `/wc/store/`
* add experimental action for perisisting and item to a given collection
* refactor ProductButton to use hooks (initial pass)
This is just the initial refactor to figure out the logic. I’m going to do another pass to see about extracting some of this to a custom hook (because it’s kind of gnarly to have to repeat… and it’s possible it can be simplified as well).
* add new properties to tests and ensure test is using the same product instance values as the rest request
* refactor to add custom internal only useAddToCart hook.
* fix value extraction from product object
* revert casing changes
2019-11-04 10:47:14 +00:00