Commit Graph

1133 Commits

Author SHA1 Message Date
Mike Jolley e1538395be CSS naming convention docs (https://github.com/woocommerce/woocommerce-blocks/pull/1653)
* Move github specific MD files and config to .github directory.

* Create security.md file

* Add docs directory (and exclude from builds)

* Add code of conduct MD

* Move release docs to /docs directory

* Add css guidelines

* Feedback

* Modifier example

* Clarify package naming

* descendant...
2020-01-28 15:50:57 +00:00
Darren Ethier db14accc64 Update changelog script. (https://github.com/woocommerce/woocommerce-blocks/pull/1655)
This pull:

- removes zenhub option from package.json
- installs and implement `merge-config` package. This allows for usage of environment variables and command line variables along with `package.json` configuration for the changelog generation.
- implements new variable: `devNoteLabel` for indicating what label indicates the pull has (or requires) a devnote. Pull Requests with this label will have `[DN]` appended to the changelog entry.
- adds new variable: `changelogSrcType` for indicating what source to use for generating changelogs (can be `MILESTONE` or `ZENHUB_RELEASE`). Implemented detection of this in code, defaults to `MILESTONE`.
- Modify initial setup text so if user already has api key(s) setup, then we don't give instructions again. Also improve the output when keys aren't set to make it clear what needs done.
- Make the environment variable for Zenhub Api token consistent with Github token (`ZH_API_TOKEN` instead of `ZH_API_KEY`).
- Update package.json with changelog script variation for running it with zenhub release as the source.
- Update `RELEASE.md` docs to clarify changelog script options
- Add a `README.md` doc for the changelog script.
2020-01-28 08:47:26 -05:00
Darren Ethier 7c83133337 Update renovate to assign `type: dependencies` label for pulls (https://github.com/woocommerce/woocommerce-blocks/pull/1648)
* update renovate to assign `type: dependencies` label for pulls

* Fix invalid json from bad cut/paste

* Update renovate.json

Include skip-changelog label for renovate pulls.
2020-01-27 10:37:09 -05:00
Mike Jolley dcf5bfa67e Fix RTL price slider display issues (https://github.com/woocommerce/woocommerce-blocks/pull/1651)
* Fix slider image direction with RTL

* Fix track position under RTL
2020-01-27 15:16:19 +00:00
renovate[bot] ee83b0f86a Lock file maintenance (https://github.com/woocommerce/woocommerce-blocks/pull/1649)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-27 13:07:57 +00:00
Albert Juhé Lluveras 7f048ec9c4 Product grid blocks: display rating stars in the editor (https://github.com/woocommerce/woocommerce-blocks/pull/1650) 2020-01-27 13:56:32 +01:00
Mike Jolley 022cd10e08 remove issue label bot config
Closes woocommerce/woocommerce-blocks#1643
2020-01-27 12:02:18 +00:00
Darren Ethier af2178df55 Update CODEOWNERS
Assign code review to @woocommerce/merch-squad instead of @woocommerce/blocks
2020-01-27 06:41:45 -05:00
Darren Ethier d54340a90e Only populate default attributes on initial mount of block. (https://github.com/woocommerce/woocommerce-blocks/pull/1640)
* Avoid looping through attributes after defaults have been set.

* remove extra method I missed and fix when state updates happen

* don’t update state if we’re not in woo blocks

This prevents non woo blocks from being re-rendered unnecessarily with the state update.

* avoid re-renders and use class property instead
2020-01-24 11:53:15 -05:00
Mike Jolley 00c700655f Add renovate config to avoid pinning `jetpack-autoloader` package (https://github.com/woocommerce/woocommerce-blocks/pull/1632)
* Switch jetpack-autoloader in package.json to use a range

* Update rangeStrategy for jetpack autoloader in renovate config

* Switch to bump range strategy
2020-01-24 16:50:06 +00:00
Albert Juhé Lluveras 2014e6f1e2 Reorganize dependencies in package.json (https://github.com/woocommerce/woocommerce-blocks/pull/1633)
* Reorganize dependencies in package.json

* Move '@wordpress' entries back to devDependencies
2020-01-24 13:00:11 +01:00
Albert Juhé Lluveras ab51bffaa0 All Products: fix 'Add to Cart' in IE11 (https://github.com/woocommerce/woocommerce-blocks/pull/1642)
* All Products: fix 'Add to Cart' in IE11

* Default Event to null
2020-01-23 19:32:48 +01:00
Mike Jolley 24d2600d43 Move default population to class function instead of using constructor (https://github.com/woocommerce/woocommerce-blocks/pull/1638) 2020-01-23 14:11:15 +00:00
Rua Haszard dd6afe0c70 remove tangential questions todo section (https://github.com/woocommerce/woocommerce-blocks/pull/1635) 2020-01-23 10:35:58 +13:00
Albert Juhé Lluveras 069b42dc39 Make 'Add order notes?' string localizable (https://github.com/woocommerce/woocommerce-blocks/pull/1629) 2020-01-22 21:35:29 +01:00
Rua Haszard e83819281c Document release process (https://github.com/woocommerce/woocommerce-blocks/pull/1614)
* draft release process!

* ensure info in CONTRIBUTING is in release doc, remove section & add link

* fix link to release doc

* tweaks / typos / formatting after re-read

* tweak mia/follow up section title to more standard @todo

* add getting started docs for repo/dev tooling (required for releasing!)

* add intro sentence + link to required node versions + fix some grammar errors, heading level

* tweaks based on Timmy feedback:
- link to a real changelog commit
- add git pull to unambiguously illustrate "get on tip of branch"
- recommend multiple testers
+ sanity check => confidence check

* mention jetpack-autoloader

* reinstate "updating specific file on WPORG" section

* flesh out "release to wporg" so tools are more transparent +
+ add steps for testing/validating WPORG release

* clarify major / minor / patch process differences +
+ roughly define versions
+ mention Zenhub (tbc)

* clarification: cherry picking is patch releases only +
+ clarify readme update outcome

* tweaks & typos after reading start=>finish

* clarify versions info + tidy links in WPORG validate section

* tweaks & typos from Aljullu feedback

* flesh out pre-release testing steps:
- test oldest supported WP
- test existing blocks content / validation errors
- ALL of the testing steps are recommended :)
2020-01-23 08:48:35 +13:00
Mike Jolley d1737e76c2 Change default rows for product grid blocks to 3 (https://github.com/woocommerce/woocommerce-blocks/pull/1613)
* Change default rows to 3

* Handle all products rows change via deprecation

* Prevent errors if object is undefined

* HOC to set default attribute values

* Separate default attributes from attribute definitions

* Filters to set defaults

* Fix deprecation so attributes are not reordered

* Move flters to index file and limit which blocks are affected

* Fix object assign

* Use typeof for undefined checks

* Move hoc to filter file so it has context

* Fix up comment

* Avoid mutating props

* Prevent multiple `attributes` by cloning props

* Force attributes to be saved to HTML in a specific order, and handle migration

* useEffect to set attributes and avoid prop mutation

* Switch to class component
2020-01-22 16:58:25 +00:00
Mike Jolley d3003bd07a Fix price filter for products when stored prices do not match displayed prices (tax settings) (https://github.com/woocommerce/woocommerce-blocks/pull/1612)
* Tax handling for price filters

* Tidy clauses logic

* DRY

* Reduce queries for tax classes

* clearer adjust_price_filters_for_displayed_taxes conditonal

* Remove unused method

* Add safety check for or_queries

* exit earlier
2020-01-22 14:46:52 +00:00
renovate[bot] 4b9d10c591 Update dependency node-sass to v4.13.1 (https://github.com/woocommerce/woocommerce-blocks/pull/1623)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-22 11:19:48 +01:00
renovate[bot] 48b510646f Update dependency downshift to v4.0.7 (https://github.com/woocommerce/woocommerce-blocks/pull/1621)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-22 11:19:40 +01:00
renovate[bot] ebcc98f43a Update dependency eslint-plugin-jest to v23.6.0 (https://github.com/woocommerce/woocommerce-blocks/pull/1622)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-22 11:19:13 +01:00
renovate[bot] 88a9b686b9 Pin dependency @wordpress/html-entities to 2.5.0 (https://github.com/woocommerce/woocommerce-blocks/pull/1620)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-22 11:00:50 +01:00
Rua Haszard f34ac3c48c Update readme (on master) with 2.5.11 changelog 2020-01-21 09:30:12 +13:00
Mike Jolley 69a509f184 Improved cart styling for desktop and mobile (https://github.com/woocommerce/woocommerce-blocks/pull/1587)
* Style mobile qty selector

* Add dedicated column for image and remove duplicate elements

* Tweak column headers

* Refactor cart styles to use CSS grid, and use nesting for organisation

* adjust column widths

* Remove unused div

* Fix wrapping and flexbox styles

* Add decodeEntities to alt attribute

* Use % basis

* Tweak min widths
2020-01-20 16:43:22 +00:00
Albert Juhé Lluveras e607ce2d1a Preserve query key order in All Products (https://github.com/woocommerce/woocommerce-blocks/pull/1611) 2020-01-20 13:04:13 +01:00
renovate[bot] ae3c3189d2 Lock file maintenance (https://github.com/woocommerce/woocommerce-blocks/pull/1607)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-20 12:48:57 +01:00
Mike Jolley 8b28a77f01 Consistent HTML entities in Store API (https://github.com/woocommerce/woocommerce-blocks/pull/1597)
* Wrap HTML responses with helper method

* Remove unused get_attribute_taxonomy_name method

* Create prepare_html_response method

* Decode product and attribute names

* Check is_scalar to leave objects alone
2020-01-19 19:19:59 -05:00
Seghir Nadir 7e81841e83 Fix issue in order by date (https://github.com/woocommerce/woocommerce-blocks/pull/1598)
* fix order by of date order in products
2020-01-20 00:00:43 +01:00
Rua Haszard d7be99b520 fix issue when user re-selects same attr when setting up filter block: (https://github.com/woocommerce/woocommerce-blocks/pull/1596)
- exit early if there's no selected attr passed in
2020-01-20 07:58:26 +13:00
Albert Juhé Lluveras 09f2c626f9 Make TextInput respect prefers-reduced-motion preference (https://github.com/woocommerce/woocommerce-blocks/pull/1588)
* Make TextInput respect prefers-reduced-motion preference

* Reverse prefers-reduced-motion check
2020-01-18 10:39:13 +01:00
Albert Juhé Lluveras cad3e72769 Create CountryInput component (https://github.com/woocommerce/woocommerce-blocks/pull/1585)
* Create initial CountryInput component

* Create ShippingCountryInput

* Create BillingCountryInput

* Make backgrounds white

* Correctly align options

* Add CSS resets for 20xy themes

* Fix wrong defaults in countries constants

* Make CountryInput respect 'prefers-reduced-motion'

* Reverse prefers-reduced-motion check

* Set max-width to CountryInput dropdown

* Use decodeEntities to print country names

* Avoid unnecessary JSON enconding and later parsing

* Make sure country name is also encoded when selected

* Fix countries default value
2020-01-17 17:58:08 +01:00
Rua Haszard eaa6b42d89 UI for removing cart items (not including hooking up to API) (https://github.com/woocommerce/woocommerce-blocks/pull/1579)
* correct typography styles for remove link (based on design)

* add trashcan icon from material icons, for removing cart items on mobile

* add & style trash icon for remove cart item on mobile

* a11y - use darker grey for trashcan icon button to improve contrast

* rename IconDelete -> IconTrash

* remove unnecessary div

* use <button> for remove action buttons + add link-button scss mixin

* fix editor styles for cart line items - total column should be right-aligned

* fix various visual issues with cart line items table in editor:
- rows should align hard left and right (first/last child no padding)
- totals should be align-bottom on small screen
- correct vertical padding on column headings
- re-add row border separator lines
2020-01-17 13:46:56 +00:00
Seghir Nadir 4a8c57fbe1 Focus on Full Cart mode after inserting (https://github.com/woocommerce/woocommerce-blocks/pull/1582)
* focus on the cart main block
2020-01-17 13:23:33 +01:00
Mike Jolley 9842986cd8 Add `low_stock_remaining` field to cart items API (https://github.com/woocommerce/woocommerce-blocks/pull/1583)
* add low_stock_remaining field

* Update tests
2020-01-17 11:46:17 +00:00
Mike Jolley 253a0160f1 Validate store API schema in unit tests (https://github.com/woocommerce/woocommerce-blocks/pull/1553)
* Add schema validation helper

* Add tests for cart item schema

* Fix schema errors found by tests

* Add tests and fix validation for remaining store API endpoints

* Tweak response for nested diffs

* Array syntax

* Improved nesting and type validation for schema

* Implement and fix type checking across test suite

* Type validation fixes

* Fix null comparison

* Fix array handling

* Switch to number type and support in validation

* Test the tests

* Update tests to use objects which match schema, avoiding JSON encode/decode
2020-01-17 11:34:15 +00:00
Rua Haszard f3e4fc2bd4 fix react runtime js error when all products productLink=off: (https://github.com/woocommerce/woocommerce-blocks/pull/1593)
- renderedSalesAndImage is a js var holding react element;
- don't surround with (), converts to obj { renderedSalesAndImage: bla }
2020-01-17 09:50:48 +13:00
Rua Haszard eb2baf6a84 add product short description to cart/items api (https://github.com/woocommerce/woocommerce-blocks/pull/1552)
* add product short description to cart/items api

* leave short description as plain text + use default trim length (200)

* strip html and shortcodes from product short description

* limit cart line item short description to max 75 chars

* add normalize_whitespace to trim extra newlines in short description

* retrieve product description & truncate consistent with products API
2020-01-17 08:51:39 +13:00
Mike Jolley 0e752e9e0d Introduce view switcher component for the cart block (https://github.com/woocommerce/woocommerce-blocks/pull/1576)
* View switcher on cart block

* Dedicated component and styling

* Views and selected should be required

* Rename to ViewSwitcher

* Implement views via render prop

* Remove defaults for required props
2020-01-16 14:50:48 +00:00
Albert Juhé Lluveras 3f0368e63b Checkout: Fix city input field showing country value (II) (https://github.com/woocommerce/woocommerce-blocks/pull/1580) 2020-01-16 12:31:00 +01:00
renovate[bot] dfc963b545 Pin dependencies (https://github.com/woocommerce/woocommerce-blocks/pull/1567)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-15 15:19:06 +00:00
Mike Jolley 86b8b7779c Add Quantity selector component for cart line items (https://github.com/woocommerce/woocommerce-blocks/pull/1558)
* Implement quantity selector component

* Improve default appearance

* Remove underline

* Add aria speak

* Improved keycode handling

* Add focus styles to buttons and inputs

* Increase constrast
2020-01-15 11:32:54 +00:00
renovate[bot] 8f73d68904 Update dependency css-loader to v3.4.2 (https://github.com/woocommerce/woocommerce-blocks/pull/1571)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-15 10:20:06 +01:00
renovate[bot] fa188ecc85 Update babel monorepo to v7.8.3 (https://github.com/woocommerce/woocommerce-blocks/pull/1568)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-15 10:19:51 +01:00
renovate[bot] 1f8e0ffcdf Update dependency autoprefixer to v9.7.4 (https://github.com/woocommerce/woocommerce-blocks/pull/1569)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-15 10:19:31 +01:00
renovate[bot] 095b992c75 Update dependency core-js to v3.6.4 (https://github.com/woocommerce/woocommerce-blocks/pull/1570)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-15 10:15:02 +01:00
renovate[bot] 5b13fc2b1a Update dependency downshift to v4.0.5 (https://github.com/woocommerce/woocommerce-blocks/pull/1572)
Co-authored-by: WhiteSource Renovate <renovatebot@gmail.com>
2020-01-15 10:12:04 +01:00
Rua Haszard 5c85ee23cf follow up fixes on cart low stock warning badge (https://github.com/woocommerce/woocommerce-blocks/pull/1564)
* rename low stock prop inside lineitem to avoid unnecessary renders

* remove unnecessary span in low stock warning badge
2020-01-15 12:54:32 +13:00
Rua Haszard 86dca691e5 show discount on cart line items & price styling (https://github.com/woocommerce/woocommerce-blocks/pull/1548)
* show discount on cart line items (no styling)

* style line item discount badge + use correct colors for prices

* show full price inline on mobile

* move all responsive tweaks for cart prices to explicit breakpoints

* add nowrap to FormattedMoneyAmount so prices don't ever wrap

* fix misaligned full price on mobile when prices are large (edge case):
- if price strings are long, the full price stacks above line total
- previous right-margin on full price showed prices misaligned

* allow client code to add class(es) to FormattedMonetaryAmount

* add nowrap so discount badge doesn't wrap

* remove unnecessary span from discount badge +
+ more explicit `display` style for different price column elements
2020-01-15 09:52:42 +13:00
Rua Haszard b9bfef0ba4 show low stock warning badge on cart line items (incl fake test data) (https://github.com/woocommerce/woocommerce-blocks/pull/1557) 2020-01-15 09:50:32 +13:00
Albert Juhé Lluveras 11a033d862 Make RadioControl id optional (https://github.com/woocommerce/woocommerce-blocks/pull/1563) 2020-01-14 21:21:29 +01:00