@actions/workflow-parser 0.2.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.
Files changed (292) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +87 -0
  3. package/dist/index.d.ts +6 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +5 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/model/convert.d.ts +31 -0
  8. package/dist/model/convert.d.ts.map +1 -0
  9. package/dist/model/convert.js +105 -0
  10. package/dist/model/convert.js.map +1 -0
  11. package/dist/model/converter/concurrency.d.ts +5 -0
  12. package/dist/model/converter/concurrency.d.ts.map +1 -0
  13. package/dist/model/converter/concurrency.js +30 -0
  14. package/dist/model/converter/concurrency.js.map +1 -0
  15. package/dist/model/converter/container.d.ts +6 -0
  16. package/dist/model/converter/container.d.ts.map +1 -0
  17. package/dist/model/converter/container.js +97 -0
  18. package/dist/model/converter/container.js.map +1 -0
  19. package/dist/model/converter/cron-constants.d.ts +44 -0
  20. package/dist/model/converter/cron-constants.d.ts.map +1 -0
  21. package/dist/model/converter/cron-constants.js +30 -0
  22. package/dist/model/converter/cron-constants.js.map +1 -0
  23. package/dist/model/converter/cron.d.ts +3 -0
  24. package/dist/model/converter/cron.d.ts.map +1 -0
  25. package/dist/model/converter/cron.js +92 -0
  26. package/dist/model/converter/cron.js.map +1 -0
  27. package/dist/model/converter/events.d.ts +5 -0
  28. package/dist/model/converter/events.d.ts.map +1 -0
  29. package/dist/model/converter/events.js +123 -0
  30. package/dist/model/converter/events.js.map +1 -0
  31. package/dist/model/converter/handle-errors.d.ts +4 -0
  32. package/dist/model/converter/handle-errors.d.ts.map +1 -0
  33. package/dist/model/converter/handle-errors.js +18 -0
  34. package/dist/model/converter/handle-errors.js.map +1 -0
  35. package/dist/model/converter/id-builder.d.ts +23 -0
  36. package/dist/model/converter/id-builder.d.ts.map +1 -0
  37. package/dist/model/converter/id-builder.js +113 -0
  38. package/dist/model/converter/id-builder.js.map +1 -0
  39. package/dist/model/converter/job/environment.d.ts +5 -0
  40. package/dist/model/converter/job/environment.d.ts.map +1 -0
  41. package/dist/model/converter/job/environment.js +28 -0
  42. package/dist/model/converter/job/environment.js.map +1 -0
  43. package/dist/model/converter/job/inputs.d.ts +8 -0
  44. package/dist/model/converter/job/inputs.d.ts.map +1 -0
  45. package/dist/model/converter/job/inputs.js +38 -0
  46. package/dist/model/converter/job/inputs.js.map +1 -0
  47. package/dist/model/converter/job/runs-on.d.ts +9 -0
  48. package/dist/model/converter/job/runs-on.d.ts.map +1 -0
  49. package/dist/model/converter/job/runs-on.js +78 -0
  50. package/dist/model/converter/job/runs-on.js.map +1 -0
  51. package/dist/model/converter/job/secrets.d.ts +4 -0
  52. package/dist/model/converter/job/secrets.d.ts.map +1 -0
  53. package/dist/model/converter/job/secrets.js +32 -0
  54. package/dist/model/converter/job/secrets.js.map +1 -0
  55. package/dist/model/converter/job.d.ts +5 -0
  56. package/dist/model/converter/job.d.ts.map +1 -0
  57. package/dist/model/converter/job.js +144 -0
  58. package/dist/model/converter/job.js.map +1 -0
  59. package/dist/model/converter/jobs.d.ts +5 -0
  60. package/dist/model/converter/jobs.d.ts.map +1 -0
  61. package/dist/model/converter/jobs.js +74 -0
  62. package/dist/model/converter/jobs.js.map +1 -0
  63. package/dist/model/converter/referencedWorkflow.d.ts +5 -0
  64. package/dist/model/converter/referencedWorkflow.d.ts.map +1 -0
  65. package/dist/model/converter/referencedWorkflow.js +85 -0
  66. package/dist/model/converter/referencedWorkflow.js.map +1 -0
  67. package/dist/model/converter/steps.d.ts +5 -0
  68. package/dist/model/converter/steps.d.ts.map +1 -0
  69. package/dist/model/converter/steps.js +113 -0
  70. package/dist/model/converter/steps.js.map +1 -0
  71. package/dist/model/converter/string-list.d.ts +3 -0
  72. package/dist/model/converter/string-list.d.ts.map +1 -0
  73. package/dist/model/converter/string-list.js +8 -0
  74. package/dist/model/converter/string-list.js.map +1 -0
  75. package/dist/model/converter/workflow-call.d.ts +5 -0
  76. package/dist/model/converter/workflow-call.d.ts.map +1 -0
  77. package/dist/model/converter/workflow-call.js +45 -0
  78. package/dist/model/converter/workflow-call.js.map +1 -0
  79. package/dist/model/converter/workflow-dispatch.d.ts +9 -0
  80. package/dist/model/converter/workflow-dispatch.d.ts.map +1 -0
  81. package/dist/model/converter/workflow-dispatch.js +82 -0
  82. package/dist/model/converter/workflow-dispatch.js.map +1 -0
  83. package/dist/model/type-guards.d.ts +6 -0
  84. package/dist/model/type-guards.d.ts.map +1 -0
  85. package/dist/model/type-guards.js +13 -0
  86. package/dist/model/type-guards.js.map +1 -0
  87. package/dist/model/workflow-template.d.ts +157 -0
  88. package/dist/model/workflow-template.d.ts.map +1 -0
  89. package/dist/model/workflow-template.js +8 -0
  90. package/dist/model/workflow-template.js.map +1 -0
  91. package/dist/templates/allowed-context.d.ts +6 -0
  92. package/dist/templates/allowed-context.d.ts.map +1 -0
  93. package/dist/templates/allowed-context.js +30 -0
  94. package/dist/templates/allowed-context.js.map +1 -0
  95. package/dist/templates/json-object-reader.d.ts +20 -0
  96. package/dist/templates/json-object-reader.d.ts.map +1 -0
  97. package/dist/templates/json-object-reader.js +135 -0
  98. package/dist/templates/json-object-reader.js.map +1 -0
  99. package/dist/templates/object-reader.d.ts +15 -0
  100. package/dist/templates/object-reader.d.ts.map +1 -0
  101. package/dist/templates/object-reader.js +2 -0
  102. package/dist/templates/object-reader.js.map +1 -0
  103. package/dist/templates/parse-event.d.ts +16 -0
  104. package/dist/templates/parse-event.d.ts.map +1 -0
  105. package/dist/templates/parse-event.js +17 -0
  106. package/dist/templates/parse-event.js.map +1 -0
  107. package/dist/templates/schema/boolean-definition.d.ts +10 -0
  108. package/dist/templates/schema/boolean-definition.d.ts.map +1 -0
  109. package/dist/templates/schema/boolean-definition.js +41 -0
  110. package/dist/templates/schema/boolean-definition.js.map +1 -0
  111. package/dist/templates/schema/definition-info.d.ts +16 -0
  112. package/dist/templates/schema/definition-info.d.ts.map +1 -0
  113. package/dist/templates/schema/definition-info.js +40 -0
  114. package/dist/templates/schema/definition-info.js.map +1 -0
  115. package/dist/templates/schema/definition-type.d.ts +11 -0
  116. package/dist/templates/schema/definition-type.d.ts.map +1 -0
  117. package/dist/templates/schema/definition-type.js +12 -0
  118. package/dist/templates/schema/definition-type.js.map +1 -0
  119. package/dist/templates/schema/definition.d.ts +24 -0
  120. package/dist/templates/schema/definition.d.ts.map +1 -0
  121. package/dist/templates/schema/definition.js +62 -0
  122. package/dist/templates/schema/definition.js.map +1 -0
  123. package/dist/templates/schema/index.d.ts +2 -0
  124. package/dist/templates/schema/index.d.ts.map +1 -0
  125. package/dist/templates/schema/index.js +2 -0
  126. package/dist/templates/schema/index.js.map +1 -0
  127. package/dist/templates/schema/mapping-definition.d.ts +16 -0
  128. package/dist/templates/schema/mapping-definition.d.ts.map +1 -0
  129. package/dist/templates/schema/mapping-definition.js +81 -0
  130. package/dist/templates/schema/mapping-definition.js.map +1 -0
  131. package/dist/templates/schema/null-definition.d.ts +10 -0
  132. package/dist/templates/schema/null-definition.d.ts.map +1 -0
  133. package/dist/templates/schema/null-definition.js +41 -0
  134. package/dist/templates/schema/null-definition.js.map +1 -0
  135. package/dist/templates/schema/number-definition.d.ts +10 -0
  136. package/dist/templates/schema/number-definition.d.ts.map +1 -0
  137. package/dist/templates/schema/number-definition.js +41 -0
  138. package/dist/templates/schema/number-definition.js.map +1 -0
  139. package/dist/templates/schema/one-of-definition.d.ts +15 -0
  140. package/dist/templates/schema/one-of-definition.d.ts.map +1 -0
  141. package/dist/templates/schema/one-of-definition.js +154 -0
  142. package/dist/templates/schema/one-of-definition.js.map +1 -0
  143. package/dist/templates/schema/property-definition.d.ts +8 -0
  144. package/dist/templates/schema/property-definition.d.ts.map +1 -0
  145. package/dist/templates/schema/property-definition.js +31 -0
  146. package/dist/templates/schema/property-definition.js.map +1 -0
  147. package/dist/templates/schema/scalar-definition.d.ts +7 -0
  148. package/dist/templates/schema/scalar-definition.d.ts.map +1 -0
  149. package/dist/templates/schema/scalar-definition.js +7 -0
  150. package/dist/templates/schema/scalar-definition.js.map +1 -0
  151. package/dist/templates/schema/sequence-definition.d.ts +11 -0
  152. package/dist/templates/schema/sequence-definition.d.ts.map +1 -0
  153. package/dist/templates/schema/sequence-definition.js +47 -0
  154. package/dist/templates/schema/sequence-definition.js.map +1 -0
  155. package/dist/templates/schema/string-definition.d.ts +14 -0
  156. package/dist/templates/schema/string-definition.d.ts.map +1 -0
  157. package/dist/templates/schema/string-definition.js +79 -0
  158. package/dist/templates/schema/string-definition.js.map +1 -0
  159. package/dist/templates/schema/template-schema.d.ts +47 -0
  160. package/dist/templates/schema/template-schema.d.ts.map +1 -0
  161. package/dist/templates/schema/template-schema.js +377 -0
  162. package/dist/templates/schema/template-schema.js.map +1 -0
  163. package/dist/templates/template-constants.d.ts +49 -0
  164. package/dist/templates/template-constants.d.ts.map +1 -0
  165. package/dist/templates/template-constants.js +49 -0
  166. package/dist/templates/template-constants.js.map +1 -0
  167. package/dist/templates/template-context.d.ts +66 -0
  168. package/dist/templates/template-context.d.ts.map +1 -0
  169. package/dist/templates/template-context.js +118 -0
  170. package/dist/templates/template-context.js.map +1 -0
  171. package/dist/templates/template-reader.d.ts +9 -0
  172. package/dist/templates/template-reader.d.ts.map +1 -0
  173. package/dist/templates/template-reader.js +595 -0
  174. package/dist/templates/template-reader.js.map +1 -0
  175. package/dist/templates/template-validation-error.d.ts +14 -0
  176. package/dist/templates/template-validation-error.d.ts.map +1 -0
  177. package/dist/templates/template-validation-error.js +21 -0
  178. package/dist/templates/template-validation-error.js.map +1 -0
  179. package/dist/templates/tokens/basic-expression-token.d.ts +27 -0
  180. package/dist/templates/tokens/basic-expression-token.d.ts.map +1 -0
  181. package/dist/templates/tokens/basic-expression-token.js +38 -0
  182. package/dist/templates/tokens/basic-expression-token.js.map +1 -0
  183. package/dist/templates/tokens/boolean-token.d.ts +12 -0
  184. package/dist/templates/tokens/boolean-token.d.ts.map +1 -0
  185. package/dist/templates/tokens/boolean-token.js +23 -0
  186. package/dist/templates/tokens/boolean-token.js.map +1 -0
  187. package/dist/templates/tokens/expression-token.d.ts +11 -0
  188. package/dist/templates/tokens/expression-token.d.ts.map +1 -0
  189. package/dist/templates/tokens/expression-token.js +24 -0
  190. package/dist/templates/tokens/expression-token.js.map +1 -0
  191. package/dist/templates/tokens/index.d.ts +14 -0
  192. package/dist/templates/tokens/index.d.ts.map +1 -0
  193. package/dist/templates/tokens/index.js +14 -0
  194. package/dist/templates/tokens/index.js.map +1 -0
  195. package/dist/templates/tokens/insert-expression-token.d.ts +12 -0
  196. package/dist/templates/tokens/insert-expression-token.d.ts.map +1 -0
  197. package/dist/templates/tokens/insert-expression-token.js +26 -0
  198. package/dist/templates/tokens/insert-expression-token.js.map +1 -0
  199. package/dist/templates/tokens/key-value-pair.d.ts +8 -0
  200. package/dist/templates/tokens/key-value-pair.d.ts.map +1 -0
  201. package/dist/templates/tokens/key-value-pair.js +7 -0
  202. package/dist/templates/tokens/key-value-pair.js.map +1 -0
  203. package/dist/templates/tokens/literal-token.d.ts +14 -0
  204. package/dist/templates/tokens/literal-token.d.ts.map +1 -0
  205. package/dist/templates/tokens/literal-token.js +22 -0
  206. package/dist/templates/tokens/literal-token.js.map +1 -0
  207. package/dist/templates/tokens/mapping-token.d.ts +20 -0
  208. package/dist/templates/tokens/mapping-token.d.ts.map +1 -0
  209. package/dist/templates/tokens/mapping-token.js +58 -0
  210. package/dist/templates/tokens/mapping-token.js.map +1 -0
  211. package/dist/templates/tokens/null-token.d.ts +10 -0
  212. package/dist/templates/tokens/null-token.d.ts.map +1 -0
  213. package/dist/templates/tokens/null-token.js +19 -0
  214. package/dist/templates/tokens/null-token.js.map +1 -0
  215. package/dist/templates/tokens/number-token.d.ts +12 -0
  216. package/dist/templates/tokens/number-token.d.ts.map +1 -0
  217. package/dist/templates/tokens/number-token.js +23 -0
  218. package/dist/templates/tokens/number-token.js.map +1 -0
  219. package/dist/templates/tokens/scalar-token.d.ts +14 -0
  220. package/dist/templates/tokens/scalar-token.d.ts.map +1 -0
  221. package/dist/templates/tokens/scalar-token.js +22 -0
  222. package/dist/templates/tokens/scalar-token.js.map +1 -0
  223. package/dist/templates/tokens/sequence-token.d.ts +18 -0
  224. package/dist/templates/tokens/sequence-token.d.ts.map +1 -0
  225. package/dist/templates/tokens/sequence-token.js +47 -0
  226. package/dist/templates/tokens/sequence-token.js.map +1 -0
  227. package/dist/templates/tokens/serialization.d.ts +21 -0
  228. package/dist/templates/tokens/serialization.d.ts.map +1 -0
  229. package/dist/templates/tokens/serialization.js +2 -0
  230. package/dist/templates/tokens/serialization.js.map +1 -0
  231. package/dist/templates/tokens/string-token.d.ts +12 -0
  232. package/dist/templates/tokens/string-token.d.ts.map +1 -0
  233. package/dist/templates/tokens/string-token.js +21 -0
  234. package/dist/templates/tokens/string-token.js.map +1 -0
  235. package/dist/templates/tokens/template-token.d.ts +70 -0
  236. package/dist/templates/tokens/template-token.d.ts.map +1 -0
  237. package/dist/templates/tokens/template-token.js +138 -0
  238. package/dist/templates/tokens/template-token.js.map +1 -0
  239. package/dist/templates/tokens/token-range.d.ts +12 -0
  240. package/dist/templates/tokens/token-range.d.ts.map +1 -0
  241. package/dist/templates/tokens/token-range.js +2 -0
  242. package/dist/templates/tokens/token-range.js.map +1 -0
  243. package/dist/templates/tokens/traversal-state.d.ts +12 -0
  244. package/dist/templates/tokens/traversal-state.d.ts.map +1 -0
  245. package/dist/templates/tokens/traversal-state.js +54 -0
  246. package/dist/templates/tokens/traversal-state.js.map +1 -0
  247. package/dist/templates/tokens/type-guards.d.ts +18 -0
  248. package/dist/templates/tokens/type-guards.d.ts.map +1 -0
  249. package/dist/templates/tokens/type-guards.js +28 -0
  250. package/dist/templates/tokens/type-guards.js.map +1 -0
  251. package/dist/templates/tokens/types.d.ts +12 -0
  252. package/dist/templates/tokens/types.d.ts.map +1 -0
  253. package/dist/templates/tokens/types.js +37 -0
  254. package/dist/templates/tokens/types.js.map +1 -0
  255. package/dist/templates/trace-writer.d.ts +11 -0
  256. package/dist/templates/trace-writer.d.ts.map +1 -0
  257. package/dist/templates/trace-writer.js +12 -0
  258. package/dist/templates/trace-writer.js.map +1 -0
  259. package/dist/test-utils/null-trace.d.ts +3 -0
  260. package/dist/test-utils/null-trace.d.ts.map +1 -0
  261. package/dist/test-utils/null-trace.js +3 -0
  262. package/dist/test-utils/null-trace.js.map +1 -0
  263. package/dist/workflow-v1.0.json +2511 -0
  264. package/dist/workflows/file-provider.d.ts +6 -0
  265. package/dist/workflows/file-provider.d.ts.map +1 -0
  266. package/dist/workflows/file-provider.js +2 -0
  267. package/dist/workflows/file-provider.js.map +1 -0
  268. package/dist/workflows/file-reference.d.ts +13 -0
  269. package/dist/workflows/file-reference.d.ts.map +1 -0
  270. package/dist/workflows/file-reference.js +25 -0
  271. package/dist/workflows/file-reference.js.map +1 -0
  272. package/dist/workflows/file.d.ts +5 -0
  273. package/dist/workflows/file.d.ts.map +1 -0
  274. package/dist/workflows/file.js +2 -0
  275. package/dist/workflows/file.js.map +1 -0
  276. package/dist/workflows/workflow-constants.d.ts +2 -0
  277. package/dist/workflows/workflow-constants.d.ts.map +1 -0
  278. package/dist/workflows/workflow-constants.js +2 -0
  279. package/dist/workflows/workflow-constants.js.map +1 -0
  280. package/dist/workflows/workflow-parser.d.ts +11 -0
  281. package/dist/workflows/workflow-parser.d.ts.map +1 -0
  282. package/dist/workflows/workflow-parser.js +28 -0
  283. package/dist/workflows/workflow-parser.js.map +1 -0
  284. package/dist/workflows/workflow-schema.d.ts +3 -0
  285. package/dist/workflows/workflow-schema.d.ts.map +1 -0
  286. package/dist/workflows/workflow-schema.js +12 -0
  287. package/dist/workflows/workflow-schema.js.map +1 -0
  288. package/dist/workflows/yaml-object-reader.d.ts +26 -0
  289. package/dist/workflows/yaml-object-reader.d.ts.map +1 -0
  290. package/dist/workflows/yaml-object-reader.js +178 -0
  291. package/dist/workflows/yaml-object-reader.js.map +1 -0
  292. package/package.json +70 -0
