### Godot version

4.2.dev4

### System information

macOS 13.5.1

### Issue description

The recent addition of an option in iOS export templates to "Export project only" is a welcome addition, since I've always had to set up some final things in XCode anyway for the builds to work. 

![Screenshot 2023-09-06 at 10 35 58](https://github.com/godotengine/godot/assets/17763524/672816ec-253a-4c66-a256-f2b627d7f857)

However, a small issue is that even when it's enabled the export Save dialogue lists the file extension as .ipa as if it's still going to export an app archive and not just the xcode project as expected. 

### Steps to reproduce

- Create an iOS export template.
- Enable the "Export project only" option
- Click "Export project..."
- Observe that the export save dialogue still lists the format as ipa.

![Screenshot 2023-09-06 at 10 40 57](https://github.com/godotengine/godot/assets/17763524/fb6c4e25-ecfc-4619-a04b-504a743d1d9b)


### Minimal reproduction project

Not project related, general export UI.
void _fix_config_file(const Ref<EditorExportPreset> &p_preset, Vector<uint8_t> &pfile, const IOSConfigData &p_config, bool p_debug);
	Error _export_loading_screen_images(const Ref<EditorExportPreset> &p_preset, const String &p_dest_dir);
	Error _export_loading_screen_file(const Ref<EditorExportPreset> &p_preset, const String &p_dest_dir);
	Error _export_icons(const Ref<EditorExportPreset> &p_preset, const String &p_iconset_dir);
	Vector<ExportArchitecture> _get_supported_architectures() const;
	Vector<String> _get_preset_architectures(const Ref<EditorExportPreset> &p_preset) const;
	void _add_assets_to_project(const Ref<EditorExportPreset> &p_preset, Vector<uint8_t> &p_project_data, const Vector<IOSExportAsset> &p_additional_assets);
	Error _export_additional_assets(const String &p_out_dir, const Vector<String> &p_assets, bool p_is_framework, bool p_should_embed, Vector<IOSExportAsset> &r_exported_assets);
	Error _copy_asset(const String &p_out_dir, const String &p_asset, const String *p_custom_file_name, bool p_is_framework, bool p_should_embed, Vector<IOSExportAsset> &r_exported_assets);
	Error _export_additional_assets(const String &p_out_dir, const Vector<SharedObject> &p_libraries, Vector<IOSExportAsset> &r_exported_assets);
	Error _export_ios_plugins(const Ref<EditorExportPreset> &p_preset, IOSConfigData &p_config_data, const String &dest_dir, Vector<IOSExportAsset> &r_exported_assets, bool p_debug);
	Error _export_project_helper(const Ref<EditorExportPreset> &p_preset, bool p_debug, const String &p_path, int p_flags, bool p_simulator, bool p_skip_ipa);
	bool is_package_name_valid(const String &p_package, String *r_error = nullptr) const;
protected:
	virtual void get_preset_features(const Ref<EditorExportPreset> &p_preset, List<String> *r_features) const override;
	virtual void get_export_options(List<ExportOption> *r_options) const override;
	virtual bool get_export_option_visibility(const EditorExportPreset *p_preset, const String &p_option) const override;
	virtual String get_export_option_warning(const EditorExportPreset *p_preset, const StringName &p_name) const override;
public:
	virtual String get_name() const override { return "iOS"; }
	virtual String get_os_name() const override { return "iOS"; }
	virtual Ref<Texture2D> get_logo() const override { return logo; }
	virtual Ref<Texture2D> get_run_icon() const override { return run_icon; }
	virtual int get_options_count() const override;
	virtual String get_options_tooltip() const override;
	virtual Ref<ImageTexture> get_option_icon(int p_index) const override;
	virtual String get_option_label(int p_index) const override;
	virtual String get_option_tooltip(int p_index) const override;
	virtual Error run(const Ref<EditorExportPreset> &p_preset, int p_device, int p_debug_flags) override;
	virtual bool poll_export() override {