Skip to content
Merged
Show file tree
Hide file tree
Changes from 20 commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
697fc7f
Initial plan
Copilot Dec 9, 2025
082945d
test: add visual regression baseline for atomic-facet-number-input (S…
Copilot Dec 9, 2025
121a394
feat(atomic): migrate atomic-facet-number-input to Lit (Step 1)
Copilot Dec 9, 2025
c9c545f
test(atomic): add unit tests for atomic-facet-number-input (Step 2)
Copilot Dec 9, 2025
e4fc3af
test(atomic): add E2E tests for number input functionality (Step 4)
Copilot Dec 9, 2025
5972cec
test(atomic): add validation tests and analyze Cypress (Step 6)
Copilot Dec 9, 2025
28f6e6d
unit tests
jmazzah-coveo Dec 11, 2025
b4ef18d
migrated component
jmazzah-coveo Dec 11, 2025
92cf327
removed stencil version
jmazzah-coveo Dec 11, 2025
d570f0e
removed pcss file
jmazzah-coveo Dec 11, 2025
e436aa6
fixed console error for initialization
jmazzah-coveo Dec 11, 2025
36888ab
Add generated files
developer-experience-bot[bot] Dec 11, 2025
60e5a57
Merge branch 'main' into copilot/migrate-atomic-facet-number-input
jmazzah-coveo Dec 12, 2025
c542bc4
Add generated files
developer-experience-bot[bot] Dec 12, 2025
137302b
removed visual regression
jmazzah-coveo Dec 16, 2025
d2dcf17
removed snapshot
jmazzah-coveo Dec 16, 2025
b7579ba
Merge branch 'copilot/migrate-atomic-facet-number-input' of https://g…
jmazzah-coveo Dec 16, 2025
9ff7ac4
Merge branch 'main' into copilot/migrate-atomic-facet-number-input
jmazzah-coveo Dec 16, 2025
78ea5b4
Add generated files
developer-experience-bot[bot] Dec 16, 2025
da77ec2
Added input validation tests
jmazzah-coveo Dec 16, 2025
fb769ed
using CreateRef
jmazzah-coveo Dec 18, 2025
467094f
Merge branch 'main' into copilot/migrate-atomic-facet-number-input
jmazzah-coveo Dec 18, 2025
3f402e3
Add generated files
developer-experience-bot[bot] Dec 18, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 6 additions & 57 deletions packages/atomic/src/components.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,32 @@
* It contains typing information for all components that exist in this project.
*/
import { HTMLStencilElement, JSXBase } from "@stencil/core/internal";
import { DateFilterRange, DateRangeRequest, FacetResultsMustMatch, FacetSortCriterion, GeneratedAnswer, GeneratedAnswerCitation, InlineLink, InteractiveCitation, NumericFilter, NumericFilterState, RangeFacetRangeAlgorithm, RangeFacetSortCriterion, RelativeDateUnit, Result, ResultTemplate, ResultTemplateCondition } from "@coveo/headless";
import { AnyBindings } from "./components/common/interface/bindings";
import { NumberInputType } from "./components/common/facets/facet-number-input/number-input-type";
import { DateFilterRange, DateRangeRequest, FacetResultsMustMatch, FacetSortCriterion, GeneratedAnswer, GeneratedAnswerCitation, InlineLink, InteractiveCitation, RangeFacetRangeAlgorithm, RangeFacetSortCriterion, RelativeDateUnit, Result, ResultTemplate, ResultTemplateCondition } from "@coveo/headless";
import { FacetSortCriterion as InsightFacetSortCriterion, FoldedResult as InsightFoldedResult, InteractiveResult as InsightInteractiveResult, RangeFacetRangeAlgorithm as InsightRangeFacetRangeAlgorithm, RangeFacetSortCriterion as InsightRangeFacetSortCriterion, Result as InsightResult, ResultTemplate as InsightResultTemplate, ResultTemplateCondition as InsightResultTemplateCondition, UserAction as IUserAction } from "@coveo/headless/insight";
import { ItemDisplayBasicLayout, ItemDisplayDensity, ItemDisplayImageSize, ItemDisplayLayout } from "./components/common/layout/display-options";
import { ItemRenderingFunction } from "./components/common/item-list/stencil-item-list-common";
import { NumberInputType } from "./components/common/facets/facet-number-input/number-input-type";
import { InsightStore } from "./components/insight/atomic-insight-interface/store";
import { Actions, InsightResultActionClickedEvent } from "./components/insight/atomic-insight-result-action/atomic-insight-result-action";
import { InsightResultAttachToCaseEvent } from "./components/insight/atomic-insight-result-attach-to-case-action/atomic-insight-result-attach-to-case-action";
import { InteractiveResult as RecsInteractiveResult, Result as RecsResult, ResultTemplate as RecsResultTemplate, ResultTemplateCondition as RecsResultTemplateCondition } from "@coveo/headless/recommendation";
import { RecsStore } from "./components/recommendations/atomic-recs-interface/store";
import { RedirectionPayload } from "./components/common/search-box/redirection-payload";
import { AnyBindings } from "./components/common/interface/bindings";
import { i18n } from "i18next";
import { SearchBoxSuggestionElement } from "./components/common/suggestions/suggestions-types";
export { DateFilterRange, DateRangeRequest, FacetResultsMustMatch, FacetSortCriterion, GeneratedAnswer, GeneratedAnswerCitation, InlineLink, InteractiveCitation, NumericFilter, NumericFilterState, RangeFacetRangeAlgorithm, RangeFacetSortCriterion, RelativeDateUnit, Result, ResultTemplate, ResultTemplateCondition } from "@coveo/headless";
export { AnyBindings } from "./components/common/interface/bindings";
export { NumberInputType } from "./components/common/facets/facet-number-input/number-input-type";
export { DateFilterRange, DateRangeRequest, FacetResultsMustMatch, FacetSortCriterion, GeneratedAnswer, GeneratedAnswerCitation, InlineLink, InteractiveCitation, RangeFacetRangeAlgorithm, RangeFacetSortCriterion, RelativeDateUnit, Result, ResultTemplate, ResultTemplateCondition } from "@coveo/headless";
export { FacetSortCriterion as InsightFacetSortCriterion, FoldedResult as InsightFoldedResult, InteractiveResult as InsightInteractiveResult, RangeFacetRangeAlgorithm as InsightRangeFacetRangeAlgorithm, RangeFacetSortCriterion as InsightRangeFacetSortCriterion, Result as InsightResult, ResultTemplate as InsightResultTemplate, ResultTemplateCondition as InsightResultTemplateCondition, UserAction as IUserAction } from "@coveo/headless/insight";
export { ItemDisplayBasicLayout, ItemDisplayDensity, ItemDisplayImageSize, ItemDisplayLayout } from "./components/common/layout/display-options";
export { ItemRenderingFunction } from "./components/common/item-list/stencil-item-list-common";
export { NumberInputType } from "./components/common/facets/facet-number-input/number-input-type";
export { InsightStore } from "./components/insight/atomic-insight-interface/store";
export { Actions, InsightResultActionClickedEvent } from "./components/insight/atomic-insight-result-action/atomic-insight-result-action";
export { InsightResultAttachToCaseEvent } from "./components/insight/atomic-insight-result-attach-to-case-action/atomic-insight-result-attach-to-case-action";
export { InteractiveResult as RecsInteractiveResult, Result as RecsResult, ResultTemplate as RecsResultTemplate, ResultTemplateCondition as RecsResultTemplateCondition } from "@coveo/headless/recommendation";
export { RecsStore } from "./components/recommendations/atomic-recs-interface/store";
export { RedirectionPayload } from "./components/common/search-box/redirection-payload";
export { AnyBindings } from "./components/common/interface/bindings";
export { i18n } from "i18next";
export { SearchBoxSuggestionElement } from "./components/common/suggestions/suggestions-types";
export namespace Components {
Expand Down Expand Up @@ -81,16 +81,6 @@ export namespace Components {
*/
"sendHoverEndEvent": (citationHoverTimeMs: number) => void;
}
/**
* Internal component made to be integrated in a NumericFacet.
*/
interface AtomicFacetNumberInput {
"bindings": AnyBindings;
"filter": NumericFilter;
"filterState": NumericFilterState;
"label": string;
"type": NumberInputType;
}
/**
* Internal component, only to use through `atomic-generated-answer` or `atomic-insight-generated-answer`
*/
Expand Down Expand Up @@ -1296,10 +1286,6 @@ export namespace Components {
"withDatePicker": boolean;
}
}
export interface AtomicFacetNumberInputCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLAtomicFacetNumberInputElement;
}
export interface AtomicGeneratedAnswerFeedbackModalCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLAtomicGeneratedAnswerFeedbackModalElement;
Expand Down Expand Up @@ -1384,26 +1370,6 @@ declare global {
prototype: HTMLAtomicCitationElement;
new (): HTMLAtomicCitationElement;
};
interface HTMLAtomicFacetNumberInputElementEventMap {
"atomic/numberInputApply": any;
}
/**
* Internal component made to be integrated in a NumericFacet.
*/
interface HTMLAtomicFacetNumberInputElement extends Components.AtomicFacetNumberInput, HTMLStencilElement {
addEventListener<K extends keyof HTMLAtomicFacetNumberInputElementEventMap>(type: K, listener: (this: HTMLAtomicFacetNumberInputElement, ev: AtomicFacetNumberInputCustomEvent<HTMLAtomicFacetNumberInputElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof HTMLAtomicFacetNumberInputElementEventMap>(type: K, listener: (this: HTMLAtomicFacetNumberInputElement, ev: AtomicFacetNumberInputCustomEvent<HTMLAtomicFacetNumberInputElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
var HTMLAtomicFacetNumberInputElement: {
prototype: HTMLAtomicFacetNumberInputElement;
new (): HTMLAtomicFacetNumberInputElement;
};
interface HTMLAtomicGeneratedAnswerFeedbackModalElementEventMap {
"feedbackSent": any;
}
Expand Down Expand Up @@ -2087,7 +2053,6 @@ declare global {
interface HTMLElementTagNameMap {
"atomic-automatic-facet-generator": HTMLAtomicAutomaticFacetGeneratorElement;
"atomic-citation": HTMLAtomicCitationElement;
"atomic-facet-number-input": HTMLAtomicFacetNumberInputElement;
"atomic-generated-answer-feedback-modal": HTMLAtomicGeneratedAnswerFeedbackModalElement;
"atomic-insight-edit-toggle": HTMLAtomicInsightEditToggleElement;
"atomic-insight-facet": HTMLAtomicInsightFacetElement;
Expand Down Expand Up @@ -2202,17 +2167,6 @@ declare namespace LocalJSX {
*/
"sendHoverEndEvent": (citationHoverTimeMs: number) => void;
}
/**
* Internal component made to be integrated in a NumericFacet.
*/
interface AtomicFacetNumberInput {
"bindings": AnyBindings;
"filter": NumericFilter;
"filterState": NumericFilterState;
"label": string;
"onAtomic/numberInputApply"?: (event: AtomicFacetNumberInputCustomEvent<any>) => void;
"type": NumberInputType;
}
/**
* Internal component, only to use through `atomic-generated-answer` or `atomic-insight-generated-answer`
*/
Expand Down Expand Up @@ -3398,7 +3352,6 @@ declare namespace LocalJSX {
interface IntrinsicElements {
"atomic-automatic-facet-generator": AtomicAutomaticFacetGenerator;
"atomic-citation": AtomicCitation;
"atomic-facet-number-input": AtomicFacetNumberInput;
"atomic-generated-answer-feedback-modal": AtomicGeneratedAnswerFeedbackModal;
"atomic-insight-edit-toggle": AtomicInsightEditToggle;
"atomic-insight-facet": AtomicInsightFacet;
Expand Down Expand Up @@ -3483,10 +3436,6 @@ declare module "@stencil/core" {
* Internal component, only to use through `atomic-generated-answer` or `atomic-insight-generated-answer`
*/
"atomic-citation": LocalJSX.AtomicCitation & JSXBase.HTMLAttributes<HTMLAtomicCitationElement>;
/**
* Internal component made to be integrated in a NumericFacet.
*/
"atomic-facet-number-input": LocalJSX.AtomicFacetNumberInput & JSXBase.HTMLAttributes<HTMLAtomicFacetNumberInputElement>;
/**
* Internal component, only to use through `atomic-generated-answer` or `atomic-insight-generated-answer`
*/
Expand Down
Loading
Loading