phlex 1.9.3 → 1.10.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of phlex might be problematic. Click here for more details.

@@ -8,446 +8,446 @@ module Phlex::SVG::StandardElements
8
8
  # @return [nil]
9
9
  # @yieldparam component [self]
10
10
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/a
11
- register_element :a, tag: "a"
11
+ register_element :a
12
12
 
13
13
  # @!method animate(**attributes, &content)
14
14
  # Outputs an `<animate>` tag.
15
15
  # @return [nil]
16
16
  # @yieldparam component [self]
17
17
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/animate
18
- register_element :animate, tag: "animate"
18
+ register_element :animate
19
19
 
20
20
  # @!method animateMotion(**attributes, &content)
21
21
  # Outputs an `<animateMotion>` tag.
22
22
  # @return [nil]
23
23
  # @yieldparam component [self]
24
24
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/animateMotion
25
- register_element :animateMotion, tag: "animateMotion"
25
+ register_element :animateMotion
26
26
 
27
27
  # @!method animateTransform(**attributes, &content)
28
28
  # Outputs an `<animateTransform>` tag.
29
29
  # @return [nil]
30
30
  # @yieldparam component [self]
31
31
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/animateTransform
32
- register_element :animateTransform, tag: "animateTransform"
32
+ register_element :animateTransform
33
33
 
34
34
  # @!method circle(**attributes, &content)
35
35
  # Outputs a `<circle>` tag.
36
36
  # @return [nil]
37
37
  # @yieldparam component [self]
38
38
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/circle
39
- register_element :circle, tag: "circle"
39
+ register_element :circle
40
40
 
41
41
  # @!method clipPath(**attributes, &content)
42
42
  # Outputs a `<clipPath>` tag.
43
43
  # @return [nil]
44
44
  # @yieldparam component [self]
45
45
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/clipPath
46
- register_element :clipPath, tag: "clipPath"
46
+ register_element :clipPath
47
47
 
48
48
  # @!method defs(**attributes, &content)
49
49
  # Outputs a `<defs>` tag.
50
50
  # @return [nil]
51
51
  # @yieldparam component [self]
52
52
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/defs
53
- register_element :defs, tag: "defs"
53
+ register_element :defs
54
54
 
55
55
  # @!method desc(**attributes, &content)
56
56
  # Outputs a `<desc>` tag.
57
57
  # @return [nil]
58
58
  # @yieldparam component [self]
59
59
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/desc
60
- register_element :desc, tag: "desc"
60
+ register_element :desc
61
61
 
62
62
  # @!method discard(**attributes, &content)
63
63
  # Outputs a `<discard>` tag.
64
64
  # @return [nil]
65
65
  # @yieldparam component [self]
66
66
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/discard
67
- register_element :discard, tag: "discard"
67
+ register_element :discard
68
68
 
69
69
  # @!method ellipse(**attributes, &content)
70
70
  # Outputs an `<ellipse>` tag.
71
71
  # @return [nil]
72
72
  # @yieldparam component [self]
73
73
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/ellipse
74
- register_element :ellipse, tag: "ellipse"
74
+ register_element :ellipse
75
75
 
76
76
  # @!method feBlend(**attributes, &content)
77
77
  # Outputs an `<feBlend>` tag.
78
78
  # @return [nil]
79
79
  # @yieldparam component [self]
80
80
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feBlend
81
- register_element :feBlend, tag: "feBlend"
81
+ register_element :feBlend
82
82
 
83
83
  # @!method feColorMatrix(**attributes, &content)
84
84
  # Outputs an `<feColorMatrix>` tag.
85
85
  # @return [nil]
86
86
  # @yieldparam component [self]
87
87
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feColorMatrix
88
- register_element :feColorMatrix, tag: "feColorMatrix"
88
+ register_element :feColorMatrix
89
89
 
90
90
  # @!method feComponentTransfer(**attributes, &content)
91
91
  # Outputs an `<feComponentTransfer>` tag.
92
92
  # @return [nil]
