fun_html 0.1.2 → 0.1.4

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: b75c496a9c126ec7fc18e177ad37cea4d655d001b40b710e9d64ff5aff012c46
4
- data.tar.gz: dc933a8e59becf931b7765a153c78f288cb9fdeb89ce4438c834d66d58953483
3
+ metadata.gz: 4eb896c9f7e8a1f225b04bd5b47b9280158ec76b20ce27dbea4237ef6fe833fb
4
+ data.tar.gz: f56f5b4f9ad54fb6da2462bff7acfa49ec5f46fa016b88bc05746b3994dfc7b4
5
5
  SHA512:
6
- metadata.gz: 1454d3e35e562c82f47f3da006f726220401a91afedbbe22afc20176d154f457d7f6572faa561192ee830ea655802c8b6f6db460cb2c5ee4974fca6933fdfb15
7
- data.tar.gz: f99b9dce37b5ec953f0d785ed5a0afe7f15620c41b52975a197f2970e006851e915fd95553e93720e3c06d24bb742abcf9837839b490f3065f02050f01a5579a
6
+ metadata.gz: 3b20b2587d85eeb86fced3a578d0c3742f48d5cdda2d9f638ff53530d43647c509e10d7cbee6179d815a5eb31b49a44d828278e2a3095d8b19c80670a8730ab0
7
+ data.tar.gz: 85dea75031b3cddeea68f23821c12e1c686b1d40bea8d1386f2ede461ce4db027ffc55a2ef38c34d0da9f4962dcc58df0530a2f38abbbb9e3cbf4f6db1568faf
@@ -16,13 +16,13 @@ module FunHtml
16
16
  # Alternative text for images
17
17
  def alt(value) = write(' alt="', value)
18
18
  # Script should execute asynchronously
19
- def async(state = true) = write_empty(' async', state)
19
+ def async(value) = write_empty(' async', value)
20
20
  # Form/input autocompletion
21
21
  def autocomplete(value) = write(' autocomplete="', value)
22
22
  # Element should be focused on page load
23
- def autofocus(state = true) = write_empty(' autofocus', state)
23
+ def autofocus(value) = write_empty(' autofocus', value)
24
24
  # Media will start playing automatically
25
- def autoplay(state = true) = write_empty(' autoplay', state)
25
+ def autoplay(value) = write_empty(' autoplay', value)
26
26
  # Background color of element
27
27
  def bgcolor(value) = write(' bgcolor="', value)
28
28
  # Border width in pixels
@@ -30,7 +30,7 @@ module FunHtml
30
30
  # Character encoding of document
31
31
  def charset(value) = write(' charset="', value)
32
32
  # Whether checkbox/radio button is selected
33
- def checked(state = true) = write_empty(' checked', state)
33
+ def checked(value) = write_empty(' checked', value)
34
34
  # CSS class name(s) for styling
35
35
  def klass(value) = write(' class="', value)
36
36
  # Number of columns in textarea
@@ -42,21 +42,30 @@ module FunHtml
42
42
  # Whether content is editable
43
43
  def contenteditable(value) = write(' contenteditable="', value)
44
44
  # Show media playback controls
45
- def controls(state = true) = write_empty(' controls', state)
45
+ def controls(value) = write_empty(' controls', value)
46
46
  # Coordinates for image maps
47
47
  def coords(value) = write(' coords="', value)
48
+
48
49
  # Custom data attributes
49
- def data(value) = write(' data="', value)
50
+ def data(suffix, value)
51
+ unless suffix.match?(/\A[a-z-]+\z/)
52
+ raise ArgumentError,
53
+ "suffix (#{suffix}) must be lowercase and only contain 'a' to 'z' or hyphens."
54
+ end
55
+
56
+ write(" data-#{suffix}=\"", value)
57
+ end
58
+
50
59
  # Date/time of element content
51
60
  def datetime(value) = write(' datetime="', value)
52
61
  # Default track for media
53
- def default(state = true) = write_empty(' default', state)
62
+ def default(value) = write_empty(' default', value)
54
63
  # Script should execute after parsing
55
- def defer(state = true) = write_empty(' defer', state)
64
+ def defer(value) = write_empty(' defer', value)
56
65
  # Text direction
57
66
  def dir(value) = write(' dir="', value)
