Sha256: 4c7fd990a3e45c47bd196f84b3015fbd929bdce47098718e2e949ba78def8fff

Contents?: true

Size: 1.32 KB

Versions: 303

Compression:

Stored size: 1.32 KB

Contents

# frozen_string_literal: true

module EmailData
  module Source
    class FileSystem
      def self.tlds
        @tlds ||= load_file("tlds.txt")
      end

      def self.slds
        @slds ||= load_file("slds.txt")
      end

      def self.country_tlds
        @country_tlds ||= load_file("country_tlds.txt")
      end

      def self.disposable_emails
        @disposable_emails ||= load_file("disposable_emails.txt")
      end

      def self.disposable_domains
        @disposable_domains ||= load_file("disposable_domains.txt")
      end

      def self.disposable_domains_with_mx
        @disposable_domains_with_mx ||=
          load_file("disposable_domains_with_mx.txt")
      end

      def self.disposable_domains_without_mx
        @disposable_domains_without_mx ||=
          load_file("disposable_domains_without_mx.txt")
      end

      def self.free_email_domains
        @free_email_domains ||= load_file("free_email_domains.txt")
      end

      def self.roles
        @roles ||= load_file("roles.txt")
      end

      def self.private_relays
        @private_relays ||= load_file("private_relays.txt")
      end

      def self.load_file(filename)
        EmailData
          .data_dir
          .join(filename)
          .read
          .lines
          .map(&:chomp)
          .reject(&:empty?)
      end
    end
  end
end

Version data entries

303 entries across 303 versions & 1 rubygems

Version Path
email_data-1607451152.0.0 lib/email_data/source/file_system.rb
email_data-1607427861 lib/email_data/source/file_system.rb
email_data-1607321830 lib/email_data/source/file_system.rb