docs: def noaa_to_lpd(files):
      """
      Convert NOAA format to LiPD format
      :param dict files: Files metadata
      :return None:
      """
      logger_noaa.info("enter process_noaa")
      # only continue if the user selected a mode correctly
      logger_noaa.info("Found {} NOAA txt file(s)".format(str(len(files[".txt"]))))
      print("Found {} NOAA txt file(s)".format(str(len(files[".txt"]))))
      # Process each available file of the specified .lpd or .txt type
      for file in files[".txt"]:
          # try to filter out example files and stuff without real data
          if "template" not in file["filename_ext"] and "example" not in file["filename_ext"]:
              os.chdir(file["dir"])
              print('processing: {}'.format(file["filename_ext"]))
              logger_noaa.info("processing: {}".format(file["filename_ext"]))
  
              # Unzip file and get tmp directory path
              dir_tmp = create_tmp_dir()
              try:
                  NOAA_LPD(file["dir"], dir_tmp, file["filename_no_ext"]).main()
              except Exception as e:
                  print("Error: Unable to convert file: {}, {}".format(file["filename_no_ext"], e))
  
              # Create the lipd archive in the original file's directory.
              zipper(root_dir=dir_tmp, name="bag", path_name_ext=os.path.join(file["dir"], file["filename_no_ext"] + ".lpd"))
              # Delete tmp folder and all contents
              os.chdir(file["dir"])
              try:
                  shutil.rmtree(dir_tmp)
              except FileNotFoundError:
                  # directory is already gone. keep going.
                  pass
  
      logger_noaa.info("exit noaa_to_lpd")
      return