Class: Jekyll::ClientSearch::RuntimeConfigPage
- Inherits:
-
PageWithoutAFile
- Object
- PageWithoutAFile
- Jekyll::ClientSearch::RuntimeConfigPage
- Defined in:
- lib/jekyll/client_search/runtime_config_page.rb
Overview
Generates browser runtime settings shared by all search adapters.
Instance Method Summary collapse
-
#initialize(site, configuration) ⇒ RuntimeConfigPage
constructor
A new instance of RuntimeConfigPage.
Constructor Details
#initialize(site, configuration) ⇒ RuntimeConfigPage
Returns a new instance of RuntimeConfigPage.
7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/jekyll/client_search/runtime_config_page.rb', line 7 def initialize(site, configuration) super(site, site.source, "assets", "search-runtime-config.js") self.data = { "layout" => nil, "sitemap" => false } defaults = { "indexUrl" => index_url(site, configuration.output), "liveSearch" => configuration.live_search_config } defaults["relatedUrl"] = index_url(site, configuration.) if configuration. json = JSON.generate(defaults) self.content = "window.clientSearchConfig = (function (generated, existing) {" \ "var liveSearch = Object.assign({}, generated.liveSearch, existing.liveSearch || {});" \ "return Object.assign(generated, existing, { liveSearch: liveSearch });" \ "}(#{json}, window.clientSearchConfig || {}));\n" end |