typewriter 0.1.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.
- checksums.yaml +7 -0
- data/lib/typewriter/attribute.rb +102 -0
- data/lib/typewriter/spec_attributes.rb +254 -0
- data/lib/typewriter/spec_elements.rb +793 -0
- data/lib/typewriter/template.rb +122 -0
- data/lib/typewriter/version.rb +5 -0
- data/lib/typewriter/writer.rb +54 -0
- data/lib/typewriter.rb +9 -0
- data/rbi/attributes.rbx +189 -0
- data/rbi/elements.rbx +924 -0
- data/rbi/typewriter.rbi +936 -0
- data/rbi/typewriter.rbx +107 -0
- metadata +59 -0
data/rbi/typewriter.rbx
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
module Typewriter
|
|
5
|
+
class Template
|
|
6
|
+
JOIN_ERROR = T.let(T.unsafe(nil), String)
|
|
7
|
+
|
|
8
|
+
include Typewriter::Writer
|
|
9
|
+
include Typewriter::SpecElements::HTMLAllElements
|
|
10
|
+
|
|
11
|
+
sig { params(block: T.proc.params(arg0: T.attached_class).void).returns(T.attached_class) }
|
|
12
|
+
def self.start(&block); end
|
|
13
|
+
|
|
14
|
+
sig { params(templates: T::Array[Typewriter::Writer]).returns(T.self_type) }
|
|
15
|
+
def join(templates); end
|
|
16
|
+
|
|
17
|
+
sig do
|
|
18
|
+
params(blk: T.nilable(T.proc.params(arg0: Typewriter::Attribute).void)).returns(Typewriter::Attribute)
|
|
19
|
+
end
|
|
20
|
+
def attr(&blk); end
|
|
21
|
+
|
|
22
|
+
sig { params(value: String).returns(T.self_type) }
|
|
23
|
+
def text(value); end
|
|
24
|
+
|
|
25
|
+
sig { returns(T.self_type) }
|
|
26
|
+
def doctype; end
|
|
27
|
+
|
|
28
|
+
sig do
|
|
29
|
+
params(attributes: T.nilable(Typewriter::Attribute),
|
|
30
|
+
block: T.proc.returns(String)).returns(T.self_type)
|
|
31
|
+
end
|
|
32
|
+
def script(attributes, &block); end
|
|
33
|
+
|
|
34
|
+
sig { params(comment_text: T.nilable(String)).returns(T.self_type) }
|
|
35
|
+
def comment(comment_text = nil); end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
module Writer
|
|
39
|
+
sig { void }
|
|
40
|
+
def initialize
|
|
41
|
+
@__buffer = T.let(+'', String)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
sig { params(value: String).returns(T.self_type) }
|
|
45
|
+
def unsafe_text(value); end
|
|
46
|
+
|
|
47
|
+
sig { returns(String) }
|
|
48
|
+
def render; end
|
|
49
|
+
|
|
50
|
+
private
|
|
51
|
+
|
|
52
|
+
sig { returns(String) }
|
|
53
|
+
def new_string; end
|
|
54
|
+
|
|
55
|
+
sig do
|
|
56
|
+
params(open: String, close: String, attr: T.nilable(Typewriter::Attribute), closing_char: String,
|
|
57
|
+
block: T.nilable(T.proc.params(arg0: Typewriter::Writer).void)).returns(T.self_type)
|
|
58
|
+
end
|
|
59
|
+
def write(open, close, attr = nil, closing_char: CLOSE, &block); end
|
|
60
|
+
|
|
61
|
+
sig { params(open: String, attr: T.nilable(Typewriter::Attribute)).void }
|
|
62
|
+
def write_void(open, attr = nil); end
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
class Attribute
|
|
66
|
+
extend T::Sig
|
|
67
|
+
|
|
68
|
+
sig do
|
|
69
|
+
params(buffer: T::Hash[String, T.untyped], block: T.nilable(T.proc.params(arg0: Typewriter::Attribute).void)).void
|
|
70
|
+
end
|
|
71
|
+
def initialize(buffer = {}, &block) # rubocop:disable Lint/UnusedMethodArgument
|
|
72
|
+
@__buffer = buffer
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
sig { params(suffix: String, value: String).returns(Typewriter::Attribute) }
|
|
76
|
+
def data(suffix, value); end
|
|
77
|
+
|
|
78
|
+
sig { params(name: String, value: String).returns(Typewriter::Attribute) }
|
|
79
|
+
def attribute(name, value); end
|
|
80
|
+
|
|
81
|
+
sig { params(value: String).returns(Typewriter::Attribute) }
|
|
82
|
+
def klass(value); end
|
|
83
|
+
|
|
84
|
+
sig { params(attr: T.nilable(Typewriter::Attribute)).returns(String) }
|
|
85
|
+
def self.to_html(attr); end
|
|
86
|
+
|
|
87
|
+
sig { params(list: T::Hash[String, T::Boolean]).returns(Typewriter::Attribute) }
|
|
88
|
+
def classes(list); end
|
|
89
|
+
|
|
90
|
+
sig { params(list: T::Hash[String, T::Boolean]).returns(Typewriter::Attribute) }
|
|
91
|
+
def klasses(list); end
|
|
92
|
+
|
|
93
|
+
sig { params(other: Typewriter::Attribute).returns(Typewriter::Attribute) }
|
|
94
|
+
def merge(other); end
|
|
95
|
+
|
|
96
|
+
sig { returns(String) }
|
|
97
|
+
def safe_attribute; end
|
|
98
|
+
|
|
99
|
+
sig { params(name: String, value: T.untyped).returns(Typewriter::Attribute) }
|
|
100
|
+
def write(name, value); end
|
|
101
|
+
|
|
102
|
+
sig { params(name: String, print: T::Boolean).returns(Typewriter::Attribute) }
|
|
103
|
+
def write_boolean(name, print); end
|
|
104
|
+
|
|
105
|
+
include Typewriter::SpecAttributes
|
|
106
|
+
end
|
|
107
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: typewriter
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.1.0
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- John Weir
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2025-09-07 00:00:00.000000000 Z
|
|
12
|
+
dependencies: []
|
|
13
|
+
description: It probably is not much fun, despite the name.
|
|
14
|
+
email:
|
|
15
|
+
- john.weir@pharos-ei.com
|
|
16
|
+
executables: []
|
|
17
|
+
extensions: []
|
|
18
|
+
extra_rdoc_files: []
|
|
19
|
+
files:
|
|
20
|
+
- lib/typewriter.rb
|
|
21
|
+
- lib/typewriter/attribute.rb
|
|
22
|
+
- lib/typewriter/spec_attributes.rb
|
|
23
|
+
- lib/typewriter/spec_elements.rb
|
|
24
|
+
- lib/typewriter/template.rb
|
|
25
|
+
- lib/typewriter/version.rb
|
|
26
|
+
- lib/typewriter/writer.rb
|
|
27
|
+
- rbi/attributes.rbx
|
|
28
|
+
- rbi/elements.rbx
|
|
29
|
+
- rbi/typewriter.rbi
|
|
30
|
+
- rbi/typewriter.rbx
|
|
31
|
+
homepage: https://github.com/jweir/typewriter
|
|
32
|
+
licenses:
|
|
33
|
+
- MIT
|
|
34
|
+
metadata:
|
|
35
|
+
homepage_uri: https://github.com/jweir/typewriter
|
|
36
|
+
source_code_uri: https://github.com/jweir/typewriter
|
|
37
|
+
changelog_uri: https://github.com/jweir/typewriter/CHANGES.md
|
|
38
|
+
rubygems_mfa_required: 'true'
|
|
39
|
+
post_install_message:
|
|
40
|
+
rdoc_options: []
|
|
41
|
+
require_paths:
|
|
42
|
+
- lib
|
|
43
|
+
- rbi
|
|
44
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
45
|
+
requirements:
|
|
46
|
+
- - ">="
|
|
47
|
+
- !ruby/object:Gem::Version
|
|
48
|
+
version: 3.2.0
|
|
49
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
50
|
+
requirements:
|
|
51
|
+
- - ">="
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: '0'
|
|
54
|
+
requirements: []
|
|
55
|
+
rubygems_version: 3.4.19
|
|
56
|
+
signing_key:
|
|
57
|
+
specification_version: 4
|
|
58
|
+
summary: HTML Generator via Ruby classes, not templates.
|
|
59
|
+
test_files: []
|