2021-02-22 12:10:51 +00:00
|
|
|
import { COLLECTION_SELECTORS } from "../elements/catalog/collection-selectors";
|
Add channel shipping zones (#1015)
* Add naked input option to SingleAutocompleteSelectField and update it's stories
* Add new icons - chevron up, down & trash
* Add deletable item component and stories
* Add card add items footer component to be used in warehouses and product stocks assign
* Update schema and types
* Add shipping zones card components
* Update channel details page form to also include shipping zones
* Update makeTopLevelSearch hook files directory and add getSearchFetchMoreProps function to avoid extracting it manually every time
* Update channels types & fragments
* Move getDefaultNotifierSuccessErrorData function to useNotifier utils, update dir etc., also make order discount provider use it from the new dir
* Add shippinh zone to channel update and create and add shipping zone search
* Update messages
* Fix types
* Fix lint, types etc
* Small refactor from review and quick fix styles of shipping zones card
* Refactor a bit and update snapshots
* Refactor a bit and update snapshots
* Addd / refactor channels availability components
* Add useChannelsWithProductVariants hook with utils and types
* Add / refactor more channels availability components
* Move avatar from table cell avatar to separate component for it to be usable outside of tables
* Add channels with variants logic to product create and update pages & views
* Refactor components to use updated channels availability components
* Remove unnecessary comments
* Update storybook
* Update types
* Update messages
* Fix prices for variants / simple product not uodating properly
* Post merge cleanup, update schema, types, etc.
* Change shipping zone details warehouses card into settings card and add ability to assign channels to shipping zone
* Update types
* Update snapshots
* Fix selecting / deselecting all channels in channels with variants modal
* Fixes after review, some types changes etc.
* Update snapshots
* Small types fixes
* Make price rates views use parent shipping method channels instead of all
* Make price rates views use parent shipping method channels instead of all
* Update types
* Fix bugs
* Fixes after review
* Fix channels availability data submission
* Fix lint
* Fix variant pricing card showing not related channels
* Fixes after review
* Fix types
* Hide unaviable variants in add products to draft order dialog
* Fix channels with variants availability modal showing confirm button as enabled when it shouldn't
* Fix types
* Update semi checked icon to match old designs
* Update types
* Update channels icon in channels with variants availability
* Fix product cypress test after product channels mutation changed
* Fix trash and chevron down colors in dark mode
* Fix shipping zones card footer not updating query after click away
* Fix types in schema, add condition not to display shipping zones select in channel details if all zones have already been selected
* Fix products adding in order draft dialog
* Fix simple productupdate
* Update snapshots after merge with master
* Update messages
* Fix product api request for cypress
* Add missing test id
* Fix selecting if product is simple -> form being submitted with empty data sometimes
* Update snapshots, messages and add fix for invalid date at product update
* Remove unnecessary imports
* Fix failing test in saleor 2552 (#1061)
* fix
* fix
* fix
Co-authored-by: Jakub Majorek <majorek.jakub@gmail.com>
Co-authored-by: Karolina <rakoczy.karolina@gmail.com>
2021-04-14 13:44:25 +00:00
|
|
|
import { PRODUCT_DETAILS } from "../elements/catalog/products/product-details";
|
2021-04-01 12:33:36 +00:00
|
|
|
import { AVAILABLE_CHANNELS_FORM } from "../elements/channels/available-channels-form";
|
|
|
|
import { SELECT_CHANNELS_TO_ASSIGN } from "../elements/channels/select-channels-to-assign";
|
2021-07-05 10:21:35 +00:00
|
|
|
import { ASSIGN_ELEMENTS_SELECTORS } from "../elements/shared/assign-elements-selectors";
|
2021-02-22 12:10:51 +00:00
|
|
|
import { BUTTON_SELECTORS } from "../elements/shared/button-selectors";
|
2021-07-05 10:21:35 +00:00
|
|
|
import { SHARED_ELEMENTS } from "../elements/shared/sharedElements";
|
2021-02-22 12:10:51 +00:00
|
|
|
|
2021-03-12 12:14:18 +00:00
|
|
|
export function createCollection(collectionName, isPublished, channel) {
|
|
|
|
const publishedSelector = isPublished
|
2021-04-01 12:33:36 +00:00
|
|
|
? AVAILABLE_CHANNELS_FORM.radioButtonsValueTrue
|
|
|
|
: AVAILABLE_CHANNELS_FORM.radioButtonsValueFalse;
|
2021-03-12 12:14:18 +00:00
|
|
|
|
|
|
|
cy.get(COLLECTION_SELECTORS.createCollectionButton)
|
|
|
|
.click()
|
|
|
|
.get(COLLECTION_SELECTORS.nameInput)
|
|
|
|
.type(collectionName)
|
2021-04-01 12:33:36 +00:00
|
|
|
.get(AVAILABLE_CHANNELS_FORM.menageChannelsButton)
|
2021-03-12 12:14:18 +00:00
|
|
|
.click()
|
2021-04-01 12:33:36 +00:00
|
|
|
.get(SELECT_CHANNELS_TO_ASSIGN.allChannelsCheckbox)
|
2021-03-12 12:14:18 +00:00
|
|
|
.click();
|
2021-04-01 12:33:36 +00:00
|
|
|
cy.contains(SELECT_CHANNELS_TO_ASSIGN.channelRow, channel.name)
|
|
|
|
.find(SELECT_CHANNELS_TO_ASSIGN.channelCheckbox)
|
2021-03-12 12:14:18 +00:00
|
|
|
.click()
|
|
|
|
.get(BUTTON_SELECTORS.submit)
|
|
|
|
.click()
|
2021-04-01 12:33:36 +00:00
|
|
|
.get(AVAILABLE_CHANNELS_FORM.availableChannel)
|
2021-03-12 12:14:18 +00:00
|
|
|
.click()
|
2021-04-01 12:33:36 +00:00
|
|
|
.get(`${AVAILABLE_CHANNELS_FORM.publishedRadioButtons}${publishedSelector}`)
|
2021-03-12 12:14:18 +00:00
|
|
|
.click();
|
|
|
|
cy.addAliasToGraphRequest("CreateCollection");
|
|
|
|
cy.get(COLLECTION_SELECTORS.saveButton).click();
|
2021-07-05 10:21:35 +00:00
|
|
|
cy.get(SHARED_ELEMENTS.confirmationMsg).should("be.visible");
|
2021-03-12 12:14:18 +00:00
|
|
|
return cy
|
|
|
|
.wait("@CreateCollection")
|
|
|
|
.its("response.body.data.collectionCreate.collection");
|
|
|
|
}
|
|
|
|
export function assignProductsToCollection(productName) {
|
|
|
|
cy.get(COLLECTION_SELECTORS.addProductButton)
|
|
|
|
.click()
|
2021-07-05 10:21:35 +00:00
|
|
|
.get(ASSIGN_ELEMENTS_SELECTORS.searchInput)
|
2021-03-12 12:14:18 +00:00
|
|
|
.type(productName);
|
2021-07-05 10:21:35 +00:00
|
|
|
cy.contains(ASSIGN_ELEMENTS_SELECTORS.tableRow, productName)
|
|
|
|
.find(ASSIGN_ELEMENTS_SELECTORS.checkbox)
|
2021-03-12 12:14:18 +00:00
|
|
|
.click();
|
|
|
|
cy.addAliasToGraphRequest("CollectionAssignProduct");
|
2021-07-05 10:21:35 +00:00
|
|
|
cy.get(ASSIGN_ELEMENTS_SELECTORS.submitButton).click();
|
2021-03-12 12:14:18 +00:00
|
|
|
cy.wait("@CollectionAssignProduct");
|
2021-02-22 12:10:51 +00:00
|
|
|
}
|