* 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
* Allow initial selection of items in SelectControl
* Update stories to include initially selected items
* Add changelog entry
* Update combobox single selected item name
* 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 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 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
* Add getItemsTotalCount to crud data store
* Add changelog
* Make getTotalItemsCount more generic
* Rename total count resource name function, and add resolver for getTotalCount
* Remove deprecated data-controls function
* Add defaultArgs option for applyNamespace
* 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>
* Unify test spec helpers `export` syntax to ESM,
to make it possible to impor them locally.
* Unify import syntax to ESM
* Install missing dependencies of admin-e2e-tests
* Do not import `expect` from `@jest/globals` in admin-e2e-tests
Let typescript pick the puppeteer extension from global.
Address https://github.com/woocommerce/woocommerce/pull/33901#issuecomment-1221650234
* Map unknown types in `admin-e2e-tests` to make tsc happy.
* Add changelog entry
* Use the angle-bracket syntax instead of type assertions
Address https://github.com/woocommerce/woocommerce/pull/33901#discussion_r955591953
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@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>
* Added new command to set up the local environment with COT enabled.
* Removed new file added to e2e-environment, which we will no longer be using.
Co-authored-by: jamelreid <jnoelreid@gmail.com>
* add tests for shipping zone regions
* add changelog file
* add changelog file
* update files to disable use of linting rules via .elintrc.js rather than .eslintrc
Co-authored-by: Greg <zhongruige@gmail.com>
* Migrate woo data navigation store to TS
* Add changelog
* Fix action type
* Update packages/js/data/src/navigation/reducer.ts
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Add a doc comment to MenuItem type
Co-authored-by: Ilyas Foo <foo.ilyas@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
* 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
* 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
* 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
* First draft of product categories datastore changes.
Heavily based on product shipping classes code.
* Fix constant name in product categories data store index.
* Create changelog for 33464/33984.
* Move changelog to correct folder.
* Remove redundant context param in product categories Query (already in BaseQueryParams).
* Apply Partial to BaseQueryParams.
* 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>
* 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
* Add product attribute terms store
* Add ability to add params to URL
* Allow IdQuery for all crud functions
* Add tests around item parent keys
* Add tests around new utils
* Throw error when not all params are replaced in REST URL
* Add require attributes for terms
* Allow urlParameters to be specified
* Use namespace to detect url parameters
* Fix up selector return after applying namespace
* Clean queries to prevent sending URL param data to endpoint
* Add tests around new utils
* Remove unused method import
* Remove urlParameters argument no longer being used
* Add changelog entry
* Allow IDs to be numbers or strings
* Add product tags data store
* Remove duplicate IdType
* Add required fields
* Add changelog entry
* Prefix new data stores with EXPERIMENTAL_
* Add preloadOptions.woocommerce_admin_install_timestamp to wcSettings.admin definition in explat client.
* Add woo_wcadmin_install_timestamp to explat client queryArgs.
* Add checking for woo_wcadmin_install_timestamp in request args to explat fetch tests.
* Changelog for 33331/33574.
* 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
* Add initial shipping classes data store
* Add types for the product shipping class store
* Filter out undefined items in list for when an item is deleted
* Add changelog
* Add data store README
* Rename and export selectors for easier typing
* Add CRUD action and selector type mapping
* Add product attribute types
* Separate getItem to provide correct return type
* Rename config to type
* Add generator return types
* Bump `@wordpress/e2e-test-utils` from `4.16.1` to `wp-5.8`
which resolves currently to `5.3.2`,
to match minimum required WordPress version.
* Add changelog entry
* 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>
* Alphabetize reducer
* Add create and update methods
* Add named dispatch actions
* Update data store tests
* Update readme to include dispatch action examples
* Add missing reducer type for update item error
* Fix whitespace issues
* Add initial get list data store methods
* Add product attributes data store
* Add method to retrieve single item resource
* Update use of endpoint to namespace
* Update resources naming to items to reduce ambiguity
* Use destructured object as argument for creators
* Move data store under the products namespace
* Add some tests around data store method creation
* Add readme for crud data store setup
* Add changelog entry
* Alphabetize method names
* Fix getItems selector resource name
* Remove unused vars
* Migrate wc.data user and use-select-with-refresh to TS
* Add changelog
* Update interval type
* Add doc comment
* Update use-user-preferences.ts test doc comment
* 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 update product actions to product data store
* Add changelog entry
* Use MutableProperties for update data
* Omit read only properties instead of picking mutable properties
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.
* Add e2e tests to check consistency in shipping costs for cart and checkout pages
Goal of these tests it to check if the cart and checkout pages are
consistent in calculuating shipping costs. Three tests added:
- shipping available to country with states
- shipping available to country without states
- no shipping available (fails, see issue #33205)
Reason to add these tests is PR #25916, which reverted PR #25128,
because the original PR worked for the cart page, but not for the
checkout page.
* Update e2e-core-tests changelog
* Skip failing e2e-core-test
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.
* Separate job for api test
* Remove unnecessary comment
* Use ubuntu 20.04 in job "publish-test-report"
* Simplify syntax in "if" condition
* Temporarily add push trigger for testing
* Temporarily disable running jest e2e tests for testing
* Remove unnecessary OR operator
* try: disable certain jobs for testing
* try: run 'hello' api test for testing
* Implement timeout override in API tests
* Allow workflow to override timeout of api tests
* Correct parsing of timeout override
* try: temporarily disable e2e job
* try: make api test verbose for troubleshooting
* try: temporarily disable some install steps for testing
* Correct smoke test env vars
* try: run all api tests
* Re-enable install-build steps
* Correct smoke test env var values
* Temporarily disable running all e2e tests after WC upgrade
* Remove unnecessary flag for daily smoke test runs
* Use different workflow for publishing daily smoke test report
* Use env vars instead of github expressions in accessing job outputs
* Correct multiline syntax
* Correct api_artifact input value
* Take only the first line of commit message
* Correct passing of input value
* Re-enable jobs before submitting for review
* Separate job for api test
* Remove unnecessary comment
* Use ubuntu 20.04 in job "publish-test-report"
* Simplify syntax in "if" condition
* Temporarily add push trigger for testing
* Temporarily disable running jest e2e tests for testing
* Remove unnecessary OR operator
* try: disable certain jobs for testing
* try: run 'hello' api test for testing
* Implement timeout override in API tests
* Allow workflow to override timeout of api tests
* Correct parsing of timeout override
* try: temporarily disable e2e job
* try: make api test verbose for troubleshooting
* try: temporarily disable some install steps for testing
* Correct smoke test env vars
* try: run all api tests
* Re-enable install-build steps
* Correct smoke test env var values
* Temporarily disable running all e2e tests after WC upgrade
* Remove unnecessary flag for daily smoke test runs
* Use different workflow for publishing daily smoke test report
* Use env vars instead of github expressions in accessing job outputs
* Correct multiline syntax
* Correct api_artifact input value
* Take only the first line of commit message
* Correct passing of input value
* Re-enable jobs before submitting for review
* Add push trigger for final testing
* Re-enable e2e tests, remove push trigger before merge
* Fix spacing
* Correct slack channel id
* Add initial Order redux store
* Add unit tests for orders store
* Update fetch with headers to parse error
* Update action names, and consolidate request function
* Add chnagelog
* Update resolver to always include id and update reducer to prevent data overwrite
* initial commit
* 1.1.0
* Add additional files
* 1.2.0
* Add sass file and comment to webpack.config.js
* 1.3.0
* Use pascal case for class name
* 1.4.0
* Add package lock
* Add gitignore
* Add plugin header
* 1.5.0
* Add actions to initialise class
* 1.6.0
* Fix issue with __FILE__ and version constant
* 1.7.0
* Add scripts to package.lock.json
* 1.8.0
* Move scripts to src and remove package.json template
* 1.9.0
* Add JS script in root of src folder
* 1.10.0
* Add correct directory to JS script
* 1.11.0
* Add correct path to sass loader webpack
* 1.12.0
* 1.13.0
* Remove automattic colour import
* 1.14.0
* update src of scripts
* 1.15.0
* update example data
* 1.16.0
* update example with filters
* 1.17.0
* Add filter for cod payment method
* 1.18.0
* Create README.md
* Update package.json (https://github.com/woocommerce/blocks-template/pull/1)
* Add new file to house the integration class and prevent a fatal error (https://github.com/woocommerce/blocks-template/pull/2)
* 1.19.0
* Update integration to use correct hooks
* 1.20.0
* Include blocks integration file
* 1.21.0
* Remove package lock and update repo references
* Remove gitignore and update README
* Add project.json
* Move package to extend-cart-checkout-block
* Update pnpm lock for new package name
* Add new package name to dependency extraction webpack plugin
* Remove unnecessary config options from webpack.config.js.mustache
* Include npmDevDependencies in defaultValues
* Add changelog for dependency extraction plugin
* Add composer.json for changeglog generation
* Add postinstall script to package.json
* Remove test script from package.json
* Reset package version to 1.0.0
Co-authored-by: Darren Ethier <darren@roughsmootheng.in>
* Removed Jetpack Changelogger from test js packages as they follow another approach for handling changelogs.
* Removed composer.json from api-core-tests, e2e-core-tests, e2e-environmnet and e2e-utils as they are no longer needed.
* Removed postinstall script from api-core-tests, e2e-core-tests, e2e-environment and e2e-utils packages, since they will no longer have a composer.json file.
Thanks to our build orchestration tooling, there is
no reason for us to build all of the packages on
`install`. In cases where `prepare` was used to
build before packaging, this changes it to
`prepack` so it will run only under the correct
circumstances.