@arkenv/nextjs 1.0.0-alpha.0 → 1.0.0-alpha.10

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 (139) hide show
  1. package/LICENSE +3 -0
  2. package/README.md +3 -1
  3. package/dist/arkenv-internal-Cll5pV_F.cjs +2 -0
  4. package/dist/arkenv-internal-Cll5pV_F.cjs.map +1 -0
  5. package/dist/arkenv-internal-DEN5DTmX.js +2 -0
  6. package/dist/arkenv-internal-DEN5DTmX.js.map +1 -0
  7. package/dist/client.cjs +1 -1
  8. package/dist/client.cjs.map +1 -1
  9. package/dist/client.d.cts +13 -11
  10. package/dist/client.d.cts.map +1 -1
  11. package/dist/client.d.ts +13 -11
  12. package/dist/client.d.ts.map +1 -1
  13. package/dist/client.js +1 -1
  14. package/dist/client.js.map +1 -1
  15. package/dist/config/index.cjs +1 -0
  16. package/dist/config/index.d.cts +2 -0
  17. package/dist/config/index.d.ts +2 -0
  18. package/dist/config/index.js +1 -0
  19. package/dist/config-CStvXoN3.cjs +93 -0
  20. package/dist/config-CStvXoN3.cjs.map +1 -0
  21. package/dist/config-D2j45WDh.js +93 -0
  22. package/dist/config-D2j45WDh.js.map +1 -0
  23. package/dist/dist-Bof1Std7.cjs +2 -0
  24. package/dist/dist-Bof1Std7.cjs.map +1 -0
  25. package/dist/dist-DimRGXOV.js +2 -0
  26. package/dist/dist-DimRGXOV.js.map +1 -0
  27. package/dist/{index-Bn3pRiJy.d.ts → index-96RGPyfa.d.cts} +6 -3
  28. package/dist/index-96RGPyfa.d.cts.map +1 -0
  29. package/dist/index-BFQlm61W.d.ts +155 -0
  30. package/dist/index-BFQlm61W.d.ts.map +1 -0
  31. package/dist/index-CNzwVE5N.d.cts +155 -0
  32. package/dist/index-CNzwVE5N.d.cts.map +1 -0
  33. package/dist/{index-C6bpQ5GU.d.cts → index-bjEZwPUt.d.ts} +6 -3
  34. package/dist/index-bjEZwPUt.d.ts.map +1 -0
  35. package/dist/index.cjs +1 -1
  36. package/dist/index.cjs.map +1 -1
  37. package/dist/index.d.cts +32 -16
  38. package/dist/index.d.cts.map +1 -1
  39. package/dist/index.d.ts +32 -16
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +1 -1
  42. package/dist/index.js.map +1 -1
  43. package/dist/mock-server-only.cjs +2 -0
  44. package/dist/mock-server-only.cjs.map +1 -0
  45. package/dist/mock-server-only.d.cts +1 -0
  46. package/dist/mock-server-only.d.ts +1 -0
  47. package/dist/mock-server-only.js +2 -0
  48. package/dist/mock-server-only.js.map +1 -0
  49. package/dist/react-server.cjs +1 -1
  50. package/dist/react-server.cjs.map +1 -1
  51. package/dist/react-server.d.cts +25 -16
  52. package/dist/react-server.d.cts.map +1 -1
  53. package/dist/react-server.d.ts +25 -16
  54. package/dist/react-server.d.ts.map +1 -1
  55. package/dist/react-server.js +1 -1
  56. package/dist/react-server.js.map +1 -1
  57. package/dist/script-7FFqInPq.d.ts +21 -0
  58. package/dist/script-7FFqInPq.d.ts.map +1 -0
  59. package/dist/script-BHFJ0MU_.d.cts +21 -0
  60. package/dist/script-BHFJ0MU_.d.cts.map +1 -0
  61. package/dist/script-CZOPkAw3.js +2 -0
  62. package/dist/script-CZOPkAw3.js.map +1 -0
  63. package/dist/script-D-MYC2Uf.cjs +2 -0
  64. package/dist/script-D-MYC2Uf.cjs.map +1 -0
  65. package/dist/server.cjs +1 -1
  66. package/dist/server.cjs.map +1 -1
  67. package/dist/server.d.cts +14 -12
  68. package/dist/server.d.cts.map +1 -1
  69. package/dist/server.d.ts +14 -12
  70. package/dist/server.d.ts.map +1 -1
  71. package/dist/server.js +1 -1
  72. package/dist/server.js.map +1 -1
  73. package/dist/standard/client.cjs +2 -0
  74. package/dist/standard/client.cjs.map +1 -0
  75. package/dist/standard/client.d.cts +30 -0
  76. package/dist/standard/client.d.cts.map +1 -0
  77. package/dist/standard/client.d.ts +30 -0
  78. package/dist/standard/client.d.ts.map +1 -0
  79. package/dist/standard/client.js +2 -0
  80. package/dist/standard/client.js.map +1 -0
  81. package/dist/standard/config.cjs +2 -0
  82. package/dist/standard/config.cjs.map +1 -0
  83. package/dist/standard/config.d.cts +14 -0
  84. package/dist/standard/config.d.cts.map +1 -0
  85. package/dist/standard/config.d.ts +14 -0
  86. package/dist/standard/config.d.ts.map +1 -0
  87. package/dist/standard/config.js +2 -0
  88. package/dist/standard/config.js.map +1 -0
  89. package/dist/standard/index.cjs +2 -0
  90. package/dist/standard/index.cjs.map +1 -0
  91. package/dist/standard/index.d.cts +35 -0
  92. package/dist/standard/index.d.cts.map +1 -0
  93. package/dist/standard/index.d.ts +35 -0
  94. package/dist/standard/index.d.ts.map +1 -0
  95. package/dist/standard/index.js +2 -0
  96. package/dist/standard/index.js.map +1 -0
  97. package/dist/standard/server.cjs +2 -0
  98. package/dist/standard/server.cjs.map +1 -0
  99. package/dist/standard/server.d.cts +18 -0
  100. package/dist/standard/server.d.cts.map +1 -0
  101. package/dist/standard/server.d.ts +18 -0
  102. package/dist/standard/server.d.ts.map +1 -0
  103. package/dist/standard/server.js +2 -0
  104. package/dist/standard/server.js.map +1 -0
  105. package/dist/standard/shared.cjs +2 -0
  106. package/dist/standard/shared.cjs.map +1 -0
  107. package/dist/standard/shared.d.cts +13 -0
  108. package/dist/standard/shared.d.cts.map +1 -0
  109. package/dist/standard/shared.d.ts +13 -0
  110. package/dist/standard/shared.d.ts.map +1 -0
  111. package/dist/standard/shared.js +2 -0
  112. package/dist/standard/shared.js.map +1 -0
  113. package/dist/{types-DBqiLw5v.d.cts → types-44R9mgTa.d.cts} +2 -2
  114. package/dist/{types-DBqiLw5v.d.cts.map → types-44R9mgTa.d.cts.map} +1 -1
  115. package/dist/{types-BN4fEChy.d.ts → types-BzMGTYWv.d.ts} +2 -2
  116. package/dist/{types-BN4fEChy.d.ts.map → types-BzMGTYWv.d.ts.map} +1 -1
  117. package/package.json +67 -30
  118. package/dist/config.cjs +0 -78
  119. package/dist/config.cjs.map +0 -1
  120. package/dist/config.d.cts +0 -107
  121. package/dist/config.d.cts.map +0 -1
  122. package/dist/config.d.ts +0 -107
  123. package/dist/config.d.ts.map +0 -1
  124. package/dist/config.js +0 -78
  125. package/dist/config.js.map +0 -1
  126. package/dist/create-env-BfXQtLQM.js +0 -2
  127. package/dist/create-env-BfXQtLQM.js.map +0 -1
  128. package/dist/create-env-DDWVuzwL.cjs +0 -2
  129. package/dist/create-env-DDWVuzwL.cjs.map +0 -1
  130. package/dist/index-Bn3pRiJy.d.ts.map +0 -1
  131. package/dist/index-C6bpQ5GU.d.cts.map +0 -1
  132. package/dist/shared.cjs +0 -2
  133. package/dist/shared.cjs.map +0 -1
  134. package/dist/shared.d.cts +0 -17
  135. package/dist/shared.d.cts.map +0 -1
  136. package/dist/shared.d.ts +0 -17
  137. package/dist/shared.d.ts.map +0 -1
  138. package/dist/shared.js +0 -2
  139. package/dist/shared.js.map +0 -1
