{"version":3,"names":["dynamic","omit","untrack","mergeRootProps","resolveClassStyle","useRegisteredLabelId","useDialogRootContext","DialogTitle","props","root","id","setTitleId","internal","userClassStyle","userProps","merged","Tag","as"],"sources":["dialog-title.tsx"],"sourcesContent":["import type { JSX, ValidComponent } from \"@solidjs/web\";\n/**\n * `<Dialog.Title>` — heading that labels the dialog.\n */\n\nimport { dynamic } from \"@solidjs/web\";\nimport { omit, untrack } from \"solid-js\";\nimport { mergeRootProps } from \"../../internals/merge-root-props\";\nimport { resolveClassStyle } from \"../../internals/resolve-class-style\";\nimport type { BaseUIComponentProps } from \"../../internals/types\";\nimport { useRegisteredLabelId } from \"../../internals/use-registered-label-id\";\nimport { useDialogRootContext } from \"../dialog-root-context\";\n\n// biome-ignore lint/complexity/noBannedTypes: matches Base UI React — title exposes no state fields.\nexport type DialogTitleState = {};\n\nexport interface DialogTitleProps\n\textends BaseUIComponentProps<\n\t\t\"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\",\n\t\tDialogTitleState\n\t> {\n\t/**\n\t * Tag/component to render. Defaults to `\"h2\"`. Replaces the\n\t * pre-spike `render` prop (axis G).\n\t */\n\tas?: ValidComponent;\n}\n\n/**\n * A heading that labels the dialog. Renders an `<h2>` by default.\n */\nexport function DialogTitle(props: DialogTitleProps): JSX.Element {\n\tconst root = useDialogRootContext();\n\n\t// `props.id` is an id override read once at setup; untrack it so the read\n\t// doesn't trip STRICT_READ_UNTRACKED (same fix as <Popover.Title>).\n\tconst id = useRegisteredLabelId(\n\t\tuntrack(() => props.id as string | undefined),\n\t\troot.setTitleId,\n\t);\n\n\tconst internal = {\n\t\tid,\n\t};\n\n\tconst userClassStyle = resolveClassStyle(props, () => ({}));\n\n\tconst userProps = omit(props, \"as\", \"class\", \"style\", \"attrs\");\n\n\tlet merged: Record<string, unknown> = mergeRootProps(\n\t\tinternal,\n\t\tuserClassStyle,\n\t);\n\tmerged = mergeRootProps(merged, userProps);\n\n\tconst Tag = dynamic(() => props.as ?? \"h2\");\n\treturn <Tag {...merged} />;\n}\n"],"mappings":"AACA;AACA;AACA;;AAEA,SAASA,OAAO,QAAQ,cAAc;AACtC,SAASC,IAAI,EAAEC,OAAO,QAAQ,UAAU;AACxC,SAASC,cAAc,QAAQ,kCAAkC;AACjE,SAASC,iBAAiB,QAAQ,qCAAqC;AAEvE,SAASC,oBAAoB,QAAQ,yCAAyC;AAC9E,SAASC,oBAAoB,QAAQ,wBAAwB;;AAE7D;;AAeA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAACC,KAAuB,EAAe;EACjE,MAAMC,IAAI,GAAGH,oBAAoB,CAAC,CAAC;;EAEnC;EACA;EACA,MAAMI,EAAE,GAAGL,oBAAoB,CAC9BH,OAAO,CAAC,MAAMM,KAAK,CAACE,EAAwB,CAAC,EAC7CD,IAAI,CAACE,UACN,CAAC;EAED,MAAMC,QAAQ,GAAG;IAChBF;EACD,CAAC;EAED,MAAMG,cAAc,GAAGT,iBAAiB,CAACI,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;EAE3D,MAAMM,SAAS,GAAGb,IAAI,CAACO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;EAE9D,IAAIO,MAA+B,GAAGZ,cAAc,CACnDS,QAAQ,EACRC,cACD,CAAC;EACDE,MAAM,GAAGZ,cAAc,CAACY,MAAM,EAAED,SAAS,CAAC;EAE1C,MAAME,GAAG,GAAGhB,OAAO,CAAC,MAAMQ,KAAK,CAACS,EAAE,IAAI,IAAI,CAAC;EAC3C,OAAO,CAAC,GAAG,CAAC,IAAIF,MAAM,CAAC,GAAG;AAC3B","ignoreList":[]}