From 808f891a7207b396cd5cf8cf305e6266a0776a7c Mon Sep 17 00:00:00 2001 From: ylakhdar Date: Tue, 11 Feb 2025 10:18:02 -0500 Subject: [PATCH] chore(atomic): move `CommerceBindings` type to .ts file (#4937) Just moving type from a .tsx to a .ts file https://coveord.atlassian.net/browse/KIT-3941 --------- Co-authored-by: GitHub Actions Bot <> --- packages/atomic/src/components.d.ts | 6 ++---- .../atomic-commerce-interface.ts | 16 ++++++++++++++++ ... => stencil-atomic-commerce-interface.e2e.ts} | 0 ...tsx => stencil-atomic-commerce-interface.tsx} | 14 ++++---------- 4 files changed, 22 insertions(+), 14 deletions(-) create mode 100644 packages/atomic/src/components/commerce/atomic-commerce-interface/atomic-commerce-interface.ts rename packages/atomic/src/components/commerce/atomic-commerce-interface/e2e/{atomic-commerce-interface.e2e.ts => stencil-atomic-commerce-interface.e2e.ts} (100%) rename packages/atomic/src/components/commerce/atomic-commerce-interface/{atomic-commerce-interface.tsx => stencil-atomic-commerce-interface.tsx} (97%) diff --git a/packages/atomic/src/components.d.ts b/packages/atomic/src/components.d.ts index ee0cadd3f43..0d3460f6d36 100644 --- a/packages/atomic/src/components.d.ts +++ b/packages/atomic/src/components.d.ts @@ -7,10 +7,9 @@ import { HTMLStencilElement, JSXBase } from "@stencil/core/internal"; import { AutomaticFacet, CategoryFacetSortCriterion, DateFilterRange, DateRangeRequest, FacetResultsMustMatch, FacetSortCriterion, FoldedResult, GeneratedAnswer, GeneratedAnswerCitation, InlineLink, InteractiveCitation, InteractiveResult, LogLevel as LogLevel1, RangeFacetRangeAlgorithm, RangeFacetSortCriterion, Result, ResultTemplate, ResultTemplateCondition, SearchEngine, SearchStatus } from "@coveo/headless"; import { CategoryFacet, CommerceEngine, DateFacet, InteractiveProduct, LogLevel, NumericFacet, Product, ProductListing, ProductListingSummaryState, ProductTemplate, ProductTemplateCondition, RegularFacet, Search, SearchSummaryState, Summary } from "@coveo/headless/commerce"; -import { CommerceBindings as Bindings } from "./components/commerce/atomic-commerce-interface/atomic-commerce-interface"; +import { CommerceBindings as Bindings, CommerceInitializationOptions } from "./components/commerce/atomic-commerce-interface/atomic-commerce-interface"; import { Range } from "./components/commerce/facets/facet-number-input/atomic-commerce-facet-number-input"; import { i18n } from "i18next"; -import { CommerceInitializationOptions } from "./components/commerce/atomic-commerce-interface/atomic-commerce-interface"; import { StandaloneSearchBoxData } from "./utils/local-storage-utils"; import { ItemDisplayBasicLayout, ItemDisplayDensity, ItemDisplayImageSize, ItemDisplayLayout } from "./components/common/layout/display-options"; import { ItemRenderingFunction } from "./components/common/item-list/item-list-common"; @@ -39,10 +38,9 @@ import { AriaLabelGenerator as AriaLabelGenerator1 } from "./components/search/s import { InitializationOptions } from "./components/search/atomic-search-interface/atomic-search-interface"; export { AutomaticFacet, CategoryFacetSortCriterion, DateFilterRange, DateRangeRequest, FacetResultsMustMatch, FacetSortCriterion, FoldedResult, GeneratedAnswer, GeneratedAnswerCitation, InlineLink, InteractiveCitation, InteractiveResult, LogLevel as LogLevel1, RangeFacetRangeAlgorithm, RangeFacetSortCriterion, Result, ResultTemplate, ResultTemplateCondition, SearchEngine, SearchStatus } from "@coveo/headless"; export { CategoryFacet, CommerceEngine, DateFacet, InteractiveProduct, LogLevel, NumericFacet, Product, ProductListing, ProductListingSummaryState, ProductTemplate, ProductTemplateCondition, RegularFacet, Search, SearchSummaryState, Summary } from "@coveo/headless/commerce"; -export { CommerceBindings as Bindings } from "./components/commerce/atomic-commerce-interface/atomic-commerce-interface"; +export { CommerceBindings as Bindings, CommerceInitializationOptions } from "./components/commerce/atomic-commerce-interface/atomic-commerce-interface"; export { Range } from "./components/commerce/facets/facet-number-input/atomic-commerce-facet-number-input"; export { i18n } from "i18next"; -export { CommerceInitializationOptions } from "./components/commerce/atomic-commerce-interface/atomic-commerce-interface"; export { StandaloneSearchBoxData } from "./utils/local-storage-utils"; export { ItemDisplayBasicLayout, ItemDisplayDensity, ItemDisplayImageSize, ItemDisplayLayout } from "./components/common/layout/display-options"; export { ItemRenderingFunction } from "./components/common/item-list/item-list-common"; diff --git a/packages/atomic/src/components/commerce/atomic-commerce-interface/atomic-commerce-interface.ts b/packages/atomic/src/components/commerce/atomic-commerce-interface/atomic-commerce-interface.ts new file mode 100644 index 00000000000..22a0fa0c1c4 --- /dev/null +++ b/packages/atomic/src/components/commerce/atomic-commerce-interface/atomic-commerce-interface.ts @@ -0,0 +1,16 @@ +import { + CommerceEngine, + CommerceEngineConfiguration, +} from '@coveo/headless/commerce'; +import {CommonBindings, NonceBindings} from '../../common/interface/bindings'; +import {CommerceStore} from './store'; + +export type CommerceInitializationOptions = CommerceEngineConfiguration; +export type CommerceBindings = CommonBindings< + CommerceEngine, + CommerceStore, + HTMLAtomicCommerceInterfaceElement +> & + NonceBindings; + +// TODO: KIT-3909: create commerce interface element diff --git a/packages/atomic/src/components/commerce/atomic-commerce-interface/e2e/atomic-commerce-interface.e2e.ts b/packages/atomic/src/components/commerce/atomic-commerce-interface/e2e/stencil-atomic-commerce-interface.e2e.ts similarity index 100% rename from packages/atomic/src/components/commerce/atomic-commerce-interface/e2e/atomic-commerce-interface.e2e.ts rename to packages/atomic/src/components/commerce/atomic-commerce-interface/e2e/stencil-atomic-commerce-interface.e2e.ts diff --git a/packages/atomic/src/components/commerce/atomic-commerce-interface/atomic-commerce-interface.tsx b/packages/atomic/src/components/commerce/atomic-commerce-interface/stencil-atomic-commerce-interface.tsx similarity index 97% rename from packages/atomic/src/components/commerce/atomic-commerce-interface/atomic-commerce-interface.tsx rename to packages/atomic/src/components/commerce/atomic-commerce-interface/stencil-atomic-commerce-interface.tsx index 89ee6aa254e..457bd068aea 100644 --- a/packages/atomic/src/components/commerce/atomic-commerce-interface/atomic-commerce-interface.tsx +++ b/packages/atomic/src/components/commerce/atomic-commerce-interface/stencil-atomic-commerce-interface.tsx @@ -6,7 +6,6 @@ import { buildSearch, loadQueryActions, CommerceEngine, - CommerceEngineConfiguration, buildCommerceEngine, buildProductListing, ProductListing, @@ -34,7 +33,6 @@ import { StandaloneSearchBoxData, StorageItems, } from '../../../utils/local-storage-utils'; -import {CommonBindings, NonceBindings} from '../../common/interface/bindings'; import { BaseAtomicInterface, CommonAtomicInterfaceHelper, @@ -45,18 +43,14 @@ import { noProductsSelector, } from '../atomic-commerce-layout/commerce-layout'; import {getAnalyticsConfig} from './analytics-config'; +import { + CommerceBindings, + CommerceInitializationOptions, +} from './atomic-commerce-interface'; import {CommerceStore, createCommerceStore} from './store'; const FirstRequestExecutedFlag = 'firstRequestExecuted'; -export type CommerceInitializationOptions = CommerceEngineConfiguration; -export type CommerceBindings = CommonBindings< - CommerceEngine, - CommerceStore, - HTMLAtomicCommerceInterfaceElement -> & - NonceBindings; - /** * @alpha * The `atomic-commerce-interface` component is the parent to all other atomic commerce components in a commerce page