ventojs 0.9.2 → 0.10.2

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 (348) hide show
  1. package/esm/deps/deno.land/std@0.210.0/assert/assert.d.ts +12 -0
  2. package/esm/deps/deno.land/std@0.210.0/assert/assert.js +18 -0
  3. package/esm/deps/deno.land/std@0.210.0/assert/assertion_error.d.ts +14 -0
  4. package/esm/deps/deno.land/std@0.210.0/assert/assertion_error.js +18 -0
  5. package/{script/deps/deno.land/std@0.208.0 → esm/deps/deno.land/std@0.210.0}/path/_common/glob_to_reg_exp.d.ts +1 -0
  6. package/esm/deps/deno.land/std@0.210.0/path/common.d.ts +13 -0
  7. package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/extname.js +1 -1
  8. package/{script/deps/deno.land/std@0.208.0 → esm/deps/deno.land/std@0.210.0}/path/mod.d.ts +2 -2
  9. package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/mod.js +3 -1
  10. package/{script/deps/deno.land/std@0.208.0 → esm/deps/deno.land/std@0.210.0}/path/posix/to_file_url.d.ts +1 -1
  11. package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/separator.d.ts +1 -1
  12. package/esm/deps.d.ts +2 -2
  13. package/esm/deps.js +2 -2
  14. package/esm/plugins/for.js +27 -1
  15. package/esm/plugins/js.js +1 -1
  16. package/esm/src/environment.d.ts +5 -1
  17. package/esm/src/environment.js +5 -1
  18. package/esm/src/tokenizer.js +59 -11
  19. package/package.json +1 -1
  20. package/script/deps/deno.land/std@0.210.0/assert/assert.d.ts +12 -0
  21. package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/assert/assert.js +11 -1
  22. package/script/deps/deno.land/std@0.210.0/assert/assertion_error.d.ts +14 -0
  23. package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/assert/assertion_error.js +13 -2
  24. package/{esm/deps/deno.land/std@0.208.0 → script/deps/deno.land/std@0.210.0}/path/_common/glob_to_reg_exp.d.ts +1 -0
  25. package/script/deps/deno.land/std@0.210.0/path/common.d.ts +13 -0
  26. package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/extname.js +1 -1
  27. package/{esm/deps/deno.land/std@0.208.0 → script/deps/deno.land/std@0.210.0}/path/mod.d.ts +2 -2
  28. package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/mod.js +3 -1
  29. package/{esm/deps/deno.land/std@0.208.0 → script/deps/deno.land/std@0.210.0}/path/posix/to_file_url.d.ts +1 -1
  30. package/script/deps/deno.land/std@0.210.0/path/separator.d.ts +2 -0
  31. package/script/deps.d.ts +2 -2
  32. package/script/deps.js +2 -2
  33. package/script/plugins/for.js +27 -1
  34. package/script/plugins/js.js +1 -1
  35. package/script/src/environment.d.ts +5 -1
  36. package/script/src/environment.js +5 -1
  37. package/script/src/tokenizer.js +59 -11
  38. package/esm/deps/deno.land/std@0.208.0/assert/assert.d.ts +0 -2
  39. package/esm/deps/deno.land/std@0.208.0/assert/assert.js +0 -8
  40. package/esm/deps/deno.land/std@0.208.0/assert/assertion_error.d.ts +0 -4
  41. package/esm/deps/deno.land/std@0.208.0/assert/assertion_error.js +0 -7
  42. package/script/deps/deno.land/std@0.208.0/assert/assert.d.ts +0 -2
  43. package/script/deps/deno.land/std@0.208.0/assert/assertion_error.d.ts +0 -4
  44. package/script/deps/deno.land/std@0.208.0/path/posix/common.d.ts +0 -13
  45. package/script/deps/deno.land/std@0.208.0/path/separator.d.ts +0 -2
  46. package/script/deps/deno.land/std@0.208.0/path/windows/common.d.ts +0 -13
  47. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/html/entities.d.ts +0 -0
  48. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/html/entities.js +0 -0
  49. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/html/mod.d.ts +0 -0
  50. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/html/mod.js +0 -0
  51. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/assert_path.d.ts +0 -0
  52. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/assert_path.js +0 -0
  53. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/basename.d.ts +0 -0
  54. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/basename.js +0 -0
  55. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/common.d.ts +0 -0
  56. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/common.js +0 -0
  57. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/constants.d.ts +0 -0
  58. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/constants.js +0 -0
  59. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/dirname.d.ts +0 -0
  60. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/dirname.js +0 -0
  61. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/format.d.ts +0 -0
  62. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/format.js +0 -0
  63. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/from_file_url.d.ts +0 -0
  64. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/from_file_url.js +0 -0
  65. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/glob_to_reg_exp.js +0 -0
  66. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/normalize.d.ts +0 -0
  67. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/normalize.js +0 -0
  68. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/normalize_string.d.ts +0 -0
  69. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/normalize_string.js +0 -0
  70. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/relative.d.ts +0 -0
  71. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/relative.js +0 -0
  72. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/strip_trailing_separators.d.ts +0 -0
  73. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/strip_trailing_separators.js +0 -0
  74. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/to_file_url.d.ts +0 -0
  75. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/to_file_url.js +0 -0
  76. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_interface.d.ts +0 -0
  77. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_interface.js +0 -0
  78. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_os.d.ts +0 -0
  79. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_os.js +0 -0
  80. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/basename.d.ts +0 -0
  81. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/basename.js +0 -0
  82. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/common.js +0 -0
  83. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/dirname.d.ts +0 -0
  84. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/dirname.js +0 -0
  85. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/extname.d.ts +0 -0
  86. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/format.d.ts +0 -0
  87. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/format.js +0 -0
  88. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/from_file_url.d.ts +0 -0
  89. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/from_file_url.js +0 -0
  90. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/glob_to_regexp.d.ts +0 -0
  91. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/glob_to_regexp.js +0 -0
  92. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/is_absolute.d.ts +0 -0
  93. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/is_absolute.js +0 -0
  94. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/is_glob.d.ts +0 -0
  95. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/is_glob.js +0 -0
  96. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/join.d.ts +0 -0
  97. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/join.js +0 -0
  98. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/join_globs.d.ts +0 -0
  99. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/join_globs.js +0 -0
  100. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/normalize.d.ts +0 -0
  101. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/normalize.js +0 -0
  102. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/normalize_glob.d.ts +0 -0
  103. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/normalize_glob.js +0 -0
  104. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/parse.d.ts +0 -0
  105. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/parse.js +0 -0
  106. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/_util.d.ts +0 -0
  107. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/_util.js +0 -0
  108. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/basename.d.ts +0 -0
  109. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/basename.js +0 -0
  110. /package/esm/deps/deno.land/{std@0.208.0/path → std@0.210.0/path/posix}/common.d.ts +0 -0
  111. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/common.js +0 -0
  112. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/dirname.d.ts +0 -0
  113. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/dirname.js +0 -0
  114. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/extname.d.ts +0 -0
  115. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/extname.js +0 -0
  116. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/format.d.ts +0 -0
  117. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/format.js +0 -0
  118. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/from_file_url.d.ts +0 -0
  119. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/from_file_url.js +0 -0
  120. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/glob_to_regexp.d.ts +0 -0
  121. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/glob_to_regexp.js +0 -0
  122. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/is_absolute.d.ts +0 -0
  123. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/is_absolute.js +0 -0
  124. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/is_glob.d.ts +0 -0
  125. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/is_glob.js +0 -0
  126. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/join.d.ts +0 -0
  127. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/join.js +0 -0
  128. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/join_globs.d.ts +0 -0
  129. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/join_globs.js +0 -0
  130. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/mod.d.ts +0 -0
  131. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/mod.js +0 -0
  132. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/normalize.d.ts +0 -0
  133. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/normalize.js +0 -0
  134. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/normalize_glob.d.ts +0 -0
  135. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/normalize_glob.js +0 -0
  136. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/parse.d.ts +0 -0
  137. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/parse.js +0 -0
  138. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/relative.d.ts +0 -0
  139. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/relative.js +0 -0
  140. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/resolve.d.ts +0 -0
  141. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/resolve.js +0 -0
  142. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/separator.d.ts +0 -0
  143. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/separator.js +0 -0
  144. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/to_file_url.js +0 -0
  145. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/to_namespaced_path.d.ts +0 -0
  146. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/to_namespaced_path.js +0 -0
  147. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/relative.d.ts +0 -0
  148. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/relative.js +0 -0
  149. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/resolve.d.ts +0 -0
  150. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/resolve.js +0 -0
  151. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/separator.js +0 -0
  152. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/to_file_url.d.ts +0 -0
  153. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/to_file_url.js +0 -0
  154. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/to_namespaced_path.d.ts +0 -0
  155. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/to_namespaced_path.js +0 -0
  156. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/_util.d.ts +0 -0
  157. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/_util.js +0 -0
  158. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/basename.d.ts +0 -0
  159. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/basename.js +0 -0
  160. /package/esm/deps/deno.land/{std@0.208.0/path/posix → std@0.210.0/path/windows}/common.d.ts +0 -0
  161. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/common.js +0 -0
  162. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/dirname.d.ts +0 -0
  163. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/dirname.js +0 -0
  164. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/extname.d.ts +0 -0
  165. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/extname.js +0 -0
  166. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/format.d.ts +0 -0
  167. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/format.js +0 -0
  168. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/from_file_url.d.ts +0 -0
  169. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/from_file_url.js +0 -0
  170. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/glob_to_regexp.d.ts +0 -0
  171. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/glob_to_regexp.js +0 -0
  172. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/is_absolute.d.ts +0 -0
  173. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/is_absolute.js +0 -0
  174. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/is_glob.d.ts +0 -0
  175. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/is_glob.js +0 -0
  176. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/join.d.ts +0 -0
  177. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/join.js +0 -0
  178. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/join_globs.d.ts +0 -0
  179. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/join_globs.js +0 -0
  180. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/mod.d.ts +0 -0
  181. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/mod.js +0 -0
  182. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/normalize.d.ts +0 -0
  183. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/normalize.js +0 -0
  184. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/normalize_glob.d.ts +0 -0
  185. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/normalize_glob.js +0 -0
  186. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/parse.d.ts +0 -0
  187. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/parse.js +0 -0
  188. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/relative.d.ts +0 -0
  189. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/relative.js +0 -0
  190. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/resolve.d.ts +0 -0
  191. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/resolve.js +0 -0
  192. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/separator.d.ts +0 -0
  193. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/separator.js +0 -0
  194. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/to_file_url.d.ts +0 -0
  195. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/to_file_url.js +0 -0
  196. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/to_namespaced_path.d.ts +0 -0
  197. /package/esm/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/to_namespaced_path.js +0 -0
  198. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/html/entities.d.ts +0 -0
  199. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/html/entities.js +0 -0
  200. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/html/mod.d.ts +0 -0
  201. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/html/mod.js +0 -0
  202. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/assert_path.d.ts +0 -0
  203. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/assert_path.js +0 -0
  204. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/basename.d.ts +0 -0
  205. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/basename.js +0 -0
  206. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/common.d.ts +0 -0
  207. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/common.js +0 -0
  208. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/constants.d.ts +0 -0
  209. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/constants.js +0 -0
  210. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/dirname.d.ts +0 -0
  211. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/dirname.js +0 -0
  212. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/format.d.ts +0 -0
  213. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/format.js +0 -0
  214. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/from_file_url.d.ts +0 -0
  215. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/from_file_url.js +0 -0
  216. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/glob_to_reg_exp.js +0 -0
  217. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/normalize.d.ts +0 -0
  218. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/normalize.js +0 -0
  219. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/normalize_string.d.ts +0 -0
  220. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/normalize_string.js +0 -0
  221. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/relative.d.ts +0 -0
  222. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/relative.js +0 -0
  223. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/strip_trailing_separators.d.ts +0 -0
  224. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/strip_trailing_separators.js +0 -0
  225. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/to_file_url.d.ts +0 -0
  226. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_common/to_file_url.js +0 -0
  227. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_interface.d.ts +0 -0
  228. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_interface.js +0 -0
  229. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_os.d.ts +0 -0
  230. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/_os.js +0 -0
  231. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/basename.d.ts +0 -0
  232. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/basename.js +0 -0
  233. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/common.js +0 -0
  234. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/dirname.d.ts +0 -0
  235. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/dirname.js +0 -0
  236. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/extname.d.ts +0 -0
  237. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/format.d.ts +0 -0
  238. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/format.js +0 -0
  239. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/from_file_url.d.ts +0 -0
  240. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/from_file_url.js +0 -0
  241. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/glob_to_regexp.d.ts +0 -0
  242. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/glob_to_regexp.js +0 -0
  243. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/is_absolute.d.ts +0 -0
  244. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/is_absolute.js +0 -0
  245. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/is_glob.d.ts +0 -0
  246. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/is_glob.js +0 -0
  247. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/join.d.ts +0 -0
  248. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/join.js +0 -0
  249. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/join_globs.d.ts +0 -0
  250. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/join_globs.js +0 -0
  251. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/normalize.d.ts +0 -0
  252. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/normalize.js +0 -0
  253. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/normalize_glob.d.ts +0 -0
  254. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/normalize_glob.js +0 -0
  255. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/parse.d.ts +0 -0
  256. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/parse.js +0 -0
  257. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/_util.d.ts +0 -0
  258. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/_util.js +0 -0
  259. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/basename.d.ts +0 -0
  260. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/basename.js +0 -0
  261. /package/{esm/deps/deno.land/std@0.208.0/path/windows → script/deps/deno.land/std@0.210.0/path/posix}/common.d.ts +0 -0
  262. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/common.js +0 -0
  263. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/dirname.d.ts +0 -0
  264. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/dirname.js +0 -0
  265. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/extname.d.ts +0 -0
  266. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/extname.js +0 -0
  267. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/format.d.ts +0 -0
  268. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/format.js +0 -0
  269. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/from_file_url.d.ts +0 -0
  270. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/from_file_url.js +0 -0
  271. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/glob_to_regexp.d.ts +0 -0
  272. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/glob_to_regexp.js +0 -0
  273. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/is_absolute.d.ts +0 -0
  274. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/is_absolute.js +0 -0
  275. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/is_glob.d.ts +0 -0
  276. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/is_glob.js +0 -0
  277. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/join.d.ts +0 -0
  278. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/join.js +0 -0
  279. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/join_globs.d.ts +0 -0
  280. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/join_globs.js +0 -0
  281. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/mod.d.ts +0 -0
  282. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/mod.js +0 -0
  283. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/normalize.d.ts +0 -0
  284. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/normalize.js +0 -0
  285. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/normalize_glob.d.ts +0 -0
  286. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/normalize_glob.js +0 -0
  287. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/parse.d.ts +0 -0
  288. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/parse.js +0 -0
  289. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/relative.d.ts +0 -0
  290. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/relative.js +0 -0
  291. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/resolve.d.ts +0 -0
  292. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/resolve.js +0 -0
  293. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/separator.d.ts +0 -0
  294. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/separator.js +0 -0
  295. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/to_file_url.js +0 -0
  296. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/to_namespaced_path.d.ts +0 -0
  297. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/posix/to_namespaced_path.js +0 -0
  298. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/relative.d.ts +0 -0
  299. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/relative.js +0 -0
  300. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/resolve.d.ts +0 -0
  301. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/resolve.js +0 -0
  302. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/separator.js +0 -0
  303. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/to_file_url.d.ts +0 -0
  304. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/to_file_url.js +0 -0
  305. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/to_namespaced_path.d.ts +0 -0
  306. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/to_namespaced_path.js +0 -0
  307. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/_util.d.ts +0 -0
  308. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/_util.js +0 -0
  309. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/basename.d.ts +0 -0
  310. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/basename.js +0 -0
  311. /package/script/deps/deno.land/{std@0.208.0/path → std@0.210.0/path/windows}/common.d.ts +0 -0
  312. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/common.js +0 -0
  313. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/dirname.d.ts +0 -0
  314. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/dirname.js +0 -0
  315. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/extname.d.ts +0 -0
  316. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/extname.js +0 -0
  317. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/format.d.ts +0 -0
  318. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/format.js +0 -0
  319. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/from_file_url.d.ts +0 -0
  320. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/from_file_url.js +0 -0
  321. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/glob_to_regexp.d.ts +0 -0
  322. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/glob_to_regexp.js +0 -0
  323. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/is_absolute.d.ts +0 -0
  324. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/is_absolute.js +0 -0
  325. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/is_glob.d.ts +0 -0
  326. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/is_glob.js +0 -0
  327. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/join.d.ts +0 -0
  328. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/join.js +0 -0
  329. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/join_globs.d.ts +0 -0
  330. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/join_globs.js +0 -0
  331. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/mod.d.ts +0 -0
  332. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/mod.js +0 -0
  333. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/normalize.d.ts +0 -0
  334. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/normalize.js +0 -0
  335. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/normalize_glob.d.ts +0 -0
  336. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/normalize_glob.js +0 -0
  337. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/parse.d.ts +0 -0
  338. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/parse.js +0 -0
  339. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/relative.d.ts +0 -0
  340. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/relative.js +0 -0
  341. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/resolve.d.ts +0 -0
  342. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/resolve.js +0 -0
  343. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/separator.d.ts +0 -0
  344. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/separator.js +0 -0
  345. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/to_file_url.d.ts +0 -0
  346. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/to_file_url.js +0 -0
  347. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/to_namespaced_path.d.ts +0 -0
  348. /package/script/deps/deno.land/{std@0.208.0 → std@0.210.0}/path/windows/to_namespaced_path.js +0 -0
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Make an assertion, error will be thrown if `expr` does not have truthy value.
3
+ *
4
+ * @example
5
+ * ```ts
6
+ * import { assert } from "https://deno.land/std@$STD_VERSION/assert/assert.ts";
7
+ *
8
+ * assert("hello".includes("ello")); // Doesn't throw
9
+ * assert("hello".includes("world")); // Throws
10
+ * ```
11
+ */
12
+ export declare function assert(expr: unknown, msg?: string): asserts expr;
@@ -0,0 +1,18 @@
1
+ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
2
+ import { AssertionError } from "./assertion_error.js";
3
+ /**
4
+ * Make an assertion, error will be thrown if `expr` does not have truthy value.
5
+ *
6
+ * @example
7
+ * ```ts
8
+ * import { assert } from "https://deno.land/std@$STD_VERSION/assert/assert.ts";
9
+ *
10
+ * assert("hello".includes("ello")); // Doesn't throw
11
+ * assert("hello".includes("world")); // Throws
12
+ * ```
13
+ */
14
+ export function assert(expr, msg = "") {
15
+ if (!expr) {
16
+ throw new AssertionError(msg);
17
+ }
18
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Error thrown when an assertion fails.
3
+ *
4
+ * @example
5
+ * ```ts
6
+ * import { AssertionError } from "https://deno.land/std@$STD_VERSION/assert/assertion_error.ts";
7
+ *
8
+ * throw new AssertionError("Assertion failed");
9
+ * ```
10
+ */
11
+ export declare class AssertionError extends Error {
12
+ /** Constructs a new instance. */
13
+ constructor(message: string);
14
+ }
@@ -0,0 +1,18 @@
1
+ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
2
+ /**
3
+ * Error thrown when an assertion fails.
4
+ *
5
+ * @example
6
+ * ```ts
7
+ * import { AssertionError } from "https://deno.land/std@$STD_VERSION/assert/assertion_error.ts";
8
+ *
9
+ * throw new AssertionError("Assertion failed");
10
+ * ```
11
+ */
12
+ export class AssertionError extends Error {
13
+ /** Constructs a new instance. */
14
+ constructor(message) {
15
+ super(message);
16
+ this.name = "AssertionError";
17
+ }
18
+ }
@@ -1,3 +1,4 @@
1
+ /** Options for {@linkcode globToRegExp}. */
1
2
  export interface GlobOptions {
2
3
  /** Extended glob syntax.
3
4
  * See https://www.linuxjournal.com/content/bash-extended-globbing.
@@ -0,0 +1,13 @@
1
+ /** Determines the common path from a set of paths, using an optional separator,
2
+ * which defaults to the OS default separator.
3
+ *
4
+ * ```ts
5
+ * import { common } from "https://deno.land/std@$STD_VERSION/path/mod.ts";
6
+ * const p = common([
7
+ * "./deno/std/path/mod.ts",
8
+ * "./deno/std/fs/mod.ts",
9
+ * ]);
10
+ * console.log(p); // "./deno/std/"
11
+ * ```
12
+ */
13
+ export declare function common(paths: string[], sep?: "/" | "\\"): string;
@@ -2,7 +2,7 @@
2
2
  // This module is browser compatible.
3
3
  import { isWindows } from "./_os.js";
4
4
  import { extname as posixExtname } from "./posix/extname.js";
5
- import { extname as windowsExtname } from "./posix/extname.js";
5
+ import { extname as windowsExtname } from "./windows/extname.js";
6
6
  /**
7
7
  * Return the extension of the `path` with leading period.
8
8
  * @param path with extension
@@ -4,8 +4,8 @@ import * as _posix from "./posix/mod.js";
4
4
  export declare const win32: typeof _windows;
5
5
  /** @deprecated (will be removed after 1.0.0) Import from {@link https://deno.land/std/posix/mod.ts} instead. */
6
6
  export declare const posix: typeof _posix;
7
- export declare const sep: string;
8
- export declare const delimiter: string;
7
+ export declare const sep: "/" | "\\";
8
+ export declare const delimiter: ":" | ";";
9
9
  export * from "./basename.js";
10
10
  export * from "./dirname.js";
11
11
  export * from "./extname.js";
@@ -40,7 +40,9 @@ export const win32 = _windows;
40
40
  /** @deprecated (will be removed after 1.0.0) Import from {@link https://deno.land/std/posix/mod.ts} instead. */
41
41
  export const posix = _posix;
42
42
  export const sep = isWindows ? _windows.sep : _posix.sep;
43
- export const delimiter = isWindows ? _windows.delimiter : _posix.delimiter;
43
+ export const delimiter = isWindows
44
+ ? _windows.delimiter
45
+ : _posix.delimiter;
44
46
  export * from "./basename.js";
45
47
  export * from "./dirname.js";
46
48
  export * from "./extname.js";
@@ -9,4 +9,4 @@
9
9
  * ```
10
10
  * @param path to convert to file URL
11
11
  */
12
- export declare function toFileUrl(path: string): import("url").URL;
12
+ export declare function toFileUrl(path: string): URL;
@@ -1,2 +1,2 @@
1
- export declare const SEP: string;
1
+ export declare const SEP: "/" | "\\";
2
2
  export declare const SEP_PATTERN: RegExp;
package/esm/deps.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export * as path from "./deps/deno.land/std@0.208.0/path/mod.js";
2
- export * as html from "./deps/deno.land/std@0.208.0/html/mod.js";
1
+ export * as path from "./deps/deno.land/std@0.210.0/path/mod.js";
2
+ export * as html from "./deps/deno.land/std@0.210.0/html/mod.js";
package/esm/deps.js CHANGED
@@ -1,2 +1,2 @@
1
- export * as path from "./deps/deno.land/std@0.208.0/path/mod.js";
2
- export * as html from "./deps/deno.land/std@0.208.0/html/mod.js";
1
+ export * as path from "./deps/deno.land/std@0.210.0/path/mod.js";
2
+ export * as html from "./deps/deno.land/std@0.210.0/html/mod.js";
@@ -25,7 +25,9 @@ function forTag(env, code, output, tokens) {
25
25
  compiled.push("}");
26
26
  return compiled.join("\n");
27
27
  }
28
- function toIterator(item, withKeys = false) {
28
+ function toIterator(
29
+ // deno-lint-ignore no-explicit-any
30
+ item, withKeys = false) {
29
31
  if (item === undefined || item === null) {
30
32
  return [];
31
33
  }
@@ -36,6 +38,18 @@ function toIterator(item, withKeys = false) {
36
38
  return toIterator(item(), withKeys);
37
39
  }
38
40
  if (typeof item === "object" && item !== null) {
41
+ if (typeof item[Symbol.iterator] === "function") {
42
+ if (withKeys) {
43
+ return iterableToEntries(item);
44
+ }
45
+ return item;
46
+ }
47
+ if (typeof item[Symbol.asyncIterator] === "function") {
48
+ if (withKeys) {
49
+ return asyncIterableToEntries(item);
50
+ }
51
+ return item;
52
+ }
39
53
  return withKeys ? Object.entries(item) : Object.values(item);
40
54
  }
41
55
  if (typeof item === "string") {
@@ -46,3 +60,15 @@ function toIterator(item, withKeys = false) {
46
60
  }
47
61
  return toIterator([item], withKeys);
48
62
  }
63
+ function* iterableToEntries(iterator) {
64
+ let i = 0;
65
+ for (const value of iterator) {
66
+ yield [i++, value];
67
+ }
68
+ }
69
+ async function* asyncIterableToEntries(iterator) {
70
+ let i = 0;
71
+ for await (const value of iterator) {
72
+ yield [i++, value];
73
+ }
74
+ }
package/esm/plugins/js.js CHANGED
@@ -4,7 +4,7 @@ export default function () {
4
4
  };
5
5
  }
6
6
  function jsTag(_env, code) {
7
- if (!code.startsWith("> ")) {
7
+ if (!code.startsWith(">")) {
8
8
  return;
9
9
  }
10
10
  return code.replace(/^>\s+/, "");
@@ -17,7 +17,11 @@ export interface TemplateSync {
17
17
  file?: string;
18
18
  }
19
19
  export type Tag = (env: Environment, code: string, output: string, tokens: Token[]) => string | undefined;
20
- export type Filter = (...args: any[]) => any;
20
+ export type FilterThis = {
21
+ data: Record<string, unknown>;
22
+ env: Environment;
23
+ };
24
+ export type Filter = (this: FilterThis, ...args: any[]) => any;
21
25
  export type Plugin = (env: Environment) => void;
22
26
  export interface Options {
23
27
  loader: Loader;
@@ -124,7 +124,8 @@ export class Environment {
124
124
  }
125
125
  else {
126
126
  // It's a filter (e.g. filters.upper())
127
- output = `${isAsync ? "await " : ""}__env.filters.${name}(${output}${args ? `, ${args}` : ""})`;
127
+ const { dataVarname } = this.options;
128
+ output = `${(isAsync || checkAsync(this.filters[name])) ? "await " : ""}__env.filters.${name}.call({data:${dataVarname},env:__env}, ${output}${args ? `, ${args}` : ""})`;
128
129
  }
129
130
  }
130
131
  // Escape by default
@@ -171,3 +172,6 @@ export function errorLine(source, pos) {
171
172
  }
172
173
  return [line, column, source.split("\n")[line - 1]];
173
174
  }
175
+ function checkAsync(fn) {
176
+ return fn.constructor?.name === "AsyncFunction";
177
+ }
@@ -111,7 +111,8 @@ export function parseTag(source) {
111
111
  statuses.unshift("bracket");
112
112
  }
113
113
  else if (status !== "comment" && status !== "single-quote" &&
114
- status !== "double-quote" && status !== "literal") {
114
+ status !== "double-quote" && status !== "literal" &&
115
+ status !== "regex" && status !== "line-comment") {
115
116
  statuses.unshift("bracket");
116
117
  }
117
118
  break;
@@ -136,7 +137,9 @@ export function parseTag(source) {
136
137
  }
137
138
  else if (status !== "comment" &&
138
139
  status !== "single-quote" &&
139
- status !== "literal") {
140
+ status !== "literal" &&
141
+ status !== "regex" &&
142
+ status !== "line-comment") {
140
143
  statuses.unshift("double-quote");
141
144
  }
142
145
  break;
@@ -149,7 +152,9 @@ export function parseTag(source) {
149
152
  }
150
153
  else if (status !== "comment" &&
151
154
  status !== "double-quote" &&
152
- status !== "literal") {
155
+ status !== "literal" &&
156
+ status !== "regex" &&
157
+ status !== "line-comment") {
153
158
  statuses.unshift("single-quote");
154
159
  }
155
160
  break;
@@ -162,23 +167,56 @@ export function parseTag(source) {
162
167
  }
163
168
  else if (status !== "comment" &&
164
169
  status !== "double-quote" &&
165
- status !== "single-quote") {
170
+ status !== "single-quote" &&
171
+ status !== "regex" &&
172
+ status !== "line-comment") {
166
173
  statuses.unshift("literal");
167
174
  }
168
175
  break;
169
176
  }
170
- // Detect comments
177
+ // Detect comments and regex
171
178
  case "/": {
172
179
  const status = statuses[0];
173
- if (status !== "single-quote" && status !== "double-quote" &&
174
- status !== "literal") {
175
- if (source.charAt(index) === "*") {
176
- statuses.unshift("comment");
180
+ if (status === "single-quote" || status === "double-quote" ||
181
+ status === "literal" || status === "line-comment") {
182
+ break;
183
+ }
184
+ // We are in a comment: close or ignore
185
+ if (status === "comment") {
186
+ if (source.charAt(index - 2) === "*") {
187
+ statuses.shift();
177
188
  }
178
- else if (status === "comment" &&
179
- source.charAt(index - 2) === "*") {
189
+ break;
190
+ }
191
+ // We are in a regex: close or ignore
192
+ if (status === "regex") {
193
+ if (source.charAt(index - 2) !== "\\") {
180
194
  statuses.shift();
181
195
  }
196
+ break;
197
+ }
198
+ // Start a new comment
199
+ if (source.charAt(index) === "*") {
200
+ statuses.unshift("comment");
201
+ break;
202
+ }
203
+ // Start a new line comment
204
+ if (source.charAt(index - 2) === "/") {
205
+ statuses.unshift("line-comment");
206
+ break;
207
+ }
208
+ // Start a new regex
209
+ const prev = prevChar(source, index - 1);
210
+ if (prev === "(" || prev === "=" || prev === ":" || prev === ",") {
211
+ statuses.unshift("regex");
212
+ }
213
+ break;
214
+ }
215
+ // Detect end of line comments
216
+ case "\n": {
217
+ const status = statuses[0];
218
+ if (status === "line-comment") {
219
+ statuses.shift();
182
220
  }
183
221
  break;
184
222
  }
@@ -194,3 +232,13 @@ export function parseTag(source) {
194
232
  }
195
233
  throw new Error("Unclosed tag");
196
234
  }
235
+ // Get the previous character in a string ignoring spaces, line breaks and tabs
236
+ function prevChar(source, index) {
237
+ while (index > 0) {
238
+ const char = source.charAt(--index);
239
+ if (char !== " " && char !== "\n" && char !== "\r" && char !== "\t") {
240
+ return char;
241
+ }
242
+ }
243
+ return "";
244
+ }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "module": "./esm/mod.js",
3
3
  "main": "./script/mod.js",
4
4
  "name": "ventojs",
5
- "version": "0.9.2",
5
+ "version": "0.10.2",
6
6
  "description": "🌬 A minimal but powerful template engine",
7
7
  "license": "MIT",
8
8
  "repository": "github:oscarotero/vento",
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Make an assertion, error will be thrown if `expr` does not have truthy value.
3
+ *
4
+ * @example
5
+ * ```ts
6
+ * import { assert } from "https://deno.land/std@$STD_VERSION/assert/assert.ts";
7
+ *
8
+ * assert("hello".includes("ello")); // Doesn't throw
9
+ * assert("hello".includes("world")); // Throws
10
+ * ```
11
+ */
12
+ export declare function assert(expr: unknown, msg?: string): asserts expr;
@@ -3,7 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.assert = void 0;
4
4
  // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
5
5
  const assertion_error_js_1 = require("./assertion_error.js");
6
- /** Make an assertion, error will be thrown if `expr` does not have truthy value. */
6
+ /**
7
+ * Make an assertion, error will be thrown if `expr` does not have truthy value.
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * import { assert } from "https://deno.land/std@$STD_VERSION/assert/assert.ts";
12
+ *
13
+ * assert("hello".includes("ello")); // Doesn't throw
14
+ * assert("hello".includes("world")); // Throws
15
+ * ```
16
+ */
7
17
  function assert(expr, msg = "") {
8
18
  if (!expr) {
9
19
  throw new assertion_error_js_1.AssertionError(msg);
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Error thrown when an assertion fails.
3
+ *
4
+ * @example
5
+ * ```ts
6
+ * import { AssertionError } from "https://deno.land/std@$STD_VERSION/assert/assertion_error.ts";
7
+ *
8
+ * throw new AssertionError("Assertion failed");
9
+ * ```
10
+ */
11
+ export declare class AssertionError extends Error {
12
+ /** Constructs a new instance. */
13
+ constructor(message: string);
14
+ }
@@ -1,11 +1,22 @@
1
1
  "use strict";
2
+ // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.AssertionError = void 0;
4
- // Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
5
+ /**
6
+ * Error thrown when an assertion fails.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * import { AssertionError } from "https://deno.land/std@$STD_VERSION/assert/assertion_error.ts";
11
+ *
12
+ * throw new AssertionError("Assertion failed");
13
+ * ```
14
+ */
5
15
  class AssertionError extends Error {
6
- name = "AssertionError";
16
+ /** Constructs a new instance. */
7
17
  constructor(message) {
8
18
  super(message);
19
+ this.name = "AssertionError";
9
20
  }
10
21
  }
11
22
  exports.AssertionError = AssertionError;
@@ -1,3 +1,4 @@
1
+ /** Options for {@linkcode globToRegExp}. */
1
2
  export interface GlobOptions {
2
3
  /** Extended glob syntax.
3
4
  * See https://www.linuxjournal.com/content/bash-extended-globbing.
@@ -0,0 +1,13 @@
1
+ /** Determines the common path from a set of paths, using an optional separator,
2
+ * which defaults to the OS default separator.
3
+ *
4
+ * ```ts
5
+ * import { common } from "https://deno.land/std@$STD_VERSION/path/mod.ts";
6
+ * const p = common([
7
+ * "./deno/std/path/mod.ts",
8
+ * "./deno/std/fs/mod.ts",
9
+ * ]);
10
+ * console.log(p); // "./deno/std/"
11
+ * ```
12
+ */
13
+ export declare function common(paths: string[], sep?: "/" | "\\"): string;
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.extname = void 0;
6
6
  const _os_js_1 = require("./_os.js");
7
7
  const extname_js_1 = require("./posix/extname.js");
8
- const extname_js_2 = require("./posix/extname.js");
8
+ const extname_js_2 = require("./windows/extname.js");
9
9
  /**
10
10
  * Return the extension of the `path` with leading period.
11
11
  * @param path with extension
@@ -4,8 +4,8 @@ import * as _posix from "./posix/mod.js";
4
4
  export declare const win32: typeof _windows;
5
5
  /** @deprecated (will be removed after 1.0.0) Import from {@link https://deno.land/std/posix/mod.ts} instead. */
6
6
  export declare const posix: typeof _posix;
7
- export declare const sep: string;
8
- export declare const delimiter: string;
7
+ export declare const sep: "/" | "\\";
8
+ export declare const delimiter: ":" | ";";
9
9
  export * from "./basename.js";
10
10
  export * from "./dirname.js";
11
11
  export * from "./extname.js";
@@ -69,7 +69,9 @@ exports.win32 = _windows;
69
69
  /** @deprecated (will be removed after 1.0.0) Import from {@link https://deno.land/std/posix/mod.ts} instead. */
70
70
  exports.posix = _posix;
71
71
  exports.sep = _os_js_1.isWindows ? _windows.sep : _posix.sep;
72
- exports.delimiter = _os_js_1.isWindows ? _windows.delimiter : _posix.delimiter;
72
+ exports.delimiter = _os_js_1.isWindows
73
+ ? _windows.delimiter
74
+ : _posix.delimiter;
73
75
  __exportStar(require("./basename.js"), exports);
74
76
  __exportStar(require("./dirname.js"), exports);
75
77
  __exportStar(require("./extname.js"), exports);
@@ -9,4 +9,4 @@
9
9
  * ```
10
10
  * @param path to convert to file URL
11
11
  */
12
- export declare function toFileUrl(path: string): import("url").URL;
12
+ export declare function toFileUrl(path: string): URL;
@@ -0,0 +1,2 @@
1
+ export declare const SEP: "/" | "\\";
2
+ export declare const SEP_PATTERN: RegExp;
package/script/deps.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export * as path from "./deps/deno.land/std@0.208.0/path/mod.js";
2
- export * as html from "./deps/deno.land/std@0.208.0/html/mod.js";
1
+ export * as path from "./deps/deno.land/std@0.210.0/path/mod.js";
2
+ export * as html from "./deps/deno.land/std@0.210.0/html/mod.js";
package/script/deps.js CHANGED
@@ -24,5 +24,5 @@ var __importStar = (this && this.__importStar) || function (mod) {
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.html = exports.path = void 0;
27
- exports.path = __importStar(require("./deps/deno.land/std@0.208.0/path/mod.js"));
28
- exports.html = __importStar(require("./deps/deno.land/std@0.208.0/html/mod.js"));
27
+ exports.path = __importStar(require("./deps/deno.land/std@0.210.0/path/mod.js"));
28
+ exports.html = __importStar(require("./deps/deno.land/std@0.210.0/html/mod.js"));
@@ -28,7 +28,9 @@ function forTag(env, code, output, tokens) {
28
28
  compiled.push("}");
29
29
  return compiled.join("\n");
30
30
  }
31
- function toIterator(item, withKeys = false) {
31
+ function toIterator(
32
+ // deno-lint-ignore no-explicit-any
33
+ item, withKeys = false) {
32
34
  if (item === undefined || item === null) {
33
35
  return [];
34
36
  }
@@ -39,6 +41,18 @@ function toIterator(item, withKeys = false) {
39
41
  return toIterator(item(), withKeys);
40
42
  }
41
43
  if (typeof item === "object" && item !== null) {
44
+ if (typeof item[Symbol.iterator] === "function") {
45
+ if (withKeys) {
46
+ return iterableToEntries(item);
47
+ }
48
+ return item;
49
+ }
50
+ if (typeof item[Symbol.asyncIterator] === "function") {
51
+ if (withKeys) {
52
+ return asyncIterableToEntries(item);
53
+ }
54
+ return item;
55
+ }
42
56
  return withKeys ? Object.entries(item) : Object.values(item);
43
57
  }
44
58
  if (typeof item === "string") {
@@ -49,3 +63,15 @@ function toIterator(item, withKeys = false) {
49
63
  }
50
64
  return toIterator([item], withKeys);
51
65
  }
66
+ function* iterableToEntries(iterator) {
67
+ let i = 0;
68
+ for (const value of iterator) {
69
+ yield [i++, value];
70
+ }
71
+ }
72
+ async function* asyncIterableToEntries(iterator) {
73
+ let i = 0;
74
+ for await (const value of iterator) {
75
+ yield [i++, value];
76
+ }
77
+ }
@@ -7,7 +7,7 @@ function default_1() {
7
7
  }
8
8
  exports.default = default_1;
9
9
  function jsTag(_env, code) {
10
- if (!code.startsWith("> ")) {
10
+ if (!code.startsWith(">")) {
11
11
  return;
12
12
  }
13
13
  return code.replace(/^>\s+/, "");
@@ -17,7 +17,11 @@ export interface TemplateSync {
17
17
  file?: string;
18
18
  }
19
19
  export type Tag = (env: Environment, code: string, output: string, tokens: Token[]) => string | undefined;
20
- export type Filter = (...args: any[]) => any;
20
+ export type FilterThis = {
21
+ data: Record<string, unknown>;
22
+ env: Environment;
23
+ };
24
+ export type Filter = (this: FilterThis, ...args: any[]) => any;
21
25
  export type Plugin = (env: Environment) => void;
22
26
  export interface Options {
23
27
  loader: Loader;
@@ -153,7 +153,8 @@ class Environment {
153
153
  }
154
154
  else {
155
155
  // It's a filter (e.g. filters.upper())
156
- output = `${isAsync ? "await " : ""}__env.filters.${name}(${output}${args ? `, ${args}` : ""})`;
156
+ const { dataVarname } = this.options;
157
+ output = `${(isAsync || checkAsync(this.filters[name])) ? "await " : ""}__env.filters.${name}.call({data:${dataVarname},env:__env}, ${output}${args ? `, ${args}` : ""})`;
157
158
  }
158
159
  }
159
160
  // Escape by default
@@ -202,3 +203,6 @@ function errorLine(source, pos) {
202
203
  return [line, column, source.split("\n")[line - 1]];
203
204
  }
204
205
  exports.errorLine = errorLine;
206
+ function checkAsync(fn) {
207
+ return fn.constructor?.name === "AsyncFunction";
208
+ }