envapt 5.1.1 → 5.2.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (473) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/README.md +23 -5
  3. package/dist/browser/Debug.d.mts.map +1 -0
  4. package/dist/browser/Debug.mjs +2 -0
  5. package/dist/browser/Debug.mjs.map +1 -0
  6. package/dist/{Dotenv.d.mts → browser/Dotenv.d.mts} +1 -1
  7. package/dist/browser/Dotenv.d.mts.map +1 -0
  8. package/dist/browser/Dotenv.mjs +3 -0
  9. package/dist/browser/Dotenv.mjs.map +1 -0
  10. package/dist/browser/Envapter.d.mts.map +1 -0
  11. package/dist/browser/Envapter.mjs.map +1 -0
  12. package/dist/{Error.d.mts → browser/Error.d.mts} +6 -2
  13. package/dist/browser/Error.d.mts.map +1 -0
  14. package/dist/{Error.mjs → browser/Error.mjs} +1 -1
  15. package/dist/browser/Error.mjs.map +1 -0
  16. package/dist/browser/StandardSchema.d.mts.map +1 -0
  17. package/dist/browser/TemplateResolver.d.mts.map +1 -0
  18. package/dist/browser/TemplateResolver.mjs.map +1 -0
  19. package/dist/browser/Validators.mjs +2 -0
  20. package/dist/browser/Validators.mjs.map +1 -0
  21. package/dist/browser/converters/BuiltInConverters.mjs +2 -0
  22. package/dist/browser/converters/BuiltInConverters.mjs.map +1 -0
  23. package/dist/browser/converters/Converters.d.mts.map +1 -0
  24. package/dist/browser/converters/Converters.mjs.map +1 -0
  25. package/dist/browser/converters/ListOfBuiltInConverters.mjs.map +1 -0
  26. package/dist/browser/converters/ValueConverter.d.mts.map +1 -0
  27. package/dist/browser/converters/ValueConverter.mjs +2 -0
  28. package/dist/browser/converters/ValueConverter.mjs.map +1 -0
  29. package/dist/browser/core/AdvancedMethods.d.mts.map +1 -0
  30. package/dist/browser/core/AdvancedMethods.mjs.map +1 -0
  31. package/dist/{core → browser/core}/EnvapterBase.d.mts +15 -45
  32. package/dist/browser/core/EnvapterBase.d.mts.map +1 -0
  33. package/dist/browser/core/EnvapterBase.mjs +2 -0
  34. package/dist/browser/core/EnvapterBase.mjs.map +1 -0
  35. package/dist/{core → browser/core}/EnvironmentMethods.d.mts +13 -30
  36. package/dist/browser/core/EnvironmentMethods.d.mts.map +1 -0
  37. package/dist/browser/core/EnvironmentMethods.mjs +2 -0
  38. package/dist/browser/core/EnvironmentMethods.mjs.map +1 -0
  39. package/dist/browser/core/PrimitiveMethods.d.mts.map +1 -0
  40. package/dist/browser/core/PrimitiveMethods.mjs +2 -0
  41. package/dist/browser/core/PrimitiveMethods.mjs.map +1 -0
  42. package/dist/{decorators → browser/decorators}/Envapt.d.mts +1 -1
  43. package/dist/browser/decorators/Envapt.d.mts.map +1 -0
  44. package/dist/browser/decorators/Envapt.mjs.map +1 -0
  45. package/dist/browser/decorators/SugarDecorators.d.mts.map +1 -0
  46. package/dist/browser/decorators/SugarDecorators.mjs.map +1 -0
  47. package/dist/browser/decorators/createPropertyDecorator.mjs +2 -0
  48. package/dist/browser/decorators/createPropertyDecorator.mjs.map +1 -0
  49. package/dist/{index.d.mts → browser/index.d.mts} +7 -4
  50. package/dist/browser/index.mjs +2 -0
  51. package/dist/browser/index.mjs.map +1 -0
  52. package/dist/browser/installFileApiStubs.mjs +2 -0
  53. package/dist/browser/installFileApiStubs.mjs.map +1 -0
  54. package/dist/browser/runtime.mjs +2 -0
  55. package/dist/browser/runtime.mjs.map +1 -0
  56. package/dist/browser/sources/ManualEnvSource.d.mts +19 -0
  57. package/dist/browser/sources/ManualEnvSource.d.mts.map +1 -0
  58. package/dist/browser/sources/ManualEnvSource.mjs +2 -0
  59. package/dist/browser/sources/ManualEnvSource.mjs.map +1 -0
  60. package/dist/browser/sources/UnboundEnvSource.mjs +2 -0
  61. package/dist/browser/sources/UnboundEnvSource.mjs.map +1 -0
  62. package/dist/browser/sources/WorkerEnvSource.d.mts +19 -0
  63. package/dist/browser/sources/WorkerEnvSource.d.mts.map +1 -0
  64. package/dist/browser/sources/WorkerEnvSource.mjs +2 -0
  65. package/dist/browser/sources/WorkerEnvSource.mjs.map +1 -0
  66. package/dist/browser/sources/coerce.mjs +2 -0
  67. package/dist/browser/sources/coerce.mjs.map +1 -0
  68. package/dist/browser/types/Conversion.d.mts.map +1 -0
  69. package/dist/browser/types/Env.d.mts.map +1 -0
  70. package/dist/{types → browser/types}/Options.d.mts +2 -2
  71. package/dist/browser/types/Options.d.mts.map +1 -0
  72. package/dist/browser/types/Schema.d.mts.map +1 -0
  73. package/dist/browser/types/Source.d.mts +44 -0
  74. package/dist/browser/types/Source.d.mts.map +1 -0
  75. package/dist/node/Debug.cjs +2 -0
  76. package/dist/node/Debug.cjs.map +1 -0
  77. package/dist/node/Debug.d.cts.map +1 -0
  78. package/dist/node/Debug.d.mts +13 -0
  79. package/dist/node/Debug.d.mts.map +1 -0
  80. package/dist/node/Debug.mjs +2 -0
  81. package/dist/node/Debug.mjs.map +1 -0
  82. package/dist/node/Dotenv.cjs +3 -0
  83. package/dist/node/Dotenv.cjs.map +1 -0
  84. package/dist/{Dotenv.d.cts → node/Dotenv.d.cts} +1 -1
  85. package/dist/node/Dotenv.d.cts.map +1 -0
  86. package/dist/node/Dotenv.d.mts +17 -0
  87. package/dist/node/Dotenv.d.mts.map +1 -0
  88. package/dist/node/Dotenv.mjs +3 -0
  89. package/dist/node/Dotenv.mjs.map +1 -0
  90. package/dist/node/Envapter.cjs.map +1 -0
  91. package/dist/node/Envapter.d.cts.map +1 -0
  92. package/dist/node/Envapter.d.mts +70 -0
  93. package/dist/node/Envapter.d.mts.map +1 -0
  94. package/dist/node/Envapter.mjs +2 -0
  95. package/dist/node/Envapter.mjs.map +1 -0
  96. package/dist/node/Error.cjs +2 -0
  97. package/dist/node/Error.cjs.map +1 -0
  98. package/dist/{Error.d.cts → node/Error.d.cts} +6 -2
  99. package/dist/node/Error.d.cts.map +1 -0
  100. package/dist/node/Error.d.mts +72 -0
  101. package/dist/node/Error.d.mts.map +1 -0
  102. package/dist/{Error.cjs → node/Error.mjs} +2 -2
  103. package/dist/node/Error.mjs.map +1 -0
  104. package/dist/node/NodeEnvapter.cjs +2 -0
  105. package/dist/node/NodeEnvapter.cjs.map +1 -0
  106. package/dist/node/NodeEnvapter.d.cts +73 -0
  107. package/dist/node/NodeEnvapter.d.cts.map +1 -0
  108. package/dist/node/NodeEnvapter.d.mts +73 -0
  109. package/dist/node/NodeEnvapter.d.mts.map +1 -0
  110. package/dist/node/NodeEnvapter.mjs +2 -0
  111. package/dist/node/NodeEnvapter.mjs.map +1 -0
  112. package/dist/node/StandardSchema.d.cts.map +1 -0
  113. package/dist/node/StandardSchema.d.mts +59 -0
  114. package/dist/node/StandardSchema.d.mts.map +1 -0
  115. package/dist/node/TemplateResolver.cjs.map +1 -0
  116. package/dist/node/TemplateResolver.d.cts.map +1 -0
  117. package/dist/node/TemplateResolver.d.mts +17 -0
  118. package/dist/node/TemplateResolver.d.mts.map +1 -0
  119. package/dist/node/TemplateResolver.mjs +2 -0
  120. package/dist/node/TemplateResolver.mjs.map +1 -0
  121. package/dist/node/Validators.cjs +2 -0
  122. package/dist/node/Validators.cjs.map +1 -0
  123. package/dist/node/Validators.mjs +2 -0
  124. package/dist/node/Validators.mjs.map +1 -0
  125. package/dist/node/config.cjs +2 -0
  126. package/dist/node/config.cjs.map +1 -0
  127. package/dist/node/config.mjs +2 -0
  128. package/dist/node/config.mjs.map +1 -0
  129. package/dist/node/converters/BuiltInConverters.cjs +2 -0
  130. package/dist/node/converters/BuiltInConverters.cjs.map +1 -0
  131. package/dist/node/converters/BuiltInConverters.mjs +2 -0
  132. package/dist/node/converters/BuiltInConverters.mjs.map +1 -0
  133. package/dist/node/converters/Converters.cjs.map +1 -0
  134. package/dist/node/converters/Converters.d.cts.map +1 -0
  135. package/dist/node/converters/Converters.d.mts +93 -0
  136. package/dist/node/converters/Converters.d.mts.map +1 -0
  137. package/dist/node/converters/Converters.mjs +2 -0
  138. package/dist/node/converters/Converters.mjs.map +1 -0
  139. package/dist/node/converters/ListOfBuiltInConverters.cjs.map +1 -0
  140. package/dist/node/converters/ListOfBuiltInConverters.mjs +2 -0
  141. package/dist/node/converters/ListOfBuiltInConverters.mjs.map +1 -0
  142. package/dist/node/converters/ValueConverter.cjs.map +1 -0
  143. package/dist/node/converters/ValueConverter.d.cts.map +1 -0
  144. package/dist/node/converters/ValueConverter.d.mts +25 -0
  145. package/dist/node/converters/ValueConverter.d.mts.map +1 -0
  146. package/dist/node/converters/ValueConverter.mjs.map +1 -0
  147. package/dist/node/core/AdvancedMethods.cjs.map +1 -0
  148. package/dist/node/core/AdvancedMethods.d.cts.map +1 -0
  149. package/dist/node/core/AdvancedMethods.d.mts +76 -0
  150. package/dist/node/core/AdvancedMethods.d.mts.map +1 -0
  151. package/dist/node/core/AdvancedMethods.mjs +2 -0
  152. package/dist/node/core/AdvancedMethods.mjs.map +1 -0
  153. package/dist/node/core/EnvapterBase.cjs +2 -0
  154. package/dist/node/core/EnvapterBase.cjs.map +1 -0
  155. package/dist/{core → node/core}/EnvapterBase.d.cts +15 -45
  156. package/dist/node/core/EnvapterBase.d.cts.map +1 -0
  157. package/dist/node/core/EnvapterBase.d.mts +75 -0
  158. package/dist/node/core/EnvapterBase.d.mts.map +1 -0
  159. package/dist/node/core/EnvapterBase.mjs +2 -0
  160. package/dist/node/core/EnvapterBase.mjs.map +1 -0
  161. package/dist/node/core/EnvironmentMethods.cjs +2 -0
  162. package/dist/node/core/EnvironmentMethods.cjs.map +1 -0
  163. package/dist/{core → node/core}/EnvironmentMethods.d.cts +12 -29
  164. package/dist/node/core/EnvironmentMethods.d.cts.map +1 -0
  165. package/dist/node/core/EnvironmentMethods.d.mts +115 -0
  166. package/dist/node/core/EnvironmentMethods.d.mts.map +1 -0
  167. package/dist/node/core/EnvironmentMethods.mjs +2 -0
  168. package/dist/node/core/EnvironmentMethods.mjs.map +1 -0
  169. package/dist/node/core/PrimitiveMethods.cjs.map +1 -0
  170. package/dist/node/core/PrimitiveMethods.d.cts.map +1 -0
  171. package/dist/node/core/PrimitiveMethods.d.mts +70 -0
  172. package/dist/node/core/PrimitiveMethods.d.mts.map +1 -0
  173. package/dist/node/core/PrimitiveMethods.mjs.map +1 -0
  174. package/dist/node/decorators/Envapt.cjs.map +1 -0
  175. package/dist/{decorators → node/decorators}/Envapt.d.cts +1 -1
  176. package/dist/node/decorators/Envapt.d.cts.map +1 -0
  177. package/dist/node/decorators/Envapt.d.mts +233 -0
  178. package/dist/node/decorators/Envapt.d.mts.map +1 -0
  179. package/dist/node/decorators/Envapt.mjs +2 -0
  180. package/dist/node/decorators/Envapt.mjs.map +1 -0
  181. package/dist/node/decorators/SugarDecorators.cjs.map +1 -0
  182. package/dist/node/decorators/SugarDecorators.d.cts.map +1 -0
  183. package/dist/node/decorators/SugarDecorators.d.mts +34 -0
  184. package/dist/node/decorators/SugarDecorators.d.mts.map +1 -0
  185. package/dist/node/decorators/SugarDecorators.mjs +2 -0
  186. package/dist/node/decorators/SugarDecorators.mjs.map +1 -0
  187. package/dist/node/decorators/createPropertyDecorator.cjs.map +1 -0
  188. package/dist/node/decorators/createPropertyDecorator.mjs.map +1 -0
  189. package/dist/node/index.cjs +1 -0
  190. package/dist/node/index.d.cts +18 -0
  191. package/dist/node/index.d.mts +18 -0
  192. package/dist/node/index.mjs +1 -0
  193. package/dist/node/runtime.cjs +2 -0
  194. package/dist/node/runtime.cjs.map +1 -0
  195. package/dist/node/runtime.mjs +2 -0
  196. package/dist/node/runtime.mjs.map +1 -0
  197. package/dist/node/sources/ManualEnvSource.cjs +2 -0
  198. package/dist/node/sources/ManualEnvSource.cjs.map +1 -0
  199. package/dist/node/sources/ManualEnvSource.d.cts +19 -0
  200. package/dist/node/sources/ManualEnvSource.d.cts.map +1 -0
  201. package/dist/node/sources/ManualEnvSource.d.mts +19 -0
  202. package/dist/node/sources/ManualEnvSource.d.mts.map +1 -0
  203. package/dist/node/sources/ManualEnvSource.mjs +2 -0
  204. package/dist/node/sources/ManualEnvSource.mjs.map +1 -0
  205. package/dist/node/sources/NodeEnvSource.cjs +2 -0
  206. package/dist/node/sources/NodeEnvSource.cjs.map +1 -0
  207. package/dist/node/sources/NodeEnvSource.d.cts +20 -0
  208. package/dist/node/sources/NodeEnvSource.d.cts.map +1 -0
  209. package/dist/node/sources/NodeEnvSource.d.mts +20 -0
  210. package/dist/node/sources/NodeEnvSource.d.mts.map +1 -0
  211. package/dist/node/sources/NodeEnvSource.mjs +2 -0
  212. package/dist/node/sources/NodeEnvSource.mjs.map +1 -0
  213. package/dist/node/sources/UnboundEnvSource.cjs +2 -0
  214. package/dist/node/sources/UnboundEnvSource.cjs.map +1 -0
  215. package/dist/node/sources/UnboundEnvSource.mjs +2 -0
  216. package/dist/node/sources/UnboundEnvSource.mjs.map +1 -0
  217. package/dist/node/sources/WorkerEnvSource.cjs +2 -0
  218. package/dist/node/sources/WorkerEnvSource.cjs.map +1 -0
  219. package/dist/node/sources/WorkerEnvSource.d.cts +19 -0
  220. package/dist/node/sources/WorkerEnvSource.d.cts.map +1 -0
  221. package/dist/node/sources/WorkerEnvSource.d.mts +19 -0
  222. package/dist/node/sources/WorkerEnvSource.d.mts.map +1 -0
  223. package/dist/node/sources/WorkerEnvSource.mjs +2 -0
  224. package/dist/node/sources/WorkerEnvSource.mjs.map +1 -0
  225. package/dist/node/sources/coerce.cjs +2 -0
  226. package/dist/node/sources/coerce.cjs.map +1 -0
  227. package/dist/node/sources/coerce.mjs +2 -0
  228. package/dist/node/sources/coerce.mjs.map +1 -0
  229. package/dist/node/types/Conversion.d.cts.map +1 -0
  230. package/dist/node/types/Conversion.d.mts +128 -0
  231. package/dist/node/types/Conversion.d.mts.map +1 -0
  232. package/dist/node/types/Env.d.cts.map +1 -0
  233. package/dist/node/types/Env.d.mts +17 -0
  234. package/dist/node/types/Env.d.mts.map +1 -0
  235. package/dist/{types → node/types}/Options.d.cts +2 -2
  236. package/dist/node/types/Options.d.cts.map +1 -0
  237. package/dist/node/types/Options.d.mts +39 -0
  238. package/dist/node/types/Options.d.mts.map +1 -0
  239. package/dist/node/types/Schema.d.cts.map +1 -0
  240. package/dist/node/types/Schema.d.mts +12 -0
  241. package/dist/node/types/Schema.d.mts.map +1 -0
  242. package/dist/node/types/Source.d.cts +44 -0
  243. package/dist/node/types/Source.d.cts.map +1 -0
  244. package/dist/node/types/Source.d.mts +44 -0
  245. package/dist/node/types/Source.d.mts.map +1 -0
  246. package/dist/workerd/Debug.d.mts +13 -0
  247. package/dist/workerd/Debug.d.mts.map +1 -0
  248. package/dist/workerd/Debug.mjs +2 -0
  249. package/dist/workerd/Debug.mjs.map +1 -0
  250. package/dist/workerd/Dotenv.d.mts +17 -0
  251. package/dist/workerd/Dotenv.d.mts.map +1 -0
  252. package/dist/workerd/Dotenv.mjs +3 -0
  253. package/dist/workerd/Dotenv.mjs.map +1 -0
  254. package/dist/workerd/Envapter.d.mts +70 -0
  255. package/dist/workerd/Envapter.d.mts.map +1 -0
  256. package/dist/workerd/Envapter.mjs +2 -0
  257. package/dist/workerd/Envapter.mjs.map +1 -0
  258. package/dist/workerd/Error.d.mts +72 -0
  259. package/dist/workerd/Error.d.mts.map +1 -0
  260. package/dist/workerd/Error.mjs +2 -0
  261. package/dist/workerd/Error.mjs.map +1 -0
  262. package/dist/workerd/StandardSchema.d.mts +59 -0
  263. package/dist/workerd/StandardSchema.d.mts.map +1 -0
  264. package/dist/workerd/TemplateResolver.d.mts +17 -0
  265. package/dist/workerd/TemplateResolver.d.mts.map +1 -0
  266. package/dist/workerd/TemplateResolver.mjs +2 -0
  267. package/dist/workerd/TemplateResolver.mjs.map +1 -0
  268. package/dist/workerd/Validators.mjs +2 -0
  269. package/dist/workerd/Validators.mjs.map +1 -0
  270. package/dist/workerd/converters/BuiltInConverters.mjs +2 -0
  271. package/dist/workerd/converters/BuiltInConverters.mjs.map +1 -0
  272. package/dist/workerd/converters/Converters.d.mts +93 -0
  273. package/dist/workerd/converters/Converters.d.mts.map +1 -0
  274. package/dist/workerd/converters/Converters.mjs +2 -0
  275. package/dist/workerd/converters/Converters.mjs.map +1 -0
  276. package/dist/workerd/converters/ListOfBuiltInConverters.mjs +2 -0
  277. package/dist/workerd/converters/ListOfBuiltInConverters.mjs.map +1 -0
  278. package/dist/workerd/converters/ValueConverter.d.mts +25 -0
  279. package/dist/workerd/converters/ValueConverter.d.mts.map +1 -0
  280. package/dist/workerd/converters/ValueConverter.mjs +2 -0
  281. package/dist/workerd/converters/ValueConverter.mjs.map +1 -0
  282. package/dist/workerd/core/AdvancedMethods.d.mts +76 -0
  283. package/dist/workerd/core/AdvancedMethods.d.mts.map +1 -0
  284. package/dist/workerd/core/AdvancedMethods.mjs +2 -0
  285. package/dist/workerd/core/AdvancedMethods.mjs.map +1 -0
  286. package/dist/workerd/core/EnvapterBase.d.mts +75 -0
  287. package/dist/workerd/core/EnvapterBase.d.mts.map +1 -0
  288. package/dist/workerd/core/EnvapterBase.mjs +2 -0
  289. package/dist/workerd/core/EnvapterBase.mjs.map +1 -0
  290. package/dist/workerd/core/EnvironmentMethods.d.mts +115 -0
  291. package/dist/workerd/core/EnvironmentMethods.d.mts.map +1 -0
  292. package/dist/workerd/core/EnvironmentMethods.mjs +2 -0
  293. package/dist/workerd/core/EnvironmentMethods.mjs.map +1 -0
  294. package/dist/workerd/core/PrimitiveMethods.d.mts +70 -0
  295. package/dist/workerd/core/PrimitiveMethods.d.mts.map +1 -0
  296. package/dist/workerd/core/PrimitiveMethods.mjs +2 -0
  297. package/dist/workerd/core/PrimitiveMethods.mjs.map +1 -0
  298. package/dist/workerd/decorators/Envapt.d.mts +233 -0
  299. package/dist/workerd/decorators/Envapt.d.mts.map +1 -0
  300. package/dist/workerd/decorators/Envapt.mjs +2 -0
  301. package/dist/workerd/decorators/Envapt.mjs.map +1 -0
  302. package/dist/workerd/decorators/SugarDecorators.d.mts +34 -0
  303. package/dist/workerd/decorators/SugarDecorators.d.mts.map +1 -0
  304. package/dist/workerd/decorators/SugarDecorators.mjs +2 -0
  305. package/dist/workerd/decorators/SugarDecorators.mjs.map +1 -0
  306. package/dist/workerd/decorators/createPropertyDecorator.mjs +2 -0
  307. package/dist/workerd/decorators/createPropertyDecorator.mjs.map +1 -0
  308. package/dist/workerd/index.d.mts +17 -0
  309. package/dist/workerd/index.mjs +2 -0
  310. package/dist/workerd/index.mjs.map +1 -0
  311. package/dist/workerd/installFileApiStubs.mjs +2 -0
  312. package/dist/workerd/installFileApiStubs.mjs.map +1 -0
  313. package/dist/workerd/runtime.mjs +2 -0
  314. package/dist/workerd/runtime.mjs.map +1 -0
  315. package/dist/workerd/sources/ManualEnvSource.d.mts +19 -0
  316. package/dist/workerd/sources/ManualEnvSource.d.mts.map +1 -0
  317. package/dist/workerd/sources/ManualEnvSource.mjs +2 -0
  318. package/dist/workerd/sources/ManualEnvSource.mjs.map +1 -0
  319. package/dist/workerd/sources/UnboundEnvSource.mjs +2 -0
  320. package/dist/workerd/sources/UnboundEnvSource.mjs.map +1 -0
  321. package/dist/workerd/sources/WorkerEnvSource.d.mts +19 -0
  322. package/dist/workerd/sources/WorkerEnvSource.d.mts.map +1 -0
  323. package/dist/workerd/sources/WorkerEnvSource.mjs +2 -0
  324. package/dist/workerd/sources/WorkerEnvSource.mjs.map +1 -0
  325. package/dist/workerd/sources/coerce.mjs +2 -0
  326. package/dist/workerd/sources/coerce.mjs.map +1 -0
  327. package/dist/workerd/types/Conversion.d.mts +128 -0
  328. package/dist/workerd/types/Conversion.d.mts.map +1 -0
  329. package/dist/workerd/types/Env.d.mts +17 -0
  330. package/dist/workerd/types/Env.d.mts.map +1 -0
  331. package/dist/workerd/types/Options.d.mts +39 -0
  332. package/dist/workerd/types/Options.d.mts.map +1 -0
  333. package/dist/workerd/types/Schema.d.mts +12 -0
  334. package/dist/workerd/types/Schema.d.mts.map +1 -0
  335. package/dist/workerd/types/Source.d.mts +44 -0
  336. package/dist/workerd/types/Source.d.mts.map +1 -0
  337. package/package.json +51 -17
  338. package/dist/Debug.cjs +0 -2
  339. package/dist/Debug.cjs.map +0 -1
  340. package/dist/Debug.d.cts.map +0 -1
  341. package/dist/Debug.d.mts.map +0 -1
  342. package/dist/Debug.mjs +0 -2
  343. package/dist/Debug.mjs.map +0 -1
  344. package/dist/Dotenv.cjs +0 -3
  345. package/dist/Dotenv.cjs.map +0 -1
  346. package/dist/Dotenv.d.cts.map +0 -1
  347. package/dist/Dotenv.d.mts.map +0 -1
  348. package/dist/Dotenv.mjs +0 -3
  349. package/dist/Dotenv.mjs.map +0 -1
  350. package/dist/Envapter.cjs.map +0 -1
  351. package/dist/Envapter.d.cts.map +0 -1
  352. package/dist/Envapter.d.mts.map +0 -1
  353. package/dist/Envapter.mjs.map +0 -1
  354. package/dist/Error.cjs.map +0 -1
  355. package/dist/Error.d.cts.map +0 -1
  356. package/dist/Error.d.mts.map +0 -1
  357. package/dist/Error.mjs.map +0 -1
  358. package/dist/StandardSchema.d.cts.map +0 -1
  359. package/dist/StandardSchema.d.mts.map +0 -1
  360. package/dist/TemplateResolver.cjs.map +0 -1
  361. package/dist/TemplateResolver.d.cts.map +0 -1
  362. package/dist/TemplateResolver.d.mts.map +0 -1
  363. package/dist/TemplateResolver.mjs.map +0 -1
  364. package/dist/Validators.cjs +0 -2
  365. package/dist/Validators.cjs.map +0 -1
  366. package/dist/Validators.mjs +0 -2
  367. package/dist/Validators.mjs.map +0 -1
  368. package/dist/config.cjs +0 -2
  369. package/dist/config.cjs.map +0 -1
  370. package/dist/config.mjs +0 -2
  371. package/dist/config.mjs.map +0 -1
  372. package/dist/converters/BuiltInConverters.cjs +0 -2
  373. package/dist/converters/BuiltInConverters.cjs.map +0 -1
  374. package/dist/converters/BuiltInConverters.mjs +0 -2
  375. package/dist/converters/BuiltInConverters.mjs.map +0 -1
  376. package/dist/converters/Converters.cjs.map +0 -1
  377. package/dist/converters/Converters.d.cts.map +0 -1
  378. package/dist/converters/Converters.d.mts.map +0 -1
  379. package/dist/converters/Converters.mjs.map +0 -1
  380. package/dist/converters/ListOfBuiltInConverters.cjs.map +0 -1
  381. package/dist/converters/ListOfBuiltInConverters.mjs.map +0 -1
  382. package/dist/converters/ValueConverter.cjs.map +0 -1
  383. package/dist/converters/ValueConverter.d.cts.map +0 -1
  384. package/dist/converters/ValueConverter.d.mts.map +0 -1
  385. package/dist/converters/ValueConverter.mjs.map +0 -1
  386. package/dist/core/AdvancedMethods.cjs.map +0 -1
  387. package/dist/core/AdvancedMethods.d.cts.map +0 -1
  388. package/dist/core/AdvancedMethods.d.mts.map +0 -1
  389. package/dist/core/AdvancedMethods.mjs.map +0 -1
  390. package/dist/core/EnvapterBase.cjs +0 -2
  391. package/dist/core/EnvapterBase.cjs.map +0 -1
  392. package/dist/core/EnvapterBase.d.cts.map +0 -1
  393. package/dist/core/EnvapterBase.d.mts.map +0 -1
  394. package/dist/core/EnvapterBase.mjs +0 -2
  395. package/dist/core/EnvapterBase.mjs.map +0 -1
  396. package/dist/core/EnvironmentMethods.cjs +0 -2
  397. package/dist/core/EnvironmentMethods.cjs.map +0 -1
  398. package/dist/core/EnvironmentMethods.d.cts.map +0 -1
  399. package/dist/core/EnvironmentMethods.d.mts.map +0 -1
  400. package/dist/core/EnvironmentMethods.mjs +0 -2
  401. package/dist/core/EnvironmentMethods.mjs.map +0 -1
  402. package/dist/core/PrimitiveMethods.cjs.map +0 -1
  403. package/dist/core/PrimitiveMethods.d.cts.map +0 -1
  404. package/dist/core/PrimitiveMethods.d.mts.map +0 -1
  405. package/dist/core/PrimitiveMethods.mjs.map +0 -1
  406. package/dist/decorators/Envapt.cjs.map +0 -1
  407. package/dist/decorators/Envapt.d.cts.map +0 -1
  408. package/dist/decorators/Envapt.d.mts.map +0 -1
  409. package/dist/decorators/Envapt.mjs.map +0 -1
  410. package/dist/decorators/SugarDecorators.cjs.map +0 -1
  411. package/dist/decorators/SugarDecorators.d.cts.map +0 -1
  412. package/dist/decorators/SugarDecorators.d.mts.map +0 -1
  413. package/dist/decorators/SugarDecorators.mjs.map +0 -1
  414. package/dist/decorators/createPropertyDecorator.cjs.map +0 -1
  415. package/dist/decorators/createPropertyDecorator.mjs.map +0 -1
  416. package/dist/index.cjs +0 -1
  417. package/dist/index.d.cts +0 -14
  418. package/dist/index.mjs +0 -1
  419. package/dist/types/Conversion.d.cts.map +0 -1
  420. package/dist/types/Conversion.d.mts.map +0 -1
  421. package/dist/types/Env.d.cts.map +0 -1
  422. package/dist/types/Env.d.mts.map +0 -1
  423. package/dist/types/Options.d.cts.map +0 -1
  424. package/dist/types/Options.d.mts.map +0 -1
  425. package/dist/types/Schema.d.cts.map +0 -1
  426. package/dist/types/Schema.d.mts.map +0 -1
  427. /package/dist/{Debug.d.mts → browser/Debug.d.mts} +0 -0
  428. /package/dist/{Envapter.d.mts → browser/Envapter.d.mts} +0 -0
  429. /package/dist/{Envapter.mjs → browser/Envapter.mjs} +0 -0
  430. /package/dist/{StandardSchema.d.mts → browser/StandardSchema.d.mts} +0 -0
  431. /package/dist/{TemplateResolver.d.mts → browser/TemplateResolver.d.mts} +0 -0
  432. /package/dist/{TemplateResolver.mjs → browser/TemplateResolver.mjs} +0 -0
  433. /package/dist/{converters → browser/converters}/Converters.d.mts +0 -0
  434. /package/dist/{converters → browser/converters}/Converters.mjs +0 -0
  435. /package/dist/{converters → browser/converters}/ListOfBuiltInConverters.mjs +0 -0
  436. /package/dist/{converters → browser/converters}/ValueConverter.d.mts +0 -0
  437. /package/dist/{core → browser/core}/AdvancedMethods.d.mts +0 -0
  438. /package/dist/{core → browser/core}/AdvancedMethods.mjs +0 -0
  439. /package/dist/{core → browser/core}/PrimitiveMethods.d.mts +0 -0
  440. /package/dist/{decorators → browser/decorators}/Envapt.mjs +0 -0
  441. /package/dist/{decorators → browser/decorators}/SugarDecorators.d.mts +0 -0
  442. /package/dist/{decorators → browser/decorators}/SugarDecorators.mjs +0 -0
  443. /package/dist/{types → browser/types}/Conversion.d.mts +0 -0
  444. /package/dist/{types → browser/types}/Env.d.mts +0 -0
  445. /package/dist/{types → browser/types}/Schema.d.mts +0 -0
  446. /package/dist/{Debug.d.cts → node/Debug.d.cts} +0 -0
  447. /package/dist/{Envapter.cjs → node/Envapter.cjs} +0 -0
  448. /package/dist/{Envapter.d.cts → node/Envapter.d.cts} +0 -0
  449. /package/dist/{StandardSchema.d.cts → node/StandardSchema.d.cts} +0 -0
  450. /package/dist/{TemplateResolver.cjs → node/TemplateResolver.cjs} +0 -0
  451. /package/dist/{TemplateResolver.d.cts → node/TemplateResolver.d.cts} +0 -0
  452. /package/dist/{_virtual → node/_virtual}/_rolldown/runtime.cjs +0 -0
  453. /package/dist/{config.d.cts → node/config.d.cts} +0 -0
  454. /package/dist/{config.d.mts → node/config.d.mts} +0 -0
  455. /package/dist/{converters → node/converters}/Converters.cjs +0 -0
  456. /package/dist/{converters → node/converters}/Converters.d.cts +0 -0
  457. /package/dist/{converters → node/converters}/ListOfBuiltInConverters.cjs +0 -0
  458. /package/dist/{converters → node/converters}/ValueConverter.cjs +0 -0
  459. /package/dist/{converters → node/converters}/ValueConverter.d.cts +0 -0
  460. /package/dist/{converters → node/converters}/ValueConverter.mjs +0 -0
  461. /package/dist/{core → node/core}/AdvancedMethods.cjs +0 -0
  462. /package/dist/{core → node/core}/AdvancedMethods.d.cts +0 -0
  463. /package/dist/{core → node/core}/PrimitiveMethods.cjs +0 -0
  464. /package/dist/{core → node/core}/PrimitiveMethods.d.cts +0 -0
  465. /package/dist/{core → node/core}/PrimitiveMethods.mjs +0 -0
  466. /package/dist/{decorators → node/decorators}/Envapt.cjs +0 -0
  467. /package/dist/{decorators → node/decorators}/SugarDecorators.cjs +0 -0
  468. /package/dist/{decorators → node/decorators}/SugarDecorators.d.cts +0 -0
  469. /package/dist/{decorators → node/decorators}/createPropertyDecorator.cjs +0 -0
  470. /package/dist/{decorators → node/decorators}/createPropertyDecorator.mjs +0 -0
  471. /package/dist/{types → node/types}/Conversion.d.cts +0 -0
  472. /package/dist/{types → node/types}/Env.d.cts +0 -0
  473. /package/dist/{types → node/types}/Schema.d.cts +0 -0