@@ -0,0 +1,30 @@
1
+ import { i as Dict, r as StandardSchemaV1 } from "../index-bjEZwPUt.js";
2
+
3
+ //#region src/standard/client.d.ts
4
+ /**
5
+ * Create a validated, type-safe environment configuration for Next.js applications (Client entry point, Standard Mode).
6
+ *
7
+ * @param schema A flat schema of `NEXT_PUBLIC_*` Standard Schema validators
8
+ * @param options Optional extends and runtimeEnv overrides
9
+ * @returns A validated, readonly environment variables object
10
+ */
11
+ declare function arkenv<const TSchema extends Record<string, StandardSchemaV1> = {}>(schema: TSchema & { [K in keyof TSchema]: K extends `NEXT_PUBLIC_${string}` ? unknown : never }, options?: {
12
+ extends?: readonly unknown[];
13
+ runtimeEnv: Record<keyof TSchema, string | undefined> & Dict<string>;
14
+ }): Readonly<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }>;
15
+ /**
16
+ * Create a validated, type-safe environment configuration for Next.js applications using
17
+ * the split client/shared schema pattern (Client entry point, Standard Mode).
18
+ *
19
+ * @param options The environment validation configuration with client and shared schemas
20
+ * @returns A validated, readonly environment variables object
21
+ */
22
+ declare function arkenv<const TClient extends Record<string, StandardSchemaV1> = {}, const TShared extends Record<string, StandardSchemaV1> = {}>(options: {
23
+ client?: TClient & { [K in keyof TClient]: K extends `NEXT_PUBLIC_${string}` ? unknown : never };
24
+ shared?: TShared;
25
+ extends?: readonly unknown[];
26
+ runtimeEnv: Record<keyof TClient | keyof TShared, unknown> & Record<string, unknown>;
27
+ }): Readonly<{ [K in keyof (TClient & TShared)]: StandardSchemaV1.InferOutput<(TClient & TShared)[K]> }>;
28
+ //#endregion
29
+ export { arkenv, arkenv as default };
30
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","names":[],"sources":["../../src/standard/client.ts"],"mappings":";;;;;AAWA;;;;;iBAAgB,MAAA,uBACO,MAAA,SAAe,gBAAA,OAAA,CAErC,MAAA,EAAQ,OAAA,iBACK,OAAA,GAAU,CAAA,sDAEvB,OAAA;EACC,OAAA;EACA,UAAA,EAAY,MAAA,OAAa,OAAA,wBAA+B,IAAA;AAAA,IAEvD,QAAA,eAAuB,OAAA,GAAU,gBAAA,CAAiB,WAAA,CAAY,OAAA,CAAQ,CAAA;;;;;;;;iBASzD,MAAA,uBACO,MAAA,SAAe,gBAAA,8BACf,MAAA,SAAe,gBAAA,OAAA,CACpC,OAAA;EACD,MAAA,GAAS,OAAA,iBACI,OAAA,GAAU,CAAA;EAEvB,MAAA,GAAS,OAAA;EACT,OAAA;EACA,UAAA,EAAY,MAAA,OAAa,OAAA,SAAgB,OAAA,aACxC,MAAA;AAAA,IACE,QAAA,gBACU,OAAA,GAAU,OAAA,IAAW,gBAAA,CAAiB,WAAA,EACjD,OAAA,GAAU,OAAA,EAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ import{t as e}from"../arkenv-internal-DEN5DTmX.js";import{arkenv as t,getSchemaKeys as n}from"@arkenv/standard";function r(r,i){if(r&&typeof r==`object`&&(`runtimeEnv`in r||`client`in r||`shared`in r)){if(`server`in r)throw Error(`client entry point only accepts 'client' and 'shared' schemas.`);return e(r,!1,void 0,t,n)}return e(r,i,{isServer:!1},t,n)}export{r as arkenv,r as default};
2
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","names":["coreArkenv"],"sources":["../../src/standard/client.ts"],"sourcesContent":["import { arkenv as coreArkenv, getSchemaKeys } from \"@arkenv/standard\";\nimport type { Dict, StandardSchemaV1 } from \"@repo/types\";\nimport { arkenvInternal } from \"@/arkenv-internal\";\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications (Client entry point, Standard Mode).\n *\n * @param schema A flat schema of `NEXT_PUBLIC_*` Standard Schema validators\n * @param options Optional extends and runtimeEnv overrides\n * @returns A validated, readonly environment variables object\n */\nexport function arkenv<\n\tconst TSchema extends Record<string, StandardSchemaV1> = {},\n>(\n\tschema: TSchema & {\n\t\t[K in keyof TSchema]: K extends `NEXT_PUBLIC_${string}` ? unknown : never;\n\t},\n\toptions?: {\n\t\textends?: readonly unknown[];\n\t\truntimeEnv: Record<keyof TSchema, string | undefined> & Dict<string>;\n\t},\n): Readonly<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }>;\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications using\n * the split client/shared schema pattern (Client entry point, Standard Mode).\n *\n * @param options The environment validation configuration with client and shared schemas\n * @returns A validated, readonly environment variables object\n */\nexport function arkenv<\n\tconst TClient extends Record<string, StandardSchemaV1> = {},\n\tconst TShared extends Record<string, StandardSchemaV1> = {},\n>(options: {\n\tclient?: TClient & {\n\t\t[K in keyof TClient]: K extends `NEXT_PUBLIC_${string}` ? unknown : never;\n\t};\n\tshared?: TShared;\n\textends?: readonly unknown[];\n\truntimeEnv: Record<keyof TClient | keyof TShared, unknown> &\n\t\tRecord<string, unknown>;\n}): Readonly<{\n\t[K in keyof (TClient & TShared)]: StandardSchemaV1.InferOutput<\n\t\t(TClient & TShared)[K]\n\t>;\n}>;\n\nexport function arkenv(schemaOrOptions: any, optionsOrIsServer?: any): any {\n\tconst isLegacy =\n\t\tschemaOrOptions &&\n\t\ttypeof schemaOrOptions === \"object\" &&\n\t\t(\"runtimeEnv\" in schemaOrOptions ||\n\t\t\t\"client\" in schemaOrOptions ||\n\t\t\t\"shared\" in schemaOrOptions);\n\n\tif (isLegacy) {\n\t\tif (\"server\" in schemaOrOptions) {\n\t\t\tthrow new Error(\n\t\t\t\t\"client entry point only accepts 'client' and 'shared' schemas.\",\n\t\t\t);\n\t\t}\n\t\treturn arkenvInternal(\n\t\t\tschemaOrOptions,\n\t\t\tfalse,\n\t\t\tundefined,\n\t\t\tcoreArkenv,\n\t\t\tgetSchemaKeys,\n\t\t);\n\t}\n\n\treturn arkenvInternal(\n\t\tschemaOrOptions,\n\t\toptionsOrIsServer,\n\t\t{ isServer: false },\n\t\tcoreArkenv,\n\t\tgetSchemaKeys,\n\t);\n}\n\nexport default arkenv;\n"],"mappings":"gHA+CA,SAAgB,EAAO,EAAsB,EAA8B,CAQ1E,GANC,GACA,OAAO,GAAoB,WAC1B,eAAgB,GAChB,WAAY,GACZ,WAAY,GAEA,CACb,GAAI,WAAY,EACf,MAAU,MACT,iEACA,CAEF,OAAO,EACN,EACA,GACA,IAAA,GACAA,EACA,EACA,CAGF,OAAO,EACN,EACA,EACA,CAAE,SAAU,GAAO,CACnBA,EACA,EACA"}
@@ -0,0 +1,2 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../config-CStvXoN3.cjs`);function t(t,n){return e.n(t,{...n,standard:!0})}exports.withArkEnv=t;
2
+ //# sourceMappingURL=config.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.cjs","names":["originalWithArkEnv"],"sources":["../../src/standard/config.ts"],"sourcesContent":["import {\n\ttype ArkEnvConfigOptions,\n\twithArkEnv as originalWithArkEnv,\n} from \"@/config\";\n\n/**\n * Wrap a Next.js configuration object to automatically generate the `runtimeEnv` block in `env.gen.ts` (Standard Mode).\n *\n * @param nextConfig The Next.js configuration object or function\n * @param options Optional configuration paths for schema and output files\n * @returns The Next.js configuration object unchanged\n */\nexport function withArkEnv<T>(nextConfig: T, options?: ArkEnvConfigOptions): T {\n\treturn originalWithArkEnv(nextConfig, {\n\t\t...options,\n\t\tstandard: true,\n\t});\n}\n"],"mappings":"6GAYA,SAAgB,EAAc,EAAe,EAAkC,CAC9E,OAAOA,EAAAA,EAAmB,EAAY,CACrC,GAAG,EACH,SAAU,GACV,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { s as ArkEnvConfigOptions } from "../index-CNzwVE5N.cjs";
2
+
3
+ //#region src/standard/config.d.ts
4
+ /**
5
+ * Wrap a Next.js configuration object to automatically generate the `runtimeEnv` block in `env.gen.ts` (Standard Mode).
6
+ *
7
+ * @param nextConfig The Next.js configuration object or function
8
+ * @param options Optional configuration paths for schema and output files
9
+ * @returns The Next.js configuration object unchanged
10
+ */
11
+ declare function withArkEnv<T>(nextConfig: T, options?: ArkEnvConfigOptions): T;
12
+ //#endregion
13
+ export { withArkEnv };
14
+ //# sourceMappingURL=config.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.cts","names":[],"sources":["../../src/standard/config.ts"],"mappings":";;;;;AAYA;;;;;iBAAgB,UAAA,GAAA,CAAc,UAAA,EAAY,CAAA,EAAG,OAAA,GAAU,mBAAA,GAAsB,CAAA"}
@@ -0,0 +1,14 @@
1
+ import { s as ArkEnvConfigOptions } from "../index-BFQlm61W.js";
2
+
3
+ //#region src/standard/config.d.ts
4
+ /**
5
+ * Wrap a Next.js configuration object to automatically generate the `runtimeEnv` block in `env.gen.ts` (Standard Mode).
6
+ *
7
+ * @param nextConfig The Next.js configuration object or function
8
+ * @param options Optional configuration paths for schema and output files
9
+ * @returns The Next.js configuration object unchanged
10
+ */
11
+ declare function withArkEnv<T>(nextConfig: T, options?: ArkEnvConfigOptions): T;
12
+ //#endregion
13
+ export { withArkEnv };
14
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","names":[],"sources":["../../src/standard/config.ts"],"mappings":";;;;;AAYA;;;;;iBAAgB,UAAA,GAAA,CAAc,UAAA,EAAY,CAAA,EAAG,OAAA,GAAU,mBAAA,GAAsB,CAAA"}
@@ -0,0 +1,2 @@
1
+ import{i as e}from"../config-D2j45WDh.js";function t(t,n){return e(t,{...n,standard:!0})}export{t as withArkEnv};
2
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","names":["originalWithArkEnv"],"sources":["../../src/standard/config.ts"],"sourcesContent":["import {\n\ttype ArkEnvConfigOptions,\n\twithArkEnv as originalWithArkEnv,\n} from \"@/config\";\n\n/**\n * Wrap a Next.js configuration object to automatically generate the `runtimeEnv` block in `env.gen.ts` (Standard Mode).\n *\n * @param nextConfig The Next.js configuration object or function\n * @param options Optional configuration paths for schema and output files\n * @returns The Next.js configuration object unchanged\n */\nexport function withArkEnv<T>(nextConfig: T, options?: ArkEnvConfigOptions): T {\n\treturn originalWithArkEnv(nextConfig, {\n\t\t...options,\n\t\tstandard: true,\n\t});\n}\n"],"mappings":"0CAYA,SAAgB,EAAc,EAAe,EAAkC,CAC9E,OAAOA,EAAmB,EAAY,CACrC,GAAG,EACH,SAAU,GACV,CAAC"}
@@ -0,0 +1,2 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require(`../config-CStvXoN3.cjs`);const e=require(`../arkenv-internal-Cll5pV_F.cjs`);let t=require(`@arkenv/standard`);function n(n,r){return n&&typeof n==`object`&&(`runtimeEnv`in n||`server`in n||`client`in n||`shared`in n)?e.t(n,!1,void 0,t.arkenv,t.getSchemaKeys):e.t(n,r,{isServer:!1},t.arkenv,t.getSchemaKeys)}exports.arkenv=n,exports.default=n;
2
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["arkenvInternal","coreArkenv","getSchemaKeys"],"sources":["../../src/standard/index.ts"],"sourcesContent":["import { arkenv as coreArkenv, getSchemaKeys } from \"@arkenv/standard\";\nimport type { StandardSchemaV1 } from \"@repo/types\";\nimport { arkenvInternal } from \"@/arkenv-internal\";\nimport type { MergeExtends } from \"../types\";\n\ntype ClientVisibleKeys<\n\tTSchema extends Record<string, StandardSchemaV1>,\n\tTExpose extends keyof TSchema,\n> = {\n\t[K in keyof TSchema]: K extends `NEXT_PUBLIC_${string}`\n\t\t? K\n\t\t: K extends \"NODE_ENV\"\n\t\t\t? K\n\t\t\t: K extends TExpose\n\t\t\t\t? K\n\t\t\t\t: never;\n}[keyof TSchema];\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications in Standard Mode.\n *\n * @param schema A flat schema of environment variable Standard Schema validators\n * @param options Optional configuration including client-side variables and extends\n * @returns A validated, readonly environment variables object wrapped in a security proxy\n */\nexport function arkenv<\n\tconst TSchema extends Record<string, StandardSchemaV1> = {},\n\tconst TExpose extends keyof TSchema = never,\n\tconst TExtends extends readonly unknown[] = [],\n>(\n\tschema: TSchema,\n\toptions?: {\n\t\texposeToClient?: readonly TExpose[];\n\t\texpose?: readonly TExpose[];\n\t\tshared?: readonly TExpose[];\n\t\textends?: [...TExtends];\n\t\truntimeEnv?: Record<string, unknown>;\n\t},\n): Readonly<\n\tPick<\n\t\t{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> },\n\t\tExtract<keyof TSchema, ClientVisibleKeys<TSchema, TExpose>>\n\t> &\n\t\tMergeExtends<TExtends>\n>;\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications in Standard Mode.\n *\n * @deprecated Use the unified flat layout signature instead: `arkenv(schema, options)`\n * @param options The environment validation configuration options\n * @returns A validated, readonly environment variables object wrapped in a security proxy\n */\nexport function arkenv<\n\tconst TServer extends Record<string, StandardSchemaV1> = {},\n\tconst TClient extends Record<string, StandardSchemaV1> = {},\n\tconst TShared extends Record<string, StandardSchemaV1> = {},\n>(options: {\n\tserver?: TServer;\n\tclient?: TClient & {\n\t\t[K in keyof TClient]: K extends `NEXT_PUBLIC_${string}` ? unknown : never;\n\t};\n\tshared?: TShared;\n\truntimeEnv: Record<keyof TClient | keyof TShared, unknown> &\n\t\tRecord<string, unknown>;\n}): Readonly<{\n\t[K in keyof (TServer & TClient & TShared)]: StandardSchemaV1.InferOutput<\n\t\t(TServer & TClient & TShared)[K]\n\t>;\n}>;\n\nexport function arkenv(schemaOrOptions: any, optionsOrIsServer?: any): any {\n\tconst isLegacy =\n\t\tschemaOrOptions &&\n\t\ttypeof schemaOrOptions === \"object\" &&\n\t\t(\"runtimeEnv\" in schemaOrOptions ||\n\t\t\t\"server\" in schemaOrOptions ||\n\t\t\t\"client\" in schemaOrOptions ||\n\t\t\t\"shared\" in schemaOrOptions);\n\n\tif (isLegacy) {\n\t\treturn arkenvInternal(\n\t\t\tschemaOrOptions,\n\t\t\tfalse,\n\t\t\tundefined,\n\t\t\tcoreArkenv,\n\t\t\tgetSchemaKeys,\n\t\t);\n\t}\n\n\treturn arkenvInternal(\n\t\tschemaOrOptions,\n\t\toptionsOrIsServer,\n\t\t{ isServer: false },\n\t\tcoreArkenv,\n\t\tgetSchemaKeys,\n\t);\n}\n\nexport default arkenv;\n"],"mappings":"sNAuEA,SAAgB,EAAO,EAAsB,EAA8B,CAmB1E,OAjBC,GACA,OAAO,GAAoB,WAC1B,eAAgB,GAChB,WAAY,GACZ,WAAY,GACZ,WAAY,GAGNA,EAAAA,EACN,EACA,GACA,IAAA,GACAC,EAAAA,OACAC,EAAAA,cACA,CAGKF,EAAAA,EACN,EACA,EACA,CAAE,SAAU,GAAO,CACnBC,EAAAA,OACAC,EAAAA,cACA"}
@@ -0,0 +1,35 @@
1
+ import { r as StandardSchemaV1 } from "../index-96RGPyfa.cjs";
2
+ import { t as MergeExtends } from "../types-44R9mgTa.cjs";
3
+
4
+ //#region src/standard/index.d.ts
5
+ type ClientVisibleKeys<TSchema extends Record<string, StandardSchemaV1>, TExpose extends keyof TSchema> = { [K in keyof TSchema]: K extends `NEXT_PUBLIC_${string}` ? K : K extends "NODE_ENV" ? K : K extends TExpose ? K : never }[keyof TSchema];
6
+ /**
7
+ * Create a validated, type-safe environment configuration for Next.js applications in Standard Mode.
8
+ *
9
+ * @param schema A flat schema of environment variable Standard Schema validators
10
+ * @param options Optional configuration including client-side variables and extends
11
+ * @returns A validated, readonly environment variables object wrapped in a security proxy
12
+ */
13
+ declare function arkenv<const TSchema extends Record<string, StandardSchemaV1> = {}, const TExpose extends keyof TSchema = never, const TExtends extends readonly unknown[] = []>(schema: TSchema, options?: {
14
+ exposeToClient?: readonly TExpose[];
15
+ expose?: readonly TExpose[];
16
+ shared?: readonly TExpose[];
17
+ extends?: [...TExtends];
18
+ runtimeEnv?: Record<string, unknown>;
19
+ }): Readonly<Pick<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }, Extract<keyof TSchema, ClientVisibleKeys<TSchema, TExpose>>> & MergeExtends<TExtends>>;
20
+ /**
21
+ * Create a validated, type-safe environment configuration for Next.js applications in Standard Mode.
22
+ *
23
+ * @deprecated Use the unified flat layout signature instead: `arkenv(schema, options)`
24
+ * @param options The environment validation configuration options
25
+ * @returns A validated, readonly environment variables object wrapped in a security proxy
26
+ */
27
+ declare function arkenv<const TServer extends Record<string, StandardSchemaV1> = {}, const TClient extends Record<string, StandardSchemaV1> = {}, const TShared extends Record<string, StandardSchemaV1> = {}>(options: {
28
+ server?: TServer;
29
+ client?: TClient & { [K in keyof TClient]: K extends `NEXT_PUBLIC_${string}` ? unknown : never };
30
+ shared?: TShared;
31
+ runtimeEnv: Record<keyof TClient | keyof TShared, unknown> & Record<string, unknown>;
32
+ }): Readonly<{ [K in keyof (TServer & TClient & TShared)]: StandardSchemaV1.InferOutput<(TServer & TClient & TShared)[K]> }>;
33
+ //#endregion
34
+ export { arkenv, arkenv as default };
35
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../../src/standard/index.ts"],"mappings":";;;;KAKK,iBAAA,iBACY,MAAA,SAAe,gBAAA,yBACT,OAAA,kBAEV,OAAA,GAAU,CAAA,mCACnB,CAAA,GACA,CAAA,sBACC,CAAA,GACA,CAAA,SAAU,OAAA,GACT,CAAA,iBAEE,OAAA;;;;;;;;iBASQ,MAAA,uBACO,MAAA,SAAe,gBAAA,oCACT,OAAA,yDAAA,CAG5B,MAAA,EAAQ,OAAA,EACR,OAAA;EACC,cAAA,YAA0B,OAAA;EAC1B,MAAA,YAAkB,OAAA;EAClB,MAAA,YAAkB,OAAA;EAClB,OAAA,OAAc,QAAA;EACd,UAAA,GAAa,MAAA;AAAA,IAEZ,QAAA,CACF,IAAA,eACe,OAAA,GAAU,gBAAA,CAAiB,WAAA,CAAY,OAAA,CAAQ,CAAA,MAC7D,OAAA,OAAc,OAAA,EAAS,iBAAA,CAAkB,OAAA,EAAS,OAAA,MAElD,YAAA,CAAa,QAAA;;;;;;;;iBAUC,MAAA,uBACO,MAAA,SAAe,gBAAA,8BACf,MAAA,SAAe,gBAAA,8BACf,MAAA,SAAe,gBAAA,OAAA,CACpC,OAAA;EACD,MAAA,GAAS,OAAA;EACT,MAAA,GAAS,OAAA,iBACI,OAAA,GAAU,CAAA;EAEvB,MAAA,GAAS,OAAA;EACT,UAAA,EAAY,MAAA,OAAa,OAAA,SAAgB,OAAA,aACxC,MAAA;AAAA,IACE,QAAA,gBACU,OAAA,GAAU,OAAA,GAAU,OAAA,IAAW,gBAAA,CAAiB,WAAA,EAC3D,OAAA,GAAU,OAAA,GAAU,OAAA,EAAS,CAAA"}
@@ -0,0 +1,35 @@
1
+ import { r as StandardSchemaV1 } from "../index-bjEZwPUt.js";
2
+ import { t as MergeExtends } from "../types-BzMGTYWv.js";
3
+
4
+ //#region src/standard/index.d.ts
5
+ type ClientVisibleKeys<TSchema extends Record<string, StandardSchemaV1>, TExpose extends keyof TSchema> = { [K in keyof TSchema]: K extends `NEXT_PUBLIC_${string}` ? K : K extends "NODE_ENV" ? K : K extends TExpose ? K : never }[keyof TSchema];
6
+ /**
7
+ * Create a validated, type-safe environment configuration for Next.js applications in Standard Mode.
8
+ *
9
+ * @param schema A flat schema of environment variable Standard Schema validators
10
+ * @param options Optional configuration including client-side variables and extends
11
+ * @returns A validated, readonly environment variables object wrapped in a security proxy
12
+ */
13
+ declare function arkenv<const TSchema extends Record<string, StandardSchemaV1> = {}, const TExpose extends keyof TSchema = never, const TExtends extends readonly unknown[] = []>(schema: TSchema, options?: {
14
+ exposeToClient?: readonly TExpose[];
15
+ expose?: readonly TExpose[];
16
+ shared?: readonly TExpose[];
17
+ extends?: [...TExtends];
18
+ runtimeEnv?: Record<string, unknown>;
19
+ }): Readonly<Pick<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }, Extract<keyof TSchema, ClientVisibleKeys<TSchema, TExpose>>> & MergeExtends<TExtends>>;
20
+ /**
21
+ * Create a validated, type-safe environment configuration for Next.js applications in Standard Mode.
22
+ *
23
+ * @deprecated Use the unified flat layout signature instead: `arkenv(schema, options)`
24
+ * @param options The environment validation configuration options
25
+ * @returns A validated, readonly environment variables object wrapped in a security proxy
26
+ */
27
+ declare function arkenv<const TServer extends Record<string, StandardSchemaV1> = {}, const TClient extends Record<string, StandardSchemaV1> = {}, const TShared extends Record<string, StandardSchemaV1> = {}>(options: {
28
+ server?: TServer;
29
+ client?: TClient & { [K in keyof TClient]: K extends `NEXT_PUBLIC_${string}` ? unknown : never };
30
+ shared?: TShared;
31
+ runtimeEnv: Record<keyof TClient | keyof TShared, unknown> & Record<string, unknown>;
32
+ }): Readonly<{ [K in keyof (TServer & TClient & TShared)]: StandardSchemaV1.InferOutput<(TServer & TClient & TShared)[K]> }>;
33
+ //#endregion
34
+ export { arkenv, arkenv as default };
35
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/standard/index.ts"],"mappings":";;;;KAKK,iBAAA,iBACY,MAAA,SAAe,gBAAA,yBACT,OAAA,kBAEV,OAAA,GAAU,CAAA,mCACnB,CAAA,GACA,CAAA,sBACC,CAAA,GACA,CAAA,SAAU,OAAA,GACT,CAAA,iBAEE,OAAA;;;;;;;;iBASQ,MAAA,uBACO,MAAA,SAAe,gBAAA,oCACT,OAAA,yDAAA,CAG5B,MAAA,EAAQ,OAAA,EACR,OAAA;EACC,cAAA,YAA0B,OAAA;EAC1B,MAAA,YAAkB,OAAA;EAClB,MAAA,YAAkB,OAAA;EAClB,OAAA,OAAc,QAAA;EACd,UAAA,GAAa,MAAA;AAAA,IAEZ,QAAA,CACF,IAAA,eACe,OAAA,GAAU,gBAAA,CAAiB,WAAA,CAAY,OAAA,CAAQ,CAAA,MAC7D,OAAA,OAAc,OAAA,EAAS,iBAAA,CAAkB,OAAA,EAAS,OAAA,MAElD,YAAA,CAAa,QAAA;;;;;;;;iBAUC,MAAA,uBACO,MAAA,SAAe,gBAAA,8BACf,MAAA,SAAe,gBAAA,8BACf,MAAA,SAAe,gBAAA,OAAA,CACpC,OAAA;EACD,MAAA,GAAS,OAAA;EACT,MAAA,GAAS,OAAA,iBACI,OAAA,GAAU,CAAA;EAEvB,MAAA,GAAS,OAAA;EACT,UAAA,EAAY,MAAA,OAAa,OAAA,SAAgB,OAAA,aACxC,MAAA;AAAA,IACE,QAAA,gBACU,OAAA,GAAU,OAAA,GAAU,OAAA,IAAW,gBAAA,CAAiB,WAAA,EAC3D,OAAA,GAAU,OAAA,GAAU,OAAA,EAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ import{t as e}from"../arkenv-internal-DEN5DTmX.js";import{arkenv as t,getSchemaKeys as n}from"@arkenv/standard";function r(r,i){return r&&typeof r==`object`&&(`runtimeEnv`in r||`server`in r||`client`in r||`shared`in r)?e(r,!1,void 0,t,n):e(r,i,{isServer:!1},t,n)}export{r as arkenv,r as default};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["coreArkenv"],"sources":["../../src/standard/index.ts"],"sourcesContent":["import { arkenv as coreArkenv, getSchemaKeys } from \"@arkenv/standard\";\nimport type { StandardSchemaV1 } from \"@repo/types\";\nimport { arkenvInternal } from \"@/arkenv-internal\";\nimport type { MergeExtends } from \"../types\";\n\ntype ClientVisibleKeys<\n\tTSchema extends Record<string, StandardSchemaV1>,\n\tTExpose extends keyof TSchema,\n> = {\n\t[K in keyof TSchema]: K extends `NEXT_PUBLIC_${string}`\n\t\t? K\n\t\t: K extends \"NODE_ENV\"\n\t\t\t? K\n\t\t\t: K extends TExpose\n\t\t\t\t? K\n\t\t\t\t: never;\n}[keyof TSchema];\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications in Standard Mode.\n *\n * @param schema A flat schema of environment variable Standard Schema validators\n * @param options Optional configuration including client-side variables and extends\n * @returns A validated, readonly environment variables object wrapped in a security proxy\n */\nexport function arkenv<\n\tconst TSchema extends Record<string, StandardSchemaV1> = {},\n\tconst TExpose extends keyof TSchema = never,\n\tconst TExtends extends readonly unknown[] = [],\n>(\n\tschema: TSchema,\n\toptions?: {\n\t\texposeToClient?: readonly TExpose[];\n\t\texpose?: readonly TExpose[];\n\t\tshared?: readonly TExpose[];\n\t\textends?: [...TExtends];\n\t\truntimeEnv?: Record<string, unknown>;\n\t},\n): Readonly<\n\tPick<\n\t\t{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> },\n\t\tExtract<keyof TSchema, ClientVisibleKeys<TSchema, TExpose>>\n\t> &\n\t\tMergeExtends<TExtends>\n>;\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications in Standard Mode.\n *\n * @deprecated Use the unified flat layout signature instead: `arkenv(schema, options)`\n * @param options The environment validation configuration options\n * @returns A validated, readonly environment variables object wrapped in a security proxy\n */\nexport function arkenv<\n\tconst TServer extends Record<string, StandardSchemaV1> = {},\n\tconst TClient extends Record<string, StandardSchemaV1> = {},\n\tconst TShared extends Record<string, StandardSchemaV1> = {},\n>(options: {\n\tserver?: TServer;\n\tclient?: TClient & {\n\t\t[K in keyof TClient]: K extends `NEXT_PUBLIC_${string}` ? unknown : never;\n\t};\n\tshared?: TShared;\n\truntimeEnv: Record<keyof TClient | keyof TShared, unknown> &\n\t\tRecord<string, unknown>;\n}): Readonly<{\n\t[K in keyof (TServer & TClient & TShared)]: StandardSchemaV1.InferOutput<\n\t\t(TServer & TClient & TShared)[K]\n\t>;\n}>;\n\nexport function arkenv(schemaOrOptions: any, optionsOrIsServer?: any): any {\n\tconst isLegacy =\n\t\tschemaOrOptions &&\n\t\ttypeof schemaOrOptions === \"object\" &&\n\t\t(\"runtimeEnv\" in schemaOrOptions ||\n\t\t\t\"server\" in schemaOrOptions ||\n\t\t\t\"client\" in schemaOrOptions ||\n\t\t\t\"shared\" in schemaOrOptions);\n\n\tif (isLegacy) {\n\t\treturn arkenvInternal(\n\t\t\tschemaOrOptions,\n\t\t\tfalse,\n\t\t\tundefined,\n\t\t\tcoreArkenv,\n\t\t\tgetSchemaKeys,\n\t\t);\n\t}\n\n\treturn arkenvInternal(\n\t\tschemaOrOptions,\n\t\toptionsOrIsServer,\n\t\t{ isServer: false },\n\t\tcoreArkenv,\n\t\tgetSchemaKeys,\n\t);\n}\n\nexport default arkenv;\n"],"mappings":"gHAuEA,SAAgB,EAAO,EAAsB,EAA8B,CAmB1E,OAjBC,GACA,OAAO,GAAoB,WAC1B,eAAgB,GAChB,WAAY,GACZ,WAAY,GACZ,WAAY,GAGN,EACN,EACA,GACA,IAAA,GACAA,EACA,EACA,CAGK,EACN,EACA,EACA,CAAE,SAAU,GAAO,CACnBA,EACA,EACA"}
@@ -0,0 +1,2 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require(`../config-CStvXoN3.cjs`);const e=require(`../arkenv-internal-Cll5pV_F.cjs`);require(`server-only`);let t=require(`@arkenv/standard`);function n(n,r){if(n&&typeof n==`object`&&(`runtimeEnv`in n||`server`in n||`shared`in n)){if(`client`in n)throw Error(`server entry point only accepts 'server' and 'shared' schemas.`);return e.t(n,!0,void 0,t.arkenv,t.getSchemaKeys)}return e.t(n,r,{isServer:!0},t.arkenv,t.getSchemaKeys)}exports.arkenv=n,exports.default=n;
2
+ //# sourceMappingURL=server.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.cjs","names":["arkenvInternal","coreArkenv","getSchemaKeys"],"sources":["../../src/standard/server.ts"],"sourcesContent":["import \"server-only\";\nimport { arkenv as coreArkenv, getSchemaKeys } from \"@arkenv/standard\";\nimport type { Dict, StandardSchemaV1 } from \"@repo/types\";\nimport { arkenvInternal } from \"@/arkenv-internal\";\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications (Server entry point, Standard Mode).\n */\nexport function arkenv<\n\tconst TSchema extends Record<string, StandardSchemaV1> = {},\n>(\n\tschema: TSchema,\n\toptions?: {\n\t\textends?: readonly unknown[];\n\t\truntimeEnv?: Dict<string>;\n\t},\n): Readonly<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }>;\n\nexport function arkenv<\n\tconst TServer extends Record<string, StandardSchemaV1> = {},\n\tconst TShared extends Record<string, StandardSchemaV1> = {},\n>(options: {\n\tserver?: TServer;\n\tshared?: TShared;\n\textends?: readonly unknown[];\n\truntimeEnv?: Record<keyof TShared, string | undefined> & Dict<string>;\n}): Readonly<{\n\t[K in keyof (TServer & TShared)]: StandardSchemaV1.InferOutput<\n\t\t(TServer & TShared)[K]\n\t>;\n}>;\n\nexport function arkenv(schemaOrOptions: any, optionsOrIsServer?: any): any {\n\tconst isLegacy =\n\t\tschemaOrOptions &&\n\t\ttypeof schemaOrOptions === \"object\" &&\n\t\t(\"runtimeEnv\" in schemaOrOptions ||\n\t\t\t\"server\" in schemaOrOptions ||\n\t\t\t\"shared\" in schemaOrOptions);\n\n\tif (isLegacy) {\n\t\tif (\"client\" in schemaOrOptions) {\n\t\t\tthrow new Error(\n\t\t\t\t\"server entry point only accepts 'server' and 'shared' schemas.\",\n\t\t\t);\n\t\t}\n\t\treturn arkenvInternal(\n\t\t\tschemaOrOptions,\n\t\t\ttrue,\n\t\t\tundefined,\n\t\t\tcoreArkenv,\n\t\t\tgetSchemaKeys,\n\t\t);\n\t}\n\n\treturn arkenvInternal(\n\t\tschemaOrOptions,\n\t\toptionsOrIsServer,\n\t\t{ isServer: true },\n\t\tcoreArkenv,\n\t\tgetSchemaKeys,\n\t);\n}\n\nexport default arkenv;\n"],"mappings":"6OAgCA,SAAgB,EAAO,EAAsB,EAA8B,CAQ1E,GANC,GACA,OAAO,GAAoB,WAC1B,eAAgB,GAChB,WAAY,GACZ,WAAY,GAEA,CACb,GAAI,WAAY,EACf,MAAU,MACT,iEACA,CAEF,OAAOA,EAAAA,EACN,EACA,GACA,IAAA,GACAC,EAAAA,OACAC,EAAAA,cACA,CAGF,OAAOF,EAAAA,EACN,EACA,EACA,CAAE,SAAU,GAAM,CAClBC,EAAAA,OACAC,EAAAA,cACA"}
@@ -0,0 +1,18 @@
1
+ import { i as Dict, r as StandardSchemaV1 } from "../index-96RGPyfa.cjs";
2
+ //#region src/standard/server.d.ts
3
+ /**
4
+ * Create a validated, type-safe environment configuration for Next.js applications (Server entry point, Standard Mode).
5
+ */
6
+ declare function arkenv<const TSchema extends Record<string, StandardSchemaV1> = {}>(schema: TSchema, options?: {
7
+ extends?: readonly unknown[];
8
+ runtimeEnv?: Dict<string>;
9
+ }): Readonly<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }>;
10
+ declare function arkenv<const TServer extends Record<string, StandardSchemaV1> = {}, const TShared extends Record<string, StandardSchemaV1> = {}>(options: {
11
+ server?: TServer;
12
+ shared?: TShared;
13
+ extends?: readonly unknown[];
14
+ runtimeEnv?: Record<keyof TShared, string | undefined> & Dict<string>;
15
+ }): Readonly<{ [K in keyof (TServer & TShared)]: StandardSchemaV1.InferOutput<(TServer & TShared)[K]> }>;
16
+ //#endregion
17
+ export { arkenv, arkenv as default };
18
+ //# sourceMappingURL=server.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.cts","names":[],"sources":["../../src/standard/server.ts"],"mappings":";;;;AAQA;iBAAgB,MAAA,uBACO,MAAA,SAAe,gBAAA,OAAA,CAErC,MAAA,EAAQ,OAAA,EACR,OAAA;EACC,OAAA;EACA,UAAA,GAAa,IAAA;AAAA,IAEZ,QAAA,eAAuB,OAAA,GAAU,gBAAA,CAAiB,WAAA,CAAY,OAAA,CAAQ,CAAA;AAAA,iBAEzD,MAAA,uBACO,MAAA,SAAe,gBAAA,8BACf,MAAA,SAAe,gBAAA,OAAA,CACpC,OAAA;EACD,MAAA,GAAS,OAAA;EACT,MAAA,GAAS,OAAA;EACT,OAAA;EACA,UAAA,GAAa,MAAA,OAAa,OAAA,wBAA+B,IAAA;AAAA,IACtD,QAAA,gBACU,OAAA,GAAU,OAAA,IAAW,gBAAA,CAAiB,WAAA,EACjD,OAAA,GAAU,OAAA,EAAS,CAAA"}
@@ -0,0 +1,18 @@
1
+ import { i as Dict, r as StandardSchemaV1 } from "../index-bjEZwPUt.js";
2
+ //#region src/standard/server.d.ts
3
+ /**
4
+ * Create a validated, type-safe environment configuration for Next.js applications (Server entry point, Standard Mode).
5
+ */
6
+ declare function arkenv<const TSchema extends Record<string, StandardSchemaV1> = {}>(schema: TSchema, options?: {
7
+ extends?: readonly unknown[];
8
+ runtimeEnv?: Dict<string>;
9
+ }): Readonly<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }>;
10
+ declare function arkenv<const TServer extends Record<string, StandardSchemaV1> = {}, const TShared extends Record<string, StandardSchemaV1> = {}>(options: {
11
+ server?: TServer;
12
+ shared?: TShared;
13
+ extends?: readonly unknown[];
14
+ runtimeEnv?: Record<keyof TShared, string | undefined> & Dict<string>;
15
+ }): Readonly<{ [K in keyof (TServer & TShared)]: StandardSchemaV1.InferOutput<(TServer & TShared)[K]> }>;
16
+ //#endregion
17
+ export { arkenv, arkenv as default };
18
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","names":[],"sources":["../../src/standard/server.ts"],"mappings":";;;;AAQA;iBAAgB,MAAA,uBACO,MAAA,SAAe,gBAAA,OAAA,CAErC,MAAA,EAAQ,OAAA,EACR,OAAA;EACC,OAAA;EACA,UAAA,GAAa,IAAA;AAAA,IAEZ,QAAA,eAAuB,OAAA,GAAU,gBAAA,CAAiB,WAAA,CAAY,OAAA,CAAQ,CAAA;AAAA,iBAEzD,MAAA,uBACO,MAAA,SAAe,gBAAA,8BACf,MAAA,SAAe,gBAAA,OAAA,CACpC,OAAA;EACD,MAAA,GAAS,OAAA;EACT,MAAA,GAAS,OAAA;EACT,OAAA;EACA,UAAA,GAAa,MAAA,OAAa,OAAA,wBAA+B,IAAA;AAAA,IACtD,QAAA,gBACU,OAAA,GAAU,OAAA,IAAW,gBAAA,CAAiB,WAAA,EACjD,OAAA,GAAU,OAAA,EAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ import{t as e}from"../arkenv-internal-DEN5DTmX.js";import"server-only";import{arkenv as t,getSchemaKeys as n}from"@arkenv/standard";function r(r,i){if(r&&typeof r==`object`&&(`runtimeEnv`in r||`server`in r||`shared`in r)){if(`client`in r)throw Error(`server entry point only accepts 'server' and 'shared' schemas.`);return e(r,!0,void 0,t,n)}return e(r,i,{isServer:!0},t,n)}export{r as arkenv,r as default};
2
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","names":["coreArkenv"],"sources":["../../src/standard/server.ts"],"sourcesContent":["import \"server-only\";\nimport { arkenv as coreArkenv, getSchemaKeys } from \"@arkenv/standard\";\nimport type { Dict, StandardSchemaV1 } from \"@repo/types\";\nimport { arkenvInternal } from \"@/arkenv-internal\";\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications (Server entry point, Standard Mode).\n */\nexport function arkenv<\n\tconst TSchema extends Record<string, StandardSchemaV1> = {},\n>(\n\tschema: TSchema,\n\toptions?: {\n\t\textends?: readonly unknown[];\n\t\truntimeEnv?: Dict<string>;\n\t},\n): Readonly<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }>;\n\nexport function arkenv<\n\tconst TServer extends Record<string, StandardSchemaV1> = {},\n\tconst TShared extends Record<string, StandardSchemaV1> = {},\n>(options: {\n\tserver?: TServer;\n\tshared?: TShared;\n\textends?: readonly unknown[];\n\truntimeEnv?: Record<keyof TShared, string | undefined> & Dict<string>;\n}): Readonly<{\n\t[K in keyof (TServer & TShared)]: StandardSchemaV1.InferOutput<\n\t\t(TServer & TShared)[K]\n\t>;\n}>;\n\nexport function arkenv(schemaOrOptions: any, optionsOrIsServer?: any): any {\n\tconst isLegacy =\n\t\tschemaOrOptions &&\n\t\ttypeof schemaOrOptions === \"object\" &&\n\t\t(\"runtimeEnv\" in schemaOrOptions ||\n\t\t\t\"server\" in schemaOrOptions ||\n\t\t\t\"shared\" in schemaOrOptions);\n\n\tif (isLegacy) {\n\t\tif (\"client\" in schemaOrOptions) {\n\t\t\tthrow new Error(\n\t\t\t\t\"server entry point only accepts 'server' and 'shared' schemas.\",\n\t\t\t);\n\t\t}\n\t\treturn arkenvInternal(\n\t\t\tschemaOrOptions,\n\t\t\ttrue,\n\t\t\tundefined,\n\t\t\tcoreArkenv,\n\t\t\tgetSchemaKeys,\n\t\t);\n\t}\n\n\treturn arkenvInternal(\n\t\tschemaOrOptions,\n\t\toptionsOrIsServer,\n\t\t{ isServer: true },\n\t\tcoreArkenv,\n\t\tgetSchemaKeys,\n\t);\n}\n\nexport default arkenv;\n"],"mappings":"oIAgCA,SAAgB,EAAO,EAAsB,EAA8B,CAQ1E,GANC,GACA,OAAO,GAAoB,WAC1B,eAAgB,GAChB,WAAY,GACZ,WAAY,GAEA,CACb,GAAI,WAAY,EACf,MAAU,MACT,iEACA,CAEF,OAAO,EACN,EACA,GACA,IAAA,GACAA,EACA,EACA,CAGF,OAAO,EACN,EACA,EACA,CAAE,SAAU,GAAM,CAClBA,EACA,EACA"}
@@ -0,0 +1,2 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require(`../config-CStvXoN3.cjs`);const e=require(`../arkenv-internal-Cll5pV_F.cjs`);let t=require(`@arkenv/standard`);function n(n,r){return e.t(n,r,{isServer:typeof window>`u`,isShared:!0},t.arkenv,t.getSchemaKeys)}exports.arkenv=n,exports.default=n;
2
+ //# sourceMappingURL=shared.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.cjs","names":["arkenvInternal","coreArkenv","getSchemaKeys"],"sources":["../../src/standard/shared.ts"],"sourcesContent":["import { arkenv as coreArkenv, getSchemaKeys } from \"@arkenv/standard\";\nimport type { Dict, StandardSchemaV1 } from \"@repo/types\";\nimport { arkenvInternal } from \"@/arkenv-internal\";\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications (Shared entry point, Standard Mode).\n */\nexport function arkenv<\n\tconst TSchema extends Record<string, StandardSchemaV1> = {},\n>(\n\tschema: TSchema,\n\toptions?: {\n\t\textends?: readonly unknown[];\n\t\truntimeEnv?: Dict<string>;\n\t},\n): Readonly<{\n\t[K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]>;\n}> {\n\tconst isServer = typeof window === \"undefined\";\n\treturn arkenvInternal(\n\t\tschema,\n\t\toptions,\n\t\t{\n\t\t\tisServer,\n\t\t\tisShared: true,\n\t\t},\n\t\tcoreArkenv,\n\t\tgetSchemaKeys,\n\t) as any;\n}\n\nexport default arkenv;\n"],"mappings":"sNAOA,SAAgB,EAGf,EACA,EAME,CAEF,OAAOA,EAAAA,EACN,EACA,EACA,CACC,SALe,OAAO,OAAW,IAMjC,SAAU,GACV,CACDC,EAAAA,OACAC,EAAAA,cACA"}
@@ -0,0 +1,13 @@
1
+ import { i as Dict, r as StandardSchemaV1 } from "../index-96RGPyfa.cjs";
2
+
3
+ //#region src/standard/shared.d.ts
4
+ /**
5
+ * Create a validated, type-safe environment configuration for Next.js applications (Shared entry point, Standard Mode).
6
+ */
7
+ declare function arkenv<const TSchema extends Record<string, StandardSchemaV1> = {}>(schema: TSchema, options?: {
8
+ extends?: readonly unknown[];
9
+ runtimeEnv?: Dict<string>;
10
+ }): Readonly<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }>;
11
+ //#endregion
12
+ export { arkenv, arkenv as default };
13
+ //# sourceMappingURL=shared.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.cts","names":[],"sources":["../../src/standard/shared.ts"],"mappings":";;;;;AAOA;iBAAgB,MAAA,uBACO,MAAA,SAAe,gBAAA,OAAA,CAErC,MAAA,EAAQ,OAAA,EACR,OAAA;EACC,OAAA;EACA,UAAA,GAAa,IAAA;AAAA,IAEZ,QAAA,eACU,OAAA,GAAU,gBAAA,CAAiB,WAAA,CAAY,OAAA,CAAQ,CAAA"}
@@ -0,0 +1,13 @@
1
+ import { i as Dict, r as StandardSchemaV1 } from "../index-bjEZwPUt.js";
2
+
3
+ //#region src/standard/shared.d.ts
4
+ /**
5
+ * Create a validated, type-safe environment configuration for Next.js applications (Shared entry point, Standard Mode).
6
+ */
7
+ declare function arkenv<const TSchema extends Record<string, StandardSchemaV1> = {}>(schema: TSchema, options?: {
8
+ extends?: readonly unknown[];
9
+ runtimeEnv?: Dict<string>;
10
+ }): Readonly<{ [K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]> }>;
11
+ //#endregion
12
+ export { arkenv, arkenv as default };
13
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","names":[],"sources":["../../src/standard/shared.ts"],"mappings":";;;;;AAOA;iBAAgB,MAAA,uBACO,MAAA,SAAe,gBAAA,OAAA,CAErC,MAAA,EAAQ,OAAA,EACR,OAAA;EACC,OAAA;EACA,UAAA,GAAa,IAAA;AAAA,IAEZ,QAAA,eACU,OAAA,GAAU,gBAAA,CAAiB,WAAA,CAAY,OAAA,CAAQ,CAAA"}
@@ -0,0 +1,2 @@
1
+ import{t as e}from"../arkenv-internal-DEN5DTmX.js";import{arkenv as t,getSchemaKeys as n}from"@arkenv/standard";function r(r,i){return e(r,i,{isServer:typeof window>`u`,isShared:!0},t,n)}export{r as arkenv,r as default};
2
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","names":["coreArkenv"],"sources":["../../src/standard/shared.ts"],"sourcesContent":["import { arkenv as coreArkenv, getSchemaKeys } from \"@arkenv/standard\";\nimport type { Dict, StandardSchemaV1 } from \"@repo/types\";\nimport { arkenvInternal } from \"@/arkenv-internal\";\n\n/**\n * Create a validated, type-safe environment configuration for Next.js applications (Shared entry point, Standard Mode).\n */\nexport function arkenv<\n\tconst TSchema extends Record<string, StandardSchemaV1> = {},\n>(\n\tschema: TSchema,\n\toptions?: {\n\t\textends?: readonly unknown[];\n\t\truntimeEnv?: Dict<string>;\n\t},\n): Readonly<{\n\t[K in keyof TSchema]: StandardSchemaV1.InferOutput<TSchema[K]>;\n}> {\n\tconst isServer = typeof window === \"undefined\";\n\treturn arkenvInternal(\n\t\tschema,\n\t\toptions,\n\t\t{\n\t\t\tisServer,\n\t\t\tisShared: true,\n\t\t},\n\t\tcoreArkenv,\n\t\tgetSchemaKeys,\n\t) as any;\n}\n\nexport default arkenv;\n"],"mappings":"gHAOA,SAAgB,EAGf,EACA,EAME,CAEF,OAAO,EACN,EACA,EACA,CACC,SALe,OAAO,OAAW,IAMjC,SAAU,GACV,CACDA,EACA,EACA"}
@@ -1,4 +1,4 @@
1
- import { n as InferType } from "./index-C6bpQ5GU.cjs";
1
+ import { n as InferType } from "./index-96RGPyfa.cjs";
2
2
 
3
3
  //#region src/types.d.ts
4
4
  /**
@@ -9,4 +9,4 @@ type ResolveExtendsElement<T> = [InferType<T>] extends [never] ? T : InferType<T
9
9
  type MergeExtends<TExtends extends readonly unknown[] | undefined> = TExtends extends readonly unknown[] ? UnionToIntersection<ResolveExtendsElement<TExtends[number]>> : {};
10
10
  //#endregion
11
11
  export { MergeExtends as t };
12
- //# sourceMappingURL=types-DBqiLw5v.d.cts.map
12
+ //# sourceMappingURL=types-44R9mgTa.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types-DBqiLw5v.d.cts","names":[],"sources":["../src/types.ts"],"mappings":";;;;;AAMA;KAAY,mBAAA,OACX,CAAA,gBACI,CAAA,EAAG,CAAA,6BAEG,CAAA,sBACR,CAAA;AAAA,KAGS,qBAAA,OAA4B,SAAA,CAAU,CAAA,qBAC/C,CAAA,GACA,SAAA,CAAU,CAAA;AAAA,KAED,YAAA,oDACX,QAAA,8BACG,mBAAA,CAAoB,qBAAA,CAAsB,QAAA"}
1
+ {"version":3,"file":"types-44R9mgTa.d.cts","names":[],"sources":["../src/types.ts"],"mappings":";;;;;AAMA;KAAY,mBAAA,OACX,CAAA,gBACI,CAAA,EAAG,CAAA,6BAEG,CAAA,sBACR,CAAA;AAAA,KAGS,qBAAA,OAA4B,SAAA,CAAU,CAAA,qBAC/C,CAAA,GACA,SAAA,CAAU,CAAA;AAAA,KAED,YAAA,oDACX,QAAA,8BACG,mBAAA,CAAoB,qBAAA,CAAsB,QAAA"}
@@ -1,4 +1,4 @@
1
- import { n as InferType } from "./index-Bn3pRiJy.js";
1
+ import { n as InferType } from "./index-bjEZwPUt.js";
2
2
 
3
3
  //#region src/types.d.ts
4
4
  /**
@@ -9,4 +9,4 @@ type ResolveExtendsElement<T> = [InferType<T>] extends [never] ? T : InferType<T
9
9
  type MergeExtends<TExtends extends readonly unknown[] | undefined> = TExtends extends readonly unknown[] ? UnionToIntersection<ResolveExtendsElement<TExtends[number]>> : {};
10
10
  //#endregion
11
11
  export { MergeExtends as t };
12
- //# sourceMappingURL=types-BN4fEChy.d.ts.map
12
+ //# sourceMappingURL=types-BzMGTYWv.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types-BN4fEChy.d.ts","names":[],"sources":["../src/types.ts"],"mappings":";;;;;AAMA;KAAY,mBAAA,OACX,CAAA,gBACI,CAAA,EAAG,CAAA,6BAEG,CAAA,sBACR,CAAA;AAAA,KAGS,qBAAA,OAA4B,SAAA,CAAU,CAAA,qBAC/C,CAAA,GACA,SAAA,CAAU,CAAA;AAAA,KAED,YAAA,oDACX,QAAA,8BACG,mBAAA,CAAoB,qBAAA,CAAsB,QAAA"}
1
+ {"version":3,"file":"types-BzMGTYWv.d.ts","names":[],"sources":["../src/types.ts"],"mappings":";;;;;AAMA;KAAY,mBAAA,OACX,CAAA,gBACI,CAAA,EAAG,CAAA,6BAEG,CAAA,sBACR,CAAA;AAAA,KAGS,qBAAA,OAA4B,SAAA,CAAU,CAAA,qBAC/C,CAAA,GACA,SAAA,CAAU,CAAA;AAAA,KAED,YAAA,oDACX,QAAA,8BACG,mBAAA,CAAoB,qBAAA,CAAsB,QAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arkenv/nextjs",
3
- "version": "1.0.0-alpha.0",
3
+ "version": "1.0.0-alpha.10",
4
4
  "author": "Yam Borodetsky <yam@yam.codes>",
5
5
  "repository": {
6
6
  "type": "git",
@@ -10,31 +10,47 @@
10
10
  "module": "./dist/index.js",
11
11
  "dependencies": {
12
12
  "chokidar": "^4.0.3",
13
+ "jiti": "2.7.0",
13
14
  "server-only": "^0.0.1",
14
- "arkenv": "1.0.0-alpha.0"
15
+ "@arkenv/build": "0.0.2-alpha.2"
15
16
  },
16
17
  "devDependencies": {
17
18
  "@size-limit/preset-small-lib": "12.1.0",
19
+ "@types/react": "19.2.14",
18
20
  "arktype": "2.2.0",
19
21
  "next": "16.2.6",
22
+ "react": "19.2.5",
20
23
  "rimraf": "6.1.3",
21
24
  "size-limit": "12.1.0",
22
25
  "tsdown": "0.21.10",
23
26
  "typescript": "6.0.3",
24
27
  "vitest": "4.1.5",
28
+ "@arkenv/core": "1.0.0-alpha.4",
29
+ "@arkenv/standard": "1.0.0-alpha.4",
30
+ "@repo/log": "0.0.1",
25
31
  "@repo/scope": "0.1.3",
26
- "@repo/types": "0.1.0"
32
+ "@repo/types": "0.1.0",
33
+ "@repo/utils": "0.1.3"
27
34
  },
28
35
  "peerDependencies": {
36
+ "@arkenv/core": "^1.0.0",
37
+ "@arkenv/standard": "^1.0.0",
29
38
  "arktype": "^2.1.22",
30
- "next": "^13.4.0 || ^14.0.0 || ^15.0.0 || ^16.0.0-0"
39
+ "next": "^13.4.0 || ^14.0.0 || ^15.0.0 || ^16.0.0-0",
40
+ "react": "19.2.5"
31
41
  },
32
- "exports": {
33
- "./shared": {
34
- "types": "./dist/shared.d.ts",
35
- "import": "./dist/shared.js",
36
- "require": "./dist/shared.cjs"
42
+ "peerDependenciesMeta": {
43
+ "@arkenv/core": {
44
+ "optional": true
45
+ },
46
+ "@arkenv/standard": {
47
+ "optional": true
37
48
  },
49
+ "arktype": {
50
+ "optional": true
51
+ }
52
+ },
53
+ "exports": {
38
54
  "./server": {
39
55
  "types": "./dist/server.d.ts",
40
56
  "import": "./dist/server.js",
@@ -47,7 +63,7 @@
47
63
  },
48
64
  ".": {
49
65
  "react-server": {
50
- "types": "./dist/index.d.ts",
66
+ "types": "./dist/react-server.d.ts",
51
67
  "import": "./dist/react-server.js",
52
68
  "require": "./dist/react-server.cjs"
53
69
  },
@@ -58,9 +74,34 @@
58
74
  }
59
75
  },
60
76
  "./config": {
61
- "types": "./dist/config.d.ts",
62
- "import": "./dist/config.js",
63
- "require": "./dist/config.cjs"
77
+ "types": "./dist/config/index.d.ts",
78
+ "import": "./dist/config/index.js",
79
+ "require": "./dist/config/index.cjs"
80
+ },
81
+ "./standard/shared": {
82
+ "types": "./dist/standard/shared.d.ts",
83
+ "import": "./dist/standard/shared.js",
84
+ "require": "./dist/standard/shared.cjs"
85
+ },
86
+ "./standard/server": {
87
+ "types": "./dist/standard/server.d.ts",
88
+ "import": "./dist/standard/server.js",
89
+ "require": "./dist/standard/server.cjs"
90
+ },
91
+ "./standard/client": {
92
+ "types": "./dist/standard/client.d.ts",
93
+ "import": "./dist/standard/client.js",
94
+ "require": "./dist/standard/client.cjs"
95
+ },
96
+ "./standard": {
97
+ "types": "./dist/standard/index.d.ts",
98
+ "import": "./dist/standard/index.js",
99
+ "require": "./dist/standard/index.cjs"
100
+ },
101
+ "./standard/config": {
102
+ "types": "./dist/standard/config.d.ts",
103
+ "import": "./dist/standard/config.js",
104
+ "require": "./dist/standard/config.cjs"
64
105
  }
65
106
  },
66
107
  "bugs": "https://github.com/yamcodes/arkenv/labels/%40arkenv%2Fnextjs",
@@ -70,10 +111,15 @@
70
111
  ],
71
112
  "homepage": "https://arkenv.js.org",
72
113
  "keywords": [
73
- "arktype",
74
114
  "arkenv",
75
- "environment",
76
- "variables",
115
+ "arktype",
116
+ "env",
117
+ "environment-variables",
118
+ "dotenv",
119
+ "config",
120
+ "validation",
121
+ "typesafe",
122
+ "standard-schema",
77
123
  "next",
78
124
  "nextjs"
79
125
  ],
@@ -92,17 +138,6 @@
92
138
  "arkenv"
93
139
  ]
94
140
  },
95
- {
96
- "name": "@arkenv/nextjs/shared",
97
- "path": "dist/shared.js",
98
- "limit": "1.5 kB",
99
- "import": "*",
100
- "ignore": [
101
- "next",
102
- "arktype",
103
- "arkenv"
104
- ]
105
- },
106
141
  {
107
142
  "name": "@arkenv/nextjs/server",
108
143
  "path": "dist/server.js",
@@ -128,16 +163,18 @@
128
163
  },
129
164
  {
130
165
  "name": "@arkenv/nextjs/config",
131
- "path": "dist/config.js",
132
- "limit": "3 kB",
166
+ "path": "dist/config/index.js",
167
+ "limit": "4 kB",
133
168
  "import": "*",
134
169
  "ignore": [
135
170
  "next",
136
171
  "arktype",
137
172
  "arkenv",
138
173
  "chokidar",
174
+ "jiti",
139
175
  "node:fs",
140
- "node:path"
176
+ "node:path",
177
+ "node:url"
141
178
  ]
142
179
  }
143
180
  ],