-
Notifications
You must be signed in to change notification settings - Fork 219
Conversation
* Add reviews count to Reviews by Product controls * Add label to Reviews by Product controls count * Add label to Reviews by Product controls count * Update components package
* Add support for comment_count ordering and add to productcontrol * Add a placeholder if rating count is 0 * Update assets/js/components/utils/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Update assets/js/blocks/reviews-by-product/block.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * grammar
* Create Reviews by Product block placeholder * Reviews by Product: load and render reviews with JS (#696) * Reviews by Product: load and render reviews with JS * Add dangerouslySetInnerHTML explanatory comment * Fix wrong dependency source * Debounce getReviews call when creating the Reviews by Product block
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is working great! I just found a couple of improvements we could do:
If you remove the product and reviewer name, we should probably remove the left margin from the ratings and make sure it's vertically aligned:
When hiding the review date, I think we should hide the |
after the name:
I also added some comments inline with the code: 👇
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for all the improvements @mikejolley, this is looking really nice!
I'm pre-approving but just leaving some small comments below. I'm ok dealing with them in a follow-up or in this same PR, whatever is easier.
In Firefox, I see the name and the stars a bit unaligned in the editor, while they show up correctly in the frontend:
Also, when deactivating the product name and the reviewer name, the date appears too close to the ratings, in my opinion (that happens in the editor and the frontend):
* Prevent interaction with slider * Show input fields toggle * Placeholder content and icons * Update dependency rimraf to v2.7.0 (#858) * placeholder styling * remove unnecessary config (#862) * Filter button and styling * Show/hide placeholder based on product count * Update dependency rimraf to v2.7.1 (#867) * Use correct parameter order for implode. Solves deprecation notice in PHP 7.4 (#857) * Add description to blocks added in last releases (#869) * Limit max width * Prevent wrap * handles src file * Introduce withCategory HOC for featured category block (#846) * Introduce withCategory hoc * Refactor featured category to use new hoc * Update docblocks * Add README note for PHP deprecation notices * Remove screen-reader-text css rules (#849) * Align stars left (#866) * bool * Create Reviews by Product block (#658) * Create Reviews by Product block * Honor Content settings * Fix wrong className * Load new wc-packages file * Add reviews-by-product JS files to webpack config * Cleanup * Remove error messages * Add Reviews by Product icon * Update sort options * Allow additional CSS classes attribute * Refactor block styles * Fix wrong default for reviews_orderby * Don't enforce CSS chunks * Add reviews count to Reviews by Product controls (#671) * Add label to Reviews by Product controls count (#677) * Add reviews count to Reviews by Product controls * Add label to Reviews by Product controls count * Add label to Reviews by Product controls count * Update components package * Review ordering and placeholders (#688) * Add support for comment_count ordering and add to productcontrol * Add a placeholder if rating count is 0 * Update assets/js/components/utils/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Update assets/js/blocks/reviews-by-product/block.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * grammar * Fix some linting errors and warnings (#693) * Create Reviews by Product block placeholder (#691) * Create Reviews by Product block placeholder * Reviews by Product: load and render reviews with JS (#696) * Reviews by Product: load and render reviews with JS * Add dangerouslySetInnerHTML explanatory comment * Fix wrong dependency source * Debounce getReviews call when creating the Reviews by Product block * Rename 'Reviewer Picture' with 'Avatar' (#702) * Lint errors * Replace stringify query with addQueryArgs (#707) * Add reviews endpoint (#705) * Prevent state updates on unmounted components (#715) * Add Order by and Load more controls in Reviews by Product frontend (#716) * Export IconReviewsByProduct (#721) * Fix Reviews by Product layout in IE11 (#723) * Set minimum to per page input field (#731) * Hide avatars in Reviews by Products if 'show_avatars' settings is false (#730) * Blocks API - Reviews endpoint with rating sort and category filtering (#726) * Move file to correct location * We are only using the reviews endpoint not revioews/id * Remove sensistive data and make endpoint public * Allow guest access to approved reviews * Add support for rating sorting * category filtering * update arg name * fix category query * Reviews by Product: add placeholders when loading reviews (#732) * Add placeholder animation (#733) * Hook up Reviews by Product 'Order by' with endpoint (#736) * Hook up Reviews by Product 'Order by' with endpoint * Use onChange instead of onBlur in select control * Reviews by Product: Hide ratings if they are disabled in settings (#740) * Hide ratings in Reviews by Product if disabled in settings * Hide order by select if ratings are disabled * Reviews by Product cleanup (#773) * Fix wrong method name * Reduce the number of dependencies used in Reviews by Product (#774) * Reduce the number of dependencies used in Reviews by Product * Use 'withComponentId' HOC * Remove debounce * Fix wrong proptype * Get rid of JS warning * Load render from react-dom * Add formatted_date_created item schema (#788) * Fix import of WithComponentID * Add new settings to Reviews by Product block (#787) * Add new settings to Reviews by Product block * Remove helpText and add notices * Use RangeControl for numeric settings * Prevent fetching new reviews if all were already fetched * Enable product image in reviews * Remove unnecessary catch * Refactor getReviews * Move getReviews back to block's code * Cleanup * Fix wrong order in editor * Hide 'Load More Reviews' if showLoadMore is false * Move getReviews to utils.js * Add @woocommerce/navigation to package.json * Make notices non-dismissable * Reviews by Product: prevent importing all HOCs and import only withComponentId (#811) * Reviews by product: Update review styling and content (#806) * Add new settings to Reviews by Product block * Remove helpText and add notices * Use RangeControl for numeric settings * Prevent fetching new reviews if all were already fetched * Enable product image in reviews * Remove unnecessary catch * Refactor getReviews * Move getReviews back to block's code * Cleanup * Fix wrong order in editor * Hide 'Load More Reviews' if showLoadMore is false * Move getReviews to utils.js * Add @woocommerce/navigation to package.json * Make notices non-dismissable * Review design/layout * verified icons * Read more component * remove comment * expanded -> isExpanded * Localise and change default elipses * Simplify ReadMore * Support children rather than passing content * remove outside * remove list style * Update assets/js/components/read-more/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Update assets/js/components/read-more/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * merge set state * Add missing parameter doc in renderReview (#820) * Fix Reviews by Product order by select not honoring default setting (#818) * Read more component - change how clamped content is shown (#821) * Pass review as components * Build summary from content and track both * Toggle display after inital load * remove unused variable * remove componentDidUpdate * Simplify clampLines * Put back componentDidUpdate, but store final summary in state * clampEnabled * Call clampLines from componentDidMount (#826) * truncate html tests * implement trimHTML and pass test * Feedback * test short content * Use withProduct HOC in ReviewsByProductEditor (#828) * Use withProduct HOC * Convert ReviewsByProductEditor to a functional component * Add loading and error states * Prevent loading screen appearing when changing products * Reviews: only save wrapper element to post (#830) * Fix bundlesize config not picking frontend files (#840) * Reviews by Product: split 'block.js' into smaller chunks (#841) * Split 'block.js' into smaller chunks * Move frontend blocks to their specific folder * Order imports * Typo * Add frontend components proptypes * Fix indentation * Call 'this.getDefaultArgs' directly inside 'getReviews' * Move access to wc_product_block_data to the top of the file * Rename 'frontend' folder to 'base' * Rename base components and move styles to their folder * Fix Reviews by Product using rating count instead of review count (#860) * Improve Reviews by Product accessibility (#861) * Improve Reviews by Product accessibility * Make 'onClick' prop not required in <LoadMoreButton> * Wrap Reviews by Product editor block with <Disabled> * Reviews: fix reviews without rating not appearing when sorting by rating (#863) * Update assets/css/style.scss Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Pin dependencies (#872) * Update dependency webpack to v4.39.2 (#855) * Update dependency @woocommerce/components to v3.2.0 (#875) * Update Reviews styles so it looks the same in the editor and the frontend (#871) * Update Node.js to v10.16.3 (#874) * Move wc_product_block_data variables to constants file (#870) * Update dependency webpack-cli to v3.3.7 (#880) * Add changelog script (#878) * Add changelog script * Adapt changelog script to WooCommerce Blocks * Minor improvements * Update dependency lint-staged to v9.2.3 (#879) * Pin dependencies (#883) * Update dependency eslint to v6.2.0 (#881) * Reviews by category block (#804) * Create Reviews by Product block * Honor Content settings * Fix wrong className * Load new wc-packages file * Add reviews-by-product JS files to webpack config * Cleanup * Remove error messages * Add Reviews by Product icon * Update sort options * Allow additional CSS classes attribute * Refactor block styles * Fix wrong default for reviews_orderby * Don't enforce CSS chunks * Add reviews count to Reviews by Product controls (#671) * Add label to Reviews by Product controls count (#677) * Add reviews count to Reviews by Product controls * Add label to Reviews by Product controls count * Add label to Reviews by Product controls count * Update components package * Review ordering and placeholders (#688) * Add support for comment_count ordering and add to productcontrol * Add a placeholder if rating count is 0 * Update assets/js/components/utils/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Update assets/js/blocks/reviews-by-product/block.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * grammar * Fix some linting errors and warnings (#693) * Create Reviews by Product block placeholder (#691) * Create Reviews by Product block placeholder * Reviews by Product: load and render reviews with JS (#696) * Reviews by Product: load and render reviews with JS * Add dangerouslySetInnerHTML explanatory comment * Fix wrong dependency source * Debounce getReviews call when creating the Reviews by Product block * Rename 'Reviewer Picture' with 'Avatar' (#702) * Lint errors * Replace stringify query with addQueryArgs (#707) * Add reviews endpoint (#705) * Prevent state updates on unmounted components (#715) * Add Order by and Load more controls in Reviews by Product frontend (#716) * Export IconReviewsByProduct (#721) * Fix Reviews by Product layout in IE11 (#723) * Set minimum to per page input field (#731) * Hide avatars in Reviews by Products if 'show_avatars' settings is false (#730) * Blocks API - Reviews endpoint with rating sort and category filtering (#726) * Move file to correct location * We are only using the reviews endpoint not revioews/id * Remove sensistive data and make endpoint public * Allow guest access to approved reviews * Add support for rating sorting * category filtering * update arg name * fix category query * Reviews by Product: add placeholders when loading reviews (#732) * Add placeholder animation (#733) * Hook up Reviews by Product 'Order by' with endpoint (#736) * Hook up Reviews by Product 'Order by' with endpoint * Use onChange instead of onBlur in select control * Reviews by Product: Hide ratings if they are disabled in settings (#740) * Hide ratings in Reviews by Product if disabled in settings * Hide order by select if ratings are disabled * Reviews by Product cleanup (#773) * Fix wrong method name * Reduce the number of dependencies used in Reviews by Product (#774) * Reduce the number of dependencies used in Reviews by Product * Use 'withComponentId' HOC * Remove debounce * Fix wrong proptype * Get rid of JS warning * Load render from react-dom * Add formatted_date_created item schema (#788) * Inital block setup * Fix import of WithComponentID * Render the category reviews * Add new settings to Reviews by Product block (#787) * Add new settings to Reviews by Product block * Remove helpText and add notices * Use RangeControl for numeric settings * Prevent fetching new reviews if all were already fetched * Enable product image in reviews * Remove unnecessary catch * Refactor getReviews * Move getReviews back to block's code * Cleanup * Fix wrong order in editor * Hide 'Load More Reviews' if showLoadMore is false * Move getReviews to utils.js * Add @woocommerce/navigation to package.json * Make notices non-dismissable * Reviews by Product: prevent importing all HOCs and import only withComponentId (#811) * Reviews by product: Update review styling and content (#806) * Add new settings to Reviews by Product block * Remove helpText and add notices * Use RangeControl for numeric settings * Prevent fetching new reviews if all were already fetched * Enable product image in reviews * Remove unnecessary catch * Refactor getReviews * Move getReviews back to block's code * Cleanup * Fix wrong order in editor * Hide 'Load More Reviews' if showLoadMore is false * Move getReviews to utils.js * Add @woocommerce/navigation to package.json * Make notices non-dismissable * Review design/layout * verified icons * Read more component * remove comment * expanded -> isExpanded * Localise and change default elipses * Simplify ReadMore * Support children rather than passing content * remove outside * remove list style * Update assets/js/components/read-more/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Update assets/js/components/read-more/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * merge set state * Add missing parameter doc in renderReview (#820) * Fix Reviews by Product order by select not honoring default setting (#818) * Read more component - change how clamped content is shown (#821) * Pass review as components * Build summary from content and track both * Toggle display after inital load * remove unused variable * remove componentDidUpdate * Simplify clampLines * Put back componentDidUpdate, but store final summary in state * clampEnabled * Call clampLines from componentDidMount (#826) * truncate html tests * implement trimHTML and pass test * Feedback * test short content * Use withProduct HOC in ReviewsByProductEditor (#828) * Use withProduct HOC * Convert ReviewsByProductEditor to a functional component * Add loading and error states * Prevent loading screen appearing when changing products * Reviews: only save wrapper element to post (#830) * Update based on product reviews * Cleanup after master merge * Implement content hiding and placeholder states for reviews blocks * Output product names and adjust css * Review permalink * Remove old read-more component which was moved * showProductName is already part of passed attributes * CSS tweaks for missing elements * Move dir * Move product reviews block * Move shared uitils * update paths * frontend paths * Update paths * shared attributes * switch to constants * Shared review block code * Replace constants * Fix hidden content bug * star alignment * Update dependency eslint to v6.2.1 (#890) * remove JSON parse * remove comment * No need for important rules * Fix error appearing on Reviews by Product when there were no reviews (#884) * Fix error appearing on Reviews by Product when there were no reviews * Revert "Fix error appearing on Reviews by Product when there were no reviews" This reverts commit 73e95b3. * Move withProduct() HOC to editor-block.js * Revert "Move withProduct() HOC to editor-block.js" This reverts commit ae95157. * Move renderNoReviews back to edit.js * Move no reviews placeholder to its own component * Remove usage of 'RawHTML' * Fix propTypes * Remove unnecessary escapeHTML * revise labels * Move component to base * Add price text
* Basic component setup * Working slider * Validation * styling * Update webpack config to fix ie11 * ie progress * styling improvements * improve events * IE shim * Fix samsung internet styles * Add aria * remove old methods * event handling * Tweak size and width of inputs * reset progress * shorthand notation for setstate * Inline comment for textare usage * Remove pointless comparison * destruct from state * zindex comment * Move out currency settings and validation * enforce int for min and max state * Use woocommerce/settings * showInputFields prop * Filter Products by Price: Block creation (#865) * Prevent interaction with slider * Show input fields toggle * Placeholder content and icons * Update dependency rimraf to v2.7.0 (#858) * placeholder styling * remove unnecessary config (#862) * Filter button and styling * Show/hide placeholder based on product count * Update dependency rimraf to v2.7.1 (#867) * Use correct parameter order for implode. Solves deprecation notice in PHP 7.4 (#857) * Add description to blocks added in last releases (#869) * Limit max width * Prevent wrap * handles src file * Introduce withCategory HOC for featured category block (#846) * Introduce withCategory hoc * Refactor featured category to use new hoc * Update docblocks * Add README note for PHP deprecation notices * Remove screen-reader-text css rules (#849) * Align stars left (#866) * bool * Create Reviews by Product block (#658) * Create Reviews by Product block * Honor Content settings * Fix wrong className * Load new wc-packages file * Add reviews-by-product JS files to webpack config * Cleanup * Remove error messages * Add Reviews by Product icon * Update sort options * Allow additional CSS classes attribute * Refactor block styles * Fix wrong default for reviews_orderby * Don't enforce CSS chunks * Add reviews count to Reviews by Product controls (#671) * Add label to Reviews by Product controls count (#677) * Add reviews count to Reviews by Product controls * Add label to Reviews by Product controls count * Add label to Reviews by Product controls count * Update components package * Review ordering and placeholders (#688) * Add support for comment_count ordering and add to productcontrol * Add a placeholder if rating count is 0 * Update assets/js/components/utils/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Update assets/js/blocks/reviews-by-product/block.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * grammar * Fix some linting errors and warnings (#693) * Create Reviews by Product block placeholder (#691) * Create Reviews by Product block placeholder * Reviews by Product: load and render reviews with JS (#696) * Reviews by Product: load and render reviews with JS * Add dangerouslySetInnerHTML explanatory comment * Fix wrong dependency source * Debounce getReviews call when creating the Reviews by Product block * Rename 'Reviewer Picture' with 'Avatar' (#702) * Lint errors * Replace stringify query with addQueryArgs (#707) * Add reviews endpoint (#705) * Prevent state updates on unmounted components (#715) * Add Order by and Load more controls in Reviews by Product frontend (#716) * Export IconReviewsByProduct (#721) * Fix Reviews by Product layout in IE11 (#723) * Set minimum to per page input field (#731) * Hide avatars in Reviews by Products if 'show_avatars' settings is false (#730) * Blocks API - Reviews endpoint with rating sort and category filtering (#726) * Move file to correct location * We are only using the reviews endpoint not revioews/id * Remove sensistive data and make endpoint public * Allow guest access to approved reviews * Add support for rating sorting * category filtering * update arg name * fix category query * Reviews by Product: add placeholders when loading reviews (#732) * Add placeholder animation (#733) * Hook up Reviews by Product 'Order by' with endpoint (#736) * Hook up Reviews by Product 'Order by' with endpoint * Use onChange instead of onBlur in select control * Reviews by Product: Hide ratings if they are disabled in settings (#740) * Hide ratings in Reviews by Product if disabled in settings * Hide order by select if ratings are disabled * Reviews by Product cleanup (#773) * Fix wrong method name * Reduce the number of dependencies used in Reviews by Product (#774) * Reduce the number of dependencies used in Reviews by Product * Use 'withComponentId' HOC * Remove debounce * Fix wrong proptype * Get rid of JS warning * Load render from react-dom * Add formatted_date_created item schema (#788) * Fix import of WithComponentID * Add new settings to Reviews by Product block (#787) * Add new settings to Reviews by Product block * Remove helpText and add notices * Use RangeControl for numeric settings * Prevent fetching new reviews if all were already fetched * Enable product image in reviews * Remove unnecessary catch * Refactor getReviews * Move getReviews back to block's code * Cleanup * Fix wrong order in editor * Hide 'Load More Reviews' if showLoadMore is false * Move getReviews to utils.js * Add @woocommerce/navigation to package.json * Make notices non-dismissable * Reviews by Product: prevent importing all HOCs and import only withComponentId (#811) * Reviews by product: Update review styling and content (#806) * Add new settings to Reviews by Product block * Remove helpText and add notices * Use RangeControl for numeric settings * Prevent fetching new reviews if all were already fetched * Enable product image in reviews * Remove unnecessary catch * Refactor getReviews * Move getReviews back to block's code * Cleanup * Fix wrong order in editor * Hide 'Load More Reviews' if showLoadMore is false * Move getReviews to utils.js * Add @woocommerce/navigation to package.json * Make notices non-dismissable * Review design/layout * verified icons * Read more component * remove comment * expanded -> isExpanded * Localise and change default elipses * Simplify ReadMore * Support children rather than passing content * remove outside * remove list style * Update assets/js/components/read-more/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Update assets/js/components/read-more/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * merge set state * Add missing parameter doc in renderReview (#820) * Fix Reviews by Product order by select not honoring default setting (#818) * Read more component - change how clamped content is shown (#821) * Pass review as components * Build summary from content and track both * Toggle display after inital load * remove unused variable * remove componentDidUpdate * Simplify clampLines * Put back componentDidUpdate, but store final summary in state * clampEnabled * Call clampLines from componentDidMount (#826) * truncate html tests * implement trimHTML and pass test * Feedback * test short content * Use withProduct HOC in ReviewsByProductEditor (#828) * Use withProduct HOC * Convert ReviewsByProductEditor to a functional component * Add loading and error states * Prevent loading screen appearing when changing products * Reviews: only save wrapper element to post (#830) * Fix bundlesize config not picking frontend files (#840) * Reviews by Product: split 'block.js' into smaller chunks (#841) * Split 'block.js' into smaller chunks * Move frontend blocks to their specific folder * Order imports * Typo * Add frontend components proptypes * Fix indentation * Call 'this.getDefaultArgs' directly inside 'getReviews' * Move access to wc_product_block_data to the top of the file * Rename 'frontend' folder to 'base' * Rename base components and move styles to their folder * Fix Reviews by Product using rating count instead of review count (#860) * Improve Reviews by Product accessibility (#861) * Improve Reviews by Product accessibility * Make 'onClick' prop not required in <LoadMoreButton> * Wrap Reviews by Product editor block with <Disabled> * Reviews: fix reviews without rating not appearing when sorting by rating (#863) * Update assets/css/style.scss Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Pin dependencies (#872) * Update dependency webpack to v4.39.2 (#855) * Update dependency @woocommerce/components to v3.2.0 (#875) * Update Reviews styles so it looks the same in the editor and the frontend (#871) * Update Node.js to v10.16.3 (#874) * Move wc_product_block_data variables to constants file (#870) * Update dependency webpack-cli to v3.3.7 (#880) * Add changelog script (#878) * Add changelog script * Adapt changelog script to WooCommerce Blocks * Minor improvements * Update dependency lint-staged to v9.2.3 (#879) * Pin dependencies (#883) * Update dependency eslint to v6.2.0 (#881) * Reviews by category block (#804) * Create Reviews by Product block * Honor Content settings * Fix wrong className * Load new wc-packages file * Add reviews-by-product JS files to webpack config * Cleanup * Remove error messages * Add Reviews by Product icon * Update sort options * Allow additional CSS classes attribute * Refactor block styles * Fix wrong default for reviews_orderby * Don't enforce CSS chunks * Add reviews count to Reviews by Product controls (#671) * Add label to Reviews by Product controls count (#677) * Add reviews count to Reviews by Product controls * Add label to Reviews by Product controls count * Add label to Reviews by Product controls count * Update components package * Review ordering and placeholders (#688) * Add support for comment_count ordering and add to productcontrol * Add a placeholder if rating count is 0 * Update assets/js/components/utils/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Update assets/js/blocks/reviews-by-product/block.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * grammar * Fix some linting errors and warnings (#693) * Create Reviews by Product block placeholder (#691) * Create Reviews by Product block placeholder * Reviews by Product: load and render reviews with JS (#696) * Reviews by Product: load and render reviews with JS * Add dangerouslySetInnerHTML explanatory comment * Fix wrong dependency source * Debounce getReviews call when creating the Reviews by Product block * Rename 'Reviewer Picture' with 'Avatar' (#702) * Lint errors * Replace stringify query with addQueryArgs (#707) * Add reviews endpoint (#705) * Prevent state updates on unmounted components (#715) * Add Order by and Load more controls in Reviews by Product frontend (#716) * Export IconReviewsByProduct (#721) * Fix Reviews by Product layout in IE11 (#723) * Set minimum to per page input field (#731) * Hide avatars in Reviews by Products if 'show_avatars' settings is false (#730) * Blocks API - Reviews endpoint with rating sort and category filtering (#726) * Move file to correct location * We are only using the reviews endpoint not revioews/id * Remove sensistive data and make endpoint public * Allow guest access to approved reviews * Add support for rating sorting * category filtering * update arg name * fix category query * Reviews by Product: add placeholders when loading reviews (#732) * Add placeholder animation (#733) * Hook up Reviews by Product 'Order by' with endpoint (#736) * Hook up Reviews by Product 'Order by' with endpoint * Use onChange instead of onBlur in select control * Reviews by Product: Hide ratings if they are disabled in settings (#740) * Hide ratings in Reviews by Product if disabled in settings * Hide order by select if ratings are disabled * Reviews by Product cleanup (#773) * Fix wrong method name * Reduce the number of dependencies used in Reviews by Product (#774) * Reduce the number of dependencies used in Reviews by Product * Use 'withComponentId' HOC * Remove debounce * Fix wrong proptype * Get rid of JS warning * Load render from react-dom * Add formatted_date_created item schema (#788) * Inital block setup * Fix import of WithComponentID * Render the category reviews * Add new settings to Reviews by Product block (#787) * Add new settings to Reviews by Product block * Remove helpText and add notices * Use RangeControl for numeric settings * Prevent fetching new reviews if all were already fetched * Enable product image in reviews * Remove unnecessary catch * Refactor getReviews * Move getReviews back to block's code * Cleanup * Fix wrong order in editor * Hide 'Load More Reviews' if showLoadMore is false * Move getReviews to utils.js * Add @woocommerce/navigation to package.json * Make notices non-dismissable * Reviews by Product: prevent importing all HOCs and import only withComponentId (#811) * Reviews by product: Update review styling and content (#806) * Add new settings to Reviews by Product block * Remove helpText and add notices * Use RangeControl for numeric settings * Prevent fetching new reviews if all were already fetched * Enable product image in reviews * Remove unnecessary catch * Refactor getReviews * Move getReviews back to block's code * Cleanup * Fix wrong order in editor * Hide 'Load More Reviews' if showLoadMore is false * Move getReviews to utils.js * Add @woocommerce/navigation to package.json * Make notices non-dismissable * Review design/layout * verified icons * Read more component * remove comment * expanded -> isExpanded * Localise and change default elipses * Simplify ReadMore * Support children rather than passing content * remove outside * remove list style * Update assets/js/components/read-more/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * Update assets/js/components/read-more/index.js Co-Authored-By: Albert Juhé Lluveras <contact@albertjuhe.com> * merge set state * Add missing parameter doc in renderReview (#820) * Fix Reviews by Product order by select not honoring default setting (#818) * Read more component - change how clamped content is shown (#821) * Pass review as components * Build summary from content and track both * Toggle display after inital load * remove unused variable * remove componentDidUpdate * Simplify clampLines * Put back componentDidUpdate, but store final summary in state * clampEnabled * Call clampLines from componentDidMount (#826) * truncate html tests * implement trimHTML and pass test * Feedback * test short content * Use withProduct HOC in ReviewsByProductEditor (#828) * Use withProduct HOC * Convert ReviewsByProductEditor to a functional component * Add loading and error states * Prevent loading screen appearing when changing products * Reviews: only save wrapper element to post (#830) * Update based on product reviews * Cleanup after master merge * Implement content hiding and placeholder states for reviews blocks * Output product names and adjust css * Review permalink * Remove old read-more component which was moved * showProductName is already part of passed attributes * CSS tweaks for missing elements * Move dir * Move product reviews block * Move shared uitils * update paths * frontend paths * Update paths * shared attributes * switch to constants * Shared review block code * Replace constants * Fix hidden content bug * star alignment * Update dependency eslint to v6.2.1 (#890) * remove JSON parse * remove comment * No need for important rules * Fix error appearing on Reviews by Product when there were no reviews (#884) * Fix error appearing on Reviews by Product when there were no reviews * Revert "Fix error appearing on Reviews by Product when there were no reviews" This reverts commit 73e95b3. * Move withProduct() HOC to editor-block.js * Revert "Move withProduct() HOC to editor-block.js" This reverts commit ae95157. * Move renderNoReviews back to edit.js * Move no reviews placeholder to its own component * Remove usage of 'RawHTML' * Fix propTypes * Remove unnecessary escapeHTML * revise labels * Move component to base * Add price text * Update design to latest figma * update from master * Fixed merge conflicts with settings * Fix formatting * Update to use react hooks * Progress hooking up price slider * Fixes usage of data store for min/max * Added loading state * Fix useQueryStateByKey setter * Product list integration * Inital state and preventing too many queries * Style fixes * Button loading styles * Package conflict * useCallback * Remove duplication * variable name feedback * Implement useCallback on functions * useMemo for getProgressStyle * Block feedback * Use get_block_asset_build_path * Remove old settings from merge conflict * Move sketch file to .prefixed dir * Removed render methods * Exclude price filter from legacy build * Feedback
This is the reviews by category block, based on the products block. It supports showing reviews from multiple categories which is why I dropped the use of
withCategory
hoc.The API has been updated to return product names and permalinks.
Edit view:
Frontend view:
Block settings:
Block settings toggle content like this, and if all are disabled a placeholder is shown:
To test
Closes #589