* 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
* Switch DateTimePickerControl to use InputControl instead of DateInput
* Add label, placeholder, help props to DateTimePickerControl
* Clean up DateTimePickerControl storybook stories
* Add additional tests for DateTimePickerControl
* Debounce changes in input for DateTimePickerControl
* Add key event handlers
* Track selected item and focus
* Fix selected indexes on up down selection and drop
* Consolidate update item order logic
* Hide horizontal items on drag
* Update naming of ordering persistence
* Announce keyboard events to screen readers
* Consolidate reset method
* Simplify drop index numbers and conditions
* Fix up announcements
* Add tests around new utils
* Fall back for item name in announcement from aria label or alt text
* Update lock file
* Add changelog entry
* Handle PR feedback
* Fix up lock file after rebase
* Update lock file
* Update lock file again
* Update lock file after pnpm7
* Use trunk lock file
* Update lock file with a11y package
* Try new lock file
* Try lock file with pnpm add
* pnpm add from root
* Fix itemToString in SelectControl
* Downgrade a11y to v3.5.0
* Use downshift built in methods to handle selection of items
* Fix menu styling
* Fix removal a11y announcement
* Don't show menu without results
* Fix async example a11y
* Add changelog entry
* Deselect item in state on remove
* Fix formatting issues
* Update lock file
* Update lock file after pnpm7
* Skip lib check breaking oclif build in package-release
* Rebase again and fix up lock file
* Skip lib check in monorepo-merge
* Fix the lock
* Ignore lint
Co-authored-by: Sam Seay <samueljseay@gmail.com>
Co-authored-by: Jonathan Sadowski <sadowski@automattic.com>
* 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
* Fix onChange method, so it contains the newValues object
* Add changelog
* Update storybook to add onChange values
* Update tests and fix onChange isValidForm callback
* Fix radio control example
* Update `jest-puppeteer@5.0.4` (from `4.4.0`)
to be albe to run with jest 28.
* Update `jest` and `ts-jest@^27` (from `25`),
to match `e2e-environment` needs.
* Update api-core-tests' `jest@^27` (from `25`),
to unify the used version across the stack.
* Update e2e-env's `jest@^27` & co. (from `25`),
to unify the used version across the stack.
* Update e2e-env's `@jest/test-sequencer@^27` (from `25`),
to unify the used version across the stack.
* Update admin-e2e-tests' `@jest/globals@^27` (from `26`),
to unify the used version across the stack.
* Update woocommerce's `jest@^27.5.1` (from `25`),
to unify the used version across the stack.
* Replace `mocked` from `ts-jest` to the one from `jest`,
Update `@types/jest@27.4.1` from `27.0.2`.
Try to fix broken tsc build.
* Update `e2e-core-tests`' `@jest/globals@^27.5.1`
from `^26.4.2`.
* Remove changelog entry for bumpin jest in `api-core-tests`
It was already covered in `trunk`.
Addresses https://github.com/woocommerce/woocommerce/pull/34322#discussion_r956019567
* Updated package-lock.yaml
* Updated timeout
* Added changelogs
Co-authored-by: jamelreid <jnoelreid@gmail.com>
* Add GitHub action and pre-push hook for syncpack for react and react-dom
* Fix typo in pre-push script
* Don't execute suggested command to fix mismatches automatically.
* Update react and react-dom to 17.0.2
* Move changelog check to last, so that pre-push still fails if check isn't successful
* Add changelog files
* Correct issue with syncpack.yml referencing an internal action
* Add command to top-level package.json for fixing mismatches
* Update syncpack action to only run when package.json files are affected
* Update workflow to just run syncpack list-mismatches
* Add version pinning to syncpackrc
* Rudimentary functional version of datetimepicker
* Adding changelog
* Adding package changelog
* Making component more than barely functional
* Removing unnecessary export
* Rename directory to date-time-picker
* Add initial story
* Pass datetime to onChange callback
* Localize error string
* Remove initial error prop
* Rename currentDate to initialDate
* Simplify state for selected date
* Add extra stories around component
* Trigger onChange whenever date is changed
* Add readme
* Allow currentDate to be changed via props
* Update readme
* Update name to DateTimePickerControl
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
* 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>
* Add media uploader component
* Expand on mocked examples in storybook
* Add styling
* Move MediaUploder out of index
* Add changelog entry
* Handle PR feedback
* Add readme
* Fix missing media utils types
* Rebase and use variant instead of isSecondary for Button
* Fix up lock file
* Fix up lint errors
* Add initial draggable list component
* Add changelog entry
* Add drag and drop index
* Add util for checking target drop index
* Add handle component
* Rename component to SortableList
* Use dragged list item for placeholder height
* Add onOrderChange prop to subscribde to updates
* Throttle the drag over event
* Add base styles
* Add utils tests
* Add component tests
* Export component
* Update changelog entry
* Add readme
* Escape pipe in readme
* Early draft of SplitButton component.
* Changelog for SplitButton component.
* Rename SplitButton to SplitButtonDropdown, apply styles to address toggle button location/size, take primary button from children.
* Address button variant styles
* Rename 'Default' SplitButtonDropdown story to 'Secondary' for clarity.
* Add a SplitButtonDropdown story where the component is disabled.
* README for SplitButtonDropdown component.
* Add disabled prop to SplitButtonDropdown README.
* Add a SplitButtonDropdown story where some but not all actions are disabled.
* Restore PrimaryDisabled story for SplitButtonDropdown.
* Reorganize SplitButtonDropdown properties inheritance to allow both disabled and variant to apply to both the main and toggle buttons.
* Rename SplitButtonDropdown to SplitDropdown.
* Hardcode menuIcon and menuIconExpanded in SplitDropdown.
* Fix outdated stylesheet import for SplitDropdown.
* Update SplitDropdown changelog to new component name.
* Update variable names that reference Actions to Items.
* Hardcode expanded/collapsed toggle button icons without extraneous const declarations.
* Use classNames() helper fn for className concatenation.
* Increase width of SplitDropdown toggle button.
* Add a specific className to the root ButtonGroup element of SplitDropdown.
* Simple rendering test for SplitDropdown.
* For consistency, move Button text out of props in SplitDropdown README and story.
* SplitDropdown does not render a toggle button if there is nothing to put in the menu.
* Fix variant prop type declaration in SplitDropdown.
* Improve SplitDropdown test: remove snapshot, add toggle click.
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
* 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
* Change package json commands and turbo repo config to allow for greatly simplifying running turbo
* Remove require-turbo script which was causing caching issues
* Colorize CI output from scripts
* Add missing changelog script to extend-cart-checkout-block
* Add a FormContext to the Form component, to prevent the need for property drilling
* Add changelog
* Add PR number to changelog
* Replace some of the unknown types with any types to keep things more generic
* Basic version of CollapsibleContent component
* Adding changelog
* Add story for component
* Update styling to match designs
* Add initially expanded example
Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
* 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
* 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
This replaces all `nx` commands with `turbo` commands and removes Nx from the repository. All of the `project.json` files have been removed and any commands that broke with Turborepo have been adjusted.
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.