* Add optional parameter to `/currency`'s `formatAmount` to display currency code.
To support rendering non-ambiguous results.
* Add the changelog entry.
* Add hide and show task list tests
* The start to adding tests for the activity panel
* Add activity panel tests and WP-API plugin on initialize
* Update task list tests to be more flexible
* Add changelog in package
* Update the re-enable task list logic to be more robust
* Use a more generic selector
* Make sure task list is shown in previous test
* Add test screenshot
* Remove screenshot and update logic
* Address PR feedback
* Add endpoint to hide task lists
* Migrate old setup task list hidden option
* Use option to store all hidden lists
* Add getter for deprecated options
* Migrate old task list options
* Move task lists into separate class
* Add TaskList class for individual task list control
* Update hidden checks to use TaskList api
* Update docs for hidden lists
* Update use of should_show_tasks to check for visible task lists
* Remove hide endpoint to reduce scope on PR
* Fix up failing tests
* Fix up rebase
* Add back in should_show_tasks with deprecation notice
* Add delay between payment tests
* Add initial task list render
* Add task list item render
* Separate task list menu component
* Fix click handling for tasks
* Add task started count data
* Scroll to top after selecting task
* Handle PR feedback
* Handle PR feedback round 2
* Add woocommerce_task_list_visited_tasks option for marketing task completion
* Add changelog
* Use trackedCompletedActions to track completed actions
* Change completed action name
* Check # of installed extension for the completion logic
* Do not update completed action if marketing already exists
Co-authored-by: Moon <moon.kyong@automattic.com>
* Add evaluation logger
* Update readme
* Use simplified log format
* Add a new line at the end
* Move constant checking to consumer level
* Rename constant name
* Check constant before checking the value
* Fix test
* Add changelog
* Move initialization of the logger to RuleEvaluator and use more generic constant name
* Remove the default source value
* Update readme.txt
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update src/RemoteInboxNotifications/README.md
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update src/RemoteInboxNotifications/RuleEvaluator.php
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Add soruce -- remote-inbox-notifications
* Move WC_ADMIN_DEBUG_RULE_EVALUATOR check to the logger
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Add a new command to build testing instructions by a given version
* Check - [ ] Include test instructions in the release checkbox
* Fix code format
* Code cleanup
* Fix config error
* Update README.md
* Update README.md
* Update README.md
* Remove js version
* Remove test file
* A minor refactor
* Reuse parse() method from the WCAdminFormatter.php
* Exclude PRs with "no release testing instructions" label
* Remove Requests:multi_request dependency
* Remove wp load script
* show Pinterest for WooCommerce in `Marketing > Installed`
* tweak Pinterest bounding rect so padding is consistent with other icons
* add changelog entry
* add testing instructions
* tweak wording for clarity
* link to correct Pinterest admin settings URL
* detect if Pinterest is set up & link to onboarding if appropriate
* add utm_medium campaign link tracker tag to docs link
* change all the logs 🪵
* Remove redundant changelog entry from readme
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* remove todo for Pinterest onboarded/setup status (now implemented)
Co-authored-by: Rua Haszard <rua@automattic.com>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* Initial set up for the WCAdminSettingsRegistry
* Make use of filter for admin settings
* Add wc/settings package and remove depreciated dropzone wrapper
* Make use of the getSetting function instead of accessing window directly
* Add comments
* Add changelog
* Remove un needed changes
* Update dropzone provider logic and fix styling
* Remove old css
* initial refactor
* Fix auto fill and write tests
* Removed autofill from country/region and added support for abbreviation regions
* Add changelog
* Add changelog for the component package
* Fix clear form for autofill
* Remove dollar sign and space to fix the syntax error.
Remove dollar sign and space
* , separated file list does not work with phpcs. Use space instead
* Set default value for orders var
* Add changelog
* Add PR # to the changelog
* Return default orders in the early return statement
* Adding the default value for the order var
* Revert the early return changes
* Sentence case all the things
* Update a few more things that were missed on the first round
* update documentation titles to use title case
* Add changelog
* Handle PR feedback
* Revert readme changelog changes
* Revert changes to ALT text in dev documentation
* Revert a change to ALT text in dev documentation
* Fix failing tests
Co-authored-by: David Levin <davidlevin@Davids-MacBook-Pro-2.local>
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* Fix end date for last periods
* Test February end date for leap year
* Add changelog and testing instructions
* Handle feedback
* Fix merge conflict
* Add changelog
* Split the Extensions page into Marketplace and My Subscriptions.
* Add changelog entry.
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
* Update Table components to align texts and numeric a bit smarter
Text fields are left-aligned and numeric values should be right-aligned.
* Update a snapshot test
npm run test:client -- --updateSnapshot client/analytics/components/leaderboard/test/index.js
* Add tests for property isLeftAligned
* Do not retain values when switching between rules in the DateFilter component
* Add changelog entry
* Remove unnecessary use of the ternary operator
* Fix the changelog entry
* Add tests
* Add changelog entry
Co-authored-by: Chris <chris.aprea@automattic.comchris.aprea@automattic.comchris.aprea@automattic.com>
* Add default free extensions to REST API response
* Use data store to retrieve free extensions
* Add back in product link click tracks
* Handle visibility and evaluation server-side
* Update sprintf to use entire link tag
* Fix up remote free extensions rule evaluation
* Add visibility rules to mailpoet
* Fix fallback to default payment gateways if polling fails
* Add changelog entry
* Fix empty array check
Co-authored-by: Matt Sherman <matt@jam123.com>
* Extract extension list transformation logic
* Check for installed marketing extensions in the task list
* Add tests for marketing extension utils
* Remove use of useMemo in non-component
* Separate installed plugins from plugin lists
* Only show plugin lists when plugins exist
* Use installedExtensions for tracks
* Fix boolean check on list plugin length
* Fix text style changes with Gutenberg Text component
* Update to match new designs for plugin list
* Skip non-allowed lists for installed plugins
* Add changelog entry
* Handle styling feedback
* Add initial plugin list components and marketing task
* Add marketing task styles
* Fix action button alignment
* Only allow specific plugin lists
* Add button to activate already installed plugins
* Record event when marketing plugin is installed
* Update plugin list when plugins are installed or activated
* Disable and set buttons as busy when installing/activating
* Update data source to use v2 controller
* Add changelog entry
By adding a `isReverseTrend` prop we can pass to `SummaryNumber` we can indicate that a negative trend in refunds is a good thing and therefore display a green indicator.
* Match stock status in CSV download to the table
* Add changelog
* Set status value from stockStatuses
* Update stock status for server-side export
* Replace status value in the controller
* Remove unnecessary call to constructor
* Remove changelog from readme
* Add changelog
* Add `hidden` legendPosition to `Chart`.
Sometimes, for example, when there is a single data set, there is no need for rendering the legend. It may even introduce more confusion than value. It seems interactive, but there is nothing you can do with it.
Fixes: https://github.com/woocommerce/google-listings-and-ads/issues/618
* Add `@storybook/addon-knobs` to devDependencies.
It was used but not explicitely stated.
* Add a changelog entry.
* Add tests for legendPosition in Chart component
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
The deprecated (but not removed) `onChangeCallback` and `onSubmitCallback` props were not being called because of an error in the logic that checked for presence of the new callbacks (it was always truthy due to it having a fallback to an empty function).
This reverses the logic so that if the deprecated props are provided they will be called, if the new props (only) are provided they will be called instead.
This also pushes the removal of these back to 9.0.0, because in the past these deprecated version numbers had little thought behind them, but this gives a more realistic time frame for removal and an understanding that a *major* version will break compatibility, not a patch version as the old version number suggested.
* Register a fake wc-admin homepage to for users without permission
* Update removal cap to manage_woocommerce
* Fix WooCommerce menu item position and icon
* Fix up admin user checks
* Handle PR feedback
* Only disable redirection on wc-admin pages
* Remove woocommerce_prevent_admin_access filter
* Add changelog entry
* Using order items endpoint instead of reports and added customer and products support
* Add total_formatted key
* Converted component to functional component and memoized getItems function
* Using orders meta table instead of reports product_lookup table
* Add changelog entry
* Add a new endpoint to get low in stock products.
* Set images and attributes property
* WIP -- set last order date
* Do not join postmeta if store does not have any custom stock threshold
* Combine get_query() and get_query_for_sitewide_threshold() into one method and a few code clean ups
* Support status field
* Use new products/low-in-stock endpoint to count low in stock products.
* Use new products/low-in-stock to get low in stock products data.
* Remove low_in_stock support
* Deprecate low_in_stock
* Use the new ProductsLowInStock when low_in_stock is set
* Set cache-control header for the new endpoint
* Use wc_rest_prepare_date_response to format the response date
* Extract low in stock test to a separate file
* Make is_using_sitewide_stock_threshold_only protected
* Revert Products.php changes
* Add back low in stock test to products test
* Remove unnecessary if
* Make the controller final
* Deprecate low_in_stock
* Bug fix -- last_order_date was not setting correctly for variation post type. This commit fixes it
* Add changelog
* Pre-release for 2.5.0-beta.1
* update changelog
* revert version bump
* revert package.lock
* entry for 2.5.0
* Sync with 2.4 release and removed some duplicates
* add changelog from 7186
Co-authored-by: Rebecca Scott <me@becdetat.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Add components-dropdown__content class -- this is for Safari as Safari returns parent element as a related target in this case
* Remove unnecessary style
* Add TableSummaryPlaceholder
* Expose TableSummaryPlaceholder to package @woocommerce/components
* Add test instructions and changelog entries to MD files
* Add tests for TableSummaryPlaceholder
* Add storybook for TableSummaryPlaceholder
* bump E2E package versions to latest
* first pass on E2E test package.json
* move e2e specs to admin-e2e-tests
* add global types, reimplement tests/e2e/specs
* use consistent build dir with other packages
* add documentation, improve test:e2e script
* fix linting issues in admin-e2e-tests
* fix more linting issues
* disable lint on requires
* use e2e in the E2E container names
* move analytics overview test to package
* change extension on analytics-overview test file
* fix linting issues in e2e analytics overview
* remove package scripts from e2e package
* change test specs extensions to .tsx
* remove import from analytics overview test spec
* add .tsx to e2e test spec file extension list
* update e2e business features count expected
* Remove facebook marketing extension from fallback config
* Update changelog and testing instructions
* Update changelog to use the shiny new Jetpack changelogger
* add @slotFill to process
* add types
* committing data
* use filter instead of hook
* changelog
* add action type
* update paths to ignore builds and node_modules
* changelog
* Add action data type
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Make action button optional, and disable VerticalCSSTransition when expandable is false
* Update collapsible list to support nested element transitions
* Add changelog
* Address some small PR feedback, and fix tests
* Add expanded class, and remove cursor when expanded
* Make sure margin is added to container height
* Update broken tests
* Add radix to parseInt method
* on Filter update, keep all queries
* changelog
* package changelog
* instead of keeping everything else, remove advancedFilters when main filter is set to 'all'
* remove all queries associated with filter in question
* dedupe params
* add tests
* Added onDelete prop to `task-item`.
* Added `onDelete` and `Remid me later` options to task example in docs.
* Added changelog
* Fixed lint error
* Fixed another lint error
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
- Use headings in issues templates,
instead of bold paragraphs.
To match with PR template, to improve readability and accessibility.
- Add the "Actual behavior" section.
The reviewer, would not have to get that from the description or test locally.
- Reorder sections,
Screenshots (and actual behavior) describes what you have immediately after you perform "steps to reproduce", so therefore could be stated there. It's hard to make a screenshot of the "expected behavior", which is not happening.
- Move section descriptions to comments.
This way the issuer could still keep them in place while filling the sections, answering those requests.
- Use ellipsis character instead of three dots.
To make it more readable, by fully sighted and visually impaired readers https://tosbourn.com/the-importance-of-using-the-ellipsis-character not to read it as "dot dot dot"
* Repurpose disable filter to remove optional features
* changelog
* disable feature toggles on wc-admin disabled
* dedupe changelog
* hide save button using
* Remove old payment gateway task components
* Move PaymentGatewaySuggestions up one directory
* Add feature check to tasks array
* Turn on payment gateway suggestions in all environments
* Handle PR feedback
* Use gateway suggestions from REST API in help panel
* Fix component path
* Remove BACS test due to SlotFill testing bug
* Await button selector
* Handle PR feedback round 2
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
- Make `getIdsFromQuery` consider `0` as a valid id.
Previously `Boolean` filter was removing it from the list.
Fixes https://github.com/woocommerce/woocommerce-admin/issues/6980
- Add a basic set of tests for `getIdsFromQuery`, as they were none.
- Replace `lodash.uniq` with ES6 equivalent.
- Update JSDoc for `getIdsFromQuery`, to specify default value, returned type and description.
* Add appropriate text props to supplement variant revamp
* Add font styles to navigation title since its removed in wp.components
* Add more missing styles
* Accidental change
* Add changelog
* Fix lint
* Update jest snapshots
* Allow custom date range start for date range
* Make use of the date_range logic for any notes using active_for
* Add changelog
* Add a couple extra tests for date range
* Add new VerticalCSSTransition component for vertical transitions
* Made use of VerticalCSSTransition in taskItem
* Updated vertical css transition to add support for appear
* Add changelog
* Fix task list tests
* Fix test lint error
* Use delete key instead of setting it to undefined
* Reports: allow changing the export id
"woocommerce_admin_export_id" can be used to change
the filename when downloading an emailed report export.
* Add testing instructions and changelog
* Reports: Sanitize the file name for the report export
* add toggle and check before registering routes
* move taxes out from analytics check
* fix merge error
* ensure features are loaded before calling Feature methods
* remove unused use
* add toggle and check before registering routes
* remove preloaded option
* early return
* changelog
* page refresh on option change
* pass value to client
* use Features::is_enabled
* handle option default
* go back to using feature flags on client
* remove unused use
* hide customers behind analytics flag for now
* remove unneeded class check
* Add notice and enabled gateway on successfull connection
* Record event on payment gateway connection
* Redirect to payments task after successful connection
* Use order item data to match attributes.
Fixes matching on products with "any x" attributes.
* Fix attribute query on variations report.
* Fix variations report item count.
* Add test coverage.
* Add changelog entry.
* Fix non-string query prop warning in SelectControl component.
* Move custom attribute retrieval to a reusable Trait.
* Ensure all custom attribute terms are included in the API response.
* Combine all terms from custom attributes.
When they're split across multiple products.
* Ensure report args are mapped and sanitized before CSV export.
* Add test.
* Fix products query when there are no products in the specified categories.
* Add changelog.
* Update the wordpress/babel-preset to avoid crashes in WP5.8 beta2
* Also update other dependencies dropping IE11 support.
* Update data dep in data package.
* Add back regen runtime.
* Add regenerator-runtime dependency for setting up jest tests
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Add fallback for the select/dispatch data-controls for older WP versions
* Also update dispatch in payment-gateways and rename oldDispatch to depreciatedDispatch
* Add comments
* Move data source filter name to constant
* Add unit tests for data source poller
* Handle PR feedback
* Add use statement for DataSourcePoller
* Fix trailing comma
* Include orders without coupons when excluding specific coupon IDs.
* Add changelog entry.
* Fix default Orders before/after query args.
* Specify date range for test query.
* Add new Note, Events calls
* Replace deprecated functions
* debug cleanup
* Add comment re moving this to Jetpack plugin in the future
* Fix merge conflict
* OK for real merge fix AND changelog entry, lol
* Adding UTM link variables
* Adding Backups check, switching to check for Jetpack installed rather than activated.
* - Fixing logic error by moving requirements check to after actioning logic.
- Rewriting has_backups() to check product instead of module.
* Fixing bug - has_backups() wasn't recognizing plan
* Initial ellipses menu render on task list
* Added remind me later functionality
* Fixed tests and wrote tests for ellipsis menu
* Update tracks
* Add changelog and update css
* Fix up spacing and track name
* Address PR feedback and add extra integration tests
* Remove the should render correctly test, as the other tests cover this
* Move logic out of mark up
* Directly reference the EllipsisMenu for now to circumvent a circular dependency
* Fix direct import in jest tests
* Preload remind me later optoin
* Some styling animation changes for the task list
* Stagger transitions for dismissing within collapsible list
* Fix lint warnings
* Update logic to prevent the use of TS `as`
* Add tests and comments
* Add razorpay as default fallback payment gateway
* Move razorpay SVG
* Fix alt logo text translation
* Only show razorpay in IN
* Add changelog entry
* Refactored the inbox note cards and moved to experimental package
* Update experimental dependencies
* Add tests for inbox-note components, and updated naming
* Add changelog
* Update readme and fix dismiss all
* Fixed lint errors
* Refactor dismiss logic in inbox-panel
* Add hook for handling inner link callbacks
* Export updates and a minor TS update
* Fix lint error
* Add action button to TaskItem.
* Pass through click event.
* Add separate action and label to onClick.
* Add initial copy for task expansion.
* Expand one task at a time.
* Add descriptive text to the payments step.
* Set the first incomplete task current by default.
* Revert expansion behavior.
* Fix margins.
* Curate purchase products task content based on selections.
* Fix appearance task copy.
* Fix payment task copy.
* Add conditional tax step title.
* Indicated if task is expanded to click handlers.
* Automatically enable WC Tax from the expanded CTA.
* Restore additional text property.
* Fix task title xpath selector in E2E test.
* Fix automatic tax setup query param logic.
* Add changelog entries.
- Remove unused `isEmpty` prop from ReportError.
- Remove `isError` prop from ReportError, as it is always set. Also, to reduce confusion that: Could "report error" be not an error?
- Remove default value of `className` prop from `ReportError`, it is unnecesary, as `EmptyContent` takes falsy values as well as `''`.
- Change `ReportError` to a function component.
* Offload remote inbox notifications engine run using action-scheduler
* release note
* fix changelog
* Use init hook to initialize async AS action
* Drop product count query workaround
* Check enabled methods using the payment gateway data store
* Reduce loops used in payment gateway list
* Add COD as fallback gateway
* Allow payment gateway to be enabled without connection step
* Uses installed payment gateway details in payment gateway list
* Add changelog entry
* Hook up payment gateway data store
* Fix deprecated onSubmitCallback in dynamic form
* Throw catchable errors in data store
* Provide a way to get errors from the data store
* Hook up payment connection update with data store
* Remove redundant requesting state on selectors
* Add changelog entry
* Handle PR feedback
* Fix linting errors
* Updated mobile banner icon with cross-small gridicon
* Update analytics dashboard icons, removing use of dashicon
* Remove use of dash icon in tag component
* Remove dash icon from ellipsis menu
* Remove use of dashicon in calendar
* Update icon imports and remove use of Dashicon in collapsible list
* Remove Dashicon usage from store alerts as it is depreciated
* Remove dashicon usage in shipping label
* Fix up old css for icons
* Removed dashicon usage in favorite button
* Update the wordpress/icons package
* Add changelogs
* Fix broken test
* Remove remnants of legacy changelog script
* Add 2.3.0 section to TESTING-INSTRUCTIONS.md and moved all relevant instructions
* Update readme.txt with changelog from 2.3.1
* Add a new store to interact with WC Payments REST APIs
* Convert to Typescript
* Refactor payments store
* Fixed type on GET_PAYMENT_GATEWAYS_SUCCESS action name
* Added SettingDefinition
* Added PaymentSelectors type
* Updated Array<type> to string[]
* Update action name in test
* Move stub.ts out of test directory
* Set type for the test stub and change order type to number | ""
* Rename action type name
* Add changelog
* Follow _REQUEST _SUCCESS _ERROR action naming
* Add a new action and reducer for getPaymentGateway
* Change store key
* Move to packages/data
* Export store name
* Remove unused spec properties
* Move default payment gateways to separate file
* Add Stripe to default gateways
* Fix payfast image and visibility conditions
* Fix setup button action when no fields are present
* Fix localized string and help text
* Fix settings transform and add help text
* Show connection button if oauth connection URL exists
* Add fallback when no fields exist
* Remove ToS text in favor of help text
* Update payment action boolean check
* Add changelog entry
* Call existing filters for leaderboards.
Fixes category data not refreshing when selecting a different currency while using docs/examples/extensions/sql-modification
* Update changelog
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* transform data
* working
* better
* check for marketplace suggestions
* changelog
* copy initialInstallableExtensions before transform
* parse locales server side
* deep equality
* Match remote data to local data
* reflect changes on UI
* fix keys
* Add method to collect post install scripts from payment gateway
* Add reusable JS method to add scripts
* Enqueue gateway script after plugin install
* Fix current method not found when resolving methods
* Add changelog entry
* Fix readme merge conflict
- Forward `autocompleter` prop from `CompareFilter` to `Search`.
Allow, to use the `custom` type of search,
previously it was complaining about lack of `autocompleter`,
even though it was provided.
- Move `path` in Storybooks example to a parameter, to allow setting it in unit tests.
- Add few tests for FilterPicker.
- it renders the basic storybook example without throwing an error
- it forwards `autocompleter` & `type` props
Fixes: woocommerce/woocommerce-admin#6890
* Add PluginInstaller class
* Redirect to referring page if one exists
* Store message and show after redirect
* Add transient notices feature
* Fix default and empty state of notices
* Use TransientNotices to display plugin notices
* Add transient notices readme
* Add feature unit tests
* Update notice queue client-side
* Add filter to queued option prior to notice creation
* Use the core/notices2 data store
* Fix filtered queued notices
* Add methods to get individual notices and queue
* Allow user ID specific notices
* Remove errant script asset dependencies
* Add user ID property to docs
* Use preloaded option instead of window var
* Refactor transient notices to directly use option instead of state
* Show error message from WP_Error in plugin installer
* Add tests around notice queue in client
* Add changelog entry
* Only fetch remote payment specs when marketplace suggestions enabled
* Fall back to default specs if remote fetch fails
* Change ruleset to object
* Add changelog entry
* Add notes helper method for date ranges
* Update two of the notes with date ranges
* Add tests and fix range logic
* Add changelog
* Update comments
* Update range name and added exception if invalid range passed in.
* Fix php unit tests
* Fix another test
* Added dry run option and clean between core and plugin builds
* Add safety so I will not accidently start a release
* Change return to exit and update plugin release name on dry run
* Updated some of the logging
* Made use of git --dry-run and hub --noop
* Add dry run to add as well
* Removed dry-run command, updated log
* Extend the existing REST endpoint with gateway status data
* Add settings URL to response
* Add setup specific fields to response
* Fix controller class name
* Only pass required setting keys instead of fields
* Add changelog entry
* Update readme with changelog from 2.2.* releases
* Add 2.2.5 release to the changelog
* Update with 2.2.6
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* Replace google icon
* Remove note for Google Ads extension
* Replace extension in API OnboardingProfile
* Record event for new extension
* Replace extension in onboarding flow
* Replace extension benefits
* Change background colour of Google icon
* Fix svg warnings
* Add changelog entry
* Fix prettier error
* Add old note to obsolete list for removal
* Fix an issue with OBW when wc-pay and Jetpack are both being installed
* Add readme and testing instructions for woocommerce/woocommerce-admin#6957
* Add filters for the installed and activated plugins and tie into those filters for ensuring Jetpack is installed ahead of WCPay
* Update the get_script_asset_filename function calls to match new format
* Added e2e test for the coupons page
* Add changelog
* Remove typo in changelog
* Added payment method to onboarding data store
* Add reducer test
* Address feedback on reducer naming convention, isResolving, enabledMethods
* Move out types to live in its own island
* Add a comment to remind ourselves for utilizing payments data store for enabled payment gateways
* Update changelog
* Fix select-control component to preserve currently selected item on focus and de-focus
* No longer auto select option on initial render, pressing tab would only select if selection exists
* Fix to reflect the proper suggested changes
* Attempt to fix unnecessary search reset on pressing tab
* Fix for keyboard interactions and added accompanying tests
* Add task hierarchy support to task item
* Add optional tooltip
* Add changelog
* Update the logic to keep it more generic
* Fix up css
* Change level to numbers
* Switched the levels around where 1 is the highest priority
* Updated classnames and made sure tooltip does not show on completed item
* Partial change with new task-list
* Made use of the new CollapsibleList for the extended list
* Add test for expansion item
* Add changelog
* Add tracks for expand and collapse
* Update translation to plural/singular option
* Add disabled props to SelectControl
This commit adds "disabled" props to SelectControl
* Added changelog
* Fixed prop name
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Prototype the basic functionality of the list collapse component.
* Further work on the component.
* Add icons and some basic styling. Fix exports to include 'Experimental'
* Add CSSTransition to collapsible list item
* Add tests for collapsible component
* Add changelog
* Add collapse/expand callbacks
* Add tests for callbacks
* Replaced collapsible list item with a collapsible list instead
* Updated to use calculated height versus absolute height
* Removed fallback and removed animation from collapse footer
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* Add a Basic test for FilterPicker.
Test that it renders the basic storybook example without throwing an error.
Move `path` in Storybooks example to a parameter, to allow setting it in unit tests.
* Forward `autocompleter` prop from `FilterPicker` to `Search`.
Allow, to use the `custom` type of search, previously it was complaining about lack of `autocompleter`, even though it was provided.
Fixes: https://github.com/woocommerce/woocommerce-admin/issues/6062.
* Add changelog entry.
* Move `FilterPicker` config creation closer to tests that use it.
* Remove unused type prop from `FilterPicker` tests.
Addresses https://github.com/woocommerce/woocommerce-admin/pull/6880/files#r620285400.
* Add changelog note also to `CHANGELOG.md`.
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
* Add initial task item component with the new task list
* Switch components to functional components
* Some minor updates from the last rebase
* Fix missing variables.
* Fix tests
* Add animation for the experimental list
* Fix lint error
* Add changelog
* Fix E2E tests
* Update PR suggestions and export list from experimental package
* Fix dismiss styling issue
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
* Use remote payment methods endpoint for payments list
* Use the generic payments step for the payments container
* Use field config to update options
* Move remote payments to separate folder and restore old payments
* Restore PaymentSetup
* Add changelog entry
A custom exception `NotesUnavailableException` will be thrown on attempts to load the "admin-note" data store using the `Notes::load_data_store()` method introduced in this PR.
All calls to `\WC_Data_Store::load( 'admin-note' )` were replaced with calls to the above method.
* Add login page wait script for e2e tests
* Re-navigate to login page, if initial selector does not exist
* Add screenshot if login page did not render
* Add screenshot code, and screenshot artifacts to GH action
* Update screenshot logic for login
* Update artifact task
* Update upload artifact workflow
* Update jest config to make sure the screenshots work on test failures
* Remove old screenshot code
* Add screenshots to daily e2e tests as well incase of failure
* Add changelog
* Create the new experimental list, default to rendering it when items are not supplied.
* Remove typings from the List, ListItem.
* Add react-transition-group as dependency.
* Fix warnings by wrapping with CSS transition, pass down props from List.
* Remove type annotations left in list-item.
* Duplicate some styles in the higher level woocommerce-list-item element, to make them work in the new list.
* Fix accessibility issues, adjust the role logic
* Add more testing of the roles logic.
* Mark the old list stories as deprecated, add a basic story for the new style.
* Expose ListItem without Experimental in the name.
* Remove some redundant code changes.
* Fix linting issues
* Add types package.
* Cast the type of children to TransitionGroup.
* Adjust the list to assume a purpose of being a list of links.
* Adjust the tests for the new behaviour.
* Fix css mangled by prettier.
* Fix types that are optional.
* Rework the list item.
* Export new list as experimental, fix accessibility styles and deprecation notice.
* Make the basic transition opt-in.
* Update classnames to get types.
* Add tests, adjust behaviour for css disable.
* Fix css lint, remove types/classnames, update tetsing-library/user-event.
* Fix the basic story for ExperimentalList.
* Conditionally add keyDown and role based on onClick handler. Adjust tests to new behaviour.
* tabIndex only on hasAction
* Update the package-lock
* Add changelog
* Fix transition styling
Co-authored-by: Paul Sealock <psealock@gmail.com>
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* Add initial payment recommendations code for the payments settings
* Added request data for the recommended payments
* Some styling updates and make sure it does not show when marketplace suggestions is disabled
* Update url
* Update comment in php class
* Add tests
* Fix lint errors
* Remove unnecessary type
* Fix lint error
* Fix broken test
* Convert plugin package to typescript
* Fix lint errors
* Add changelog
* Add support for locale-data
* Fix track name
* Fix up the tests
* Fix lint errors
* Address PR feedback
* Add tests for option hydration
* Make types more robust in plugins reducer
* Made use of SlotFill component instead of page registry and router
* Removed console log, and fixed types
* Add newer version of i18n to data package, for newer types
* Make the request to WooCommerce.com more restrictive
* Fix path of import
* Update PHP with suggested changes
* Remove SlotFill with applyFilters
* Update copy and PR feedback
* Update package lock
* Updated package lock
* Fix the package lock
* Added dot, and some minor styling changes
* Add test instructions
* Remove PayPal for India
This commit removes PayPal payment option for India
* Added changelog
* Added testing instructions
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add store timezone string to preloaded settings
* Get current timezone periods based on store timezone
* Use current moment object to append timestamps
* Add changelog and testing instructions
* Consolidate timezone logic into getStoreCurrentTime
* Use const for default datetime format
* Use store moment converted via tz
* Make testing instructions more clear
* Add information to date readme about timezones
* Add tests around getStoreTimeZoneMoment
* Allow any plugin to be installed or activated
* Add PluginInstaller class
* Redirect to referring page if one exists
* Store message and show after redirect
* Add changelog and testing instructions
* Rename extensions task list card.
* Remove unused function parameter.
* Fix extended task list view tracking event name.
* Move completed extension tasks to the end of the list.
* Add extension task list toggle to display options.
* Avoid toggle width changing based on status.
* Remove redundant prefix from event name.
* Add changelog entry.
* Handle an empty extension task list.
* Only show extension task list display options when tasks have been filtered in.
* Add database columns
* Add support for nonces in note actions
* Add test for nonces in note actions
* Fix db values should default to null
* Fix a bug where URLs had encoded ampersands
* Update variable naming for clarity
* Add throwing an exception when note name not found
* Add tests for nonces in the datastore
* Add changelog
* Fix default paramater name
* Add changelog
* Revert "Add changelog"
This reverts commit f842bc58e4db66c8a497ca4f38d1b0294590192d.
* Making experimental package public, and updating the dependency versions
* add experimental to webpack and make explat public
* bump DEWP package version
* use filepath for inter package dependencies
* load experimental script
* remove check for experimental
Co-authored-by: Sam Seay <samueljseay@gmail.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Add dompurify and md5 to @woocommerce/components dependencies list
* Add changelog entry
* Add @woocommerce/experimental to @woocommerce/components dependencies list
* Update changelog entry
* Created Admin helper for helper functions
* Only set task_list to hidden on plugin update when store is less then day old
* Add onboarding skipped as well
* Add changelog
* Fixed user id unsetting
* Fixed event name
* Added cookie unsetting before recording
This commit adds the cookie unsetting before recording and adds a small refactor to the merchant email notes event recording.
* Added small refactor to the merchant email notes event recording
* Renamed event `wcadmin_store_alert_action`
This commit renames the event `wcadmin_store_alert_action ` to `store_alert_action `
* Removed check
* Fixed method name
* Changed "Notes" method to private
The method "record_tracks_event_without_cookies" now is `private
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* WIP add details prop to summary number component. New optional prop to add additional information at the bottom.
* Update component readme and stories to include new prop
* Revert commits to use children instead of a new prop
* Render optional summary number component children
* Typo fix, doc improvement and add entry to changelog
* Add readme.txt entry
* Partial local version to run php8 unit tests
* Remove the post install scripts
* Remove tab
* Make sure woocommerce version contains patch number
* Remove unnecessary script
* Update bin settings and unit test script
* Remove phpunit binary
* Updated how php unit is being run
* Add specific phpunit version for php8
* Update bin phpunit composer.json
* Final cleanup of scripts
* Fix potential test where image is an object
* Move setting image below save
* Add changelog
* Do not convert obj/array to string for email_actions
* Remove some uses of tabs
* Set WP and WC version to minimum php 8 supported
* Remove unnecessary composer install within tests
* Update select control logic so value type stays consistent
* Added test cases for updated changes
* Add changelog
* Removed the use of lodash 'findIndex' using the native one instead
* Added onChange update to readme
* Add types
* Add type definitions for @wordpress/components
* Fix formatting
* Fix JSX return type
* Fix incorect type for rows
* Add null to return type for react component
* Add type definitions for @wordpress/components to main package
* Add changelog entry
* Remove TS filename from import
* Re-add @types/wordpress__components
* Modified MerchantEmailNotifications class
This commit modifies the class "MerchantEmailNotifications" in order to set the current user before the events tracking
# Conflicts:
# src/Notes/MerchantEmailNotifications/MerchantEmailNotifications.php
# src/Notes/MerchantEmailNotifications/NotificationEmail.php
# tests/notes/class-wc-tests-email-notes.php
* Added changelog
# Conflicts:
# readme.txt
* Added testing instructions
* Fixed changelog
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Update all references to of Loader::is_feature_enabled to use Feature class
* Check if feature is enabled instead of existence in deprecated feature method
* Add changelog entry
* Add method to enable features
* Add the navigation nudge note
* Add changelog entry and testing instructions
* Update note name
* Fix renamed note class name
* Use redirect to settings instead of directly enabling note
* Remove old feature settings filter
* Add warning and default to empty array for contains operation, when value is not array
* Add changelog
* Move option is array check and warning to the OptionRuleProcessor
* Added a check for the new_value as well, given we do the same for the old_value
* Update contrast and hover / active colors
* Update hover and active state of chevron using mask
* add test instructions and changelog entries
* Update readme.txt
Co-authored-by: David Levin <davidlevin@Davids-MacBook-Pro-2.local>
Co-authored-by: Dan Hauk <dan@danhauk.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Initial playwright
* Updated e2e to use playwright and typescript
* Update set up environment and jest package
* Add changelog
* Add await to uncheck
* Fix formatting
* Revert jset back to ~24, as >25 runs slower, see facebook/jestwoocommerce/woocommerce-admin#9457
* Removed some unnecessary uses of waitForSelector
* Fix eslint issue
* Fix the e2e tests with latest updates
* Running most tests, with typescript now
* Fix any outstanding queries for the tests to work
* Update changelog
* Remove unnecessary jest version and unnecessary transform setting
* Fix test case broken after rebase
* Add fix to make e2e tests more robust
* Making sure dropdown value is correct
* Reove the wcpay condition for features number
* Check for function before calling
* Add comment & changelog note
Co-authored-by: Lee Willis <lee@ademti-software.co.uk>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* Refactor benefits component to functional component
* Update to useSelect and useDispatch
* Use state to store installing state
* Separate benefits components
* Add missing translator comments
* Don't show benefits screen when already completed
* Add benefits step tests
* Add changelog entry and testing instructions
* Close activity panels by default and track shown
* Add task list shown data to tracks
* Add changelog and testing instructions
* Fire the panel tracks again when the task list is hidden
* Update old versions of lodash in packages
* Add changelog entries
* Move lodash to peerDependencies in components package
* Fix broken JSON
* Fix lodash defined twice in components package
* Move lodash to peer dependency in date package
* Move lodash to peer dependency in navigation package
* Move lodash to peer dependency in notices package
* Relax lodash version constraint in components package
* Update package changelogs
Fixeswoocommerce/woocommerce-admin#6488
Changes.
* See the issue for the discussion, but we're changing the behaviour of triggering the connection flow as part of this. Before it was required that both wc-services and wc-admin were installed before triggering the flow.
* Also the plugins value was not being updated properly in the new flow, but plugins is not used in any useful way in the onboarding profile, so I have removed it completely. We now rely on the actual installed plugins to determine what is installed/activated.
* PHP unit tests were failing due to a change in the Github actions environment.
* E2E tests were failing because of that issue (they rely on port 8084 which is used in ubuntu 20 environment) and because of an issue with @woocommerce/e2e-environment
* Add CES survey for adding product categories and tags
* Update readme and testing instructions
* Add CES survey for adding product attributes
* Change logic to use number of rows in tags table
* Replace addslashes with esc_js, use JS variables pagenow and adminpage
* Added "MailPoet" option to new Business Details step
This commit adds "MailPoet" option to the new Business Details step
* Modified the Creative Mail copy
* Added changelog
* Added testing instructions
# Conflicts:
# TESTING-INSTRUCTIONS.md
* Fixed testing instructions
* Fixed e2e tests
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add tilde option for client root directory
* Support tilde start as internal to fix lint issues
* Update baseUrl and paths so auto complete works correctly
* Add changelogs
* Add eslint support for webpack resolvers
Co-authored-by: Matt Sherman <matt@jam123.com>
* Remove unnecessary tracking opt in check
* Add intro modal tests
* Add changelog entry
* Add extra check to see if modal has previously been dismissed
* Add packgage state check to deactivate-plugin note
* Add changelog entry
* Add method to check if notes are initialized
* Update guard to check if notes are initialized
* Add testing instructions
* Fixed related orders problem
This commit fixes the related orders problem
* Fixed customer type query
* Fixed get_order_number filtering
* Added a default value to totalResults
This commit adds a default value to totalResults (in order to avoid errors)
* Added testing instructions
# Conflicts:
# TESTING-INSTRUCTIONS.md
* Added changelog
# Conflicts:
# readme.txt
* Fixed orders without products
* Added tests
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Added "MailPoet" option to Business Details step
This commit adds the "MailPoet" option to Business Details step in the OBW
* Fixed plugins order
* Creative Mail option toggled off by default
This commit toggles off the Creative Mail option by default
* Fixed copy and image URL
* Added mailpoet.png image
* Added changelog
# Conflicts:
# readme.txt
* Added testing instructions
# Conflicts:
# TESTING-INSTRUCTIONS.md
* Fixed key
* Fixed lint error
* Fixed testing instructions
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Prune out old bundle flow and expand range of new one
* Add feature flag, default to true
* Update feature flag, and updated WcPay logic
* Fix lint errors
* Add changelog
* Onlly show WC payments task if part of the business extensions
* Remove stray console log
* Update copy of WCPay card
* Add a couple more e2e tests
* Add await for click
* Add test instructions
* Add changelog and testing instructions
* Set active level when matching a new item
* Add navigation container tests
* Add testing instructions and changelog
* Update testing instructions
* Fix up missing changelog entries after rebase
* Add in missing menu items from useSelect in tests
* Add remote inbox notifications rule that triggers when WCA is updated
* Add changlog entry
* Note that `plugin_version` should be used to check the WCA version
* Added warning when WC-Admin is active but not being used
This commit adds a warning when WC-Admin is active but not being used
* Fixed copy
* Added changelog
# Conflicts:
# readme.txt
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Remove exclusion in getFilteredOptions
* Update filteredOptions to searchOptions
* Check if options then setState after searchOptions is updated
* Show all options under business details select controls
* Bump to version 2.2.0-dev
* Update changelog with 2.1.0 heading
* Revert "Bump to version 2.2.0-dev"
This reverts commit cc7d4b95ea3ccae140a5366cdd521ac8f35a3100.
* Bump to version 2.2.0-dev
This was performed using `npm run bump-version`
* Move recent changelog entries out of 2.1.0
* Correct the Klarna slug
* Test instructions and release note
* Update testing suggestions with @adrianduffel's suggestion
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* Separate primary and secondary menu components
* Simplify category mapping
* Map categories and items simultaneously to improve performance
* Sort added menu items
* Pre-sort menu items
* Create single mapped sorting on server-side
* Fix incorrect menu ID references
* Update tests
* Move methods to utils file
* Add in permissions check in client nav
* Fix server-side capability check
* Fix duplicate expectation and test name
* Add testing instructions
* Email notes now are turned off by default
This commit turns off the email notes by default
* Added readme.txt
* Added testing instructions
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Removed @woocommerce/components/card from OBW
This commit removes the "@woocommerce/components/card" from the step "Business Details" in the OBW.
* Added readme.txt line
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Move user data store folder
* Add user capability check hook
* Don't limit script loading by user capability
* Convert ActivityPanel to functional component
* Update ActivityPanel to use useSelect
* Check that a user can manage woocommerce for the store setup tab
* Add capabilities to pages
* Add testing instructions
* Add class to determine styling for disabled wp toolbar
* Use disabled toolbar class in onboarding setup wizard
* Add changelog and readme notes for filter
* update min version in docs and tests
* update woocommerce-admin.php
* update docker versions
* one more 5.3
* Docker image: back to min versions
* fix main file's min PHP to 7.0, same as Woo Core and readme.txt
* docs/readme
* get_dependency_errors
* Change filter callback to enqueue_scripts action to safely enqueue scripts
* Add changelog
* Only load beta modal JS on advanced features settings tab
* Add tooltip to plugin category titles
* Add useAnchor
* Hide tooltips if previously shown
* Refactor tooltip and favorite button to separate components
* Check if favorites resolved before showing button
* Update favorites tooltip option name
* Handle rebase changes
* Don't show tooltip when nav is folded
* Remove CES survey for editing a product
* Remove CES survey for adding a product
* Remove CES survey for editing an order
* Add testing instructions
* add to release notes
Fixeswoocommerce/woocommerce-admin#6172
This adds the PayU plugin as a payment task option. Based on the requirements, we've opted for this just to be a simple task that installs the plugin and lets the user configure the plugin later via it's settings screen.
* Update menu ID when favoriting an item
* Allow favorites to be included alongside the primary menu items
* Add categories to favorites menu server-side
* Don't reset menu state when active item is the same
* Make sure favorites are finished resolving before showing
* Remove the late addition of the core items for the navigation
* Add fallbacks in case the nav is not detected server-side
* Check if ref is set before resizing
* Add settings pages
* Replace the original settings page in the wp menu
* Add the settings feature toggle
* Get core items at later priority to allow registering all settings
* Add category title component
* Add category title styling
* Record tracks event when toggling favorite
* Fix aria labels
* Fix colors for favorite button
* Use CategoryTitle for secondary nav menu
* Move navigation to WC header
* Remove wp toolbar class
* Set body margin on header change
* Fix up layout margins
* Remove excess padding on mobile
* Fix navigation preload styles and embed
* Fix preloading space due to adminbar missing
* Remove embed padding on wrap
* Fix body display for wpadmin menu
* Fix up wpadminbar reset padding
* Remove body padding on full screen layouts
* Fix mobile admin bar height on full screen
* Clean up body margin on unmount
* Center the activity panel (https://github.com/woocommerce/woocommerce-admin/pull/6289)
* Center the activity panel
* Handle PR feedback
* Fix up secondary nav group style changes
* Remove screen reader style changes
* Debounce resize event
* Make responsive button selector more specific
Co-authored-by: Hsing-Yu Flowers <hsingyuc.7@gmail.com>
* change admin_head to admin_menu
* Update comment to better document why priority is being set on admin_menu
* Add conditional check for 5.1
* save
* working?
* fixup
* migrate flyout creation
* add comment
Co-authored-by: Matt Sherman <matt@jam123.com>
* change admin_head to admin_menu
* Update comment to better document why priority is being set on admin_menu
* Add conditional check for 5.1
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Update highlight tooltip to make use of anchor logic
* Add changelog
* Make sure the extra parent is removed as well
* Small refactor to update anchor rect later on, incase items are still rendering
* Add favorites data methods
* Add reducer tests
* Refactor actions to be more event based
* Add favorites resolver
* Fix requesting property for addFavorite
* Fix up misnamed types and missing yields
* Update nav data store to work with REST endpoints
* Remove errant addFavoriteSuccess call
* switch block-settings alias to settings and fix mapped external
* don’t force compilation of externals to `this` scope.
* update various meta data in package related files (changelog etc)
* update starter pack
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Add WordPress version selection to Docker PHP test suite
* Remove guard for old WordPress version
It was producing an error message when valid versions like “5.3” are selected:
bin/install-wp-tests.sh: line 22: [: 5.3: integer expression expected
I removed it since disallowing older versions doesn't really add any value now.
* Bump image version to trigger rebuild
* Fix existing WordPress version not being replaced
The install-wp-tests.sh script does not install WordPress if a previous installation is detected.
To enable WP version switching, the ENTRYPOINT removes previous files to ensure the installation starts from a clean state.
* Partially revert abd8ab80dc7ef6b57316636d467b511a07d0c5d3
The typo fix was accidentally included in this commit.
* Fix installation routine running every time
A typo was causing the installation routine to run on each use.
* Initial paypal plugin name replacement
* Add necessary fields for the Paypal plugin
* Updated payment methods info to use new options key
* Add most of the OBW paypal integration
* Some old code cleanup
* Get ready for the dynamic onboarding addition.
* Update paypal onboarding, adding script after plugin enabled
* Revert some old changes
* Check if plugin is enabled correctly
* Allow for manual input as a fallback
* Fix unit tests and alter the config updates
* Update plugin to use latest rest endpoint instead :)
* Add comment
* Fix some naming from PR feedback
* Made use of the payment gateway info from tasks/status, and show 500 error message
* Add support for the status and set credential endpoints
* Set the enabled value in ppcp-settings as well
* Added fall back for the 'get-status' method
* Fix issue where I was overwriting the options :/
* Small fix for when updating items manually
* Add changelog
* Remove old tests
* Add testing instructions
* Change from MenuGroup to label
* Remove icon
* Remove icon folder
* Update input style
* Remove list message
* Run test snapshots
* Add single knob
* Add changelog
* Change to wrap list with ul
* Run snapshots test
* Add styling on li
* Move renderList outside of li to prevent nesting
* snapshots test
* Whitelist the mollie plugin and ensure it does not crash on activation.
* Improve error messages for failed plugin installs.
* Add the payment provider screen for the Mollie payment provider.
* Revert change to try/catch activation, its not needed.
* Move the whitelist of mollie to Onboarding.php.
* Add api fetch to dep list of components, update the node setup workflow on gh actions.
* Pass indsutry to the klarna tests to avoid a crash.
* Add some tests for the mollie payment method.
* Remove redundant change to handler.
* Add a changelog entry for the feature.
* fix name of option
* Add testing instructions
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Added initial value to `savedValues`
This commit adds an initial value to `savedValues` in the "Business Details" step in the OBW
* Added readme.txt line
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Unhide the submenu
* Add method to get items by category
* Add flyout menu items
* Sort items by menu ID
* Allow marketplace in flyout menu
* Remove unused styles on non-wc pages
This commit adds the extended task list refactor to the unreleased list in readme.txt
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Hard code package names and alias block-settings
* instructions
* update readme
* block to blocks
* plural blocks
* just wcSettings, not wc.wcSettings
* Added extra filters to note
This commit adds extra filters to email note.
* Fixed note image and css
This commit fixes a few things related to the note image, css and some checks
* Fixed css and note image replaced
* Added readme.txt
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add WooCommerce version selection
The WC_VERSION environment variable is added to the docker-compose config. If the variable is not set on the shell, it defaults to the minimum supported version (4.5.0)
The ENTRYPOINT is changed to automatically re-install the test suite when the version number is changed.
* Add documentation
* Add versioning to force image rebuild
* Update product template task copy and icon, updated wordpress/icons
* Fix tests
* Fix css lint errors
* Make use of the re-usable Pill component from Woo
This commit replaces method `woocommerce_get_page_id` with `wc_get_page_id` in Loader.php
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Move inbox panel to left column, to increase user interaction
* Add changelog
* Fix and add test
* Remove old loading banner-block
* Remove unused css
* Fix test with new props
* Fixed reviews and inventory panels visibility
This commit fixes the reviews and inventory panels visibility when setup task list is enabled
* Fixed tests
* Fixed control and small refactor
* Fixed useSelect
* Fixed multiple useSelect
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Fixed hiding core task list
This commit fixes the hiding of the core task list
* Added tests
* Added fix to readme.txt
* Fixed readme.txt
* Added new test
* Hooks were fixed
* Refactored task lists handling
This commit refactors a few things related to the task lists handling
* Added tests
* Fixed task lists handling
* Fixed tests
* Renamed 'taskListHidden' to 'taskListsHidden'
* Added taskListsHidden util
* Fix completed tasks tracking infinite loop
This commit fixes the completed tasks tracking infinite loop (for multiple extended tasks)
* Refactored update check
* Hide task list if there aren't any visible tasks
* Fixed comment
* Fixed typo
* Renamed example method
* Fixed example extension
* Added tab to the extension example
* Fixed extended task list enabling option
* Added more tests
* Added PHP tests
* Fixed some comments
* Removed utils.js file
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Delete all products before running tests
* Delete products in tear down instead
* Only remove the color attribute, as other attitributes are necessary in other tests
* Make assertion more lenient, and remove all products deletion
* Fix lint errors
* Changed to check if imported is at-least 2 items
* add product submenu items
* better check
* extesnions section
* use add_plugin_item
* htmlspecialchars_decode better
* Manually add product_brand taxonomy
* Determine if migrated items are a taxonomy or post_type. If they are, register them.
* add in_array check to register post types and taxonomies
* register a taxonomy or post_type, but not both
* update @wordpress/eslint-plugin dependency to latest version
* local prettier config isn’t needed anymore because of fix in upstream package
* add jsdoc config to use typescript format for jsdocs
* update changelog
* update packages and include .prettierrc.js back in for code editor support of prettier
* add docs
* minor prettier fix in test file
* Convert all new eslint rules throwing errors to warnings temporarily to be handled in separate prs
* updated changelog
* fix package-lock.json
* prettier auto-fixes
* add prettier dependency at root
* sigh prettier is being finicky
* version bump
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Initial product template modal
* Add custom product template for the new-post route
* Add test, and code for making use of the insert_post action
* Added ProductTemplates Datastore to create template with REST api
* Add back variation method, deleted by accident
* Move product from template endpoint to OnboardingTasks class
* Fix lint errors
* Added tracks and template hooks
* Rename product create permission check function, for less confusion
* Remove duplicate recommended option
* Fix stylelint errors
* PHP tests for the product_from_template endpoint
* Fix onboarding php unit tests
* Write tests for client product template options
* Refactored list component, to use it as a radio control list
* Fix lint errors
* REmove assertion as it fails on the ci
* Add changelog
* Updating tests to make sure all product attribute taxonomies are removed
* Add more specific assertions for importing sample products test
* Update the sample products test
* Deconstruct item object, from PR suggestion
* Fix PHP errors, by updating the createProductFromTemplate call
* Set isBusy for the continue button on Store Details
* Set isBusy for the continue button on Industry
* Set isBusy for the continue button on Product Types
Previously only a given delta was rendered as an integer. Now it renders the number with a given precision.
Fixeswoocommerce/woocommerce-admin#5925.
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Separate features into Features class
* Fix Loader references
* Move option to TOGGLE_OPTION_NAME constant
* Disable features on tracking opt out
* Remove errant classes
* Create array of beta features in Features class
* Update method names for exists and enabled
* Only load enabled features client-side
* Add survey class and URL builder method
* Use survey URL method in notes
* Pass survey URL to opt out modal
* Simplify source/query filter
* Move survey URL to constant
* Add a new note about the variable product when the owner adds the first product
* Attempt to add a new note when a product gets published
* Change logic to check only post status and type
* Add tests cases
* Fixed hiding core task list
This commit fixes the hiding of the core task list
* Added tests
* Added fix to readme.txt
* Fixed readme.txt
* Added new test
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Fix for translation chunks not generated on plugin activation
* Add support for woocommerce_activated_plugin hook to work as embedded package
* Update readme.txt
* Make sure woocommerce/woocommerce-admin#5062 does not regress by adding checks before accessing files
* Consolidate duplicated codes
* handle the unsupported collation case
* add an entry to readme.txt[Unreleased]
Co-authored-by: Nikolay Korovaiko <villedepommes@l-mhjo56y7ce.TheFacebook.com>
Co-authored-by: Nick Korovaiko <villedepommes@fb.com>
* Make WCA features list extensible
* Add navigation feature toggle
* Don't add features section if no features exist
* Turn off nav feature in core
* Move update text to nav feature toggle
* Add welcome modal when coming from Calypso
* add to changelog
* do some important work for prettier
* udpated with final copy
* Add PR number to readme
* Possibly use safe Text component
* Possibly use safe navigation components
* Add experimental package
* Update components to import from woocommerce/experimental
* Make experimental package private
* Reference experimental package relatively
* Update packages/experimental/README.md
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Update packages/experimental/CHANGELOG.md
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Update history state instead of mocking getQuery in tests
* Handle PR feedback
* Create excluded externals array and return early
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Added media selector to target viewport size less than 438px for the label
* Added media selector to target viewport size less than 375px for the pricing label
* Avoid new references in getReportChartData() return.
* Avoid some new references in ReportTable component.
* Avoid some new references, fix cache key for getReportChartData memoization.
* Memoize date package functions used in ReportTable.
* Avoid more new references in RevenueReportTable.
This fixeswoocommerce/woocommerce-admin#5287
Major changes:
1. The `<Form>` component (which is a published component) gets a new optional prop (so its backward compatible), called `onChangeCallback`. This is called when any form value changes, allowing the controlling component to act on individual form changes. This was needed to utilise `<Form>` to revalidate and check if the user could access the next tab. This should not impact existing usages of the `<Form>`, but it could be good to test this.
2. Introduces a new flow for choosing business extensions that was specified in woocommerce/woocommerce-admin#5287 issue description. Please check the issue for reviewing the designs. The simplest way to implement this, ended up being keeping the existing flow intact and where necessary copy pasting code from those components into the new flow. This new flow is only shown if your segmentation matches the following: `Stores that selected the US as the country and Other or Food & Drinks as the industry
* Provide localeInfo via wcSettings
* Provide currency symbols via wcSettings
* Use localized data to derive currency
* Decode entities and fix spaces after setting currency
* Determine currency by country instead of region
* Handle PR feedback
* Remove country info and symbol fallbacks
* Reverts work done in woocommerce/woocommerce-admin#4857 for automated shipping after OBW is completed
* Remove ReviewShippingSettings note
* Update readme.txt
* Add wc-admin-review-shipping-settings to delete note list
* Add isCompact prop to SearchListControl
* Add left and right borders to search list
* Remove box-shadow when search list items are focused/active
* Add Changelog notice
* Update snapshots
* enqueue wp-components
* conditional check of Navigation?
* nav version checks, first pass
* better nav checking
* bump min requirments
* min versions
* Use WP 5.6 instead of 5.6.0
* add wp.date and wp.compose
* Handle missing FlexItem
* enqueue styles
* fix date range mobile dropdown
* Show highlight help panel popup after user enters uncompleted task more then once
* Updated styling of highlight tooltip
* Removed empty array from the useSelect to prevent unnecessary re-renders
* Updated styling of the highlight tooltip to match wireframe and wrote tests
* Fix close button location
* Add event tracking
* Add changelog
* Make use of user preferences meta data for task visit tracking
* Add support for toggling the show boolean
* Make sure the delay works correctly for highlight tooltip
* Continue tracking tasks visit count, and added onShow callback for tooltip
* update card header styles to match typography in @wordpress/components
* revert analytics card headers
Co-authored-by: David Levin <davidlevin@Davids-MacBook-Pro-2.local>
* Add product attributes autocomplete for Search control.
* Support single selection in Search component.
* Fix SelectControl input after selection in single mode.
* Remove label from Search component's inner SelectControl.
Placeholder is the behavior we want to avoid label and selection collision.
* Match Search component selected prop to SelectControl.
It's passed through anyhow.
* Rework attribute filter to use new endpoints for custom terms.
* Hook up custom attribute filter to report queries.
* Fix errant space in filter name.
* Fix SelectControl active status when control is disabled.
* Fix SelectControl "has tags" logic for non-multiple use cases.
* Fix attribute filter screen reader text.
* Update changelogs.
* Move custom attribute test to it's own function.
* Remove SelectControl input disabling.
This was supposed to improve keyboard behavior for non-multiple controls, but it was questionable.
* Fix backspace in attribute term field.
* Add navigation opt out script
* Check to see if opted out before loading opt out scripts
* Include opt out styles
* Close modal after clicking 'Share Feedback'
* Update to not use export default
* Add product tags and categories taxonomies to menu
* Add product attributes page
* Register product taxonomies
* Register product attribute taxonomy screens
* Move order to taxonomy item getter
* Add match expressions for product tags and attributes
* Check against wc taxonomies instead of registering wc taxonomies
* Add comments to regex match groups
* Update nav readme to include taxonomies
* Update to less ambiguous taxonomy check
* Add new product attributes endpoint that allows searching.
Including custom attributes in the results.
* Add endpoint to fetch custom attribute values by slug.
* Add initial tests for Product Attributes endpoint.
* Test Product Attribute search.
* Fix schema/params for attribute terms endpoint.
* Add tests for custom term values endpoint.
* Add a LIMIT to the attributes query.
* Add endpoint to retrieve single attribute by slug.
Fixes the 'self' link.
* Use woocommerce_admin_report_table client side filter on the CSV download
* Remove duplicated applyFilters call
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Added unregister extended task
This commit adds a method to unregister extended task when the plugin is deactivated
* Refactored task lists handling
This commit refactors the task lists handling
* Added default task type
This commit adds a default task type
* Fixed method comment
* Moved method to group objects to lib
This commit moves method to group objects to `lib`
* Refactored getUngroupedTasks method
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Create get last order function that does not rely on Wordpress user, and add test for use case
* Add change log
* Make sure tests use the right index for comparison
* Order by date_created_gmt first and order id second, and wrote test for get_last_order
* Fix test assertion, and remove unnecessary parameter
* Remove showCount prop from SearchListControlItem
* Add option to show counts in ShowListControl story
* Fix count alignment in SearchListItem with latest Gutenberg
* Add new changelog entry
* Update dated prop description
* Hide shipping cost task if user has disabled shipping
* Add countries array to dataEndpoints
* Export the presentational component so that it can be tested
* Add a test for the shipping component
* Use default expression to match items
* Pass match expression for WCA homepage
* Match post types if the current post type matches item
* Remove unused getParams
* Update tests for isMatch util
* Update nav docs
* Update default expression to match params in any order
* add query arg tests: additional and order
* Use match score based on regex matches
* Return max safe int for exact matches
* Update tests for match score
* more tests
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Adding simple add_plugin_setting_item() hook that enables adding a nav item only to the Settings menu
* Adding warning when a plugin attempts to register a settings item with illegal args
* rename to add_setting_item
Co-authored-by: Paul Sealock <psealock@gmail.com>
* Add onboarding settings only if the current page is one of the WC admin pages.
* Uses screen object to detect WC Admin pages
* Removed unused variable
* Use PageController to check for the WC Admin pages -- it is more reliable
* Add onboarding settings only if the current page is home or setup wizard
* Add reset option to bin/install-wp-tests.sh
* Fix logic issues and made reset more verbose
* Add testing suite removal on reset
* Change behaviour of test install script to reset by default
* Silence install-wp-tests.sh reset commands
The wc-analytics/reports/orders and /wc-analytics/reports/orders/stats endpoints have inconsistent parameter names for filtering the customer type: customer_type vs customer.
This was affecting the Customer Type filter in the orders analytics, reported in issue woocommerce/woocommerce-admin#5803, where the component expects the parameter names to be the same. This is because it uses a parameter name based on the key in the filter configuration (customer_type).
To resolve this, this PR updates /wc-analytics/reports/orders/stats to accept both customer_type and customer as parameter names for this filter. The customer parameter has however been deprecated in its description to discourage usage.
Co-authored-by: Sam Seay <samueljseay@gmail.com>
* Added tasks extensibility
This commit addes tasks extensibility
* Fixed tests
This commit fixes the tests
* Fixed add task example
This commit fixes the add task example
* Fixed method possiblyCompleteTaskList
This commit fixes the method "possiblyCompleteTaskList"
* Fixed method getIncompleteTasks
This commit fixes the method getIncompleteTasks
* Fixed add task example
* Added callback onDismiss
This commit adds the callback for the "onDismiss"
* Added onDismiss and isDismissable to add task example
This commit adds the props "onDismiss" and "isDismissable" to add task example
* Not showing extensions task list if empty
* Fixed onDismiss callback
* Add changelog
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Sam Seay <samueljseay@gmail.com>
* Use error_log() to log the deprecated class calls instead of _deprecated_function()
* Include method name and replacement in deprecation log message.
Co-authored-by: Rebecca Scott <me@becdetat.com>
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
* Only render nav items belonging to parent menu ID
* Set item menu ID for items automatically
* Use categories map to filter items early
* Convert categorized menus to objects
* Prevent bypassing menu via existing parent
* Fix plugins name
* style changes to tax task
* Fix undefined variable use.
* Set plugin install dismissal actions as tertiary.
* change back to variable
* add margin to primary
* text-button-styles-homescreen
* Add specificity to the task caption selector.
We need to beat out the styles from Gutenberg.
Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com>
* Create initial reviews panel and displaying it on the home screen
* Update reviews package to support updating and deleting reviews
* Allow custom icons to be defined for rating component
* Add approve, spam, and delete actions to home screen review panel
* Show entire list as updating when items are still in the store
* Update rating to only import the required icons, and allow icons to be passed in instead of strings
* Prune out reviews header panel, as we are not using it anymore
* Showing just a header if collapsible is false for activity panel
* Add tests for reviews panel and accordion changes
* Fix undoing a deleted item by using status - untrash
* Several styling changes to match wireframe as mentioned in PR review
* Moved review rating into the subtitle in relation to new design
* Update clear cache logic for last item
* Remove activity panel unused css
* Use invalideResolution instead of invalidateResolutionForStoreSelector
* Disable the continue button while requests are being made
* Use isUpdatingProfileItems method name for all
* Add disabled attr for the choose buttons
* Add package dependencies and bump version
* don't use lodash's noop
* Use useEffect instead of changing state right in the render :-O
* Add dependencies for ces to Loader.php
* undo add dependencies for ces to Loader.php
* 🎶 found a typo
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Display Razorpay for stores in India.
* Add Razorpay setup component.
* Remove composition with HoCs.
Refactor to use useSelect() and useDispatch() instead.
* Tweak useSelect() call.
* Allow WCA registered pages to register plugin items and categories
* Don't allow top-level item registration through WCA
* Remove is_top_level from menu API
* Prevent directly setting woocommerce as parent ID
* Don't return an action-like object in action creators.
* Add missing itemType param to setError() calls.
* Add setItem() action (singular).
* Use singular setItem() when updating product stock.
* Split setting items and totals counts into separate actions.
* Refactor totals count resolvers not to use getItems().
Fixeswoocommerce/woocommerce-admin#5294 and Automattic/woocommerce-paymentswoocommerce/woocommerce-admin#810 .
Changes:
* Update UsageModal UI to have two action buttons instead of 'Count me in' checkbox.
* Make UsageModal configurable with custom title, message and buttons text.
* Add customized modal to request site usage tracking after WC Payments KYC flow is completed.
* fix settings change enqueue params
* Include comments in score record callback
* send empty string for comments
Co-authored-by: Rebecca Scott <me@becdetat.com>
* Refactor low stock variable to be the count instead of a boolean.
* Add initial render of the Stock panel on the homescreen.
* Move existing Stock panel to homescreen accordion.
* Ensure int value for low stock product count.
* Update ProductImage styling.
* Update stock activity car styles.
* Only show 5 low stock products.
* Add "undo" action to the stock updated snackbar.
* Fix check for explicit notice dismissal when taking actions.
* Hide now-in-stock products after updating.
By cllearing "edited" flag on successful update.
* Fetch more products after updating stock.
* Fix the number of product placeholders shown.
* Only show products placeholders on the initial fetch.
* Fix placeholder style.
* Fetch low stock count dynamically.
* Let initialOpen prop toggle Accordion panels if they haven't been toggled by the user.
* Refactor item total count state.
Allows for auto-updating item totals whenever identical queries (from a totals perspective) are issued.
* Add last order date to low stock products API response.
* Allow non-date strings in ActivityCard date prop.
* Add last order date to stock panel cards.
* Remove empty stock panel view.
* Add test file for StockPanel.
* Only request necessary fields from products endpoint.
* Add test for products fetch after stock update.
* Fix field name.
* Add test for last order date in low stock products API response.
* Stock panel should be initially closed.
* Skip updating a product if the quantity is unchanged.