There are several possibilities here, but since I don't know exactly what you want to do with the result, I suggest the following solution:
The first hurdle is that Fill Curve
always creates holes when the curves are intersecting, but the splines cannot be completely converted to filled curves separately at the same location.
To work around this problem, first move all curves along the X or Y axis using the Spline Index so that they are far apart.
This allows you to apply Fill Curve
to them without creating holes. You could also create Mesh Primitives in such a case, and move their points to the positions of the curve points, but that seemed more complicated to me.
Now that you have filled each curve completely, you can move them back to their original positions. With that, you've solved the first hurdle.
The second hurdle is that the faces still overlap, so you can't create a solid mesh.
To remove these areas, use the Mesh Boolean
node and send a raycast to a duplicate of the object, which you scale by a factor of $0.9999$. This will detect the inside edges, which can then be removed. The remaining points should be merged with Merge by Distance
to create a continuous mesh line.
Finally, you only have to convert this object into a curve and fill it again with Fill Curve
. After that, this shape can be extruded into a solid object.
(Blender 3.4+)