* Remove background, primary_border, secondary_border from the API schema -- they are not used
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint
---------
Co-authored-by: github-actions <github-actions@github.com>
Restored `woocommerce_show_addons_page` filter, which is used to add or not add the Extensions menu item.
Changed the method we use to hide the extra Extensions submenu item we add to WooCommerce as a temporary measure, to ensure the My Subscriptions page still works. Using the superior `hide_submenu_page` method borrowed from Jetpack.
- A permanent notice in Settings - Advanced - Legacy API
- A dismissable admin notice only if the Legacy API is enabled
(disappears if it gets disabled)
* strtotime(): Passing null to parameter #1 () of type string is deprecated PHP 8
* feedback more succinctly
* generate changelog
* use suggested change
* add indentation
* Rename title
* Remove common-tasks section as it's currently made redundant by template API documentation
* Create index for reusable blocks doc
* Update reference to the handbook
* Add references to new documentation to the handbook
* Add changelog
* Update README.md
* Remove homepage template prompt
* Add changefile(s) from automation for the following project(s): woocommerce
* Set template1 for the default homepageTemplate
* Fix lint error
---------
Co-authored-by: github-actions <github-actions@github.com>
* Update intro banner background image
* Remove unused graphic
* Add site icon and title
Also updated the intro banner background CSS
* Fix typo
* Remove assembler hub button -- not used here
* Fix image pos and import the correct image
* Change banner to offline when the user network goes offline
* CSS fixes
* Redirect to users to themes.php on Browse all themes clicked
* Change banner text, title, and button text depending on the network and jetpack status
* Add active theme design -- still needs API to get the active theme
* Add color variations
* Update info card margin
* Update info card margin
* Separate out ColorPalettes component
* Separate out ThemeCard
* Update site-title font color
* Update margin between banner p and button
* Update theme card row-gap
* Remove use of color palette border color
* Lint fixes
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix errors after rebase
---------
Co-authored-by: Chris Runnells <chris.runnells@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
* Add new context values
* Implement design with A.I change warning modal
* Add count-active-theme-mods endpoint
* Add count-active-theme-mods selector in the frontend
* Set mods_count correctly
* Fetch activeThemeHasMods and customizeStoreTaskCompleted
* Use activeThemeHasMods and customizeStoreCompleted
* Add changefile(s) from automation for the following project(s): @woocommerce/data, woocommerce
* Use correct APIs to check template, pages, and styles modifications
* Fix hasModifiedPages resolve error
* Assign hasErrors on fetchIntroData errors
* Add changefile(s) from automation for the following project(s): @woocommerce/data, woocommerce
* Ignore TS error
* Fix css lint errors
* Fix broken test
* Fix broken test
* Revert changes -- no longer needed
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Support using category_id and tag_id in wc_get_product()
* add changelog file
* add unit tests for searching products by category slug, category id, tag slug, and tag id
* Add changefile(s) from automation for the following project(s): woocommerce
* remove the `unset` for `category_id`
* appease the linter
* rename tag_id to product_tag_id so that we don't interfere with WordPress's native use of tag_id
* rename category_id to product_category_id for consistency
---------
Co-authored-by: helgatheviking <507025+helgatheviking@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
* Fix: when the HPOS tables are created, HPOS was always disabled.
After the fix HPOS will be disabled only if the creation of the
tables fail. Additionally, failure to create the tables will be logged.
* Add changelog file
* Allow e2e tests to use dotfiles for configuration
* Fix lint errors
* Fix lint errors
* Linter strikes again
* Again
---------
Co-authored-by: Jon Lane <jon.lane@automattic.com>
* HPOS: Add a recurring event to check for unsynced orders
Adds an event that will get scheduled when HPOS data sync gets enabled.
The event will run every 6 hours and check for unsynced orders. If it
finds any, it will queue up the data syncing batch processor.
Fixes#39626
* Add button to sync orders immediately
* Add changefile(s) from automation for the following project(s): woocommerce
* Wrap AS function calls to avoid errors in unit tests
* Use WC_Queue methods instead of AS functions
* Add a filter to customize the sync check time interval
* Ensure retrieved pending sync count is not a cached value
* Change sync button style to link
* Formatting fixes
* Fix unit test
* Add BatchProcessingController dependency to DataSynchronizer
* Add background sync functionality to DataSynchronizer
* Tweaks to watchdog scheduling in batch processor
* Adds a filter to modify the amount of time the watchdog schedule
gets delayed when calling the scheduler using `$with_delay`
* Adds a check to ensure the scheduler doesn't overwrite an existing
scheduled event. This is because the scheduler was getting called
multiple times in a request, first without `$with_delay` (so the event
would run right away) and then again with `$with_delay`, so that the
event would then be delayed by an hour. The result was that the event
was always scheduled for an hour later, even when we want it to run
right away.
* Improve query arg for running sync via UI
* Remove sync check from COTController, add message about background sync
* Abstract the removal of background sync events
* Remove accidental test code
* Add changefile(s) from automation for the following project(s): woocommerce
* Ensure bg sync event is not scheduled when in continuous mode
* Add missing @since comments on new filter hooks
* Add caching to check for scheduled bg sync events
* Use constants for bg sync modes
* Add unit tests
* Switch from init hook to shutdown
* Switch bg sync settings from filters to options
* Update unit tests
* phpcs fix
* Tweak "Background sync is enabled" message
Only show this if it is enabled while real-time sync is disabled.
Otherwise the message could be confusing to users who just check the
"Compatibility mode" box, since background sync doesn't have any UI.
---------
Co-authored-by: github-actions <github-actions@github.com>
* Handle store patterns update API request properly
* Full redirect to Assembler hub after ai loading
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Escape the default "Thank you" text instead of the filtered message
Closes: #40329 and #40352
* Update plugins/woocommerce/templates/checkout/order-received.php
Co-authored-by: Leif Singer <github.2017@singer.sh>
* Bump template version to 8.3.0
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: Leif Singer <github.2017@singer.sh>
Co-authored-by: github-actions <github-actions@github.com>
* Moved homepage templates, added header and footer to homepage templates, revamped templates to use metadata.
removed header and footer completion calls
* Lint
* Slight adjustment to completion prompt and changelog
* Lint
* Use header and footer in 'Change your homepage'
* Add test
* Lint
* Add back homepage templates exclusion header and footer for assembler use
* Add test for useHomeTemplates
* Lint
When tab is changed, `@woocommerce/navigation` package resets
the `term` query parameter. So `query.term` becomes undefined.
Adding the else block allows us to catch that case and then
we can reset the search input.
* Optimize crud totalCount queries to avoid two requests
* Make use of same request params for totalCount as getVariations
* Add support for default_values when generating product variations
* Add test for default_values
* Add changelogs
* Only use default values of first variation
* Address some PR feedback
* Update types
* Consider setup task hidden when activeSetupList is null
* Render ActivityPanel when the setup tasklist is hidden only
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Persist AI assembled site
* Update color options
* Invalid the selectors
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint
* Update colorPaletteName
* Fix tests
* [Customize Your Store] Call wc store patterns API (#40297)
* Call /wc/store/v1/patterns endpoint to populate pattern contents/images
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
---------
Co-authored-by: github-actions <github-actions@github.com>
* Implement back to home buttons
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add cys ai header suggestion
* Add cys ai footer suggestion
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix types
---------
Co-authored-by: github-actions <github-actions@github.com>
* Use all 6 homepage templates
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Update appearance task to choose a WP theme
* Add changelog
* Update redirect URL
Redirects to the main theme screen.
* Update plugins/woocommerce/src/Admin/Features/OnboardingTasks/Tasks/Appearance.php
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Wrap URL in getAdminLink
* Update position of task
* Change title
* Change redirect URL to be the site editor
* Revert to original task name
* Use inherited is_complete function
* Use PHP-based action tracking
* Fix lint issue
---------
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Tweak a few comments related to address type
* tweak more address type comments
* grammar nitpick
* still more address type tweaks
* appease the linter
* Update plugins/woocommerce/includes/wc-template-functions.php
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
---------
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
* Direct user to the assembler hub automatically after saving
* Unset active state on color palette when user changes colors
* Add changefile(s) from automation for the following project(s): woocommerce
* Remove unneed styles
* Fix color variation logic
---------
Co-authored-by: github-actions <github-actions@github.com>
* Redirect to product editing page when product was still in auto draft
* Make sure the prevent page does not show up when creating variations
* Add changelog and fix tests
* Redirect to Jetpack connect when jetpack-boost is selected
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Remove core-profiler check
* Fix broken test
* Skip onboarding wizard tests
* Add changefile(s) from automation for the following project(s): woocommerce
* Change to trigger GH jobs
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
When an order is open in admin and changes are made to custom field
keys or values, or values are added in "Add New Custom Field",
and "Update" in the order is clicked (without having clicked "Update"
in the modified fields or "Add Custom Field"), the field changes
should be applied to the order anyway. That was happening when
the posts table is authoritative but not when the orders table is.
* Mark CYS task completed when clicking done button
* Mark CYS task completed after switching theme
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Update wording on Marketplace footer
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
- Allow overriding of precision in `OrdersTableQuery::date_to_date_query_arg()
- Shorthand date queries should either date-only or timestamp
- Properly convert shorthand date queries from local to UTC for querying
- Add utility function to convert local-time args to UTC
- Simplify date args processing
- Drop no longer necessary params from date_to_date_query_arg()
- Dates in orders list table filter should be local time
* Add tracks to assembler-hub and hide add pages menu
* Add changefile(s) from automation for the following project(s): woocommerce
* Track sidebar menu item click event
* Update tour tracks
---------
Co-authored-by: github-actions <github-actions@github.com>
* Marketplace: Add the right URL parameters to product URLs
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: raicem <unalancem@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
* Move the header data to the body as the header prop does not exist anymore
* Remove explicit setting of __unstableResolvedAssets given get_block_editor_settings already does this
* Remove use of woocommerce-page class in admin to avoid theme conflicts
* Add changelogs
* Revert change for quick test
* Two additional tweaks for admin related styling
* Do not send user meta data back in `woocommerce_get_customer_details`
* Add changefile(s) from automation for the following project(s): woocommerce
* Update plugins/woocommerce/changelog/fix-meta-data-customer-details
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Fix: cached refund was not deleted when refund was deleted.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add new e2e test to cover my account downloads
* Include file name in the test
* Add missing changelog
* Update test to look for proper file name
* Exclude COD option and include order status
* Improve existing E2E test to look for more details
* Update test to include proper selectors
* Update selectors to match site data
* Add changelog
* Include data before all and delete after all
* Move data creation deeper inside test and wait for element visible
* Add cys AI wizard tracks
* Add changefile(s) from automation for the following project(s): woocommerce
* Revert ai API track name change
* Track AI API request network error
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add CYS transitional screen
* Add changefile(s) from automation for the following project(s): woocommerce
* Add tests
* Update preview loading style and add requeue param
* Fix visible logic
* Fix img size
* Update comments
* Fix lint
* Pre-fetch image and wait a 5s before redirecting to transitional page after clicking on done button
* Remove unneed overflow
* Move pre-fetch logic to xstate and use spinner for button loading state
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add 'dialogNameHelpText' attribute to show on create taxonomy dialog
* Tweak CSS margins
* Add changelogs
* Rename "Save" to "Create" and set cancel button to Tertiary
* Add gray color to (optional)
* Create attribute to personalize label for parent
* Update store currency when location changes
* Remove incorrect import
* Add changefile(s) from automation for the following project(s): woocommerce
* Add space to trigger GH jobs
---------
Co-authored-by: github-actions <github-actions@github.com>
* Allow changelog in build zip
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Marketplace: remove orphaned components
* Marketplace: add country to search query
* Add changefile(s) from automation for the following project(s): woocommerce
Co-authored-by: Cem Ünalan <raicem@users.noreply.github.com>
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Cem Ünalan <raicem@users.noreply.github.com>
* Use HTTP request to track in cron jobs (action scheduler jobs)
* Pass complete data to logger
* Track coreprofiler_store_extensions_installed_and_activated when plugin installation is complete
* Add changelog
* Update plugins/woocommerce/src/Admin/PluginsInstallLoggers/AsyncPluginsInstallLogger.php
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Include start_time in completion data
* Update plugins/woocommerce/includes/tracks/class-wc-tracks-event.php
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Fix variable naming convention
---------
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Accept arguments for the TinyContent getContent method.
Used to fetch the plain text version of the description.
* Add a class to the loading message content
* Set the max description length as global constant
* Create a MagicButton component and use it
* Get plain text description instead of HTML
* Return full category hierarchy (Parent > Child)
* Add method to return all available categories on the product edit page
* Helper function to generate product data instructions for the prompt
* Helper function to select category checkboxes on DOM
* Create component to display a list of suggestion items as pills
* Add product category suggestions to product edit page
* Use the AI package to get text completion
* Add tracks
* Add changelog
* Fix merge conflict
* Remove NoMatch state for category suggestions
* Get available categories using WC REST API
* Suggest new categories
* Run separate prompts for existing and new category generation
* Fix overflow in suggestion pills
* Don't include existing selected categories in prompt
* Add util to encode html entities
* Exclude "Uncategorized" category from product data
* Allow excluding properties from the product data instructions
* Create category from suggestion if it doesn't exist
* Show suggestions as links instead of pills
* Ask for feedback after suggestion selected
* Decode html entities in available categories results
* Don't encode html entities when comparing available categories
* Change feedback box style
* Suggest only one category
* Remove log
* Show feedback box after generating suggestions
Instead of showing it after a suggestion is selected
* Fix typo
* add: url navigation to cys
* bugfix for url not updating
* url handling for design-with-ai
* fixed url syncing so that it's working with @woocommerce/navigation
* changed useLocation to useQuery in assembler-hub save-hub
* Record plugin api and install failures to coreprofiler_install_plugin_error track
* Add changefile(s) from automation for the following project(s): woocommerce
* Change to trigger GH jobs
---------
Co-authored-by: github-actions <github-actions@github.com>
* Update help menu themes link
Update plugins/woocommerce/includes/admin/class-wc-admin-help.php
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
* Fix __experimentalReapplyBlockTypeFilters is not a function
* Add changefile(s) from automation for the following project(s): woocommerce
Update changelog
---------
Co-authored-by: github-actions <github-actions@github.com>
* Fix wp-router dependencies issue
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix customize your store task header button (#40033)
* Fix customize your store task header button
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
---------
Co-authored-by: github-actions <github-actions@github.com>
Checks ran after closing and opening the PR. One failed but it passed after re-run. Checked and appeard the old anchors were not used in other places so merging this one - thanks!
* Custom WooPayments task header content
when action incentive is available.
* Add badge prop to experimental TaskItem component
, update task list components, docs, storybook, and tests
* Add badge property to OnboardingTasks/Task abstract class
* Add `woocommerce_admin_woopayments_onboarding_task_badge` filter
* Use the filter to display the badge from server
* Add changelog entries
* Update filter to use return existing badge
instead of an empty string
* Update task header to also check for the incentive in wcpaySettings
* add: made look and tone ai completion api call more robust
- added tracks and tests for invalid ai response
* removed some redundant stuff
* parameterised prompt for safety
* minor fixes
* Add ProgressBar component to @woocommerce/components
* Add changelog
* Remove html.wp-toolbar in fullscreen mode
* Add base style
* Add Tell us a bit more about your business page
* Fix merge conflict issues
* Send BUSINESS_INFO_DESCRIPTION_COMPLETE event when continue button is clicked
* Remove duplicated style import
* Add changefile(s) from automation for the following project(s): @woocommerce/components, woocommerce
* Lint fix
* Add 'Look and Feel' and 'Tone of voice' pages';
* Use correct classname
* Minor changes
* Textearea color should be gray-900 after the user enter text
* guide font weight should be 500
* Fix layout shift when a choice is selected
* Fix choices width for tone of voice page
* Use context value for the default
* Revert button margin top
* Fix default selection
* Add X button
* Decrease the margin by 20px to accommodate the height of the close button
* Add close action
* Include @woocommerce/ai package
* Add AI service
* Use AI service
* Parse JSON from in function
* Fix assignLookAndTone event type
* Update plugins/woocommerce-admin/client/customize-store/design-with-ai/components/choice/choice.scss
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
* Update plugins/woocommerce-admin/client/customize-store/design-with-ai/services.ts
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
* Log when AI API endpoint request fails
* Add spinner when user clicks the continue button
* streamlined unnecessary isRequesting context and forwarded close event
* pnpm-lock changes from trunk
* lint fixes
* ai package test passWithNoTests
* changelog
* reset pnpm-lock to trunk
* Dev: update pnpm-lock.yaml and jest preset config (#40045)
* Update pnpm-lock.yaml
* Update jest-preset config to fix unexpected token error
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: rjchow <me@rjchow.com>
This is necessary because the layout of WooCommerce > Extensions pages adjusts the page height (to compensate for the larger header). On systems with scrollbars set to always-visible, this results in a ~1px overflow of the inner content and double-scrollbars are visible. This CSS mitigates that.
WooCommerce store alerts shown on the Marketplace page are mis-aligned on account of the CSS that applies to the Marketplace. This change re-positions them and, as a bonus, aligns their left and right edges with the rest of the page content, improving the design.
* Update tour-kit to have a optional skip button and custom secondary button label
* Add changelog
* Add onboarding tour
* Update layout and resiable-frame for onboarding tour
* Update onboarding tour style
* Update resizable handler
* Add changefile(s) from automation for the following project(s): @woocommerce/components, woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* tweak the wording for HPOS in Settings / Features / Advanced
* order features in Advanced Settings and move HPOS to the top
* emphasize the need to sync
* add a row_class attribute to settings fields
* fix padding between HPOS settings belonging together
* add changelog file
* update wording in a test
* Update plugins/woocommerce/src/Internal/DataStores/Orders/CustomOrdersTableController.php
Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
* Update plugins/woocommerce/src/Internal/DataStores/Orders/CustomOrdersTableController.php
Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
* simplify the ordering callback -- props to @jorgeatorres! ☺️
* more consistent phrasing
---------
Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
The external @wordpress/router package is not available in these versions, so we need to bundle it with the plugin. This is a temporary fix until we can drop support for WP 6.2 and below.
* dev: added docs for core profiler
* lint
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Update api core tests readme
The example .env provided in the API Core tests readme is obsolete. It needs to reference API_BASE_URL instead of BASE_URL due to recent changes.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add product_options_add tracking event to add variation options
* Add product_options_edit tracking event to variation options
* Add product_options_update tracking event to variation options
* Fix set default attribute when editing it
* Add changelog file
* Add product_options_add_button_click tracking event
* Get attribute options from the terms prop instead of options, this ensures to get the updated values when the user edits the options
* Add Variation options section back
* Add changelog file
* Test for WooPayments active first since it is less expensive
* Guardrails to avoid double menu badge
* Avoid fetching incentives when no dimissals
* Fix handling of incentives API error and caching
* Prevent incentives fetching if were fetched less than an hour ago
* Add changelog entry
* Remove the 1-hour threshold cache validation
* Cache if the store ever used WooPayments
* More inline docs
* Optimize customize store preview frame resize performance
* Add changefile(s) from automation for the following project(s): woocommerce
* Set isOversized to false to fix frame oversize issue
---------
Co-authored-by: github-actions <github-actions@github.com>
Do not remove "sale date from" when the sale is still active, as in some legislations it's mandatory to show the start and end date of sales, and developers can get it from this field.
Closes#34696
* Update PageController.php to prevent PHP warning when menu items have no position set
Update PageController.php to prevent PHP warning when menu items have no position set. This can occur when a user has permission to view WordPress admin pages but does not have permission to administer WooCommerce.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Make sure alert.id and action.id are defined
* Copy id from db to action
* Add changelog
* Add error message when something goes wrong while triggering note action
* Rename changelog
* Add @wordpress dependencies for customize store task
* Update webpack config to bundle wp edit-site package instead of using external
* Add customize-store task list item fill
* Update CustomizeStore task to load editor scripts and settings
* Update customize store routing path
Use /* since we want to match any path that starts with customize-store
* Add assembler-hub
* Ignore some wp packages from syncpack for customize store assembler hub
We need to use specific versions of these packages for the customize store
"@wordpress/interface", "@wordpress/router", "@wordpress/edit-site"
* Add changefile(s) from automation for the following project(s): woocommerce
* Tweak style
* Use CustomizeStoreContext and send xstate event
* Update assembler-hub style
* Fix nav width
---------
Co-authored-by: github-actions <github-actions@github.com>
- `ProductListContextProvider` provides `setIsLoading` function as well as `isLoading`.
- `Discover` uses these values from context, instead of keeping a loading state in itself.
- `FeedbackModal` calls `maybSetTimeout` when `isLoading` changes. If `isLoading` isn't truthy, and snackbar hasn't already rendered, it sets a timeout of 5 seconds to show it.
- Removed wrapping <WooFooterItem> from around Footer component, so it's no longer a child of the WooCommerce Admin `.woocommerce-layout__footer` footer.
- Removed the `position: relative` from `.woocommerce-layout__footer`. It needs to be `position: fixed`.
- Added FooterContent component to Footer, to allow the layout we want.
- Changed use of context. This now only has states for the selected tab and loading state.
- We use this context in `Tabs` and `Content` to keep track of which tab is selected, and set the selected tab.
- We also use it in `Discover` and `Extensions`, which both report loading state to the context. This allows us to use it to only render the snackbar when loading is complete.
- Extensions: moved `productList` and `setProductList` and logic for getting product list from the context provider to a state in this component. We don't need to share the list of products in the context.
- Renamed `ProductListContext`, `ProductListContextProvider` and `productListContextValue` to more generic `MarketplaceContext`, `MarketplaceContextProvider` and `marketplaceContextValue`.
- Renamed a constant and created constants for API paths.
- Only shows snackbar after content has loaded, and after a timeout. We set a date `marketplace_redesign_2023_last_shown_date` in local storage to ensure we only show one snackbar.