93
93
  # @yieldparam component [self]
94
94
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feComponentTransfer
95
- register_element :feComponentTransfer, tag: "feComponentTransfer"
95
+ register_element :feComponentTransfer
96
96
 
97
97
  # @!method feComposite(**attributes, &content)
98
98
  # Outputs an `<feComposite>` tag.
99
99
  # @return [nil]
100
100
  # @yieldparam component [self]
101
101
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feComposite
102
- register_element :feComposite, tag: "feComposite"
102
+ register_element :feComposite
103
103
 
104
104
  # @!method feConvolveMatrix(**attributes, &content)
105
105
  # Outputs an `<feConvolveMatrix>` tag.
106
106
  # @return [nil]
107
107
  # @yieldparam component [self]
108
108
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feConvolveMatrix
109
- register_element :feConvolveMatrix, tag: "feConvolveMatrix"
109
+ register_element :feConvolveMatrix
110
110
 
111
111
  # @!method feDiffuseLighting(**attributes, &content)
112
112
  # Outputs an `<feDiffuseLighting>` tag.
113
113
  # @return [nil]
114
114
  # @yieldparam component [self]
115
115
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feDiffuseLighting
116
- register_element :feDiffuseLighting, tag: "feDiffuseLighting"
116
+ register_element :feDiffuseLighting
117
117
 
118
118
  # @!method feDisplacementMap(**attributes, &content)
119
119
  # Outputs an `<feDisplacementMap>` tag.
120
120
  # @return [nil]
121
121
  # @yieldparam component [self]
122
122
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feDisplacementMap
123
- register_element :feDisplacementMap, tag: "feDisplacementMap"
123
+ register_element :feDisplacementMap
124
124
 
125
125
  # @!method feDistantLight(**attributes, &content)
126
126
  # Outputs an `<feDistantLight>` tag.
127
127
  # @return [nil]
128
128
  # @yieldparam component [self]
129
129
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feDistantLight
130
- register_element :feDistantLight, tag: "feDistantLight"
130
+ register_element :feDistantLight
131
131
 
132
132
  # @!method feDropShadow(**attributes, &content)
133
133
  # Outputs an `<feDropShadow>` tag.
134
134
  # @return [nil]
135
135
  # @yieldparam component [self]
136
136
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feDropShadow
137
- register_element :feDropShadow, tag: "feDropShadow"
137
+ register_element :feDropShadow
138
138
 
139
139
  # @!method feFlood(**attributes, &content)
140
140
  # Outputs an `<feFlood>` tag.
141
141
  # @return [nil]
142
142
  # @yieldparam component [self]
143
143
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feFlood
144
- register_element :feFlood, tag: "feFlood"
144
+ register_element :feFlood
145
145
 
146
146
  # @!method feFuncA(**attributes, &content)
147
147
  # Outputs an `<feFuncA>` tag.
148
148
  # @return [nil]
149
149
  # @yieldparam component [self]
150
150
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feFuncA
151
- register_element :feFuncA, tag: "feFuncA"
151
+ register_element :feFuncA
152
152
 
153
153
  # @!method feFuncB(**attributes, &content)
154
154
  # Outputs an `<feFuncB>` tag.
155
155
  # @return [nil]
156
156
  # @yieldparam component [self]
157
157
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feFuncB
158
- register_element :feFuncB, tag: "feFuncB"
158
+ register_element :feFuncB
159
159
 
160
160
  # @!method feFuncG(**attributes, &content)
161
161
  # Outputs an `<feFuncG>` tag.
162
162
  # @return [nil]
163
163
  # @yieldparam component [self]
164
164
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feFuncG
165
- register_element :feFuncG, tag: "feFuncG"
165
+ register_element :feFuncG
166
166
 
167
167
  # @!method feFuncR(**attributes, &content)
168
168
  # Outputs an `<feFuncR>` tag.
169
169
  # @return [nil]
170
170
  # @yieldparam component [self]
171
171
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feFuncR
172
- register_element :feFuncR, tag: "feFuncR"
172
+ register_element :feFuncR
173
173
 
