* Refactored, adding slot fill, basic working via common components
* Pinning plugins dep
* More menu style tweaks
* Fixing merge issues
* Adding product header item slotfill to support more menu modal
* Fixing moved imports
* Adding changelogs
* Adding hover state for more menu toggle btn
* Fixing typo
* Refactoring to use WooHeaderItem instead of adding new slot-fill
* Removing unneeded fragment
* Adding admin layout changelog
* PR feedback
* Fix up lock file after rebase
---------
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
* Replacing multiple componments on the product page with a single hook.
* Adding changelog
* Removed the conditional hook logic, because of React rule - Don’t call Hooks inside loops, conditions, or nested functions.
* Use promise for receiving entity, and reload template on product change
* Add changelog
---------
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* Add @woocommerce/tracks to dev dependencies
* Move remaining CES-related components to @woocommerce/customer-effort-score
* Update imports in woocommerce/client/admin
* Visual tweaks for 2 partners layout
* Add spacing between banner image and list
* Add changelog
* Add spacing between banner image and list
* Align buttons at the bottom
* Lint fix
* Adding initial pricing block
* Have price block render in form
* Make sure price is loaded correctly and fix template rendering
* Make pricing block abstract and add list and sale price to template
* Add changelogs
* Revert changes in wc/data package
* Fix lint issues
* Fix type error
* Add styling
* Fix styling lint issues
* Revert config change missed in rebase
* Make use of base control help text for field info
* Allow additional callbacks for onFocus and onKeyUp
* Add button and saving logic
* Add comment suggestions
* Add changelog files
* Add comment suggestions
* Set header title to product name if the name field is dirty otherwise the default title value
* Navigate to EditProductPage after creating the product succesfully
* Add get-header-title util and expose edited product name from useSelect
* Add new countries to WCPay
* changelog
* add new countries code to woocommerce admin
* Add the new countries to onboarding wizard fallback config file
---------
Co-authored-by: Anurag Bhandari <anurag@automattic.com>
* Update product post rest configs
* Update block usage
* Add changelogs
* Fix lint
* Make use of setupEditorState instead of setupEditor as we do not have a content block
* Simplify product condition
* Make use of core store only
* Adding test name block with support for entity data store
* Adding changelog
* Changing block.ts to block.json and amending TS config to support
* Experiment in loading blocks from settings template
* Enable the use of templates with the block editor
* Fix dependency
* Add changelog
* Fix lint error and remove unused utils
* Fix tests by fixing mocks
---------
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* Add the new feature to enable the new product editor blocks experience
* Add the type definition of the feature flag
* Add the feature to the beta_featues in Features.php file
* Keep the page routes when the feature is anabled
* Add the feature php class to manage page assets
* Add changelog file
The code is copied from the Channels component, but in CreateNewCampaignModal, we don't need to display the divider, so we can just remove the divider code.
* Add required dependencies
* Create the block editor component
* Create the header component
* Create the sidebar component
* Create the editor component
* Remove comments
* Export the block editor from its package
* Enqueue wp-edit-site
* Create the new block mode product page
* Register the new ProductPage component in /add-product route
* Add temporal layout styles
* Fix rebasing conflicts
* Fix linter errors
* Redirect to the new product-editor page when edit
* Add changelog files
* Fixing dependencies conflicts and ignoring some non running test
* Add comment suggestions
* Fix conflicts after rebasing
* Add comment suggestions
* Create tree-control component
* Remove items from treeItemProps
* Add tree-control expand/collapse on click the expander button or by a custom logic
* Add stories
* Add the type definitions
* Add use selection hook
* Upgrade WP components dependency to v19.8.5 to support indeterminate checkbox control
* Add selection logic to the tree control
* Create stories
* Add changelog file
* Fix linter error
* Add styles to fit the disign
* Highlight selected item when it's a single selection tree
* Rebasing from trunk
* Add comment suggestions
* Fix unit test errors due to a new version of @wordpress/compose related to the ResizeObserve feat
* Add missing dev packages to product-editor package
* Create components folder for organization
* Move product field, section and tab slots over to product-editor package
* Move use of product slot fills to product-editor package
* Sync dependencies
* Add changelogs
* Update README's and add constant for default values
* Update README's in product-editor package
* Add `RevenueReportDateTour` component
* Add changelog
* Fix styles
* Rename RevenueReportDateTour to ReportDateTour to use it in two different reports: Orders and Revenue
* Change default sort date to date_paid
# Conflicts:
# plugins/woocommerce/src/Admin/API/Reports/Orders/Stats/DataStore.php
* Update changelog
* Assign date_column_name before calling parent constructor
* Remove date_type default value from configuration and show tour only if user didn't assign a value
---------
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Nathan Schneider <nsschneider1@gmail.com>
* Add additional global attributes and local attributes information when saving product attributes
* Log only local attributes
Add attribute name
Fix issue with attribute_value and names selectors
* Save name and slug for global attributes and global terms
* Remove Klarna payments from North America and remove Amazon pay from CA
* Update payment gateway list ordering priority
* Add changelog
* Sort gateways by recommendation_priority
* Fix DefaultPaymentGateways.php
Fix lint
Fix paypal
Fix comment
* Remove unneed comment
* Change eway priority to show after square
* Include fields date_paid and date_completed to wp_wc_order_stats
TODO: add script to create new columns in the database
* Add update script and new columns in get_schema
* Add new configuration in Analytics > Settings to configure type of date used in Revenue report
* Change date_column_name to date_paid
TODO: This will be configurable in future
* Add date type config field
* Use customizable date field in DataStore
* Change label
* Fix linter errors
* Remove blank line
* Put default column name back to date_created
* Make date_paid and date_completed nullable to help with unit tests
* Remove new table creation in update function and use query method instead of get_var
* Extend stats constructor
* Improve date type configuration description
* Set date column name default to date_created to test if build passes
* Fix phpcs issue on constructor
* Remove cache bypass added by mistake
* Improve changelog
* Fill date_paid and date_completed for refunds to avoid problems whem they are being used to sort
Fix unit tests when date_paid or date_completed are being used as sort date
* Change default to date_created
* Bump update script to 7.5.0
* Add prefix and postmeta variables for script
* Move attribute data changes out of attribute control
* Move dynamic text to props
* Add onModalOpen callback
* Add onModal close prop
* Add changelog entry
* Use closeModal for edit attribute modal
* Add onEdit callback
* Extract util to get unique attribute id
* Rename editingAttribute to currentAttribute
* Rename showAttributeModal to isNewModalVisible
* Rename AddAttributeModal to NewAttributeModal
* Fix up handle add attributes
* Add onRemove callback for attibutes
* Fix up modal styling classes
* Fix up closing edit modal
* Fix up modal title for options
* Handle PR feedback
* Separate handlers for edit and new modal callbacks
* Update event names to be option/attribute specific
* Use default callback functions
* Handle PR feedback
100 is the maximum limit allowed by the API.
We do this because the API does not return total number of rows, so we use 100 to get "all" rows, to support pagination in the UI.
* Adding contants, renaming files, wiring up shipping section with discrete slots for variants and non-variants
* Refactoring pricing section to give discrete slots for variant and non-variant forms
* Refactoring inventory fills to give discrete slots for variant and non-variant products
* Adding additional slot to pricing -> taxes -> advanced
* Renaming api fields component file
* Refactoring images, details and attributes to match others
* Ensure variant field IDs are distinct, organize all product field fill IDs
* Adding changelog
* Simplifying IDs used for slots
* Minor refactor of pricing taxes class field
* Give api fill exports their own registerPlugin scope
* Refactoring WooProductFieldItem to generate unique IDs
* Adding components changelog
* Move clearQueue call to inside an useEffect
That call was causing a React error (Cannot update a component while rendering a different component)
* Move queueForPage declaration to before it's use
- Use `@include font-size ( 20 )` to generate relative size in rem.
- Use unitless number value for line-height; this is the preferred way according to MDN.
- `font-weight` and `letter-spacing` are not needed.
The UI looks the same before and after this change.
* Always show comments for product feedback form
* Add changelog entry
* Add CES changelog entry
* Fix up lint errors
* Add default for shouldShowComments in CustomerFeedbackModal
* Enable new experience for simple products
* Add changelog
* Fix `updateOptions`
* Fix redirect when new-exp is enabled
* Redirect when new-exp is enabled
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Migrate shipping shipping in product editor to slot fill
* Adding changelog
* Removing obsolete shipping section files, adding support to variations form
* Add initial component to auto load fills from API config
* Add changelog
* Update logic to make use of new store and re-usable components
* Add changelog
* Add loading state for product form data to add/edit product pages
* Add product tour container and modal
* Fix modal open class name
* Add product tour
* Add changelog entry
* Move product tour state logic into hook
* Fix tour selectors for pricing and actions
* Add tests around product tour container
* Add tests around useProductTour hook
* Make tour responsive
* Use tabs instead of spaces
* Fix more scss lint errors
* Remove extra whitespace
* Working prototype of product details via slotfill
* Raising default order for product slot-fills
* Move logic to details field name component
* Adding order prop to all fills.
* Adding components changelog
* Adding changelog
* Deleting obsolete product details section files
* Reducing spacing between slot filled fields
* Move attribution fetching to separate hook
* Add changelog entry
* Set all attributes on update of subset of attributes
* Move filtering logic to hook
* Remove tests that filter attribute by type inside the component
* Rename AttributeField to AttributeControl and props from attributes to value
* Add Charge sales tax on sub section to pricing section when enable taxes is set to yes
* Add tax classes datastore
* Load tax classes in pricing section
* Set empty value when tax class is standard rate
* Add changelog files
* Add custom resolver to use slug as id for tax classes
* Add helper text and learn more link to tax class radio group
* Add callback to confirm whether or not the prevent leaving page prompt should trigger
* Move prevent leaving logic to util and add tests
* Add changelog entry
* Add navigation changelog entry
* Fix WooCommerce data mock
* Revert desctructuring of nav properties
* Auto generate variations on option changes
* Add changelog entry
* Move product variation generation to hook
* Create product auto draft if not yet created
* Allow auto-draft and trash statuses for products
* Update form context with product ID to allow fetching variations
* Fix product ID usage in variations
* Reset form after initial product creation
* Use form value name for display instead of persisted name for auto drafts
* Add additional test around auto draft title
* Fix up updateItem query in CRUD data store
* Add product variation form header
* Fix gaps for variation and parent product actions
* Hide preview button on mobile for product variations
* Add changelog entry
* Add data package changelog entry
* Fix lint errors
* Support passing in filter and new attribute properties to AttributeField
* Changelog
* Pass addButtonLabel as prop
* Add OptionsSection to options tab
* Refactor more to create Attributes and Options fields
* Refactor a couple of things
* Refactor globalAttributeHelperMessage
* Remove `Used for filters` checkbox
* Remove `hydrationComplete`
* Add subtitle to empty state component
* Fix 'Add option' button
* Fix tests
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Truncate attribute option name to a max of 32 chars in variations list
* Use PRODUCT_VARIATION_TITLE_LIMIT to truncate attribute option names
* Fix up lint error
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
* Convert getCheckboxTracks into generic function because of a type mismatch
* Add image to product variation and export types
* Add single image field
* Integrate SingleImageField in variation details section
* Add changelog file
* Add comment suggestions
* Fix set image onFileUploadChange
* Persist product variation order on product save
* Add batchUpdate to product variations datastore
* Add useVariationOrders hook to manage the ordering logic
* Add local ordering logic to variations field
* Persist variation orders on product save
* Add changelog file
* Add comments suggestions
* Add more comment seggestions
* Add method to get product variation title from data
* Conditionally add variation to page header
* Fix CRUD data store id query on selector
* Make getProductVariation calls and data types consistent to prevent multiple calls
* Add changelog entries
* Update product link type to avoid page refresh
* Expose function to truncate title to 32 character limit
* Add className prop to Sortable
* Add styles
* Add `rows` class
* Add changelogs
* Remove `row-#` class
* Fix min-height
* Set task list item min height
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Add aria-label for simple select dropdown
* Add changelog
* Use placeholder value
* Allow aria label prop and use label as a fallback
* Update test snapshot
* Add changelog
* Add svg icons and show them in variations list
* The visibility icon should reflect the current visibility status
* Clicking the visibility icon should toggle on or off the variation visibility and persist these settings on refresh
* Price and quantity should be fade when the variant is not visible
* Add changelog
* Hovering the visibility icon should display a tooltip indicating what clicking this button will do
* Fix linter error
* Fix spinner opacity if button is disabled
* Add className support to ListItem
* Refactor to extract AttributeListItem component
* Use AttributeListItem component in AttributeField
* Extract AttributeEmptyState from AttributeField
* Use AttributeEmptyState in AttributeField
* Add default value for label prop on AddAttributeListItem
* Add props for labels in AddAttributeModal
* Add props for labels in EditAttributeModal
* Add changelog
* Add pagination to variations list
* Apply styles for pagination paddings and to keep it at the bottom of the section card
* Returning back per page option from 2 to 25
* Fix pagination label text from uppercase to normal and font styles
* Update variation footer gap
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Add exit settings page tracker
* Add exception for when user hits the save button
* Update settings and add icon support
* Add changelog
* Add dismiss track for when user dismisses CES modal
* Add changelog
* Add tests for staticFormDataToObject function
* Fix imports of test file
* Add product variations section
* Add variations list
* Add util to get product stock status
* Add variation specific attribute type
* Add currency code to header column
* Fix up variations header width
* Add variations loading state
* Add changelog entries
* Convert spaces to tabs
* Fix status typo
* Fix up return type for stock status
* Add product form tabs to layout
* Move product sections to respective tabs
* Add tab styling
* Add changelog entry
* Scroll to top on tab change
* Update font weight on active or inactive tabs
* Add blank EOL
* Add exit page tracker logic and implement it for product pages
* Add changelog
* Fix lint errors and add comments
* Add ces_location prop
* Add mock to fix broken test
* Add CES exit page survey tests
* Fix a bug with React pages redirects and update actions
* Fix test
* Fix lint
* Add default inside location prop
* Remove exit prefix within action
* Address PR feedback and make sure its not triggered on save
* Update copy of exit feedback notice
* Add changelog
* Update name of param
* Fix lint error
* Use hasFinishedResolution vs isResolved in customerEffortScoreTracks
* Extract new component 'ProductForm', to reduce duplicated code between add-product-page and edit-product-page
* Add changelog
* Try to merge add-product-page and edit-product-page into a single product-page: running into some issues probably with the controller
* Revert "Try to merge add-product-page and edit-product-page into a single product-page: running into some issues probably with the controller"
This reverts commit bc30b67ef2.
* Add ability to show CES modal through share Feedback button
* Make use of showCesModal in footer
* Update CES action for share feedback
* Update changes to support second CES question
* Add changelog
* Address some PR feedback
* Add product mvp ces footer
* Add changelog
* Reset action option name after CES action
* Make sure we make use of cesAction
* Add close button
* Fix formatting
* Fix css styling issues
* Add icon to success notice
* Add product mvp CES hook and modify logic a little bit
* Update the CES product action name
* Address PR feedback and fix styling for smaller screens
* Add second question to CES product footer and update options
* Add changelog
* Fix lint error
* Fix tests
* Add updated versions of sr-only and not-sr-only mixins
* Improve element stacking in modals on tablet and mobile
* Add comment suggestion
* Change sr-only for screen-reader-only which is more descriptive
* Record an event 'product_view_product_click' when the 'View Product' link is clicked after creating or updating a product
* Add product_view_product_dismiss tracks events (WIP, not currently working)
* Add changelog
* Fix whitespace in addEventListener and remove console.logs
* Change link tag id to be more specific and comply with CSS guidelines
Move HTML code out of translation function
* Run phpcs in class-wc-admin-post-types
* Add tinyMCE types to add global tinymce variable in typescript code
* Add additional data in getProductData
TODO: I'm not sure if it's possible, or if it makes sense, to include stock_quantity_update in the object
* Add code review suggestions, including:
* Create isElementVisible function to backfill jQuery implementation
* Fix wrong value for is_downloadable, is_virtual, manage_stock
* Fix wrong radix
* Update menu_order implementation
* Add missing ? to weight
* Add stock_quantity_update implementation which is not working as intended
Since the page reloads after product update, the initialStockValue is updated as well
* Remove stock_quantity_update property and adjust is_downloadable, is_virtual, and manage_stock for consistency
* Currency symbol is fixed on the left side of the price input field
* Currency symbol has a different color from the input field value (Gutenberg-700)
* Input value is aligned right
* On focus, we highlight the field's content so the user can quickly clear or overwrite the placeholder text
* On focus, the user can press the up and down arrow keys to increase or decrease the value by 1
* Add changelog
* Remove unnecesary stepUp function
* Add a blank space between the emoji and the message within a notice popup
* Apply comment suggestions
* Remove duplicated text in the snackbar message after publishing a product
* Update product title in smaller viewports
* Move secondary product actions to menu group on mobile
* Hide settings menu on smaller viewports
* Add changelog entry
* Mark note as read when viewing
* Show unread note count
* Add ability to fetch read or unread notes
* Count unread notes on server side to avoid pagination limits
* Add changelog entry
* Add data changelog entry
* Add check for note actions before checking length
* Add changelog entry
* Mark note as read after 3s delay
* Set initial values prop from reset form function as optional
* Fix unsaved modal propmt to not be shown during form submission
* Reset form on save draft and before navigation starts
* Add comments ssuggestions
* Add initial add new option
* Hook in create attribute modal to add attribute field
* Add unit tests for the create attribute modal
* Add extra test to attribute input field
* Add changelog
* Add custom attribute term input field and support for custom attributes
* Fix tets
* Add track for custom attribute creation
* Fix changes after merge conflict
* Revert one change
* Fix lint error
* Seperate out some logic and make use of null as empty object versus id: undefined
* Add isNewAttributeListItem helper function
* Make use of helper function for create new markup
* Add css class to change the input width based on the screen's width
* Changelog
* Move class from pricing-section.scss to product-page.scss and use breakpoint 960px mixin
* Move className from currencyInputProps to InputControl
* Improve changelog
* Move 'half-width-field' class to currencyInputProps instead of adding it manually for the two currency fields
* Add 'half-width-field' class to SKU and Shipping Class
Sent as a parameter to getInputProps and getSelectControlProps to avoid overwriting any additional className
* Update changelog
* Add experimental open menu when user click the select control input element
* Open categories menu list when the user click the category field
* Fix linter error
* Move open menu from click to focus event
* Fix linter errors
* Add icons
* Add classic editor url
* Remove welcome guide link and icon
* Add initial settings menu
* Fix up button styling
* Move product settings to its own folder
* Remove unnecessary registerPlugin call
* Use number type control for menu order field
* Add tests around product settings component
* Allow reviews by default on all new products
* Alphabetize product properties
* Add changelog entry
* Add data changelog entry
* Convert indentation to tabs
* Fix up scss linting errors
* Remove whitespace
* Add initial category field component with new typeahead
Move search logic to useCategorySearch hook
Add initial add new category logic
Add parent category field to add new category modal
Adding some debug changes
Update category control to make use of internal selectItem function of select control
Add changelogs
Update pagesize back to 100
Add placeholder
Empty placeholder
Fix input and icon sizes
Fix input underline
Add max height and scroll to category dropdown
Add sorting of category items
Auto open parents when traversing up the tree using arrow keys
Add several comments
Add some initial unit tests for the category field component
Add tests for useCategorySearch hook and fixed minor bug
Update styling and autoselect parent if child is selected
Fix styling issues for the select control dropdown inside a modal
Fix issue with creating new category with parent
Add function comment and fixed border styling
* Fix up some issues after the rebase
* Some small fixes for the Category creation
* Fix up some styling issues around the add-new-item
* Add changelogs
* Remove unneeded export of toggle button props
* Fix create category error and tests in attribute field
* Fix some minor bugs and styling changes that came up during PR feedback
* Fix tests
* Make use of $gap variable for css
* Add product status badge
* Update status method to return keys
* Add tests around product status
* Add styling to badge
* Add changelog entry
* Change product status keys to enum
* Add enum return type to product status function
* Fix up lint errors
* Convert indentation to tabs
* Move shared product header components to separate file
* Fill header title with product name
* Create method to get product title
* Add tests around title
* Add changelog entry
* Remove unnecessary plugin registration
* Add scheduled sale fields to product form
* Close DateTimePickerControl's dropdown when blurring from input.
* Log when onChange is called for Controlled stories
* Handle when input changes occur but the end date is the same
* Fix DateTimePickerControl usage when uncontrolled
* Fix handling when blur happens before debounced onChange
* Fix business details tabs when Gutenberg is active
Fix business details tabs when Gutenberg is active
Fix business details tabs when Gutenberg is active
* Add changelog
* Add create attribute term modal
* Add back filter missed during rebase
* Add changelog
* Fix lint error
* Address some feedback from PR review
* Prevent first modal from closing if closing the second modal when clicking outside
* Fix double click toolbar behavior
* Fix initial block selection on editor load
* Add placeholder option to RichTextEditor
* Add image and video blocks
* Set toolbar height
* Allow inserter to be shown
* Allow media uploads in rich text editor
* Add changelog entries
* Fix media upload
* Check for existence of selected blocks before checking length
* Pass blocks to avoid race in detecting initially empty blocks
* Add sold individually inventory option
* Add backorder purchase options
* Add margin around collapsible content areas
* Add changelog entry
* Add tests around inventory section
* Fix up checkbox props after rebase
* Check for disabled track quantity toggle
* Update manage stock test
* Fix nested radio control label margin
* Disable product inventory toggle when inventory management is disabled
* Export conditional wrapper as experimental component
* Conditionally show the tooltip
* Add comment explaining the tooltip overlay
* Add components changelog entry
* Display tooltip on hover any portion of toggle or label
* Add changelog entry
* Fix scss lint error
* Center tooltip over label and toggle
* Fix up input props after rebase
* Add wrapper around field to maintain block item formatting
* Show a dismissible snackbar if the server responds an error
* Removed the default value New shipping class from the Name field and replaced it with a placeholder: e.g. Fragile products
* Only used the category's name when the user creates a new shipping class for the first time
* Fix linter errors
* Update grammar error
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Add empty initial values to form field to prevent controlled/uncontrolled react error
* Tune error handling
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Allow additional props to be passed to the Form getInputProps method
* Remove getTextControlProps
* Pass additional shared props through getInputProps in shipping
* Simplify checkbox props
* Unwrap currency props
* Use onBlur event to sanitize prices
* Add changelog entry
* Add option to get checkbox props to form context helpers
* Update checkbox tracks handler naming and typing
* Fix up usage of getInputProps
* Add helper sanitize method
* Use sanitize helper method for product input fields
* Fix inventory input props after rebase
* Fix shipping typo
* Fix up form types after rebase
* Align all checkboxes on product page
* Rename new checkbox helper to getCheckboxControlProps
* Add helper method to get select control props
* Add data changelog entry
* Check for product name length on blur
* Add initial value for name to prevent uncontrolled value
* Add initial value for sku
* Add initial add attribute modal
* Add async select control component and add attribute terms
* Make use of AsyncSelectControl for attributes
* Rearranged the add attribute form to make removing easier
* Make sure add button is disabled if fields are empty
* Remove the use of AsyncSelectControl for now
* Add disabled option and fix merge conflict
* Add attribute modal tests
* Remove unused trigger drag
* Add popover slot
* Small update to select control and fix multi selection in term field
* Add tests for attribute and attribute term fields
* Add changelogs
* Small fix after merge conflict
* Fix some styling and issue with select control when clearing item
* Fix lint error
* Fix up some styling issues after rebase
* Fix formatting, some styling issues, and address some PR feedback
* And confirmation dialog for closing the modal.
* Select the current new added shipping class
* Extracting constants into the right file
* Add unit tests
* Use setValue instead onChange to select the shipping class of the product
* Add label prop to rich text editor
* Create feature class and enqueue styles
* Add description editor and parsing
* Fix up incorrect context for product data
* Add styling to rich text editors in product form
* Fix editor initialization on new product
* Add changelog entries
* Use trunk lock file
* Add component changelog entry
* Update lock file
* Register block store provider in tests
* Fix up phpcs errors in product feature file
* Add initial category field component with new typeahead
Move search logic to useCategorySearch hook
Add initial add new category logic
Add parent category field to add new category modal
Adding some debug changes
Update category control to make use of internal selectItem function of select control
Add changelogs
Update pagesize back to 100
Add placeholder
Empty placeholder
Fix input and icon sizes
Fix input underline
Add max height and scroll to category dropdown
Add sorting of category items
Auto open parents when traversing up the tree using arrow keys
Add several comments
Add some initial unit tests for the category field component
Add tests for useCategorySearch hook and fixed minor bug
Update styling and autoselect parent if child is selected
Fix styling issues for the select control dropdown inside a modal
Fix issue with creating new category with parent
Add function comment and fixed border styling
Prune out create new category logic
Fix minor css issue with border
Revert some of the select control changes and make use of the custom type
Fix up some styling changes
* Fix type conflict
* Revert change in state reducer
* Add cursor pointer
* Fix styling errors
* Fix broken category tests
* Fix merge conflict
* Ensure Payments menu is dismissed after choosing no
Now it gets also dismissed on modal close
* Add a new requirement
Check if the store has another payment gateway installed to be eligible for the promotion.
* Add changelog entry
* Fix not using strict comparison for in_array
* Update is_another_payment_gateway_installed
To use a static list instead of PaymentGatewaySuggestions
* Add manage stock section to product inventory section
* Fix up h4 styles in form sections
* Check if stock management is enabled in store settings
* Fix up more styles in form
* Extract inventory validation and add new validation rules
* Add changelog entry
* Add changelog entry
* Remove sku related validation
* Add product inventory section and sku control
* Add validation and errors
* Add changelog entry
* Add dependencies comment block
* Call input props onBlur for product name field
* Remove slug validation
* Watch product name value change in inventory section
* Fix up usePrevious hook TS
* Revert watching changes by previous touched status
* Add initial attribute list with dragging and removing functionality
* Fix sortable styling and remove the default selected logic
* Fix css formatting
* Add changelogs
* Add missing question mark
* Add tests
* Some minor CSS updates and move some logic to a util function
* Fix lint issues and add extra test
* Remove custom styles from FormSection component and use Card and CardBody instead
* Add dimension fields formating using the woo number global settings
* Load size units to show it as a suffix of shipping dimensions fields
* Fix card styles according the disign and pass props manually to BaseControl
* Add shipping dimensions image
* Apply comment suggestions
* Add dimensions to shipping section
Change the FormComponent to support input name with dot notation like dimensions.width
Add the dimension controls to the product form
* Remove custom styles from FormSection component and use Card and CardBody instead
* Add dimension fields formating using the woo number global settings
* Add dimension fields validations
* Solve conflics from rebase
* Add changelogs
* Fix resetForm function to consider the passed params and the initialValues
* Load size units to show it as a suffix of shipping dimensions fields
* Fix card styles according the disign and pass props manually to BaseControl
* Add new attributes section and attributes field with just an empty state
* ADd changelogs
* Add check to not render the blank section when attributes exist
* Fix misspelling
* Add store-details task header and ensure the aid is disabled when task is completed
* Add an illustration
* Update the texts
* Add changelog
* Revisit progress header styles
* Bring back ellipsis menu
* Align the ellipsis menu on the baseline
* Give some room to the badge in the sidebar
* Update progress bar color with variable
* Initial commit
* Implement APMs toggle button
- Add valid links to each APM
- Add valid link to the marketplace
* Implement APMs toggle button
- Add valid links to each APM
- Add valid link to the marketplace
* Refactor the code to be more explicit
* Delete the apm on toggle off if it's local state
* Implement FAQ simple block
- Style a notice about APM is enabled
- Add noreferrer and target=_blank to external links
* Add todo comments
* FAQ simple styling fix (improve padding)
* Fixes after inner review
* Add changelog item
* Address PR review comments
* Remove Affirm as it's not in the store
* Style fixes, proper internationalization and put valid link
* Styling fixes, translators comment, rename ApmsProps component to ApmListProps
* Two more styling fixes
* Styling fix
* Styling fix
* Remove text-decoration: none to match the design
* Disable action buttons when product form is invalid
* Move to trash action should be enabled when editing a product even when the form is invalid
* Hide Move to trash action button in the Add new product page
* Hide product link when the name field has any error
* Disable Publish options menu button when all menu items are disabled
* Test menu items by text instead of index
* Remove -- -- from scripts that fixed issue in pnpm 6, fix a couple TS issues in sep packages
* Minor fixes to analyzer scripts and doco based on pnpm 7
* Add dompurify types to data package to avoid TS errors
* Remove pnpx in favor of pnpm exec
* Modify the code analyzer to respect pnpm version if present.
* Update instructions for running recursive lint, add comments to explain
* Add styles for the progress header
* Add changelog
* Fix invalid header error from the changelog -- this file is not related to this repo, but I am still fixing it since it is not passing the gitflow job
* Update Google logo icon.
* Update Google logo icon to use img element with svg file.
* Simplify ProductIcon CSS with size prop.
This applies to svg and image icons, not just svg.
* Add changelog.
* Set style for Google logo icon.
We set white background to override the gray backgroun in ProductIcon.
Padding is used to make it look visually similar size with other icons.
* Update style for Google logo.
* Add initial product field and modal for editing product link
* Create a product link modal for editing product link
* Only show permalink when product is published
* Add changelogs
* Add changelog for data package
* Change save button to primary
* Fix merge conflcts
* Add getPermalinkParts selector to products store
* Made use of getPermalinkParts to support draft products
* Add initial SearchControl component
* Add async example
* Reorganize getItemPropsType type
* Create separate MenuItem component
* Update items to use value/label pairs
* Add fuzzy matching example
* Use MenuItem component in example
* Add callback method example and onSelect prop
* Add custom render example
* Add styling
* Simplify Menu component
* Add changelog entry
* Update SelectControl to DeprecatedSelectControl
* Rename SearchControl to SelectControl
* Add readme
* Add placeholder prop
* Add icon to combox box
* Rename deprecated SelectControl classes
* Add changelog entries
* Pass menu props to menu to fix ref issues
* Update lock file
* Rebase and update lock file
* Fix up IDs in e2e tests
* Make list structure more semantic
* Fix update conflict with pnpm-lock
* Move new SelectControl to experimental
* Change experimental class name to avoid style conflicts
* Fix up latest lock file from rebase
* Remove onboarding e2e changes
* Update changelogs
* Update lock file again
* Update pnpm-lock and fix lint error
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* Show WCPay welcome page to all eligible merchants.
Remove the experiment and also check for marketplace suggestions.
* Update banner design and copy
Replace background `wcpay-banner.png` with `wcpay-offer.svg`, `flag.j` svg component with `gift.js`. Adjust styles and ensure it's responsive.
* Add more requirements.
Don't register it when there is an existing WCPay account or the site is on a WPCOM starter plan.
* Update promotion and FAQ copy
* Add the new experiment.
And remove the supported country check to use Explat instead.
* Add changelog entry
* Remove WPCOM starter plan check
* Remove Yoda comparisons
* Update `wcpay_exit_survey` event.
Record it also when the user chooses `Just remove` and use snake_case to avoid Track errors.
* Country and time conditions.
Only for US based businesses with a live store of at least 90 days.
* Update design and copy to match new requirements
* Update promo ID
* Fix country condition
* Load SVG as image instead of background
To prevent wrong asset generation due to Webpack configuration
* Fix WCPay installed condition
* Update promo ID
* Update promo ID in allowed notes
* Update FAQ copy
* Add `apply_filters` docblock
* Add missing `@since` to docblock comment
* Remove WCPay Subscriptions offer page experiment
This removes all code added in PR#32957 as experiment has ended.
(WooCommerce > Subscriptions admin menu item and empty state offer screen)
* Add changelog entry
* dev: moved shipping tour into guided tours folder
* dev: moved store address tour to guided-tour folder
* dev: updated imports for store address tour code move
* dev: move add-product-tour to guided-tours
* dev: update imports for add-product-tour code move
* Add initial product form action buttons to form
* Add new edit page and allow for updating and creating products
* Move crud functions to helper hook to keep things seperated better
* Add changelog
* ADd package changelogs
* Add isPending selector to products store
* Fix trash screen showing up when deleting product and add loading indicators
* Add extra types to Product type
* Update track names and add product data to tracks
* Update track logic when product is published
* Remove the Image section for now, to prevent confusion as it is not ready yet
* Add tests for the product form actions
* Update copy for publish & duplicate
* Remove unused code
* Set window.location correctly with href
* Reset changes in pnpm lock
* Moved pending action variables to product helper and updated buttons to reflect new suggestions
* Fix backwards compabitibility issue with Form changes
* Add switch to draft button
* Make ProfileItems properties optional
* Remove skip button codes and replace them with SkipButton component
* Add SkipButton component
* Add changelog
* Add back continue button callback
* Apply popover styles globally
* Add skip button on the industry step
* Add skip button on the product types step
* Add skip button on the Business Details step
* Support onSkipped callback
* Record skip event
* Add skip event track for industry, product types, and business details
* Add SkipButton to the theme step
* Update snapshot
* Change track name to separate business details and free features
* Add changelog
* Remove unused code
* Update product types test snapshot
* Add back UsageModal on Continue click
* Update e2e tests to use Skip
* Use button selector for skip btn
* Fix duplicate event dispatch
* Do not call onClose and onContinue during the rendering -- it causes cannot update a component while rendering a different warning. Instead, call them when the button is clicked
* Skip the profiler without rendering usage modal when woocommerce_allow_tracking is set
* Skip the profiler without rendering usage modal when woocommerce_allow_tracking is set
* Go to the next step when allowTracking is yes
* Add product page layout components
* Add a quick sample page to test the product form layout
* Add changelog
* Add option 2
* Refactor the product field layout structure
* Update page component structure of product form
* Add simple SlotFill support
* Update product page chunk name
* Add order to slot fill and move product field layout wrapper into product category layout
* Remove unused import
* Consolidate the slot fill ordering logic
* Rename category component to section component to prevent confusion
* Remove edit product page and use the new add product page instead
* Add tests
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Update store details unit tests
* Update store details subheading and field order
* Update obw store details e2e tests
* Add changelog
* Add changelog
* Update Store owner can go through setup Task List test
* Add feature falg
* Modify href to menu item
* Modify page title href button
* Add product files on Client
* Change button's URL for new Nav
* Add changelog
* Moved changelog
* Fix URL for new nav
* Change URL for add product task
* Add Tracks event
* Change const name
* Renamed tracks event name
* Undo Add New Product redirect
* Undo use Products addition
* Undo lint fix to woocommerce_admin.js
* Rename component and file (AddProductPage)
* Set flag in core.json to false
* Fix typo
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Remove setup_experiment_1 and setup_experiment_2 tests and css
* Remove setup_experiment_1 and 2 from the client code
* Copy over setup_experiment_1 options to the setup tasklist and remove setup_experiment_1 and 2
* Add changelog
* Determine the default component to use by task id
* Update plugins/woocommerce-admin/client/tasks/hooks/useActiveSetupList.ts
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
* Support force_default_suggestions argument
* Use force_default_suggestions
* Support force_default_suggestions argument -- returns the default payment suggestions when both woocommerce_show_marketplace_suggestions and woocommerce_setting_payments_recommendations_hidden options are set to no
* Add changelog
* Fix free features is still rendered when there is no recommendation
* Add changelog
* Update BusinessDetails tab to go to next step if no installable extensions
* Update spinner
* Set allowedTextDomain to only allow woocommmerce text domain
* Set allowedTextDomain to only allow woocommerce text domain
* Fix wrong or missing i18n text domain
* Add changelog
* Add changelog
* Change review shipping task id to 'review-shipping'
* Add click track for shipping-recommendation task from the settings page
* Changelog
* Add test
* Add more specific test param
add: intro tooltips for shipping smart defaults
- removed php code for setting 'reviewed' option as it was being set on page load and thus always evaluated to true before the user sees it
- added intro tooltips
* Update shipping task fields when shipping smart default feature is enabled.
* Always display the shipping task regardless of having a physical product
* Updated text copy for the fields
* Do not display the step description if it is not the current step
* Added a banner for the shipping printing step
Remove description if the it is not the current step
* Add changelog
* Fix namespace conflict after the rebase
* Re-use wcs banner from the experimental shipping recommendation
* Delete ShippingLabelPrinting -- replaced by wcs banner from experimental-shipping-recommendation
* Add TOS link
* Remove ShippingPrintLabel styles -- no longer needed
* Minor refactor
* Move description set logic to getSteps()
* Use map to override step fields
* Remove unnecessary feature check
* Remove description in the map func
* Render ShipStation banner if plugins includes woocommerce-shipstation-integration
* Plugins component skip button is now optional
* Add link from payment settings page
* Add new experimental shipping task flow
* Changelog
* Update plugins/woocommerce/src/Admin/Features/OnboardingTasks/Tasks/ExperimentalShippingRecommendation.php
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
* Rename all tracks to shipping_recommendation
* Add back skip installer bind
* Pass plugins list to pluginSlugs to be more predictable
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
* Update WooStep to have name in meta
* Add useProductStepChange hook and use it to detect form value changes in product tourkit, added tracking for tour view, tour dismiss, tour complete, and step complete
* Add tour view, tour dismiss, tour completion track to old product walkthrough
* Changelog
* Fix test
* Add listener to publish button for product spotlight tour
* Add track for old walkthrough publish button
* Add product-tour admin script
* Update class-wc-admin-pointers.php to show experimental product tour
* Remove unnecessary window.onload
* Replace add new button with Enable guided mode button for product editing
* Show tour when tutorial query = true
* Add logic to show new tour only when a user select the physical product template
* Update product tour last step button text
* Add auto-scroll effect
* Fix i18n text
* Use bottom-start placement and align the arrow to the left
* Update pnpm-lock.yaml
* Update product tour effects
* Add changelog
* Add doc comments & check for tour-kit
* Add focus elements to product tour and wait initial element for tour showup
* Use spotlight query param to toggle new product tour feature
* Update wait seconds
* Update border style for product description & short description when editor is focused
* Add experimental-product-tour feature flag
* Refactor product-tour and support html editor focus style
Co-authored-by: moon <moon.kyong@automattic.com>
* Fix incorrect URL for the wcAdminAssetUrl and deprecate both wcAdminAssetUrl and WC_ADMIN_IMAGES_FOLDER_URL
* Remove unused wcAdminAssetUrl var
* Remove use of wcAdminAssetUrl
* Add changelog
* Ignore hook PHPCS error -- they are pre-existing
* Remove orderCount and publishedProductCount setting and make use of data stores
* Add test
* Add changelog
* Make use of orders data store instead of items data store
* Add users param to reports customers API params to allow filtering by user_id
* Fix invalidateResolution call that was misspelled
In order to ease the identification of private packages within the monorepo, this adds an `internal-` prefix to all of the current private packages. This makes it immediately clear when reviewing `packages/js` what is and isn't a private package.
* Add initial tracking for categories, tracks, and attribute product pages
* Update list action tracks that add new items without page refresh
* Add changelog
* Add extra category tracks
* Rename constant for add a new tag button
* Remove unneeded props from track
* Add logs for the attributes and tags on the product page
* Only trigger attributes_add on product screen when user hits save
* Add extra props to attribute add track
* Add tags delete track and fix count of tags add track
* Update use of wp_localize_script
* Fix completed card button
* Update sectioned task list to use onboarding data store
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
* Add tracks to products list page
* Remove duplicate tracks
* Add changelog entry
* Check for fields before getting values
* Add bulk actions cancel button
* Check for element before binding event listener
* Check for search input before getting value
* Add initial E2E tests for purchase task
* Update paid theme logic to remove PHP warning and keep the correct price
* Fix php unit tests
* Address some PR feedback
* Add changelog
* Include the purchase task e2e test
* Disable test
* Delete purchase E2E test file
* Update husky from 4 to 7
* Update @types/jest from 26 to 27
* Update lint-staged from 10 to 12
* Update babel-jest from 26 to 27
* Update @typescript-eslint/eslint-plugin from 4 to 5
* Update @typescript-eslint/parser from 4 to 5
* Update chalk from 4 to 5
* Update concurrently from 5 to 7
* Update stylelint from 9 to 14 and stylelint-config-wordpress from 13 to 17
* Update @wordpress/prettier-config from 0.4 to 1.1
* Update eslint from 7 to 8, @wordpress/eslint-plugin from 8 to 10, eslint-plugin-testing-library to 5
* Fix lint errors after updating eslint-plugin-testing-library
* Fix style lint
* Rename .stylelintrc.json -> stylelint.config.js & add todo comment
Fix stylelint.config.js
* Remove @wordpress/e2e-test-utils
* Add changelogs for eslint-plugin
* Update storybook/preview.js since addDecorator has been deprecated
Remove parameters
* Import directly from @storybook/addon-docs
* Migrate some stories to use @storybook/addon-controls
Add a comment for @storybook/addon-knobs
* Update changelogs
* Update preview.js to fix lint warning
* Update pnpm-lock.yaml
* Fix eslint layout errors (https://github.com/woocommerce/woocommerce-admin/pull/8484)
* Fix industry tab not clickable after going back
* Add changelog
* Add e2e test for testing industry tab going back
* Add changelog
* Add navigate to fix the test
* Allow for easy task component switch
* Add past tense feature addition with cross out
* Add visible option for task lists and make use of new feature config
* Fix lint errors
* Fix lint errors
* Fix css lint
* Fix js unit tests
* Address PR feedback
* Add js tests for task list changes
* Add php tests for updated logic
* Add changelog
* Update copy
* Make snooze test a little more robust
* Add WC_ADMIN_IMAGES_FOLDER constant
* Use WC_ADMIN_IMAGES_FOLDER to construct image URL
* Rename WC_ADMIN_IMAGES_FOLDER to WC_ADMIN_IMAGES_FOLDER_URL
* Use WC_ADMIN_IMAGES_FOLDER_URL to construct image URLs
* Move wcpay-banner.png to client dir
* Move wcpay-banner.png to client dir
* Use WC_ADMIN_IMAGES_FOLDER_URL for wcAdminAssetUrl
* Use WC_ADMIN_IMAGES_FOLDER_URL to construct image URLs
* Use WC_ADMIN_IMAGES_FOLDER_URL to construct image URLs
* Revert to images
* Add / to the path
* Rename route to payment gateway suggestions
* Create separate payment gateway suggestions controller
* Move payment gateway logic into feature class
* Merge payment gateway information into single source of truth
* Filter out WCPay client-side
* Fix up frontend
* Redirect to payment settings page on install
* Add test around showing installed gateways
* Remove check for marketplace suggestions at the endpoint level
* Fix up payment gateway conflicts after rebase
* Handle PR feedback
* Optimistically dismiss the payment gateway suggestions
* Add changelog entry
* Add square_image support for new API param
* Fixed lint error
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* 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 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
* 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
* 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
* 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
* 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>
* 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 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
* 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
* Wrap notes with Card component -- Added header, badge, and cllipsis menu
* Add hover state
* Dismiss note immediately without prompting a confirmation (https://github.com/woocommerce/woocommerce-admin/pull/7868)
* use woocommerce-admin-dismiss-notification class to target the dissmiss btn
* Add changelog
* Specify CSS styles so tha they dont get overridden by other plugins
* Update changelog
* Add is_read column
* Do not update activity_panel_inbox_last_read upon viewing the homepage
* Remove use of last_read variable
* Return is_read field from the note api
* Use is_read field and remove last_read from the test
* Set is_read to true when an action is triggered
* CSS changes for the read state
* Apply padding and border if there are multiple actions
* Remove unread indicator
* Add changelog
* Update changelog
* Revert package-lock.json
* Fix onDismiss not being called after rebasing
* Check is_read before setting it to the obj -- this prevents uninteded error messages piling up in case is_read col is missing for some reason
* Revert changs added by mistake during rebasing
* Revert changes to package-lock.json
* Remove incorrect changelog
* Commit to triger Github workflows
* Wrap notes with Card component -- Added header, badge, and cllipsis menu
* CSS changes to adjust padding and margin
* Update text and classname
* Add dismiss all modal
* Render dismiss all modal
* Dismiss all notes
* Update client/inbox-panel/index.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Update client/inbox-panel/index.scss
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Move text to inline
* Pass onClose callback instead
* Move dismissAllNotes into the modal component
* Rename dismissNote to onDismiss
* Alias setShowDismissAllModal as onDismissAll
* Reset margin-bottom to prevent the latest GB to add unwanted margin-bottom
* Commit to triger Github workflows
* Add changelog
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
* Initial refactor
* Update payment recommendations to use new endpoint data
* Make sure to run specs
* Fix test
* Delete old PaymentPlugins class
* Update url to point to woocommerce.com
* Remove unused displayable prop
* Move option name
* Fix js tests
* Add changelog
* Add endpoint to unhide task list
* Rename show method to unhide
* Replace requests for hidden task list options
* Replace unhide task list requests
* Replace task list complete checks
* Replace dismiss option requests
* Remove complete task option check
* Fix up panel buttons
* Update finished setup to wait for task list resolution
* Create selector for getting a single task list
* Add selector for single task
* Fix task list panel visibility
* Add changelog entry
* Fix empty product types in profiler data
* Revert to checking for hidden task list
* Add extra status properties to tasks
* Convert extra properties to camelcase
* Replace task status usage in client
* Remove task status data store
* Remove task status endpoint
* Remove remaining task status references
* Add has products to appearance task data
* Handle PR feedback
* Fix up additional data for Avalara task
* Add changelog entry
* Move woocommerce tax flow to subdirectory
* Add partner cards
* Use png for logo files
* Add partner card other actions
* Add partner card styling
* Add in mobile styles
* Interpolate links and html elements
* Redirect to tax configuration if Avalara not supported
* Mark task complete if Alavara is installed
* Record events when task partners are shown or selected
* Add changelog entry
* Update task card flow based on visible partners
* Skip plugin step if all plugins installed
* Move reusable components into subdirectory
* Record available partner options
* Fix type reference
* Wrap callback functions in useCallback to avoid rerenders
* Handle PR feedback
* Add key to partner card container
* Add testing instructions
* - Increased `per_page` parameter of API request in `getRecommendedPlugins` from 6 to 9, to accommodate additional MailPoet item.
- Added new `mailpoet.js` with SVG icon for MailPoet, and corresponding entry to list of product icons.
* Changelog for this change.
* Renamed changelog.
* Added PR number to changelog content.
* Fix formatting
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* Wrap notes with Card component -- Added header, badge, and cllipsis menu
* CSS changes to adjust padding and margin
* Change buttons to link style
* Render image only when the layout is thumbnail
* Add hover state
* Update text and classname
* Dismiss note immediately without prompting a confirmation (https://github.com/woocommerce/woocommerce-admin/pull/7868)
* use woocommerce-admin-dismiss-notification class to target the dissmiss btn
* Add changelog
* Specify CSS styles so tha they dont get overridden by other plugins
* Update changelog
* Remove message gap
* Remove unwanted changes from package-lock.json
* Update changelog
* Update WCPay in person text
* Remove div wrapping finish setup button
* Add changelog entry
* Add US specific WooCommerce Payment suggestion
* Allow different gateway suggestion IDs for wcpay
* Add older fallback version of WCPay
* Change check to dev version of 2.9.0
* Use 5.10.0-dev for WC checks
* Add back in extension list title
* Separate task list and obw plugin lists
* Remove mailpoet from basics list
* Bump extensions REST API to v3
* Add changelog entry
* Add illustration images
* Refactor the way clicking task is handled, tracking clicks should be during CTA
* Refactor task list on select and rendering
* Add WCPay task and update existing tasks to use new API
* Change payments task behaviour to show after wcpay is connected
* Add couple more tasks
* Add marketing and appearance tasks, customize styles
* Refactor to use svg components instead of images, add custom task titles for experiment
* Updated tracking to be like existing task list
* Change default task shown to be the last
* Cleanup css
* Changelog
* Fix ellipsis menu css to be more specific to the respective tasklist
* Render extended task list
* Remove margin-bottom when the extended task list is empty
* Fix typo
* Remove redundant isVisible check
* Remove unallowedTasks and move it to concat
* Remove woocommerce_tasklist_progression experiment
* Remove duplicate array items
* Use isVisible to check the visibility
* Remove redundant logic
* Add two column version of task list with a new design
* Show number in the status circle
* Set background for the active task
* Remove border top
* Changes in single column
* Task list does not render in the left column if two column task list has been rendered already.
* Your store today and activity panel does not render if user is running two column experiment
* Update the circle border color
* Fix lint issue
* Support single column mode
* Add box-shadow transition
* Fix max width
* Set the first card as the default if all tasks are complete
* Adjust font-weight for the complete tasks
* Use experiment
* Remove unnecessary placeholder
* Use two-column placeholder
* Use the new task REST API
* Remove unused code -- these are no longer used as we are using the new task list REST API
* Update logic to use the new fields
* Update css to fit the homescreen card
* Remove unused var
* Sync changelog from 2.8.0-rc.2 (https://github.com/woocommerce/woocommerce-admin/pull/7783)
* Remove changelogs that were picked into 2.8.0-beta.2
* Update changelog for 7690
* Update changelog for 7743
* Update changelog for 7734
* Update changelog for 7763, 7771
* Remove changelog for 7763 from 2.8.0 since it was in 2.7.2
* Update changelog for 7798
* Show keep & dismiss page when tasks are complete (https://github.com/woocommerce/woocommerce-admin/pull/7684)
* Add two column version of task list with a new design
* Changes in single column
* Task list does not render in the left column if two column task list has been rendered already.
* Your store today and activity panel does not render if user is running two column experiment
* Prompt a modal when hiding the task list
* Add completed compoent
* Move completed task to task-list
* Implement hide and keep list buttons
* Fix keep task list button
* Rename hideTaskCard to hideTasks and keepTaskCard to keepTasks
* Add two column version of task list with a new design
* Show number in the status circle
* Set background for the active task
* Remove border top
* Changes in single column
* Task list does not render in the left column if two column task list has been rendered already.
* Your store today and activity panel does not render if user is running two column experiment
* Update the circle border color
* Fix lint issue
* Support single column mode
* Add box-shadow transition
* Fix max width
* Set the first card as the default if all tasks are complete
* Adjust font-weight for the complete tasks
* Use experiment
* Remove unnecessary placeholder
* Use two-column placeholder
* Use the new task REST API
* Remove unused code -- these are no longer used as we are using the new task list REST API
* Update logic to use the new fields
* Update css to fit the homescreen card
* Remove unused var
* Show keep & dismiss page when tasks are complete (https://github.com/woocommerce/woocommerce-admin/pull/7684)
* Add two column version of task list with a new design
* Changes in single column
* Task list does not render in the left column if two column task list has been rendered already.
* Your store today and activity panel does not render if user is running two column experiment
* Prompt a modal when hiding the task list
* Add completed compoent
* Move completed task to task-list
* Implement hide and keep list buttons
* Fix keep task list button
* Rename hideTaskCard to hideTasks and keepTaskCard to keepTasks
* Remove unnecessary feature checking logic
* Separate && operator for Activity Header and Panel since one of them can be empty
* Add changelog
Co-authored-by: Matt Sherman <matt.sherman@automattic.com>
* Added first set of task-list tests
* Fix event prefix and add two extra task list tests
* Add test for task list item
* Update package to allow tests with slotfill to work
* Add tests for Task component
* Add tasks tests
* Revert package.json changes
* Update prefixEvent function and revert package.json changes
* Remove class additions to body tag
* Add missing styles to tasks container as well
* Add route and layout for unmatched path
* Add NoMatch to catch missing report pages
* Load WooCommerce Admin scripts on all pages
* Move NoMatch inside default page layout
* Add permission checks to tabs
* Allow update_option_extended_task_list to be called on non-admin pages
* Check for task list task count in extended list update function
* Add changelog entry
* Add PR number to changelog entry
* Remove deprecated extended task list filter and tests
* Move some of the deprecated tasks stuff outside of the main components
* Do not add data to request when no depreciated tasks
* Move possiblePruneTaskData function to the deprecated-tasks class
* Make sure the depreciated onClick is triggered and container is used
* Fix the extended tasks condition
* Add sort by support for task list
* Revert extension example changes back
* Move sorting tasks to the API and add asc/desc support
* Revert extension example changes
* Update sort function naming
* Remove background color from marketing tool list header, increasee padding in plugin list, rearrange list borders.
* Changelog entry for 7642.
* Section heading tweaks: bottom padding, force uppercase.
* Move Marketing task plugin list changes into more specific stylesheet.
* Remove feature flag
* Remove unused task status items
* Remove old task list components
* Remove more unused task status items
* Move completion checking to TaskList class
* Move completion checking to Task class
* Add changelog entry
* Fix up old task-list component references
* Remove flag around slotfill area
* Add back missing task stylesheet
* Move task specific styles to respective fills
* Add PR number to changelog entry
* Add checks for actioned task status
* Update completion logic for task
* Add rest route for actioning tasks
* Add action in data store for actioning tasks
* Add test for actioning task
* Only prune isActioned from task data
* Add extended task list support to the new REST api task lists
* Some small refactors
* Small refactors from PR review
* Create extended tasks on the fly if added on the client
* Remove unneeded change
* Add level and additionalInfo support, also adding it to the WooCommerce Payments task
* Fix a mis-type in a comment
* Add changelog and enable promotion in core and plugin configs
* Add PR number
* Make variation name a constant
* Clone spec as we are overwriting the is_visible prop
* Fix unit tests and support array and object
* Revert explat variation name
* Update changelog entry
* Update changelog once more
* Make sure the recommendations show up if marketplace suggestions is not defined defaulting to 'yes'
* Fix Marketing tools header: add missing page title for marketing task.
* Add changelog.
* Add PR number to changelog entry for issue woocommerce/woocommerce-admin#7548.
Co-authored-by: Jacob Sewell <jacob.sewell@automattic.com>
* Add woocommerce.com data source poller
* Change data source back to .com
* Fix namespace
* Make use of the sub_title prop to display payment cards
* Fix some styling issue and add TS types
* Rename admin script to keep it more generic
* Add br tag as allowed, and update expected data format
* Update styling
* Address PR feedback
* Render psuedo wc pay payment gateway in payment method table
* Fix lint errors
* Fix lint error
* Add setup event and make use of script_assets file
* Left align payment icons
* Fix feature import and update pageview track
* Fix broken test and add an extra one
* Fix payment method ordering persistance
* Remove the use of psuedo and addressed several PR related feedback
* Fix PHP lint errors
* Make sure track props use underscore
* Fix test
* Update comment
* Add await
* 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>
* 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
* 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>
* 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
* 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
* 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