hyde-page-css 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/hyde-page-css.rb +24 -4
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dd3d9f99b066723234f3176fe943fa15ab376416a0d076057c239f579f4f5b4c
4
- data.tar.gz: 05e79c4de594a1cc58764c2e66bfa982dd34d5bf55a5484fe5f56ebb2b96ac57
3
+ metadata.gz: be290973e52833cc36b718536cb674c5b3fe7d3b0c47ab79ee5ad29f5ab10e3e
4
+ data.tar.gz: 60b2961c7302731e123f67f4dfc63beb9a04afa145a118247f5eca744d2e4764
5
5
  SHA512:
6
- metadata.gz: 1669d6614c15ba569ce473af0ea8a87dde4e80787e8b8f902a137d29e6e33fb08f92b43a86cef3ecaff24f35ad792b37ddb0f06e6c7fe61ab81c50b8c463e687
7
- data.tar.gz: 5031a966564d5b740d76f3ab5e69e10a567e6561f2e6731dc12e4e5182b6e74fd6a52efb7d02b744246fbe55d791eee5ce0da995d4a137f97c1b883ccafc21f9
6
+ metadata.gz: e91ee4e141c0c747828ef7e867ffd6e1b54a9ee01d82fa54c7ad15fb58d3e7e3c2ad527aebdb476f86219aee82ab77418fbc927f97fd3411b7bb813ac21d771e
7
+ data.tar.gz: 4dcada5efd5b800398dfd3643ce8050cc21426372c623f0dfd1f73b9dc7ba1f9d7d874e2624b98aea0565c4e889ce39662dfefa01f4a0b83790ee59a3d75b2f3
data/lib/hyde-page-css.rb CHANGED
@@ -12,7 +12,7 @@ end
12
12
  module Hyde
13
13
  module Page
14
14
  class Css
15
- VERSION = "0.5.0"
15
+ VERSION = "0.6.0"
16
16
  end
17
17
 
18
18
  class GeneratedCssFile < Jekyll::StaticFile
@@ -31,7 +31,6 @@ module Hyde
31
31
 
32
32
  def write(dest)
33
33
  dest_path = destination(dest)
34
- return false if File.exist?(dest_path)
35
34
 
36
35
  FileUtils.mkdir_p(File.dirname(dest_path))
37
36
  FileUtils.rm(dest_path) if File.exist?(dest_path)
@@ -51,7 +50,9 @@ module Hyde
51
50
  "minify" => true,
52
51
  "enable" => true,
53
52
  "keep_files" => true,
54
- "dev_mode" => false
53
+ "dev_mode" => false,
54
+ "livereload" => false,
55
+ "automatic_inline_threshold" => 4096
55
56
  }
56
57
 
57
58
  def initialize(page)
@@ -72,7 +73,9 @@ module Hyde
72
73
  return if css_groups.flatten.empty?
73
74
 
74
75
  for group in css_groups
76
+ next if group.nil?
75
77
  next if group.empty?
78
+
76
79
  lookup_name = names_to_key(group)
77
80
  cache_entry = @site.data["_hyde_pages_cache"].fetch(lookup_name, nil)
78
81
 
@@ -115,6 +118,17 @@ module Hyde
115
118
  def add_to_urls(url, data)
116
119
  @page.data["css_files"] ||= []
117
120
  @page.data["css_files"].push({ "path" => url, "content" => data })
121
+
122
+ if (dev_mode? || livereload?)
123
+ @page.data["automatic_styles"] ||= []
124
+ @page.data["automatic_styles"].push("<link rel=\"stylesheet\" href=\"#{url}\">")
125
+ elsif data.size > @config.fetch("automatic_inline_threshold")
126
+ @page.data["automatic_styles"] ||= []
127
+ @page.data["automatic_styles"].push("<link rel=\"stylesheet\" href=\"#{url}\">")
128
+ else
129
+ @page.data["automatic_styles"] ||= []
130
+ @page.data["automatic_styles"].push("<style>#{data}</style>")
131
+ end
118
132
  end
119
133
 
120
134
  def fetch_config
@@ -129,6 +143,10 @@ module Hyde
129
143
  @config.fetch("dev_mode") == true
130
144
  end
131
145
 
146
+ def livereload?
147
+ @config.fetch("livereload") == true
148
+ end
149
+
132
150
  def minify?
133
151
  @config.fetch("minify") == true
134
152
  end
@@ -215,7 +233,9 @@ module Hyde
215
233
  files.each { |file| file_names.push(file.gsub(".css", "")) }
216
234
  end
217
235
 
218
- file_names.push(Digest::MD5.hexdigest(data)[0, 6])
236
+ if @site.config["livereload"].nil?
237
+ file_names.push(Digest::MD5.hexdigest(data)[0, 6])
238
+ end
219
239
 
220
240
  file_names.compact.join("-") + ".css"
221
241
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hyde-page-css
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gregory Daynes
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-01-03 00:00:00.000000000 Z
11
+ date: 2024-10-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -57,7 +57,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
57
57
  - !ruby/object:Gem::Version
58
58
  version: '0'
59
59
  requirements: []
60
- rubygems_version: 3.5.3
60
+ rubygems_version: 3.5.22
61
61
  signing_key:
62
62
  specification_version: 4
63
63
  summary: Plugin for jekyll to enable per page css files