174
174
  # @!method feGaussianBlur(**attributes, &content)
175
175
  # Outputs an `<feGaussianBlur>` tag.
176
176
  # @return [nil]
177
177
  # @yieldparam component [self]
178
178
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feGaussianBlur
179
- register_element :feGaussianBlur, tag: "feGaussianBlur"
179
+ register_element :feGaussianBlur
180
180
 
181
181
  # @!method feImage(**attributes, &content)
182
182
  # Outputs an `<feImage>` tag.
183
183
  # @return [nil]
184
184
  # @yieldparam component [self]
185
185
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feImage
186
- register_element :feImage, tag: "feImage"
186
+ register_element :feImage
187
187
 
188
188
  # @!method feMerge(**attributes, &content)
189
189
  # Outputs an `<feMerge>` tag.
190
190
  # @return [nil]
191
191
  # @yieldparam component [self]
192
192
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feMerge
193
- register_element :feMerge, tag: "feMerge"
193
+ register_element :feMerge
194
194
 
195
195
  # @!method feMergeNode(**attributes, &content)
196
196
  # Outputs an `<feMergeNode>` tag.
197
197
  # @return [nil]
198
198
  # @yieldparam component [self]
199
199
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feMergeNode
200
- register_element :feMergeNode, tag: "feMergeNode"
200
+ register_element :feMergeNode
201
201
 
202
202
  # @!method feMorphology(**attributes, &content)
203
203
  # Outputs an `<feMorphology>` tag.
204
204
  # @return [nil]
205
205
  # @yieldparam component [self]
206
206
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feMorphology
207
- register_element :feMorphology, tag: "feMorphology"
207
+ register_element :feMorphology
208
208
 
209
209
  # @!method feOffset(**attributes, &content)
210
210
  # Outputs an `<feOffset>` tag.
211
211
  # @return [nil]
212
212
  # @yieldparam component [self]
213
213
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feOffset
214
- register_element :feOffset, tag: "feOffset"
214
+ register_element :feOffset
215
215
 
216
216
  # @!method fePointLight(**attributes, &content)
217
217
  # Outputs an `<fePointLight>` tag.
218
218
  # @return [nil]
219
219
  # @yieldparam component [self]
220
220
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/fePointLight
221
- register_element :fePointLight, tag: "fePointLight"
221
+ register_element :fePointLight
222
222
 
223
223
  # @!method feSpecularLighting(**attributes, &content)
224
224
  # Outputs an `<feSpecularLighting>` tag.
225
225
  # @return [nil]
226
226
  # @yieldparam component [self]
227
227
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feSpecularLighting
228
- register_element :feSpecularLighting, tag: "feSpecularLighting"
228
+ register_element :feSpecularLighting
229
229
 
230
230
  # @!method feSpotLight(**attributes, &content)
231
231
  # Outputs an `<feSpotLight>` tag.
232
232
  # @return [nil]
233
233
  # @yieldparam component [self]
234
234
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feSpotLight
235
- register_element :feSpotLight, tag: "feSpotLight"
235
+ register_element :feSpotLight
236
236
 
237
237
  # @!method feTile(**attributes, &content)
238
238
  # Outputs an `<feTile>` tag.
239
239
  # @return [nil]
240
240
  # @yieldparam component [self]
241
241
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feTile
242
- register_element :feTile, tag: "feTile"
242
+ register_element :feTile
243
243
 
244
244
  # @!method feTurbulence(**attributes, &content)
245
245
  # Outputs an `<feTurbulence>` tag.
246
246
  # @return [nil]
247
247
  # @yieldparam component [self]
248
248
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/feTurbulence
249
- register_element :feTurbulence, tag: "feTurbulence"
249
+ register_element :feTurbulence
250
250
 
251
251
  # @!method filter(**attributes, &content)
252
252
  # Outputs a `<filter>` tag.
253
253
  # @return [nil]
254
254
  # @yieldparam component [self]
