@@ -9,10 +9,12 @@ import { HeadingLevel } from "./types/index";
99import { BannerType } from "./components/post-banner/banner-types" ;
1010import { SwitchVariant } from "./components/post-language-switch/switch-variants" ;
1111import { Placement } from "@floating-ui/dom" ;
12+ import { Orientation } from "./components/post-slider/orientation" ;
1213export { HeadingLevel } from "./types/index" ;
1314export { BannerType } from "./components/post-banner/banner-types" ;
1415export { SwitchVariant } from "./components/post-language-switch/switch-variants" ;
1516export { Placement } from "@floating-ui/dom" ;
17+ export { Orientation } from "./components/post-slider/orientation" ;
1618export namespace Components {
1719 interface PostAccordion {
1820 /**
@@ -450,6 +452,37 @@ export namespace Components {
450452 */
451453 "stars" : number ;
452454 }
455+ interface PostSlider {
456+ /**
457+ * The greatest value in the range of permitted values.
458+ * @default 100
459+ */
460+ "max" : number ;
461+ /**
462+ * The lowest value in the range of permitted values.
463+ * @default 0
464+ */
465+ "min" : number ;
466+ /**
467+ * The orientation of the slider: "horizontal" or "vertical".
468+ * @default 'horizontal'
469+ */
470+ "orient" : Orientation ;
471+ /**
472+ * If true, the slider has two thumbs allowing for range selection.
473+ * @default false
474+ */
475+ "range" : boolean ;
476+ /**
477+ * The granularity that the value must adhere to.
478+ * @default 1
479+ */
480+ "step" : number | 'any' ;
481+ /**
482+ * The number or range initially selected.
483+ */
484+ "value" ?: number | [ number , number ] ;
485+ }
453486 interface PostTabHeader {
454487 /**
455488 * The name of the panel controlled by the tab header.
@@ -564,6 +597,10 @@ export interface PostRatingCustomEvent<T> extends CustomEvent<T> {
564597 detail : T ;
565598 target : HTMLPostRatingElement ;
566599}
600+ export interface PostSliderCustomEvent < T > extends CustomEvent < T > {
601+ detail : T ;
602+ target : HTMLPostSliderElement ;
603+ }
567604export interface PostTabsCustomEvent < T > extends CustomEvent < T > {
568605 detail : T ;
569606 target : HTMLPostTabsElement ;
@@ -840,6 +877,24 @@ declare global {
840877 prototype : HTMLPostRatingElement ;
841878 new ( ) : HTMLPostRatingElement ;
842879 } ;
880+ interface HTMLPostSliderElementEventMap {
881+ "postInput" : number | [ number , number ] ;
882+ "postChange" : number | [ number , number ] ;
883+ }
884+ interface HTMLPostSliderElement extends Components . PostSlider , HTMLStencilElement {
885+ addEventListener < K extends keyof HTMLPostSliderElementEventMap > ( type : K , listener : ( this : HTMLPostSliderElement , ev : PostSliderCustomEvent < HTMLPostSliderElementEventMap [ K ] > ) => any , options ?: boolean | AddEventListenerOptions ) : void ;
886+ addEventListener < K extends keyof DocumentEventMap > ( type : K , listener : ( this : Document , ev : DocumentEventMap [ K ] ) => any , options ?: boolean | AddEventListenerOptions ) : void ;
887+ addEventListener < K extends keyof HTMLElementEventMap > ( type : K , listener : ( this : HTMLElement , ev : HTMLElementEventMap [ K ] ) => any , options ?: boolean | AddEventListenerOptions ) : void ;
888+ addEventListener ( type : string , listener : EventListenerOrEventListenerObject , options ?: boolean | AddEventListenerOptions ) : void ;
889+ removeEventListener < K extends keyof HTMLPostSliderElementEventMap > ( type : K , listener : ( this : HTMLPostSliderElement , ev : PostSliderCustomEvent < HTMLPostSliderElementEventMap [ K ] > ) => any , options ?: boolean | EventListenerOptions ) : void ;
890+ removeEventListener < K extends keyof DocumentEventMap > ( type : K , listener : ( this : Document , ev : DocumentEventMap [ K ] ) => any , options ?: boolean | EventListenerOptions ) : void ;
891+ removeEventListener < K extends keyof HTMLElementEventMap > ( type : K , listener : ( this : HTMLElement , ev : HTMLElementEventMap [ K ] ) => any , options ?: boolean | EventListenerOptions ) : void ;
892+ removeEventListener ( type : string , listener : EventListenerOrEventListenerObject , options ?: boolean | EventListenerOptions ) : void ;
893+ }
894+ var HTMLPostSliderElement : {
895+ prototype : HTMLPostSliderElement ;
896+ new ( ) : HTMLPostSliderElement ;
897+ } ;
843898 interface HTMLPostTabHeaderElement extends Components . PostTabHeader , HTMLStencilElement {
844899 }
845900 var HTMLPostTabHeaderElement : {
@@ -917,6 +972,7 @@ declare global {
917972 "post-popover" : HTMLPostPopoverElement ;
918973 "post-popovercontainer" : HTMLPostPopovercontainerElement ;
919974 "post-rating" : HTMLPostRatingElement ;
975+ "post-slider" : HTMLPostSliderElement ;
920976 "post-tab-header" : HTMLPostTabHeaderElement ;
921977 "post-tab-panel" : HTMLPostTabPanelElement ;
922978 "post-tabs" : HTMLPostTabsElement ;
@@ -1303,6 +1359,45 @@ declare namespace LocalJSX {
13031359 */
13041360 "stars" ?: number ;
13051361 }
1362+ interface PostSlider {
1363+ /**
1364+ * The greatest value in the range of permitted values.
1365+ * @default 100
1366+ */
1367+ "max" ?: number ;
1368+ /**
1369+ * The lowest value in the range of permitted values.
1370+ * @default 0
1371+ */
1372+ "min" ?: number ;
1373+ /**
1374+ * Event dispatched when a thumb is released after sliding, payload is the current value.
1375+ */
1376+ "onPostChange" ?: ( event : PostSliderCustomEvent < number | [ number , number ] > ) => void ;
1377+ /**
1378+ * Event dispatched while a thumb is sliding, payload is the current value.
1379+ */
1380+ "onPostInput" ?: ( event : PostSliderCustomEvent < number | [ number , number ] > ) => void ;
1381+ /**
1382+ * The orientation of the slider: "horizontal" or "vertical".
1383+ * @default 'horizontal'
1384+ */
1385+ "orient" ?: Orientation ;
1386+ /**
1387+ * If true, the slider has two thumbs allowing for range selection.
1388+ * @default false
1389+ */
1390+ "range" ?: boolean ;
1391+ /**
1392+ * The granularity that the value must adhere to.
1393+ * @default 1
1394+ */
1395+ "step" ?: number | 'any' ;
1396+ /**
1397+ * The number or range initially selected.
1398+ */
1399+ "value" ?: number | [ number , number ] ;
1400+ }
13061401 interface PostTabHeader {
13071402 /**
13081403 * The name of the panel controlled by the tab header.
@@ -1399,6 +1494,7 @@ declare namespace LocalJSX {
13991494 "post-popover" : PostPopover ;
14001495 "post-popovercontainer" : PostPopovercontainer ;
14011496 "post-rating" : PostRating ;
1497+ "post-slider" : PostSlider ;
14021498 "post-tab-header" : PostTabHeader ;
14031499 "post-tab-panel" : PostTabPanel ;
14041500 "post-tabs" : PostTabs ;
@@ -1446,6 +1542,7 @@ declare module "@stencil/core" {
14461542 "post-popover" : LocalJSX . PostPopover & JSXBase . HTMLAttributes < HTMLPostPopoverElement > ;
14471543 "post-popovercontainer" : LocalJSX . PostPopovercontainer & JSXBase . HTMLAttributes < HTMLPostPopovercontainerElement > ;
14481544 "post-rating" : LocalJSX . PostRating & JSXBase . HTMLAttributes < HTMLPostRatingElement > ;
1545+ "post-slider" : LocalJSX . PostSlider & JSXBase . HTMLAttributes < HTMLPostSliderElement > ;
14491546 "post-tab-header" : LocalJSX . PostTabHeader & JSXBase . HTMLAttributes < HTMLPostTabHeaderElement > ;
14501547 "post-tab-panel" : LocalJSX . PostTabPanel & JSXBase . HTMLAttributes < HTMLPostTabPanelElement > ;
14511548 "post-tabs" : LocalJSX . PostTabs & JSXBase . HTMLAttributes < HTMLPostTabsElement > ;
0 commit comments