@esri/calcite-components
Version:
Web Components for Esri's Calcite Design System.
96 lines (95 loc) • 3.18 kB
TypeScript
import { EventEmitter } from "../../stencil-public-runtime";
import { FormComponent } from "../../utils/form";
import { InteractiveComponent } from "../../utils/interactive";
import { LabelableComponent } from "../../utils/label";
import { LoadableComponent } from "../../utils/loadable";
import { LocalizedComponent } from "../../utils/locale";
import { T9nComponent } from "../../utils/t9n";
import { Scale } from "../interfaces";
import { RatingMessages } from "./assets/rating/t9n";
export declare class Rating implements LabelableComponent, FormComponent, InteractiveComponent, LoadableComponent, LocalizedComponent, T9nComponent {
el: HTMLCalciteRatingElement;
/** Specifies a cumulative average from previous ratings to display. */
average: number;
/** Specifies the number of previous ratings to display. */
count: number;
/** When `true`, interaction is prevented and the component is displayed with lower opacity. */
disabled: boolean;
/**
* The ID of the form that will be associated with the component.
*
* When not set, the component will be associated with its ancestor form element, if any.
*/
form: string;
/**
* Made into a prop for testing purposes only
*
* @internal
*/
messages: RatingMessages;
/**
* Use this property to override individual strings used by the component.
*/
messageOverrides: Partial<RatingMessages>;
onMessagesChange(): void;
/**
* Specifies the name of the component.
*
* Required to pass the component's `value` on form submission.
*/
name: string;
/** When `true`, the component's value can be read, but cannot be modified. */
readOnly: boolean;
/**
* When `true`, the component must have a value in order for the form to submit.
*
* @internal
*/
required: boolean;
/** Specifies the size of the component. */
scale: Scale;
/** When `true`, and if available, displays the `average` and/or `count` data summary in a `calcite-chip`. */
showChip: boolean;
/** The component's value. */
value: number;
handleValueUpdate(newValue: number): void;
/**
* Fires when the component's value changes.
*/
calciteRatingChange: EventEmitter<void>;
effectiveLocale: string;
effectiveLocaleChange(): void;
defaultMessages: RatingMessages;
hoverValue: number;
focusValue: number;
hasFocus: boolean;
connectedCallback(): void;
componentWillLoad(): Promise<void>;
componentWillRender(): void;
componentDidLoad(): void;
disconnectedCallback(): void;
componentDidRender(): void;
render(): any;
onLabelClick(): void;
private handleRatingPointerOver;
private handleRatingPointerOut;
private handleRatingFocusIn;
private handleRatingFocusLeave;
private handleHostKeyDown;
private handleInputKeyDown;
private handleInputChange;
private handleLabelPointerOver;
private handleLabelPointerDown;
/** Sets focus on the component. */
setFocus(): Promise<void>;
labelEl: HTMLCalciteLabelElement;
formEl: HTMLFormElement;
defaultValue: Rating["value"];
private emit;
private guid;
private inputRefs;
private inputFocusRef;
private isKeyboardInteraction;
private max;
private starsMap;
}