255
255
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/filter
256
- register_element :filter, tag: "filter"
256
+ register_element :filter
257
257
 
258
258
  # @!method foreignObject(**attributes, &content)
259
259
  # Outputs a `<foreignObject>` tag.
260
260
  # @return [nil]
261
261
  # @yieldparam component [self]
262
262
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/foreignObject
263
- register_element :foreignObject, tag: "foreignObject"
263
+ register_element :foreignObject
264
264
 
265
265
  # @!method g(**attributes, &content)
266
266
  # Outputs a `<g>` tag.
267
267
  # @return [nil]
268
268
  # @yieldparam component [self]
269
269
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/g
270
- register_element :g, tag: "g"
270
+ register_element :g
271
271
 
272
272
  # @!method image(**attributes, &content)
273
273
  # Outputs an `<image>` tag.
274
274
  # @return [nil]
275
275
  # @yieldparam component [self]
276
276
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/image
277
- register_element :image, tag: "image"
277
+ register_element :image
278
278
 
279
279
  # @!method line(**attributes, &content)
280
280
  # Outputs a `<line>` tag.
281
281
  # @return [nil]
282
282
  # @yieldparam component [self]
283
283
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/line
284
- register_element :line, tag: "line"
284
+ register_element :line
285
285
 
286
286
  # @!method linearGradient(**attributes, &content)
287
287
  # Outputs a `<linearGradient>` tag.
288
288
  # @return [nil]
289
289
  # @yieldparam component [self]
290
290
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/linearGradient
291
- register_element :linearGradient, tag: "linearGradient"
291
+ register_element :linearGradient
292
292
 
293
293
  # @!method marker(**attributes, &content)
294
294
  # Outputs a `<marker>` tag.
295
295
  # @return [nil]
296
296
  # @yieldparam component [self]
297
297
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/marker
298
- register_element :marker, tag: "marker"
298
+ register_element :marker
299
299
 
300
300
  # @!method mask(**attributes, &content)
301
301
  # Outputs a `<mask>` tag.
302
302
  # @return [nil]
303
303
  # @yieldparam component [self]
304
304
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/mask
305
- register_element :mask, tag: "mask"
305
+ register_element :mask
306
306
 
307
307
  # @!method metadata(**attributes, &content)
308
308
  # Outputs a `<metadata>` tag.
309
309
  # @return [nil]
310
310
  # @yieldparam component [self]
311
311
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/metadata
312
- register_element :metadata, tag: "metadata"
312
+ register_element :metadata
313
313
 
314
314
  # @!method mpath(**attributes, &content)
315
315
  # Outputs an `<mpath>` tag.
316
316
  # @return [nil]
317
317
  # @yieldparam component [self]
318
318
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/mpath
319
- register_element :mpath, tag: "mpath"
319
+ register_element :mpath
320
320
 
321
321
  # @!method path(**attributes, &content)
322
322
  # Outputs a `<path>` tag.
323
323
  # @return [nil]
324
324
  # @yieldparam component [self]
325
325
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/path
326
- register_element :path, tag: "path"
326
+ register_element :path
327
327
 
328
328
  # @!method pattern(**attributes, &content)
329
329
  # Outputs a `<pattern>` tag.
330
330
  # @return [nil]
331
331
  # @yieldparam component [self]
332
332
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/pattern
333
- register_element :pattern, tag: "pattern"
333
+ register_element :pattern
334
334
 
335
335
  # @!method polygon(**attributes, &content)
336
336
  # Outputs a `<polygon>` tag.
337
337
  # @return [nil]
338
338
  # @yieldparam component [self]
339
339
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/polygon
340
- register_element :polygon, tag: "polygon"
340
+ register_element :polygon
341
341
 
342
342
  # @!method polyline(**attributes, &content)
343
343
  # Outputs a `<polyline>` tag.
344
344
  # @return [nil]
345
345
  # @yieldparam component [self]
346
346
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/polyline
347
- register_element :polyline, tag: "polyline"
347
+ register_element :polyline
348
348
 
