{"version":3,"file":"timelineScalarControlProps.mjs","names":[],"sources":["../../../src/hooks/core/timelineScalarControlProps.ts"],"sourcesContent":["import type { TimelineControlCommitDetails } from '#react/hooks/core/timelineControlEvents';\n\nexport interface TimelineScalarControlState {\n  label: string;\n  max: number;\n  min: number;\n  step: number;\n  value: number;\n  valueText: string;\n}\n\nexport interface TimelineScalarControlPropsOptions {\n  control: TimelineScalarControlState;\n  setValue: (value: number) => void;\n  commit: (value?: number) => void;\n  getAriaValueText: (value: number) => string;\n  onValueCommitted?: (value: number[], eventDetails?: TimelineControlCommitDetails) => void;\n  onEmptyCommit?: () => void;\n}\n\nexport function createTimelineScalarControlProps({\n  commit,\n  control,\n  getAriaValueText,\n  onEmptyCommit,\n  onValueCommitted,\n  setValue,\n}: TimelineScalarControlPropsOptions) {\n  return {\n    getAriaValueText,\n    rootProps: {\n      min: control.min,\n      max: control.max,\n      step: control.step,\n      value: [control.value],\n      onValueChange: (values: number[]) => {\n        if (values[0] !== undefined) {\n          setValue(values[0]);\n        }\n      },\n      onValueCommitted: (values: number[], eventDetails?: TimelineControlCommitDetails) => {\n        if (values[0] !== undefined) {\n          commit(values[0]);\n        } else {\n          onEmptyCommit?.();\n        }\n        onValueCommitted?.(values, eventDetails);\n      },\n    },\n    thumbProps: {\n      'aria-label': control.label,\n      'aria-valuetext': control.valueText,\n    },\n  };\n}\n"],"mappings":";AAoBA,SAAgB,iCAAiC,EAC/C,QACA,SACA,kBACA,eACA,kBACA,YACoC;CACpC,OAAO;EACL;EACA,WAAW;GACT,KAAK,QAAQ;GACb,KAAK,QAAQ;GACb,MAAM,QAAQ;GACd,OAAO,CAAC,QAAQ,KAAK;GACrB,gBAAgB,WAAqB;IACnC,IAAI,OAAO,OAAO,KAAA,GAChB,SAAS,OAAO,EAAE;GAEtB;GACA,mBAAmB,QAAkB,iBAAgD;IACnF,IAAI,OAAO,OAAO,KAAA,GAChB,OAAO,OAAO,EAAE;SAEhB,gBAAgB;IAElB,mBAAmB,QAAQ,YAAY;GACzC;EACF;EACA,YAAY;GACV,cAAc,QAAQ;GACtB,kBAAkB,QAAQ;EAC5B;CACF;AACF"}