htmlgrid 1.2.2 → 1.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/htmlgrid/component.rb +2 -0
- data/lib/htmlgrid/component.rb~ +252 -0
- data/lib/htmlgrid/version.rb +1 -1
- data/lib/htmlgrid/version.rb~ +5 -0
- data/test/test_component.rb +7 -0
- data/test/test_component.rb~ +204 -0
- metadata +23 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 87d0fe1b57b1446781886b5c03fff8f9eaef864515f05cfb0312269bb933b925
|
4
|
+
data.tar.gz: c134762161a92b02cd1e8658fb22efd6a2d0d89f57c9d088b05236dfd5a3b9dc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bb5d41e32a404dd906968f050859a7312466d01ce71c57afd8deabb48fbf8caa0884f450e61b59524abeb9cf7d0e224757df0712203163a3243148ac7c323f19
|
7
|
+
data.tar.gz: 02c89a8f66c5ce317a14f144d42d9f174ac62f3ae9e63ef1fca735df94ebe504ff69cf259f2aa3500af1fad5fdf02ab0b1b5de70e95f4d19d0dc0733e3b95f3e
|
data/lib/htmlgrid/component.rb
CHANGED
@@ -0,0 +1,252 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
#--
|
4
|
+
# HtmlGrid -- HyperTextMarkupLanguage Framework
|
5
|
+
# Copyright (C) 2003 ywesee - intellectual capital connected
|
6
|
+
# Andreas Schrafl, Benjamin Fay, Hannes Wyss, Markus Huggler
|
7
|
+
#
|
8
|
+
# This library is free software; you can redistribute it and/or
|
9
|
+
# modify it under the terms of the GNU Lesser General Public
|
10
|
+
# License as published by the Free Software Foundation; either
|
11
|
+
# version 2.1 of the License, or (at your option) any later version.
|
12
|
+
#
|
13
|
+
# This library is distributed in the hope that it will be useful,
|
14
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
15
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
16
|
+
# Lesser General Public License for more details.
|
17
|
+
#
|
18
|
+
# You should have received a copy of the GNU Lesser General Public
|
19
|
+
# License along with this library; if not, write to the Free Software
|
20
|
+
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
21
|
+
#
|
22
|
+
# ywesee - intellectual capital connected, Winterthurerstrasse 52, CH-8006 Zuerich, Switzerland
|
23
|
+
# htmlgrid@ywesee.com, www.ywesee.com/htmlgrid
|
24
|
+
#
|
25
|
+
# HtmlGrid::Component -- htmlgrid -- 23.12.2012 -- mhatakeyama@ywesee.com
|
26
|
+
# HtmlGrid::Component -- htmlgrid -- 23.10.2002 -- hwyss@ywesee.com
|
27
|
+
#++
|
28
|
+
|
29
|
+
module HtmlGrid
|
30
|
+
class Component
|
31
|
+
# sets the 'class' html-attribute
|
32
|
+
CSS_CLASS = nil
|
33
|
+
# sets the 'id' html-attribute
|
34
|
+
CSS_ID = nil
|
35
|
+
# other html-attributes
|
36
|
+
HTML_ATTRIBUTES = {}
|
37
|
+
# default http-headers
|
38
|
+
HTTP_HEADERS = {
|
39
|
+
"Content-Type" => "text/html",
|
40
|
+
"Cache-Control" => "no-cache, max-age=3600, must-revalidate"
|
41
|
+
}
|
42
|
+
# precede instances of this class with a label?
|
43
|
+
LABEL = false
|
44
|
+
@@html_entities = [
|
45
|
+
["&", "amp"],
|
46
|
+
["<", "lt"],
|
47
|
+
[">", "gt"]
|
48
|
+
] # :nodoc:
|
49
|
+
@@symbol_entities = {
|
50
|
+
34 => "forall",
|
51
|
+
36 => "exist",
|
52
|
+
42 => "lowast",
|
53
|
+
45 => "minus",
|
54
|
+
64 => "cong",
|
55
|
+
65 => "Alpha", 97 => "alpha",
|
56
|
+
66 => "Beta", 98 => "beta",
|
57
|
+
67 => "Chi", 99 => "chi",
|
58
|
+
68 => "Delta", 100 => "delta",
|
59
|
+
69 => "Epsilon", 101 => "epsilon",
|
60
|
+
70 => "Phi", 102 => "phi",
|
61
|
+
71 => "Gamma", 103 => "gamma",
|
62
|
+
72 => "Eta", 104 => "eta",
|
63
|
+
73 => "Iota", 105 => "iota",
|
64
|
+
75 => "Kappa", 107 => "kappa",
|
65
|
+
76 => "Lambda", 108 => "lambda",
|
66
|
+
77 => "Mu", 109 => "mu",
|
67
|
+
78 => "Nu", 110 => "nu",
|
68
|
+
79 => "Omicron", 111 => "omicron",
|
69
|
+
80 => "Pi", 112 => "pi",
|
70
|
+
81 => "Theta", 113 => "theta",
|
71
|
+
82 => "Rho", 114 => "rho",
|
72
|
+
83 => "Sigma", 115 => "sigma",
|
73
|
+
84 => "Tau", 116 => "tau",
|
74
|
+
85 => "Upsilon", 117 => "upsilon",
|
75
|
+
86 => "sigmaf",
|
76
|
+
87 => "Omega", 119 => "omega",
|
77
|
+
88 => "Xi", 120 => "xi",
|
78
|
+
89 => "Psi", 121 => "psi",
|
79
|
+
90 => "Zeta", 122 => "zeta",
|
80
|
+
94 => "perp", 126 => "sim",
|
81
|
+
163 => "le",
|
82
|
+
165 => "infin",
|
83
|
+
166 => "fnof",
|
84
|
+
171 => "harr",
|
85
|
+
172 => "larr",
|
86
|
+
173 => "uarr",
|
87
|
+
174 => "rarr",
|
88
|
+
175 => "darr",
|
89
|
+
179 => "ge",
|
90
|
+
181 => "prop",
|
91
|
+
182 => "part",
|
92
|
+
185 => "ne",
|
93
|
+
186 => "equiv",
|
94
|
+
187 => "asymp",
|
95
|
+
191 => "crarr",
|
96
|
+
196 => "otimes",
|
97
|
+
197 => "oplus",
|
98
|
+
198 => "empty",
|
99
|
+
199 => "cap",
|
100
|
+
200 => "cup",
|
101
|
+
201 => "sup",
|
102
|
+
202 => "supe",
|
103
|
+
203 => "nsub",
|
104
|
+
204 => "sub",
|
105
|
+
205 => "sube",
|
106
|
+
206 => "isin",
|
107
|
+
207 => "notin",
|
108
|
+
208 => "ang",
|
109
|
+
209 => "nabla",
|
110
|
+
213 => "prod",
|
111
|
+
214 => "radic",
|
112
|
+
215 => "sdot",
|
113
|
+
217 => "and",
|
114
|
+
218 => "or",
|
115
|
+
219 => "hArr",
|
116
|
+
220 => "lArr",
|
117
|
+
221 => "uArr",
|
118
|
+
222 => "rArr",
|
119
|
+
223 => "dArr",
|
120
|
+
229 => "sum",
|
121
|
+
242 => "int"
|
122
|
+
} # :nodoc:
|
123
|
+
attr_reader :attributes, :model
|
124
|
+
attr_accessor :value
|
125
|
+
def initialize(model, session = nil, container = nil)
|
126
|
+
@model = model
|
127
|
+
@session = session
|
128
|
+
@lookandfeel = session.lookandfeel if session.respond_to?(:lookandfeel)
|
129
|
+
@container = container
|
130
|
+
@attributes = self.class::HTML_ATTRIBUTES.dup
|
131
|
+
if css_class
|
132
|
+
@attributes.store("class", css_class)
|
133
|
+
end
|
134
|
+
if css_id
|
135
|
+
@attributes.store("id", css_id)
|
136
|
+
end
|
137
|
+
@value = nil
|
138
|
+
@label = self.class::LABEL
|
139
|
+
init
|
140
|
+
end
|
141
|
+
|
142
|
+
# delegator to @container, default definition in Form
|
143
|
+
def autofill?
|
144
|
+
@container.autofill? if @container.respond_to?(:autofill?)
|
145
|
+
end
|
146
|
+
|
147
|
+
# gets the 'class' html-attribute if defined
|
148
|
+
def css_class
|
149
|
+
@css_class ||= self.class::CSS_CLASS
|
150
|
+
end
|
151
|
+
|
152
|
+
# sets the 'class' html-attribute
|
153
|
+
def css_class=(css_class)
|
154
|
+
@css_class = @attributes["class"] = css_class
|
155
|
+
end
|
156
|
+
|
157
|
+
# gets the 'id' html-attribute if defined
|
158
|
+
def css_id
|
159
|
+
@css_id ||= self.class::CSS_ID
|
160
|
+
end
|
161
|
+
|
162
|
+
# sets the 'id' html-attribute
|
163
|
+
def css_id=(css_id)
|
164
|
+
@css_id = @attributes["id"] = css_id
|
165
|
+
end
|
166
|
+
|
167
|
+
def dynamic_html(context)
|
168
|
+
""
|
169
|
+
end
|
170
|
+
|
171
|
+
# escape '&', '<' and '>' characters in txt
|
172
|
+
def escape(txt)
|
173
|
+
@@html_entities.each_with_object(txt.to_s.dup) { |map, str|
|
174
|
+
char, entity = map
|
175
|
+
str.gsub!(char, "&" << entity << ";")
|
176
|
+
}
|
177
|
+
end
|
178
|
+
|
179
|
+
# escape symbol-font strings
|
180
|
+
def escape_symbols(txt)
|
181
|
+
esc = ""
|
182
|
+
txt.to_s.each_byte { |byte|
|
183
|
+
esc << if (entity = @@symbol_entities[byte])
|
184
|
+
"&" << entity << ";"
|
185
|
+
else
|
186
|
+
byte
|
187
|
+
end
|
188
|
+
}
|
189
|
+
esc
|
190
|
+
end
|
191
|
+
|
192
|
+
# delegator to @container, default definition in Form
|
193
|
+
def formname
|
194
|
+
@container.formname if @container.respond_to?(:formname)
|
195
|
+
end
|
196
|
+
|
197
|
+
def http_headers
|
198
|
+
self.class::HTTP_HEADERS.dup
|
199
|
+
end
|
200
|
+
|
201
|
+
# precede this instance with a label?
|
202
|
+
def label?
|
203
|
+
@label
|
204
|
+
end
|
205
|
+
|
206
|
+
attr_writer :label
|
207
|
+
|
208
|
+
def onclick=(onclick)
|
209
|
+
@attributes["onclick"] = onclick
|
210
|
+
end
|
211
|
+
|
212
|
+
# delegator to @container, default definition in Template
|
213
|
+
def onload=(onload)
|
214
|
+
@container.onload = onload if @container.respond_to? :onload=
|
215
|
+
end
|
216
|
+
|
217
|
+
# delegator to @container, default definition in Form
|
218
|
+
def onsubmit=(onsubmit)
|
219
|
+
@container.onsubmit = onsubmit if @container.respond_to? :onsubmit=
|
220
|
+
end
|
221
|
+
|
222
|
+
# set a html attribute
|
223
|
+
def set_attribute(key, value)
|
224
|
+
@attributes.store(key, value)
|
225
|
+
end
|
226
|
+
|
227
|
+
def tabindex=(tab)
|
228
|
+
@attributes.store("tabIndex", tab.to_s)
|
229
|
+
end
|
230
|
+
|
231
|
+
def to_html(context)
|
232
|
+
_to_html(context, @value).to_s.encode("utf-8")
|
233
|
+
end
|
234
|
+
@@nl2br_ptrn = /(\r\n)|(\n)|(\r)/
|
235
|
+
def _to_html(context, value = @value)
|
236
|
+
if value.is_a?(Array)
|
237
|
+
value.collect { |item| _to_html(context, item) }.join(" ")
|
238
|
+
elsif value.respond_to?(:to_html)
|
239
|
+
value.to_html(context).to_s.dup.force_encoding("utf-8")
|
240
|
+
elsif value&.is_a?(String)
|
241
|
+
_value = CGI.unescape(value.gsub("+", CGI.escape("+")))
|
242
|
+
# elsif value&.is_a?(Integer)
|
243
|
+
# _value = value.to_s
|
244
|
+
end
|
245
|
+
end
|
246
|
+
|
247
|
+
private
|
248
|
+
|
249
|
+
def init
|
250
|
+
end
|
251
|
+
end
|
252
|
+
end
|
data/lib/htmlgrid/version.rb
CHANGED
data/test/test_component.rb
CHANGED
@@ -162,6 +162,13 @@ class TestComponent < Minitest::Test
|
|
162
162
|
assert_equal(true, comp.label?)
|
163
163
|
end
|
164
164
|
|
165
|
+
def test_integer_to_html
|
166
|
+
comp = HtmlGrid::Component.new("context")
|
167
|
+
comp.value = 3
|
168
|
+
result = comp.to_html(CGI.new)
|
169
|
+
assert_equal("3", result)
|
170
|
+
end
|
171
|
+
|
165
172
|
def test_escape
|
166
173
|
txt = "Guten Tag! & wie gehts uns denn heute? '<' schlechter oder '>' besser?"
|
167
174
|
control = txt.dup
|
@@ -0,0 +1,204 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
#
|
3
|
+
# HtmlGrid -- HyperTextMarkupLanguage Framework
|
4
|
+
# Copyright (C) 2003 ywesee - intellectual capital connected
|
5
|
+
# Hannes Wyss
|
6
|
+
#
|
7
|
+
# This library is free software; you can redistribute it and/or
|
8
|
+
# modify it under the terms of the GNU Lesser General Public
|
9
|
+
# License as published by the Free Software Foundation; either
|
10
|
+
# version 2.1 of the License, or (at your option) any later version.
|
11
|
+
#
|
12
|
+
# This library is distributed in the hope that it will be useful,
|
13
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
14
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
15
|
+
# Lesser General Public License for more details.
|
16
|
+
#
|
17
|
+
# You should have received a copy of the GNU Lesser General Public
|
18
|
+
# License along with this library; if not, write to the Free Software
|
19
|
+
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
20
|
+
#
|
21
|
+
# ywesee - intellectual capital connected, Winterthurerstrasse 52, CH-8006 Zuerich, Switzerland
|
22
|
+
# htmlgrid@ywesee.com, www.ywesee.com/htmlgrid
|
23
|
+
#
|
24
|
+
# TestComponent -- htmlgrid -- 26.11.2002 -- hwyss@ywesee.com
|
25
|
+
|
26
|
+
$: << File.expand_path("../lib", File.dirname(__FILE__))
|
27
|
+
$: << File.expand_path("../ext", File.dirname(__FILE__))
|
28
|
+
$: << File.dirname(__FILE__)
|
29
|
+
|
30
|
+
require "minitest/autorun"
|
31
|
+
require "htmlgrid/component"
|
32
|
+
require "stub/cgi"
|
33
|
+
|
34
|
+
module HtmlGrid
|
35
|
+
class Component
|
36
|
+
attr_reader :session, :container
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
class TestComponent < Minitest::Test
|
41
|
+
STRING_WITH_SHARP = "Test_#_gartenhat"
|
42
|
+
STRING_WITH_PLUS = "Test_+_plus"
|
43
|
+
STRING_WITH_UMLAUT = "Test_with_Umlaut_üé"
|
44
|
+
class StubAttributeComponent < HtmlGrid::Component
|
45
|
+
HTML_ATTRIBUTES = {"key" => "val"}
|
46
|
+
end
|
47
|
+
|
48
|
+
class StubInitComponent < HtmlGrid::Component
|
49
|
+
attr_reader :init_called
|
50
|
+
def init
|
51
|
+
@init_called = true
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
class StubLabelComponent < HtmlGrid::Component
|
56
|
+
LABEL = true
|
57
|
+
end
|
58
|
+
|
59
|
+
class StubContainer
|
60
|
+
attr_accessor :onsubmit
|
61
|
+
end
|
62
|
+
|
63
|
+
class ToHTMLreturnFrozen
|
64
|
+
def initialize content
|
65
|
+
@content = content
|
66
|
+
end
|
67
|
+
|
68
|
+
def to_html(what)
|
69
|
+
@content.to_s.freeze
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
def setup
|
74
|
+
@component = HtmlGrid::Component.new(nil, nil)
|
75
|
+
end
|
76
|
+
|
77
|
+
def test_initialize1
|
78
|
+
HtmlGrid::Component.new("foo", "bar")
|
79
|
+
comp = HtmlGrid::Component.new("foo", "bar")
|
80
|
+
assert_equal("foo", comp.model)
|
81
|
+
assert_equal("bar", comp.session)
|
82
|
+
assert_nil(comp.container)
|
83
|
+
assert_equal(false, comp.label?)
|
84
|
+
comp.label = true
|
85
|
+
assert_equal(true, comp.label?)
|
86
|
+
end
|
87
|
+
|
88
|
+
def test_initialize2
|
89
|
+
HtmlGrid::Component.new("foo", "bar", "baz")
|
90
|
+
comp = HtmlGrid::Component.new("foo", "bar", "baz")
|
91
|
+
assert_equal("foo", comp.model)
|
92
|
+
assert_equal("bar", comp.session)
|
93
|
+
assert_equal("baz", comp.container)
|
94
|
+
end
|
95
|
+
|
96
|
+
def test_to_html
|
97
|
+
comp = HtmlGrid::Component.new("foo", "bar", "baz").to_html(CGI.new)
|
98
|
+
assert_equal("", comp)
|
99
|
+
end
|
100
|
+
|
101
|
+
# Next is test for https://github.com/zdavatz/oddb.org/issues/118 FrozenError at /de/just-medical
|
102
|
+
def test_to_html_frozen_empty
|
103
|
+
comp = HtmlGrid::Component.new("context")
|
104
|
+
comp.value = ToHTMLreturnFrozen.new("")
|
105
|
+
result = comp.to_html(CGI.new)
|
106
|
+
assert_equal("", result)
|
107
|
+
end
|
108
|
+
|
109
|
+
def test_gartenhag_to_html
|
110
|
+
comp = HtmlGrid::Component.new("context")
|
111
|
+
comp.value = STRING_WITH_SHARP
|
112
|
+
result = comp.to_html(CGI.new)
|
113
|
+
assert_equal(STRING_WITH_SHARP, result)
|
114
|
+
end
|
115
|
+
|
116
|
+
def test_minus_to_html
|
117
|
+
comp = HtmlGrid::Component.new("context")
|
118
|
+
comp.value = STRING_WITH_PLUS
|
119
|
+
result = comp.to_html(CGI.new)
|
120
|
+
assert_equal(STRING_WITH_PLUS, result)
|
121
|
+
end
|
122
|
+
|
123
|
+
def test_umlaut_to_html
|
124
|
+
comp = HtmlGrid::Component.new("context")
|
125
|
+
comp.value = STRING_WITH_UMLAUT
|
126
|
+
result = comp.to_html(CGI.new)
|
127
|
+
assert_equal(STRING_WITH_UMLAUT, result)
|
128
|
+
end
|
129
|
+
|
130
|
+
def test_escaped_STRING_WITH_UMLAUT_to_html
|
131
|
+
comp = HtmlGrid::Component.new("context")
|
132
|
+
comp.value = CGI.escape(STRING_WITH_UMLAUT)
|
133
|
+
result = comp.to_html(CGI.new)
|
134
|
+
assert_equal(STRING_WITH_UMLAUT, result)
|
135
|
+
end
|
136
|
+
|
137
|
+
def test_initialize3
|
138
|
+
comp = StubAttributeComponent.new("foo", "bar")
|
139
|
+
expected = {"key" => "val"}
|
140
|
+
assert_respond_to(comp, :attributes)
|
141
|
+
assert_equal(expected, comp.attributes)
|
142
|
+
assert_equal(expected, StubAttributeComponent::HTML_ATTRIBUTES)
|
143
|
+
comp.attributes.store("other", "val")
|
144
|
+
expected2 = {"key" => "val", "other" => "val"}
|
145
|
+
assert_equal(expected2, comp.attributes)
|
146
|
+
assert_equal(expected, StubAttributeComponent::HTML_ATTRIBUTES)
|
147
|
+
assert_equal({}, @component.attributes)
|
148
|
+
assert_equal({}, HtmlGrid::Component::HTML_ATTRIBUTES)
|
149
|
+
@component.attributes.store("third", "val")
|
150
|
+
expected = {"third" => "val"}
|
151
|
+
assert_equal(expected, @component.attributes)
|
152
|
+
assert_equal({}, HtmlGrid::Component::HTML_ATTRIBUTES)
|
153
|
+
end
|
154
|
+
|
155
|
+
def test_initialize4
|
156
|
+
comp = StubInitComponent.new("foo", "bar")
|
157
|
+
assert_equal(true, comp.init_called)
|
158
|
+
end
|
159
|
+
|
160
|
+
def test_initialize5
|
161
|
+
comp = StubLabelComponent.new(nil, nil)
|
162
|
+
assert_equal(true, comp.label?)
|
163
|
+
end
|
164
|
+
|
165
|
+
def test_integer_to_html
|
166
|
+
comp = HtmlGrid::Component.new("context")
|
167
|
+
comp.value = 3
|
168
|
+
result = comp.to_html(CGI.new)
|
169
|
+
assert_equal("xx", result)
|
170
|
+
end
|
171
|
+
|
172
|
+
def test_escape
|
173
|
+
txt = "Guten Tag! & wie gehts uns denn heute? '<' schlechter oder '>' besser?"
|
174
|
+
control = txt.dup
|
175
|
+
expected = "Guten Tag! & wie gehts uns denn heute? '<' schlechter oder '>' besser?"
|
176
|
+
assert_equal(expected, @component.escape(txt))
|
177
|
+
assert_equal(control, txt)
|
178
|
+
assert_equal(expected, @component.escape(txt))
|
179
|
+
end
|
180
|
+
|
181
|
+
def test_escape_symbols
|
182
|
+
txt = "\263"
|
183
|
+
expected = "≥"
|
184
|
+
assert_equal(expected, @component.escape_symbols(txt))
|
185
|
+
end
|
186
|
+
|
187
|
+
def test_onsubmit
|
188
|
+
@component.onsubmit = "submitted"
|
189
|
+
assert_equal({}, @component.attributes)
|
190
|
+
cont = StubContainer.new
|
191
|
+
comp = HtmlGrid::Component.new("foo", "bar", cont)
|
192
|
+
comp.onsubmit = "submitted"
|
193
|
+
assert_equal("submitted", cont.onsubmit)
|
194
|
+
end
|
195
|
+
|
196
|
+
def test_set_attribute
|
197
|
+
assert_equal({}, @component.attributes)
|
198
|
+
@component.set_attribute("href", "http://www.ywesee.com")
|
199
|
+
expected = {
|
200
|
+
"href" => "http://www.ywesee.com"
|
201
|
+
}
|
202
|
+
assert_equal(expected, @component.attributes)
|
203
|
+
end
|
204
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: htmlgrid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Masaomi Hatakeyama, Zeno R.R. Davatz
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 1980-01-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sbsm
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 1.6.4
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: psych
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "<"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 4.0.0
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "<"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 4.0.0
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: bundler
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -175,6 +189,7 @@ files:
|
|
175
189
|
- lib/htmlgrid/button.rb
|
176
190
|
- lib/htmlgrid/centeredcomposite.rb
|
177
191
|
- lib/htmlgrid/component.rb
|
192
|
+
- lib/htmlgrid/component.rb~
|
178
193
|
- lib/htmlgrid/composite.rb
|
179
194
|
- lib/htmlgrid/datevalue.rb
|
180
195
|
- lib/htmlgrid/div.rb
|
@@ -221,10 +236,12 @@ files:
|
|
221
236
|
- lib/htmlgrid/urllink.rb
|
222
237
|
- lib/htmlgrid/value.rb
|
223
238
|
- lib/htmlgrid/version.rb
|
239
|
+
- lib/htmlgrid/version.rb~
|
224
240
|
- test/stub/cgi.rb
|
225
241
|
- test/suite.rb
|
226
242
|
- test/test_add_row.rb
|
227
243
|
- test/test_component.rb
|
244
|
+
- test/test_component.rb~
|
228
245
|
- test/test_composite.rb
|
229
246
|
- test/test_datevalue.rb
|
230
247
|
- test/test_divlist.rb
|
@@ -244,7 +261,7 @@ homepage: https://github.com/zdavatz/htmlgrid/
|
|
244
261
|
licenses:
|
245
262
|
- GPL v2.1
|
246
263
|
metadata: {}
|
247
|
-
post_install_message:
|
264
|
+
post_install_message:
|
248
265
|
rdoc_options: []
|
249
266
|
require_paths:
|
250
267
|
- lib
|
@@ -259,8 +276,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
259
276
|
- !ruby/object:Gem::Version
|
260
277
|
version: '0'
|
261
278
|
requirements: []
|
262
|
-
rubygems_version: 3.
|
263
|
-
signing_key:
|
279
|
+
rubygems_version: 3.3.20
|
280
|
+
signing_key:
|
264
281
|
specification_version: 4
|
265
282
|
summary: HtmlGrid is a Html-ToolKit for Ruby Webframeworks.
|
266
283
|
test_files: []
|