diff --git a/packages/js/customer-effort-score/changelog/update-move-ces-data-store b/packages/js/customer-effort-score/changelog/update-move-ces-data-store new file mode 100644 index 000000000000..b85fbb8d362c --- /dev/null +++ b/packages/js/customer-effort-score/changelog/update-move-ces-data-store @@ -0,0 +1,4 @@ +Significance: minor +Type: dev + +Add CES data store to @woocommerce/customer-effort-score diff --git a/packages/js/customer-effort-score/src/index.ts b/packages/js/customer-effort-score/src/index.ts index 55144d5b4675..d6ef2e56087f 100644 --- a/packages/js/customer-effort-score/src/index.ts +++ b/packages/js/customer-effort-score/src/index.ts @@ -4,5 +4,6 @@ export * from './components/customer-feedback-modal'; export * from './components/product-mvp-feedback-modal'; export * from './components/feedback-modal'; export * from './hooks/use-customer-effort-score-exit-page-tracker'; +export * from './store'; export * from './utils/customer-effort-score-exit-page'; export * from './constants'; diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/data/action-types.js b/packages/js/customer-effort-score/src/store/action-types.js similarity index 100% rename from plugins/woocommerce-admin/client/customer-effort-score-tracks/data/action-types.js rename to packages/js/customer-effort-score/src/store/action-types.js diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/data/actions.js b/packages/js/customer-effort-score/src/store/actions.js similarity index 100% rename from plugins/woocommerce-admin/client/customer-effort-score-tracks/data/actions.js rename to packages/js/customer-effort-score/src/store/actions.js diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/data/constants.js b/packages/js/customer-effort-score/src/store/constants.js similarity index 100% rename from plugins/woocommerce-admin/client/customer-effort-score-tracks/data/constants.js rename to packages/js/customer-effort-score/src/store/constants.js diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/data/index.js b/packages/js/customer-effort-score/src/store/index.js similarity index 80% rename from plugins/woocommerce-admin/client/customer-effort-score-tracks/data/index.js rename to packages/js/customer-effort-score/src/store/index.js index e476479ea886..e05a8637ebc5 100644 --- a/plugins/woocommerce-admin/client/customer-effort-score-tracks/data/index.js +++ b/packages/js/customer-effort-score/src/store/index.js @@ -11,7 +11,9 @@ import * as actions from './actions'; import * as resolvers from './resolvers'; import * as selectors from './selectors'; import reducer from './reducer'; -import { STORE_KEY } from './constants'; +import { QUEUE_OPTION_NAME, STORE_KEY } from './constants'; + +export { QUEUE_OPTION_NAME, STORE_KEY }; export default registerStore( STORE_KEY, { actions, diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/data/reducer.js b/packages/js/customer-effort-score/src/store/reducer.js similarity index 100% rename from plugins/woocommerce-admin/client/customer-effort-score-tracks/data/reducer.js rename to packages/js/customer-effort-score/src/store/reducer.js diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/data/resolvers.js b/packages/js/customer-effort-score/src/store/resolvers.js similarity index 100% rename from plugins/woocommerce-admin/client/customer-effort-score-tracks/data/resolvers.js rename to packages/js/customer-effort-score/src/store/resolvers.js diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/data/selectors.js b/packages/js/customer-effort-score/src/store/selectors.js similarity index 100% rename from plugins/woocommerce-admin/client/customer-effort-score-tracks/data/selectors.js rename to packages/js/customer-effort-score/src/store/selectors.js diff --git a/plugins/woocommerce-admin/client/activity-panel/activity-panel.js b/plugins/woocommerce-admin/client/activity-panel/activity-panel.js index 308cf6009049..d37363e0c7d0 100644 --- a/plugins/woocommerce-admin/client/activity-panel/activity-panel.js +++ b/plugins/woocommerce-admin/client/activity-panel/activity-panel.js @@ -12,6 +12,7 @@ import { import { useSelect, useDispatch } from '@wordpress/data'; import { uniqueId, find } from 'lodash'; import { Icon, help as helpIcon, external } from '@wordpress/icons'; +import { STORE_KEY as CES_STORE_KEY } from '@woocommerce/customer-effort-score'; import { H, Section } from '@woocommerce/components'; import { ONBOARDING_STORE_NAME, @@ -48,7 +49,6 @@ import { useActiveSetupTasklist } from '~/tasks'; import { LayoutContext } from '~/layout'; import { getSegmentsFromPath } from '~/utils/url-helpers'; import { FeedbackIcon } from '~/products/images/feedback-icon'; -import { STORE_KEY as CES_STORE_KEY } from '~/customer-effort-score-tracks/data/constants'; import { ProductFeedbackTour } from '~/guided-tours/add-product-feedback-tour'; const HelpPanel = lazy( () => diff --git a/plugins/woocommerce-admin/client/analytics/components/report-filters/index.js b/plugins/woocommerce-admin/client/analytics/components/report-filters/index.js index 3c4a5b691ef8..c2313f1b4a6b 100644 --- a/plugins/woocommerce-admin/client/analytics/components/report-filters/index.js +++ b/plugins/woocommerce-admin/client/analytics/components/report-filters/index.js @@ -6,6 +6,7 @@ import { compose } from '@wordpress/compose'; import PropTypes from 'prop-types'; import { omitBy, isUndefined, snakeCase } from 'lodash'; import { withSelect, withDispatch } from '@wordpress/data'; +import { STORE_KEY as CES_STORE_KEY } from '@woocommerce/customer-effort-score'; import { ReportFilters as Filters } from '@woocommerce/components'; import { SETTINGS_STORE_NAME } from '@woocommerce/data'; import { @@ -19,7 +20,6 @@ import { CurrencyContext } from '@woocommerce/currency'; /** * Internal dependencies */ -import { STORE_KEY as CES_STORE_KEY } from '../../../customer-effort-score-tracks/data/constants'; import { LOCALE } from '~/utils/admin-settings'; class ReportFilters extends Component { diff --git a/plugins/woocommerce-admin/client/analytics/components/report-table/index.js b/plugins/woocommerce-admin/client/analytics/components/report-table/index.js index 9a40653b9ade..22b5dbe48037 100644 --- a/plugins/woocommerce-admin/client/analytics/components/report-table/index.js +++ b/plugins/woocommerce-admin/client/analytics/components/report-table/index.js @@ -10,6 +10,7 @@ import { withDispatch, withSelect } from '@wordpress/data'; import { get, noop, partial, uniq } from 'lodash'; import { __, sprintf } from '@wordpress/i18n'; import PropTypes from 'prop-types'; +import { STORE_KEY as CES_STORE_KEY } from '@woocommerce/customer-effort-score'; import { CompareButton, Search, TableCard } from '@woocommerce/components'; import { getIdsFromQuery, @@ -39,7 +40,6 @@ import { recordEvent } from '@woocommerce/tracks'; import DownloadIcon from './download-icon'; import ReportError from '../report-error'; import { extendTableData } from './utils'; -import { STORE_KEY as CES_STORE_KEY } from '../../../customer-effort-score-tracks/data/constants'; import './style.scss'; const TABLE_FILTER = 'woocommerce_admin_report_table'; diff --git a/plugins/woocommerce-admin/client/analytics/report/categories/config.js b/plugins/woocommerce-admin/client/analytics/report/categories/config.js index 7db616241922..500a29907a86 100644 --- a/plugins/woocommerce-admin/client/analytics/report/categories/config.js +++ b/plugins/woocommerce-admin/client/analytics/report/categories/config.js @@ -4,12 +4,12 @@ import { __, _x } from '@wordpress/i18n'; import { applyFilters } from '@wordpress/hooks'; import { dispatch } from '@wordpress/data'; +import { STORE_KEY as CES_STORE_KEY } from '@woocommerce/customer-effort-score'; /** * Internal dependencies */ import { getCategoryLabels } from '../../../lib/async-requests'; -import { STORE_KEY as CES_STORE_KEY } from '../../../customer-effort-score-tracks/data/constants'; const CATEGORY_REPORT_CHARTS_FILTER = 'woocommerce_admin_categories_report_charts'; diff --git a/plugins/woocommerce-admin/client/analytics/report/coupons/config.js b/plugins/woocommerce-admin/client/analytics/report/coupons/config.js index 4220e13f0193..5a579020ae81 100644 --- a/plugins/woocommerce-admin/client/analytics/report/coupons/config.js +++ b/plugins/woocommerce-admin/client/analytics/report/coupons/config.js @@ -4,12 +4,12 @@ import { __, _x } from '@wordpress/i18n'; import { applyFilters } from '@wordpress/hooks'; import { dispatch } from '@wordpress/data'; +import { STORE_KEY as CES_STORE_KEY } from '@woocommerce/customer-effort-score'; /** * Internal dependencies */ import { getCouponLabels } from '../../../lib/async-requests'; -import { STORE_KEY as CES_STORE_KEY } from '../../../customer-effort-score-tracks/data/constants'; const COUPON_REPORT_CHARTS_FILTER = 'woocommerce_admin_coupons_report_charts'; const COUPON_REPORT_FILTERS_FILTER = 'woocommerce_admin_coupons_report_filters'; diff --git a/plugins/woocommerce-admin/client/analytics/report/products/config.js b/plugins/woocommerce-admin/client/analytics/report/products/config.js index 1097ff28b962..320789d47a18 100644 --- a/plugins/woocommerce-admin/client/analytics/report/products/config.js +++ b/plugins/woocommerce-admin/client/analytics/report/products/config.js @@ -4,6 +4,7 @@ import { __, _x } from '@wordpress/i18n'; import { applyFilters } from '@wordpress/hooks'; import { dispatch } from '@wordpress/data'; +import { STORE_KEY as CES_STORE_KEY } from '@woocommerce/customer-effort-score'; /** * Internal dependencies @@ -12,7 +13,6 @@ import { getProductLabels, getVariationLabels, } from '../../../lib/async-requests'; -import { STORE_KEY as CES_STORE_KEY } from '../../../customer-effort-score-tracks/data/constants'; const PRODUCTS_REPORT_CHARTS_FILTER = 'woocommerce_admin_products_report_charts'; diff --git a/plugins/woocommerce-admin/client/analytics/report/taxes/config.js b/plugins/woocommerce-admin/client/analytics/report/taxes/config.js index 492786800210..df83105cda1a 100644 --- a/plugins/woocommerce-admin/client/analytics/report/taxes/config.js +++ b/plugins/woocommerce-admin/client/analytics/report/taxes/config.js @@ -3,6 +3,7 @@ */ import { __, _x } from '@wordpress/i18n'; import { applyFilters } from '@wordpress/hooks'; +import { STORE_KEY as CES_STORE_KEY } from '@woocommerce/customer-effort-score'; import { NAMESPACE } from '@woocommerce/data'; import { dispatch } from '@wordpress/data'; @@ -11,7 +12,6 @@ import { dispatch } from '@wordpress/data'; */ import { getRequestByIdString } from '../../../lib/async-requests'; import { getTaxCode } from './utils'; -import { STORE_KEY as CES_STORE_KEY } from '../../../customer-effort-score-tracks/data/constants'; const TAXES_REPORT_CHARTS_FILTER = 'woocommerce_admin_taxes_report_charts'; const TAXES_REPORT_FILTERS_FILTER = 'woocommerce_admin_taxes_report_filters'; diff --git a/plugins/woocommerce-admin/client/analytics/report/variations/config.js b/plugins/woocommerce-admin/client/analytics/report/variations/config.js index f53dee1e713b..2aaa20dbc80b 100644 --- a/plugins/woocommerce-admin/client/analytics/report/variations/config.js +++ b/plugins/woocommerce-admin/client/analytics/report/variations/config.js @@ -4,6 +4,7 @@ import { __, _x } from '@wordpress/i18n'; import { applyFilters } from '@wordpress/hooks'; import { dispatch } from '@wordpress/data'; +import { STORE_KEY as CES_STORE_KEY } from '@woocommerce/customer-effort-score'; /** * Internal dependencies @@ -13,7 +14,6 @@ import { getProductLabels, getVariationLabels, } from '../../../lib/async-requests'; -import { STORE_KEY as CES_STORE_KEY } from '../../../customer-effort-score-tracks/data/constants'; const VARIATIONS_REPORT_CHARTS_FILTER = 'woocommerce_admin_variations_report_charts'; diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/customer-effort-score-modal-container.tsx b/plugins/woocommerce-admin/client/customer-effort-score-tracks/customer-effort-score-modal-container.tsx index 2e94428c85ef..33b3c9f009c8 100644 --- a/plugins/woocommerce-admin/client/customer-effort-score-tracks/customer-effort-score-modal-container.tsx +++ b/plugins/woocommerce-admin/client/customer-effort-score-tracks/customer-effort-score-modal-container.tsx @@ -3,7 +3,10 @@ */ import { __ } from '@wordpress/i18n'; import { useDispatch, useSelect } from '@wordpress/data'; -import { CustomerFeedbackModal } from '@woocommerce/customer-effort-score'; +import { + CustomerFeedbackModal, + STORE_KEY, +} from '@woocommerce/customer-effort-score'; import { recordEvent } from '@woocommerce/tracks'; import { OPTIONS_STORE_NAME } from '@woocommerce/data'; @@ -12,7 +15,6 @@ import { OPTIONS_STORE_NAME } from '@woocommerce/data'; */ import { getStoreAgeInWeeks } from './utils'; import { ADMIN_INSTALL_TIMESTAMP_OPTION_NAME } from './constants'; -import { STORE_KEY } from './data/constants'; export const PRODUCT_MVP_CES_ACTION_OPTION_NAME = 'woocommerce_ces_product_mvp_ces_action'; diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/customer-effort-score-tracks-container.js b/plugins/woocommerce-admin/client/customer-effort-score-tracks/customer-effort-score-tracks-container.js index 017748e52fac..b1b2b84e297e 100644 --- a/plugins/woocommerce-admin/client/customer-effort-score-tracks/customer-effort-score-tracks-container.js +++ b/plugins/woocommerce-admin/client/customer-effort-score-tracks/customer-effort-score-tracks-container.js @@ -4,6 +4,10 @@ import { useEffect } from 'react'; import { compose } from '@wordpress/compose'; import { withDispatch, withSelect } from '@wordpress/data'; +import { + QUEUE_OPTION_NAME, + STORE_KEY, +} from '@woocommerce/customer-effort-score'; import { OPTIONS_STORE_NAME } from '@woocommerce/data'; import PropTypes from 'prop-types'; @@ -11,8 +15,6 @@ import PropTypes from 'prop-types'; * Internal dependencies */ import CustomerEffortScoreTracks from './customer-effort-score-tracks'; -import { STORE_KEY, QUEUE_OPTION_NAME } from './data/constants'; -import './data'; /** * Maps the queue of CES tracks surveys to CustomerEffortScoreTracks diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/product-mvp-ces-footer.tsx b/plugins/woocommerce-admin/client/customer-effort-score-tracks/product-mvp-ces-footer.tsx index d46f06190d2f..c98140472163 100644 --- a/plugins/woocommerce-admin/client/customer-effort-score-tracks/product-mvp-ces-footer.tsx +++ b/plugins/woocommerce-admin/client/customer-effort-score-tracks/product-mvp-ces-footer.tsx @@ -7,7 +7,10 @@ import { useDispatch, useSelect } from '@wordpress/data'; import { closeSmall } from '@wordpress/icons'; import { WooFooterItem } from '@woocommerce/admin-layout'; import { Pill } from '@woocommerce/components'; -import { ALLOW_TRACKING_OPTION_NAME } from '@woocommerce/customer-effort-score'; +import { + ALLOW_TRACKING_OPTION_NAME, + STORE_KEY, +} from '@woocommerce/customer-effort-score'; import { OPTIONS_STORE_NAME } from '@woocommerce/data'; /** @@ -15,7 +18,6 @@ import { OPTIONS_STORE_NAME } from '@woocommerce/data'; */ import './product-mvp-ces-footer.scss'; import { SHOWN_FOR_ACTIONS_OPTION_NAME } from './constants'; -import { STORE_KEY } from './data/constants'; export const PRODUCT_MVP_CES_ACTION_OPTION_NAME = 'woocommerce_ces_product_mvp_ces_action'; diff --git a/plugins/woocommerce-admin/client/customer-effort-score-tracks/product-mvp-feedback-modal-container.tsx b/plugins/woocommerce-admin/client/customer-effort-score-tracks/product-mvp-feedback-modal-container.tsx index 6dd829701ee6..27b8d0f9f0af 100644 --- a/plugins/woocommerce-admin/client/customer-effort-score-tracks/product-mvp-feedback-modal-container.tsx +++ b/plugins/woocommerce-admin/client/customer-effort-score-tracks/product-mvp-feedback-modal-container.tsx @@ -2,17 +2,15 @@ * External dependencies */ import { useDispatch, useSelect } from '@wordpress/data'; -import { ProductMVPFeedbackModal } from '@woocommerce/customer-effort-score'; +import { + ProductMVPFeedbackModal, + STORE_KEY, +} from '@woocommerce/customer-effort-score'; import { recordEvent } from '@woocommerce/tracks'; import { getAdminLink } from '@woocommerce/settings'; import { useFormContext } from '@woocommerce/components'; import { Product } from '@woocommerce/data'; -/** - * Internal dependencies - */ -import { STORE_KEY } from './data/constants'; - export const ProductMVPFeedbackModalContainer: React.FC = () => { const { values } = useFormContext< Product >(); const { hideProductMVPFeedbackModal } = useDispatch( STORE_KEY ); diff --git a/plugins/woocommerce-admin/client/products/product-more-menu.tsx b/plugins/woocommerce-admin/client/products/product-more-menu.tsx index 038239d58f7d..a5e38a85718a 100644 --- a/plugins/woocommerce-admin/client/products/product-more-menu.tsx +++ b/plugins/woocommerce-admin/client/products/product-more-menu.tsx @@ -9,14 +9,16 @@ import { getAdminLink } from '@woocommerce/settings'; import { moreVertical } from '@wordpress/icons'; import { OPTIONS_STORE_NAME, Product } from '@woocommerce/data'; import { useFormContext } from '@woocommerce/components'; -import { ALLOW_TRACKING_OPTION_NAME } from '@woocommerce/customer-effort-score'; +import { + ALLOW_TRACKING_OPTION_NAME, + STORE_KEY as CES_STORE_KEY, +} from '@woocommerce/customer-effort-score'; /** * Internal dependencies */ import { ClassicEditorIcon } from './images/classic-editor-icon'; import { FeedbackIcon } from './images/feedback-icon'; -import { STORE_KEY as CES_STORE_KEY } from '~/customer-effort-score-tracks/data/constants'; import { NEW_PRODUCT_MANAGEMENT } from '~/customer-effort-score-tracks/product-mvp-ces-footer'; import './product-more-menu.scss'; diff --git a/plugins/woocommerce/changelog/update-move-ces-data-store b/plugins/woocommerce/changelog/update-move-ces-data-store new file mode 100644 index 000000000000..b85fbb8d362c --- /dev/null +++ b/plugins/woocommerce/changelog/update-move-ces-data-store @@ -0,0 +1,4 @@ +Significance: minor +Type: dev + +Add CES data store to @woocommerce/customer-effort-score