ventojs 1.14.0 → 1.15.1

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 (297) hide show
  1. package/esm/bare.d.ts +1 -1
  2. package/esm/bare.d.ts.map +1 -1
  3. package/esm/bare.js +1 -1
  4. package/esm/deps.d.ts +0 -3
  5. package/esm/deps.d.ts.map +1 -1
  6. package/esm/deps.js +0 -3
  7. package/esm/plugins/echo.d.ts +1 -0
  8. package/esm/plugins/echo.d.ts.map +1 -1
  9. package/esm/plugins/echo.js +23 -4
  10. package/esm/plugins/escape.d.ts +1 -0
  11. package/esm/plugins/escape.d.ts.map +1 -1
  12. package/esm/plugins/escape.js +14 -3
  13. package/esm/plugins/export.d.ts +1 -0
  14. package/esm/plugins/export.d.ts.map +1 -1
  15. package/esm/plugins/export.js +55 -33
  16. package/esm/plugins/for.d.ts +1 -0
  17. package/esm/plugins/for.d.ts.map +1 -1
  18. package/esm/plugins/for.js +7 -10
  19. package/esm/plugins/function.d.ts +1 -0
  20. package/esm/plugins/function.d.ts.map +1 -1
  21. package/esm/plugins/function.js +1 -0
  22. package/esm/plugins/if.d.ts +1 -0
  23. package/esm/plugins/if.d.ts.map +1 -1
  24. package/esm/plugins/if.js +1 -0
  25. package/esm/plugins/import.d.ts +1 -0
  26. package/esm/plugins/import.d.ts.map +1 -1
  27. package/esm/plugins/import.js +45 -3
  28. package/esm/plugins/include.d.ts +1 -0
  29. package/esm/plugins/include.d.ts.map +1 -1
  30. package/esm/plugins/include.js +16 -11
  31. package/esm/plugins/js.d.ts +1 -0
  32. package/esm/plugins/js.d.ts.map +1 -1
  33. package/esm/plugins/js.js +1 -0
  34. package/esm/plugins/layout.d.ts +1 -0
  35. package/esm/plugins/layout.d.ts.map +1 -1
  36. package/esm/plugins/layout.js +1 -0
  37. package/esm/plugins/set.d.ts +1 -0
  38. package/esm/plugins/set.d.ts.map +1 -1
  39. package/esm/plugins/set.js +1 -0
  40. package/esm/plugins/trim.d.ts +1 -0
  41. package/esm/plugins/trim.d.ts.map +1 -1
  42. package/esm/plugins/trim.js +1 -0
  43. package/esm/plugins/unescape.d.ts +1 -0
  44. package/esm/plugins/unescape.d.ts.map +1 -1
  45. package/esm/plugins/unescape.js +22 -3
  46. package/esm/src/environment.d.ts +2 -2
  47. package/esm/src/environment.d.ts.map +1 -1
  48. package/esm/src/environment.js +14 -17
  49. package/esm/src/errors.d.ts +1 -0
  50. package/esm/src/errors.d.ts.map +1 -1
  51. package/esm/src/errors.js +1 -0
  52. package/esm/src/js.d.ts +11 -4
  53. package/esm/src/js.d.ts.map +1 -1
  54. package/esm/src/js.js +160 -174
  55. package/esm/src/{loader.node.d.ts → loader.d.ts} +1 -1
  56. package/esm/src/loader.d.ts.map +1 -0
  57. package/esm/src/{loader.node.js → loader.js} +1 -1
  58. package/esm/src/tokenizer.d.ts +1 -6
  59. package/esm/src/tokenizer.d.ts.map +1 -1
  60. package/esm/src/tokenizer.js +66 -72
  61. package/esm/src/transformer.d.ts +1 -0
  62. package/esm/src/transformer.d.ts.map +1 -1
  63. package/esm/src/transformer.js +1 -0
  64. package/esm/src/url_loader.d.ts +10 -0
  65. package/esm/src/url_loader.d.ts.map +1 -0
  66. package/esm/src/url_loader.js +19 -0
  67. package/esm/test/utils.d.ts.map +1 -1
  68. package/package.json +53 -2
  69. package/esm/deps/jsr.io/@std/html/1.0.3/entities.d.ts +0 -57
  70. package/esm/deps/jsr.io/@std/html/1.0.3/entities.d.ts.map +0 -1
  71. package/esm/deps/jsr.io/@std/html/1.0.3/entities.js +0 -92
  72. package/esm/deps/jsr.io/@std/html/1.0.3/mod.d.ts +0 -15
  73. package/esm/deps/jsr.io/@std/html/1.0.3/mod.d.ts.map +0 -1
  74. package/esm/deps/jsr.io/@std/html/1.0.3/mod.js +0 -16
  75. package/esm/deps/jsr.io/@std/path/1.0.8/_common/assert_path.d.ts +0 -2
  76. package/esm/deps/jsr.io/@std/path/1.0.8/_common/assert_path.d.ts.map +0 -1
  77. package/esm/deps/jsr.io/@std/path/1.0.8/_common/assert_path.js +0 -7
  78. package/esm/deps/jsr.io/@std/path/1.0.8/_common/basename.d.ts +0 -4
  79. package/esm/deps/jsr.io/@std/path/1.0.8/_common/basename.d.ts.map +0 -1
  80. package/esm/deps/jsr.io/@std/path/1.0.8/_common/basename.js +0 -40
  81. package/esm/deps/jsr.io/@std/path/1.0.8/_common/common.d.ts +0 -2
  82. package/esm/deps/jsr.io/@std/path/1.0.8/_common/common.d.ts.map +0 -1
  83. package/esm/deps/jsr.io/@std/path/1.0.8/_common/common.js +0 -23
  84. package/esm/deps/jsr.io/@std/path/1.0.8/_common/constants.d.ts +0 -40
  85. package/esm/deps/jsr.io/@std/path/1.0.8/_common/constants.d.ts.map +0 -1
  86. package/esm/deps/jsr.io/@std/path/1.0.8/_common/constants.js +0 -46
  87. package/esm/deps/jsr.io/@std/path/1.0.8/_common/dirname.d.ts +0 -2
  88. package/esm/deps/jsr.io/@std/path/1.0.8/_common/dirname.d.ts.map +0 -1
  89. package/esm/deps/jsr.io/@std/path/1.0.8/_common/dirname.js +0 -8
  90. package/esm/deps/jsr.io/@std/path/1.0.8/_common/format.d.ts +0 -4
  91. package/esm/deps/jsr.io/@std/path/1.0.8/_common/format.d.ts.map +0 -1
  92. package/esm/deps/jsr.io/@std/path/1.0.8/_common/format.js +0 -19
  93. package/esm/deps/jsr.io/@std/path/1.0.8/_common/from_file_url.d.ts +0 -3
  94. package/esm/deps/jsr.io/@std/path/1.0.8/_common/from_file_url.d.ts.map +0 -1
  95. package/esm/deps/jsr.io/@std/path/1.0.8/_common/from_file_url.js +0 -9
  96. package/esm/deps/jsr.io/@std/path/1.0.8/_common/glob_to_reg_exp.d.ts +0 -35
  97. package/esm/deps/jsr.io/@std/path/1.0.8/_common/glob_to_reg_exp.d.ts.map +0 -1
  98. package/esm/deps/jsr.io/@std/path/1.0.8/_common/glob_to_reg_exp.js +0 -234
  99. package/esm/deps/jsr.io/@std/path/1.0.8/_common/normalize.d.ts +0 -2
  100. package/esm/deps/jsr.io/@std/path/1.0.8/_common/normalize.d.ts.map +0 -1
  101. package/esm/deps/jsr.io/@std/path/1.0.8/_common/normalize.js +0 -8
  102. package/esm/deps/jsr.io/@std/path/1.0.8/_common/normalize_string.d.ts +0 -2
  103. package/esm/deps/jsr.io/@std/path/1.0.8/_common/normalize_string.d.ts.map +0 -1
  104. package/esm/deps/jsr.io/@std/path/1.0.8/_common/normalize_string.js +0 -77
  105. package/esm/deps/jsr.io/@std/path/1.0.8/_common/relative.d.ts +0 -2
  106. package/esm/deps/jsr.io/@std/path/1.0.8/_common/relative.d.ts.map +0 -1
  107. package/esm/deps/jsr.io/@std/path/1.0.8/_common/relative.js +0 -9
  108. package/esm/deps/jsr.io/@std/path/1.0.8/_common/strip_trailing_separators.d.ts +0 -2
  109. package/esm/deps/jsr.io/@std/path/1.0.8/_common/strip_trailing_separators.d.ts.map +0 -1
  110. package/esm/deps/jsr.io/@std/path/1.0.8/_common/strip_trailing_separators.js +0 -19
  111. package/esm/deps/jsr.io/@std/path/1.0.8/_common/to_file_url.d.ts +0 -2
  112. package/esm/deps/jsr.io/@std/path/1.0.8/_common/to_file_url.d.ts.map +0 -1
  113. package/esm/deps/jsr.io/@std/path/1.0.8/_common/to_file_url.js +0 -15
  114. package/esm/deps/jsr.io/@std/path/1.0.8/_os.d.ts +0 -2
  115. package/esm/deps/jsr.io/@std/path/1.0.8/_os.d.ts.map +0 -1
  116. package/esm/deps/jsr.io/@std/path/1.0.8/_os.js +0 -9
  117. package/esm/deps/jsr.io/@std/path/1.0.8/basename.d.ts +0 -28
  118. package/esm/deps/jsr.io/@std/path/1.0.8/basename.d.ts.map +0 -1
  119. package/esm/deps/jsr.io/@std/path/1.0.8/basename.js +0 -36
  120. package/esm/deps/jsr.io/@std/path/1.0.8/common.d.ts +0 -28
  121. package/esm/deps/jsr.io/@std/path/1.0.8/common.d.ts.map +0 -1
  122. package/esm/deps/jsr.io/@std/path/1.0.8/common.js +0 -33
  123. package/esm/deps/jsr.io/@std/path/1.0.8/constants.d.ts +0 -15
  124. package/esm/deps/jsr.io/@std/path/1.0.8/constants.d.ts.map +0 -1
  125. package/esm/deps/jsr.io/@std/path/1.0.8/constants.js +0 -17
  126. package/esm/deps/jsr.io/@std/path/1.0.8/dirname.d.ts +0 -23
  127. package/esm/deps/jsr.io/@std/path/1.0.8/dirname.d.ts.map +0 -1
  128. package/esm/deps/jsr.io/@std/path/1.0.8/dirname.js +0 -29
  129. package/esm/deps/jsr.io/@std/path/1.0.8/extname.d.ts +0 -23
  130. package/esm/deps/jsr.io/@std/path/1.0.8/extname.d.ts.map +0 -1
  131. package/esm/deps/jsr.io/@std/path/1.0.8/extname.js +0 -29
  132. package/esm/deps/jsr.io/@std/path/1.0.8/format.d.ts +0 -22
  133. package/esm/deps/jsr.io/@std/path/1.0.8/format.d.ts.map +0 -1
  134. package/esm/deps/jsr.io/@std/path/1.0.8/format.js +0 -27
  135. package/esm/deps/jsr.io/@std/path/1.0.8/from_file_url.d.ts +0 -23
  136. package/esm/deps/jsr.io/@std/path/1.0.8/from_file_url.d.ts.map +0 -1
  137. package/esm/deps/jsr.io/@std/path/1.0.8/from_file_url.js +0 -28
  138. package/esm/deps/jsr.io/@std/path/1.0.8/glob_to_regexp.d.ts +0 -77
  139. package/esm/deps/jsr.io/@std/path/1.0.8/glob_to_regexp.d.ts.map +0 -1
  140. package/esm/deps/jsr.io/@std/path/1.0.8/glob_to_regexp.js +0 -83
  141. package/esm/deps/jsr.io/@std/path/1.0.8/is_absolute.d.ts +0 -22
  142. package/esm/deps/jsr.io/@std/path/1.0.8/is_absolute.d.ts.map +0 -1
  143. package/esm/deps/jsr.io/@std/path/1.0.8/is_absolute.js +0 -28
  144. package/esm/deps/jsr.io/@std/path/1.0.8/is_glob.d.ts +0 -17
  145. package/esm/deps/jsr.io/@std/path/1.0.8/is_glob.d.ts.map +0 -1
  146. package/esm/deps/jsr.io/@std/path/1.0.8/is_glob.js +0 -42
  147. package/esm/deps/jsr.io/@std/path/1.0.8/join.d.ts +0 -23
  148. package/esm/deps/jsr.io/@std/path/1.0.8/join.d.ts.map +0 -1
  149. package/esm/deps/jsr.io/@std/path/1.0.8/join.js +0 -29
  150. package/esm/deps/jsr.io/@std/path/1.0.8/join_globs.d.ts +0 -28
  151. package/esm/deps/jsr.io/@std/path/1.0.8/join_globs.d.ts.map +0 -1
  152. package/esm/deps/jsr.io/@std/path/1.0.8/join_globs.js +0 -34
  153. package/esm/deps/jsr.io/@std/path/1.0.8/mod.d.ts +0 -54
  154. package/esm/deps/jsr.io/@std/path/1.0.8/mod.d.ts.map +0 -1
  155. package/esm/deps/jsr.io/@std/path/1.0.8/mod.js +0 -57
  156. package/esm/deps/jsr.io/@std/path/1.0.8/normalize.d.ts +0 -27
  157. package/esm/deps/jsr.io/@std/path/1.0.8/normalize.d.ts.map +0 -1
  158. package/esm/deps/jsr.io/@std/path/1.0.8/normalize.js +0 -33
  159. package/esm/deps/jsr.io/@std/path/1.0.8/normalize_glob.d.ts +0 -29
  160. package/esm/deps/jsr.io/@std/path/1.0.8/normalize_glob.d.ts.map +0 -1
  161. package/esm/deps/jsr.io/@std/path/1.0.8/normalize_glob.js +0 -35
  162. package/esm/deps/jsr.io/@std/path/1.0.8/parse.d.ts +0 -35
  163. package/esm/deps/jsr.io/@std/path/1.0.8/parse.d.ts.map +0 -1
  164. package/esm/deps/jsr.io/@std/path/1.0.8/parse.js +0 -39
  165. package/esm/deps/jsr.io/@std/path/1.0.8/posix/_util.d.ts +0 -2
  166. package/esm/deps/jsr.io/@std/path/1.0.8/posix/_util.d.ts.map +0 -1
  167. package/esm/deps/jsr.io/@std/path/1.0.8/posix/_util.js +0 -8
  168. package/esm/deps/jsr.io/@std/path/1.0.8/posix/basename.d.ts +0 -40
  169. package/esm/deps/jsr.io/@std/path/1.0.8/posix/basename.d.ts.map +0 -1
  170. package/esm/deps/jsr.io/@std/path/1.0.8/posix/basename.js +0 -49
  171. package/esm/deps/jsr.io/@std/path/1.0.8/posix/common.d.ts +0 -19
  172. package/esm/deps/jsr.io/@std/path/1.0.8/posix/common.d.ts.map +0 -1
  173. package/esm/deps/jsr.io/@std/path/1.0.8/posix/common.js +0 -24
  174. package/esm/deps/jsr.io/@std/path/1.0.8/posix/constants.d.ts +0 -13
  175. package/esm/deps/jsr.io/@std/path/1.0.8/posix/constants.d.ts.map +0 -1
  176. package/esm/deps/jsr.io/@std/path/1.0.8/posix/constants.js +0 -14
  177. package/esm/deps/jsr.io/@std/path/1.0.8/posix/dirname.d.ts +0 -32
  178. package/esm/deps/jsr.io/@std/path/1.0.8/posix/dirname.d.ts.map +0 -1
  179. package/esm/deps/jsr.io/@std/path/1.0.8/posix/dirname.js +0 -62
  180. package/esm/deps/jsr.io/@std/path/1.0.8/posix/extname.d.ts +0 -37
  181. package/esm/deps/jsr.io/@std/path/1.0.8/posix/extname.d.ts.map +0 -1
  182. package/esm/deps/jsr.io/@std/path/1.0.8/posix/extname.js +0 -89
  183. package/esm/deps/jsr.io/@std/path/1.0.8/posix/format.d.ts +0 -24
  184. package/esm/deps/jsr.io/@std/path/1.0.8/posix/format.d.ts.map +0 -1
  185. package/esm/deps/jsr.io/@std/path/1.0.8/posix/format.js +0 -28
  186. package/esm/deps/jsr.io/@std/path/1.0.8/posix/from_file_url.d.ts +0 -17
  187. package/esm/deps/jsr.io/@std/path/1.0.8/posix/from_file_url.d.ts.map +0 -1
  188. package/esm/deps/jsr.io/@std/path/1.0.8/posix/from_file_url.js +0 -21
  189. package/esm/deps/jsr.io/@std/path/1.0.8/posix/glob_to_regexp.d.ts +0 -72
  190. package/esm/deps/jsr.io/@std/path/1.0.8/posix/glob_to_regexp.d.ts.map +0 -1
  191. package/esm/deps/jsr.io/@std/path/1.0.8/posix/glob_to_regexp.js +0 -82
  192. package/esm/deps/jsr.io/@std/path/1.0.8/posix/is_absolute.d.ts +0 -17
  193. package/esm/deps/jsr.io/@std/path/1.0.8/posix/is_absolute.d.ts.map +0 -1
  194. package/esm/deps/jsr.io/@std/path/1.0.8/posix/is_absolute.js +0 -23
  195. package/esm/deps/jsr.io/@std/path/1.0.8/posix/is_glob.d.ts +0 -2
  196. package/esm/deps/jsr.io/@std/path/1.0.8/posix/is_glob.d.ts.map +0 -1
  197. package/esm/deps/jsr.io/@std/path/1.0.8/posix/is_glob.js +0 -3
  198. package/esm/deps/jsr.io/@std/path/1.0.8/posix/join.d.ts +0 -33
  199. package/esm/deps/jsr.io/@std/path/1.0.8/posix/join.d.ts.map +0 -1
  200. package/esm/deps/jsr.io/@std/path/1.0.8/posix/join.js +0 -42
  201. package/esm/deps/jsr.io/@std/path/1.0.8/posix/join_globs.d.ts +0 -20
  202. package/esm/deps/jsr.io/@std/path/1.0.8/posix/join_globs.d.ts.map +0 -1
  203. package/esm/deps/jsr.io/@std/path/1.0.8/posix/join_globs.js +0 -40
  204. package/esm/deps/jsr.io/@std/path/1.0.8/posix/mod.d.ts +0 -40
  205. package/esm/deps/jsr.io/@std/path/1.0.8/posix/mod.d.ts.map +0 -1
  206. package/esm/deps/jsr.io/@std/path/1.0.8/posix/mod.js +0 -43
  207. package/esm/deps/jsr.io/@std/path/1.0.8/posix/normalize.d.ts +0 -40
  208. package/esm/deps/jsr.io/@std/path/1.0.8/posix/normalize.d.ts.map +0 -1
  209. package/esm/deps/jsr.io/@std/path/1.0.8/posix/normalize.js +0 -57
  210. package/esm/deps/jsr.io/@std/path/1.0.8/posix/normalize_glob.d.ts +0 -20
  211. package/esm/deps/jsr.io/@std/path/1.0.8/posix/normalize_glob.d.ts.map +0 -1
  212. package/esm/deps/jsr.io/@std/path/1.0.8/posix/normalize_glob.js +0 -32
  213. package/esm/deps/jsr.io/@std/path/1.0.8/posix/parse.d.ts +0 -25
  214. package/esm/deps/jsr.io/@std/path/1.0.8/posix/parse.d.ts.map +0 -1
  215. package/esm/deps/jsr.io/@std/path/1.0.8/posix/parse.js +0 -115
  216. package/esm/deps/jsr.io/@std/path/1.0.8/posix/relative.d.ts +0 -20
  217. package/esm/deps/jsr.io/@std/path/1.0.8/posix/relative.d.ts.map +0 -1
  218. package/esm/deps/jsr.io/@std/path/1.0.8/posix/relative.js +0 -106
  219. package/esm/deps/jsr.io/@std/path/1.0.8/posix/resolve.d.ts +0 -17
  220. package/esm/deps/jsr.io/@std/path/1.0.8/posix/resolve.d.ts.map +0 -1
  221. package/esm/deps/jsr.io/@std/path/1.0.8/posix/resolve.js +0 -59
  222. package/esm/deps/jsr.io/@std/path/1.0.8/posix/to_file_url.d.ts +0 -18
  223. package/esm/deps/jsr.io/@std/path/1.0.8/posix/to_file_url.d.ts.map +0 -1
  224. package/esm/deps/jsr.io/@std/path/1.0.8/posix/to_file_url.js +0 -27
  225. package/esm/deps/jsr.io/@std/path/1.0.8/posix/to_namespaced_path.d.ts +0 -16
  226. package/esm/deps/jsr.io/@std/path/1.0.8/posix/to_namespaced_path.d.ts.map +0 -1
  227. package/esm/deps/jsr.io/@std/path/1.0.8/posix/to_namespaced_path.js +0 -20
  228. package/esm/deps/jsr.io/@std/path/1.0.8/relative.d.ts +0 -24
  229. package/esm/deps/jsr.io/@std/path/1.0.8/relative.d.ts.map +0 -1
  230. package/esm/deps/jsr.io/@std/path/1.0.8/relative.js +0 -30
  231. package/esm/deps/jsr.io/@std/path/1.0.8/resolve.d.ts +0 -22
  232. package/esm/deps/jsr.io/@std/path/1.0.8/resolve.d.ts.map +0 -1
  233. package/esm/deps/jsr.io/@std/path/1.0.8/resolve.js +0 -30
  234. package/esm/deps/jsr.io/@std/path/1.0.8/to_file_url.d.ts +0 -23
  235. package/esm/deps/jsr.io/@std/path/1.0.8/to_file_url.d.ts.map +0 -1
  236. package/esm/deps/jsr.io/@std/path/1.0.8/to_file_url.js +0 -28
  237. package/esm/deps/jsr.io/@std/path/1.0.8/to_namespaced_path.d.ts +0 -21
  238. package/esm/deps/jsr.io/@std/path/1.0.8/to_namespaced_path.d.ts.map +0 -1
  239. package/esm/deps/jsr.io/@std/path/1.0.8/to_namespaced_path.js +0 -29
  240. package/esm/deps/jsr.io/@std/path/1.0.8/types.d.ts +0 -38
  241. package/esm/deps/jsr.io/@std/path/1.0.8/types.d.ts.map +0 -1
  242. package/esm/deps/jsr.io/@std/path/1.0.8/types.js +0 -3
  243. package/esm/deps/jsr.io/@std/path/1.0.8/windows/_util.d.ts +0 -4
  244. package/esm/deps/jsr.io/@std/path/1.0.8/windows/_util.d.ts.map +0 -1
  245. package/esm/deps/jsr.io/@std/path/1.0.8/windows/_util.js +0 -15
  246. package/esm/deps/jsr.io/@std/path/1.0.8/windows/basename.d.ts +0 -23
  247. package/esm/deps/jsr.io/@std/path/1.0.8/windows/basename.d.ts.map +0 -1
  248. package/esm/deps/jsr.io/@std/path/1.0.8/windows/basename.js +0 -44
  249. package/esm/deps/jsr.io/@std/path/1.0.8/windows/constants.d.ts +0 -13
  250. package/esm/deps/jsr.io/@std/path/1.0.8/windows/constants.d.ts.map +0 -1
  251. package/esm/deps/jsr.io/@std/path/1.0.8/windows/constants.js +0 -14
  252. package/esm/deps/jsr.io/@std/path/1.0.8/windows/dirname.d.ts +0 -20
  253. package/esm/deps/jsr.io/@std/path/1.0.8/windows/dirname.d.ts.map +0 -1
  254. package/esm/deps/jsr.io/@std/path/1.0.8/windows/dirname.js +0 -112
  255. package/esm/deps/jsr.io/@std/path/1.0.8/windows/extname.d.ts +0 -20
  256. package/esm/deps/jsr.io/@std/path/1.0.8/windows/extname.d.ts.map +0 -1
  257. package/esm/deps/jsr.io/@std/path/1.0.8/windows/extname.js +0 -81
  258. package/esm/deps/jsr.io/@std/path/1.0.8/windows/format.d.ts +0 -24
  259. package/esm/deps/jsr.io/@std/path/1.0.8/windows/format.d.ts.map +0 -1
  260. package/esm/deps/jsr.io/@std/path/1.0.8/windows/format.js +0 -28
  261. package/esm/deps/jsr.io/@std/path/1.0.8/windows/from_file_url.d.ts +0 -19
  262. package/esm/deps/jsr.io/@std/path/1.0.8/windows/from_file_url.d.ts.map +0 -1
  263. package/esm/deps/jsr.io/@std/path/1.0.8/windows/from_file_url.js +0 -30
  264. package/esm/deps/jsr.io/@std/path/1.0.8/windows/glob_to_regexp.d.ts +0 -71
  265. package/esm/deps/jsr.io/@std/path/1.0.8/windows/glob_to_regexp.d.ts.map +0 -1
  266. package/esm/deps/jsr.io/@std/path/1.0.8/windows/glob_to_regexp.js +0 -82
  267. package/esm/deps/jsr.io/@std/path/1.0.8/windows/is_absolute.d.ts +0 -17
  268. package/esm/deps/jsr.io/@std/path/1.0.8/windows/is_absolute.d.ts.map +0 -1
  269. package/esm/deps/jsr.io/@std/path/1.0.8/windows/is_absolute.js +0 -38
  270. package/esm/deps/jsr.io/@std/path/1.0.8/windows/join.d.ts +0 -20
  271. package/esm/deps/jsr.io/@std/path/1.0.8/windows/join.d.ts.map +0 -1
  272. package/esm/deps/jsr.io/@std/path/1.0.8/windows/join.js +0 -74
  273. package/esm/deps/jsr.io/@std/path/1.0.8/windows/join_globs.d.ts +0 -21
  274. package/esm/deps/jsr.io/@std/path/1.0.8/windows/join_globs.d.ts.map +0 -1
  275. package/esm/deps/jsr.io/@std/path/1.0.8/windows/join_globs.js +0 -41
  276. package/esm/deps/jsr.io/@std/path/1.0.8/windows/normalize.d.ts +0 -22
  277. package/esm/deps/jsr.io/@std/path/1.0.8/windows/normalize.d.ts.map +0 -1
  278. package/esm/deps/jsr.io/@std/path/1.0.8/windows/normalize.js +0 -134
  279. package/esm/deps/jsr.io/@std/path/1.0.8/windows/normalize_glob.d.ts +0 -20
  280. package/esm/deps/jsr.io/@std/path/1.0.8/windows/normalize_glob.d.ts.map +0 -1
  281. package/esm/deps/jsr.io/@std/path/1.0.8/windows/normalize_glob.js +0 -32
  282. package/esm/deps/jsr.io/@std/path/1.0.8/windows/parse.d.ts +0 -25
  283. package/esm/deps/jsr.io/@std/path/1.0.8/windows/parse.d.ts.map +0 -1
  284. package/esm/deps/jsr.io/@std/path/1.0.8/windows/parse.js +0 -176
  285. package/esm/deps/jsr.io/@std/path/1.0.8/windows/relative.d.ts +0 -23
  286. package/esm/deps/jsr.io/@std/path/1.0.8/windows/relative.d.ts.map +0 -1
  287. package/esm/deps/jsr.io/@std/path/1.0.8/windows/relative.js +0 -131
  288. package/esm/deps/jsr.io/@std/path/1.0.8/windows/resolve.d.ts +0 -17
  289. package/esm/deps/jsr.io/@std/path/1.0.8/windows/resolve.d.ts.map +0 -1
  290. package/esm/deps/jsr.io/@std/path/1.0.8/windows/resolve.js +0 -154
  291. package/esm/deps/jsr.io/@std/path/1.0.8/windows/to_file_url.d.ts +0 -18
  292. package/esm/deps/jsr.io/@std/path/1.0.8/windows/to_file_url.d.ts.map +0 -1
  293. package/esm/deps/jsr.io/@std/path/1.0.8/windows/to_file_url.js +0 -34
  294. package/esm/deps/jsr.io/@std/path/1.0.8/windows/to_namespaced_path.d.ts +0 -17
  295. package/esm/deps/jsr.io/@std/path/1.0.8/windows/to_namespaced_path.d.ts.map +0 -1
  296. package/esm/deps/jsr.io/@std/path/1.0.8/windows/to_namespaced_path.js +0 -49
  297. package/esm/src/loader.node.d.ts.map +0 -1
