@@ -16,21 +16,211 @@ Added in v1.0.0
16
16
<h2 class =" text-delta " >Table of contents</h2 >
17
17
18
18
- [ utils] ( #utils )
19
- - [ Compiler (interface)] ( #compiler-interface )
19
+ - [ Compiler (class)] ( #compiler-class )
20
+ - [ parseTemplates (method)] ( #parsetemplates-method )
21
+ - [ compileTemplates (method)] ( #compiletemplates-method )
22
+ - [ getTransformersByFileAndTarget (method)] ( #gettransformersbyfileandtarget-method )
23
+ - [ replaceDom (method)] ( #replacedom-method )
24
+ - [ parseTemplateFromNode (method)] ( #parsetemplatefromnode-method )
25
+ - [ parsePart (method)] ( #parsepart-method )
26
+ - [ getPartType (method)] ( #getparttype-method )
27
+ - [ isPrimitiveType (method)] ( #isprimitivetype-method )
28
+ - [ project (property)] ( #project-property )
29
+ - [ checker (property)] ( #checker-property )
30
+ - [ CompilerTarget (type alias)] ( #compilertarget-type-alias )
31
+ - [ ParsedPart (type alias)] ( #parsedpart-type-alias )
32
+ - [ ParsedTemplate (interface)] ( #parsedtemplate-interface )
33
+ - [ ParsedTemplatePart (interface)] ( #parsedtemplatepart-interface )
34
+ - [ SimpleParsedPart (type alias)] ( #simpleparsedpart-type-alias )
20
35
21
36
---
22
37
23
38
# utils
24
39
25
- ## Compiler (interface )
40
+ ## Compiler (class )
26
41
27
42
Compiler is an all-in-one cass for compile-time optimization and derivations
28
43
of Typed libraries and applications.
29
44
30
45
** Signature**
31
46
32
47
``` ts
33
- export interface Compiler {}
48
+ export declare class Compiler { constructor (
49
+ readonly directory : string ,
50
+ readonly tsConfig ? : string ,
51
+ defaultCompilerTarget : CompilerTarget = " dom"
52
+ ) }
53
+ ```
54
+
55
+ Added in v1.0.0
56
+
57
+ ### parseTemplates (method)
58
+
59
+ ** Signature**
60
+
61
+ ``` ts
62
+ parseTemplates (sourceFile : ts .SourceFile ): Array < ParsedTemplate >
63
+ ```
64
+
65
+ Added in v1.0.0
66
+
67
+ ### compileTemplates (method)
68
+
69
+ ** Signature**
70
+
71
+ ``` ts
72
+ compileTemplates (
73
+ sourceFile : ts .SourceFile ,
74
+ target ?: CompilerTarget
75
+ )
76
+ ```
77
+
78
+ Added in v1.0.0
79
+
80
+ ### getTransformersByFileAndTarget (method)
81
+
82
+ ** Signature**
83
+
84
+ ``` ts
85
+ private getTransformersByFileAndTarget (
86
+ templates : Array < ParsedTemplate > ,
87
+ target : CompilerTarget
88
+ ): Array < ts .TransformerFactory < ts .SourceFile >>
89
+ ```
90
+
91
+ Added in v1.0.0
92
+
93
+ ### replaceDom (method)
94
+
95
+ ** Signature**
96
+
97
+ ``` ts
98
+ private replaceDom (
99
+ { parts , template }: ParsedTemplate ,
100
+ remaining : Array < ParsedTemplate > ,
101
+ imports : ImportDeclarationManager
102
+ ): ts .Node
103
+ ```
104
+
105
+ Added in v1.0.0
106
+
107
+ ### parseTemplateFromNode (method)
108
+
109
+ ** Signature**
110
+
111
+ ``` ts
112
+ private parseTemplateFromNode (node : ts .TemplateLiteral ): readonly [Template .Template , ReadonlyArray < ParsedPart > ]
113
+ ```
114
+
115
+ Added in v1.0.0
116
+
117
+ ### parsePart (method)
118
+
119
+ ** Signature**
120
+
121
+ ``` ts
122
+ private parsePart (part : ts .Expression , index : number ): ParsedPart
123
+ ```
124
+
125
+ Added in v1.0.0
126
+
127
+ ### getPartType (method)
128
+
129
+ ** Signature**
130
+
131
+ ``` ts
132
+ private getPartType (node : ts .Node , type : ts .Type ): ParsedPart [" kind" ]
133
+ ```
134
+
135
+ Added in v1.0.0
136
+
137
+ ### isPrimitiveType (method)
138
+
139
+ ** Signature**
140
+
141
+ ``` ts
142
+ private isPrimitiveType (type : ts .Type )
143
+ ```
144
+
145
+ Added in v1.0.0
146
+
147
+ ### project (property)
148
+
149
+ ** Signature**
150
+
151
+ ``` ts
152
+ readonly project : Project
153
+ ```
154
+
155
+ Added in v1.0.0
156
+
157
+ ### checker (property)
158
+
159
+ ** Signature**
160
+
161
+ ``` ts
162
+ readonly checker : ts .TypeChecker
163
+ ```
164
+
165
+ Added in v1.0.0
166
+
167
+ ## CompilerTarget (type alias)
168
+
169
+ ** Signature**
170
+
171
+ ``` ts
172
+ export type CompilerTarget = " dom" | " server" | " static"
173
+ ` ` `
174
+
175
+ Added in v1.0.0
176
+
177
+ ## ParsedPart (type alias)
178
+
179
+ **Signature**
180
+
181
+ ` ` ` ts
182
+ export type ParsedPart = SimpleParsedPart | ParsedTemplatePart
183
+ ` ` `
184
+
185
+ Added in v1.0.0
186
+
187
+ ## ParsedTemplate (interface)
188
+
189
+ **Signature**
190
+
191
+ ` ` ` ts
192
+ export interface ParsedTemplate {
193
+ readonly literal: ts .TemplateLiteral
194
+ readonly parts: ReadonlyArray <ParsedPart >
195
+ readonly template: Template .Template
196
+ }
197
+ ```
198
+
199
+ Added in v1.0.0
200
+
201
+ ## ParsedTemplatePart (interface)
202
+
203
+ ** Signature**
204
+
205
+ ``` ts
206
+ export interface ParsedTemplatePart extends Omit <SimpleParsedPart , " kind" >, ParsedTemplate {
207
+ readonly kind: " template"
208
+ }
209
+ ```
210
+
211
+ Added in v1.0.0
212
+
213
+ ## SimpleParsedPart (type alias)
214
+
215
+ ** Signature**
216
+
217
+ ``` ts
218
+ export type SimpleParsedPart = {
219
+ readonly index: number
220
+ readonly kind: " placeholder" | " fxEffect" | " fx" | " effect" | " primitive" | " directive"
221
+ readonly node: ts .Expression
222
+ readonly type: ts .Type
223
+ }
34
224
` ` `
35
225
36
226
Added in v1.0.0
0 commit comments