@@ -0,0 +1,34 @@
1
+ import { TimeFallback } from "../types/Conversion.mjs";
2
+ import { EnvKeyInput } from "../types/Env.mjs";
3
+
4
+ //#region src/decorators/SugarDecorators.d.ts
5
+ /**
6
+ * Shorthand for `@Envapt(key, { converter: Converters.Boolean, fallback })`.
7
+ * @public
8
+ */
9
+ declare function EnvBool(key: EnvKeyInput, fallback?: boolean): PropertyDecorator;
10
+ /**
11
+ * Shorthand for `@Envapt(key, { converter: Converters.Number, fallback })`.
12
+ * @public
13
+ */
14
+ declare function EnvNum(key: EnvKeyInput, fallback?: number): PropertyDecorator;
15
+ /**
16
+ * Shorthand for `@Envapt(key, { converter: Converters.String, fallback })`.
17
+ * @public
18
+ */
19
+ declare function EnvStr(key: EnvKeyInput, fallback?: string): PropertyDecorator;
20
+ /**
21
+ * Shorthand for `@Envapt(key, { converter: Converters.Time, fallback })`. The fallback is a
22
+ * millisecond number or a time string (`'15m'`); the resolved value is always milliseconds.
23
+ * @public
24
+ */
25
+ declare function EnvTime(key: EnvKeyInput, fallback?: TimeFallback): PropertyDecorator;
26
+ /**
27
+ * Shorthand for `@Envapt(key, { converter: Converters.Url, fallback })`. The fallback is a `URL`
28
+ * instance, not a URL string.
29
+ * @public
30
+ */
31
+ declare function EnvUrl(key: EnvKeyInput, fallback?: URL): PropertyDecorator;
32
+ //#endregion
33
+ export { EnvBool, EnvNum, EnvStr, EnvTime, EnvUrl };
34
+ //# sourceMappingURL=SugarDecorators.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SugarDecorators.d.mts","names":[],"sources":["../../../src/decorators/SugarDecorators.ts"],"mappings":";;;;;;;AAwBA;iBAAgB,OAAA,CAAQ,GAAA,EAAK,WAAA,EAAa,QAAA,aAAqB,iBAAiB;;;;;iBAQhE,MAAA,CAAO,GAAA,EAAK,WAAA,EAAa,QAAA,YAAoB,iBAAiB;;;AARE;AAQhF;iBAQgB,MAAA,CAAO,GAAA,EAAK,WAAA,EAAa,QAAA,YAAoB,iBAAiB;;;;;;iBAS9D,OAAA,CAAQ,GAAA,EAAK,WAAA,EAAa,QAAA,GAAW,YAAA,GAAe,iBAAA;;AAjBU;AAQ9E;;;iBAkBgB,MAAA,CAAO,GAAA,EAAK,WAAA,EAAa,QAAA,GAAW,GAAA,GAAM,iBAAA"}
@@ -0,0 +1,2 @@
1
+ import{Converters as e}from"../converters/Converters.mjs";import{createPropertyDecorator as t}from"./createPropertyDecorator.mjs";function n(e,n,r){return t(n,{converter:e,fallback:r,hasFallback:r!==void 0,required:!1,schema:void 0})}function r(t,r){return n(e.Boolean,t,r)}function i(t,r){return n(e.Number,t,r)}function a(t,r){return n(e.String,t,r)}function o(t,r){return n(e.Time,t,r)}function s(t,r){return n(e.Url,t,r)}export{r as EnvBool,i as EnvNum,a as EnvStr,o as EnvTime,s as EnvUrl};
2
+ //# sourceMappingURL=SugarDecorators.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SugarDecorators.mjs","names":[],"sources":["../../../src/decorators/SugarDecorators.ts"],"sourcesContent":["import { createPropertyDecorator } from './createPropertyDecorator';\nimport { Converters } from '../converters';\n\nimport type { ConverterToken } from '../converters';\nimport type { EnvKeyInput, TimeFallback } from '../types';\n\nfunction sugar<TFallback>(\n converter: ConverterToken,\n key: EnvKeyInput,\n fallback: TFallback | undefined\n): PropertyDecorator {\n return createPropertyDecorator<TFallback>(key, {\n converter,\n fallback,\n hasFallback: fallback !== undefined,\n required: false,\n schema: undefined\n });\n}\n\n/**\n * Shorthand for `@Envapt(key, { converter: Converters.Boolean, fallback })`.\n * @public\n */\nexport function EnvBool(key: EnvKeyInput, fallback?: boolean): PropertyDecorator {\n return sugar(Converters.Boolean, key, fallback);\n}\n\n/**\n * Shorthand for `@Envapt(key, { converter: Converters.Number, fallback })`.\n * @public\n */\nexport function EnvNum(key: EnvKeyInput, fallback?: number): PropertyDecorator {\n return sugar(Converters.Number, key, fallback);\n}\n\n/**\n * Shorthand for `@Envapt(key, { converter: Converters.String, fallback })`.\n * @public\n */\nexport function EnvStr(key: EnvKeyInput, fallback?: string): PropertyDecorator {\n return sugar(Converters.String, key, fallback);\n}\n\n/**\n * Shorthand for `@Envapt(key, { converter: Converters.Time, fallback })`. The fallback is a\n * millisecond number or a time string (`'15m'`); the resolved value is always milliseconds.\n * @public\n */\nexport function EnvTime(key: EnvKeyInput, fallback?: TimeFallback): PropertyDecorator {\n return sugar(Converters.Time, key, fallback);\n}\n\n/**\n * Shorthand for `@Envapt(key, { converter: Converters.Url, fallback })`. The fallback is a `URL`\n * instance, not a URL string.\n * @public\n */\nexport function EnvUrl(key: EnvKeyInput, fallback?: URL): PropertyDecorator {\n return sugar(Converters.Url, key, fallback);\n}\n"],"mappings":"kIAMA,SAAS,EACL,EACA,EACA,EACiB,CACjB,OAAO,EAAmC,EAAK,CAC3C,YACA,WACA,YAAa,IAAa,IAAA,GAC1B,SAAU,GACV,OAAQ,IAAA,EACZ,CAAC,CACL,CAMA,SAAgB,EAAQ,EAAkB,EAAuC,CAC7E,OAAO,EAAM,EAAW,QAAS,EAAK,CAAQ,CAClD,CAMA,SAAgB,EAAO,EAAkB,EAAsC,CAC3E,OAAO,EAAM,EAAW,OAAQ,EAAK,CAAQ,CACjD,CAMA,SAAgB,EAAO,EAAkB,EAAsC,CAC3E,OAAO,EAAM,EAAW,OAAQ,EAAK,CAAQ,CACjD,CAOA,SAAgB,EAAQ,EAAkB,EAA4C,CAClF,OAAO,EAAM,EAAW,KAAM,EAAK,CAAQ,CAC/C,CAOA,SAAgB,EAAO,EAAkB,EAAmC,CACxE,OAAO,EAAM,EAAW,IAAK,EAAK,CAAQ,CAC9C"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPropertyDecorator.cjs","names":["EnvaptCache","Envapter","EnvaptError","ValueConverter"],"sources":["../../../src/decorators/createPropertyDecorator.ts"],"sourcesContent":["import { ValueConverter } from '../converters';\nimport { EnvaptCache } from '../core';\nimport { Envapter } from '../Envapter';\nimport { EnvaptError, EnvaptErrorCodes } from '../Error';\n\nimport type { StandardSchemaV1 } from '../StandardSchema';\nimport type { EnvaptConverter, EnvKeyInput } from '../types';\n\nfunction formatKeyForError(key: EnvKeyInput): string {\n return Array.isArray(key) ? `[${key.join(', ')}]` : String(key);\n}\n\ninterface DecoratorConfig<TFallback> {\n fallback: TFallback | undefined;\n converter: EnvaptConverter<TFallback> | undefined;\n hasFallback: boolean;\n required: boolean;\n schema: StandardSchemaV1 | undefined;\n}\n\nexport function createPropertyDecorator<TFallback>(\n key: EnvKeyInput,\n config: DecoratorConfig<TFallback>\n): PropertyDecorator {\n const { fallback, converter, hasFallback, required, schema } = config;\n return function (target: object, prop: string | symbol): void {\n const propKey = String(prop);\n // Distinguishing constructor (static) from prototype (instance) keeps same-named static and instance properties from colliding in the cache.\n const className = typeof target === 'function' ? target.name : target.constructor.name;\n const cacheKey = `${className}.${propKey}`;\n\n Object.defineProperty(target, propKey, {\n get: function () {\n let value = EnvaptCache.get(cacheKey) as TFallback | null | undefined;\n\n if (value === undefined) {\n const envapter = new Envapter();\n\n if (required && schema === undefined) {\n const rawValue = envapter.getRaw(key);\n if (rawValue === undefined || rawValue.trim() === '') {\n throw new EnvaptError(\n EnvaptErrorCodes.MissingEnvValue,\n `Required environment variable \"${formatKeyForError(key)}\" is missing or empty.`\n );\n }\n }\n\n const valueConverter = new ValueConverter(envapter);\n if (schema !== undefined) {\n value = valueConverter.convertWithSchema(key, schema, fallback, hasFallback) as TFallback;\n } else {\n value = valueConverter.convertValue(key, fallback, converter, hasFallback);\n }\n EnvaptCache.set(cacheKey, value);\n }\n\n return value;\n },\n configurable: false,\n enumerable: true\n });\n };\n}\n"],"mappings":"iJAQA,SAAS,EAAkB,EAA0B,CACjD,OAAO,MAAM,QAAQ,CAAG,EAAI,IAAI,EAAI,KAAK,IAAI,EAAE,GAAK,OAAO,CAAG,CAClE,CAUA,SAAgB,EACZ,EACA,EACiB,CACjB,GAAM,CAAE,WAAU,YAAW,cAAa,WAAU,UAAW,EAC/D,OAAO,SAAU,EAAgB,EAA6B,CAC1D,IAAM,EAAU,OAAO,CAAI,EAGrB,EAAW,GADC,OAAO,GAAW,WAAa,EAAO,KAAO,EAAO,YAAY,KACpD,GAAG,IAEjC,OAAO,eAAe,EAAQ,EAAS,CACnC,IAAK,UAAY,CACb,IAAI,EAAQA,EAAAA,YAAY,IAAI,CAAQ,EAEpC,GAAI,IAAU,IAAA,GAAW,CACrB,IAAM,EAAW,IAAIC,EAAAA,SAErB,GAAI,GAAY,IAAW,IAAA,GAAW,CAClC,IAAM,EAAW,EAAS,OAAO,CAAG,EACpC,GAAI,IAAa,IAAA,IAAa,EAAS,KAAK,IAAM,GAC9C,MAAM,IAAIC,EAAAA,YAAAA,IAEN,kCAAkC,EAAkB,CAAG,EAAE,uBAC7D,CAER,CAEA,IAAM,EAAiB,IAAIC,EAAAA,eAAe,CAAQ,EAClD,AACI,EADA,IAAW,IAAA,GAGH,EAAe,aAAa,EAAK,EAAU,EAAW,CAAW,EAFjE,EAAe,kBAAkB,EAAK,EAAQ,EAAU,CAAW,EAI/E,EAAA,YAAY,IAAI,EAAU,CAAK,CACnC,CAEA,OAAO,CACX,EACA,aAAc,GACd,WAAY,EAChB,CAAC,CACL,CACJ"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPropertyDecorator.mjs","names":[],"sources":["../../../src/decorators/createPropertyDecorator.ts"],"sourcesContent":["import { ValueConverter } from '../converters';\nimport { EnvaptCache } from '../core';\nimport { Envapter } from '../Envapter';\nimport { EnvaptError, EnvaptErrorCodes } from '../Error';\n\nimport type { StandardSchemaV1 } from '../StandardSchema';\nimport type { EnvaptConverter, EnvKeyInput } from '../types';\n\nfunction formatKeyForError(key: EnvKeyInput): string {\n return Array.isArray(key) ? `[${key.join(', ')}]` : String(key);\n}\n\ninterface DecoratorConfig<TFallback> {\n fallback: TFallback | undefined;\n converter: EnvaptConverter<TFallback> | undefined;\n hasFallback: boolean;\n required: boolean;\n schema: StandardSchemaV1 | undefined;\n}\n\nexport function createPropertyDecorator<TFallback>(\n key: EnvKeyInput,\n config: DecoratorConfig<TFallback>\n): PropertyDecorator {\n const { fallback, converter, hasFallback, required, schema } = config;\n return function (target: object, prop: string | symbol): void {\n const propKey = String(prop);\n // Distinguishing constructor (static) from prototype (instance) keeps same-named static and instance properties from colliding in the cache.\n const className = typeof target === 'function' ? target.name : target.constructor.name;\n const cacheKey = `${className}.${propKey}`;\n\n Object.defineProperty(target, propKey, {\n get: function () {\n let value = EnvaptCache.get(cacheKey) as TFallback | null | undefined;\n\n if (value === undefined) {\n const envapter = new Envapter();\n\n if (required && schema === undefined) {\n const rawValue = envapter.getRaw(key);\n if (rawValue === undefined || rawValue.trim() === '') {\n throw new EnvaptError(\n EnvaptErrorCodes.MissingEnvValue,\n `Required environment variable \"${formatKeyForError(key)}\" is missing or empty.`\n );\n }\n }\n\n const valueConverter = new ValueConverter(envapter);\n if (schema !== undefined) {\n value = valueConverter.convertWithSchema(key, schema, fallback, hasFallback) as TFallback;\n } else {\n value = valueConverter.convertValue(key, fallback, converter, hasFallback);\n }\n EnvaptCache.set(cacheKey, value);\n }\n\n return value;\n },\n configurable: false,\n enumerable: true\n });\n };\n}\n"],"mappings":"+MAQA,SAAS,EAAkB,EAA0B,CACjD,OAAO,MAAM,QAAQ,CAAG,EAAI,IAAI,EAAI,KAAK,IAAI,EAAE,GAAK,OAAO,CAAG,CAClE,CAUA,SAAgB,EACZ,EACA,EACiB,CACjB,GAAM,CAAE,WAAU,YAAW,cAAa,WAAU,UAAW,EAC/D,OAAO,SAAU,EAAgB,EAA6B,CAC1D,IAAM,EAAU,OAAO,CAAI,EAGrB,EAAW,GADC,OAAO,GAAW,WAAa,EAAO,KAAO,EAAO,YAAY,KACpD,GAAG,IAEjC,OAAO,eAAe,EAAQ,EAAS,CACnC,IAAK,UAAY,CACb,IAAI,EAAQ,EAAY,IAAI,CAAQ,EAEpC,GAAI,IAAU,IAAA,GAAW,CACrB,IAAM,EAAW,IAAI,EAErB,GAAI,GAAY,IAAW,IAAA,GAAW,CAClC,IAAM,EAAW,EAAS,OAAO,CAAG,EACpC,GAAI,IAAa,IAAA,IAAa,EAAS,KAAK,IAAM,GAC9C,MAAM,IAAI,EAAA,IAEN,kCAAkC,EAAkB,CAAG,EAAE,uBAC7D,CAER,CAEA,IAAM,EAAiB,IAAI,EAAe,CAAQ,EAClD,AACI,EADA,IAAW,IAAA,GAGH,EAAe,aAAa,EAAK,EAAU,EAAW,CAAW,EAFjE,EAAe,kBAAkB,EAAK,EAAQ,EAAU,CAAW,EAI/E,EAAY,IAAI,EAAU,CAAK,CACnC,CAEA,OAAO,CACX,EACA,aAAc,GACd,WAAY,EAChB,CAAC,CACL,CACJ"}
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./converters/Converters.cjs"),t=require("./Error.cjs"),n=require("./core/EnvironmentMethods.cjs"),r=require("./decorators/Envapt.cjs"),i=require("./decorators/SugarDecorators.cjs"),a=require("./sources/ManualEnvSource.cjs"),o=require("./sources/WorkerEnvSource.cjs"),s=require("./sources/NodeEnvSource.cjs"),c=require("./NodeEnvapter.cjs");exports.Converters=e.Converters,exports.EnvBool=i.EnvBool,exports.EnvNum=i.EnvNum,exports.EnvStr=i.EnvStr,exports.EnvTime=i.EnvTime,exports.EnvUrl=i.EnvUrl,exports.Envapt=r.Envapt,exports.EnvaptError=t.EnvaptError,exports.EnvaptErrorCodes=t.EnvaptErrorCodes,exports.Envapter=c.NodeEnvapter,exports.Environment=n.Environment,exports.ManualEnvSource=a.ManualEnvSource,exports.NodeEnvSource=s.NodeEnvSource,exports.WorkerEnvSource=o.WorkerEnvSource,exports.isArrayOf=e.isArrayOf;
@@ -0,0 +1,18 @@
1
+ import { ArrayElement, ArrayOf, ConverterToken, Converters, CustomElementConverter, isArrayOf } from "./converters/Converters.cjs";
2
+ import { AdvancedConverterReturn, BuiltInConverter, BuiltInConverterFunction, ConditionalReturn, ConverterFunction, EnvaptConverter, InferConverterFallbackType, InferConverterReturnType, InferPrimitiveFallbackType, InferPrimitiveReturnType, JsonValue, MapOfConverterFunctions, PrimitiveConstructor, TimeFallback, TimeUnit } from "./types/Conversion.cjs";
3
+ import { InferSchemaInput, InferSchemaOutput, StandardSchemaV1 } from "./StandardSchema.cjs";
4
+ import { Err, SchemaConstraint, SchemaMustBeSync } from "./types/Schema.cjs";
5
+ import { DebugLevel } from "./Debug.cjs";
6
+ import { EnvFileOptions } from "./Dotenv.cjs";
7
+ import { Environment } from "./core/EnvironmentMethods.cjs";
8
+ import { EnvProfile, EnvaptOptions, ProfilesConfig } from "./types/Options.cjs";
9
+ import { EnvKeyInput } from "./types/Env.cjs";
10
+ import { BareEnvSource, EnvSource, FileEnvSource } from "./types/Source.cjs";
11
+ import { Envapt } from "./decorators/Envapt.cjs";
12
+ import { EnvBool, EnvNum, EnvStr, EnvTime, EnvUrl } from "./decorators/SugarDecorators.cjs";
13
+ import { ManualEnvSource } from "./sources/ManualEnvSource.cjs";
14
+ import { WorkerEnvSource } from "./sources/WorkerEnvSource.cjs";
15
+ import { EnvaptError, EnvaptErrorCodes } from "./Error.cjs";
16
+ import { NodeEnvapter } from "./NodeEnvapter.cjs";
17
+ import { NodeEnvSource } from "./sources/NodeEnvSource.cjs";
18
+ export { type AdvancedConverterReturn, type ArrayElement, type ArrayOf, type BareEnvSource, type BuiltInConverter, type BuiltInConverterFunction, type ConditionalReturn, type ConverterFunction, type ConverterToken, Converters, type CustomElementConverter, type DebugLevel, EnvBool, type EnvFileOptions, type EnvKeyInput, EnvNum, type EnvProfile, type EnvSource, EnvStr, EnvTime, EnvUrl, Envapt, type EnvaptConverter, EnvaptError, EnvaptErrorCodes, type EnvaptOptions, NodeEnvapter as Envapter, Environment, type Err, type FileEnvSource, type InferConverterFallbackType, type InferConverterReturnType, type InferPrimitiveFallbackType, type InferPrimitiveReturnType, type InferSchemaInput, type InferSchemaOutput, type JsonValue, ManualEnvSource, type MapOfConverterFunctions, NodeEnvSource, type PrimitiveConstructor, type ProfilesConfig, type SchemaConstraint, type SchemaMustBeSync, type StandardSchemaV1, type TimeFallback, type TimeUnit, WorkerEnvSource, isArrayOf };
@@ -0,0 +1,18 @@
1
+ import { ArrayElement, ArrayOf, ConverterToken, Converters, CustomElementConverter, isArrayOf } from "./converters/Converters.mjs";
2
+ import { AdvancedConverterReturn, BuiltInConverter, BuiltInConverterFunction, ConditionalReturn, ConverterFunction, EnvaptConverter, InferConverterFallbackType, InferConverterReturnType, InferPrimitiveFallbackType, InferPrimitiveReturnType, JsonValue, MapOfConverterFunctions, PrimitiveConstructor, TimeFallback, TimeUnit } from "./types/Conversion.mjs";
3
+ import { InferSchemaInput, InferSchemaOutput, StandardSchemaV1 } from "./StandardSchema.mjs";
4
+ import { Err, SchemaConstraint, SchemaMustBeSync } from "./types/Schema.mjs";
5
+ import { DebugLevel } from "./Debug.mjs";
6
+ import { EnvFileOptions } from "./Dotenv.mjs";
7
+ import { Environment } from "./core/EnvironmentMethods.mjs";
8
+ import { EnvProfile, EnvaptOptions, ProfilesConfig } from "./types/Options.mjs";
9
+ import { EnvKeyInput } from "./types/Env.mjs";
10
+ import { BareEnvSource, EnvSource, FileEnvSource } from "./types/Source.mjs";
11
+ import { Envapt } from "./decorators/Envapt.mjs";
12
+ import { EnvBool, EnvNum, EnvStr, EnvTime, EnvUrl } from "./decorators/SugarDecorators.mjs";
13
+ import { ManualEnvSource } from "./sources/ManualEnvSource.mjs";
14
+ import { WorkerEnvSource } from "./sources/WorkerEnvSource.mjs";
15
+ import { EnvaptError, EnvaptErrorCodes } from "./Error.mjs";
16
+ import { NodeEnvapter } from "./NodeEnvapter.mjs";
17
+ import { NodeEnvSource } from "./sources/NodeEnvSource.mjs";
18
+ export { type AdvancedConverterReturn, type ArrayElement, type ArrayOf, type BareEnvSource, type BuiltInConverter, type BuiltInConverterFunction, type ConditionalReturn, type ConverterFunction, type ConverterToken, Converters, type CustomElementConverter, type DebugLevel, EnvBool, type EnvFileOptions, type EnvKeyInput, EnvNum, type EnvProfile, type EnvSource, EnvStr, EnvTime, EnvUrl, Envapt, type EnvaptConverter, EnvaptError, EnvaptErrorCodes, type EnvaptOptions, NodeEnvapter as Envapter, Environment, type Err, type FileEnvSource, type InferConverterFallbackType, type InferConverterReturnType, type InferPrimitiveFallbackType, type InferPrimitiveReturnType, type InferSchemaInput, type InferSchemaOutput, type JsonValue, ManualEnvSource, type MapOfConverterFunctions, NodeEnvSource, type PrimitiveConstructor, type ProfilesConfig, type SchemaConstraint, type SchemaMustBeSync, type StandardSchemaV1, type TimeFallback, type TimeUnit, WorkerEnvSource, isArrayOf };
@@ -0,0 +1 @@
1
+ import{Converters as e,isArrayOf as t}from"./converters/Converters.mjs";import{EnvaptError as n,EnvaptErrorCodes as r}from"./Error.mjs";import{Environment as i}from"./core/EnvironmentMethods.mjs";import{Envapt as a}from"./decorators/Envapt.mjs";import{EnvBool as o,EnvNum as s,EnvStr as c,EnvTime as l,EnvUrl as u}from"./decorators/SugarDecorators.mjs";import{ManualEnvSource as d}from"./sources/ManualEnvSource.mjs";import{WorkerEnvSource as f}from"./sources/WorkerEnvSource.mjs";import{NodeEnvSource as p}from"./sources/NodeEnvSource.mjs";import{NodeEnvapter as m}from"./NodeEnvapter.mjs";export{e as Converters,o as EnvBool,s as EnvNum,c as EnvStr,l as EnvTime,u as EnvUrl,a as Envapt,n as EnvaptError,r as EnvaptErrorCodes,m as Envapter,i as Environment,d as ManualEnvSource,p as NodeEnvSource,f as WorkerEnvSource,t as isArrayOf};
@@ -0,0 +1,2 @@
1
+ let e=e=>{console.error(e)},t=()=>({});function n(t){e=t}function r(t){e(t)}function i(){return t()}function a(e){t=()=>e.readVars()}exports.bindRuntimeFromSource=a,exports.readRuntimeEnv=i,exports.setRuntimeSink=n,exports.writeRuntimeLine=r;
2
+ //# sourceMappingURL=runtime.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.cjs","names":[],"sources":["../../src/runtime.ts"],"sourcesContent":["import type { EnvSource } from './types';\n\n// EnvapterBase imports Debug; importing it back would cycle, so the source/sink are injected via the setters below.\n/* v8 ignore start -- @preserve replaced at load on Node; the Node suite never runs these defaults */\nlet sink: (line: string) => void = (line) => {\n // eslint-disable-next-line no-console -- the off-Node fallback log sink\n console.error(line);\n};\nlet envReader: () => Record<string, string> = () => ({});\n/* v8 ignore stop */\n\nexport function setRuntimeSink(fn: (line: string) => void): void {\n sink = fn;\n}\n\nexport function writeRuntimeLine(line: string): void {\n sink(line);\n}\n\nexport function readRuntimeEnv(): Record<string, string> {\n return envReader();\n}\n\nexport function bindRuntimeFromSource(source: EnvSource): void {\n envReader = (): Record<string, string> => source.readVars();\n}\n"],"mappings":"AAIA,IAAI,EAAgC,GAAS,CAEzC,QAAQ,MAAM,CAAI,CACtB,EACI,OAAiD,CAAC,GAGtD,SAAgB,EAAe,EAAkC,CAC7D,EAAO,CACX,CAEA,SAAgB,EAAiB,EAAoB,CACjD,EAAK,CAAI,CACb,CAEA,SAAgB,GAAyC,CACrD,OAAO,EAAU,CACrB,CAEA,SAAgB,EAAsB,EAAyB,CAC3D,MAA0C,EAAO,SAAS,CAC9D"}
@@ -0,0 +1,2 @@
1
+ let e=e=>{console.error(e)},t=()=>({});function n(t){e=t}function r(t){e(t)}function i(){return t()}function a(e){t=()=>e.readVars()}export{a as bindRuntimeFromSource,i as readRuntimeEnv,n as setRuntimeSink,r as writeRuntimeLine};
2
+ //# sourceMappingURL=runtime.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.mjs","names":[],"sources":["../../src/runtime.ts"],"sourcesContent":["import type { EnvSource } from './types';\n\n// EnvapterBase imports Debug; importing it back would cycle, so the source/sink are injected via the setters below.\n/* v8 ignore start -- @preserve replaced at load on Node; the Node suite never runs these defaults */\nlet sink: (line: string) => void = (line) => {\n // eslint-disable-next-line no-console -- the off-Node fallback log sink\n console.error(line);\n};\nlet envReader: () => Record<string, string> = () => ({});\n/* v8 ignore stop */\n\nexport function setRuntimeSink(fn: (line: string) => void): void {\n sink = fn;\n}\n\nexport function writeRuntimeLine(line: string): void {\n sink(line);\n}\n\nexport function readRuntimeEnv(): Record<string, string> {\n return envReader();\n}\n\nexport function bindRuntimeFromSource(source: EnvSource): void {\n envReader = (): Record<string, string> => source.readVars();\n}\n"],"mappings":"AAIA,IAAI,EAAgC,GAAS,CAEzC,QAAQ,MAAM,CAAI,CACtB,EACI,OAAiD,CAAC,GAGtD,SAAgB,EAAe,EAAkC,CAC7D,EAAO,CACX,CAEA,SAAgB,EAAiB,EAAoB,CACjD,EAAK,CAAI,CACb,CAEA,SAAgB,GAAyC,CACrD,OAAO,EAAU,CACrB,CAEA,SAAgB,EAAsB,EAAyB,CAC3D,MAA0C,EAAO,SAAS,CAC9D"}
@@ -0,0 +1,2 @@
1
+ const e=require("./coerce.cjs");var t=class{supportsFiles=!1;vars;constructor(t){this.vars=e.coerceToStringRecord(t)}readVars(){return{...this.vars}}};exports.ManualEnvSource=t;
2
+ //# sourceMappingURL=ManualEnvSource.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManualEnvSource.cjs","names":["coerceToStringRecord"],"sources":["../../../src/sources/ManualEnvSource.ts"],"sourcesContent":["import { coerceToStringRecord } from './coerce';\n\nimport type { BareEnvSource } from '../types';\n\n/**\n * Environment source seeded from an object you provide: the config your bundler injects into a browser\n * build (Vite's `import.meta.env`, a webpack `DefinePlugin` global), a test fixture, or any other plain\n * object. Pass it straight through; non-string values are JSON-stringified so the converters still apply.\n * It has no filesystem, so the `.env` cascade and file-based APIs do not apply.\n * @public\n */\nexport class ManualEnvSource implements BareEnvSource {\n readonly supportsFiles = false;\n private readonly vars: Record<string, string>;\n\n constructor(vars: Record<string, unknown>) {\n this.vars = coerceToStringRecord(vars);\n }\n\n readVars(): Record<string, string> {\n return { ...this.vars };\n }\n}\n"],"mappings":"gCAWA,IAAa,EAAb,KAAsD,CAClD,cAAyB,GACzB,KAEA,YAAY,EAA+B,CACvC,KAAK,KAAOA,EAAAA,qBAAqB,CAAI,CACzC,CAEA,UAAmC,CAC/B,MAAO,CAAE,GAAG,KAAK,IAAK,CAC1B,CACJ"}
@@ -0,0 +1,19 @@
1
+ import { BareEnvSource } from "../types/Source.cjs";
2
+
3
+ //#region src/sources/ManualEnvSource.d.ts
4
+ /**
5
+ * Environment source seeded from an object you provide: the config your bundler injects into a browser
6
+ * build (Vite's `import.meta.env`, a webpack `DefinePlugin` global), a test fixture, or any other plain
7
+ * object. Pass it straight through; non-string values are JSON-stringified so the converters still apply.
8
+ * It has no filesystem, so the `.env` cascade and file-based APIs do not apply.
9
+ * @public
10
+ */
11
+ declare class ManualEnvSource implements BareEnvSource {
12
+ readonly supportsFiles = false;
13
+ private readonly vars;
14
+ constructor(vars: Record<string, unknown>);
15
+ readVars(): Record<string, string>;
16
+ }
17
+ //#endregion
18
+ export { ManualEnvSource };
19
+ //# sourceMappingURL=ManualEnvSource.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManualEnvSource.d.cts","names":[],"sources":["../../../src/sources/ManualEnvSource.ts"],"mappings":";;;;;AAWA;;;;;cAAa,eAAA,YAA2B,aAAA;EAAA,SAC3B,aAAA;EAAA,iBACQ,IAAA;cAEL,IAAA,EAAM,MAAA;EAIlB,QAAA,CAAA,GAAY,MAAA;AAAA"}
@@ -0,0 +1,19 @@
1
+ import { BareEnvSource } from "../types/Source.mjs";
2
+
3
+ //#region src/sources/ManualEnvSource.d.ts
4
+ /**
5
+ * Environment source seeded from an object you provide: the config your bundler injects into a browser
6
+ * build (Vite's `import.meta.env`, a webpack `DefinePlugin` global), a test fixture, or any other plain
7
+ * object. Pass it straight through; non-string values are JSON-stringified so the converters still apply.
8
+ * It has no filesystem, so the `.env` cascade and file-based APIs do not apply.
9
+ * @public
10
+ */
11
+ declare class ManualEnvSource implements BareEnvSource {
12
+ readonly supportsFiles = false;
13
+ private readonly vars;
14
+ constructor(vars: Record<string, unknown>);
15
+ readVars(): Record<string, string>;
16
+ }
17
+ //#endregion
18
+ export { ManualEnvSource };
19
+ //# sourceMappingURL=ManualEnvSource.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManualEnvSource.d.mts","names":[],"sources":["../../../src/sources/ManualEnvSource.ts"],"mappings":";;;;;AAWA;;;;;cAAa,eAAA,YAA2B,aAAA;EAAA,SAC3B,aAAA;EAAA,iBACQ,IAAA;cAEL,IAAA,EAAM,MAAA;EAIlB,QAAA,CAAA,GAAY,MAAA;AAAA"}
@@ -0,0 +1,2 @@
1
+ import{coerceToStringRecord as e}from"./coerce.mjs";var t=class{supportsFiles=!1;vars;constructor(t){this.vars=e(t)}readVars(){return{...this.vars}}};export{t as ManualEnvSource};
2
+ //# sourceMappingURL=ManualEnvSource.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManualEnvSource.mjs","names":[],"sources":["../../../src/sources/ManualEnvSource.ts"],"sourcesContent":["import { coerceToStringRecord } from './coerce';\n\nimport type { BareEnvSource } from '../types';\n\n/**\n * Environment source seeded from an object you provide: the config your bundler injects into a browser\n * build (Vite's `import.meta.env`, a webpack `DefinePlugin` global), a test fixture, or any other plain\n * object. Pass it straight through; non-string values are JSON-stringified so the converters still apply.\n * It has no filesystem, so the `.env` cascade and file-based APIs do not apply.\n * @public\n */\nexport class ManualEnvSource implements BareEnvSource {\n readonly supportsFiles = false;\n private readonly vars: Record<string, string>;\n\n constructor(vars: Record<string, unknown>) {\n this.vars = coerceToStringRecord(vars);\n }\n\n readVars(): Record<string, string> {\n return { ...this.vars };\n }\n}\n"],"mappings":"oDAWA,IAAa,EAAb,KAAsD,CAClD,cAAyB,GACzB,KAEA,YAAY,EAA+B,CACvC,KAAK,KAAO,EAAqB,CAAI,CACzC,CAEA,UAAmC,CAC/B,MAAO,CAAE,GAAG,KAAK,IAAK,CAC1B,CACJ"}
@@ -0,0 +1,2 @@
1
+ const e=require("../_virtual/_rolldown/runtime.cjs");let t=require("node:process");t=e.__toESM(t,1);let n=require("node:fs");n=e.__toESM(n,1);let r=require("node:path"),i=require("node:url");var a=class{supportsFiles=!0;readVars(){return{...t.default.env}}readFile(e,t){try{return n.default.readFileSync(e,t)}catch{return}}normalizeBaseDir(e){return e instanceof URL||e.startsWith(`file:`)?(0,r.dirname)((0,i.fileURLToPath)(e)):(0,r.resolve)(e)}resolvePath(e,t){return(0,r.isAbsolute)(t)?t:(0,r.join)(e,t)}writeVars(e){for(let[n,r]of Object.entries(e))t.default.env[n]=r}};exports.NodeEnvSource=a;
2
+ //# sourceMappingURL=NodeEnvSource.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeEnvSource.cjs","names":["process","fs"],"sources":["../../../src/sources/NodeEnvSource.ts"],"sourcesContent":["import fs from 'node:fs';\nimport { dirname, isAbsolute, join, resolve } from 'node:path';\nimport process from 'node:process';\nimport { fileURLToPath } from 'node:url';\n\nimport type { FileEnvSource } from '../types';\n\n/**\n * Default environment source on Node, Bun, and Deno: a snapshot of `process.env`. Its\n * `supportsFiles` is `true`, so the engine also layers the `.env` cascade on top, resolves\n * `baseDir`, and can mirror loaded keys back to `process.env`.\n * @public\n */\nexport class NodeEnvSource implements FileEnvSource {\n readonly supportsFiles = true;\n\n readVars(): Record<string, string> {\n // Clone so the loader and downstream reads never mutate process.env.\n return { ...(process.env as Record<string, string>) };\n }\n\n readFile(path: string, encoding: string): string | undefined {\n try {\n // justified: our public encoding type is `string`; fs needs the BufferEncoding subset.\n return fs.readFileSync(path, encoding as BufferEncoding);\n } catch {\n return undefined;\n }\n }\n\n // `file:` URLs resolve to their containing directory; plain paths (`import.meta.dirname`, `__dirname`) are taken as the directory.\n normalizeBaseDir(value: string | URL): string {\n if (value instanceof URL) return dirname(fileURLToPath(value));\n if (value.startsWith('file:')) return dirname(fileURLToPath(value));\n return resolve(value);\n }\n\n resolvePath(baseDir: string, candidate: string): string {\n if (isAbsolute(candidate)) return candidate;\n return join(baseDir, candidate);\n }\n\n writeVars(vars: Record<string, string>): void {\n for (const [key, value] of Object.entries(vars)) {\n process.env[key] = value;\n }\n }\n}\n"],"mappings":"+LAaA,IAAa,EAAb,KAAoD,CAChD,cAAyB,GAEzB,UAAmC,CAE/B,MAAO,CAAE,GAAIA,EAAAA,QAAQ,GAA+B,CACxD,CAEA,SAAS,EAAc,EAAsC,CACzD,GAAI,CAEA,OAAOC,EAAAA,QAAG,aAAa,EAAM,CAA0B,CAC3D,MAAQ,CACJ,MACJ,CACJ,CAGA,iBAAiB,EAA6B,CAG1C,OAFI,aAAiB,KACjB,EAAM,WAAW,OAAO,GAAG,EAAA,EAAA,UAAA,EAAA,EAAA,eAA6B,CAAK,CAAC,GAClE,EAAA,EAAA,SAAe,CAAK,CACxB,CAEA,YAAY,EAAiB,EAA2B,CAEpD,OADA,EAAA,EAAA,YAAe,CAAS,EAAU,GAClC,EAAA,EAAA,MAAY,EAAS,CAAS,CAClC,CAEA,UAAU,EAAoC,CAC1C,IAAK,GAAM,CAAC,EAAK,KAAU,OAAO,QAAQ,CAAI,EAC1C,EAAA,QAAQ,IAAI,GAAO,CAE3B,CACJ"}
@@ -0,0 +1,20 @@
1
+ import { FileEnvSource } from "../types/Source.cjs";
2
+
3
+ //#region src/sources/NodeEnvSource.d.ts
4
+ /**
5
+ * Default environment source on Node, Bun, and Deno: a snapshot of `process.env`. Its
6
+ * `supportsFiles` is `true`, so the engine also layers the `.env` cascade on top, resolves
7
+ * `baseDir`, and can mirror loaded keys back to `process.env`.
8
+ * @public
9
+ */
10
+ declare class NodeEnvSource implements FileEnvSource {
11
+ readonly supportsFiles = true;
12
+ readVars(): Record<string, string>;
13
+ readFile(path: string, encoding: string): string | undefined;
14
+ normalizeBaseDir(value: string | URL): string;
15
+ resolvePath(baseDir: string, candidate: string): string;
16
+ writeVars(vars: Record<string, string>): void;
17
+ }
18
+ //#endregion
19
+ export { NodeEnvSource };
20
+ //# sourceMappingURL=NodeEnvSource.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeEnvSource.d.cts","names":[],"sources":["../../../src/sources/NodeEnvSource.ts"],"mappings":";;;;;AAaA;;;;cAAa,aAAA,YAAyB,aAAA;EAAA,SACzB,aAAA;EAET,QAAA,CAAA,GAAY,MAAA;EAKZ,QAAA,CAAS,IAAA,UAAc,QAAA;EAUvB,gBAAA,CAAiB,KAAA,WAAgB,GAAA;EAMjC,WAAA,CAAY,OAAA,UAAiB,SAAA;EAK7B,SAAA,CAAU,IAAA,EAAM,MAAA;AAAA"}
@@ -0,0 +1,20 @@
1
+ import { FileEnvSource } from "../types/Source.mjs";
2
+
3
+ //#region src/sources/NodeEnvSource.d.ts
4
+ /**
5
+ * Default environment source on Node, Bun, and Deno: a snapshot of `process.env`. Its
6
+ * `supportsFiles` is `true`, so the engine also layers the `.env` cascade on top, resolves
7
+ * `baseDir`, and can mirror loaded keys back to `process.env`.
8
+ * @public
9
+ */
10
+ declare class NodeEnvSource implements FileEnvSource {
11
+ readonly supportsFiles = true;
12
+ readVars(): Record<string, string>;
13
+ readFile(path: string, encoding: string): string | undefined;
14
+ normalizeBaseDir(value: string | URL): string;
15
+ resolvePath(baseDir: string, candidate: string): string;
16
+ writeVars(vars: Record<string, string>): void;
17
+ }
18
+ //#endregion
19
+ export { NodeEnvSource };
20
+ //# sourceMappingURL=NodeEnvSource.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeEnvSource.d.mts","names":[],"sources":["../../../src/sources/NodeEnvSource.ts"],"mappings":";;;;;AAaA;;;;cAAa,aAAA,YAAyB,aAAA;EAAA,SACzB,aAAA;EAET,QAAA,CAAA,GAAY,MAAA;EAKZ,QAAA,CAAS,IAAA,UAAc,QAAA;EAUvB,gBAAA,CAAiB,KAAA,WAAgB,GAAA;EAMjC,WAAA,CAAY,OAAA,UAAiB,SAAA;EAK7B,SAAA,CAAU,IAAA,EAAM,MAAA;AAAA"}
@@ -0,0 +1,2 @@
1
+ import e from"node:process";import t from"node:fs";import{dirname as n,isAbsolute as r,join as i,resolve as a}from"node:path";import{fileURLToPath as o}from"node:url";var s=class{supportsFiles=!0;readVars(){return{...e.env}}readFile(e,n){try{return t.readFileSync(e,n)}catch{return}}normalizeBaseDir(e){return e instanceof URL||e.startsWith(`file:`)?n(o(e)):a(e)}resolvePath(e,t){return r(t)?t:i(e,t)}writeVars(t){for(let[n,r]of Object.entries(t))e.env[n]=r}};export{s as NodeEnvSource};
2
+ //# sourceMappingURL=NodeEnvSource.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodeEnvSource.mjs","names":[],"sources":["../../../src/sources/NodeEnvSource.ts"],"sourcesContent":["import fs from 'node:fs';\nimport { dirname, isAbsolute, join, resolve } from 'node:path';\nimport process from 'node:process';\nimport { fileURLToPath } from 'node:url';\n\nimport type { FileEnvSource } from '../types';\n\n/**\n * Default environment source on Node, Bun, and Deno: a snapshot of `process.env`. Its\n * `supportsFiles` is `true`, so the engine also layers the `.env` cascade on top, resolves\n * `baseDir`, and can mirror loaded keys back to `process.env`.\n * @public\n */\nexport class NodeEnvSource implements FileEnvSource {\n readonly supportsFiles = true;\n\n readVars(): Record<string, string> {\n // Clone so the loader and downstream reads never mutate process.env.\n return { ...(process.env as Record<string, string>) };\n }\n\n readFile(path: string, encoding: string): string | undefined {\n try {\n // justified: our public encoding type is `string`; fs needs the BufferEncoding subset.\n return fs.readFileSync(path, encoding as BufferEncoding);\n } catch {\n return undefined;\n }\n }\n\n // `file:` URLs resolve to their containing directory; plain paths (`import.meta.dirname`, `__dirname`) are taken as the directory.\n normalizeBaseDir(value: string | URL): string {\n if (value instanceof URL) return dirname(fileURLToPath(value));\n if (value.startsWith('file:')) return dirname(fileURLToPath(value));\n return resolve(value);\n }\n\n resolvePath(baseDir: string, candidate: string): string {\n if (isAbsolute(candidate)) return candidate;\n return join(baseDir, candidate);\n }\n\n writeVars(vars: Record<string, string>): void {\n for (const [key, value] of Object.entries(vars)) {\n process.env[key] = value;\n }\n }\n}\n"],"mappings":"uKAaA,IAAa,EAAb,KAAoD,CAChD,cAAyB,GAEzB,UAAmC,CAE/B,MAAO,CAAE,GAAI,EAAQ,GAA+B,CACxD,CAEA,SAAS,EAAc,EAAsC,CACzD,GAAI,CAEA,OAAO,EAAG,aAAa,EAAM,CAA0B,CAC3D,MAAQ,CACJ,MACJ,CACJ,CAGA,iBAAiB,EAA6B,CAG1C,OAFI,aAAiB,KACjB,EAAM,WAAW,OAAO,EAAU,EAAQ,EAAc,CAAK,CAAC,EAC3D,EAAQ,CAAK,CACxB,CAEA,YAAY,EAAiB,EAA2B,CAEpD,OADI,EAAW,CAAS,EAAU,EAC3B,EAAK,EAAS,CAAS,CAClC,CAEA,UAAU,EAAoC,CAC1C,IAAK,GAAM,CAAC,EAAK,KAAU,OAAO,QAAQ,CAAI,EAC1C,EAAQ,IAAI,GAAO,CAE3B,CACJ"}
@@ -0,0 +1,2 @@
1
+ const e=require("../Error.cjs");var t=class{supportsFiles=!1;readVars(){throw new e.EnvaptError(307,`No environment source is bound. Call Envapter.useSource(...) with a source such as new ManualEnvSource({...}) or new WorkerEnvSource(env) before reading.`)}};exports.UnboundEnvSource=t;
2
+ //# sourceMappingURL=UnboundEnvSource.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UnboundEnvSource.cjs","names":["EnvaptError"],"sources":["../../../src/sources/UnboundEnvSource.ts"],"sourcesContent":["import { EnvaptError, EnvaptErrorCodes } from '../Error';\n\nimport type { BareEnvSource } from '../types';\n\n/**\n * The default source until one is bound. Every read throws NoSourceBound so a forgotten `useSource`\n * surfaces at read time instead of silently yielding nothing. The Node entry binds {@link NodeEnvSource}\n * at load; browser and Workers bundles must call `Envapter.useSource(...)` before reading.\n * @internal\n */\nexport class UnboundEnvSource implements BareEnvSource {\n readonly supportsFiles = false;\n\n readVars(): Record<string, string> {\n throw new EnvaptError(\n EnvaptErrorCodes.NoSourceBound,\n 'No environment source is bound. Call Envapter.useSource(...) with a source such as new ManualEnvSource({...}) or new WorkerEnvSource(env) before reading.'\n );\n }\n}\n"],"mappings":"gCAUA,IAAa,EAAb,KAAuD,CACnD,cAAyB,GAEzB,UAAmC,CAC/B,MAAM,IAAIA,EAAAA,YAAAA,IAEN,2JACJ,CACJ,CACJ"}
@@ -0,0 +1,2 @@
1
+ import{EnvaptError as e}from"../Error.mjs";var t=class{supportsFiles=!1;readVars(){throw new e(307,`No environment source is bound. Call Envapter.useSource(...) with a source such as new ManualEnvSource({...}) or new WorkerEnvSource(env) before reading.`)}};export{t as UnboundEnvSource};
2
+ //# sourceMappingURL=UnboundEnvSource.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UnboundEnvSource.mjs","names":[],"sources":["../../../src/sources/UnboundEnvSource.ts"],"sourcesContent":["import { EnvaptError, EnvaptErrorCodes } from '../Error';\n\nimport type { BareEnvSource } from '../types';\n\n/**\n * The default source until one is bound. Every read throws NoSourceBound so a forgotten `useSource`\n * surfaces at read time instead of silently yielding nothing. The Node entry binds {@link NodeEnvSource}\n * at load; browser and Workers bundles must call `Envapter.useSource(...)` before reading.\n * @internal\n */\nexport class UnboundEnvSource implements BareEnvSource {\n readonly supportsFiles = false;\n\n readVars(): Record<string, string> {\n throw new EnvaptError(\n EnvaptErrorCodes.NoSourceBound,\n 'No environment source is bound. Call Envapter.useSource(...) with a source such as new ManualEnvSource({...}) or new WorkerEnvSource(env) before reading.'\n );\n }\n}\n"],"mappings":"2CAUA,IAAa,EAAb,KAAuD,CACnD,cAAyB,GAEzB,UAAmC,CAC/B,MAAM,IAAI,EAAA,IAEN,2JACJ,CACJ,CACJ"}
@@ -0,0 +1,2 @@
1
+ const e=require("./coerce.cjs");var t=class{supportsFiles=!1;vars;constructor(t){this.vars=e.coerceToStringRecord(t)}readVars(){return{...this.vars}}};exports.WorkerEnvSource=t;
2
+ //# sourceMappingURL=WorkerEnvSource.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkerEnvSource.cjs","names":["coerceToStringRecord"],"sources":["../../../src/sources/WorkerEnvSource.ts"],"sourcesContent":["import { coerceToStringRecord } from './coerce';\n\nimport type { BareEnvSource } from '../types';\n\n/**\n * Environment source for Cloudflare Workers, seeded from the `env` binding. String bindings pass\n * through; non-string bindings are JSON-stringified so the converters still apply, and so must be\n * JSON-serializable (a `bigint` or circular value throws). No filesystem, so the `.env` cascade and\n * file-based APIs do not apply.\n * @public\n */\nexport class WorkerEnvSource implements BareEnvSource {\n readonly supportsFiles = false;\n private readonly vars: Record<string, string>;\n\n constructor(env: Record<string, unknown>) {\n this.vars = coerceToStringRecord(env);\n }\n\n readVars(): Record<string, string> {\n return { ...this.vars };\n }\n}\n"],"mappings":"gCAWA,IAAa,EAAb,KAAsD,CAClD,cAAyB,GACzB,KAEA,YAAY,EAA8B,CACtC,KAAK,KAAOA,EAAAA,qBAAqB,CAAG,CACxC,CAEA,UAAmC,CAC/B,MAAO,CAAE,GAAG,KAAK,IAAK,CAC1B,CACJ"}
@@ -0,0 +1,19 @@
1
+ import { BareEnvSource } from "../types/Source.cjs";
2
+
3
+ //#region src/sources/WorkerEnvSource.d.ts
4
+ /**
5
+ * Environment source for Cloudflare Workers, seeded from the `env` binding. String bindings pass
6
+ * through; non-string bindings are JSON-stringified so the converters still apply, and so must be
7
+ * JSON-serializable (a `bigint` or circular value throws). No filesystem, so the `.env` cascade and
8
+ * file-based APIs do not apply.
9
+ * @public
10
+ */
11
+ declare class WorkerEnvSource implements BareEnvSource {
12
+ readonly supportsFiles = false;
13
+ private readonly vars;
14
+ constructor(env: Record<string, unknown>);
15
+ readVars(): Record<string, string>;
16
+ }
17
+ //#endregion
18
+ export { WorkerEnvSource };
19
+ //# sourceMappingURL=WorkerEnvSource.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkerEnvSource.d.cts","names":[],"sources":["../../../src/sources/WorkerEnvSource.ts"],"mappings":";;;;;AAWA;;;;;cAAa,eAAA,YAA2B,aAAA;EAAA,SAC3B,aAAA;EAAA,iBACQ,IAAA;cAEL,GAAA,EAAK,MAAA;EAIjB,QAAA,CAAA,GAAY,MAAA;AAAA"}
@@ -0,0 +1,19 @@
1
+ import { BareEnvSource } from "../types/Source.mjs";
2
+
3
+ //#region src/sources/WorkerEnvSource.d.ts
4
+ /**
5
+ * Environment source for Cloudflare Workers, seeded from the `env` binding. String bindings pass
6
+ * through; non-string bindings are JSON-stringified so the converters still apply, and so must be
7
+ * JSON-serializable (a `bigint` or circular value throws). No filesystem, so the `.env` cascade and
8
+ * file-based APIs do not apply.
9
+ * @public
10
+ */
11
+ declare class WorkerEnvSource implements BareEnvSource {
12
+ readonly supportsFiles = false;
13
+ private readonly vars;
14
+ constructor(env: Record<string, unknown>);
15
+ readVars(): Record<string, string>;
16
+ }
17
+ //#endregion
18
+ export { WorkerEnvSource };
19
+ //# sourceMappingURL=WorkerEnvSource.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkerEnvSource.d.mts","names":[],"sources":["../../../src/sources/WorkerEnvSource.ts"],"mappings":";;;;;AAWA;;;;;cAAa,eAAA,YAA2B,aAAA;EAAA,SAC3B,aAAA;EAAA,iBACQ,IAAA;cAEL,GAAA,EAAK,MAAA;EAIjB,QAAA,CAAA,GAAY,MAAA;AAAA"}
@@ -0,0 +1,2 @@
1
+ import{coerceToStringRecord as e}from"./coerce.mjs";var t=class{supportsFiles=!1;vars;constructor(t){this.vars=e(t)}readVars(){return{...this.vars}}};export{t as WorkerEnvSource};
2
+ //# sourceMappingURL=WorkerEnvSource.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkerEnvSource.mjs","names":[],"sources":["../../../src/sources/WorkerEnvSource.ts"],"sourcesContent":["import { coerceToStringRecord } from './coerce';\n\nimport type { BareEnvSource } from '../types';\n\n/**\n * Environment source for Cloudflare Workers, seeded from the `env` binding. String bindings pass\n * through; non-string bindings are JSON-stringified so the converters still apply, and so must be\n * JSON-serializable (a `bigint` or circular value throws). No filesystem, so the `.env` cascade and\n * file-based APIs do not apply.\n * @public\n */\nexport class WorkerEnvSource implements BareEnvSource {\n readonly supportsFiles = false;\n private readonly vars: Record<string, string>;\n\n constructor(env: Record<string, unknown>) {\n this.vars = coerceToStringRecord(env);\n }\n\n readVars(): Record<string, string> {\n return { ...this.vars };\n }\n}\n"],"mappings":"oDAWA,IAAa,EAAb,KAAsD,CAClD,cAAyB,GACzB,KAEA,YAAY,EAA8B,CACtC,KAAK,KAAO,EAAqB,CAAG,CACxC,CAEA,UAAmC,CAC/B,MAAO,CAAE,GAAG,KAAK,IAAK,CAC1B,CACJ"}
@@ -0,0 +1,2 @@
1
+ function e(e){let t={};for(let[n,r]of Object.entries(e)){if(typeof r==`string`){t[n]=r;continue}let e=JSON.stringify(r);e!==void 0&&(t[n]=e)}return t}exports.coerceToStringRecord=e;
2
+ //# sourceMappingURL=coerce.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coerce.cjs","names":[],"sources":["../../../src/sources/coerce.ts"],"sourcesContent":["// Shared by ManualEnvSource and WorkerEnvSource. The returned record is fresh, so a caller mutating its\n// object later can't leak into the source; non-string values are JSON-stringified.\nexport function coerceToStringRecord(env: Record<string, unknown>): Record<string, string> {\n const snapshot: Record<string, string> = {};\n for (const [key, value] of Object.entries(env)) {\n if (typeof value === 'string') {\n snapshot[key] = value;\n continue;\n }\n const encoded = JSON.stringify(value);\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- TS lib mistypes JSON.stringify's return as always-string; it is string | undefined at runtime\n if (encoded !== undefined) snapshot[key] = encoded;\n }\n return snapshot;\n}\n"],"mappings":"AAEA,SAAgB,EAAqB,EAAsD,CACvF,IAAM,EAAmC,CAAC,EAC1C,IAAK,GAAM,CAAC,EAAK,KAAU,OAAO,QAAQ,CAAG,EAAG,CAC5C,GAAI,OAAO,GAAU,SAAU,CAC3B,EAAS,GAAO,EAChB,QACJ,CACA,IAAM,EAAU,KAAK,UAAU,CAAK,EAEhC,IAAY,IAAA,KAAW,EAAS,GAAO,EAC/C,CACA,OAAO,CACX"}
@@ -0,0 +1,2 @@
1
+ function e(e){let t={};for(let[n,r]of Object.entries(e)){if(typeof r==`string`){t[n]=r;continue}let e=JSON.stringify(r);e!==void 0&&(t[n]=e)}return t}export{e as coerceToStringRecord};
2
+ //# sourceMappingURL=coerce.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coerce.mjs","names":[],"sources":["../../../src/sources/coerce.ts"],"sourcesContent":["// Shared by ManualEnvSource and WorkerEnvSource. The returned record is fresh, so a caller mutating its\n// object later can't leak into the source; non-string values are JSON-stringified.\nexport function coerceToStringRecord(env: Record<string, unknown>): Record<string, string> {\n const snapshot: Record<string, string> = {};\n for (const [key, value] of Object.entries(env)) {\n if (typeof value === 'string') {\n snapshot[key] = value;\n continue;\n }\n const encoded = JSON.stringify(value);\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- TS lib mistypes JSON.stringify's return as always-string; it is string | undefined at runtime\n if (encoded !== undefined) snapshot[key] = encoded;\n }\n return snapshot;\n}\n"],"mappings":"AAEA,SAAgB,EAAqB,EAAsD,CACvF,IAAM,EAAmC,CAAC,EAC1C,IAAK,GAAM,CAAC,EAAK,KAAU,OAAO,QAAQ,CAAG,EAAG,CAC5C,GAAI,OAAO,GAAU,SAAU,CAC3B,EAAS,GAAO,EAChB,QACJ,CACA,IAAM,EAAU,KAAK,UAAU,CAAK,EAEhC,IAAY,IAAA,KAAW,EAAS,GAAO,EAC/C,CACA,OAAO,CACX"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Conversion.d.cts","names":[],"sources":["../../../src/types/Conversion.ts"],"mappings":";;;;;AAAgG;;;KAO3F,gBAAA,GAAmB,cAAc;AAAA;AAAA;;;AAAA,KAMjC,oBAAA,UAA8B,MAAA,UAAgB,MAAA,UAAgB,OAAA,UAAiB,MAAA,UAAgB,MAAA;;;;;KAM/F,SAAA;;;;;;;;KASA,iBAAA,yBAA0C,GAAA,EAAK,SAAA,EAAW,QAAA,GAAW,SAAA,KAAc,SAAA;AAfkB;;;;AAM5F;AAN4F,KAsBrG,eAAA,cAA6B,oBAAA,GAAuB,gBAAA,GAAmB,OAAA,GAAU,iBAAA,CAAkB,SAAA;AAAA,KAEnG,aAAA;AAAA,KACA,SAAA,GAAY,SAAS;AAAA,UAChB,UAAA;EAAA,CACL,GAAA,WAAc,SAAS;AAAA;;;;;KAOvB,SAAA,GAAY,aAAA,GAAgB,SAAA,GAAY,UAAA;AAAA,UAEnC,YAAA;EACN,MAAA;EACA,MAAA;EACA,OAAA;EACA,MAAA;EACA,MAAA;EACA,OAAA;EACA,KAAA;EACA,IAAA,EAAM,SAAA;EACN,GAAA,EAAK,GAAA;EACL,MAAA,EAAQ,MAAA;EACR,IAAA,EAAM,IAAA;EACN,IAAA;AAAA;;;;;KAOC,0BAAA,sBAAgD,gBAAA,IAAoB,YAAA,CAAa,YAAA;;;;AAjC2B;KAuC5G,gCAAA,GAAmC,YAAA,CAAa,gBAAgB;;;;AArCnD;KA2Cb,wBAAA,OACE,IAAA,EAAM,UAAA,KAAe,IAAA,YAAgB,gCAAA,MACvC,gCAAA;;;;AA5CqB;KAkDrB,uBAAA,GAA0B,MAAA,CAAO,gBAAA,EAAkB,wBAAA;;;;AAhD5B;KAsDvB,QAAA;;;;;KAMA,YAAA,wBAAoC,QAAQ;;;;;;KAO5C,iBAAA,0BAA2C,SAAA,qBAA8B,UAAA,eAAyB,UAAA;AA5DhD;AAAA;;;;;;;;AAAA,KAuElD,wBAAA,eACD,UAAA,SAAmB,OAAA,kBACb,OAAA,SAAgB,gBAAA,GACZ,YAAA,CAAa,OAAA,MACb,OAAA,SAAgB,sBAAA,mBACd,QAAA,aAEN,UAAA,SAAmB,gBAAA,GACjB,0BAAA,CAA2B,UAAA;;;;;;;KASlC,0BAAA,eAAyC,UAAA,kBACxC,YAAA,GACA,UAAA,SAAmB,OAAA,kBACjB,OAAA,kBACI,YAAA,KACA,wBAAA,CAAyB,UAAA,IAC7B,wBAAA,CAAyB,UAAA;;;;;KAM5B,uBAAA,sCAA6D,iBAAA,CAC9D,wBAAA,CAAyB,UAAA,GACzB,SAAA;;;;;KAOC,wBAAA,sBAA8C,oBAAA,IAAwB,YAAA,gBAA4B,MAAA,YAEjG,YAAA,gBAA4B,MAAA,YAE1B,YAAA,gBAA4B,OAAA,aAE1B,YAAA,gBAA4B,MAAA,YAE1B,YAAA,gBAA4B,MAAA;AAvGhC;AAAA;;;AAAA,KA+GH,0BAAA,8EACD,SAAA,2BAEM,SAAA,2BAEE,SAAA,6BAEE,SAAA,2BAEE,SAAA"}
@@ -0,0 +1,128 @@
1
+ import { ArrayOf, ConverterToken, CustomElementConverter } from "../converters/Converters.mjs";
2
+
3
+ //#region src/types/Conversion.d.ts
4
+ /**
5
+ * Scalar built-in converter tokens (e.g. `'number'`, `'time'`).
6
+ * Excludes the array builder (see {@link ArrayOf}).
7
+ * @public
8
+ */
9
+ type BuiltInConverter = ConverterToken;
10
+ /**
11
+ * Primitive types supported by Envapter
12
+ * @public
13
+ */
14
+ type PrimitiveConstructor = typeof String | typeof Number | typeof Boolean | typeof BigInt | typeof Symbol;
15
+ /**
16
+ * String value from a .env file or environment variable
17
+ * @public
18
+ */
19
+ type BaseInput = string | undefined;
20
+ /**
21
+ * Custom parser function type for environment variables
22
+ * @param raw - Raw string value from environment
23
+ * @param fallback - Fallback value if parsing fails
24
+ * @returns Parsed value of type T
25
+ * @public
26
+ */
27
+ type ConverterFunction<TFallback = unknown> = (raw: BaseInput, fallback?: TFallback) => TFallback;
28
+ /**
29
+ * Environment variable converter: a primitive constructor, a built-in scalar token, an `ArrayOf<...>`
30
+ * produced by {@link Converters.array}, or a custom parser function.
31
+ * @public
32
+ */
33
+ type EnvaptConverter<TFallback> = PrimitiveConstructor | BuiltInConverter | ArrayOf | ConverterFunction<TFallback>;
34
+ type JsonPrimitive = string | number | boolean | null;
35
+ type JsonArray = JsonValue[];
36
+ interface JsonObject {
37
+ [key: string]: JsonValue;
38
+ }
39
+ /**
40
+ * JSON value types for custom converters
41
+ * @public
42
+ */
43
+ type JsonValue = JsonPrimitive | JsonArray | JsonObject;
44
+ interface ConverterMap {
45
+ string: string;
46
+ number: number;
47
+ boolean: boolean;
48
+ bigint: bigint;
49
+ symbol: symbol;
50
+ integer: number;
51
+ float: number;
52
+ json: JsonValue;
53
+ url: URL;
54
+ regexp: RegExp;
55
+ date: Date;
56
+ time: number;
57
+ }
58
+ /**
59
+ * Type mapping for built-in scalar converters to their return types
60
+ * @internal
61
+ */
62
+ type BuiltInConverterReturnType<ConverterKey extends BuiltInConverter> = ConverterMap[ConverterKey];
63
+ /**
64
+ * Return type for built-in converter functions
65
+ * @internal
66
+ */
67
+ type ReturnValuesOfConverterFunctions = ConverterMap[BuiltInConverter];
68
+ /**
69
+ * Function type for built-in converter functions
70
+ * @internal
71
+ */
72
+ type BuiltInConverterFunction = (...args: Parameters<(...args: any[]) => ReturnValuesOfConverterFunctions>) => ReturnValuesOfConverterFunctions | undefined;
73
+ /**
74
+ * Map of built-in converter functions
75
+ * @internal
76
+ */
77
+ type MapOfConverterFunctions = Record<BuiltInConverter, BuiltInConverterFunction>;
78
+ /**
79
+ * Time unit types for duration conversions
80
+ * @internal
81
+ */
82
+ type TimeUnit = 'ms' | 's' | 'm' | 'h' | 'd' | 'w';
83
+ /**
84
+ * Fallback type for time duration conversions
85
+ * @public
86
+ */
87
+ type TimeFallback = number | `${number}${TimeUnit}`;
88
+ /**
89
+ * Helper type for getter methods that conditionally return undefined based on whether a fallback is provided
90
+ * If fallback is provided, return ReturnType. If no fallback (undefined), return ReturnType | undefined.
91
+ * @internal
92
+ */
93
+ type ConditionalReturn<ReturnType, TFallback> = TFallback extends undefined ? ReturnType | undefined : ReturnType;
94
+ /**
95
+ * Inferred return type for a converter.
96
+ *
97
+ * - `ArrayOf<E>` resolves to the element type's return as an array. When `E` is a custom
98
+ * function, the function's return type drives the array element. When `E` is a scalar
99
+ * token, `ConverterMap` provides the element type.
100
+ * - Bare scalar tokens resolve through `ConverterMap`.
101
+ * @internal
102
+ */
103
+ type InferConverterReturnType<TConverter> = TConverter extends ArrayOf<infer Element> ? Element extends BuiltInConverter ? ConverterMap[Element][] : Element extends CustomElementConverter<infer Returned> ? Returned[] : never : TConverter extends BuiltInConverter ? BuiltInConverterReturnType<TConverter> : never;
104
+ /**
105
+ * Type inference for the *fallback* slot of a converter. `Converters.Time` (scalar or array
106
+ * element) accepts {@link TimeFallback} / `TimeFallback[]`; everything else mirrors the
107
+ * return type. Add future asymmetric fallback/return converters to this conditional.
108
+ * @internal
109
+ */
110
+ type InferConverterFallbackType<TConverter> = TConverter extends 'time' ? TimeFallback : TConverter extends ArrayOf<infer Element> ? Element extends 'time' ? TimeFallback[] : InferConverterReturnType<TConverter> : InferConverterReturnType<TConverter>;
111
+ /**
112
+ * Complete type inference for advanced converter methods
113
+ * @internal
114
+ */
115
+ type AdvancedConverterReturn<TConverter, TFallback = undefined> = ConditionalReturn<InferConverterReturnType<TConverter>, TFallback>;
116
+ /**
117
+ * Type inference for primitive constructor return types
118
+ * @internal
119
+ */
120
+ type InferPrimitiveReturnType<TConstructor extends PrimitiveConstructor> = TConstructor extends typeof String ? string : TConstructor extends typeof Number ? number : TConstructor extends typeof Boolean ? boolean : TConstructor extends typeof BigInt ? bigint : TConstructor extends typeof Symbol ? symbol : never;
121
+ /**
122
+ * Type inference for primitive fallback values
123
+ * @internal
124
+ */
125
+ type InferPrimitiveFallbackType<TFallback extends string | number | boolean | bigint | symbol | undefined> = TFallback extends string ? string : TFallback extends number ? number : TFallback extends boolean ? boolean : TFallback extends bigint ? bigint : TFallback extends symbol ? symbol : undefined;
126
+ //#endregion
127
+ export type { AdvancedConverterReturn, BuiltInConverter, BuiltInConverterFunction, ConditionalReturn, ConverterFunction, EnvaptConverter, InferConverterFallbackType, InferConverterReturnType, InferPrimitiveFallbackType, InferPrimitiveReturnType, JsonValue, MapOfConverterFunctions, PrimitiveConstructor, TimeFallback, TimeUnit };
128
+ //# sourceMappingURL=Conversion.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Conversion.d.mts","names":[],"sources":["../../../src/types/Conversion.ts"],"mappings":";;;;;AAAgG;;;KAO3F,gBAAA,GAAmB,cAAc;AAAA;AAAA;;;AAAA,KAMjC,oBAAA,UAA8B,MAAA,UAAgB,MAAA,UAAgB,OAAA,UAAiB,MAAA,UAAgB,MAAA;;;;;KAM/F,SAAA;;;;;;;;KASA,iBAAA,yBAA0C,GAAA,EAAK,SAAA,EAAW,QAAA,GAAW,SAAA,KAAc,SAAA;AAfkB;;;;AAM5F;AAN4F,KAsBrG,eAAA,cAA6B,oBAAA,GAAuB,gBAAA,GAAmB,OAAA,GAAU,iBAAA,CAAkB,SAAA;AAAA,KAEnG,aAAA;AAAA,KACA,SAAA,GAAY,SAAS;AAAA,UAChB,UAAA;EAAA,CACL,GAAA,WAAc,SAAS;AAAA;;;;;KAOvB,SAAA,GAAY,aAAA,GAAgB,SAAA,GAAY,UAAA;AAAA,UAEnC,YAAA;EACN,MAAA;EACA,MAAA;EACA,OAAA;EACA,MAAA;EACA,MAAA;EACA,OAAA;EACA,KAAA;EACA,IAAA,EAAM,SAAA;EACN,GAAA,EAAK,GAAA;EACL,MAAA,EAAQ,MAAA;EACR,IAAA,EAAM,IAAA;EACN,IAAA;AAAA;;;;;KAOC,0BAAA,sBAAgD,gBAAA,IAAoB,YAAA,CAAa,YAAA;;;;AAjC2B;KAuC5G,gCAAA,GAAmC,YAAA,CAAa,gBAAgB;;;;AArCnD;KA2Cb,wBAAA,OACE,IAAA,EAAM,UAAA,KAAe,IAAA,YAAgB,gCAAA,MACvC,gCAAA;;;;AA5CqB;KAkDrB,uBAAA,GAA0B,MAAA,CAAO,gBAAA,EAAkB,wBAAA;;;;AAhD5B;KAsDvB,QAAA;;;;;KAMA,YAAA,wBAAoC,QAAQ;;;;;;KAO5C,iBAAA,0BAA2C,SAAA,qBAA8B,UAAA,eAAyB,UAAA;AA5DhD;AAAA;;;;;;;;AAAA,KAuElD,wBAAA,eACD,UAAA,SAAmB,OAAA,kBACb,OAAA,SAAgB,gBAAA,GACZ,YAAA,CAAa,OAAA,MACb,OAAA,SAAgB,sBAAA,mBACd,QAAA,aAEN,UAAA,SAAmB,gBAAA,GACjB,0BAAA,CAA2B,UAAA;;;;;;;KASlC,0BAAA,eAAyC,UAAA,kBACxC,YAAA,GACA,UAAA,SAAmB,OAAA,kBACjB,OAAA,kBACI,YAAA,KACA,wBAAA,CAAyB,UAAA,IAC7B,wBAAA,CAAyB,UAAA;;;;;KAM5B,uBAAA,sCAA6D,iBAAA,CAC9D,wBAAA,CAAyB,UAAA,GACzB,SAAA;;;;;KAOC,wBAAA,sBAA8C,oBAAA,IAAwB,YAAA,gBAA4B,MAAA,YAEjG,YAAA,gBAA4B,MAAA,YAE1B,YAAA,gBAA4B,OAAA,aAE1B,YAAA,gBAA4B,MAAA,YAE1B,YAAA,gBAA4B,MAAA;AAvGhC;AAAA;;;AAAA,KA+GH,0BAAA,8EACD,SAAA,2BAEM,SAAA,2BAEE,SAAA,6BAEE,SAAA,2BAEE,SAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Env.d.cts","names":[],"sources":["../../../src/types/Env.ts"],"mappings":";;;;;KAIK,WAAA;AAAW;AAAA;;AAAA,UAKN,eAAA;EACN,MAAA,CAAO,GAAA,EAAK,WAAA;EACZ,GAAA,CAAI,GAAA,EAAK,WAAW,EAAE,GAAA;EACtB,QAAA;AAAA"}
@@ -0,0 +1,17 @@
1
+ //#region src/types/Env.d.ts
2
+ /**
3
+ * Accepted shape for environment variable lookups. Either a single key or an ordered list of keys.
4
+ * @public
5
+ */
6
+ type EnvKeyInput = string | readonly [string, ...string[]];
7
+ /**
8
+ * @internal
9
+ */
10
+ interface EnvapterService {
11
+ getRaw(key: EnvKeyInput): string | undefined;
12
+ get(key: EnvKeyInput, def?: string): string | undefined;
13
+ isStrict(): boolean;
14
+ }
15
+ //#endregion
16
+ export type { EnvKeyInput, EnvapterService };
17
+ //# sourceMappingURL=Env.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Env.d.mts","names":[],"sources":["../../../src/types/Env.ts"],"mappings":";;;;;KAIK,WAAA;AAAW;AAAA;;AAAA,UAKN,eAAA;EACN,MAAA,CAAO,GAAA,EAAK,WAAA;EACZ,GAAA,CAAI,GAAA,EAAK,WAAW,EAAE,GAAA;EACtB,QAAA;AAAA"}
@@ -13,7 +13,7 @@ interface EnvaptOptions<TFallback = string> {
13
13
  required?: boolean;
14
14
  }