349
349
  # @!method radialGradient(**attributes, &content)
350
350
  # Outputs a `<radialGradient>` tag.
351
351
  # @return [nil]
352
352
  # @yieldparam component [self]
353
353
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/radialGradient
354
- register_element :radialGradient, tag: "radialGradient"
354
+ register_element :radialGradient
355
355
 
356
356
  # @!method rect(**attributes, &content)
357
357
  # Outputs a `<rect>` tag.
358
358
  # @return [nil]
359
359
  # @yieldparam component [self]
360
360
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/rect
361
- register_element :rect, tag: "rect"
361
+ register_element :rect
362
362
 
363
363
  # @!method script(**attributes, &content)
364
364
  # Outputs a `<script>` tag.
365
365
  # @return [nil]
366
366
  # @yieldparam component [self]
367
367
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/script
368
- register_element :script, tag: "script"
368
+ register_element :script
369
369
 
370
370
  # @!method set(**attributes, &content)
371
371
  # Outputs a `<set>` tag.
372
372
  # @return [nil]
373
373
  # @yieldparam component [self]
374
374
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/set
375
- register_element :set, tag: "set"
375
+ register_element :set
376
376
 
377
377
  # @!method stop(**attributes, &content)
378
378
  # Outputs a `<stop>` tag.
379
379
  # @return [nil]
380
380
  # @yieldparam component [self]
381
381
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/stop
382
- register_element :stop, tag: "stop"
382
+ register_element :stop
383
383
 
384
384
  # @!method style(**attributes, &content)
385
385
  # Outputs a `<style>` tag.
386
386
  # @return [nil]
387
387
  # @yieldparam component [self]
388
388
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/style
389
- register_element :style, tag: "style"
389
+ register_element :style
390
390
 
391
391
  # @!method svg(**attributes, &content)
392
392
  # Outputs an `<svg>` tag.
393
393
  # @return [nil]
394
394
  # @yieldparam component [self]
395
395
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/svg
396
- register_element :svg, tag: "svg"
396
+ register_element :svg
397
397
 
398
398
  # @!method switch(**attributes, &content)
399
399
  # Outputs a `<switch>` tag.
400
400
  # @return [nil]
401
401
  # @yieldparam component [self]
402
402
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/switch
403
- register_element :switch, tag: "switch"
403
+ register_element :switch
404
404
 
405
405
  # @!method symbol(**attributes, &content)
406
406
  # Outputs a `<symbol>` tag.
407
407
  # @return [nil]
408
408
  # @yieldparam component [self]
409
409
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/symbol
410
- register_element :symbol, tag: "symbol"
410
+ register_element :symbol
411
411
 
412
412
  # @!method text(**attributes, &content)
413
413
  # Outputs a `<text>` tag.
414
414
  # @return [nil]
415
415
  # @yieldparam component [self]
416
416
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/text
417
- register_element :text, tag: "text"
417
+ register_element :text
418
418
 
419
419
  # @!method textPath(**attributes, &content)
420
420
  # Outputs a `<textPath>` tag.
421
421
  # @return [nil]
422
422
  # @yieldparam component [self]
423
423
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/textPath
424
- register_element :textPath, tag: "textPath"
424
+ register_element :textPath
425
425
 
426
426
  # @!method title(**attributes, &content)
427
427
  # Outputs a `<title>` tag.
428
428
  # @return [nil]
429
429
  # @yieldparam component [self]
430
430
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/title
431
- register_element :title, tag: "title"
431
+ register_element :title
432
432
 
433
433
  # @!method tspan(**attributes, &content)
434
434
  # Outputs a `<tspan>` tag.
435
435
  # @return [nil]
436
436
  # @yieldparam component [self]
437
437
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/tspan
438
- register_element :tspan, tag: "tspan"
438
+ register_element :tspan
439
439
 
440
440
  # @!method use(**attributes, &content)
441
441
  # Outputs a `<use>` tag.
442
442
  # @return [nil]
443
443
  # @yieldparam component [self]
