`TouchScreenButton` is not visible in web export with custom template

Godot Version

Godot v4.7.2.stable

Question

so here is the scons command :
scons platform=web target=template_release threads=no optimize=speed profile=custom.py build_profile=C:\Users\Hp\Documents\racing_game\build_profile.gdbuild

custom.py:

target="template_release"
debug_symbols="no"
lto="full"
deprecated="no"
vulkan="no"
use_volk="no"
openxr="no"
minizip="no"

build_profile.gdbuild:

{
	"disabled_build_options": {
		"d3d12": false,
		"disable_navigation_2d": true,
		"disable_navigation_3d": true,
		"disable_physics_2d": true,
		"disable_xr": true,
		"forward_mobile_renderer": false,
		"forward_plus_renderer": false,
		"metal": false,
		"module_godot_physics_2d_enabled": false,
		"module_godot_physics_3d_enabled": false,
		"module_msdfgen_enabled": false,
		"module_openxr_enabled": false,
		"rendering_device": false,
		"vulkan": false
	},
	"disabled_classes": [
		"AnimatableBody3D",
		"AnimatedSprite2D",
		"AnimatedTexture",
		"Animation",
		"AnimationLibrary",
		"AnimationMixer",
		"AnimationNode",
		"AnimationNodeStateMachinePlayback",
		"AnimationNodeStateMachineTransition",
		"AreaLight3D",
		"AspectRatioContainer",
		"AtlasTexture",
		"AudioBusLayout",
		"AudioEffect",
		"AudioListener2D",
		"AudioListener3D",
		"AudioStreamGenerator",
		"AudioStreamInteractive",
		"AudioStreamMP3",
		"AudioStreamMicrophone",
		"AudioStreamOggVorbis",
		"AudioStreamPlayer2D",
		"AudioStreamPlaylist",
		"AudioStreamPolyphonic",
		"AudioStreamRandomizer",
		"AudioStreamSynchronized",
		"BackBufferCopy",
		"BitMap",
		"BlitMaterial",
		"Bone2D",
		"BoneAttachment3D",
		"BoneMap",
		"ButtonGroup",
		"CPUParticles2D",
		"CSGCombiner3D",
		"CSGMesh3D",
		"CSGSphere3D",
		"CSGTorus3D",
		"Camera2D",
		"CameraAttributes",
		"CameraTexture",
		"CanvasGroup",
		"CanvasItemMaterial",
		"CanvasModulate",
		"CanvasTexture",
		"CapsuleMesh",
		"CenterContainer",
		"CharacterBody3D",
		"CheckButton",
		"CollisionObject2D",
		"CollisionPolygon2D",
		"CollisionPolygon3D",
		"CollisionShape2D",
		"ColorPalette",
		"ColorPicker",
		"ColorPickerButton",
		"Compositor",
		"CompositorEffect",
		"ConvexPolygonShape3D",
		"CryptoKey",
		"Curve2D",
		"CurveTexture",
		"CurveXYZTexture",
		"DPITexture",
		"Decal",
		"DrawableTexture2D",
		"ExternalTexture",
		"FlowContainer",
		"FogMaterial",
		"FogVolume",
		"FoldableContainer",
		"FoldableGroup",
		"GDExtension",
		"GLTFAccessor",
		"GLTFAnimation",
		"GLTFBufferView",
		"GLTFCamera",
		"GLTFDocument",
		"GLTFDocumentExtension",
		"GLTFLight",
		"GLTFMesh",
		"GLTFNode",
		"GLTFPhysicsBody",
		"GLTFPhysicsShape",
		"GLTFSkeleton",
		"GLTFSkin",
		"GLTFSpecGloss",
		"GLTFState",
		"GLTFTexture",
		"GLTFTextureSampler",
		"GPUParticles2D",
		"GPUParticles3D",
		"GPUParticlesAttractor3D",
		"GPUParticlesCollision3D",
		"GradientTexture1D",
		"GradientTexture2D",
		"GraphEdit",
		"GraphElement",
		"GridMap",
		"HTTPRequest",
		"HeightMapShape3D",
		"ImageTexture",
		"ImporterMesh",
		"ImporterMeshInstance3D",
		"InstancePlaceholder",
		"ItemList",
		"Joint2D",
		"Joint3D",
		"JointLimitation3D",
		"Label3D",
		"LabelSettings",
		"Light2D",
		"LightOccluder2D",
		"LightmapGI",
		"LightmapGIData",
		"LightmapProbe",
		"Line2D",
		"LinkButton",
		"MarginContainer",
		"Marker2D",
		"MenuBar",
		"MenuButton",
		"MeshInstance2D",
		"MeshLibrary",
		"MeshTexture",
		"MissingNode",
		"MissingResource",
		"MultiMesh",
		"MultiMeshInstance2D",
		"MultiMeshInstance3D",
		"MultiplayerSpawner",
		"MultiplayerSynchronizer",
		"NavigationAgent2D",
		"NavigationAgent3D",
		"NavigationLink2D",
		"NavigationLink3D",
		"NavigationMesh",
		"NavigationMeshSourceGeometryData2D",
		"NavigationMeshSourceGeometryData3D",
		"NavigationObstacle2D",
		"NavigationObstacle3D",
		"NavigationPolygon",
		"NavigationRegion2D",
		"NavigationRegion3D",
		"NinePatchRect",
		"ORMMaterial3D",
		"Occluder3D",
		"OccluderInstance3D",
		"OccluderPolygon2D",
		"OggPacketSequence",
		"OmniLight3D",
		"OpenXRAction",
		"OpenXRActionMap",
		"OpenXRActionSet",
		"OpenXRBindingModifier",
		"OpenXRCompositionLayer",
		"OpenXRHand",
		"OpenXRHapticBase",
		"OpenXRIPBinding",
		"OpenXRInteractionProfile",
		"OpenXRRenderModel",
		"OpenXRRenderModelManager",
		"OpenXRVisibilityMask",
		"PackedDataContainer",
		"PanoramaSkyMaterial",
		"Parallax2D",
		"ParallaxBackground",
		"ParallaxLayer",
		"ParticleProcessMaterial",
		"Path2D",
		"PathFollow2D",
		"PhysicalBone3D",
		"PhysicalSkyMaterial",
		"PlaceholderMaterial",
		"PlaceholderMesh",
		"PointMesh",
		"Polygon2D",
		"PolygonPathFinder",
		"PortableCompressedTexture2D",
		"PrismMesh",
		"ProgressBar",
		"RDShaderFile",
		"RDShaderSPIRV",
		"RayCast2D",
		"RayCast3D",
		"ReferenceRect",
		"ReflectionProbe",
		"RemoteTransform2D",
		"RemoteTransform3D",
		"ResourcePreloader",
		"RibbonTrailMesh",
		"RichTextEffect",
		"RootMotionView",
		"SceneReplicationConfig",
		"ScriptExtension",
		"ScrollBar",
		"SeparationRayShape3D",
		"ShaderGlobalsOverride",
		"Shape2D",
		"ShapeCast2D",
		"ShapeCast3D",
		"Shortcut",
		"Skeleton2D",
		"Skeleton3D",
		"SkeletonModification2D",
		"SkeletonModificationStack2D",
		"SkeletonModifier3D",
		"SkeletonProfile",
		"Skin",
		"SoftBody3D",
		"SphereMesh",
		"SphereShape3D",
		"SpinBox",
		"SplitContainer",
		"SpringArm3D",
		"SpringBoneCollision3D",
		"Sprite2D",
		"SpriteBase3D",
		"SpriteFrames",
		"StatusIndicator",
		"SyntaxHighlighter",
		"TextEdit",
		"TextMesh",
		"Texture2DRD",
		"Texture3D",
		"TextureLayered",
		"TileMap",
		"TileMapLayer",
		"TileMapPattern",
		"TileSet",
		"TileSetSource",
		"Timer",
		"TorusMesh",
		"TubeTrailMesh",
		"VSeparator",
		"VSlider",
		"VideoStream",
		"VideoStreamPlayback",
		"VideoStreamPlayer",
		"VirtualJoystick",
		"VisibleOnScreenNotifier2D",
		"VisibleOnScreenNotifier3D",
		"VisualShaderNodeBillboard",
		"VisualShaderNodeBooleanParameter",
		"VisualShaderNodeClamp",
		"VisualShaderNodeColorFunc",
		"VisualShaderNodeColorOp",
		"VisualShaderNodeColorParameter",
		"VisualShaderNodeCompare",
		"VisualShaderNodeConstant",
		"VisualShaderNodeCubemap",
		"VisualShaderNodeCubemapParameter",
		"VisualShaderNodeCustom",
		"VisualShaderNodeDerivativeFunc",
		"VisualShaderNodeDeterminant",
		"VisualShaderNodeDistanceFade",
		"VisualShaderNodeDotProduct",
		"VisualShaderNodeFloatFunc",
		"VisualShaderNodeFloatOp",
		"VisualShaderNodeFloatParameter",
		"VisualShaderNodeFresnel",
		"VisualShaderNodeIf",
		"VisualShaderNodeInput",
		"VisualShaderNodeIntFunc",
		"VisualShaderNodeIntOp",
		"VisualShaderNodeIntParameter",
		"VisualShaderNodeIs",
		"VisualShaderNodeLinearSceneDepth",
		"VisualShaderNodeMix",
		"VisualShaderNodeMultiplyAdd",
		"VisualShaderNodeOuterProduct",
		"VisualShaderNodeOutput",
		"VisualShaderNodeParameterRef",
		"VisualShaderNodeParticleAccelerator",
		"VisualShaderNodeParticleConeVelocity",
		"VisualShaderNodeParticleEmit",
		"VisualShaderNodeParticleEmitter",
		"VisualShaderNodeParticleMultiplyByAxisAngle",
		"VisualShaderNodeParticleRandomness",
		"VisualShaderNodeProximityFade",
		"VisualShaderNodeRandomRange",
		"VisualShaderNodeRemap",
		"VisualShaderNodeReroute",
		"VisualShaderNodeResizableBase",
		"VisualShaderNodeRotationByAxis",
		"VisualShaderNodeSDFRaymarch",
		"VisualShaderNodeSDFToScreenUV",
		"VisualShaderNodeSample3D",
		"VisualShaderNodeScreenNormalWorldSpace",
		"VisualShaderNodeScreenUVToSDF",
		"VisualShaderNodeSmoothStep",
		"VisualShaderNodeStep",
		"VisualShaderNodeSwitch",
		"VisualShaderNodeTexture2DArrayParameter",
		"VisualShaderNodeTexture3DParameter",
		"VisualShaderNodeTextureParameterTriplanar",
		"VisualShaderNodeTextureSDF",
		"VisualShaderNodeTextureSDFNormal",
		"VisualShaderNodeTransformCompose",
		"VisualShaderNodeTransformDecompose",
		"VisualShaderNodeTransformFunc",
		"VisualShaderNodeTransformOp",
		"VisualShaderNodeTransformParameter",
		"VisualShaderNodeTransformVecMult",
		"VisualShaderNodeUIntFunc",
		"VisualShaderNodeUIntOp",
		"VisualShaderNodeUIntParameter",
		"VisualShaderNodeUVFunc",
		"VisualShaderNodeUVPolarCoord",
		"VisualShaderNodeVarying",
		"VisualShaderNodeVec2Parameter",
		"VisualShaderNodeVec3Parameter",
		"VisualShaderNodeVec4Parameter",
		"VisualShaderNodeVectorBase",
		"VisualShaderNodeWorldPositionFromDepth",
		"VoxelGI",
		"VoxelGIData",
		"World2D",
		"World3D",
		"X509Certificate",
		"XRCamera3D",
		"XRFaceModifier3D",
		"XRNode3D",
		"XROrigin3D"
	],
	"type": "build_profile"
}

Your build profile is disabling classes that TouchScreenButton needs like Sprite2D or BitMap. There are probably more.

I set it to auto detect tho

Do i need to enable 2d physics too?
Since this is under 2d physics ?
I turned it off

Probably, yes. Detecting classes from the project is not thoroughly tested.

{
 	"disabled_build_options": {
 		"d3d12": false,
 		"disable_navigation_2d": true,
 		"disable_navigation_3d": true,
-		"disable_physics_2d": true,
 		"disable_xr": true,
 		"forward_mobile_renderer": false,
 		"forward_plus_renderer": false,
 		"metal": false,
-		"module_godot_physics_2d_enabled": false,
 		"module_godot_physics_3d_enabled": false,
 		"module_msdfgen_enabled": false,
 		"module_openxr_enabled": false,
 		"rendering_device": false,
 		"vulkan": false

this seems to fix the issue