public PsalmConfiguration createNewInstance()

in src/com/jetbrains/php/tools/quality/psalm/remote/PsalmRemoteConfigurationProvider.java [57:74]


  public PsalmConfiguration createNewInstance(@Nullable Project project, @NotNull List<PsalmConfiguration> existingSettings) {
    var dialog =
      new QualityToolByInterpreterDialog<>(project, existingSettings, PSALM, PsalmRemoteConfiguration.class, PsalmQualityToolType.INSTANCE);
    if (dialog.showAndGet()) {
      final String id = PhpInterpretersManagerImpl.getInstance(project).findInterpreterId(dialog.getSelectedInterpreterName());
      if (isNotEmpty(id)) {
        final PsalmRemoteConfiguration settings = new PsalmRemoteConfiguration();
        settings.setInterpreterId(id);

        final PhpSdkAdditionalData data = PhpInterpretersManagerImpl.getInstance(project).findInterpreterDataById(id);
        fillDefaultSettings(project, settings, PsalmConfigurationManager.getInstance(project).getOrCreateLocalSettings(), data, data instanceof PhpRemoteSdkAdditionalData);

        return settings;
      }
      return (PsalmConfiguration)getLocalOrDefaultInterpreterConfiguration(dialog.getSelectedInterpreterName(), project, PsalmQualityToolType.INSTANCE);
    }
    return null;
  }