444
444
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/use
445
- register_element :use, tag: "use"
445
+ register_element :use
446
446
 
447
447
  # @!method view(**attributes, &content)
448
448
  # Outputs a `<view>` tag.
449
449
  # @return [nil]
450
450
  # @yieldparam component [self]
451
451
  # @see https://developer.mozilla.org/docs/Web/SVG/Element/view
452
- register_element :view, tag: "view"
452
+ register_element :view
453
453
  end
data/lib/phlex/svg.rb CHANGED
@@ -2,9 +2,19 @@
2
2
 
3
3
  module Phlex
4
4
  class SVG < SGML
5
+ autoload :StandardElements, "phlex/svg/standard_elements"
6
+
5
7
  include StandardElements
6
8
 
7
9
  # This should be extended after all method definitions
8
10
  extend ElementClobberingGuard
11
+
12
+ def content_type
13
+ "image/svg+xml"
14
+ end
15
+
16
+ def filename
17
+ nil
18
+ end
9
19
  end
10
20
  end
data/lib/phlex/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Phlex
4
- VERSION = "1.9.3"
4
+ VERSION = "1.10.0"
5
5
  end
data/lib/phlex.rb CHANGED
@@ -1,15 +1,34 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "erb"
4
- require "zeitwerk"
5
- require "concurrent"
6
4
 
7
5
  module Phlex
6
+ autoload :Context, "phlex/context"
7
+ autoload :DeferredRender, "phlex/deferred_render"
8
+ autoload :ElementClobberingGuard, "phlex/element_clobbering_guard"
9
+ autoload :Elements, "phlex/elements"
10
+ autoload :HTML, "phlex/html"
11
+ autoload :Helpers, "phlex/helpers"
12
+ autoload :SGML, "phlex/sgml"
13
+ autoload :SVG, "phlex/svg"
14
+ autoload :Unbuffered, "phlex/unbuffered"
15
+ autoload :ConcurrentMap, "phlex/concurrent_map"
16
+ autoload :BlackHole, "phlex/black_hole"
17
+ autoload :CSV, "phlex/csv"
18
+ autoload :Callable, "phlex/callable"
19
+ autoload :Kit, "phlex/kit"
20
+
8
21
  # Included in all Phlex exceptions allowing you to match any Phlex error.
9
22
  # @example Rescue any Phlex error:
10
23
  # rescue Phlex::Error
11
24
  module Error; end
12
25
 
26
+ if defined?(ERB::Escape)
27
+ Escape = ERB::Escape
28
+ else
29
+ Escape = ERB::Util
30
+ end
31
+
13
32
  # A specialised ArgumentError for Phlex.
14
33
  class ArgumentError < ::ArgumentError
15
34
  include Error
@@ -21,16 +40,19 @@ module Phlex
21
40
  end
22
41
 
23
42
  # @api private
24
- Loader = Zeitwerk::Loader.for_gem(warn_on_extra_files: false).tap do |loader|
25
- loader.inflector.inflect(
26
- "html" => "HTML",
27
- "svg" => "SVG",
28
- "sgml" => "SGML"
29
- )
30
- loader.ignore("#{__dir__}/phlex/testing")
31
- loader.setup
43
+ ATTRIBUTE_CACHE = {}
44
+
45
+ SUPPORTS_FIBER_STORAGE = Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("3.2")
46
+ end
47
+
48
+ if Gem::Version.new(RUBY_VERSION) < Gem::Version.new("3.0")
49
+ class Symbol
50
+ def name
51
+ to_s
52
+ end
32
53
  end
54
+ end
33
55
 
34
- # @api private
35
- ATTRIBUTE_CACHE = Concurrent::Map.new
56
+ def 💪
57
+ Phlex
36
58
  end
data/phlex_logo.png ADDED
Binary file
data/sig/phlex.rbs ADDED
@@ -0,0 +1,4 @@
1
+ module Phlex
2
+ VERSION: String
3
+ # See the writing guide of rbs: https://github.com/ruby/rbs#guides
4
+ end