#!/usr/bin/env ruby
PAGETITLE = "Hardcoded Data In Code" # Wvisible:tools data

$LOAD_PATH.unshift '/srv/whimsy/lib'
require 'json'
require 'whimsy/asf'
require 'wunderbar'
require 'wunderbar/bootstrap'
GITWHIMSY = 'https://github.com/apache/whimsy/blob/master/'
HARDCODED = 'hardcoded.json'
hclist = JSON.parse(File.read(HARDCODED))

_html do
  _body? do
    _whimsy_body(
      title: PAGETITLE,
      related: {
        "https://github.com/apache/whimsy/blob/master/DEVELOPMENT.md" => "Whimsy Dev Environment Setup",
        "/public" => "Whimsy public JSON datafiles",
        "/docs" => "Whimsy code/API developer documentation"
      },
      helpblock: -> {
        _p %{ Whimsy tools integrate directly with a wide variety of 
          private and public data and processes within the ASF.  Many 
          tools also hardcode lists or mappings of data that is 
          canonically stored elsewhere.  This is a partial list.
        }
        _p %{ Many of these hardcoded lists are good things, and are 
          in the right part of the code.  Some lists may turn out to 
          be better stored elsewhere, either in Whimsy or other repos.
        }
      }
    ) do
      _ul.list_group do
        hclist.each do |file, info|
          _li.list_group_item do
            _a '', name: file.gsub(/[#%\[\]\{\}\\"<>]/, '')
            _code! do
              if info['line']
                _a! file, href: "#{GITWHIMSY}#{file}#L#{info['line']}"
              else
                _a! file, href: "#{GITWHIMSY}#{file}"
              end
              _span.text_muted " #{info['symbol']}"
            end
            _br
            _ " #{info['description']}"
          end
        end
      end
    end
  end
end
