@inlang/paraglide-js 2.23.0 → 2.23.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 (419) hide show
  1. package/dist/bundler-plugins/esbuild.d.ts +0 -1
  2. package/dist/bundler-plugins/esbuild.js.map +1 -1
  3. package/dist/bundler-plugins/index.d.ts +0 -1
  4. package/dist/bundler-plugins/index.js.map +1 -1
  5. package/dist/bundler-plugins/per-locale-build/constants.d.ts +0 -1
  6. package/dist/bundler-plugins/per-locale-build/constants.js.map +1 -1
  7. package/dist/bundler-plugins/per-locale-build/index.d.ts +0 -1
  8. package/dist/bundler-plugins/per-locale-build/index.js.map +1 -1
  9. package/dist/bundler-plugins/per-locale-build/locale-id.d.ts +0 -1
  10. package/dist/bundler-plugins/per-locale-build/locale-id.js.map +1 -1
  11. package/dist/bundler-plugins/per-locale-build/types.d.ts +0 -1
  12. package/dist/bundler-plugins/per-locale-build/types.js.map +1 -1
  13. package/dist/bundler-plugins/per-locale-build/vite-environments.d.ts +0 -1
  14. package/dist/bundler-plugins/per-locale-build/vite-environments.js.map +1 -1
  15. package/dist/bundler-plugins/per-locale-build/vite-environments.test.d.ts +0 -1
  16. package/dist/bundler-plugins/per-locale-build/vite-environments.test.js.map +1 -1
  17. package/dist/bundler-plugins/rolldown.d.ts +0 -1
  18. package/dist/bundler-plugins/rolldown.js.map +1 -1
  19. package/dist/bundler-plugins/rollup.d.ts +0 -1
  20. package/dist/bundler-plugins/rollup.js.map +1 -1
  21. package/dist/bundler-plugins/rspack.d.ts +0 -1
  22. package/dist/bundler-plugins/rspack.js.map +1 -1
  23. package/dist/bundler-plugins/unplugin.d.ts +0 -1
  24. package/dist/bundler-plugins/unplugin.js.map +1 -1
  25. package/dist/bundler-plugins/unplugin.test.d.ts +0 -1
  26. package/dist/bundler-plugins/unplugin.test.js.map +1 -1
  27. package/dist/bundler-plugins/vite.d.ts +0 -1
  28. package/dist/bundler-plugins/vite.js.map +1 -1
  29. package/dist/bundler-plugins/vite.test.d.ts +0 -1
  30. package/dist/bundler-plugins/vite.test.js.map +1 -1
  31. package/dist/bundler-plugins/webpack.d.ts +0 -1
  32. package/dist/bundler-plugins/webpack.js.map +1 -1
  33. package/dist/cli/commands/compile/command.d.ts +0 -1
  34. package/dist/cli/commands/compile/command.js.map +1 -1
  35. package/dist/cli/commands/compile/command.test.d.ts +0 -1
  36. package/dist/cli/commands/compile/command.test.js.map +1 -1
  37. package/dist/cli/commands/init/command.d.ts +0 -1
  38. package/dist/cli/commands/init/command.js.map +1 -1
  39. package/dist/cli/defaults.d.ts +0 -1
  40. package/dist/cli/defaults.js.map +1 -1
  41. package/dist/cli/index.d.ts +0 -1
  42. package/dist/cli/index.js.map +1 -1
  43. package/dist/cli/steps/add-vite-plugin.d.ts +0 -1
  44. package/dist/cli/steps/add-vite-plugin.js.map +1 -1
  45. package/dist/cli/steps/add-vite-plugin.test.d.ts +0 -1
  46. package/dist/cli/steps/add-vite-plugin.test.js.map +1 -1
  47. package/dist/cli/steps/check-for-uncomitted-changes.d.ts +0 -1
  48. package/dist/cli/steps/check-for-uncomitted-changes.js.map +1 -1
  49. package/dist/cli/steps/detect-bundler.d.ts +0 -1
  50. package/dist/cli/steps/detect-bundler.js.map +1 -1
  51. package/dist/cli/steps/detect-bundler.test.d.ts +0 -1
  52. package/dist/cli/steps/detect-bundler.test.js.map +1 -1
  53. package/dist/cli/steps/initialize-inlang-project.d.ts +0 -1
  54. package/dist/cli/steps/initialize-inlang-project.js.map +1 -1
  55. package/dist/cli/steps/maybe-add-machine-translation.d.ts +0 -1
  56. package/dist/cli/steps/maybe-add-machine-translation.js.map +1 -1
  57. package/dist/cli/steps/maybe-add-sherlock.d.ts +0 -1
  58. package/dist/cli/steps/maybe-add-sherlock.js.map +1 -1
  59. package/dist/cli/steps/prompt-for-outdir.d.ts +0 -1
  60. package/dist/cli/steps/prompt-for-outdir.js.map +1 -1
  61. package/dist/cli/steps/update-package-json.d.ts +0 -1
  62. package/dist/cli/steps/update-package-json.js.map +1 -1
  63. package/dist/cli/steps/update-ts-config.d.ts +0 -1
  64. package/dist/cli/steps/update-ts-config.js.map +1 -1
  65. package/dist/cli/steps/update-ts-config.test.d.ts +0 -1
  66. package/dist/cli/steps/update-ts-config.test.js.map +1 -1
  67. package/dist/cli/utils.d.ts +0 -1
  68. package/dist/cli/utils.js.map +1 -1
  69. package/dist/compiler/compile-annotation.d.ts +0 -1
  70. package/dist/compiler/compile-annotation.js.map +1 -1
  71. package/dist/compiler/compile-bundle.d.ts +0 -1
  72. package/dist/compiler/compile-bundle.js.map +1 -1
  73. package/dist/compiler/compile-bundle.test.d.ts +0 -1
  74. package/dist/compiler/compile-bundle.test.js.map +1 -1
  75. package/dist/compiler/compile-local-variable.d.ts +0 -1
  76. package/dist/compiler/compile-local-variable.js.map +1 -1
  77. package/dist/compiler/compile-local-variable.test.d.ts +0 -1
  78. package/dist/compiler/compile-local-variable.test.js.map +1 -1
  79. package/dist/compiler/compile-message.d.ts +0 -1
  80. package/dist/compiler/compile-message.js.map +1 -1
  81. package/dist/compiler/compile-message.test.d.ts +0 -1
  82. package/dist/compiler/compile-message.test.js.map +1 -1
  83. package/dist/compiler/compile-pattern.d.ts +0 -1
  84. package/dist/compiler/compile-pattern.js.map +1 -1
  85. package/dist/compiler/compile-pattern.test.d.ts +0 -1
  86. package/dist/compiler/compile-pattern.test.js.map +1 -1
  87. package/dist/compiler/compile-project.d.ts +0 -1
  88. package/dist/compiler/compile-project.js.map +1 -1
  89. package/dist/compiler/compile-project.test.d.ts +0 -1
  90. package/dist/compiler/compile-project.test.js.map +1 -1
  91. package/dist/compiler/compile.bench.d.ts +0 -1
  92. package/dist/compiler/compile.bench.js.map +1 -1
  93. package/dist/compiler/compile.d.ts +0 -1
  94. package/dist/compiler/compile.js.map +1 -1
  95. package/dist/compiler/compile.test.d.ts +0 -1
  96. package/dist/compiler/compile.test.js.map +1 -1
  97. package/dist/compiler/compiler-options.d.ts +0 -1
  98. package/dist/compiler/compiler-options.js.map +1 -1
  99. package/dist/compiler/create-paraglide.d.ts +0 -1
  100. package/dist/compiler/create-paraglide.js.map +1 -1
  101. package/dist/compiler/create-paraglide.test.d.ts +0 -1
  102. package/dist/compiler/create-paraglide.test.js.map +1 -1
  103. package/dist/compiler/create-readme.d.ts +0 -1
  104. package/dist/compiler/create-readme.js.map +1 -1
  105. package/dist/compiler/emit-ts-declarations.d.ts +0 -1
  106. package/dist/compiler/emit-ts-declarations.interop.test.d.ts +0 -1
  107. package/dist/compiler/emit-ts-declarations.interop.test.js.map +1 -1
  108. package/dist/compiler/emit-ts-declarations.js.map +1 -1
  109. package/dist/compiler/emit-ts-declarations.test.d.ts +0 -1
  110. package/dist/compiler/emit-ts-declarations.test.js.map +1 -1
  111. package/dist/compiler/index.d.ts +0 -1
  112. package/dist/compiler/index.js.map +1 -1
  113. package/dist/compiler/jsdoc-types.d.ts +0 -1
  114. package/dist/compiler/jsdoc-types.js.map +1 -1
  115. package/dist/compiler/jsdoc-types.test.d.ts +0 -1
  116. package/dist/compiler/jsdoc-types.test.js.map +1 -1
  117. package/dist/compiler/match-literals.d.ts +0 -1
  118. package/dist/compiler/match-literals.js.map +1 -1
  119. package/dist/compiler/output-structure/locale-modules.d.ts +0 -1
  120. package/dist/compiler/output-structure/locale-modules.js.map +1 -1
  121. package/dist/compiler/output-structure/locale-modules.test.d.ts +0 -1
  122. package/dist/compiler/output-structure/locale-modules.test.js.map +1 -1
  123. package/dist/compiler/output-structure/message-modules.d.ts +0 -1
  124. package/dist/compiler/output-structure/message-modules.js.map +1 -1
  125. package/dist/compiler/output-structure/message-modules.test.d.ts +0 -1
  126. package/dist/compiler/output-structure/message-modules.test.js.map +1 -1
  127. package/dist/compiler/per-locale-build.d.ts +0 -1
  128. package/dist/compiler/per-locale-build.js.map +1 -1
  129. package/dist/compiler/registry.d.ts +0 -1
  130. package/dist/compiler/registry.js.map +1 -1
  131. package/dist/compiler/resolve-tsc-js-path.d.ts +0 -1
  132. package/dist/compiler/resolve-tsc-js-path.js.map +1 -1
  133. package/dist/compiler/runtime/check-locale.d.ts +0 -1
  134. package/dist/compiler/runtime/check-locale.js.map +1 -1
  135. package/dist/compiler/runtime/check-locale.test.d.ts +0 -1
  136. package/dist/compiler/runtime/check-locale.test.js.map +1 -1
  137. package/dist/compiler/runtime/create-runtime.d.ts +0 -1
  138. package/dist/compiler/runtime/create-runtime.js.map +1 -1
  139. package/dist/compiler/runtime/extract-locale-from-cookie.d.ts +0 -1
  140. package/dist/compiler/runtime/extract-locale-from-cookie.js.map +1 -1
  141. package/dist/compiler/runtime/extract-locale-from-cookie.test.d.ts +0 -1
  142. package/dist/compiler/runtime/extract-locale-from-cookie.test.js.map +1 -1
  143. package/dist/compiler/runtime/extract-locale-from-header.d.ts +0 -1
  144. package/dist/compiler/runtime/extract-locale-from-header.js.map +1 -1
  145. package/dist/compiler/runtime/extract-locale-from-header.test.d.ts +0 -1
  146. package/dist/compiler/runtime/extract-locale-from-header.test.js.map +1 -1
  147. package/dist/compiler/runtime/extract-locale-from-navigator.d.ts +0 -1
  148. package/dist/compiler/runtime/extract-locale-from-navigator.js.map +1 -1
  149. package/dist/compiler/runtime/extract-locale-from-navigator.test.d.ts +0 -1
  150. package/dist/compiler/runtime/extract-locale-from-navigator.test.js.map +1 -1
  151. package/dist/compiler/runtime/extract-locale-from-request-async.d.ts +0 -1
  152. package/dist/compiler/runtime/extract-locale-from-request-async.js.map +1 -1
  153. package/dist/compiler/runtime/extract-locale-from-request-async.test.d.ts +0 -1
  154. package/dist/compiler/runtime/extract-locale-from-request-async.test.js.map +1 -1
  155. package/dist/compiler/runtime/extract-locale-from-request.d.ts +0 -1
  156. package/dist/compiler/runtime/extract-locale-from-request.js.map +1 -1
  157. package/dist/compiler/runtime/extract-locale-from-request.test.d.ts +0 -1
  158. package/dist/compiler/runtime/extract-locale-from-request.test.js.map +1 -1
  159. package/dist/compiler/runtime/extract-locale-from-url.d.ts +0 -1
  160. package/dist/compiler/runtime/extract-locale-from-url.js.map +1 -1
  161. package/dist/compiler/runtime/extract-locale-from-url.test.d.ts +0 -1
  162. package/dist/compiler/runtime/extract-locale-from-url.test.js.map +1 -1
  163. package/dist/compiler/runtime/generate-static-localized-urls.d.ts +0 -1
  164. package/dist/compiler/runtime/generate-static-localized-urls.js.map +1 -1
  165. package/dist/compiler/runtime/generate-static-localized-urls.test.d.ts +0 -1
  166. package/dist/compiler/runtime/generate-static-localized-urls.test.js.map +1 -1
  167. package/dist/compiler/runtime/get-locale.d.ts +0 -1
  168. package/dist/compiler/runtime/get-locale.js.map +1 -1
  169. package/dist/compiler/runtime/get-locale.test.d.ts +0 -1
  170. package/dist/compiler/runtime/get-locale.test.js.map +1 -1
  171. package/dist/compiler/runtime/get-text-direction.d.ts +0 -1
  172. package/dist/compiler/runtime/get-text-direction.js.map +1 -1
  173. package/dist/compiler/runtime/get-text-direction.test.d.ts +0 -1
  174. package/dist/compiler/runtime/get-text-direction.test.js.map +1 -1
  175. package/dist/compiler/runtime/get-url-origin.d.ts +0 -1
  176. package/dist/compiler/runtime/get-url-origin.js.map +1 -1
  177. package/dist/compiler/runtime/get-url-origin.test.d.ts +0 -1
  178. package/dist/compiler/runtime/get-url-origin.test.js.map +1 -1
  179. package/dist/compiler/runtime/localize-href.d.ts +0 -1
  180. package/dist/compiler/runtime/localize-href.js.map +1 -1
  181. package/dist/compiler/runtime/localize-href.test.d.ts +0 -1
  182. package/dist/compiler/runtime/localize-href.test.js.map +1 -1
  183. package/dist/compiler/runtime/localize-url.d.ts +0 -1
  184. package/dist/compiler/runtime/localize-url.js.map +1 -1
  185. package/dist/compiler/runtime/localize-url.test.d.ts +0 -1
  186. package/dist/compiler/runtime/localize-url.test.js.map +1 -1
  187. package/dist/compiler/runtime/route-strategy.d.ts +0 -1
  188. package/dist/compiler/runtime/route-strategy.js.map +1 -1
  189. package/dist/compiler/runtime/set-locale.d.ts +0 -1
  190. package/dist/compiler/runtime/set-locale.js.map +1 -1
  191. package/dist/compiler/runtime/set-locale.test.d.ts +0 -1
  192. package/dist/compiler/runtime/set-locale.test.js.map +1 -1
  193. package/dist/compiler/runtime/should-redirect.d.ts +0 -1
  194. package/dist/compiler/runtime/should-redirect.js.map +1 -1
  195. package/dist/compiler/runtime/should-redirect.test.d.ts +0 -1
  196. package/dist/compiler/runtime/should-redirect.test.js.map +1 -1
  197. package/dist/compiler/runtime/strategy.d.ts +0 -1
  198. package/dist/compiler/runtime/strategy.js.map +1 -1
  199. package/dist/compiler/runtime/strategy.test.d.ts +0 -1
  200. package/dist/compiler/runtime/strategy.test.js.map +1 -1
  201. package/dist/compiler/runtime/track-message-call.d.ts +0 -1
  202. package/dist/compiler/runtime/track-message-call.js.map +1 -1
  203. package/dist/compiler/runtime/track-message-call.test.d.ts +0 -1
  204. package/dist/compiler/runtime/track-message-call.test.js.map +1 -1
  205. package/dist/compiler/runtime/type-definitions.d.ts +0 -1
  206. package/dist/compiler/runtime/type-definitions.js.map +1 -1
  207. package/dist/compiler/runtime/type.d.ts +1 -1
  208. package/dist/compiler/runtime/type.js.map +1 -1
  209. package/dist/compiler/runtime/type.test.d.ts +0 -1
  210. package/dist/compiler/runtime/type.test.js.map +1 -1
  211. package/dist/compiler/runtime/variables.d.ts +9 -1
  212. package/dist/compiler/runtime/variables.js +11 -0
  213. package/dist/compiler/runtime/variables.js.map +1 -1
  214. package/dist/compiler/safe-module-id.d.ts +0 -1
  215. package/dist/compiler/safe-module-id.js.map +1 -1
  216. package/dist/compiler/safe-module-id.test.d.ts +0 -1
  217. package/dist/compiler/safe-module-id.test.js.map +1 -1
  218. package/dist/compiler/seed-previous-compilation.d.ts +0 -1
  219. package/dist/compiler/seed-previous-compilation.js.map +1 -1
  220. package/dist/compiler/server/create-server-file.d.ts +0 -1
  221. package/dist/compiler/server/create-server-file.js +15 -6
  222. package/dist/compiler/server/create-server-file.js.map +1 -1
  223. package/dist/compiler/server/create-server-file.test.d.ts +1 -0
  224. package/dist/compiler/server/create-server-file.test.js +48 -0
  225. package/dist/compiler/server/create-server-file.test.js.map +1 -0
  226. package/dist/compiler/server/middleware.d.ts +0 -1
  227. package/dist/compiler/server/middleware.js +3 -2
  228. package/dist/compiler/server/middleware.js.map +1 -1
  229. package/dist/compiler/server/middleware.test.d.ts +0 -1
  230. package/dist/compiler/server/middleware.test.js.map +1 -1
  231. package/dist/compiler/server/type.d.ts +0 -1
  232. package/dist/compiler/server/type.js.map +1 -1
  233. package/dist/compiler/types.d.ts +0 -1
  234. package/dist/compiler/types.js.map +1 -1
  235. package/dist/compiler/variable-access.d.ts +0 -1
  236. package/dist/compiler/variable-access.js.map +1 -1
  237. package/dist/index.d.ts +0 -1
  238. package/dist/index.js.map +1 -1
  239. package/dist/services/account/index.d.ts +0 -1
  240. package/dist/services/account/index.js.map +1 -1
  241. package/dist/services/codegen/escape.d.ts +0 -1
  242. package/dist/services/codegen/escape.js.map +1 -1
  243. package/dist/services/codegen/quotes.d.ts +0 -1
  244. package/dist/services/codegen/quotes.js.map +1 -1
  245. package/dist/services/env-variables/create-index-file.d.ts +0 -1
  246. package/dist/services/env-variables/create-index-file.js.map +1 -1
  247. package/dist/services/env-variables/index.d.ts +0 -1
  248. package/dist/services/env-variables/index.js +1 -1
  249. package/dist/services/env-variables/index.js.map +1 -1
  250. package/dist/services/environment/package.d.ts +0 -1
  251. package/dist/services/environment/package.js.map +1 -1
  252. package/dist/services/environment/package.test.d.ts +0 -1
  253. package/dist/services/environment/package.test.js.map +1 -1
  254. package/dist/services/error-handling.d.ts +0 -1
  255. package/dist/services/error-handling.js.map +1 -1
  256. package/dist/services/error-handling.test.d.ts +0 -1
  257. package/dist/services/error-handling.test.js.map +1 -1
  258. package/dist/services/file-handling/exists.d.ts +0 -1
  259. package/dist/services/file-handling/exists.js.map +1 -1
  260. package/dist/services/file-handling/exists.test.d.ts +0 -1
  261. package/dist/services/file-handling/exists.test.js.map +1 -1
  262. package/dist/services/file-handling/types.d.ts +0 -1
  263. package/dist/services/file-handling/types.js.map +1 -1
  264. package/dist/services/file-handling/write-output.d.ts +0 -1
  265. package/dist/services/file-handling/write-output.js.map +1 -1
  266. package/dist/services/file-handling/write-output.test.d.ts +0 -1
  267. package/dist/services/file-handling/write-output.test.js.map +1 -1
  268. package/dist/services/file-watching/tracked-fs.d.ts +0 -1
  269. package/dist/services/file-watching/tracked-fs.js.map +1 -1
  270. package/dist/services/file-watching/tracked-fs.test.d.ts +0 -1
  271. package/dist/services/file-watching/tracked-fs.test.js.map +1 -1
  272. package/dist/services/logger/index.d.ts +0 -1
  273. package/dist/services/logger/index.js.map +1 -1
  274. package/dist/services/lookup.d.ts +0 -1
  275. package/dist/services/lookup.js.map +1 -1
  276. package/dist/urlpattern-polyfill/index.d.ts +0 -1
  277. package/dist/urlpattern-polyfill/index.js.map +1 -1
  278. package/dist/utilities/detect-json-formatting.d.ts +0 -1
  279. package/dist/utilities/detect-json-formatting.js.map +1 -1
  280. package/dist/utilities/node-normalize-path.d.ts +0 -1
  281. package/dist/utilities/node-normalize-path.js.map +1 -1
  282. package/package.json +1 -1
  283. package/dist/bundler-plugins/esbuild.d.ts.map +0 -1
  284. package/dist/bundler-plugins/index.d.ts.map +0 -1
  285. package/dist/bundler-plugins/per-locale-build/constants.d.ts.map +0 -1
  286. package/dist/bundler-plugins/per-locale-build/index.d.ts.map +0 -1
  287. package/dist/bundler-plugins/per-locale-build/locale-id.d.ts.map +0 -1
  288. package/dist/bundler-plugins/per-locale-build/types.d.ts.map +0 -1
  289. package/dist/bundler-plugins/per-locale-build/vite-environments.d.ts.map +0 -1
  290. package/dist/bundler-plugins/per-locale-build/vite-environments.test.d.ts.map +0 -1
  291. package/dist/bundler-plugins/rolldown.d.ts.map +0 -1
  292. package/dist/bundler-plugins/rollup.d.ts.map +0 -1
  293. package/dist/bundler-plugins/rspack.d.ts.map +0 -1
  294. package/dist/bundler-plugins/unplugin.d.ts.map +0 -1
  295. package/dist/bundler-plugins/unplugin.test.d.ts.map +0 -1
  296. package/dist/bundler-plugins/vite.d.ts.map +0 -1
  297. package/dist/bundler-plugins/vite.test.d.ts.map +0 -1
  298. package/dist/bundler-plugins/webpack.d.ts.map +0 -1
  299. package/dist/cli/commands/compile/command.d.ts.map +0 -1
  300. package/dist/cli/commands/compile/command.test.d.ts.map +0 -1
  301. package/dist/cli/commands/init/command.d.ts.map +0 -1
  302. package/dist/cli/defaults.d.ts.map +0 -1
  303. package/dist/cli/index.d.ts.map +0 -1
  304. package/dist/cli/steps/add-vite-plugin.d.ts.map +0 -1
  305. package/dist/cli/steps/add-vite-plugin.test.d.ts.map +0 -1
  306. package/dist/cli/steps/check-for-uncomitted-changes.d.ts.map +0 -1
  307. package/dist/cli/steps/detect-bundler.d.ts.map +0 -1
  308. package/dist/cli/steps/detect-bundler.test.d.ts.map +0 -1
  309. package/dist/cli/steps/initialize-inlang-project.d.ts.map +0 -1
  310. package/dist/cli/steps/maybe-add-machine-translation.d.ts.map +0 -1
  311. package/dist/cli/steps/maybe-add-sherlock.d.ts.map +0 -1
  312. package/dist/cli/steps/prompt-for-outdir.d.ts.map +0 -1
  313. package/dist/cli/steps/update-package-json.d.ts.map +0 -1
  314. package/dist/cli/steps/update-ts-config.d.ts.map +0 -1
  315. package/dist/cli/steps/update-ts-config.test.d.ts.map +0 -1
  316. package/dist/cli/utils.d.ts.map +0 -1
  317. package/dist/compiler/compile-annotation.d.ts.map +0 -1
  318. package/dist/compiler/compile-bundle.d.ts.map +0 -1
  319. package/dist/compiler/compile-bundle.test.d.ts.map +0 -1
  320. package/dist/compiler/compile-local-variable.d.ts.map +0 -1
  321. package/dist/compiler/compile-local-variable.test.d.ts.map +0 -1
  322. package/dist/compiler/compile-message.d.ts.map +0 -1
  323. package/dist/compiler/compile-message.test.d.ts.map +0 -1
  324. package/dist/compiler/compile-pattern.d.ts.map +0 -1
  325. package/dist/compiler/compile-pattern.test.d.ts.map +0 -1
  326. package/dist/compiler/compile-project.d.ts.map +0 -1
  327. package/dist/compiler/compile-project.test.d.ts.map +0 -1
  328. package/dist/compiler/compile.bench.d.ts.map +0 -1
  329. package/dist/compiler/compile.d.ts.map +0 -1
  330. package/dist/compiler/compile.test.d.ts.map +0 -1
  331. package/dist/compiler/compiler-options.d.ts.map +0 -1
  332. package/dist/compiler/create-paraglide.d.ts.map +0 -1
  333. package/dist/compiler/create-paraglide.test.d.ts.map +0 -1
  334. package/dist/compiler/create-readme.d.ts.map +0 -1
  335. package/dist/compiler/emit-ts-declarations.d.ts.map +0 -1
  336. package/dist/compiler/emit-ts-declarations.interop.test.d.ts.map +0 -1
  337. package/dist/compiler/emit-ts-declarations.test.d.ts.map +0 -1
  338. package/dist/compiler/index.d.ts.map +0 -1
  339. package/dist/compiler/jsdoc-types.d.ts.map +0 -1
  340. package/dist/compiler/jsdoc-types.test.d.ts.map +0 -1
  341. package/dist/compiler/match-literals.d.ts.map +0 -1
  342. package/dist/compiler/output-structure/locale-modules.d.ts.map +0 -1
  343. package/dist/compiler/output-structure/locale-modules.test.d.ts.map +0 -1
  344. package/dist/compiler/output-structure/message-modules.d.ts.map +0 -1
  345. package/dist/compiler/output-structure/message-modules.test.d.ts.map +0 -1
  346. package/dist/compiler/per-locale-build.d.ts.map +0 -1
  347. package/dist/compiler/registry.d.ts.map +0 -1
  348. package/dist/compiler/resolve-tsc-js-path.d.ts.map +0 -1
  349. package/dist/compiler/runtime/check-locale.d.ts.map +0 -1
  350. package/dist/compiler/runtime/check-locale.test.d.ts.map +0 -1
  351. package/dist/compiler/runtime/create-runtime.d.ts.map +0 -1
  352. package/dist/compiler/runtime/extract-locale-from-cookie.d.ts.map +0 -1
  353. package/dist/compiler/runtime/extract-locale-from-cookie.test.d.ts.map +0 -1
  354. package/dist/compiler/runtime/extract-locale-from-header.d.ts.map +0 -1
  355. package/dist/compiler/runtime/extract-locale-from-header.test.d.ts.map +0 -1
  356. package/dist/compiler/runtime/extract-locale-from-navigator.d.ts.map +0 -1
  357. package/dist/compiler/runtime/extract-locale-from-navigator.test.d.ts.map +0 -1
  358. package/dist/compiler/runtime/extract-locale-from-request-async.d.ts.map +0 -1
  359. package/dist/compiler/runtime/extract-locale-from-request-async.test.d.ts.map +0 -1
  360. package/dist/compiler/runtime/extract-locale-from-request.d.ts.map +0 -1
  361. package/dist/compiler/runtime/extract-locale-from-request.test.d.ts.map +0 -1
  362. package/dist/compiler/runtime/extract-locale-from-url.d.ts.map +0 -1
  363. package/dist/compiler/runtime/extract-locale-from-url.test.d.ts.map +0 -1
  364. package/dist/compiler/runtime/generate-static-localized-urls.d.ts.map +0 -1
  365. package/dist/compiler/runtime/generate-static-localized-urls.test.d.ts.map +0 -1
  366. package/dist/compiler/runtime/get-locale.d.ts.map +0 -1
  367. package/dist/compiler/runtime/get-locale.test.d.ts.map +0 -1
  368. package/dist/compiler/runtime/get-text-direction.d.ts.map +0 -1
  369. package/dist/compiler/runtime/get-text-direction.test.d.ts.map +0 -1
  370. package/dist/compiler/runtime/get-url-origin.d.ts.map +0 -1
  371. package/dist/compiler/runtime/get-url-origin.test.d.ts.map +0 -1
  372. package/dist/compiler/runtime/localize-href.d.ts.map +0 -1
  373. package/dist/compiler/runtime/localize-href.test.d.ts.map +0 -1
  374. package/dist/compiler/runtime/localize-url.d.ts.map +0 -1
  375. package/dist/compiler/runtime/localize-url.test.d.ts.map +0 -1
  376. package/dist/compiler/runtime/route-strategy.d.ts.map +0 -1
  377. package/dist/compiler/runtime/set-locale.d.ts.map +0 -1
  378. package/dist/compiler/runtime/set-locale.test.d.ts.map +0 -1
  379. package/dist/compiler/runtime/should-redirect.d.ts.map +0 -1
  380. package/dist/compiler/runtime/should-redirect.test.d.ts.map +0 -1
  381. package/dist/compiler/runtime/strategy.d.ts.map +0 -1
  382. package/dist/compiler/runtime/strategy.test.d.ts.map +0 -1
  383. package/dist/compiler/runtime/track-message-call.d.ts.map +0 -1
  384. package/dist/compiler/runtime/track-message-call.test.d.ts.map +0 -1
  385. package/dist/compiler/runtime/type-definitions.d.ts.map +0 -1
  386. package/dist/compiler/runtime/type.d.ts.map +0 -1
  387. package/dist/compiler/runtime/type.test.d.ts.map +0 -1
  388. package/dist/compiler/runtime/variables.d.ts.map +0 -1
  389. package/dist/compiler/safe-module-id.d.ts.map +0 -1
  390. package/dist/compiler/safe-module-id.test.d.ts.map +0 -1
  391. package/dist/compiler/seed-previous-compilation.d.ts.map +0 -1
  392. package/dist/compiler/server/create-server-file.d.ts.map +0 -1
  393. package/dist/compiler/server/middleware.d.ts.map +0 -1
  394. package/dist/compiler/server/middleware.test.d.ts.map +0 -1
  395. package/dist/compiler/server/type.d.ts.map +0 -1
  396. package/dist/compiler/types.d.ts.map +0 -1
  397. package/dist/compiler/variable-access.d.ts.map +0 -1
  398. package/dist/index.d.ts.map +0 -1
  399. package/dist/services/account/index.d.ts.map +0 -1
  400. package/dist/services/codegen/escape.d.ts.map +0 -1
  401. package/dist/services/codegen/quotes.d.ts.map +0 -1
  402. package/dist/services/env-variables/create-index-file.d.ts.map +0 -1
  403. package/dist/services/env-variables/index.d.ts.map +0 -1
  404. package/dist/services/environment/package.d.ts.map +0 -1
  405. package/dist/services/environment/package.test.d.ts.map +0 -1
  406. package/dist/services/error-handling.d.ts.map +0 -1
  407. package/dist/services/error-handling.test.d.ts.map +0 -1
  408. package/dist/services/file-handling/exists.d.ts.map +0 -1
  409. package/dist/services/file-handling/exists.test.d.ts.map +0 -1
  410. package/dist/services/file-handling/types.d.ts.map +0 -1
  411. package/dist/services/file-handling/write-output.d.ts.map +0 -1
  412. package/dist/services/file-handling/write-output.test.d.ts.map +0 -1
  413. package/dist/services/file-watching/tracked-fs.d.ts.map +0 -1
  414. package/dist/services/file-watching/tracked-fs.test.d.ts.map +0 -1
  415. package/dist/services/logger/index.d.ts.map +0 -1
  416. package/dist/services/lookup.d.ts.map +0 -1
  417. package/dist/urlpattern-polyfill/index.d.ts.map +0 -1
  418. package/dist/utilities/detect-json-formatting.d.ts.map +0 -1
  419. package/dist/utilities/node-normalize-path.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"compile-project.test.js","sourceRoot":"","sources":["../../src/compiler/compile-project.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile-project.test.js","sourceRoot":"","sources":["../../src/compiler/compile-project.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { expect, test, describe, vi, beforeEach } from \"vitest\";\nimport {\n\tcreateProject as typescriptProject,\n\tts,\n\ttype ProjectOptions,\n} from \"@ts-morph/bootstrap\";\nimport {\n\ttype BundleNested,\n\tDeclaration,\n\tinsertBundleNested,\n\tloadProjectInMemory,\n\ttype Match,\n\tnewProject,\n\tPattern,\n\tVariableReference,\n} from \"@inlang/sdk\";\nimport { compileProject, getFallbackMap } from \"./compile-project.js\";\nimport virtual from \"@rollup/plugin-virtual\";\nimport { rolldown } from \"rolldown\";\nimport { perLocaleBuildStaticLocaleExpression } from \"./per-locale-build.js\";\n\nbeforeEach(() => {\n\t// reset the imports to make sure that the runtime is reloaded\n\tvi.resetModules();\n\tvi.clearAllMocks();\n\n\t// mocking DOM globals\n\t// @ts-expect-error - global variable definition\n\tglobalThis.window = undefined;\n});\n\nfunction hasFallbackCycle(\n\tfallbackMap: Record<string, string | undefined>,\n\tstart: string\n): boolean {\n\tconst visited = new Set<string>();\n\tlet current: string | undefined = start;\n\n\twhile (current) {\n\t\tif (visited.has(current)) return true;\n\t\tvisited.add(current);\n\t\tcurrent = fallbackMap[current];\n\t}\n\n\treturn false;\n}\n\ntest(\"emitGitignore\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst _default = await compileProject({\n\t\tproject,\n\t});\n\n\tconst _true = await compileProject({\n\t\tproject,\n\t\tcompilerOptions: { emitGitIgnore: true },\n\t});\n\n\tconst _false = await compileProject({\n\t\tproject,\n\t\tcompilerOptions: { emitGitIgnore: false },\n\t});\n\n\texpect(_default).toHaveProperty(\".gitignore\");\n\texpect(_true).toHaveProperty(\".gitignore\");\n\texpect(_false).not.toHaveProperty(\".gitignore\");\n});\n\ntest(\"marks tree-shakeable generated message layouts as side-effect-free\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst messageModules = await compileProject({\n\t\tproject,\n\t});\n\n\tconst localeModules = await compileProject({\n\t\tproject,\n\t\tcompilerOptions: { outputStructure: \"locale-modules\" },\n\t});\n\tconst specializedLocaleModules = await compileProject({\n\t\tproject,\n\t\tcompilerOptions: {\n\t\t\toutputStructure: \"locale-modules\",\n\t\t\texperimentalStaticLocale: perLocaleBuildStaticLocaleExpression,\n\t\t},\n\t});\n\n\t// message-modules: the message modules are side-effect-free, so bundlers can\n\t// drop unused re-exports from the `m` barrel per entry instead of emitting one\n\t// shared chunk with every message. `type: \"module\"` keeps the generated ESM\n\t// files in the new `messages/` package scope from defaulting to CommonJS.\n\texpect(messageModules).toHaveProperty(\"messages/package.json\");\n\texpect(JSON.parse(messageModules[\"messages/package.json\"]!)).toEqual({\n\t\ttype: \"module\",\n\t\tsideEffects: false,\n\t});\n\n\texpect(localeModules).not.toHaveProperty(\"messages/package.json\");\n\texpect(specializedLocaleModules).toHaveProperty(\"messages/package.json\");\n\texpect(\n\t\tJSON.parse(specializedLocaleModules[\"messages/package.json\"]!)\n\t).toEqual({\n\t\ttype: \"module\",\n\t\tsideEffects: false,\n\t});\n});\n\ntest(\"emitPrettierIgnore\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst _default = await compileProject({\n\t\tproject,\n\t});\n\n\tconst _true = await compileProject({\n\t\tproject,\n\t\tcompilerOptions: { emitPrettierIgnore: true },\n\t});\n\n\tconst _false = await compileProject({\n\t\tproject,\n\t\tcompilerOptions: { emitPrettierIgnore: false },\n\t});\n\n\texpect(_default).toHaveProperty(\".prettierignore\");\n\texpect(_true).toHaveProperty(\".prettierignore\");\n\texpect(_false).not.toHaveProperty(\".prettierignore\");\n});\n\ntest(\"emitReadme\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst projectPath = \"./project.inlang\";\n\n\tconst _default = await compileProject({\n\t\tproject,\n\t\tprojectPath,\n\t});\n\n\tconst _true = await compileProject({\n\t\tproject,\n\t\tprojectPath,\n\t\tcompilerOptions: { emitReadme: true },\n\t});\n\n\tconst _false = await compileProject({\n\t\tproject,\n\t\tprojectPath,\n\t\tcompilerOptions: { emitReadme: false },\n\t});\n\n\tconst _noProjectPath = await compileProject({\n\t\tproject,\n\t});\n\n\texpect(_default).toHaveProperty(\"README.md\");\n\texpect(_true).toHaveProperty(\"README.md\");\n\texpect(_false).not.toHaveProperty(\"README.md\");\n\t// README should still be emitted even without projectPath\n\texpect(_noProjectPath).toHaveProperty(\"README.md\");\n\t// but should not contain the \"Compiled from:\" line\n\texpect(_noProjectPath[\"README.md\"]).not.toContain(\"Compiled from:\");\n});\n\ntest(\"emitReadme includes project path\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst projectPath = \"./my-custom-project.inlang\";\n\n\tconst output = await compileProject({\n\t\tproject,\n\t\tprojectPath,\n\t});\n\n\texpect(output[\"README.md\"]).toContain(projectPath);\n\texpect(output[\"README.md\"]).toContain(\"Compiled from:\");\n\texpect(output[\"README.md\"]).toContain(\"Paraglide JS\");\n});\n\ntest(\"throws during compile for invalid routeStrategies match patterns\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait expect(\n\t\tcompileProject({\n\t\t\tproject,\n\t\t\tcompilerOptions: {\n\t\t\t\trouteStrategies: [{ match: \"/api/:path(.*\", exclude: true }],\n\t\t\t},\n\t\t})\n\t).rejects.toThrow(`Invalid routeStrategies[0].match \"/api/:path(.*\"`);\n});\n\n// https://github.com/opral/paraglide-js/issues/539\ntest(\"omits async_hooks import when disableAsyncLocalStorage is true\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst output = await compileProject({\n\t\tproject,\n\t\tcompilerOptions: { disableAsyncLocalStorage: true },\n\t});\n\n\texpect(output[\"server.js\"]).not.toContain(\n\t\t'const { AsyncLocalStorage } = await import(\"async_hooks\");'\n\t);\n});\n\n// https://github.com/opral/paraglide-js/issues/544\ntest(\"fallback map should not create cycles for language-only + regional baseLocale\", () => {\n\tconst fallbackMap = getFallbackMap([\"it\", \"it-IT\", \"fr\", \"fr-FR\"], \"it-IT\");\n\n\texpect(hasFallbackCycle(fallbackMap, \"it\")).toBe(false);\n\texpect(hasFallbackCycle(fallbackMap, \"it-IT\")).toBe(false);\n\texpect(fallbackMap[\"it\"]).toBe(\"it-IT\");\n\texpect(fallbackMap[\"it-IT\"]).toBeUndefined();\n});\n\ntest(\"emitTsDeclarations generates declaration files\", async () => {\n\tconst output = await compileProject({\n\t\tproject,\n\t\tcompilerOptions: {\n\t\t\temitTsDeclarations: true,\n\t\t\toutputStructure: \"locale-modules\",\n\t\t},\n\t});\n\n\texpect(output).toHaveProperty(\"messages/_index.d.ts\");\n\texpect(output).toHaveProperty(\"messages.d.ts\");\n\texpect(output).toHaveProperty(\"registry.d.ts\");\n\texpect(output[\"messages/_index.d.ts\"]).toContain(\"sad_penguin_bundle\");\n\texpect(output[\"messages/_index.d.ts\"]).toContain(\"relative_time_dynamic\");\n\texpect(output[\"registry.d.ts\"]).toContain(\"RelativeTimeFormatUnit\");\n\texpect(output[\"registry.d.ts\"]).toContain(\"relativetime\");\n\n\tconst tsProject = await typescriptProject({\n\t\tuseInMemoryFileSystem: true,\n\t\tcompilerOptions: {\n\t\t\tmodule: ts.ModuleKind.Node16,\n\t\t\tmoduleResolution: ts.ModuleResolutionKind.Node16,\n\t\t\tstrict: true,\n\t\t},\n\t});\n\n\tfor (const [fileName, code] of Object.entries(output)) {\n\t\tif (fileName.endsWith(\".d.ts\")) {\n\t\t\ttsProject.createSourceFile(fileName, code);\n\t\t}\n\t}\n\n\ttsProject.createSourceFile(\n\t\t\"test.ts\",\n\t\t`\n\t\t\timport { m, relative_time_dynamic } from \"./messages.js\";\n\t\t\timport { relativetime } from \"./registry.js\";\n\n\t\t\tm.sad_penguin_bundle() satisfies string;\n\t\t\trelative_time_dynamic({ duration: -3, unit: \"hour\" }) satisfies string;\n\t\t\trelativetime(\"en\", -3, { unit: \"hour\", style: \"short\" }) satisfies string;\n\t\t`\n\t);\n\n\tconst program = tsProject.createProgram();\n\tconst diagnostics = ts.getPreEmitDiagnostics(program);\n\tfor (const diagnostic of diagnostics) {\n\t\tconsole.error(diagnostic.messageText, diagnostic.file?.fileName);\n\t}\n\texpect(diagnostics.length).toEqual(0);\n});\n\ntest(\"emitTsDeclarations remains opt-in\", async () => {\n\tconst output = await compileProject({ project });\n\texpect(\n\t\tObject.keys(output).some((fileName) => fileName.endsWith(\".d.ts\"))\n\t).toBe(false);\n});\n\ntest(\"emitTsDeclarations quotes unsafe export aliases\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait insertBundleNested(\n\t\tproject.db,\n\t\tcreateBundleNested({\n\t\t\tid: \"greeting.hello\",\n\t\t\tmessages: [\n\t\t\t\t{\n\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\tvariants: [{ pattern: [{ type: \"text\", value: \"Hello\" }] }],\n\t\t\t\t},\n\t\t\t],\n\t\t})\n\t);\n\n\tfor (const outputStructure of [\n\t\t\"message-modules\",\n\t\t\"locale-modules\",\n\t] as const) {\n\t\tconst output = await compileProject({\n\t\t\tproject,\n\t\t\tcompilerOptions: {\n\t\t\t\temitTsDeclarations: true,\n\t\t\t\toutputStructure,\n\t\t\t},\n\t\t});\n\t\tconst declarationFile =\n\t\t\toutputStructure === \"message-modules\"\n\t\t\t\t? \"messages/greeting_hello.d.ts\"\n\t\t\t\t: \"messages/_index.d.ts\";\n\n\t\texpect(output[declarationFile]).toContain(\n\t\t\t`export { greeting_hello as \"greeting.hello\" };`\n\t\t);\n\n\t\tconst tsProject = await typescriptProject({\n\t\t\tuseInMemoryFileSystem: true,\n\t\t\tcompilerOptions: {\n\t\t\t\tmodule: ts.ModuleKind.Node16,\n\t\t\t\tmoduleResolution: ts.ModuleResolutionKind.Node16,\n\t\t\t\tstrict: true,\n\t\t\t},\n\t\t});\n\n\t\tfor (const [fileName, code] of Object.entries(output)) {\n\t\t\tif (fileName.endsWith(\".d.ts\")) {\n\t\t\t\ttsProject.createSourceFile(fileName, code);\n\t\t\t}\n\t\t}\n\n\t\ttsProject.createSourceFile(\n\t\t\t\"test.ts\",\n\t\t\t`\n\t\t\t\timport { \"greeting.hello\" as greetingHello } from \"./messages.js\";\n\n\t\t\t\tgreetingHello() satisfies string;\n\t\t\t`\n\t\t);\n\n\t\tconst program = tsProject.createProgram();\n\t\tconst diagnostics = ts.getPreEmitDiagnostics(program);\n\t\tfor (const diagnostic of diagnostics) {\n\t\t\tconsole.error(diagnostic.messageText, diagnostic.file?.fileName);\n\t\t}\n\t\texpect(diagnostics.length).toEqual(0);\n\t}\n});\n\ntest(\"handles message bundles with a : in the id\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait insertBundleNested(\n\t\tproject.db,\n\t\tcreateBundleNested({\n\t\t\tid: \"hello:world\",\n\t\t\tmessages: [\n\t\t\t\t{\n\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\tvariants: [{ pattern: [{ type: \"text\", value: \"Hello world!\" }] }],\n\t\t\t\t},\n\t\t\t],\n\t\t})\n\t);\n\n\tconst output = await compileProject({\n\t\tproject,\n\t});\n\n\tconst code = await bundleCode(\n\t\toutput,\n\t\t`export * as m from \"./paraglide/messages.js\"\n\t\t export * as runtime from \"./paraglide/runtime.js\"`\n\t);\n\n\tconst { m } = await importCode(code);\n\n\texpect(m[\"hello:world\"]()).toBe(\"Hello world!\");\n});\n\ntest(\"emits .parts() on bundle functions for markup messages\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait insertBundleNested(\n\t\tproject.db,\n\t\tcreateBundleNested({\n\t\t\tid: \"balance\",\n\t\t\tdeclarations: [\n\t\t\t\t{\n\t\t\t\t\ttype: \"input-variable\",\n\t\t\t\t\tname: \"amount\",\n\t\t\t\t},\n\t\t\t],\n\t\t\tmessages: [\n\t\t\t\t{\n\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\tvariants: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t\t{ type: \"text\", value: \"You have \" },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ttype: \"markup-start\",\n\t\t\t\t\t\t\t\t\tname: \"strong\",\n\t\t\t\t\t\t\t\t\toptions: [],\n\t\t\t\t\t\t\t\t\tattributes: [],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"amount\" },\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{ type: \"text\", value: \" coins\" },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ttype: \"markup-end\",\n\t\t\t\t\t\t\t\t\tname: \"strong\",\n\t\t\t\t\t\t\t\t\toptions: [],\n\t\t\t\t\t\t\t\t\tattributes: [],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{ type: \"text\", value: \".\" },\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t],\n\t\t})\n\t);\n\n\tconst output = await compileProject({\n\t\tproject,\n\t});\n\n\tconst code = await bundleCode(\n\t\toutput,\n\t\t`export * as m from \"./paraglide/messages.js\"\n\t\t export * as runtime from \"./paraglide/runtime.js\"`\n\t);\n\tconst { m } = await importCode(code);\n\n\texpect(m.balance({ amount: 7 }, { locale: \"en\" })).toBe(\"You have 7 coins.\");\n\texpect(m.balance.parts({ amount: 7 }, { locale: \"en\" })).toEqual([\n\t\t{ type: \"text\", value: \"You have \" },\n\t\t{ type: \"markup-start\", name: \"strong\", options: {}, attributes: {} },\n\t\t{ type: \"text\", value: \"7\" },\n\t\t{ type: \"text\", value: \" coins\" },\n\t\t{ type: \"markup-end\", name: \"strong\", options: {}, attributes: {} },\n\t\t{ type: \"text\", value: \".\" },\n\t]);\n});\n\n// https://github.com/opral/inlang-paraglide-js/issues/347\ntest(\"can emit message bundles with more than 255 characters\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait insertBundleNested(\n\t\tproject.db,\n\t\tcreateBundleNested({\n\t\t\t// 300 characters long id\n\t\t\tid: \"a\".repeat(300),\n\t\t\tmessages: [\n\t\t\t\t{\n\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\tvariants: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Hello\" }],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t],\n\t\t})\n\t);\n\n\tconst output = await compileProject({\n\t\tproject,\n\t\tcompilerOptions: {\n\t\t\turlPatterns: [],\n\t\t},\n\t});\n\n\tconst code = await bundleCode(\n\t\toutput,\n\t\t`export * as m from \"./paraglide/messages.js\"\n\t\t export * as runtime from \"./paraglide/runtime.js\"`\n\t);\n\n\tconst { m } = await importCode(code);\n\n\texpect(m[\"a\".repeat(300)]()).toBe(\"Hello\");\n});\n\ndescribe.each([\n\t// useTsImports must be true to test emitTs. Otherwise, rolldown can't resolve the imports\n\t{\n\t\toutputStructure: \"locale-modules\",\n\t\tstrategy: [\"globalVariable\", \"baseLocale\"],\n\t},\n\t{\n\t\toutputStructure: \"message-modules\",\n\t\tstrategy: [\"globalVariable\", \"baseLocale\"],\n\t},\n] satisfies Array<Parameters<typeof compileProject>[\"0\"][\"compilerOptions\"]>)(\n\t\"options\",\n\tasync (compilerOptions) => {\n\t\tconst output = await compileProject({ project, compilerOptions });\n\n\t\tdescribe(\"tree-shaking\", () => {\n\t\t\ttest(\"should tree-shake unused messages\", async () => {\n\t\t\t\tconst code = await bundleCode(\n\t\t\t\t\toutput,\n\t\t\t\t\t`import * as m from \"./paraglide/messages.js\"\n\n\t\t\t\t\tconsole.log(m.sad_penguin_bundle())`\n\t\t\t\t);\n\t\t\t\tconst log = vi.spyOn(console, \"log\").mockImplementation(() => {});\n\t\t\t\t// all required code for the message to be rendered is included like sourceLanguageTag.\n\t\t\t\t// but, all other messages except of 'sad_penguin_bundle' are tree-shaken away.\n\t\t\t\tfor (const { id } of mockBundles) {\n\t\t\t\t\tif (id === \"sad_penguin_bundle\") {\n\t\t\t\t\t\texpect(code).toContain(id);\n\t\t\t\t\t} else {\n\t\t\t\t\t\texpect(code).not.toContain(id);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\teval(code);\n\t\t\t\texpect(log).toHaveBeenCalledWith(\"A simple message.\");\n\t\t\t});\n\n\t\t\t// https://github.com/opral/inlang-paraglide-js/issues/345\n\t\t\ttest(\"importing { m } works and tree-shakes unused messages\", async () => {\n\t\t\t\tconst code = await bundleCode(\n\t\t\t\t\toutput,\n\t\t\t\t\t`import { m } from \"./paraglide/messages.js\"\n\t\t\t\t\tconsole.log(m.sad_penguin_bundle())`\n\t\t\t\t);\n\t\t\t\tconst log = vi.spyOn(console, \"log\").mockImplementation(() => {});\n\n\t\t\t\t// all required code for the message to be rendered is included like sourceLanguageTag.\n\t\t\t\t// but, all other messages except of 'sad_penguin_bundle' are tree-shaken away.\n\t\t\t\tfor (const { id } of mockBundles) {\n\t\t\t\t\tif (id === \"sad_penguin_bundle\") {\n\t\t\t\t\t\texpect(code).toContain(id);\n\t\t\t\t\t} else {\n\t\t\t\t\t\texpect(code).not.toContain(id);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\teval(code);\n\t\t\t\texpect(log).toHaveBeenCalledWith(\"A simple message.\");\n\t\t\t});\n\n\t\t\ttest(\"should not treeshake messages that are used\", async () => {\n\t\t\t\tconst code = await bundleCode(\n\t\t\t\t\toutput,\n\t\t\t\t\t`import * as m from \"./paraglide/messages.js\"\n\t\t\n\t\t\tconsole.log(\n\t\t\t\tm.sad_penguin_bundle(),\n\t\t\t\tm.depressed_dog({ name: \"Samuel\" }),\n\t\t\t\tm.insane_cats({ name: \"Samuel\", count: 5 })\n\t\t\t)`\n\t\t\t\t);\n\t\t\t\tconst log = vi.spyOn(console, \"log\").mockImplementation(() => {});\n\t\t\t\tfor (const id of mockBundles.map((m) => m.id)) {\n\t\t\t\t\tif (\n\t\t\t\t\t\t[\"sad_penguin_bundle\", \"depressed_dog\", \"insane_cats\"].includes(id)\n\t\t\t\t\t) {\n\t\t\t\t\t\texpect(code).toContain(id);\n\t\t\t\t\t} else {\n\t\t\t\t\t\texpect(code).not.toContain(id);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\teval(code);\n\t\t\t\texpect(log).toHaveBeenCalledWith(\n\t\t\t\t\t\"A simple message.\",\n\t\t\t\t\t\"Good morning Samuel!\",\n\t\t\t\t\t\"Hello Samuel! You have 5 messages.\"\n\t\t\t\t);\n\t\t\t});\n\t\t});\n\n\t\t// https://github.com/opral/inlang-paraglide-js/issues/379\n\t\ttest(\"plurals work\", async () => {\n\t\t\tconst project = await loadProjectInMemory({\n\t\t\t\tblob: await newProject({\n\t\t\t\t\tsettings: { locales: [\"en\", \"de\"], baseLocale: \"en\" },\n\t\t\t\t}),\n\t\t\t});\n\n\t\t\tawait insertBundleNested(\n\t\t\t\tproject.db,\n\t\t\t\tcreateBundleNested({\n\t\t\t\t\tid: \"plural_test\",\n\t\t\t\t\tdeclarations: [\n\t\t\t\t\t\t{ type: \"input-variable\", name: \"count\" },\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"local-variable\",\n\t\t\t\t\t\t\tname: \"countPlural\",\n\t\t\t\t\t\t\tvalue: {\n\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"count\" },\n\t\t\t\t\t\t\t\tannotation: {\n\t\t\t\t\t\t\t\t\ttype: \"function-reference\",\n\t\t\t\t\t\t\t\t\tname: \"plural\",\n\t\t\t\t\t\t\t\t\toptions: [],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\tmessages: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\tselectors: [{ type: \"variable-reference\", name: \"countPlural\" }],\n\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tmatches: [\n\t\t\t\t\t\t\t\t\t\t{ type: \"literal-match\", value: \"one\", key: \"countPlural\" },\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"There is one cat.\" }],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tmatches: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\ttype: \"literal-match\",\n\t\t\t\t\t\t\t\t\t\t\tvalue: \"other\",\n\t\t\t\t\t\t\t\t\t\t\tkey: \"countPlural\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"There are many cats.\" }],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t})\n\t\t\t);\n\n\t\t\tconst { m } = await importCode(\n\t\t\t\tawait bundleCode(\n\t\t\t\t\tawait compileProject({\n\t\t\t\t\t\tproject,\n\t\t\t\t\t\tcompilerOptions,\n\t\t\t\t\t}),\n\t\t\t\t\t`export * as m from \"./paraglide/messages.js\"`\n\t\t\t\t)\n\t\t\t);\n\n\t\t\texpect(m.plural_test({ count: 1 })).toBe(\"There is one cat.\");\n\t\t\texpect(m.plural_test({ count: 2 })).toBe(\"There are many cats.\");\n\t\t});\n\n\t\tdescribe(\"e2e\", async () => {\n\t\t\t// The compiled output needs to be bundled into one file to be dynamically imported.\n\t\t\tconst code = await bundleCode(\n\t\t\t\toutput,\n\t\t\t\t`export * as m from \"./paraglide/messages.js\"\n\t\t export * as runtime from \"./paraglide/runtime.js\"`\n\t\t\t);\n\n\t\t\t// test is a direct result of a bug\n\t\t\ttest(\"locales should include locales with a hyphen\", async () => {\n\t\t\t\tconst { runtime } = await importCode(code);\n\n\t\t\t\texpect(runtime.locales).toContain(\"en-US\");\n\t\t\t});\n\n\t\t\ttest(\"should set the baseLocale as default getLocale value\", async () => {\n\t\t\t\tconst { runtime } = await importCode(code);\n\n\t\t\t\texpect(runtime.getLocale()).toBe(runtime.baseLocale);\n\t\t\t});\n\n\t\t\ttest(\"should return the correct message for the current locale\", async () => {\n\t\t\t\tconst { m, runtime } = await importCode(code);\n\n\t\t\t\tconsole.log(m);\n\n\t\t\t\truntime.setLocale(\"en\");\n\n\t\t\t\texpect(m.sad_penguin_bundle()).toBe(\"A simple message.\");\n\n\t\t\t\truntime.setLocale(\"de\");\n\n\t\t\t\texpect(m.sad_penguin_bundle()).toBe(\"Eine einfache Nachricht.\");\n\t\t\t});\n\n\t\t\ttest(\"overwriteGetLocale() works\", async () => {\n\t\t\t\tconst { m, runtime } = await importCode(code);\n\n\t\t\t\tlet locale = \"en\";\n\n\t\t\t\truntime.overwriteGetLocale(() => locale);\n\n\t\t\t\texpect(m.sad_penguin_bundle()).toBe(\"A simple message.\");\n\n\t\t\t\tlocale = \"de\";\n\n\t\t\t\texpect(m.sad_penguin_bundle()).toBe(\"Eine einfache Nachricht.\");\n\t\t\t});\n\n\t\t\ttest(\"overwriteSetLocale() works\", async () => {\n\t\t\t\tconst { runtime } = await importCode(code);\n\n\t\t\t\tlet locale = \"en\";\n\n\t\t\t\truntime.overwriteSetLocale((newLocale: any) => {\n\t\t\t\t\tlocale = newLocale;\n\t\t\t\t});\n\n\t\t\t\truntime.setLocale(\"de\");\n\n\t\t\t\texpect(locale).toBe(\"de\");\n\t\t\t});\n\n\t\t\ttest.skip(\"defining onSetLocale should be possible and should be called when the locale changes\", async () => {\n\t\t\t\tconst { runtime } = await importCode(code);\n\n\t\t\t\tconst mockOnSetLocale = vi.fn().mockImplementation(() => {});\n\t\t\t\truntime.onSetLocale((locale: any) => {\n\t\t\t\t\tmockOnSetLocale(locale);\n\t\t\t\t});\n\n\t\t\t\truntime.setLocale(\"de\");\n\t\t\t\texpect(mockOnSetLocale).toHaveBeenLastCalledWith(\"de\");\n\n\t\t\t\truntime.setLocale(\"en\");\n\t\t\t\texpect(mockOnSetLocale).toHaveBeenLastCalledWith(\"en\");\n\n\t\t\t\texpect(mockOnSetLocale).toHaveBeenCalledTimes(2);\n\t\t\t});\n\n\t\t\ttest.skip(\"Calling onSetLocale() multiple times should override the previous callback\", async () => {\n\t\t\t\tconst cb1 = vi.fn().mockImplementation(() => {});\n\t\t\t\tconst cb2 = vi.fn().mockImplementation(() => {});\n\n\t\t\t\tconst { runtime } = await importCode(code);\n\n\t\t\t\truntime.onSetLocale(cb1);\n\t\t\t\truntime.setLocale(\"en\");\n\n\t\t\t\texpect(cb1).toHaveBeenCalledTimes(1);\n\n\t\t\t\truntime.onSetLocale(cb2);\n\t\t\t\truntime.setLocale(\"de\");\n\n\t\t\t\texpect(cb2).toHaveBeenCalledTimes(1);\n\t\t\t\texpect(cb1).toHaveBeenCalledTimes(1);\n\t\t\t});\n\n\t\t\ttest(\"should return the correct message if a locale is set in the message options\", async () => {\n\t\t\t\tconst { m, runtime } = await importCode(code);\n\n\t\t\t\t// set the language tag to de to make sure that the message options override the runtime language tag\n\t\t\t\truntime.setLocale(\"de\");\n\t\t\t\texpect(m.sad_penguin_bundle()).toBe(\"Eine einfache Nachricht.\");\n\t\t\t\texpect(m.sad_penguin_bundle(undefined, { locale: \"en\" })).toBe(\n\t\t\t\t\t\"A simple message.\"\n\t\t\t\t);\n\t\t\t});\n\n\t\t\ttest(\"relativetime formatter works with literal units and locale overrides\", async () => {\n\t\t\t\tconst { m, runtime } = await importCode(code);\n\n\t\t\t\truntime.setLocale(\"de\");\n\t\t\t\texpect(m.relative_time_literal({ duration: -1 })).toBe(\n\t\t\t\t\t\"Updated gestern.\"\n\t\t\t\t);\n\t\t\t\texpect(\n\t\t\t\t\tm.relative_time_literal({ duration: -1 }, { locale: \"en\" })\n\t\t\t\t).toBe(\"Updated yesterday.\");\n\t\t\t});\n\n\t\t\ttest(\"relativetime formatter works with dynamic units\", async () => {\n\t\t\t\tconst { m, runtime } = await importCode(code);\n\n\t\t\t\truntime.setLocale(\"en\");\n\t\t\t\texpect(m.relative_time_dynamic({ duration: -3, unit: \"hour\" })).toBe(\n\t\t\t\t\t\"Updated 3 hr. ago.\"\n\t\t\t\t);\n\n\t\t\t\truntime.setLocale(\"de\");\n\t\t\t\texpect(m.relative_time_dynamic({ duration: 2, unit: \"weeks\" })).toBe(\n\t\t\t\t\t\"Updated in 2 Wochen.\"\n\t\t\t\t);\n\t\t\t});\n\n\t\t\ttest(\"runtime.isLocale should only return `true` if a locale is passed to it\", async () => {\n\t\t\t\tconst { runtime } = await importCode(code);\n\n\t\t\t\tfor (const tag of runtime.locales) {\n\t\t\t\t\texpect(runtime.isLocale(tag)).toBe(true);\n\t\t\t\t}\n\n\t\t\t\texpect(runtime.isLocale(\"\")).toBe(false);\n\t\t\t\texpect(runtime.isLocale(\"pl\")).toBe(false);\n\t\t\t\texpect(runtime.isLocale(\"--\")).toBe(false);\n\t\t\t});\n\n\t\t\ttest(\"falls back to base locale\", async () => {\n\t\t\t\tconst project = await loadProjectInMemory({\n\t\t\t\t\tblob: await newProject({\n\t\t\t\t\t\tsettings: { locales: [\"en\", \"de\", \"en-US\"], baseLocale: \"en\" },\n\t\t\t\t\t}),\n\t\t\t\t});\n\n\t\t\t\tawait insertBundleNested(\n\t\t\t\t\tproject.db,\n\t\t\t\t\tcreateBundleNested({\n\t\t\t\t\t\tid: \"missingInGerman\",\n\t\t\t\t\t\tmessages: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t\t{ pattern: [{ type: \"text\", value: \"A simple message.\" }] },\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t})\n\t\t\t\t);\n\n\t\t\t\tconst output = await compileProject({\n\t\t\t\t\tproject,\n\t\t\t\t\tcompilerOptions,\n\t\t\t\t});\n\t\t\t\tconst code = await bundleCode(\n\t\t\t\t\toutput,\n\t\t\t\t\t`export * as m from \"./paraglide/messages.js\"\n\t\t\t\t\texport * as runtime from \"./paraglide/runtime.js\"`\n\t\t\t\t);\n\t\t\t\tconst { m, runtime } = await importCode(code);\n\n\t\t\t\truntime.setLocale(\"de\");\n\t\t\t\texpect(m.missingInGerman()).toBe(\"A simple message.\");\n\n\t\t\t\truntime.setLocale(\"en-US\");\n\t\t\t\texpect(m.missingInGerman()).toBe(\"A simple message.\");\n\t\t\t});\n\n\t\t\ttest(\"arbitrary module identifiers work\", async () => {\n\t\t\t\tconst project = await loadProjectInMemory({\n\t\t\t\t\tblob: await newProject({\n\t\t\t\t\t\tsettings: { locales: [\"en\", \"de\"], baseLocale: \"en\" },\n\t\t\t\t\t}),\n\t\t\t\t});\n\n\t\t\t\tawait insertBundleNested(\n\t\t\t\t\tproject.db,\n\t\t\t\t\tcreateBundleNested({\n\t\t\t\t\t\tid: \"$502.23-hello_world\",\n\t\t\t\t\t\tmessages: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t\t{ pattern: [{ type: \"text\", value: \"A simple message.\" }] },\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t})\n\t\t\t\t);\n\n\t\t\t\tconst output = await compileProject({\n\t\t\t\t\tproject,\n\t\t\t\t\tcompilerOptions,\n\t\t\t\t});\n\n\t\t\t\tconst code = await bundleCode(\n\t\t\t\t\toutput,\n\t\t\t\t\t`export * as m from \"./paraglide/messages.js\"\n\t\t\t\t\texport * as runtime from \"./paraglide/runtime.js\"`\n\t\t\t\t);\n\t\t\t\tconst { m } = await importCode(code);\n\n\t\t\t\texpect(m[\"$502.23-hello_world\"]()).toBe(\"A simple message.\");\n\t\t\t});\n\n\t\t\ttest(\"falls back to parent locale if message doesn't exist\", async () => {\n\t\t\t\tconst project = await loadProjectInMemory({\n\t\t\t\t\tblob: await newProject({\n\t\t\t\t\t\tsettings: { locales: [\"en\", \"en-US\"], baseLocale: \"en\" },\n\t\t\t\t\t}),\n\t\t\t\t});\n\n\t\t\t\tawait insertBundleNested(\n\t\t\t\t\tproject.db,\n\t\t\t\t\tcreateBundleNested({\n\t\t\t\t\t\tid: \"exists_in_both\",\n\t\t\t\t\t\tmessages: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t\t{ pattern: [{ type: \"text\", value: \"A simple message.\" }] },\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlocale: \"en-US\",\n\t\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\t\t\t\t\t\t\tvalue: \"A simple message for Americans.\",\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t})\n\t\t\t\t);\n\n\t\t\t\tawait insertBundleNested(\n\t\t\t\t\tproject.db,\n\t\t\t\t\tcreateBundleNested({\n\t\t\t\t\t\tid: \"missing_in_en_US\",\n\t\t\t\t\t\tmessages: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t\t{ pattern: [{ type: \"text\", value: \"Fallback message.\" }] },\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t})\n\t\t\t\t);\n\n\t\t\t\tconst output = await compileProject({\n\t\t\t\t\tproject,\n\t\t\t\t\tcompilerOptions,\n\t\t\t\t});\n\n\t\t\t\tconst code = await bundleCode(\n\t\t\t\t\toutput,\n\t\t\t\t\t`export * as m from \"./paraglide/messages.js\"\n\t\t\t\t\texport * as runtime from \"./paraglide/runtime.js\"`\n\t\t\t\t);\n\t\t\t\tconst { m, runtime } = await importCode(code);\n\n\t\t\t\truntime.setLocale(\"en-US\");\n\t\t\t\texpect(m.exists_in_both()).toBe(\"A simple message for Americans.\");\n\n\t\t\t\truntime.setLocale(\"en-US\");\n\t\t\t\texpect(m.missing_in_en_US()).toBe(\"Fallback message.\");\n\t\t\t});\n\n\t\t\ttest(\"arbitrary module identifiers\", async () => {\n\t\t\t\tconst project = await loadProjectInMemory({\n\t\t\t\t\tblob: await newProject({\n\t\t\t\t\t\tsettings: { locales: [\"en\"], baseLocale: \"en\" },\n\t\t\t\t\t}),\n\t\t\t\t});\n\n\t\t\t\tawait insertBundleNested(\n\t\t\t\t\tproject.db,\n\t\t\t\t\tcreateBundleNested({\n\t\t\t\t\t\tid: \"happy🍌\",\n\t\t\t\t\t\tmessages: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\t\tvariants: [{ pattern: [{ type: \"text\", value: \"Hello\" }] }],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t})\n\t\t\t\t);\n\n\t\t\t\tconst output = await compileProject({\n\t\t\t\t\tproject,\n\t\t\t\t\tcompilerOptions,\n\t\t\t\t});\n\n\t\t\t\tconst code = await bundleCode(\n\t\t\t\t\toutput,\n\t\t\t\t\t`export * as m from \"./paraglide/messages.js\"\n\t\t\t\t\texport * as runtime from \"./paraglide/runtime.js\"`\n\t\t\t\t);\n\t\t\t\tconst { m } = await importCode(code);\n\n\t\t\t\texpect(m[\"happy🍌\"]()).toBe(\"Hello\");\n\t\t\t});\n\t\t});\n\n\t\ttest(\"relativetime dynamic unit casts generated options without narrowing public inputs\", () => {\n\t\t\tconst relativeTimeDynamicFile =\n\t\t\t\tcompilerOptions.outputStructure === \"locale-modules\"\n\t\t\t\t\t? \"messages/en.js\"\n\t\t\t\t\t: \"messages/relative_time_dynamic.js\";\n\n\t\t\texpect(output).toHaveProperty(relativeTimeDynamicFile);\n\t\t\tconst relativeTimeDynamicModule = output[relativeTimeDynamicFile]!;\n\t\t\texpect(relativeTimeDynamicModule).toContain(\n\t\t\t\t'unit: /** @type {import(\"../registry.js\").RelativeTimeFormatUnit} */ (i?.unit)'\n\t\t\t);\n\t\t\texpect(relativeTimeDynamicModule).toContain(\n\t\t\t\t\"{ duration: NonNullable<unknown>, unit: NonNullable<unknown> }\"\n\t\t\t);\n\t\t});\n\n\t\ttest(\"case sensitivity handling for bundle IDs\", async () => {\n\t\t\tconst project = await loadProjectInMemory({\n\t\t\t\tblob: await newProject({\n\t\t\t\t\tsettings: { locales: [\"en\"], baseLocale: \"en\" },\n\t\t\t\t}),\n\t\t\t});\n\n\t\t\t// Create two bundles with the same name but different case\n\t\t\tawait insertBundleNested(\n\t\t\t\tproject.db,\n\t\t\t\tcreateBundleNested({\n\t\t\t\t\tid: \"Helloworld\",\n\t\t\t\t\tmessages: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t\t\t\t{ type: \"text\", value: \"Hello from uppercase bundle\" },\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t})\n\t\t\t);\n\n\t\t\tawait insertBundleNested(\n\t\t\t\tproject.db,\n\t\t\t\tcreateBundleNested({\n\t\t\t\t\tid: \"helloworld\",\n\t\t\t\t\tmessages: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t\t\t\t{ type: \"text\", value: \"Hello from lowercase bundle\" },\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t})\n\t\t\t);\n\n\t\t\tconst output = await compileProject({\n\t\t\t\tproject,\n\t\t\t\tcompilerOptions,\n\t\t\t});\n\n\t\t\tconst code = await bundleCode(\n\t\t\t\toutput,\n\t\t\t\t`export * as m from \"./paraglide/messages.js\"\n\t\t\t\texport { helloworld, Helloworld } from \"./paraglide/messages.js\"`\n\t\t\t);\n\n\t\t\tconst imported = await importCode(code);\n\n\t\t\t// Both message functions should be available\n\t\t\texpect(imported.helloworld()).toBe(\"Hello from lowercase bundle\");\n\t\t\texpect(imported.Helloworld()).toBe(\"Hello from uppercase bundle\");\n\n\t\t\t// They should also be available through the m namespace\n\t\t\texpect(imported.m.helloworld()).toBe(\"Hello from lowercase bundle\");\n\t\t\texpect(imported.m.Helloworld()).toBe(\"Hello from uppercase bundle\");\n\t\t});\n\n\t\t// whatever the strictest users use, this is the ultimate nothing gets stricter than this\n\t\t// (to avoid developers opening issues \"i get a ts warning in my code\")\n\t\tconst superStrictRuleOutAnyErrorTsSettings: ProjectOptions[\"compilerOptions\"] =\n\t\t\t{\n\t\t\t\toutDir: \"dist\",\n\t\t\t\tdeclaration: true,\n\t\t\t\tallowJs: true,\n\t\t\t\tcheckJs: true,\n\t\t\t\tnoImplicitAny: true,\n\t\t\t\tnoUnusedLocals: true,\n\t\t\t\tnoUnusedParameters: true,\n\t\t\t\tnoImplicitReturns: true,\n\t\t\t\tnoImplicitThis: true,\n\t\t\t\tnoUncheckedIndexedAccess: true,\n\t\t\t\tnoPropertyAccessFromIndexSignature: true,\n\t\t\t\tmodule: ts.ModuleKind.Node16,\n\t\t\t\tstrict: true,\n\t\t\t};\n\n\t\ttest(\"./messages.js types\", async () => {\n\t\t\tconst project = await typescriptProject({\n\t\t\t\tuseInMemoryFileSystem: true,\n\t\t\t\tcompilerOptions: superStrictRuleOutAnyErrorTsSettings,\n\t\t\t});\n\n\t\t\tfor (const [fileName, code] of Object.entries(output)) {\n\t\t\t\tif (fileName.endsWith(\".js\") || fileName.endsWith(\".ts\")) {\n\t\t\t\t\tproject.createSourceFile(fileName, code);\n\t\t\t\t}\n\t\t\t}\n\t\t\tproject.createSourceFile(\n\t\t\t\t\"test.ts\",\n\t\t\t\t`\n import * as m from \"./messages.js\"\n\n // --------- MESSAGES ---------\n\n // the return value of a message should be a string\n m.insane_cats({ name: \"John\", count: 5 }) satisfies string\n \n // @ts-expect-error - missing all params\n m.insane_cats()\n \n // @ts-expect-error - one param missing\n m.insane_cats({ name: \"John\" })\n\n // a message without params shouldn't require params\n m.sad_penguin_bundle() satisfies string\n\n // dynamic relativetime unit inputs stay consistent with other formatter inputs\n m.relative_time_literal({ duration: -1 }) satisfies string\n m.relative_time_dynamic({ duration: -3, unit: \"hour\" }) satisfies string\n m.relative_time_dynamic({ duration: -3, unit: \"not-a-relative-time-unit\" }) satisfies string\n\n\t\t// --------- MATCH TYPE INFERENCE ---------\n\t\t// known match values should be accepted\n\t\tm.auth_password_error({ type: \"invalid\" }) satisfies string\n\t\tm.auth_password_error({ type: \"empty\" }) satisfies string\n\t\tm.auth_password_error({ type: \"min_length\" }) satisfies string\n\t\tm.auth_password_error({ type: \"secure\" }) satisfies string\n\n\t\t// @ts-expect-error - unknown match value\n\t\tm.auth_password_error({ type: \"typo\" })\n\n\t\t// quoted keys should still get literal unions\n\t\tm.error_with_dash({ \"error-type\": \"network\" }) satisfies string\n\t\tm.error_with_dash({ \"error-type\": \"timeout\" }) satisfies string\n\n\t\t// @ts-expect-error - unknown match value for quoted key\n\t\tm.error_with_dash({ \"error-type\": \"offline\" })\n\n\t\t// catchall should widen match value typing\n\t\tm.auth_password_error_catchall({ type: \"invalid\" }) satisfies string\n\t\tm.auth_password_error_catchall({ type: \"typo\" }) satisfies string\n\n\t\t// multiple match keys should each get literal unions\n\t\tm.multi_key_status_type({ type: \"invalid\", status: \"ready\" }) satisfies string\n\t\tm.multi_key_status_type({ type: \"empty\", status: \"done\" }) satisfies string\n\t\tm.multi_key_status_type({ type: \"secure\", status: \"failed\" }) satisfies string\n\n\t\t// @ts-expect-error - invalid type literal\n\t\tm.multi_key_status_type({ type: \"typo\", status: \"ready\" })\n\n\t\t// @ts-expect-error - invalid status literal\n\t\tm.multi_key_status_type({ type: \"invalid\", status: \"pending\" })\n\n\t\t// numeric matches should accept both number and string forms\n\t\tm.numeric_input_match({ input: 1 }) satisfies string\n\t\tm.numeric_input_match({ input: 2 }) satisfies string\n\t\tm.numeric_input_match({ input: \"1\" }) satisfies string\n\t\tm.numeric_input_match({ input: \"2\" }) satisfies string\n\n\t\t// @ts-expect-error - invalid numeric literal\n\t\tm.numeric_input_match({ input: 3 })\n\n\t\t// @ts-expect-error - invalid string literal\n\t\tm.numeric_input_match({ input: \"3\" })\n\n\t\t// @ts-expect-error - no loose boolean coercion\n\t\tm.numeric_input_match({ input: true })\n\n\t\t// empty matches should widen to NonNullable<unknown>\n\t\tm.empty_matches_catchall({ type: \"invalid\" }) satisfies string\n\t\tm.empty_matches_catchall({ type: \"typo\" }) satisfies string\n\n\t\t// --------- MESSAGE OPTIONS ---------\n\t\t// the locale option should be optional\n\t\tm.sad_penguin_bundle({}, {}) satisfies string\n\n\t\t// the locale option should be allowed\n\t\tm.sad_penguin_bundle({}, { locale: \"en\" }) satisfies string\n\n\t\t// the locale option must be a valid language tag\n\t\t// @ts-expect-error - invalid language tag\n\t\tm.sad_penguin_bundle({}, { locale: \"---\" })\n `\n\t\t\t);\n\n\t\t\tconst program = project.createProgram();\n\t\t\tconst diagnostics = ts.getPreEmitDiagnostics(program).filter((d) => {\n\t\t\t\t// async_hooks is a node module that is not available in the browser\n\t\t\t\treturn !d.messageText\n\t\t\t\t\t.toString()\n\t\t\t\t\t.includes(\"Cannot find module 'async_hooks'\");\n\t\t\t});\n\t\t\tfor (const diagnostic of diagnostics) {\n\t\t\t\tconsole.error(diagnostic.messageText, diagnostic.file?.fileName);\n\t\t\t}\n\t\t\texpect(diagnostics.length).toEqual(0);\n\t\t});\n\n\t\ttest(\"./messages.js types (single locale should not emit TS6133)\", async () => {\n\t\t\tconst singleLocaleProject = await loadProjectInMemory({\n\t\t\t\tblob: await newProject({\n\t\t\t\t\tsettings: { locales: [\"en\"], baseLocale: \"en\" },\n\t\t\t\t}),\n\t\t\t});\n\n\t\t\tawait insertBundleNested(\n\t\t\t\tsingleLocaleProject.db,\n\t\t\t\tcreateBundleNested({\n\t\t\t\t\tid: \"single_locale_message\",\n\t\t\t\t\tmessages: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\tvariants: [{ pattern: [{ type: \"text\", value: \"Hello\" }] }],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t})\n\t\t\t);\n\n\t\t\tconst singleLocaleOutput = await compileProject({\n\t\t\t\tproject: singleLocaleProject,\n\t\t\t\tcompilerOptions,\n\t\t\t});\n\n\t\t\tconst project = await typescriptProject({\n\t\t\t\tuseInMemoryFileSystem: true,\n\t\t\t\tcompilerOptions: superStrictRuleOutAnyErrorTsSettings,\n\t\t\t});\n\n\t\t\tfor (const [fileName, code] of Object.entries(singleLocaleOutput)) {\n\t\t\t\tif (fileName.endsWith(\".js\") || fileName.endsWith(\".ts\")) {\n\t\t\t\t\tproject.createSourceFile(fileName, code);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tproject.createSourceFile(\n\t\t\t\t\"test.ts\",\n\t\t\t\t`import { single_locale_message } from \"./messages.js\"; single_locale_message();`\n\t\t\t);\n\n\t\t\tconst program = project.createProgram();\n\t\t\tconst diagnostics = ts.getPreEmitDiagnostics(program).filter((d) => {\n\t\t\t\treturn !d.messageText\n\t\t\t\t\t.toString()\n\t\t\t\t\t.includes(\"Cannot find module 'async_hooks'\");\n\t\t\t});\n\n\t\t\tconst ts6133LocaleDiagnostics = diagnostics.filter((d) => {\n\t\t\t\treturn (\n\t\t\t\t\td.code === 6133 &&\n\t\t\t\t\td.messageText\n\t\t\t\t\t\t.toString()\n\t\t\t\t\t\t.includes(\"'locale' is declared but its value is never read\")\n\t\t\t\t);\n\t\t\t});\n\n\t\t\texpect(ts6133LocaleDiagnostics.length).toEqual(0);\n\t\t});\n\n\t\ttest(\"#625: number formatter digit options should pass checkJs\", async () => {\n\t\t\tconst projectWithNumberOptions = await loadProjectInMemory({\n\t\t\t\tblob: await newProject({\n\t\t\t\t\tsettings: {\n\t\t\t\t\t\tbaseLocale: \"en\",\n\t\t\t\t\t\tlocales: [\"en\"],\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t});\n\n\t\t\tawait insertBundleNested(\n\t\t\t\tprojectWithNumberOptions.db,\n\t\t\t\tcreateBundleNested({\n\t\t\t\t\tid: \"formatted_percentage\",\n\t\t\t\t\tdeclarations: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"input-variable\",\n\t\t\t\t\t\t\tname: \"value\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"local-variable\",\n\t\t\t\t\t\t\tname: \"formattedValue\",\n\t\t\t\t\t\t\tvalue: {\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"value\" },\n\t\t\t\t\t\t\t\tannotation: {\n\t\t\t\t\t\t\t\t\ttype: \"function-reference\",\n\t\t\t\t\t\t\t\t\tname: \"number\",\n\t\t\t\t\t\t\t\t\toptions: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tname: \"minimumFractionDigits\",\n\t\t\t\t\t\t\t\t\t\t\tvalue: { type: \"literal\", value: \"1\" },\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tname: \"maximumFractionDigits\",\n\t\t\t\t\t\t\t\t\t\t\tvalue: { type: \"literal\", value: \"1\" },\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\tmessages: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\t\t\t\targ: {\n\t\t\t\t\t\t\t\t\t\t\t\ttype: \"variable-reference\",\n\t\t\t\t\t\t\t\t\t\t\t\tname: \"formattedValue\",\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{ type: \"text\", value: \"%\" },\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t})\n\t\t\t);\n\n\t\t\tconst output = await compileProject({\n\t\t\t\tproject: projectWithNumberOptions,\n\t\t\t\tcompilerOptions,\n\t\t\t});\n\n\t\t\tconst tsProject = await typescriptProject({\n\t\t\t\tuseInMemoryFileSystem: true,\n\t\t\t\tcompilerOptions: superStrictRuleOutAnyErrorTsSettings,\n\t\t\t});\n\n\t\t\tfor (const [fileName, code] of Object.entries(output)) {\n\t\t\t\tif (fileName.endsWith(\".js\") || fileName.endsWith(\".ts\")) {\n\t\t\t\t\ttsProject.createSourceFile(fileName, code);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst program = tsProject.createProgram();\n\t\t\tconst diagnostics = ts.getPreEmitDiagnostics(program).filter((d) => {\n\t\t\t\treturn !d.messageText\n\t\t\t\t\t.toString()\n\t\t\t\t\t.includes(\"Cannot find module 'async_hooks'\");\n\t\t\t});\n\n\t\t\tfor (const diagnostic of diagnostics) {\n\t\t\t\tconsole.error(diagnostic.messageText, diagnostic.file?.fileName);\n\t\t\t}\n\t\t\texpect(diagnostics.length).toEqual(0);\n\t\t});\n\n\t\ttest(\"#694: pattern-level annotations compile to registry calls and pass checkJs\", async () => {\n\t\t\tconst projectWithPatternAnnotation = await loadProjectInMemory({\n\t\t\t\tblob: await newProject({\n\t\t\t\t\tsettings: {\n\t\t\t\t\t\tbaseLocale: \"en\",\n\t\t\t\t\t\tlocales: [\"en\"],\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t});\n\n\t\t\tawait insertBundleNested(\n\t\t\t\tprojectWithPatternAnnotation.db,\n\t\t\t\tcreateBundleNested({\n\t\t\t\t\tid: \"views\",\n\t\t\t\t\tdeclarations: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"input-variable\",\n\t\t\t\t\t\t\tname: \"count\",\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\tmessages: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"count\" },\n\t\t\t\t\t\t\t\t\t\t\tannotation: {\n\t\t\t\t\t\t\t\t\t\t\t\ttype: \"function-reference\",\n\t\t\t\t\t\t\t\t\t\t\t\tname: \"number\",\n\t\t\t\t\t\t\t\t\t\t\t\toptions: [\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"maximumFractionDigits\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: { type: \"literal\", value: \"1\" },\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{ type: \"text\", value: \" views\" },\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t})\n\t\t\t);\n\n\t\t\tconst output = await compileProject({\n\t\t\t\tproject: projectWithPatternAnnotation,\n\t\t\t\tcompilerOptions,\n\t\t\t});\n\n\t\t\texpect(Object.values(output).join(\"\\n\")).toContain(\n\t\t\t\t'registry.number(\"en\", i?.count, { maximumFractionDigits: 1 })'\n\t\t\t);\n\n\t\t\tconst tsProject = await typescriptProject({\n\t\t\t\tuseInMemoryFileSystem: true,\n\t\t\t\tcompilerOptions: superStrictRuleOutAnyErrorTsSettings,\n\t\t\t});\n\n\t\t\tfor (const [fileName, code] of Object.entries(output)) {\n\t\t\t\tif (fileName.endsWith(\".js\") || fileName.endsWith(\".ts\")) {\n\t\t\t\t\ttsProject.createSourceFile(fileName, code);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst program = tsProject.createProgram();\n\t\t\tconst diagnostics = ts.getPreEmitDiagnostics(program).filter((d) => {\n\t\t\t\treturn !d.messageText\n\t\t\t\t\t.toString()\n\t\t\t\t\t.includes(\"Cannot find module 'async_hooks'\");\n\t\t\t});\n\n\t\t\tfor (const diagnostic of diagnostics) {\n\t\t\t\tconsole.error(diagnostic.messageText, diagnostic.file?.fileName);\n\t\t\t}\n\t\t\texpect(diagnostics.length).toEqual(0);\n\t\t});\n\n\t\ttest(\"relativetime formatter options should pass checkJs\", async () => {\n\t\t\tconst projectWithRelativeTimeOptions = await loadProjectInMemory({\n\t\t\t\tblob: await newProject({\n\t\t\t\t\tsettings: {\n\t\t\t\t\t\tbaseLocale: \"en\",\n\t\t\t\t\t\tlocales: [\"en\"],\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t});\n\n\t\t\tawait insertBundleNested(\n\t\t\t\tprojectWithRelativeTimeOptions.db,\n\t\t\t\tcreateBundleNested({\n\t\t\t\t\tid: \"formatted_relative_time\",\n\t\t\t\t\tdeclarations: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"input-variable\",\n\t\t\t\t\t\t\tname: \"duration\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"input-variable\",\n\t\t\t\t\t\t\tname: \"unit\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"local-variable\",\n\t\t\t\t\t\t\tname: \"formattedDuration\",\n\t\t\t\t\t\t\tvalue: {\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"duration\" },\n\t\t\t\t\t\t\t\tannotation: {\n\t\t\t\t\t\t\t\t\ttype: \"function-reference\",\n\t\t\t\t\t\t\t\t\tname: \"relativetime\",\n\t\t\t\t\t\t\t\t\toptions: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tname: \"unit\",\n\t\t\t\t\t\t\t\t\t\t\tvalue: { type: \"variable-reference\", name: \"unit\" },\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tname: \"style\",\n\t\t\t\t\t\t\t\t\t\t\tvalue: { type: \"literal\", value: \"short\" },\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\tmessages: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlocale: \"en\",\n\t\t\t\t\t\t\tvariants: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\t\t\t\targ: {\n\t\t\t\t\t\t\t\t\t\t\t\ttype: \"variable-reference\",\n\t\t\t\t\t\t\t\t\t\t\t\tname: \"formattedDuration\",\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t})\n\t\t\t);\n\n\t\t\tconst output = await compileProject({\n\t\t\t\tproject: projectWithRelativeTimeOptions,\n\t\t\t\tcompilerOptions,\n\t\t\t});\n\n\t\t\tconst tsProject = await typescriptProject({\n\t\t\t\tuseInMemoryFileSystem: true,\n\t\t\t\tcompilerOptions: superStrictRuleOutAnyErrorTsSettings,\n\t\t\t});\n\n\t\t\tfor (const [fileName, code] of Object.entries(output)) {\n\t\t\t\tif (fileName.endsWith(\".js\") || fileName.endsWith(\".ts\")) {\n\t\t\t\t\ttsProject.createSourceFile(fileName, code);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst program = tsProject.createProgram();\n\t\t\tconst diagnostics = ts.getPreEmitDiagnostics(program).filter((d) => {\n\t\t\t\treturn !d.messageText\n\t\t\t\t\t.toString()\n\t\t\t\t\t.includes(\"Cannot find module 'async_hooks'\");\n\t\t\t});\n\n\t\t\tfor (const diagnostic of diagnostics) {\n\t\t\t\tconsole.error(diagnostic.messageText, diagnostic.file?.fileName);\n\t\t\t}\n\t\t\texpect(diagnostics.length).toEqual(0);\n\t\t});\n\t}\n);\n\nasync function bundleCode(output: Record<string, string>, file: string) {\n\toutput[\"runtime.js\"] = output[\"runtime.js\"]!.replace(\n\t\t'import \"@inlang/paraglide-js/urlpattern-polyfill\";',\n\t\t\"/** @type {any} */const URLPattern = {};\"\n\t).replace(\n\t\t'const { AsyncLocalStorage } = await import(\"async_hooks\");',\n\t\t\"const AsyncLocalStorage = class {};\"\n\t);\n\n\tconst bundle = await rolldown({\n\t\tinput: [\"main.js\"],\n\t\tplugins: [\n\t\t\t// @ts-expect-error - rollup types are not up to date\n\t\t\tvirtual({\n\t\t\t\t...Object.fromEntries(\n\t\t\t\t\tObject.entries(output).map(([fileName, code]) => [\n\t\t\t\t\t\t\"paraglide/\" + fileName,\n\t\t\t\t\t\tcode,\n\t\t\t\t\t])\n\t\t\t\t),\n\t\t\t\t\"main.js\": file,\n\t\t\t}),\n\t\t],\n\t});\n\tconst compiled = await bundle.generate({ format: \"esm\" });\n\tconst code = compiled.output[0].code;\n\treturn code;\n}\n\nasync function importCode(code: string) {\n\t// The random comment ensures that each code is a unique module\n\t// and state is not shared between imports\n\tconst randomComment = `// ${Math.random()}`;\n\tconst codeWithComment = `${randomComment}\\n${code}`;\n\treturn await import(\n\t\t`data:application/javascript;base64,${Buffer.from(codeWithComment, \"utf8\").toString(\"base64\")}`\n\t);\n}\n\nconst project = await loadProjectInMemory({\n\tblob: await newProject({\n\t\tsettings: {\n\t\t\tbaseLocale: \"en\",\n\t\t\tlocales: [\"en\", \"de\", \"en-US\"],\n\t\t},\n\t}),\n});\n\nconst mockBundles: BundleNested[] = [\n\tcreateBundleNested({\n\t\tid: \"sad_penguin_bundle\",\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tlocale: \"en\",\n\t\t\t\tvariants: [{ pattern: [{ type: \"text\", value: \"A simple message.\" }] }],\n\t\t\t},\n\t\t\t{\n\t\t\t\tlocale: \"de\",\n\t\t\t\tvariants: [\n\t\t\t\t\t{ pattern: [{ type: \"text\", value: \"Eine einfache Nachricht.\" }] },\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t}),\n\tcreateBundleNested({\n\t\tid: \"Sad_penguin_bundle\",\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tlocale: \"en\",\n\t\t\t\tvariants: [\n\t\t\t\t\t{ pattern: [{ type: \"text\", value: \"Capital Sad penguin\" }] },\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tlocale: \"de\",\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{ type: \"text\", value: \"Grossgeschriebenes Sad penguin\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t}),\n\t{\n\t\tid: \"depressed_dog\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"name\",\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tid: \"depressed_dog_en\",\n\t\t\t\tbundleId: \"depressed_dog\",\n\t\t\t\tlocale: \"en\",\n\t\t\t\tselectors: [],\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"depressed_dog_en_variant_one\",\n\t\t\t\t\t\tmessageId: \"depressed_dog_en\",\n\t\t\t\t\t\tmatches: [],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{ type: \"text\", value: \"Good morning \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"name\" },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \"!\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"depressed_dog_de\",\n\t\t\t\tbundleId: \"depressed_dog\",\n\t\t\t\tlocale: \"de\",\n\t\t\t\tselectors: [],\n\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"depressed_dog_de_variant_one\",\n\t\t\t\t\t\tmessageId: \"depressed_dog_de\",\n\t\t\t\t\t\tmatches: [],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{ type: \"text\", value: \"Guten Morgen \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"name\" },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \"!\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tid: \"insane_cats\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"name\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"count\",\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tid: \"insane_cats_en\",\n\t\t\t\tbundleId: \"insane_cats\",\n\t\t\t\tlocale: \"en\",\n\n\t\t\t\tselectors: [],\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"insane_cats_en_variant_one\",\n\t\t\t\t\t\tmessageId: \"insane_cats_en\",\n\t\t\t\t\t\tmatches: [],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{ type: \"text\", value: \"Hello \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"name\" },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \"! You have \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"count\" },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \" messages.\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: \"insane_cats_de\",\n\t\t\t\tbundleId: \"insane_cats\",\n\t\t\t\tlocale: \"de\",\n\t\t\t\tselectors: [],\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"insane_cats_de_variant_one\",\n\t\t\t\t\t\tmessageId: \"insane_cats_de\",\n\t\t\t\t\t\tmatches: [],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{ type: \"text\", value: \"Hallo \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"name\" },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \"! Du hast \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: { type: \"variable-reference\", name: \"count\" },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \" Nachrichten.\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t},\n\tcreateBundleNested({\n\t\tid: \"relative_time_literal\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"duration\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: \"local-variable\",\n\t\t\t\tname: \"formattedDuration\",\n\t\t\t\tvalue: {\n\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\targ: { type: \"variable-reference\", name: \"duration\" },\n\t\t\t\t\tannotation: {\n\t\t\t\t\t\ttype: \"function-reference\",\n\t\t\t\t\t\tname: \"relativetime\",\n\t\t\t\t\t\toptions: [\n\t\t\t\t\t\t\t{ name: \"unit\", value: { type: \"literal\", value: \"day\" } },\n\t\t\t\t\t\t\t{ name: \"numeric\", value: { type: \"literal\", value: \"auto\" } },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tlocale: \"en\",\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{ type: \"text\", value: \"Updated \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: {\n\t\t\t\t\t\t\t\t\ttype: \"variable-reference\",\n\t\t\t\t\t\t\t\t\tname: \"formattedDuration\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \".\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tlocale: \"de\",\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{ type: \"text\", value: \"Updated \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: {\n\t\t\t\t\t\t\t\t\ttype: \"variable-reference\",\n\t\t\t\t\t\t\t\t\tname: \"formattedDuration\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \".\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t}),\n\tcreateBundleNested({\n\t\tid: \"relative_time_dynamic\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"duration\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"unit\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: \"local-variable\",\n\t\t\t\tname: \"formattedDuration\",\n\t\t\t\tvalue: {\n\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\targ: { type: \"variable-reference\", name: \"duration\" },\n\t\t\t\t\tannotation: {\n\t\t\t\t\t\ttype: \"function-reference\",\n\t\t\t\t\t\tname: \"relativetime\",\n\t\t\t\t\t\toptions: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tname: \"unit\",\n\t\t\t\t\t\t\t\tvalue: { type: \"variable-reference\", name: \"unit\" },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ name: \"style\", value: { type: \"literal\", value: \"short\" } },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tlocale: \"en\",\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{ type: \"text\", value: \"Updated \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: {\n\t\t\t\t\t\t\t\t\ttype: \"variable-reference\",\n\t\t\t\t\t\t\t\t\tname: \"formattedDuration\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \".\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t\t{\n\t\t\t\tlocale: \"de\",\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{ type: \"text\", value: \"Updated \" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"expression\",\n\t\t\t\t\t\t\t\targ: {\n\t\t\t\t\t\t\t\t\ttype: \"variable-reference\",\n\t\t\t\t\t\t\t\t\tname: \"formattedDuration\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ type: \"text\", value: \".\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t}),\n\t{\n\t\tid: \"auth_password_error\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"type\",\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tid: \"auth_password_error_en\",\n\t\t\t\tbundleId: \"auth_password_error\",\n\t\t\t\tlocale: \"en\",\n\t\t\t\tselectors: [],\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"auth_password_error_en_variant_invalid\",\n\t\t\t\t\t\tmessageId: \"auth_password_error_en\",\n\t\t\t\t\t\tmatches: [{ type: \"literal-match\", key: \"type\", value: \"invalid\" }],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\t\t\tvalue: \"The password provided is not valid\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"auth_password_error_en_variant_empty\",\n\t\t\t\t\t\tmessageId: \"auth_password_error_en\",\n\t\t\t\t\t\tmatches: [{ type: \"literal-match\", key: \"type\", value: \"empty\" }],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\t\t\tvalue: \"You must provide a password\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"auth_password_error_en_variant_min\",\n\t\t\t\t\t\tmessageId: \"auth_password_error_en\",\n\t\t\t\t\t\tmatches: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"literal-match\",\n\t\t\t\t\t\t\t\tkey: \"type\",\n\t\t\t\t\t\t\t\tvalue: \"min_length\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\t\t\tvalue: \"Your password is not secure enough\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"auth_password_error_en_variant_secure\",\n\t\t\t\t\t\tmessageId: \"auth_password_error_en\",\n\t\t\t\t\t\tmatches: [{ type: \"literal-match\", key: \"type\", value: \"secure\" }],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\t\t\tvalue: \"Your password is not secure enough\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tid: \"error_with_dash\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"error-type\",\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tid: \"error_with_dash_en\",\n\t\t\t\tbundleId: \"error_with_dash\",\n\t\t\t\tlocale: \"en\",\n\t\t\t\tselectors: [],\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"error_with_dash_en_variant_network\",\n\t\t\t\t\t\tmessageId: \"error_with_dash_en\",\n\t\t\t\t\t\tmatches: [\n\t\t\t\t\t\t\t{ type: \"literal-match\", key: \"error-type\", value: \"network\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Network error\" }],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"error_with_dash_en_variant_timeout\",\n\t\t\t\t\t\tmessageId: \"error_with_dash_en\",\n\t\t\t\t\t\tmatches: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"literal-match\",\n\t\t\t\t\t\t\t\tkey: \"error-type\",\n\t\t\t\t\t\t\t\tvalue: \"timeout\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Timeout error\" }],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tid: \"auth_password_error_catchall\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"type\",\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tid: \"auth_password_error_catchall_en\",\n\t\t\t\tbundleId: \"auth_password_error_catchall\",\n\t\t\t\tlocale: \"en\",\n\t\t\t\tselectors: [],\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"auth_password_error_catchall_en_variant_invalid\",\n\t\t\t\t\t\tmessageId: \"auth_password_error_catchall_en\",\n\t\t\t\t\t\tmatches: [{ type: \"literal-match\", key: \"type\", value: \"invalid\" }],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\t\t\tvalue: \"The password provided is not valid\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"auth_password_error_catchall_en_variant_catchall\",\n\t\t\t\t\t\tmessageId: \"auth_password_error_catchall_en\",\n\t\t\t\t\t\tmatches: [{ type: \"catchall-match\", key: \"type\" }],\n\t\t\t\t\t\tpattern: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: \"text\",\n\t\t\t\t\t\t\t\tvalue: \"Unknown password error\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tid: \"multi_key_status_type\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"type\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"status\",\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tid: \"multi_key_status_type_en\",\n\t\t\t\tbundleId: \"multi_key_status_type\",\n\t\t\t\tlocale: \"en\",\n\t\t\t\tselectors: [],\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"multi_key_status_type_en_variant_ready_invalid\",\n\t\t\t\t\t\tmessageId: \"multi_key_status_type_en\",\n\t\t\t\t\t\tmatches: [\n\t\t\t\t\t\t\t{ type: \"literal-match\", key: \"type\", value: \"invalid\" },\n\t\t\t\t\t\t\t{ type: \"literal-match\", key: \"status\", value: \"ready\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Ready invalid\" }],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"multi_key_status_type_en_variant_done_empty\",\n\t\t\t\t\t\tmessageId: \"multi_key_status_type_en\",\n\t\t\t\t\t\tmatches: [\n\t\t\t\t\t\t\t{ type: \"literal-match\", key: \"type\", value: \"empty\" },\n\t\t\t\t\t\t\t{ type: \"literal-match\", key: \"status\", value: \"done\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Done empty\" }],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"multi_key_status_type_en_variant_failed_secure\",\n\t\t\t\t\t\tmessageId: \"multi_key_status_type_en\",\n\t\t\t\t\t\tmatches: [\n\t\t\t\t\t\t\t{ type: \"literal-match\", key: \"type\", value: \"secure\" },\n\t\t\t\t\t\t\t{ type: \"literal-match\", key: \"status\", value: \"failed\" },\n\t\t\t\t\t\t],\n\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Failed secure\" }],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tid: \"empty_matches_catchall\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"type\",\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tid: \"empty_matches_catchall_en\",\n\t\t\t\tbundleId: \"empty_matches_catchall\",\n\t\t\t\tlocale: \"en\",\n\t\t\t\tselectors: [],\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"empty_matches_catchall_en_variant_invalid\",\n\t\t\t\t\t\tmessageId: \"empty_matches_catchall_en\",\n\t\t\t\t\t\tmatches: [{ type: \"literal-match\", key: \"type\", value: \"invalid\" }],\n\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Invalid\" }],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"empty_matches_catchall_en_variant_any\",\n\t\t\t\t\t\tmessageId: \"empty_matches_catchall_en\",\n\t\t\t\t\t\tmatches: [],\n\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Any\" }],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\tid: \"numeric_input_match\",\n\t\tdeclarations: [\n\t\t\t{\n\t\t\t\ttype: \"input-variable\",\n\t\t\t\tname: \"input\",\n\t\t\t},\n\t\t],\n\t\tmessages: [\n\t\t\t{\n\t\t\t\tid: \"numeric_input_match_en\",\n\t\t\t\tbundleId: \"numeric_input_match\",\n\t\t\t\tlocale: \"en\",\n\t\t\t\tselectors: [],\n\t\t\t\tvariants: [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"numeric_input_match_en_variant_1\",\n\t\t\t\t\t\tmessageId: \"numeric_input_match_en\",\n\t\t\t\t\t\tmatches: [{ type: \"literal-match\", key: \"input\", value: \"1\" }],\n\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Thing 1\" }],\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: \"numeric_input_match_en_variant_2\",\n\t\t\t\t\t\tmessageId: \"numeric_input_match_en\",\n\t\t\t\t\t\tmatches: [{ type: \"literal-match\", key: \"input\", value: \"2\" }],\n\t\t\t\t\t\tpattern: [{ type: \"text\", value: \"Thing 2\" }],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t],\n\t},\n];\n\nfor (const bundle of mockBundles) {\n\tawait insertBundleNested(project.db, bundle);\n}\n\nfunction createBundleNested(args: {\n\tid: string;\n\tdeclarations?: Declaration[];\n\tmessages: {\n\t\tselectors?: VariableReference[];\n\t\tlocale: string;\n\t\tvariants: {\n\t\t\tmatches?: Match[];\n\t\t\tpattern: Pattern;\n\t\t}[];\n\t}[];\n}): BundleNested {\n\treturn {\n\t\tid: args.id,\n\t\tdeclarations: args.declarations ?? [],\n\t\tmessages: args.messages.map((message) => ({\n\t\t\tid: args.id + \"_\" + message.locale,\n\t\t\tbundleId: args.id,\n\t\t\tlocale: message.locale,\n\t\t\tselectors: message.selectors ?? [],\n\t\t\tvariants: message.variants.map((variant) => ({\n\t\t\t\tid:\n\t\t\t\t\targs.id +\n\t\t\t\t\t\"_\" +\n\t\t\t\t\tmessage.locale +\n\t\t\t\t\t\"_\" +\n\t\t\t\t\tMath.random().toString(36).slice(2),\n\t\t\t\tmessageId: args.id,\n\t\t\t\tmatches: variant.matches ?? [],\n\t\t\t\tpattern: variant.pattern,\n\t\t\t})),\n\t\t})),\n\t};\n}\n"]}
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=compile.bench.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compile.bench.js","sourceRoot":"","sources":["../../src/compiler/compile.bench.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,MAAM,MAAM,SAAS,CAAC;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,KAAK,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;IACzC,MAAM,WAAW,GAAG,IAAI,CAAC;IAEzB,uBAAuB;IACvB,MAAM,cAAc,GAAG,OAAO,IAAI,CAAC,GAAG;SACpC,KAAK,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;SACxD,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,mEAAmE;IACnE,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CACvC,IAAI,CAAC,IAAI,CACR,cAAc,EACd,6DAA6D,CAC7D,EACD,MAAM,CACN,CAAC;IAEF,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CACtC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,WAAW,CAAC,EAAE;QACd,wBAAwB;KACxB,CAAC,CACF,CAAC;IAEF,MAAM,EAAE,GAAG,KAAK,CAAC;QAChB,YAAY,EAAE,YAAY;QAC1B,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;QACxC,+BAA+B,EAAE,IAAI,CAAC,SAAS,CAAC;YAC/C,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,CAAC,IAAI,CAAC;YACf,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,6BAA6B,EAAE;gBAC9B,WAAW,EAAE,gBAAgB;aAC7B;SACD,CAAC;KACF,CAAC,CAAC,EAAyC,CAAC;IAE7C,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAEhC,MAAM,OAAO,CAAC;QACb,OAAO,EAAE,iBAAiB;QAC1B,MAAM,EAAE,SAAS;QACjB,EAAE,EAAE,EAAE;KACN,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAE9B,MAAM,QAAQ,GAAG,GAAG,GAAG,KAAK,CAAC;IAE7B,OAAO,CAAC,GAAG,CAAC,YAAY,WAAW,gBAAgB,QAAQ,IAAI,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"compile.bench.js","sourceRoot":"","sources":["../../src/compiler/compile.bench.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,MAAM,MAAM,SAAS,CAAC;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,KAAK,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;IACzC,MAAM,WAAW,GAAG,IAAI,CAAC;IAEzB,uBAAuB;IACvB,MAAM,cAAc,GAAG,OAAO,IAAI,CAAC,GAAG;SACpC,KAAK,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;SACxD,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzB,mEAAmE;IACnE,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CACvC,IAAI,CAAC,IAAI,CACR,cAAc,EACd,6DAA6D,CAC7D,EACD,MAAM,CACN,CAAC;IAEF,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CACtC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,WAAW,CAAC,EAAE;QACd,wBAAwB;KACxB,CAAC,CACF,CAAC;IAEF,MAAM,EAAE,GAAG,KAAK,CAAC;QAChB,YAAY,EAAE,YAAY;QAC1B,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;QACxC,+BAA+B,EAAE,IAAI,CAAC,SAAS,CAAC;YAC/C,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,CAAC,IAAI,CAAC;YACf,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,6BAA6B,EAAE;gBAC9B,WAAW,EAAE,gBAAgB;aAC7B;SACD,CAAC;KACF,CAAC,CAAC,EAAyC,CAAC;IAE7C,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAEhC,MAAM,OAAO,CAAC;QACb,OAAO,EAAE,iBAAiB;QAC1B,MAAM,EAAE,SAAS;QACjB,EAAE,EAAE,EAAE;KACN,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAE9B,MAAM,QAAQ,GAAG,GAAG,GAAG,KAAK,CAAC;IAE7B,OAAO,CAAC,GAAG,CAAC,YAAY,WAAW,gBAAgB,QAAQ,IAAI,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC","sourcesContent":["import { bench } from \"vitest\";\nimport nodeFs from \"node:fs\";\nimport path from \"node:path\";\nimport { memfs } from \"memfs\";\nimport { compile } from \"./compile.js\";\n\nbench(\"compile 1000 messages\", async () => {\n\tconst numMessages = 1000;\n\n\t// the root of the repo\n\tconst repositoryRoot = import.meta.url\n\t\t.slice(0, import.meta.url.lastIndexOf(\"inlang/packages\"))\n\t\t.replace(\"file://\", \"\");\n\n\t// load the inlang message format plugin to simulate a real project\n\tconst pluginAsText = nodeFs.readFileSync(\n\t\tpath.join(\n\t\t\trepositoryRoot,\n\t\t\t\"inlang/packages/plugins/inlang-message-format/dist/index.js\"\n\t\t),\n\t\t\"utf8\"\n\t);\n\n\tconst mockMessages = Object.fromEntries(\n\t\tArray.from({ length: numMessages }, (_, i) => [\n\t\t\t`message_${i}`,\n\t\t\t`Hello world {username}`,\n\t\t])\n\t);\n\n\tconst fs = memfs({\n\t\t\"/plugin.js\": pluginAsText,\n\t\t\"/en.json\": JSON.stringify(mockMessages),\n\t\t\"/project.inlang/settings.json\": JSON.stringify({\n\t\t\tbaseLocale: \"en\",\n\t\t\tlocales: [\"en\"],\n\t\t\tmodules: [\"/plugin.js\"],\n\t\t\t\"plugin.inlang.messageFormat\": {\n\t\t\t\tpathPattern: \"/{locale}.json\",\n\t\t\t},\n\t\t}),\n\t}).fs as unknown as typeof import(\"node:fs\");\n\n\tconst start = performance.now();\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tfs: fs,\n\t});\n\n\tconst end = performance.now();\n\n\tconst duration = end - start;\n\n\tconsole.log(`Compiled ${numMessages} messages in ${duration}ms`);\n});\n"]}
@@ -18,4 +18,3 @@ export type CompilationResult = {
18
18
  export declare function compile(options: CompilerOptions & {
19
19
  previousCompilation?: CompilationResult;
20
20
  }): Promise<CompilationResult>;
21
- //# sourceMappingURL=compile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/compiler/compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AACxE,WAAW;AACX,oBAAoB;AACpB,qBAAqB;AACrB,yCAAyC;AACzC,OAAO,EACN,sBAAsB,GAEtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAErD,uFAAuF;AACvF,kFAAkF;AAClF,IAAI,qBAAqB,GAEb,IAAI,CAAC;AAMjB,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;AAE5B;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC5B,OAEC;IAED,MAAM,kBAAkB,GAAG;QAC1B,GAAG,sBAAsB;QACzB,GAAG,OAAO;KACV,CAAC;IAEF,IAAI,qBAAqB,EAAE,CAAC;QAC3B,MAAM,qBAAqB,CAAC;IAC7B,CAAC;IAED,qBAAqB,GAAG,CAAC,KAAK,IAAI,EAAE;QACnC,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,kBAAkB,CAAC,EAAE,IAAI,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAC9D,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAClC,OAAO,CAAC,GAAG,EAAE,EACb,kBAAkB,CAAC,MAAM,CACzB,CAAC;YAEF,gDAAgD;YAEhD,MAAM,OAAO,GAAG,MAAM,wBAAwB,CAAC;gBAC9C,IAAI,EAAE,kBAAkB,CAAC,OAAO;gBAChC,EAAE;gBACF,yBAAyB;aACzB,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;gBACnC,eAAe,EAAE,kBAAkB;gBACnC,OAAO;gBACP,WAAW,EAAE,kBAAkB,CAAC,OAAO;aACvC,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC;gBACtC,SAAS,EAAE,cAAc;gBACzB,MAAM;gBACN,cAAc,EAAE,kBAAkB,CAAC,WAAW;gBAC9C,EAAE,EAAE,EAAE,CAAC,QAAQ;gBACf,oBAAoB,EAAE,OAAO,CAAC,mBAAmB,EAAE,YAAY;aAC/D,CAAC,CAAC;YAEH,uBAAuB;YACvB,8CAA8C;YAC9C,wCAAwC;YACxC,4DAA4D;YAC5D,iDAAiD;YACjD,gCAAgC;YAChC,gCAAgC;YAEhC,qDAAqD;YACrD,IAAI;YAEJ,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAErD,KAAK,MAAM,cAAc,IAAI,iBAAiB,EAAE,CAAC;gBAChD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC7B,CAAC;YAED,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YAEtB,OAAO,EAAE,YAAY,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,uCAAuC;YACvC,qBAAqB,GAAG,IAAI,CAAC;YAC7B,MAAM,CAAC,CAAC;QACT,CAAC;IACF,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,qBAAqB,CAAC,CAAC;IAC5D,qBAAqB,GAAG,IAAI,CAAC;IAE7B,OAAO,MAAM,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/compiler/compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AACxE,WAAW;AACX,oBAAoB;AACpB,qBAAqB;AACrB,yCAAyC;AACzC,OAAO,EACN,sBAAsB,GAEtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAErD,uFAAuF;AACvF,kFAAkF;AAClF,IAAI,qBAAqB,GAEb,IAAI,CAAC;AAMjB,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;AAE5B;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC5B,OAEC;IAED,MAAM,kBAAkB,GAAG;QAC1B,GAAG,sBAAsB;QACzB,GAAG,OAAO;KACV,CAAC;IAEF,IAAI,qBAAqB,EAAE,CAAC;QAC3B,MAAM,qBAAqB,CAAC;IAC7B,CAAC;IAED,qBAAqB,GAAG,CAAC,KAAK,IAAI,EAAE;QACnC,IAAI,CAAC;YACJ,MAAM,EAAE,GAAG,kBAAkB,CAAC,EAAE,IAAI,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAC9D,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAClC,OAAO,CAAC,GAAG,EAAE,EACb,kBAAkB,CAAC,MAAM,CACzB,CAAC;YAEF,gDAAgD;YAEhD,MAAM,OAAO,GAAG,MAAM,wBAAwB,CAAC;gBAC9C,IAAI,EAAE,kBAAkB,CAAC,OAAO;gBAChC,EAAE;gBACF,yBAAyB;aACzB,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;gBACnC,eAAe,EAAE,kBAAkB;gBACnC,OAAO;gBACP,WAAW,EAAE,kBAAkB,CAAC,OAAO;aACvC,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC;gBACtC,SAAS,EAAE,cAAc;gBACzB,MAAM;gBACN,cAAc,EAAE,kBAAkB,CAAC,WAAW;gBAC9C,EAAE,EAAE,EAAE,CAAC,QAAQ;gBACf,oBAAoB,EAAE,OAAO,CAAC,mBAAmB,EAAE,YAAY;aAC/D,CAAC,CAAC;YAEH,uBAAuB;YACvB,8CAA8C;YAC9C,wCAAwC;YACxC,4DAA4D;YAC5D,iDAAiD;YACjD,gCAAgC;YAChC,gCAAgC;YAEhC,qDAAqD;YACrD,IAAI;YAEJ,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAErD,KAAK,MAAM,cAAc,IAAI,iBAAiB,EAAE,CAAC;gBAChD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC7B,CAAC;YAED,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YAEtB,OAAO,EAAE,YAAY,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,uCAAuC;YACvC,qBAAqB,GAAG,IAAI,CAAC;YAC7B,MAAM,CAAC,CAAC;QACT,CAAC;IACF,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,qBAAqB,CAAC,CAAC;IAC5D,qBAAqB,GAAG,IAAI,CAAC;IAE7B,OAAO,MAAM,CAAC;AACf,CAAC","sourcesContent":["import { loadProjectFromDirectory } from \"@inlang/sdk\";\nimport path from \"node:path\";\nimport { compileProject } from \"./compile-project.js\";\nimport { writeOutput } from \"../services/file-handling/write-output.js\";\n// import {\n// \tgetLocalAccount,\n// \tsaveLocalAccount,\n// } from \"../services/account/index.js\";\nimport {\n\tdefaultCompilerOptions,\n\ttype CompilerOptions,\n} from \"./compiler-options.js\";\nimport { Logger } from \"../services/logger/index.js\";\n\n// This is a workaround to prevent multiple compilations from running at the same time.\n// https://github.com/opral/inlang-paraglide-js/issues/320#issuecomment-2596951222\nlet compilationInProgress: Promise<{\n\toutputHashes: Record<string, string> | undefined;\n}> | null = null;\n\nexport type CompilationResult = {\n\toutputHashes: Record<string, string> | undefined;\n};\n\nconst logger = new Logger();\n\n/**\n * Loads, compiles, and writes the output to disk.\n *\n * This is the main function to use when you want to compile a project.\n * If you want to adjust inlang project loading, or the output, use\n * `compileProject()` instead.\n *\n * @example\n * await compile({\n * project: 'path/to/project',\n * outdir: 'path/to/output',\n * })\n */\nexport async function compile(\n\toptions: CompilerOptions & {\n\t\tpreviousCompilation?: CompilationResult;\n\t}\n): Promise<CompilationResult> {\n\tconst withDefaultOptions = {\n\t\t...defaultCompilerOptions,\n\t\t...options,\n\t};\n\n\tif (compilationInProgress) {\n\t\tawait compilationInProgress;\n\t}\n\n\tcompilationInProgress = (async () => {\n\t\ttry {\n\t\t\tconst fs = withDefaultOptions.fs ?? (await import(\"node:fs\"));\n\t\t\tconst absoluteOutdir = path.resolve(\n\t\t\t\tprocess.cwd(),\n\t\t\t\twithDefaultOptions.outdir\n\t\t\t);\n\n\t\t\t// const localAccount = getLocalAccount({ fs });\n\n\t\t\tconst project = await loadProjectFromDirectory({\n\t\t\t\tpath: withDefaultOptions.project,\n\t\t\t\tfs,\n\t\t\t\t// account: localAccount,\n\t\t\t});\n\n\t\t\tconst output = await compileProject({\n\t\t\t\tcompilerOptions: withDefaultOptions,\n\t\t\t\tproject,\n\t\t\t\tprojectPath: withDefaultOptions.project,\n\t\t\t});\n\n\t\t\tconst outputHashes = await writeOutput({\n\t\t\t\tdirectory: absoluteOutdir,\n\t\t\t\toutput,\n\t\t\t\tcleanDirectory: withDefaultOptions.cleanOutdir,\n\t\t\t\tfs: fs.promises,\n\t\t\t\tpreviousOutputHashes: options.previousCompilation?.outputHashes,\n\t\t\t});\n\n\t\t\t// if (!localAccount) {\n\t\t\t// \tconst activeAccount = await project.lix.db\n\t\t\t// \t\t.selectFrom(\"active_account as aa\")\n\t\t\t// \t\t.innerJoin(\"account_all as a\", \"a.id\", \"aa.account_id\")\n\t\t\t// \t\t.where(\"a.lixcol_version_id\", \"=\", \"global\")\n\t\t\t// \t\t.select([\"a.id\", \"a.name\"])\n\t\t\t// \t\t.executeTakeFirstOrThrow();\n\n\t\t\t// \tsaveLocalAccount({ fs, account: activeAccount });\n\t\t\t// }\n\n\t\t\tconst warningsAndErrors = await project.errors.get();\n\n\t\t\tfor (const warningOrError of warningsAndErrors) {\n\t\t\t\tlogger.warn(warningOrError);\n\t\t\t}\n\n\t\t\tawait project.close();\n\n\t\t\treturn { outputHashes };\n\t\t} catch (e) {\n\t\t\t// release the lock in case of an error\n\t\t\tcompilationInProgress = null;\n\t\t\tthrow e;\n\t\t}\n\t})();\n\n\tconst result = structuredClone(await compilationInProgress);\n\tcompilationInProgress = null;\n\n\treturn result;\n}\n"]}
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=compile.test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compile.test.js","sourceRoot":"","sources":["../../src/compiler/compile.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile.test.js","sourceRoot":"","sources":["../../src/compiler/compile.test.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\tloadProjectInMemory,\n\tnewProject,\n\tsaveProjectToDirectory,\n} from \"@inlang/sdk\";\nimport { memfs } from \"memfs\";\nimport { test, expect, vi } from \"vitest\";\nimport { compile } from \"./compile.js\";\nimport { getAccountFilePath } from \"../services/account/index.js\";\nimport type { Runtime } from \"./runtime/type.js\";\nimport { defaultCompilerOptions } from \"./compiler-options.js\";\nimport consola from \"consola\";\n\ntest(\"loads a project and compiles it\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\", \"fr\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\t// save project to directory to test loading\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tfs: fs,\n\t});\n\n\tconst files = await fs.promises.readdir(\"/output\");\n\n\t//runtime.js and messages.js are always compiled with the default options\n\texpect(files).toEqual(\n\t\texpect.arrayContaining([\"runtime.js\", \"server.js\", \"messages.js\"])\n\t);\n});\n\ntest.skip(\"loads a local account from app data if exists\", async () => {\n\tconst accountPath = getAccountFilePath();\n\tconst fs = memfs({\n\t\t[accountPath]: JSON.stringify({ id: \"mock\", name: \"test\" }),\n\t}).fs as unknown as typeof import(\"node:fs\");\n\n\tconst spy = vi.spyOn(fs, \"readFileSync\");\n\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\", \"fr\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tfs: fs,\n\t});\n\n\texpect(spy).toHaveBeenCalledWith(accountPath, \"utf8\");\n});\n\ntest.skip(\"saves the local account to app data if not exists\", async () => {\n\tconst accountPath = getAccountFilePath();\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\", \"fr\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tfs: fs,\n\t});\n\n\tconst account = JSON.parse(await fs.promises.readFile(accountPath, \"utf8\"));\n\n\texpect(account).toHaveProperty(\"id\");\n\texpect(account).toHaveProperty(\"name\");\n});\n\ntest(\"cleans the output directory\", async () => {\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({}),\n\t});\n\n\t// save project to directory to test loading\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait fs.promises.mkdir(\"/output/subdir\", { recursive: true });\n\tawait fs.promises.writeFile(\"/output/subdir/x.js\", \"console.log('hello')\");\n\tawait fs.promises.writeFile(\"/output/y.js\", \"console.log('hello')\");\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tfs: fs,\n\t});\n\n\tconst outputDir = await fs.promises.readdir(\"/output\");\n\tconst outputSubDir = fs.existsSync(\"/output/subdir\");\n\n\texpect(outputDir).not.toContain(\"y.js\");\n\texpect(outputSubDir).toBe(false);\n});\n\n// Regression coverage for https://github.com/opral/paraglide-js/issues/581\ntest(\"runtime output strips sourcemap references\", async () => {\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tfs: fs,\n\t});\n\n\tconst runtimeFile = await fs.promises.readFile(\"/output/runtime.js\", \"utf8\");\n\tconst serverFile = await fs.promises.readFile(\"/output/server.js\", \"utf8\");\n\n\texpect(runtimeFile).not.toMatch(/sourceMappingURL=/);\n\texpect(serverFile).not.toMatch(/sourceMappingURL=/);\n});\n\ntest(\"experimental middleware locale splitting uses globalThis.__paraglide.ssr\", async () => {\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tfs,\n\t\texperimentalMiddlewareLocaleSplitting: true,\n\t});\n\n\tconst runtimeFile = await fs.promises.readFile(\"/output/runtime.js\", \"utf8\");\n\tconst serverFile = await fs.promises.readFile(\"/output/server.js\", \"utf8\");\n\n\texpect(runtimeFile).toContain(\"(globalThis).__paraglide =\");\n\texpect(runtimeFile).toContain(\"(globalThis).__paraglide.ssr =\");\n\texpect(runtimeFile).not.toContain(\"__paraglide_ssr\");\n\texpect(serverFile).toContain(\"globalThis.__paraglide = globalThis.__paraglide ?? {};\");\n\texpect(serverFile).toContain(\"globalThis.__paraglide.ssr = {\");\n\texpect(serverFile).toContain(\n\t\tString.raw`replace(/<\\/(script)/gi, \"<\\\\/$1\")`\n\t);\n\texpect(serverFile).not.toContain(\"__paraglide_ssr\");\n});\n\ntest(\"doesn't clean the output directory if option is set to false\", async () => {\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({}),\n\t});\n\n\t// save project to directory to test loading\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait fs.promises.mkdir(\"/output/subdir\", { recursive: true });\n\tawait fs.promises.writeFile(\"/output/subdir/x.js\", \"console.log('hello')\");\n\tawait fs.promises.writeFile(\"/output/y.js\", \"console.log('hello')\");\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tcleanOutdir: false,\n\t\tfs: fs,\n\t});\n\n\tconst outputDir = await fs.promises.readdir(\"/output\");\n\tconst outputSubDir = fs.existsSync(\"/output/subdir\");\n\n\texpect(outputDir).toContain(\"y.js\");\n\texpect(outputSubDir).toBe(true);\n});\n\ntest(\"multiple compile calls do not interfere with each other\", async () => {\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\", \"fr\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\t// different project settings to test compile output\n\tawait project.settings.set({\n\t\t...(await project.settings.get()),\n\t\tbaseLocale: \"de\",\n\t\tlocales: [\"de\"],\n\t});\n\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project2.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tconst compilations = [\n\t\tcompile({\n\t\t\tproject: \"/project.inlang\",\n\t\t\toutdir: \"/output\",\n\t\t\tfs: fs,\n\t\t}),\n\t\tcompile({\n\t\t\tproject: \"/project2.inlang\",\n\t\t\toutdir: \"/output\",\n\t\t\tfs: fs,\n\t\t}),\n\t];\n\n\tawait Promise.all(compilations);\n\n\tconst runtimeFile = await fs.promises.readFile(\"/output/runtime.js\", \"utf8\");\n\n\tconst runtime = (await import(\n\t\t\"data:text/javascript;base64,\" +\n\t\t\tBuffer.from(\n\t\t\t\t// replace the\n\t\t\t\truntimeFile.replace(\n\t\t\t\t\t`import \"@inlang/paraglide-js/urlpattern-polyfill\";`,\n\t\t\t\t\t\"\"\n\t\t\t\t),\n\t\t\t\t\"utf-8\"\n\t\t\t).toString(\"base64\")\n\t)) as Runtime;\n\n\t// expecting the second compile step to overwrite the first\n\texpect(runtime.baseLocale).toBe(\"de\");\n\texpect(runtime.locales).toEqual([\"de\"]);\n});\n\ntest(\"emits additional files\", async () => {\n\tconst additionalFiles = {\n\t\t\"adapter/component.svelte\": \"<script>console.log('hello')</script>\",\n\t\t\"adapter.js\": \"console.log('hello')\",\n\t};\n\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\", \"fr\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\t// save project to directory to test loading\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tfs: fs,\n\t\tadditionalFiles,\n\t});\n\n\tconst outputDir = await fs.promises.readdir(\"/output\");\n\tconst adapterDir = await fs.promises.readdir(\"/output/adapter\");\n\n\texpect(outputDir).toEqual(\n\t\texpect.arrayContaining([\n\t\t\t\"runtime.js\",\n\t\t\t\"server.js\",\n\t\t\t\"messages.js\",\n\t\t\t\"adapter.js\",\n\t\t])\n\t);\n\n\texpect(adapterDir).toEqual([\"component.svelte\"]);\n});\n\ntest(\"includes eslint-disable comment\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\", \"fr\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\t// save project to directory to test loading\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tincludeEslintDisableComment: true,\n\t\tfs: fs,\n\t});\n\n\tconst messages = await fs.promises.readFile(\"/output/messages.js\", \"utf8\");\n\n\texpect(messages).toContain(\"/* eslint-disable */\");\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tincludeEslintDisableComment: false,\n\t\tfs: fs,\n\t});\n\n\tconst messagesWithoutComment = await fs.promises.readFile(\n\t\t\"/output/messages.js\",\n\t\t\"utf8\"\n\t);\n\n\texpect(messagesWithoutComment).not.toContain(\"/* eslint-disable */\");\n});\n\ntest(\"default compiler options should include cookied, variable and baseLocale to ensure easy try out of paraglide js, working both in server and browser environemnts\", () => {\n\t// someone trying out paraglide js should be able to call `getLocale()` and `setLocale()`\n\t// without getting an error slammed in their face saying \"define your strategy\".\n\t//\n\t// instead, make the apis work out of the box and once the developer is convinced that\n\t// paraglide js is the right tool for them, they can then define their own strategy.\n\n\texpect(defaultCompilerOptions.strategy).toEqual([\n\t\t\"cookie\",\n\t\t\"globalVariable\",\n\t\t\"baseLocale\",\n\t]);\n});\n\ntest(\"emits warnings for modules that couldn't be imported locally\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\", \"fr\"],\n\t\t\t\tmodules: [\"./non-existent-paraglide-plugin.js\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst mock = vi.fn();\n\n\tconsola.mockTypes(() => mock);\n\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\n\t// save project to directory to test loading\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\tawait compile({\n\t\tproject: \"/project.inlang\",\n\t\toutdir: \"/output\",\n\t\tfs: fs,\n\t});\n\n\texpect(mock).toHaveBeenCalled();\n});\n\ntest(\"emits warnings for modules that couldn't be imported via http\", async () => {\n\tconst project = await loadProjectInMemory({\n\t\tblob: await newProject({\n\t\t\tsettings: {\n\t\t\t\tbaseLocale: \"en\",\n\t\t\t\tlocales: [\"en\", \"de\", \"fr\"],\n\t\t\t\tmodules: [\"https://example.com/non-existent-paraglide-plugin.js\"],\n\t\t\t},\n\t\t}),\n\t});\n\n\tconst mock = vi.fn();\n\n\tconsola.mockTypes(() => mock);\n\n\tconst fs = memfs().fs as unknown as typeof import(\"node:fs\");\n\tconst fetchMock = vi.fn().mockRejectedValue(new TypeError(\"network error\"));\n\tvi.stubGlobal(\"fetch\", fetchMock);\n\n\tconst errorsSpy = vi.spyOn(project.errors, \"get\").mockResolvedValue([\n\t\t{\n\t\t\tmessage:\n\t\t\t\t\"Failed to import module https://example.com/non-existent-paraglide-plugin.js\",\n\t\t} as any,\n\t]);\n\n\t// save project to directory to test loading\n\tawait saveProjectToDirectory({\n\t\tproject,\n\t\tpath: \"/project.inlang\",\n\t\tfs: fs.promises,\n\t});\n\n\ttry {\n\t\tawait compile({\n\t\t\tproject: \"/project.inlang\",\n\t\t\toutdir: \"/output\",\n\t\t\tfs: fs,\n\t\t});\n\t} finally {\n\t\tvi.unstubAllGlobals();\n\t\terrorsSpy.mockRestore();\n\t}\n\n\texpect(mock).toHaveBeenCalled();\n});\n"]}
@@ -392,4 +392,3 @@ export type CompilerOptions = {
392
392
  */
393
393
  fs?: any;
394
394
  };
