{"version":3,"names":["dynamic","omit","userRef","mergeRootProps","resolveClassStyle","useSliderRootContext","sliderDataAttrs","SliderTrack","props","context","userClassStyle","state","userProps","internalSlot","style","position","merged","Tag","as"],"sources":["slider-track.tsx"],"sourcesContent":["import type { JSX, ValidComponent } from \"@solidjs/web\";\nimport { dynamic } from \"@solidjs/web\";\nimport { omit } from \"solid-js\";\nimport { userRef } from \"../../internals/compose-refs\";\nimport { mergeRootProps } from \"../../internals/merge-root-props\";\nimport { resolveClassStyle } from \"../../internals/resolve-class-style\";\nimport type { BaseUIComponentProps } from \"../../internals/types\";\nimport {\n\ttype SliderRootState,\n\tuseSliderRootContext,\n} from \"../slider-root-context.ts\";\nimport { sliderDataAttrs } from \"../utils/state-attrs.ts\";\n\nexport interface SliderTrackState extends SliderRootState {}\n\nexport interface SliderTrackProps\n\textends BaseUIComponentProps<\"div\", SliderTrackState> {\n\t/** Tag/component to render. Defaults to `\"div\"`. */\n\tas?: ValidComponent;\n}\n\n/**\n * Contains the slider indicator and represents the entire range of the\n * slider. Renders a `<div>` (or `as` override).\n *\n * §1 wave 3: replaces `renderElement` with `dynamic(() => props.as ?? \"div\")`.\n * The slider state-attr projection is contributed by `sliderDataAttrs`.\n */\nexport function SliderTrack(props: SliderTrackProps): JSX.Element {\n\tconst context = useSliderRootContext();\n\n\t// Resolve `class`/`style` here so function values (stateful styling) are\n\t// invoked with the slider state instead of being spread to the DOM raw.\n\tconst userClassStyle = resolveClassStyle(props, () => context.state());\n\tconst userProps = omit(props, \"as\", \"class\", \"style\", \"attrs\");\n\n\tconst internalSlot = {\n\t\tstyle: { position: \"relative\" } as JSX.CSSProperties,\n\t};\n\n\tlet merged: Record<string, unknown> = mergeRootProps(\n\t\tinternalSlot,\n\t\tsliderDataAttrs(context.state),\n\t);\n\tmerged = mergeRootProps(merged, userClassStyle);\n\tmerged = mergeRootProps(merged, userProps);\n\n\tconst Tag = dynamic(() => props.as ?? \"div\");\n\treturn <Tag {...merged} ref={userRef(props)} />;\n}\n\nexport namespace SliderTrack {\n\texport type State = SliderTrackState;\n\texport type Props = SliderTrackProps;\n}\n"],"mappings":"AACA,SAASA,OAAO,QAAQ,cAAc;AACtC,SAASC,IAAI,QAAQ,UAAU;AAC/B,SAASC,OAAO,QAAQ,8BAA8B;AACtD,SAASC,cAAc,QAAQ,kCAAkC;AACjE,SAASC,iBAAiB,QAAQ,qCAAqC;AAEvE,SAECC,oBAAoB,QACd,2BAA2B;AAClC,SAASC,eAAe,QAAQ,yBAAyB;AAUzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAACC,KAAuB,EAAe;EACjE,MAAMC,OAAO,GAAGJ,oBAAoB,CAAC,CAAC;;EAEtC;EACA;EACA,MAAMK,cAAc,GAAGN,iBAAiB,CAACI,KAAK,EAAE,MAAMC,OAAO,CAACE,KAAK,CAAC,CAAC,CAAC;EACtE,MAAMC,SAAS,GAAGX,IAAI,CAACO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;EAE9D,MAAMK,YAAY,GAAG;IACpBC,KAAK,EAAE;MAAEC,QAAQ,EAAE;IAAW;EAC/B,CAAC;EAED,IAAIC,MAA+B,GAAGb,cAAc,CACnDU,YAAY,EACZP,eAAe,CAACG,OAAO,CAACE,KAAK,CAC9B,CAAC;EACDK,MAAM,GAAGb,cAAc,CAACa,MAAM,EAAEN,cAAc,CAAC;EAC/CM,MAAM,GAAGb,cAAc,CAACa,MAAM,EAAEJ,SAAS,CAAC;EAE1C,MAAMK,GAAG,GAAGjB,OAAO,CAAC,MAAMQ,KAAK,CAACU,EAAE,IAAI,KAAK,CAAC;EAC5C,OAAO,CAAC,GAAG,CAAC,IAAIF,MAAM,CAAC,CAAC,GAAG,CAAC,CAACd,OAAO,CAACM,KAAK,CAAC,CAAC,GAAG;AAChD","ignoreList":[]}