15
15
  /**
16
- * Per-environment profile entry passed to {@link configureProfiles}.
16
+ * Per-environment profile entry passed to `Envapter.configureProfiles`.
17
17
  * @public
18
18
  */
19
19
  interface EnvProfile {
@@ -21,7 +21,7 @@ interface EnvProfile {
21
21
  paths: string | string[];
22
22
  }
23
23
  /**
24
- * Configuration object for {@link configureProfiles}. Maps each `Environment` to an optional
24
+ * Configuration object for `Envapter.configureProfiles`. Maps each `Environment` to an optional
25
25
  * profile override. Unspecified environments fall through to the default cascade behavior
26
26
  * (`.env.${env}.local`, `.env.local`, `.env.${env}`, `.env`).
27
27
  * @public
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Options.d.cts","names":[],"sources":["../../../src/types/Options.ts"],"mappings":";;;;;;AAC8D;;;UAOpD,aAAA;EACN,QAAA,GAAW,SAAA;EACX,SAAA,GAAY,eAAA,CAAgB,SAAA;EAC5B,QAAA;AAAA;;;;;UAOM,UAAA;EARsB;EAU5B,KAAK;AAAA;AATG;AAAA;;;;AASH;AATG,KAkBP,cAAA,GAAiB,OAAA,CAAQ,MAAA,CAAO,WAAA,EAAa,UAAA;EAA/B;;;;;EAMf,WAAA;AAAA"}