395
- //# sourceMappingURL=compiler-options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compiler-options.js","sourceRoot":"","sources":["../../src/compiler/compiler-options.ts"],"names":[],"mappings":"AAgCA,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACrC,eAAe,EAAE,iBAAiB;IAClC,aAAa,EAAE,IAAI;IACnB,2BAA2B,EAAE,IAAI;IACjC,kBAAkB,EAAE,IAAI;IACxB,UAAU,EAAE,IAAI;IAChB,kBAAkB,EAAE,KAAK;IACzB,WAAW,EAAE,IAAI;IACjB,wBAAwB,EAAE,KAAK;IAC/B,qCAAqC,EAAE,KAAK;IAC5C,eAAe,EAAE,kBAAkB;IACnC,QAAQ,EAAE,+BAA+B;IACzC,QAAQ,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,YAAY,CAAC;IACpD,UAAU,EAAE,kBAAkB;IAC9B,YAAY,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG;IAChC,YAAY,EAAE,EAAE;CAC4B,CAAC"}
1
+ {"version":3,"file":"compiler-options.js","sourceRoot":"","sources":["../../src/compiler/compiler-options.ts"],"names":[],"mappings":"AAgCA,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACrC,eAAe,EAAE,iBAAiB;IAClC,aAAa,EAAE,IAAI;IACnB,2BAA2B,EAAE,IAAI;IACjC,kBAAkB,EAAE,IAAI;IACxB,UAAU,EAAE,IAAI;IAChB,kBAAkB,EAAE,KAAK;IACzB,WAAW,EAAE,IAAI;IACjB,wBAAwB,EAAE,KAAK;IAC/B,qCAAqC,EAAE,KAAK;IAC5C,eAAe,EAAE,kBAAkB;IACnC,QAAQ,EAAE,+BAA+B;IACzC,QAAQ,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,YAAY,CAAC;IACpD,UAAU,EAAE,kBAAkB;IAC9B,YAAY,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG;IAChC,YAAY,EAAE,EAAE;CAC4B,CAAC","sourcesContent":["import type { Runtime } from \"./runtime/type.js\";\n\nexport type RouteStrategy =\n\t| {\n\t\t\t/**\n\t\t\t * URLPattern-compatible matcher.\n\t\t\t */\n\t\t\tmatch: string;\n\t\t\t/**\n\t\t\t * Strategy override for matching requests.\n\t\t\t */\n\t\t\tstrategy: Runtime[\"strategy\"];\n\t\t\t/**\n\t\t\t * Prevent mutually exclusive configuration (`exclude` + `strategy`).\n\t\t\t */\n\t\t\texclude?: never;\n\t }\n\t| {\n\t\t\t/**\n\t\t\t * URLPattern-compatible matcher.\n\t\t\t */\n\t\t\tmatch: string;\n\t\t\t/**\n\t\t\t * Exclude matching requests from i18n middleware behavior.\n\t\t\t */\n\t\t\texclude: true;\n\t\t\t/**\n\t\t\t * Prevent mutually exclusive configuration (`exclude` + `strategy`).\n\t\t\t */\n\t\t\tstrategy?: never;\n\t };\n\nexport const defaultCompilerOptions = {\n\toutputStructure: \"message-modules\",\n\temitGitIgnore: true,\n\tincludeEslintDisableComment: true,\n\temitPrettierIgnore: true,\n\temitReadme: true,\n\temitTsDeclarations: false,\n\tcleanOutdir: true,\n\tdisableAsyncLocalStorage: false,\n\texperimentalMiddlewareLocaleSplitting: false,\n\tlocalStorageKey: \"PARAGLIDE_LOCALE\",\n\tisServer: \"typeof window === 'undefined'\",\n\tstrategy: [\"cookie\", \"globalVariable\", \"baseLocale\"],\n\tcookieName: \"PARAGLIDE_LOCALE\",\n\tcookieMaxAge: 60 * 60 * 24 * 400,\n\tcookieDomain: \"\",\n} as const satisfies Partial<CompilerOptions>;\n\nexport type CompilerOptions = {\n\t/**\n\t * The path to the inlang project.\n\t *\n\t * @example\n\t * ```diff\n\t * await compile({\n\t * + project: \"./project.inlang\",\n\t * outdir: \"./src/paraglide\"\n\t * })\n\t * ```\n\t */\n\tproject: string;\n\t/**\n\t * The path to the output directory.\n\t *\n\t * @example\n\t * ```diff\n\t * await compile({\n\t * project: \"./project.inlang\",\n\t * + outdir: \"./src/paraglide\"\n\t * })\n\t * ```\n\t */\n\toutdir: string;\n\t/**\n\t * The strategy to use for getting the locale.\n\t *\n\t * The order of the strategy defines the precedence of matches.\n\t *\n\t * For example, in `['url', 'cookie', 'baseLocale']`, the locale will be\n\t * first tried to be detected in the url, then in a cookie, and finally\n\t * fallback to the base locale.\n\t *\n\t * The default ensures that the browser takes a cookie approach,\n\t * server-side takes the globalVariable (because cookie is unavailable),\n\t * whereas both fallback to the base locale if not available.\n\t *\n\t * Custom strategies with the pattern `custom-[A-Za-z0-9]+` are supported.\n\t *\n\t * @default [\"cookie\", \"globalVariable\", \"baseLocale\"]\n\t */\n\tstrategy?: Runtime[\"strategy\"];\n\t/**\n\t * Route-level strategy overrides.\n\t *\n\t * Routes are matched in declaration order. The first matching rule wins.\n\t * `match` uses URLPattern syntax.\n\t *\n\t * - `strategy`: Override locale resolution for the matched route.\n\t * - `exclude: true`: Skip i18n middleware behavior for the matched route.\n\t *\n\t * @example\n\t * ```ts\n\t * routeStrategies: [\n\t * { match: \"/dashboard/:path(.*)?\", strategy: [\"cookie\", \"baseLocale\"] },\n\t * { match: \"/api/:path(.*)?\", exclude: true }\n\t * ]\n\t * ```\n\t */\n\trouteStrategies?: RouteStrategy[];\n\t/**\n\t * Whether or not to use experimental middleware locale splitting.\n\t *\n\t * ⚠️ This feature is experimental and only works in SSR/SSG environment\n\t * without client-side routing. Do not rely on this feature for production.\n\t *\n\t * This feature is part of the exploration of per locale splitting. The\n\t * issue is ongoing and can be followed here [#88](https://github.com/opral/inlang-paraglide-js/issues/88).\n\t *\n\t * - The client bundle will tree-shake all messages (have close to 0kb JS).\n\t * - The server middleware will inject the used messages into the HTML.\n\t * - The client will re-trieve the messages from the injected HTML.\n\t *\n\t * @default false\n\t */\n\texperimentalMiddlewareLocaleSplitting?: boolean;\n\t/**\n\t * The name of the localStorage key to use for the localStorage strategy.\n\t *\n\t * @default 'PARAGLIDE_LOCALE'\n\t */\n\tlocalStorageKey?: string;\n\t/**\n\t * Tree-shaking flag if the code is running on the server.\n\t *\n\t * Dependent on the bundler, this flag must be adapted to\n\t * enable tree-shaking.\n\t *\n\t * @example\n\t * // vite\n\t * isServer: \"import.meta.env.SSR\"\n\t *\n\t * @default typeof window === \"undefined\"\n\t */\n\tisServer?: string;\n\t/**\n\t * Compile-time locale constant used for per-locale tree-shaking.\n\t *\n\t * This is experimental and opt-in. It should be a JavaScript expression\n\t * (not a quoted literal) that resolves to a locale or `undefined` at build time.\n\t * You can pass a string literal (e.g. `\"de\"`) for programmatic builds, or an\n\t * injected env/define expression for bundler-driven builds.\n\t *\n\t * High-level flow for per-locale builds:\n\t *\n\t * client request (/)\n\t * |\n\t * v\n\t * +----------------------+\n\t * | detect locale |\n\t * | (cookie/Accept-L) |\n\t * | pick build prefix |\n\t * +----------------------+\n\t * | if \"de\"\n\t * v\n\t * serve dist/de/... <----> serve dist/en/...\n\t * (HTML + assets) (HTML + assets)\n\t *\n\t * @see https://github.com/opral/paraglide-js/issues/88#issuecomment-3634754638\n\t *\n\t * @example\n\t * // Vite define\n\t * experimentalStaticLocale: \"typeof __PARAGLIDE_STATIC_LOCALE__ === 'undefined' ? undefined : __PARAGLIDE_STATIC_LOCALE__\"\n\t *\n\t * @example\n\t * // Programmatic compile (literal)\n\t * experimentalStaticLocale: '\"de\"'\n\t */\n\texperimentalStaticLocale?: string;\n\t/**\n\t * The name of the cookie to use for the cookie strategy.\n\t *\n\t * @default 'PARAGLIDE_LOCALE'\n\t */\n\tcookieName?: string;\n\t/**\n\t * The max-age in seconds of the cookie until it expires.\n\t *\n\t * @default 60 * 60 * 24 * 400\n\t */\n\tcookieMaxAge?: number;\n\t/**\n\t * The host to which the cookie will be sent.\n\t * If undefined or empty, the domain attribute is omitted from the cookie, scoping it to the exact current domain only (no subdomains).\n\t * If specified, the cookie will be available to the specified domain and all its subdomains.\n\t *\n\t * Use this when you need cookies to be shared across subdomains (e.g., between `app.example.com` and `api.example.com`).\n\t * The default behavior (no domain) ensures better compatibility with server-side cookies that don't specify a domain attribute.\n\t *\n\t * @example\n\t * ```ts\n\t * // Default: exact domain only (compatible with server-side cookies)\n\t * cookieDomain: undefined // Cookie: \"PARAGLIDE_LOCALE=en; path=/; max-age=34560000\"\n\t *\n\t * // Subdomain sharing: available across all subdomains\n\t * cookieDomain: \"example.com\" // Cookie: \"PARAGLIDE_LOCALE=en; path=/; max-age=34560000; domain=example.com\"\n\t * ```\n\t *\n\t * @default \"\" (no domain attribute, exact domain only)\n\t */\n\tcookieDomain?: string;\n\t/**\n\t * The `additionalFiles` option is an array of paths to additional files that should be copied to the output directory.\n\t *\n\t * @example\n\t *\n\t * ```diff\n\t * await compile({\n\t * project: \"./project.inlang\",\n\t * outdir: \"./src/paraglide\",\n\t * additionalFiles: [\n\t * + \"my-file.js\": \"console.log('hello')\"\n\t * ]\n\t * })\n\t * ```\n\t *\n\t * The output will look like this:\n\t *\n\t * ```diff\n\t * - outdir/\n\t * - messages/\n\t * + - my-file.js\n\t * - messages.js\n\t * - runtime.js\n\t * ```\n\t */\n\tadditionalFiles?: Record<string, string>;\n\t/**\n\t * If `emitPrettierIgnore` is set to `true` a `.prettierignore` file will be emitted in the output directory. Defaults to `true`.\n\t *\n\t * ```diff\n\t * - outdir/\n\t * - messages/\n\t * + - .prettierignore\n\t * - messages.js\n\t * - runtime.js\n\t * ```\n\t *\n\t * @default true\n\t */\n\temitPrettierIgnore?: boolean;\n\t/**\n\t * If `emitReadme` is set to `true` a `README.md` file will be emitted in the output directory. Defaults to `true`.\n\t *\n\t * The README helps LLMs understand the compiled output.\n\t * See https://llmstxt.org/ for format guidelines.\n\t *\n\t * ```diff\n\t * - outdir/\n\t * - messages/\n\t * + - README.md\n\t * - messages.js\n\t * - runtime.js\n\t * ```\n\t *\n\t * @default true\n\t */\n\temitReadme?: boolean;\n\t/**\n\t * Emit `.d.ts` files for the generated output using the TypeScript compiler.\n\t *\n\t * Useful when `allowJs: true` cannot be set in your `tsconfig.json`\n\t * (e.g., due to project constraints or conflicting compiler options), or when\n\t * an editor language server caches stale JSDoc types for generated messages.\n\t *\n\t * Requires `typescript` to be resolvable in your toolchain.\n\t *\n\t * **Note:** Enabling this option reduces compiler speed because TypeScript\n\t * needs to generate declaration files for all output modules.\n\t *\n\t * **Note:** With TypeScript 5/6 the declarations are generated in-process.\n\t * TypeScript 7+ no longer provides the compiler API, so its `tsc` CLI is\n\t * invoked in a child process instead; the emitted declarations are\n\t * semantically equivalent but differ cosmetically between the two.\n\t *\n\t * @example\n\t * ```ts\n\t * await compile({\n\t * project: \"./project.inlang\",\n\t * outdir: \"./src/paraglide\",\n\t * emitTsDeclarations: true,\n\t * });\n\t * ```\n\t *\n\t * @default false\n\t */\n\temitTsDeclarations?: boolean;\n\t/**\n\t * https://paraglidejs.com/strategy#url\n\t */\n\turlPatterns?: Runtime[\"urlPatterns\"];\n\t/**\n\t * Whether to include an eslint-disable comment at the top of each .js file.\n\t *\n\t * @default true\n\t */\n\tincludeEslintDisableComment?: boolean;\n\t/**\n\t * Replaces AsyncLocalStorage with a synchronous implementation.\n\t *\n\t * Leave AsyncLocalStorage enabled by default. This option is a\n\t * compatibility fallback for runtimes that do not provide\n\t * AsyncLocalStorage or `node:async_hooks`.\n\t *\n\t * ⚠️ WARNING: Only use this option when your runtime also guarantees\n\t * request isolation. Disabling AsyncLocalStorage in multi-request\n\t * server environments risks cross-request pollution where state from\n\t * one request could leak into another concurrent request.\n\t */\n\tdisableAsyncLocalStorage?: boolean;\n\t/**\n\t * If `emitGitIgnore` is set to `true` a `.gitignore` file will be emitted in the output directory. Defaults to `true`.\n\t *\n\t * ```diff\n\t * - outdir/\n\t * - messages/\n\t * + - .gitignore\n\t * - messages.js\n\t * - runtime.js\n\t * ```\n\t *\n\t * @default true\n\t */\n\temitGitIgnore?: boolean;\n\t/**\n\t * The `outputStructure` defines how modules are structured in the output.\n\t *\n\t * - `message-modules` - Each module is a message. This is the default.\n\t * - `locale-modules` - Each module is a locale.\n\t *\n\t * It is recommended to use `locale-modules` for development and `message-modules` for production.\n\t * Bundlers speed up the dev mode by bypassing bundling which can lead to many http requests\n\t * during the dev mode with `message-modules`. See https://github.com/opral/inlang-paraglide-js/issues/486.\n\t *\n\t * **`message-modules`**\n\t *\n\t * Messages have their own module which eases tree-shaking for bundlers.\n\t *\n\t * ```diff\n\t * - outdir/\n\t * - messages/\n\t * + - blue_elephant_tree/\n\t * + - index.js\n\t * + - en.js\n\t * + - fr.js\n\t * + - sky_phone_bottle/\n\t * + - index.js\n\t * + - en.js\n\t * + - fr.js\n\t * - ...\n\t * - messages.js\n\t * - runtime.js\n\t * ```\n\t *\n\t * **`locale-modules`**\n\t *\n\t * Messages are bundled in a per locale module. Bundlers often struggle with tree-shaking this structure,\n\t * which can lead to more inefficient tree-shaking and larger bundle sizes compared to `message-modules`.\n\t *\n\t * The benefit are substantially fewer files which is needed in large projects.\n\t *\n\t * ```diff\n\t * - outdir/\n\t * - messages/\n\t * + - de.js\n\t * + - en.js\n\t * + - fr.js\n\t * - ...\n\t * - messages.js\n\t * - runtime.js\n\t * ```\n\t *\n\t * @default \"message-modules\"\n\t */\n\toutputStructure?: \"locale-modules\" | \"message-modules\";\n\t/**\n\t * Whether to clean the output directory before writing the new files.\n\t *\n\t * @default true\n\t */\n\tcleanOutdir?: boolean;\n\n\t/**\n\t * The file system to use. Defaults to `await import('node:fs')`.\n\t *\n\t * Useful for testing the paraglide compiler by mocking the fs.\n\t */\n\tfs?: any;\n};\n"]}