58
67
  # Element is disabled
59
- def disabled(state = true) = write_empty(' disabled', state)
68
+ def disabled(value) = write_empty(' disabled', value)
60
69
  # Resource should be downloaded
61
70
  def download(value) = write(' download="', value)
62
71
  # Element can be dragged
@@ -74,7 +83,7 @@ module FunHtml
74
83
  # Height of element
75
84
  def height(value) = write(' height="', value)
76
85
  # Element is not displayed
77
- def hidden(state = true) = write_empty(' hidden', state)
86
+ def hidden(value) = write_empty(' hidden', value)
78
87
  # Upper range of meter
79
88
  def high(value) = write(' high="', value)
80
89
  # URL of linked resource
@@ -86,7 +95,7 @@ module FunHtml
86
95
  # Subresource integrity hash
87
96
  def integrity(value) = write(' integrity="', value)
88
97
  # Image is server-side image map
89
- def ismap(state = true) = write_empty(' ismap', state)
98
+ def ismap(value) = write_empty(' ismap', value)
90
99
  # Type of text track
91
100
  def kind(value) = write(' kind="', value)
92
101
  # Label for form control/option
@@ -96,7 +105,7 @@ module FunHtml
96
105
  # Links input to datalist options
97
106
  def list(value) = write(' list="', value)
98
107
  # Media will replay when finished
99
- def loop(state = true) = write_empty(' loop', state)
108
+ def loop(value) = write_empty(' loop', value)
100
109
  # Lower range of meter
101
110
  def low(value) = write(' low="', value)
102
111
  # Maximum allowed value
@@ -110,15 +119,15 @@ module FunHtml
110
119
  # Minimum allowed value
111
120
  def min(value) = write(' min="', value)
112
121
  # Multiple values can be selected
113
- def multiple(state = true) = write_empty(' multiple', state)
122
+ def multiple(value) = write_empty(' multiple', value)
114
123
  # Media is muted by default
115
- def muted(state = true) = write_empty(' muted', state)
124
+ def muted(value) = write_empty(' muted', value)
116
125
  # Name of form control
117
126
  def name(value) = write(' name="', value)
118
127
  # Form validation is skipped
119
- def novalidate(state = true) = write_empty(' novalidate', state)
128
+ def novalidate(value) = write_empty(' novalidate', value)
120
129
  # Details element is expanded
121
- def open(state = true) = write_empty(' open', state)
130
+ def open(value) = write_empty(' open', value)
122
131
  # Optimal value for meter
123
132
  def optimum(value) = write(' optimum="', value)
124
133
  # Regular expression pattern
@@ -130,13 +139,13 @@ module FunHtml
130
139
  # How media should be loaded
131
140
  def preload(value) = write(' preload="', value)
132
141
  # Input field cannot be modified
133
- def readonly(state = true) = write_empty(' readonly', state)
142
+ def readonly(value) = write_empty(' readonly', value)
134
143
  # Relationship of linked resource
135
144
  def rel(value) = write(' rel="', value)
136
145
  # Input must be filled out
137
- def required(state = true) = write_empty(' required', state)
146
+ def required(value) = write_empty(' required', value)
138
147
  # List is numbered in reverse
139
- def reversed(state = true) = write_empty(' reversed', state)
148
+ def reversed(value) = write_empty(' reversed', value)
140
149
  # Number of rows in textarea
141
150
  def rows(value) = write(' rows="', value)
142
151
  # Number of rows a cell spans
@@ -146,7 +155,7 @@ module FunHtml
146
155
  # Cells header element relates to
147
156
  def scope(value) = write(' scope="', value)
148
157
  # Option is pre-selected
149
- def selected(state = true) = write_empty(' selected', state)
158
+ def selected(value) = write_empty(' selected', value)
150
159
  # Shape of image map area
151
160
  def shape(value) = write(' shape="', value)
152
161
  # Size of input/select control
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module FunHtml
4
- VERSION = '0.1.2'
4
+ VERSION = '0.1.4'
5
5
  end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FunHtml
4
+ # HTML attributes autogenerated, do not edit
5
+ module AttributeDefinitions
6
+ sig { params(suffix: String, value: T::Boolean).void }
7
+ def data(suffix, value); end
8
+ end
9
+ end