weaver 0.9.7 → 0.9.8

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c38a8d8662e4de7832c5e693968a4038e71be7b206d012402106458567b479dc
4
- data.tar.gz: bd046f53e8cf99557077c695596d2d05f2ffa83f6f989d01cf6a74624d552d16
3
+ metadata.gz: cdda55ea38b5ef04630a124473975e54bce4aefbc1137d0c6faff054ef4d7125
4
+ data.tar.gz: be0dcb40ca857b48456557c7ca3b62b13f106a00f94a9e6976950e03778a262a
5
5
  SHA512:
6
- metadata.gz: 926298b470bf65856198533f7af9d8e4474a316ac1a839eb7c72958231631deb52fd2955edb482bd9cd9aa67f872275dc26e003e31cfcc1e29044f0583e9aa80
7
- data.tar.gz: 1f3797f2675cb417026f09efe5fe2fc51899c32601436f56db89ee5fdd02bae7413dc13c7eb6dd2bcfc875d2ad8604a29f548dd9ca67cef38e38b457707d1820
6
+ metadata.gz: 3f4696c98f3c0521a09b42ecd56d60892ce072ca1f808b86c10e45754a94bc1ff50e9890072c818a60e5cfc8b03e6ff6de5b205ef4e3b7d4362c055bd70a907d
7
+ data.tar.gz: 19216559110c9e0fb32b00503851c58c37ffd9ba8222e9a83e4d5f2acd22733b1b21e9866c6ec3d4449e25472b0340dcfe981367dcd4af9f28404aada08d2d4b
@@ -40,6 +40,26 @@ module Weaver
40
40
  @page.root
41
41
  end
42
42
 
43
+ def clear_default_meta!
44
+ @page.clear_default_meta!
45
+ end
46
+
47
+ def head(&block)
48
+ @page.head(&block)
49
+ end
50
+
51
+ def top(&block)
52
+ @page.top(&block)
53
+ end
54
+
55
+ def meta(options = {}, &block)
56
+ method_missing(:meta, options, &block)
57
+ end
58
+
59
+ def script(options = {}, &block)
60
+ method_missing(:script, options, &block)
61
+ end
62
+
43
63
  def request_js(path)
44
64
  @page.request_js(path)
45
65
  end
@@ -68,10 +88,6 @@ module Weaver
68
88
  @page.background(block)
69
89
  end
70
90
 
71
- def on_page_load(script)
72
- @page.on_page_load(script)
73
- end
74
-
75
91
  def icon(type)
76
92
  iconname = type.to_s.tr('_', '-')
77
93
  if type.is_a? Symbol
@@ -21,9 +21,20 @@ module Weaver
21
21
  @requested_scripts = {}
22
22
  @requested_css = {}
23
23
 
24
+ @meta_tags = []
25
+
24
26
  @background = Elements.new(self, @anchors)
25
27
 
28
+ m1 = Elements.new(self, @anchors)
29
+ m1.instance_eval do
30
+ meta charset: 'utf-8'
31
+ meta name: 'viewport', contents: 'width=device-width, initial-scale=1.0'
32
+ end
33
+
34
+ @meta_tags << m1
35
+
26
36
  @block = Proc.new &block
37
+
27
38
  end
28
39
 
29
40
  def create_anchor(name)
@@ -69,6 +80,18 @@ module Weaver
69
80
  @background.instance_eval(&block)
70
81
  end
71
82
 
83
+ def head(&block)
84
+ $stderr.puts 'head'
85
+ m1 = Elements.new(self, @anchors)
86
+ m1.instance_eval(&block)
87
+
88
+ @meta_tags << m1
89
+ end
90
+
91
+ def clear_default_meta!
92
+ @meta_tags = []
93
+ end
94
+
72
95
  def top(&block)
73
96
  elem = Elements.new(self, @anchors)
74
97
  elem.instance_eval(&block)
@@ -76,6 +99,15 @@ module Weaver
76
99
  @top_content = elem.generate
77
100
  end
78
101
 
102
+ def generate_meta_tags
103
+ content = ""
104
+ @meta_tags.each do |x|
105
+ content += "\n#{x.generate}"
106
+ end
107
+
108
+ content
109
+ end
110
+
79
111
  def generate(back_folders, options = {})
80
112
  if @options[:cache_file]
81
113
  expired = @options[:cache_expired]
@@ -172,8 +204,7 @@ mixpanel.init("' + @global_settings[:mixpanel_token] + '");</script><!-- end Mix
172
204
  <!-- Generated using weaver: https://github.com/davidsiaw/weaver -->
173
205
  <head>
174
206
 
175
- <meta charset="utf-8">
176
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
207
+ #{generate_meta_tags}
177
208
 
178
209
  <title>#{@title}</title>
179
210
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Weaver
4
- VERSION = '0.9.7'
4
+ VERSION = '0.9.8'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: weaver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.7
4
+ version: 0.9.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Siaw
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-05-02 00:00:00.000000000 Z
11
+ date: 2026-06-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport