* Install grapheme-splitter
* Support multi-characters Unicode letters for inbox html truncator
* Fix truncateRenderableHTML length compare
* Change note to immutable
* Add changelog
* Use hasChildNodes() to check if we should call truncateElement
* Add tests for truncate()
* Redirect customers back to the payment task page after enabling an offline payment
* Add changelog
* Make hasPlugins property boolean
* Remove unnecessary type checking
* Fix the comparison logic
* Allow the support of multiple task lists with overlapping tasks
* Add filter by task ids
* Revert getTaskListById call
* Fix notices
* Move prefix event to task and task list classes instead
* Fix track events and extended task list
* Fix php unit tests
* Remove the seperate task list classes as this was unnecessary.
* Fix tests
* Remove unneeded allowed-tasks
* Change onboarding task list redux store structure
* Add extra id for handling hidden param for experimental task lists
* Fix lint errors
* Fix forgotten change
* Add changelog
* Copied .tsconfig into ./client to enable ts checking
- Made sub-repos composite typescript packages where necessary
* Prevent tsc from transpiling ./client
- we use webpack for transpiling so no need for this
* Added tsc resolution path for @automattic/explat-client
- Seems like there's a type export issue (?) with @automattic/explat-client and @automattic/explat-client-react-helpers
- adding the node_modules/@automattic/explat-client path in tsconfig seems to help TS resolve this using the source .ts files
- found answer here: https://github.com/microsoft/TypeScript/issues/42873
- should figure out what's actually wrong with the type exports and fix that there instead
* Removed mandatory checking from webpack
- removed this for now as it will block all development until all type inconsistencies are fixed
- for now, run the optional ts:check task either in console or vscode for highlighting type errors
* Added vscode tasks for typescript checking
* Patch @automattic/explat-client-react-helpers
- this changes the installed code in node_modules (post-installation) for @automattic/explat-client-react-helpers so that it exports the necessary type interfaces required by us
- attempted unsuccessfully to override type exports using declare module
- not too sure how to fix this internally by other means
- have to investigate what fixes to propose to @automattic/explat-client-react-helpers team
* changed tests in ./client to use ts-jest instead of babel-jest
- rewrote jest config to use ts-jest instead of babel-jest
- set ts errors to warnings instead so that tests don't fail on type errors
- created new tsconfig for ./packages/js-tests so that build and ts-check are separate, as js-tests need to be built for commonjs
* Make sure the free subscriptions does not show when cbd industry is selected
* Add changelog and fix productTypes not being defined
* Fix lint issue
* Fix lint error
* Add a modal to show when unsaved changes are detected
* Add functions to track value changes from the steps
* Warn unsaved changes for the store details
* Add styles for the unsaved modal
* Warn unsaved changes for the Industry
* Warn unsaved changes for the Product Types
* Warn unsaved changes for the Business Details
* Add changelog
* Add testing instructions.
* Sort array values before comparison
* Use only the array values to compare the diff
* Catch rejected promise on continue
* Set initial value to an empty object
* Fix failing tests
* Add psr-4 for the internal classes -- this is a temp. changes. We should remove it once we completely merge to the core
* Register class aliases
* Move WcPayPromotion classes to the internal
* Ignore namespace PHP CS issue
* Make features/WcPayPromotion internal
* Added src-internal directory for Automattic\WooCommerce\Internal\Admin namespace
* Moved src/Features/WcPayPromotion to src-internal/Admin/WcPayPromotion
* Add phpcs rules for src-internal
* Remove phpcs:ignoreFile
* Update letter case to make it PSR4 compatible
* Fix letter cases
* Move the alias array into the function
* Rename WcPayPromotion to WCPayPromotion (letter case update)
* Include src-internal
* Update letter case
* Make classes internal
* Update references
* Fix WC_ADMIN_ABSPATH path
* Add psr-4 for the internal classes -- this is a temp. changes. We should remove it once we completely merge to the core
* Register class aliases
* Move WcPayPromotion classes to the internal
* Ignore namespace PHP CS issue
* Make features/WcPayPromotion internal
* Added src-internal directory for Automattic\WooCommerce\Internal\Admin namespace
* Moved src/Features/WcPayPromotion to src-internal/Admin/WcPayPromotion
* Add phpcs rules for src-internal
* Remove phpcs:ignoreFile
* Update letter case to make it PSR4 compatible
* Fix letter cases
* Move the alias array into the function
* Rename WcPayPromotion to WCPayPromotion (letter case update)
* Include src-internal
* Update letter case
* Make src/Schedulers/* internal, except the SchedulerTraits
* Add @internal comment tag
* Clean up incorrect import
* Remove unused import
* Refactor `MerchantEmailNotifications`
* Rename `NotificationEmail`
* Add changelog
* Add folder `Notes` to `Internal`
* Moved folder and the namespace was renamed
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add psr-4 for the internal classes -- this is a temp. changes. We should remove it once we completely merge to the core
* Register class aliases
* Move WcPayPromotion classes to the internal
* Ignore namespace PHP CS issue
* Make features/WcPayPromotion internal
* Added src-internal directory for Automattic\WooCommerce\Internal\Admin namespace
* Moved src/Features/WcPayPromotion to src-internal/Admin/WcPayPromotion
* Add phpcs rules for src-internal
* Remove phpcs:ignoreFile
* Update letter case to make it PSR4 compatible
* Fix letter cases
* Move the alias array into the function
* Rename WcPayPromotion to WCPayPromotion (letter case update)
* Include src-internal
* Update letter case
* Move src/Features/RemoteFreeExtensions to src-internal/Admin/RemoteFreeExtensions (https://github.com/woocommerce/woocommerce-admin/pull/8311)
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
* Add hook reference README
* update hook reference
* better
* changelog
* add pr number
* remove example
* add desc
* add stats
* jsdoc REPORTS_FILTER
* Category configs
* configs
* data
* dashboard
* dashboard charts
* save
* save
* save
* done with filters
* Add scope to slotFill docs
* data
* add all slotfills
* data
* Fix error when scope is not present, and make use of typedef imports
* Move chart and filter jsdoc definitions to the reports index file
* Update hook reference data.json
* Make use of import for filter typedef and address some typos
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* Fix payments extensions displayed below the offline payments options
Add spaces back
* Add changelog
* Remove the snapshot test and update payment gateway render test
* Make sorting compare function as a helper function
* Add business-details step complete track
* Add changelog
* Update tab name and treat each tab as an individual step when trickering tracks
* Add comment
* Fix linting
* Remove unnecessary css selector
* Update goToNextStep param to make it less confusing
* Update jsdoc param
* Retrieve variation name from woocommerce_order_items for deleted products
* Remove test code
* Refactor to use wc_order_product_lookup table
* Identation fix
* Remove link if the variation/product has been deleted
* Add changelog
* Remove (deleted) suffix
* Add (Deleted) suffix in frontend
* First draft of CouponPageMoved::has_(unactioned|dismissed)_note() method changes to avoid get_notes().
* Add static function get_note_by_name( $note_name ) to Automattic\WooCommerce\Admin\Notes\Notes class.
* Use Notes::get_note_by_name() in Notes::get_note_status().
* Use new Notes::get_note_by_name() in CouponPageMoved::has_unactioned_note().
* Use new Notes::get_note_by_name() in CouponPageMoved::has_dismissed_note().
* Add changelog for 7986/8202.
* Add payment_setup track for WooCommerce Payments
* Add WooCommerce Reset Plugin to E2E environment
* Add resetWoComerceState util
* Add state reset before obw test
* Refactor resetWooCommerceState
resetWooCommerceState now makes the HTTP request locally instead of from inside the browser context.
* Update reset functionality
* Add custom settings reset function for onboarding
* Update reset functionality
* Add action-scheduler run helper function
* Fix add section test
* Add plugin removal helper functions
* Fix lint errors
* Fix broken e2e tests
* Add changelog
* Remove unused imports
* Add comment for extra timeout
* Add helper function to wait until button stops moving, incase of animations
* Fix lint error
* Add variable for string used in multiple places
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* Support woocommerce_explat_request_args filter to modify ExPlat request args
* Add ExPlat test
* Add ExPlat test for PHP
* Add changelog
* Add doc for the filter
* Fix syntax
* Fix country/region selection not preserved in store details task
* Update store-adress test cases
* Add changelog
* Check alphabets regx for isStateAbbreviation
* Update comments
* Use unknown type for locale
* Add Disable reason
* Override overflow rule for label in select controls in OBW store address inputs.
* Changelog for 7893/8186.
* Rather than specifically override the overflow for store addresss country/region, remove the specific rule that was causing the issue.
* Increase line-height on SelectControl label.
* Restore overflow: hidden rule for profile wizard control label.
* Update changelog for 7893/8186.
* Add package changelog entry for 7893/8186.
* Move plugin installation method to plugin helper
* Add hook to for note addition on install error to JP/WCS note
* Add install scheduler
* Add async request parameter
* Fix up scheduled action errors
* Add route to get installation status
* Add activation endpoints and helper async methods
* Fix errors in plugin activation
* Make job ID null by default
* Add async plugin tests
* Fix install activation error errant method
* Return error codes from API
* Us AS to retrieve jobs instead of transients
* Get plugin status data from AS actions
* Use job ID instead of action ID for scheduling activation
* Add generic activation and installation status endpoints
* Add changelog entry
* Replace mysql image with mariadb
This fixes the missing architecture error raised by docker compose
* Update readme.txt
* Add changelog
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
- checkmarks in the stepper component go missing if the first checkmark is hidden
- happens because of html id collision between the checkmarks
- added some randomness to the mask ids
* Use __() to display a generic error message on sample item import rather than passing through the server message because it probably has tags.
* Add changelog for 4314/8173.
* Add support for __unstableHTML option to Snackbar.
* Use __unstableHTML option to display server-side error messages as they come in.
* Update changelog description for 4314/8173.
* Add payment_setup track for WooCommerce Payments
* Add timing props to tracks in onboarding when installing extensions
* Update extension key logic
* Add changelog
* Add tests for extension installation data for tracks
* Add util function for plugin slug parsing
* Only install and activate plugins that are not already active
* Combine all the .woocommerce-task-dashboard__container .woocommerce-task-card rules in one block.
* Move the .woocommerce-task-card__section-controls text-align center rule up in specificity so it overrides the rule in experimental-list.
Do we need the experimental-list package still?
* Changelog for 7174/8168.
* Expand button to container width and center text rather than centering the entire button in the ellipsis menu.
* Move ellipsis menu button style to _global so it applies, um, globally.
* Update changelog description for 7174/8186.
* Move ellipsis-menu popover button style to package from _global.
* Add components package changelog for Dismiss button in Unreleased section.
* Reduce padding around plugin list titles for marketing tools page.
* Changelog for 8164/8171.
* Update plugin list title padding
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Updated frontend email validation to use @wordpress/url
- added testing for StoreDetails
- changed basic email validation to use @wordpress/url isEmail
* Support i18n texts for report chart
* Add changelogs
* Add d3-time-format to date pkg devDependencies
* Fix date php format and add tests
* Add date changelog
* Fix date test
* Escape week of string for php formatter
* Add defaultDateRange argument to getAllowedIntervalsForQuery function for default period value
* Fix incorrect date options when the "Default Date Range" is set
* Add changelog
* Fix bin/install-wp-tests.sh for wc >= 6.0.0
* Fix php unit test "test_deleted_coupons" for wc >= 6.1.0
* Update WC_Tests_Reports_Coupons test_populate_and_query test
Fix test
* Use locale labels for store info
* Get address validation errors based on locale
* Fix validation rules based on locale
* Fix up store address in location task step
* Add changelog entry
* Should accept a boolean value for is_visible property with an extension, and only evaluate a set of rules
* Adding changelog
* Moving fix to RuleEvaluator so it applies to other rulesets
* OBW: Move newsletter signup checkbox inside the same Card as the rest of the Store Details form inputs.
* Add changelog entry for 8033/8148.
* Fix changelog format for 8033/8148.
* Move WC Pay welcome page from wc-calypso-bridge (https://github.com/woocommerce/woocommerce-admin/pull/8083)
* Add wc-pay-welcome-screen flags
* Add wc pay welcome page from wc calpyso bridge
* Add changelog
* Rename var to pageViewTimestamp to prevent confusion
* Remove unused code
* Make sure hasViewedWelcomePage is a boolean value
* Simplify storeViewWelcome
* Add payments remind me later note (https://github.com/woocommerce/woocommerce-admin/pull/8085)
* Add payments remind me later note
Fix wcpay path
* Add changelogs
* Update src/Notes/PaymentsRemindMeLater.php
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Fix possibly_add_note syntax error
Update Events.php
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Replace flag icon with component and svg background to png (https://github.com/woocommerce/woocommerce-admin/pull/8101)
* Activate promo note after WC Pay is activated (https://github.com/woocommerce/woocommerce-admin/pull/8104)
* Activate promo after wcpay is a\ctivated
* Add changelogs
* Add experimental to promo API path and limit the promo names
* Use ExPlat to render the WC Pay menu conditionally (https://github.com/woocommerce/woocommerce-admin/pull/8115)
* Check ExPlat to render the menu conditionally
* Update the experiment name
* Fix letter case to follow feature class naming convention
* Enable wc-pay-welcome-page feature in core config (https://github.com/woocommerce/woocommerce-admin/pull/8124)
* Use wc_calypso_bridge_payments_dismissed option name to respect the previously saved setting from wp.com
* Missed wc_calypso_bridge_payments_dismissed rename
* Use the existing code to prevent duplication
* Fix warning (https://github.com/woocommerce/woocommerce-admin/pull/8141)
* Change experiment to come after checks (https://github.com/woocommerce/woocommerce-admin/pull/8142)
* Change track path to (https://github.com/woocommerce/woocommerce-admin/pull/8143)
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Replace deprecated wc-admin-settings package
Co-authored-by: Moon <moon.kyong@automattic.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Avoid unnecessary customer ID retrieval.
* Ignore order count when validating customers.
WC_Customer::get_order_count causes a full table scan without cache.
* Don't get customer names from their last order.
WC_Customer::get_last_order has to scan all _customer_user meta rows.
* Add changelog entry.
* Fix changelog.
* Cache customer ID in Order override classes.
* Check all user roles.
* Fix misaligned status column on order report
Add labelPositionToLeft prop to order-status component
Set labelPositionToLeft=true for <OrderStatus> on orders report table
Remove style import
* Add changelogs
Add changelogs
* Remove use of wc-admin-settings from packages
* Move getSetting to getAdminSetting and remove wc-admin-settings package
* Add changelog
* Update package.json and remove last use of wc-admin-settings
* Rename variables and remove unnecessary select calls in selective-extensions-bundle
* Invalidate getFreeExtensions resolution whenever country or industry
changed
* Fix grammar
* Add changelogs
* Hide extension list header if no plugins under the category
* Refactor variable naming and add missing hook deps
* Add changelogs
* Add tests for <ExtensionSection />
* Add e2e tests for PR 7963
* Fix lint
* Verify the next screen is shown
* Simplifying product types step
* Add className to SelectControl
* Fix e2e test
* Removed not used dependency
* Add method `expandRecommendedBusinessFeatures`
* Fixed style selectors
* Add default value to `name`.
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Add style links to storybook preview head based on the env
Use *style.css or *style-rtl.css based on a env flag so we don't need to modify
the preview-head.html manully.
* Add npm run storybook-rtl
* Update the storybook-rtl command description
* Fix(select-control): fix label value alignment
Add padding to input value to have same algin space with input label.
fixed issue 7786
* Add changelogs
Fix changelog entry
Add changelogs
* Add SlotFill area to header
* Add activity panel fill
* Move activity panel to root client folder
* Move activity panel registration to its own folder
* Add navigation fill
* Add page title slotfill
* Slot fill the back button
* Move mobile banner to slot fill
* Fix navigation fill on embed pages
* Add changelog entry
* Allow order prop to header item fill
* Split header into before and after
* Fix header title gaps
* Fix nav and mobile app banner placement
* Fix display options import
* Only use last item for page header title fill
* Use function to pass fill props instead of bind
* Rename header slots
* Fix mobile banner dismissal check
* Fix up inbox panel rename
* Update task title in tests
* Fix up task status retrieval
* Add loading icon and disable continue until free extensions are loaded.
* Add changelog
* Only show dropdown when we have installable extensions listed
* Revert spinner addition and add loading to Continue button
* Add wait for dropdown to be enabled
* Query both actioned and unactioned notes
* Fix note title style issue when the component is rendered in the sidebar
* Add changelog
* Update changelog
* Adjust styling
* Fix lint error
* Simplify title style by using title class selector
* Add ellipsis menu and styling
* Add dismissed option to pseudo payment gateway
* Check if the suggested gateway has been dismissed
* Add visibility and transition rules
* Remove CSSTransition wrapper due to invalid tags
* Fix padding on ellipsis menu
* Add dismiss tracks event
* Add changelog entry
* Check dismissal of promotion server-side
* Make note title clickable
* Note title is clickable
* Updated styles to make title link look like H3
* Clicking title does not trigger busy state
* Add changelog
* Added a new update callback for 3.0 version to migrate is_read col from last_read user pref value
* Remove unnecessary comments
* Remove add column logic -- not needed as tables are updates during the bootstrap
* Remove column existence check
* Use the latest woocommerce_admin_activity_panel_inbox_last_read value
* Clean up woocommerce_admin_activity_panel_inbox_last_read after updating is_read
* Remove unnecessary var
* Update includes/wc-admin-update-functions.php
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update test to use ms
* Use get_users() to get the latest meta value
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Introduce a 320 char limit for inbox notes
* Extract truncateRenderableHTML to utils and use truncate from lodash to support word break
* Replace omission with blank so that lodash does not add ... at the end
* Add test cases for truncateRenderableHTML
* Add a test case with unicode string
* Add changelog
* Add a test case for preserving whole words