@@ -0,0 +1,118 @@
1
+ import { TemplateValidationError } from "./template-validation-error";
2
+ /**
3
+ * Context object that is flowed through while loading and evaluating object templates
4
+ */
5
+ export class TemplateContext {
6
+ constructor(errors, schema, trace) {
7
+ this._fileIds = {};
8
+ this._fileNames = [];
9
+ /**
10
+ * Available functions within expression contexts
11
+ */
12
+ this.expressionFunctions = [];
13
+ /**
14
+ * Available values within expression contexts
15
+ */
16
+ this.expressionNamedContexts = [];
17
+ this.state = {};
18
+ this.errors = errors;
19
+ this.schema = schema;
20
+ this.trace = trace;
21
+ }
22
+ error(tokenOrFileId, err, tokenRange) {
23
+ const token = tokenOrFileId;
24
+ const range = tokenRange || token?.range;
25
+ const prefix = this.getErrorPrefix(token?.file ?? tokenOrFileId, token?.line, token?.col);
26
+ const message = err?.message ?? String(err);
27
+ const e = new TemplateValidationError(message, prefix, undefined, range);
28
+ this.errors.add(e);
29
+ this.trace.error(e.message);
30
+ }
31
+ /**
32
+ * Gets or adds the file ID
33
+ */
34
+ getFileId(file) {
35
+ const key = file.toUpperCase();
36
+ let id = this._fileIds[key];
37
+ if (id === undefined) {
38
+ id = this._fileNames.length + 1;
39
+ this._fileIds[key] = id;
40
+ this._fileNames.push(file);
41
+ }
42
+ return id;
43
+ }
44
+ /**
45
+ * Looks up a file name by ID. Returns undefined if not found.
46
+ */
47
+ getFileName(fileId) {
48
+ return this._fileNames.length >= fileId ? this._fileNames[fileId - 1] : undefined;
49
+ }
50
+ /**
51
+ * Gets a copy of the file table
52
+ */
53
+ getFileTable() {
54
+ return this._fileNames.slice();
55
+ }
56
+ getErrorPrefix(fileId, line, column) {
57
+ const fileName = fileId !== undefined ? this.getFileName(fileId) : undefined;
58
+ if (fileName) {
59
+ if (line !== undefined && column !== undefined) {
60
+ return `${fileName} (Line: ${line}, Col: ${column})`;
61
+ }
62
+ else {
63
+ return fileName;
64
+ }
65
+ }
66
+ else if (line !== undefined && column !== undefined) {
67
+ return `(Line: ${line}, Col: ${column})`;
68
+ }
69
+ else {
70
+ return "";
71
+ }
72
+ }
73
+ }
74
+ /**
75
+ * Provides information about errors which occurred during validation
76
+ */
77
+ export class TemplateValidationErrors {
78
+ constructor(maxErrors, maxMessageLength) {
79
+ this._errors = [];
80
+ this._maxErrors = maxErrors ?? 0;
81
+ this._maxMessageLength = maxMessageLength ?? 0;
82
+ }
83
+ get count() {
84
+ return this._errors.length;
85
+ }
86
+ add(err) {
87
+ for (let e of Array.isArray(err) ? err : [err]) {
88
+ // Check max errors
89
+ if (this._maxErrors <= 0 || this._errors.length < this._maxErrors) {
90
+ // Check max message length
91
+ if (this._maxMessageLength > 0 && e.message.length > this._maxMessageLength) {
92
+ e = new TemplateValidationError(e.message.substring(0, this._maxMessageLength) + "[...]", e.prefix, e.code, e.range);
93
+ }
94
+ this._errors.push(e);
95
+ }
96
+ }
97
+ }
98
+ /**
99
+ * Throws if any errors
100
+ * @param prefix The error message prefix
101
+ */
102
+ check(prefix) {
103
+ if (this._errors.length <= 0) {
104
+ return;
105
+ }
106
+ if (!prefix) {
107
+ prefix = "The template is not valid.";
108
+ }
109
+ throw new Error(`${prefix} ${this._errors.map(x => x.message).join(",")}`);
110
+ }
111
+ clear() {
112
+ this._errors = [];
113
+ }
114
+ getErrors() {
115
+ return this._errors.slice();
116
+ }
117
+ }
118
+ //# sourceMappingURL=template-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-context.js","sourceRoot":"","sources":["../../src/templates/template-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ObjectReader } from "./object-reader";
2
+ import { TemplateContext } from "./template-context";
3
+ import { TemplateToken } from "./tokens";
4
+ export declare function readTemplate(context: TemplateContext, type: string, objectReader: ObjectReader, fileId: number | undefined): TemplateToken | undefined;
5
+ export interface ReadTemplateResult {
6
+ value: TemplateToken;
7
+ bytes: number;
8
+ }
9
+ //# sourceMappingURL=template-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-reader.d.ts","sourceRoot":"","sources":["../../src/templates/template-reader.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAS7C,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAQL,aAAa,EACd,MAAM,UAAU,CAAC;AAOlB,wBAAgB,YAAY,CAC1B,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,aAAa,GAAG,SAAS,CAa3B;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,aAAa,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf"}