private static void showOssInfo(JComponent component) {
    @NlsSafe String licenseText;
    try {
      var title = IdeBundle.message("progress.third.party.software");
      licenseText = ProgressManager.getInstance().run(new Task.WithResult<String, IOException>(null, component, title, true) {
        @Override
        protected String compute(@NotNull ProgressIndicator indicator) throws IOException {
          return DiskQueryRelay.compute(() -> {
            var content = Files.readString(Path.of(PathManager.getHomePath(), THIRD_PARTY_LIBRARIES_FILE));
            var matcher = Pattern.compile("(\\d+)px").matcher(content);
            var sb = new StringBuilder();
            while (matcher.find()) {
              matcher.appendReplacement(sb, JBUIScale.scale(Integer.parseInt(matcher.group(1))) + "px");
            }
            matcher.appendTail(sb);
            content = sb.toString();
            if (StartupUiUtil.isUnderDarcula()) {
              content = content.replace("779dbd", "5676a0");
            }
            return content;
          });
        }
      });
    }
    catch (IOException e) {
      Logger.getInstance(AboutDialog.class).error(e);
      return;
    }

    var dialog = new DialogWrapper(true) {
      {
        init();
        setAutoAdjustable(false);
        setOKButtonText(CommonBundle.message("close.action.name"));
      }

      @Override
      protected @NotNull JComponent createCenterPanel() {
        var viewer = SwingHelper.createHtmlViewer(true, null, JBColor.WHITE, JBColor.BLACK);
        viewer.setFocusable(true);
        viewer.addHyperlinkListener(new BrowserHyperlinkListener());
        viewer.setText(licenseText);

        var styleSheet = ((HTMLDocument)viewer.getDocument()).getStyleSheet();
        styleSheet.addRule("body {font-family: \"Segoe UI\", Tahoma, \"Helvetica Neue\", Helvetica, Arial, sans-serif;}");
        styleSheet.addRule("body {margin-top:0;padding-top:0;}");
        styleSheet.addRule("body {font-size:" + JBUIScale.scaleFontSize((float)14) + "pt;}");

        viewer.setCaretPosition(0);
        viewer.setBorder(JBUI.Borders.empty(0, 5, 5, 5));

        var scrollPane = new JBScrollPane(viewer, VERTICAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER);

        var centerPanel = new JPanel(new BorderLayout(JBUIScale.scale(5), JBUIScale.scale(5)));
        centerPanel.add(scrollPane, BorderLayout.CENTER);
        return centerPanel;
      }

      @Override
      protected Action @NotNull [] createActions() {
        return new Action[]{getOKAction()};
      }
    };

    dialog.setTitle(IdeBundle.message("dialog.title.third.party.software",
                                      getFullNameForAboutDialog(),
                                      ApplicationInfo.getInstance().getFullVersion()));
    dialog.setSize(JBUIScale.scale(750), JBUIScale.scale(650));
    dialog.show();
  }
private static void showOssInfo(JComponent component)