leaflet.rb 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. module Docs
  2. class Leaflet < UrlScraper
  3. self.name = 'Leaflet'
  4. self.type = 'simple'
  5. self.slug = 'leaflet'
  6. self.links = {
  7. home: 'https://leafletjs.com/',
  8. code: 'https://github.com/Leaflet/Leaflet'
  9. }
  10. html_filters.push 'leaflet/entries', 'leaflet/clean_html', 'title'
  11. options[:container] = '.container'
  12. options[:skip_links] = true
  13. options[:attribution] = <<-HTML
  14. &copy; 2010&ndash;2018 Vladimir Agafonkin<br>
  15. &copy; 2010&ndash;2011, CloudMade<br>
  16. Maps &copy; OpenStreetMap contributors.
  17. HTML
  18. version '1.3' do
  19. self.release = '1.3.4'
  20. self.base_url = "https://leafletjs.com/reference-#{release}.html"
  21. end
  22. version '1.2' do
  23. self.release = '1.2.0'
  24. self.base_url = "https://leafletjs.com/reference-#{release}.html"
  25. end
  26. version '1.1' do
  27. self.release = '1.1.0'
  28. self.base_url = "https://leafletjs.com/reference-#{release}.html"
  29. end
  30. version '1.0' do
  31. self.release = '1.0.3'
  32. self.base_url = "https://leafletjs.com/reference-#{release}.html"
  33. end
  34. def get_latest_version(opts)
  35. doc = fetch_doc('https://leafletjs.com/index.html', opts)
  36. link = doc.css('ul > li > a').to_a.select {|node| node.content == 'Docs'}.first
  37. link['href'].scan(/reference-([0-9.]+)\.html/)[0][0]
  38. end
  39. end
  40. end