package/esm/bare.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Environment } from "./src/environment.js";
2
- import { type Loader } from "./src/loader.node.js";
2
+ import { type Loader } from "./src/loader.js";
3
3
  export interface Options {
4
4
  includes?: string | Loader;
5
5
  autoDataVarname?: boolean;
package/esm/bare.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bare.d.ts","sourceRoot":"","sources":["../src/bare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,GAAE,OAAY,GAAG,WAAW,CAa3D"}
1
+ {"version":3,"file":"bare.d.ts","sourceRoot":"","sources":["../src/bare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE1D,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,GAAE,OAAY,GAAG,WAAW,CAa3D"}
package/esm/bare.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Environment } from "./src/environment.js";
2
- import { FileLoader } from "./src/loader.node.js";
2
+ import { FileLoader } from "./src/loader.js";
3
3
  export default function (options = {}) {
4
4
  const loader = typeof options.includes === "object"
5
5
  ? options.includes
package/esm/deps.d.ts CHANGED
@@ -1,6 +1,3 @@
1
- export * as path from "./deps/jsr.io/@std/path/1.0.8/mod.js";
2
- export * as posix from "./deps/jsr.io/@std/path/1.0.8/posix/mod.js";
3
- export * as html from "./deps/jsr.io/@std/html/1.0.3/mod.js";
4
1
  export * as astring from "./deps/jsr.io/@davidbonnet/astring/1.8.6/src/astring.js";
5
2
  export * as meriyah from "meriyah";
6
3
  export * as walker from "estree-walker";
package/esm/deps.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../src/deps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,sCAAsC,CAAC;AAC7D,OAAO,KAAK,KAAK,MAAM,4CAA4C,CAAC;AACpE,OAAO,KAAK,IAAI,MAAM,sCAAsC,CAAC;AAE7D,OAAO,KAAK,OAAO,MAAM,yDAAyD,CAAC;AACnF,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,YAAY,KAAK,MAAM,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../src/deps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,yDAAyD,CAAC;AACnF,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,YAAY,KAAK,MAAM,MAAM,QAAQ,CAAC"}
package/esm/deps.js CHANGED
@@ -1,6 +1,3 @@
1
- export * as path from "./deps/jsr.io/@std/path/1.0.8/mod.js";
2
- export * as posix from "./deps/jsr.io/@std/path/1.0.8/posix/mod.js";
3
- export * as html from "./deps/jsr.io/@std/html/1.0.3/mod.js";
4
1
  export * as astring from "./deps/jsr.io/@davidbonnet/astring/1.8.6/src/astring.js";
5
2
  export * as meriyah from "meriyah";
6
3
  export * as walker from "estree-walker";
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=echo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"echo.d.ts","sourceRoot":"","sources":["../../src/plugins/echo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
1
+ {"version":3,"file":"echo.d.ts","sourceRoot":"","sources":["../../src/plugins/echo.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
@@ -1,13 +1,32 @@
1
+ import "../_dnt.polyfills.js";
1
2
  export default function () {
2
3
  return (env) => {
3
4
  env.tags.push(echoTag);
4
5
  };
5
6
  }
6
7
  function echoTag(env, code, output, tokens) {
7
- if (!code.startsWith("echo ")) {
8
+ if (!/^echo\b/.test(code)) {
8
9
  return;
9
10
  }
10
- const value = code.replace(/^echo\s+/, "");
11
- const val = env.compileFilters(tokens, value, env.options.autoescape);
12
- return `${output} += ${val};`;
11
+ const inline = code.slice(4).trim();
12
+ // Inline value, e.g. {{ echo "foo" |> toUpperCase() }}
13
+ if (inline) {
14
+ const compiled = env.compileFilters(tokens, inline, env.options.autoescape);
15
+ return `${output} += ${compiled};`;
16
+ }
17
+ // Captured echo, e.g. {{ echo |> toUpperCase }} foo {{ /echo }}
18
+ const compiled = [`let __tmp = "";`];
19
+ const filters = env.compileFilters(tokens, "__tmp");
20
+ compiled.push(...env.compileTokens(tokens, "__tmp", ["/echo"]));
21
+ if (filters != "__tmp") {
22
+ compiled.push(`__tmp = ${filters}`);
23
+ }
24
+ const closeToken = tokens.shift();
25
+ if (!closeToken || closeToken[0] != "tag" || closeToken[1] != "/echo") {
26
+ throw new Error("Unclosed echo tag");
27
+ }
28
+ return `{
29
+ ${compiled.join("\n")}
30
+ ${output} += __tmp;
31
+ }`;
13
32
  }
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=escape.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../../src/plugins/escape.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAMjC"}
1
+ {"version":3,"file":"escape.d.ts","sourceRoot":"","sources":["../../src/plugins/escape.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAWjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAOjC"}
@@ -1,7 +1,18 @@
1
- import { html } from "../deps.js";
1
+ import "../_dnt.polyfills.js";
2
+ const UNSAFE = /['"&<>]/g;
3
+ const escapeMap = {
4
+ "'": "&apos;",
5
+ '"': "&quot;",
6
+ "&": "&amp;",
7
+ "<": "&lt;",
8
+ ">": "&gt;",
9
+ };
2
10
  export default function () {
3
11
  return (env) => {
4
- // deno-lint-ignore no-explicit-any
5
- env.filters.escape = (value) => value ? html.escape(value.toString()) : "";
12
+ env.filters.escape = (value) => {
13
+ if (!value)
14
+ return "";
15
+ return value.toString().replace(UNSAFE, (match) => escapeMap[match]);
16
+ };
6
17
  };
7
18
  }
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=export.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/plugins/export.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/plugins/export.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
@@ -1,47 +1,69 @@
1
+ import "../_dnt.polyfills.js";
1
2
  export default function () {
2
3
  return (env) => {
3
4
  env.tags.push(exportTag);
4
5
  };
5
6
  }
7
+ const EXPORT_START = /^export\b\s*/;
8
+ const BLOCK_EXPORT = /^([a-zA-Z_]\w*)\s*$/;
9
+ const INLINE_NAMED_EXPORT = /^([a-zA-Z_]\w*)\s*=([^]*)$/;
10
+ const NAMED_EXPORTS = /^{[^]*?}$/;
11
+ const AS = /\s+\bas\b\s+/;
6
12
  function exportTag(env, code, _output, tokens) {
7
- if (!code.startsWith("export ")) {
13
+ const exportStart = code.match(EXPORT_START);
14
+ if (!exportStart) {
8
15
  return;
9
16
  }
10
- const expression = code.replace(/^export\s+/, "");
17
+ const source = code.slice(exportStart[0].length);
18
+ const compiled = [];
11
19
  const { dataVarname } = env.options;
12
- // Value is set (e.g. {{ export foo = "bar" }})
13
- if (expression.includes("=")) {
14
- const match = code.match(/^export\s+([\w]+)\s*=\s*([\s\S]+)$/);
15
- if (!match) {
16
- throw new Error(`Invalid export tag: ${code}`);
20
+ // {{ export foo }}content{{ /export }}
21
+ const blockExport = source.match(BLOCK_EXPORT);
22
+ if (blockExport) {
23
+ const [, name] = blockExport;
24
+ const compiledFilters = env.compileFilters(tokens, name);
25
+ compiled.push(`var ${name} = "";`);
26
+ compiled.push(...env.compileTokens(tokens, name, ["/export"]));
27
+ if (tokens[0]?.[0] !== "tag" || tokens[0]?.[1] !== "/export") {
28
+ throw new Error(`Missing closing tag for export tag: ${code}`);
17
29
  }
18
- const [, variable, value] = match;
19
- const val = env.compileFilters(tokens, value);
20
- return `if (${dataVarname}.hasOwnProperty("${variable}")) {
21
- ${variable} = ${val};
22
- } else {
23
- var ${variable} = ${val};
30
+ tokens.shift();
31
+ compiled.push(`${name} = ${compiledFilters}`);
32
+ compiled.push(`${dataVarname}["${name}"] = ${name};`);
33
+ compiled.push(`__exports["${name}"] = ${name};`);
34
+ return compiled.join("\n");
24
35
  }
25
- ${dataVarname}["${variable}"] = ${variable};
26
- __exports["${variable}"] = ${variable};
27
- `;
36
+ // {{ export foo = "content" }}
37
+ const inlineNamedExport = source.match(INLINE_NAMED_EXPORT);
38
+ if (inlineNamedExport) {
39
+ const [, name, content] = inlineNamedExport;
40
+ compiled.push(`var ${name} = "";`);
41
+ compiled.push(`${name} = ${env.compileFilters(tokens, content)};`);
42
+ compiled.push(`${dataVarname}["${name}"] = ${name};`);
43
+ compiled.push(`__exports["${name}"] = ${name};`);
44
+ return compiled.join("\n");
28
45
  }
29
- // Value is captured (eg: {{ export foo }}bar{{ /export }})
30
- const compiled = [];
31
- const compiledFilters = env.compileFilters(tokens, expression);
32
- compiled.push(`if (${dataVarname}.hasOwnProperty("${expression}")) {
33
- ${expression} = "";
34
- } else {
35
- var ${expression} = "";
36
- }
37
- `);
38
- compiled.push(...env.compileTokens(tokens, expression, ["/export"]));
39
- if (tokens.length && (tokens[0][0] !== "tag" || tokens[0][1] !== "/export")) {
40
- throw new Error(`Missing closing tag for export tag: ${code}`);
46
+ // {{ export { foo, bar as baz } }}
47
+ const namedExports = source.match(NAMED_EXPORTS);
48
+ if (namedExports) {
49
+ const [full] = namedExports;
50
+ const chunks = full.slice(1, -1).split(",");
51
+ for (const chunk of chunks) {
52
+ const names = chunk.trim().split(AS);
53
+ if (names.length == 1) {
54
+ const [name] = names;
55
+ const value = `${dataVarname}["${name}"] ?? ${name}`;
56
+ compiled.push(`__exports["${name}"] = ${value};`);
57
+ }
58
+ else if (names.length == 2) {
59
+ const [name, rename] = names;
60
+ const value = `${dataVarname}["${name}"] ?? ${name}`;
61
+ compiled.push(`__exports["${rename}"] = ${value};`);
62
+ }
63
+ else {
64
+ throw new Error(`Invalid export: ${code}`);
65
+ }
66
+ }
67
+ return compiled.join("\n");
41
68
  }
42
- tokens.shift();
43
- compiled.push(`${expression} = ${compiledFilters};`);
44
- compiled.push(`${dataVarname}["${expression.trim()}"] = ${expression};`);
45
- compiled.push(`__exports["${expression.trim()}"] = ${expression};`);
46
- return compiled.join("\n");
47
69
  }
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=for.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"for.d.ts","sourceRoot":"","sources":["../../src/plugins/for.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAKjC"}
1
+ {"version":3,"file":"for.d.ts","sourceRoot":"","sources":["../../src/plugins/for.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAKjC"}
@@ -1,4 +1,5 @@
1
- import analyze from "../src/js.js";
1
+ import "../_dnt.polyfills.js";
2
+ import iterateTopLevel from "../src/js.js";
2
3
  export default function () {
3
4
  return (env) => {
4
5
  env.tags.push(forTag);
@@ -109,15 +110,11 @@ async function* asyncIterableToEntries(iterator) {
109
110
  }
110
111
  }
111
112
  function getDestructureContent(code) {
112
- let index = 0;
113
- analyze(code, (type, i) => {
114
- if (type === "close") {
115
- index = i;
116
- return false;
117
- }
118
- });
113
+ const generator = iterateTopLevel(code);
114
+ generator.next();
115
+ const [position] = generator.next().value;
119
116
  return [
120
- code.slice(0, index).trim(),
121
- code.slice(index + 1).trim(),
117
+ code.slice(0, position + 1).trim(),
118
+ code.slice(position + 1).trim(),
122
119
  ];
123
120
  }
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=function.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../../src/plugins/function.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
1
+ {"version":3,"file":"function.d.ts","sourceRoot":"","sources":["../../src/plugins/function.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  export default function () {
2
3
  return (env) => {
3
4
  env.tags.push(functionTag);
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=if.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"if.d.ts","sourceRoot":"","sources":["../../src/plugins/if.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAKjC"}
1
+ {"version":3,"file":"if.d.ts","sourceRoot":"","sources":["../../src/plugins/if.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAKjC"}
package/esm/plugins/if.js CHANGED
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  export default function () {
2
3
  return (env) => {
3
4
  env.tags.push(ifTag);
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=import.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/plugins/import.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
1
+ {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/plugins/import.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
@@ -1,17 +1,59 @@
1
+ import "../_dnt.polyfills.js";
1
2
  export default function () {
2
3
  return (env) => {
3
4
  env.tags.push(importTag);
4
5
  };
5
6
  }
7
+ const IMPORT_STATEMENT = /^import\b\s*([^]*?)\s*\bfrom\b([^]*)$/;
8
+ const DEFAULT_IMPORT = /^\b[a-zA-Z_]\w*\b$/i;
9
+ const NAMED_IMPORTS = /^{[^]*?}$/;
10
+ const AS = /\s+\bas\b\s+/;
6
11
  function importTag(env, code) {
7
12
  if (!code.startsWith("import ")) {
8
13
  return;
9
14
  }
10
- const match = code?.match(/^import\s+(\{[\s|\S]*\}|\w+)\s+from\s+(.+)$/);
15
+ const match = code.match(IMPORT_STATEMENT);
11
16
  if (!match) {
12
17
  throw new Error(`Invalid import: ${code}`);
13
18
  }
14
- const [, vars, file] = match;
19
+ const compiled = [];
20
+ const variables = [];
21
+ const [, identifiers, specifier] = match;
22
+ const defaultImport = identifiers.match(DEFAULT_IMPORT);
23
+ if (defaultImport) {
24
+ const [name] = defaultImport;
25
+ variables.push(name);
26
+ compiled.push(`${name} = __tmp;`);
27
+ }
28
+ else {
29
+ const namedImports = identifiers.match(NAMED_IMPORTS);
30
+ if (namedImports) {
31
+ const [full] = namedImports;
32
+ const chunks = full.slice(1, -1).split(",").map((chunk) => {
33
+ const names = chunk.trim().split(AS);
34
+ if (names.length == 1) {
35
+ const [name] = names;
36
+ variables.push(name);
37
+ return name;
38
+ }
39
+ else if (names.length == 2) {
40
+ const [name, rename] = names;
41
+ variables.push(rename);
42
+ return `${name}: ${rename}`;
43
+ }
44
+ else {
45
+ throw new Error(`Invalid import: ${code}`);
46
+ }
47
+ });
48
+ compiled.push(`({${chunks.join(",")}} = __tmp);`);
49
+ }
50
+ else {
51
+ throw new Error(`Invalid import: ${code}`);
52
+ }
53
+ }
15
54
  const { dataVarname } = env.options;
16
- return `let ${vars} = await __env.run(${file}, {...${dataVarname}}, __file);`;
55
+ return `let ${variables.join(",")}; {
56
+ let __tmp = await __env.run(${specifier}, {...${dataVarname}}, __file);
57
+ ${compiled.join("\n")}
58
+ }`;
17
59
  }
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=include.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"include.d.ts","sourceRoot":"","sources":["../../src/plugins/include.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
1
+ {"version":3,"file":"include.d.ts","sourceRoot":"","sources":["../../src/plugins/include.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
@@ -1,4 +1,5 @@
1
- import analyze from "../src/js.js";
1
+ import "../_dnt.polyfills.js";
2
+ import iterateTopLevel from "../src/js.js";
2
3
  export default function () {
3
4
  return (env) => {
4
5
  env.tags.push(includeTag);
@@ -9,17 +10,21 @@ function includeTag(env, code, output, tokens) {
9
10
  return;
10
11
  }
11
12
  const tagCode = code.substring(7).trim();
12
- let index = undefined;
13
- analyze(tagCode, (type, i) => {
14
- if (type === "open-bracket") {
15
- index = i - 1;
16
- return false;
13
+ let file = tagCode;
14
+ let data = "";
15
+ // includes { data }
16
+ if (tagCode.endsWith("}")) {
17
+ let bracketIndex = -1;
18
+ for (const [index, reason] of iterateTopLevel(tagCode)) {
19
+ if (reason == "{")
20
+ bracketIndex = index;
17
21
  }
18
- });
19
- const file = index === undefined
20
- ? tagCode.trim()
21
- : tagCode.slice(0, index).trim();
22
- const data = index === undefined ? "" : tagCode.slice(index).trim();
22
+ if (bracketIndex == -1) {
23
+ throw Error(`Invalid include tag: ${tagCode}`);
24
+ }
25
+ file = tagCode.slice(0, bracketIndex).trim();
26
+ data = tagCode.slice(bracketIndex).trim();
27
+ }
23
28
  const { dataVarname } = env.options;
24
29
  return `{
25
30
  const __tmp = await __env.run(${file},
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=js.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"js.d.ts","sourceRoot":"","sources":["../../src/plugins/js.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
1
+ {"version":3,"file":"js.d.ts","sourceRoot":"","sources":["../../src/plugins/js.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
package/esm/plugins/js.js CHANGED
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  export default function () {
2
3
  return (env) => {
3
4
  env.tags.push(jsTag);
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=layout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/plugins/layout.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/plugins/layout.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  export default function () {
2
3
  return (env) => {
3
4
  env.tags.push(layoutTag);
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=set.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../src/plugins/set.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
1
+ {"version":3,"file":"set.d.ts","sourceRoot":"","sources":["../../src/plugins/set.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC"}
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  export default function () {
2
3
  return (env) => {
3
4
  env.tags.push(setTag);
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Token } from "../src/tokenizer.js";
2
3
  import type { Environment, Plugin } from "../src/environment.js";
3
4
  export default function (): Plugin;
@@ -1 +1 @@
1
- {"version":3,"file":"trim.d.ts","sourceRoot":"","sources":["../../src/plugins/trim.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,QA0BnD"}
1
+ {"version":3,"file":"trim.d.ts","sourceRoot":"","sources":["../../src/plugins/trim.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAIjC;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,QA0BnD"}
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  export default function () {
2
3
  return (env) => {
3
4
  env.tokenPreprocessors.push(trim);
@@ -1,3 +1,4 @@
1
+ import "../_dnt.polyfills.js";
1
2
  import type { Plugin } from "../src/environment.js";
2
3
  export default function (): Plugin;
3
4
  //# sourceMappingURL=unescape.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unescape.d.ts","sourceRoot":"","sources":["../../src/plugins/unescape.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,CAAC,OAAO,cAAc,MAAM,CAMjC"}
1
+ {"version":3,"file":"unescape.d.ts","sourceRoot":"","sources":["../../src/plugins/unescape.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAajE,MAAM,CAAC,OAAO,cAAc,MAAM,CAajC"}
@@ -1,7 +1,26 @@
1
- import { html } from "../deps.js";
1
+ import "../_dnt.polyfills.js";
2
+ const NAMED_ENTITIES = /&(apos|quot|amp|lt|gt);/g;
3
+ const CHAR_REF = /&#(x[0-9A-F]{1,6}|[0-9]{1,7});/gi;
4
+ const entities = {
5
+ apos: "'",
6
+ quot: '"',
7
+ amp: "&",
8
+ lt: "<",
9
+ gt: ">",
10
+ };
2
11
  export default function () {
3
12
  return (env) => {
4
- // deno-lint-ignore no-explicit-any
5
- env.filters.unescape = (value) => value ? html.unescape(value.toString()) : "";
13
+ env.filters.unescape = (value) => {
14
+ if (!value)
15
+ return "";
16
+ return value.toString().replace(NAMED_ENTITIES, (_, name) => {
17
+ return entities[name];
18
+ }).replace(CHAR_REF, (full, number) => {
19
+ const parsed = Number(`0${number}`);
20
+ if (parsed > 0x10FFFF)
21
+ return full;
22
+ return String.fromCodePoint(parsed);
23
+ });
24
+ };
6
25
  };
7
26
  }
@@ -29,7 +29,7 @@ export interface TemplateSource {
29
29
  data?: Record<string, unknown>;
30
30
  }
31
31
  export interface Loader {
32
- load(file: string): TemplateSource | Promise<TemplateSource>;
32
+ load(file: string): Promise<TemplateSource>;
33
33
  resolve(from: string, file: string): string;
34
34
  }
35
35
  export interface Options {
@@ -39,7 +39,7 @@ export interface Options {
39
39
  autoDataVarname: boolean;
40
40
  }
41
41
  export declare class Environment {
42
- cache: Map<string, Template>;
42
+ cache: Map<string, Template | Promise<Template>>;
43
43
  options: Options;
44
44
  tags: Tag[];
45
45
  tokenPreprocessors: TokenPreprocessor[];
@@ -1 +1 @@
1
- {"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/src/environment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/src/environment.ts"],"names":[],"mappings":"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"}