{"version":3,"names":["dynamic","createRenderEffect","omit","onCleanup","useBaseUiId","mergeRootProps","resolveClassStyle","useMenuGroupContext","MenuGroupLabel","props","group","fallbackId","resolvedId","id","setLabelId","undefined","internal","role","userClassStyle","userProps","merged","Tag","as"],"sources":["menu-group-label.tsx"],"sourcesContent":["import type { JSX, ValidComponent } from \"@solidjs/web\";\n/**\n * `<Menu.GroupLabel>` — label element automatically associated with its\n * parent `<Menu.Group>`. Mirrors React.\n */\n\nimport { dynamic } from \"@solidjs/web\";\nimport { createRenderEffect, omit, onCleanup } from \"solid-js\";\nimport { useBaseUiId } from \"../../internals/base-ui-id\";\nimport { mergeRootProps } from \"../../internals/merge-root-props\";\nimport { resolveClassStyle } from \"../../internals/resolve-class-style\";\nimport type { BaseUIComponentProps } from \"../../internals/types\";\nimport { useMenuGroupContext } from \"../group/menu-group-context\";\n\nexport type MenuGroupLabelState = Record<string, never>;\n\nexport interface MenuGroupLabelProps\n\textends Omit<BaseUIComponentProps<\"div\", MenuGroupLabelState>, \"id\"> {\n\t/**\n\t * Tag/component to render. Defaults to `\"div\"`. Replaces the\n\t * pre-spike `render` prop (axis G).\n\t */\n\tas?: ValidComponent;\n\tid?: string | undefined;\n}\n\nexport function MenuGroupLabel(props: MenuGroupLabelProps): JSX.Element {\n\tconst group = useMenuGroupContext();\n\tconst fallbackId = useBaseUiId();\n\tconst resolvedId = (): string | undefined =>\n\t\ttypeof props.id === \"string\" ? props.id : fallbackId;\n\n\tcreateRenderEffect(\n\t\t() => resolvedId(),\n\t\t(id) => {\n\t\t\tgroup.setLabelId(id);\n\t\t},\n\t);\n\tonCleanup(() => {\n\t\tgroup.setLabelId(undefined);\n\t});\n\n\tconst internal = {\n\t\trole: \"presentation\",\n\t\tget id() {\n\t\t\treturn resolvedId();\n\t\t},\n\t};\n\n\tconst userClassStyle = resolveClassStyle(props, () => ({}));\n\n\tconst userProps = omit(props, \"as\", \"class\", \"style\", \"attrs\", \"id\");\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 ?? \"div\");\n\treturn <Tag {...merged} />;\n}\n"],"mappings":"AACA;AACA;AACA;AACA;;AAEA,SAASA,OAAO,QAAQ,cAAc;AACtC,SAASC,kBAAkB,EAAEC,IAAI,EAAEC,SAAS,QAAQ,UAAU;AAC9D,SAASC,WAAW,QAAQ,4BAA4B;AACxD,SAASC,cAAc,QAAQ,kCAAkC;AACjE,SAASC,iBAAiB,QAAQ,qCAAqC;AAEvE,SAASC,mBAAmB,QAAQ,6BAA6B;AAcjE,OAAO,SAASC,cAAcA,CAACC,KAA0B,EAAe;EACvE,MAAMC,KAAK,GAAGH,mBAAmB,CAAC,CAAC;EACnC,MAAMI,UAAU,GAAGP,WAAW,CAAC,CAAC;EAChC,MAAMQ,UAAU,GAAGA,CAAA,KAClB,OAAOH,KAAK,CAACI,EAAE,KAAK,QAAQ,GAAGJ,KAAK,CAACI,EAAE,GAAGF,UAAU;EAErDV,kBAAkB,CACjB,MAAMW,UAAU,CAAC,CAAC,EACjBC,EAAE,IAAK;IACPH,KAAK,CAACI,UAAU,CAACD,EAAE,CAAC;EACrB,CACD,CAAC;EACDV,SAAS,CAAC,MAAM;IACfO,KAAK,CAACI,UAAU,CAACC,SAAS,CAAC;EAC5B,CAAC,CAAC;EAEF,MAAMC,QAAQ,GAAG;IAChBC,IAAI,EAAE,cAAc;IACpB,IAAIJ,EAAEA,CAAA,EAAG;MACR,OAAOD,UAAU,CAAC,CAAC;IACpB;EACD,CAAC;EAED,MAAMM,cAAc,GAAGZ,iBAAiB,CAACG,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;EAE3D,MAAMU,SAAS,GAAGjB,IAAI,CAACO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC;EAEpE,IAAIW,MAA+B,GAAGf,cAAc,CACnDW,QAAQ,EACRE,cACD,CAAC;EACDE,MAAM,GAAGf,cAAc,CAACe,MAAM,EAAED,SAAS,CAAC;EAE1C,MAAME,GAAG,GAAGrB,OAAO,CAAC,MAAMS,KAAK,CAACa,EAAE,IAAI,KAAK,CAAC;EAC5C,OAAO,CAAC,GAAG,CAAC,IAAIF,MAAM,CAAC,GAAG;AAC3B","ignoreList":[]}