@intlayer/config 7.1.0 → 7.1.1-canary.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/cjs/alias.cjs.map +1 -1
  2. package/dist/cjs/configFile/getConfiguration.cjs +3 -3
  3. package/dist/cjs/configFile/getConfiguration.cjs.map +1 -1
  4. package/dist/cjs/index.cjs +6 -6
  5. package/dist/cjs/loadExternalFile/loadExternalFile.cjs +1 -1
  6. package/dist/cjs/utils/cache.cjs +16 -15
  7. package/dist/cjs/utils/cache.cjs.map +1 -1
  8. package/dist/cjs/utils/cacheDisk.cjs +162 -0
  9. package/dist/cjs/utils/cacheDisk.cjs.map +1 -0
  10. package/dist/cjs/utils/cacheMemory.cjs +269 -0
  11. package/dist/cjs/utils/cacheMemory.cjs.map +1 -0
  12. package/dist/cjs/utils/checkVersionsConsistency.cjs +68 -0
  13. package/dist/cjs/utils/checkVersionsConsistency.cjs.map +1 -0
  14. package/dist/cjs/utils/getPackageJsonPath.cjs +3 -3
  15. package/dist/cjs/utils/getPackageJsonPath.cjs.map +1 -1
  16. package/dist/esm/alias.mjs.map +1 -1
  17. package/dist/esm/configFile/getConfiguration.mjs +3 -3
  18. package/dist/esm/configFile/getConfiguration.mjs.map +1 -1
  19. package/dist/esm/index.mjs +4 -2
  20. package/dist/esm/loadExternalFile/loadExternalFile.mjs +1 -1
  21. package/dist/esm/utils/cache.mjs +14 -14
  22. package/dist/esm/utils/cache.mjs.map +1 -1
  23. package/dist/esm/utils/cacheDisk.mjs +160 -0
  24. package/dist/esm/utils/cacheDisk.mjs.map +1 -0
  25. package/dist/esm/utils/cacheMemory.mjs +262 -0
  26. package/dist/esm/utils/cacheMemory.mjs.map +1 -0
  27. package/dist/esm/utils/checkVersionsConsistency.mjs +66 -0
  28. package/dist/esm/utils/checkVersionsConsistency.mjs.map +1 -0
  29. package/dist/esm/utils/getPackageJsonPath.mjs +3 -3
  30. package/dist/esm/utils/getPackageJsonPath.mjs.map +1 -1
  31. package/dist/types/alias.d.ts +6 -6
  32. package/dist/types/alias.d.ts.map +1 -1
  33. package/dist/types/index.d.ts +4 -2
  34. package/dist/types/utils/cache.d.ts +3 -4
  35. package/dist/types/utils/cache.d.ts.map +1 -1
  36. package/dist/types/utils/cacheDisk.d.ts +35 -0
  37. package/dist/types/utils/cacheDisk.d.ts.map +1 -0
  38. package/dist/types/utils/cacheMemory.d.ts +20 -0
  39. package/dist/types/utils/cacheMemory.d.ts.map +1 -0
  40. package/dist/types/utils/checkVersionsConsistency.d.ts +7 -0
  41. package/dist/types/utils/checkVersionsConsistency.d.ts.map +1 -0
  42. package/package.json +4 -4
@@ -0,0 +1,66 @@
1
+ import { getAppLogger } from "../logger.mjs";
2
+ import { getProjectRequire } from "./ESMxCJSHelpers.mjs";
3
+ import packageJson from "@intlayer/types/package.json" with { type: "json" };
4
+
5
+ //#region src/utils/checkVersionsConsistency.ts
6
+ const packages = [
7
+ "@intlayer/types",
8
+ "@intlayer/config",
9
+ "@intlayer/dictionaries-entry",
10
+ "@intlayer/unmerged-dictionaries-entry",
11
+ "@intlayer/dynamic-dictionaries-entry",
12
+ "@intlayer/remote-dictionaries-entry",
13
+ "@intlayer/fetch-dictionaries-entry",
14
+ "@intlayer/api",
15
+ "@intlayer/chokidar",
16
+ "@intlayer/webpack",
17
+ "@intlayer/editor",
18
+ "@intlayer/cli",
19
+ "@intlayer/babel",
20
+ "@intlayer/swc",
21
+ "@intlayer/editor-react",
22
+ "intlayer",
23
+ "@intlayer/docs",
24
+ "@intlayer/mcp",
25
+ "intlayer-cli",
26
+ "express-intlayer",
27
+ "apps/backend",
28
+ "react-intlayer",
29
+ "next-intlayer",
30
+ "react-scripts-intlayer",
31
+ "vue-intlayer",
32
+ "solid-intlayer",
33
+ "svelte-intlayer",
34
+ "preact-intlayer",
35
+ "angular-intlayer",
36
+ "vite-intlayer",
37
+ "nuxt-intlayer",
38
+ "astro-intlayer",
39
+ "react-native-intlayer",
40
+ "lynx-intlayer",
41
+ "@intlayer/design-system",
42
+ "intlayer-editor",
43
+ "plugins/sync-json-plugin"
44
+ ];
45
+ const checkVersionsConsistency = (configuration) => {
46
+ const projectRequire = getProjectRequire();
47
+ const logger = getAppLogger(configuration);
48
+ const inconsistentPackages = [];
49
+ try {
50
+ for (const pkg of packages) {
51
+ const pkgJson = projectRequire(pkg).packageJson;
52
+ if (pkgJson.version !== packageJson.version) inconsistentPackages.push({
53
+ name: pkg,
54
+ version: pkgJson.version
55
+ });
56
+ }
57
+ } catch (_error) {}
58
+ if (inconsistentPackages.length > 0) {
59
+ logger("Versions are not consistent. Some packages are not using the same version as the main Intlayer package. It may cause issues. See how to fix it here: https://intlayer.org/frequent-questions/package-version-error", { level: "warn" });
60
+ for (const { name, version } of inconsistentPackages) logger(`- ${name} - version: ${version} - expected: ${packageJson.version}`, { level: "warn" });
61
+ }
62
+ };
63
+
64
+ //#endregion
65
+ export { checkVersionsConsistency };
66
+ //# sourceMappingURL=checkVersionsConsistency.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkVersionsConsistency.mjs","names":["inconsistentPackages: { name: string; version: string }[]"],"sources":["../../../src/utils/checkVersionsConsistency.ts"],"sourcesContent":["import type { IntlayerConfig } from '@intlayer/types';\nimport packageJson from '@intlayer/types/package.json' with { type: 'json' };\nimport { getAppLogger } from '../logger';\nimport { getProjectRequire } from './ESMxCJSHelpers';\n\nconst packages = [\n '@intlayer/types',\n '@intlayer/config',\n '@intlayer/dictionaries-entry',\n '@intlayer/unmerged-dictionaries-entry',\n '@intlayer/dynamic-dictionaries-entry',\n '@intlayer/remote-dictionaries-entry',\n '@intlayer/fetch-dictionaries-entry',\n '@intlayer/api',\n '@intlayer/chokidar',\n '@intlayer/webpack',\n '@intlayer/editor',\n '@intlayer/cli',\n '@intlayer/babel',\n '@intlayer/swc',\n '@intlayer/editor-react',\n 'intlayer',\n '@intlayer/docs',\n '@intlayer/mcp',\n 'intlayer-cli',\n 'express-intlayer',\n 'apps/backend',\n 'react-intlayer',\n 'next-intlayer',\n 'react-scripts-intlayer',\n 'vue-intlayer',\n 'solid-intlayer',\n 'svelte-intlayer',\n 'preact-intlayer',\n 'angular-intlayer',\n 'vite-intlayer',\n 'nuxt-intlayer',\n 'astro-intlayer',\n 'react-native-intlayer',\n 'lynx-intlayer',\n '@intlayer/design-system',\n 'intlayer-editor',\n 'plugins/sync-json-plugin',\n];\n\nexport const checkVersionsConsistency = (configuration: IntlayerConfig) => {\n const projectRequire = getProjectRequire();\n const logger = getAppLogger(configuration);\n const inconsistentPackages: { name: string; version: string }[] = [];\n\n try {\n for (const pkg of packages) {\n const pkgJson = projectRequire(pkg).packageJson;\n if (pkgJson.version !== packageJson.version) {\n inconsistentPackages.push({ name: pkg, version: pkgJson.version });\n }\n }\n } catch (_error) {\n // Cant find, it's ok\n }\n\n if (inconsistentPackages.length > 0) {\n logger(\n 'Versions are not consistent. Some packages are not using the same version as the main Intlayer package. It may cause issues. See how to fix it here: https://intlayer.org/frequent-questions/package-version-error',\n { level: 'warn' }\n );\n for (const { name, version } of inconsistentPackages) {\n logger(\n `- ${name} - version: ${version} - expected: ${packageJson.version}`,\n { level: 'warn' }\n );\n }\n }\n};\n"],"mappings":";;;;;AAKA,MAAM,WAAW;CACf;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD;AAED,MAAa,4BAA4B,kBAAkC;CACzE,MAAM,iBAAiB,mBAAmB;CAC1C,MAAM,SAAS,aAAa,cAAc;CAC1C,MAAMA,uBAA4D,EAAE;AAEpE,KAAI;AACF,OAAK,MAAM,OAAO,UAAU;GAC1B,MAAM,UAAU,eAAe,IAAI,CAAC;AACpC,OAAI,QAAQ,YAAY,YAAY,QAClC,sBAAqB,KAAK;IAAE,MAAM;IAAK,SAAS,QAAQ;IAAS,CAAC;;UAG/D,QAAQ;AAIjB,KAAI,qBAAqB,SAAS,GAAG;AACnC,SACE,sNACA,EAAE,OAAO,QAAQ,CAClB;AACD,OAAK,MAAM,EAAE,MAAM,aAAa,qBAC9B,QACE,KAAK,KAAK,cAAc,QAAQ,eAAe,YAAY,WAC3D,EAAE,OAAO,QAAQ,CAClB"}
@@ -1,4 +1,4 @@
1
- import { cache } from "./cache.mjs";
1
+ import { cacheMemory } from "./cacheMemory.mjs";
2
2
  import { dirname, join } from "node:path";
3
3
  import { existsSync } from "node:fs";
4
4
 
@@ -6,13 +6,13 @@ import { existsSync } from "node:fs";
6
6
  const isESModule = typeof import.meta.url === "string";
7
7
  const MAX_LEVELS = 15;
8
8
  const getPackageJsonPath = (startDir = process.cwd()) => {
9
- const checkedCache = cache.get("packageJsonPath", startDir);
9
+ const checkedCache = cacheMemory.get("packageJsonPath", startDir);
10
10
  if (checkedCache) return checkedCache;
11
11
  let currentDir = startDir;
12
12
  for (let level = 0; level < MAX_LEVELS; level++) {
13
13
  const packageJsonPath = join(currentDir, "package.json");
14
14
  if (existsSync(packageJsonPath)) {
15
- cache.set("packageJsonPath", startDir, {
15
+ cacheMemory.set("packageJsonPath", startDir, {
16
16
  packageJsonPath,
17
17
  baseDir: currentDir
18
18
  });
@@ -1 +1 @@
1
- {"version":3,"file":"getPackageJsonPath.mjs","names":[],"sources":["../../../src/utils/getPackageJsonPath.ts"],"sourcesContent":["import { existsSync } from 'node:fs';\nimport { dirname, join } from 'node:path';\nimport { cache } from './cache';\n\nexport const isESModule = typeof import.meta.url === 'string';\n\nconst MAX_LEVELS = 15;\n\ntype PackageJsonPathCache = {\n packageJsonPath: string;\n baseDir: string;\n};\n\nexport const getPackageJsonPath = (\n startDir: string = process.cwd()\n): PackageJsonPathCache => {\n const checkedCache = cache.get<PackageJsonPathCache>(\n 'packageJsonPath',\n startDir\n );\n\n if (checkedCache) return checkedCache;\n\n let currentDir = startDir;\n\n for (let level = 0; level < MAX_LEVELS; level++) {\n const packageJsonPath = join(currentDir, 'package.json');\n\n if (existsSync(packageJsonPath)) {\n cache.set('packageJsonPath', startDir, {\n packageJsonPath,\n baseDir: currentDir,\n });\n\n return { packageJsonPath, baseDir: currentDir };\n }\n\n const parentDir = dirname(currentDir);\n\n // If we've reached the root directory, stop\n if (parentDir === currentDir) {\n break;\n }\n\n currentDir = parentDir;\n }\n\n throw new Error(\n `Could not find package.json in current directory or any of the ${MAX_LEVELS} parent directories. Searched from: ${startDir}`\n );\n};\n"],"mappings":";;;;;AAIA,MAAa,aAAa,OAAO,OAAO,KAAK,QAAQ;AAErD,MAAM,aAAa;AAOnB,MAAa,sBACX,WAAmB,QAAQ,KAAK,KACP;CACzB,MAAM,eAAe,MAAM,IACzB,mBACA,SACD;AAED,KAAI,aAAc,QAAO;CAEzB,IAAI,aAAa;AAEjB,MAAK,IAAI,QAAQ,GAAG,QAAQ,YAAY,SAAS;EAC/C,MAAM,kBAAkB,KAAK,YAAY,eAAe;AAExD,MAAI,WAAW,gBAAgB,EAAE;AAC/B,SAAM,IAAI,mBAAmB,UAAU;IACrC;IACA,SAAS;IACV,CAAC;AAEF,UAAO;IAAE;IAAiB,SAAS;IAAY;;EAGjD,MAAM,YAAY,QAAQ,WAAW;AAGrC,MAAI,cAAc,WAChB;AAGF,eAAa;;AAGf,OAAM,IAAI,MACR,kEAAkE,WAAW,sCAAsC,WACpH"}
1
+ {"version":3,"file":"getPackageJsonPath.mjs","names":[],"sources":["../../../src/utils/getPackageJsonPath.ts"],"sourcesContent":["import { existsSync } from 'node:fs';\nimport { dirname, join } from 'node:path';\nimport { cacheMemory } from './cacheMemory';\n\nexport const isESModule = typeof import.meta.url === 'string';\n\nconst MAX_LEVELS = 15;\n\ntype PackageJsonPathCache = {\n packageJsonPath: string;\n baseDir: string;\n};\n\nexport const getPackageJsonPath = (\n startDir: string = process.cwd()\n): PackageJsonPathCache => {\n const checkedCache = cacheMemory.get<PackageJsonPathCache>(\n 'packageJsonPath',\n startDir\n );\n\n if (checkedCache) return checkedCache;\n\n let currentDir = startDir;\n\n for (let level = 0; level < MAX_LEVELS; level++) {\n const packageJsonPath = join(currentDir, 'package.json');\n\n if (existsSync(packageJsonPath)) {\n cacheMemory.set('packageJsonPath', startDir, {\n packageJsonPath,\n baseDir: currentDir,\n });\n\n return { packageJsonPath, baseDir: currentDir };\n }\n\n const parentDir = dirname(currentDir);\n\n // If we've reached the root directory, stop\n if (parentDir === currentDir) {\n break;\n }\n\n currentDir = parentDir;\n }\n\n throw new Error(\n `Could not find package.json in current directory or any of the ${MAX_LEVELS} parent directories. Searched from: ${startDir}`\n );\n};\n"],"mappings":";;;;;AAIA,MAAa,aAAa,OAAO,OAAO,KAAK,QAAQ;AAErD,MAAM,aAAa;AAOnB,MAAa,sBACX,WAAmB,QAAQ,KAAK,KACP;CACzB,MAAM,eAAe,YAAY,IAC/B,mBACA,SACD;AAED,KAAI,aAAc,QAAO;CAEzB,IAAI,aAAa;AAEjB,MAAK,IAAI,QAAQ,GAAG,QAAQ,YAAY,SAAS;EAC/C,MAAM,kBAAkB,KAAK,YAAY,eAAe;AAExD,MAAI,WAAW,gBAAgB,EAAE;AAC/B,eAAY,IAAI,mBAAmB,UAAU;IAC3C;IACA,SAAS;IACV,CAAC;AAEF,UAAO;IAAE;IAAiB,SAAS;IAAY;;EAGjD,MAAM,YAAY,QAAQ,WAAW;AAGrC,MAAI,cAAc,WAChB;AAGF,eAAa;;AAGf,OAAM,IAAI,MACR,kEAAkE,WAAW,sCAAsC,WACpH"}
@@ -11,12 +11,12 @@ declare const getAlias: ({
11
11
  format,
12
12
  formatter
13
13
  }: GetAliasOptions) => {
14
- '@intlayer/dictionaries-entry': string;
15
- '@intlayer/unmerged-dictionaries-entry': string;
16
- '@intlayer/remote-dictionaries-entry': string;
17
- '@intlayer/dynamic-dictionaries-entry': string;
18
- '@intlayer/fetch-dictionaries-entry': string;
19
- '@intlayer/config/built': string;
14
+ readonly '@intlayer/dictionaries-entry': string;
15
+ readonly '@intlayer/unmerged-dictionaries-entry': string;
16
+ readonly '@intlayer/remote-dictionaries-entry': string;
17
+ readonly '@intlayer/dynamic-dictionaries-entry': string;
18
+ readonly '@intlayer/fetch-dictionaries-entry': string;
19
+ readonly '@intlayer/config/built': string;
20
20
  };
21
21
  //#endregion
22
22
  export { GetAliasOptions, getAlias };
@@ -1 +1 @@
1
- {"version":3,"file":"alias.d.ts","names":[],"sources":["../../src/alias.ts"],"sourcesContent":[],"mappings":";;;KAKY,eAAA;iBACK;EADL,MAAA,CAAA,EAAA,KAAA,GAAA,KAAe;EAMd,SAAA,CAAA,EA+FZ,CAAA,KAAA,EAAA,MAAA,EAAA,GAAA,MAAA;CA/FwB;AAAA,cAAZ,QAAY,EAAA,CAAA;EAAA,aAAA;EAAA,MAAA;EAAA;AAAA,CAAA,EAItB,eAJsB,EAAA,GAAA;EAAA,8BAAA,EAAA,MAAA;EAItB,uCAAA,EAAA,MAAA;EAAe,qCAAA,EAAA,MAAA"}
1
+ {"version":3,"file":"alias.d.ts","names":[],"sources":["../../src/alias.ts"],"sourcesContent":[],"mappings":";;;KAKY,eAAA;iBACK;EADL,MAAA,CAAA,EAAA,KAAA,GAAA,KAAe;EAMd,SAAA,CAAA,EA+FZ,CAAA,KAAA,EAAA,MAAA,EAAA,GAAA,MAAA;CA/FwB;AAAA,cAAZ,QAAY,EAAA,CAAA;EAAA,aAAA;EAAA,MAAA;EAAA;AAAA,CAAA,EAItB,eAJsB,EAAA,GAAA;EAAA,SAAA,8BAAA,EAAA,MAAA;EAItB,SAAA,uCAAA,EAAA,MAAA;EAAe,SAAA,qCAAA,EAAA,MAAA"}
@@ -15,9 +15,11 @@ import { searchConfigurationFile } from "./configFile/searchConfigurationFile.js
15
15
  import { ESBuildPlugin, loadExternalFile, loadExternalFileSync } from "./loadExternalFile/loadExternalFile.js";
16
16
  import { bundleFile, bundleFileSync } from "./loadExternalFile/bundleFile.js";
17
17
  import { retryManager } from "./retryManager.js";
18
- import { cache, clearCache, getCache, localCache, setCache } from "./utils/cache.js";
18
+ import { cacheMemory } from "./utils/cacheMemory.js";
19
+ import { cacheDisk } from "./utils/cacheDisk.js";
20
+ import { checkVersionsConsistency } from "./utils/checkVersionsConsistency.js";
19
21
  import { clearModuleCache } from "./utils/clearModuleCache.js";
20
22
  import { configESMxCJSRequire, getProjectRequire, isESModule } from "./utils/ESMxCJSHelpers.js";
21
23
  import { getExtension } from "./utils/getExtension.js";
22
24
  import { getPackageJsonPath } from "./utils/getPackageJsonPath.js";
23
- export { ANSIColors, index_d_exports as DefaultValues, type ESBuildPlugin, type GetConfigurationAndFilePathResult, type GetConfigurationOptions, type Logger, buildConfigurationFields, bundleFile, bundleFileSync, bundleJSFile, cache, camelCaseToSentence, clearCache, clearModuleCache, clock, colon, colorize, colorizeKey, colorizeLocales, colorizeNumber, colorizePath, configESMxCJSRequire, extractErrorMessage, getAlias, getAppLogger, getCache, getConfiguration, getConfigurationAndFilePath, getEnvFilePath, getExtension, getPackageJsonPath, getProjectRequire, isESModule, kebabCaseToCamelCase, loadEnvFile, loadExternalFile, loadExternalFileSync, localCache, logStack, logger, normalizePath, parseFileContent, removeColor, retryManager, searchConfigurationFile, setCache, spinnerFrames, v, x };
25
+ export { ANSIColors, index_d_exports as DefaultValues, type ESBuildPlugin, type GetConfigurationAndFilePathResult, type GetConfigurationOptions, type Logger, buildConfigurationFields, bundleFile, bundleFileSync, bundleJSFile, cacheDisk, cacheMemory, camelCaseToSentence, checkVersionsConsistency, clearModuleCache, clock, colon, colorize, colorizeKey, colorizeLocales, colorizeNumber, colorizePath, configESMxCJSRequire, extractErrorMessage, getAlias, getAppLogger, getConfiguration, getConfigurationAndFilePath, getEnvFilePath, getExtension, getPackageJsonPath, getProjectRequire, isESModule, kebabCaseToCamelCase, loadEnvFile, loadExternalFile, loadExternalFileSync, logStack, logger, normalizePath, parseFileContent, removeColor, retryManager, searchConfigurationFile, spinnerFrames, v, x };
@@ -10,12 +10,11 @@ type CacheSetArgs<T> = [...keys: CacheKey[], value: T];
10
10
  declare const setCache: <T>(...args: CacheSetArgs<T>) => void;
11
11
  declare const clearCache: (idOrKey: string) => void;
12
12
  declare const clearAllCache: () => void;
13
- declare const cache: {
13
+ declare const memoryCache: {
14
14
  get: <T>(...key: CacheKey[]) => T | undefined;
15
15
  set: <T>(...args: CacheSetArgs<T>) => void;
16
16
  clear: (idOrKey: string) => void;
17
17
  };
18
- /** ------------------------- Persistence layer ------------------------- **/
19
18
  type LocalCacheOptions = {
20
19
  /** Preferred new option name */
21
20
  persistent?: boolean;
@@ -29,7 +28,7 @@ type LocalCacheOptions = {
29
28
  compress?: boolean;
30
29
  };
31
30
  /** ------------------------- Local cache facade ------------------------- **/
32
- declare const localCache: (intlayerConfig: IntlayerConfig, keys: CacheKey[], options?: LocalCacheOptions) => {
31
+ declare const diskCache: (intlayerConfig: IntlayerConfig, keys: CacheKey[], options?: LocalCacheOptions) => {
33
32
  /** In-memory first, then disk (if enabled), otherwise undefined. */
34
33
  get: <T>() => Promise<T | undefined>;
35
34
  /** Sets in-memory (always) and persists to disk if enabled. */
@@ -46,5 +45,5 @@ declare const localCache: (intlayerConfig: IntlayerConfig, keys: CacheKey[], opt
46
45
  filePath: string;
47
46
  };
48
47
  //#endregion
49
- export { cache, clearAllCache, clearCache, getCache, localCache, setCache, stableStringify };
48
+ export { clearAllCache, clearCache, diskCache, getCache, memoryCache, setCache, stableStringify };
50
49
  //# sourceMappingURL=cache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","names":[],"sources":["../../../src/utils/cache.ts"],"sourcesContent":[],"mappings":";;;;cAuSa,2CAEX;AAFF;AAOE,KAgBG,QAAA,GAAQ,OAAA;AAGA,cAAA,QAAuB,EAAA,CAAA,CAAA,CAAA,CAAA,GAAa,GAAC,EAAd,QAAc,EAAA,EAAA,GAAD,CAAC,GAAA,SAAA;AAEhD,KAEG,YAAA,CAAA,CAAY,CAAA,GAAA,CAAA,GAAA,IAAA,EAAgB,QAAA,EAAmB,EAAC,KAAA,EAAD,CAAC,CAAA;AAExC,cAAA,QAAqC,EAAb,CAAA,CAAA,CAAA,CAAA,GAAA,IAAA,EAAA,YAAY,CAAC,CAAD,CAAA,EAAA,GAAA,IAAA;AAMpC,cAAA,UAGZ,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,GAAA,IAAA;AAEY,cAAA,aAEZ,EAAA,GAAA,GAAA,IAAA;AAEY,cAAA,KAIZ,EAAA;EAzBmC,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA,GAAA,GAAA,EAAA,QAAA,EAAA,EAAA,GAAa,CAAb,GAAA,SAAA;EAAa,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA,GAAA,IAAA,EAMZ,YANY,CAMC,CAND,CAAA,EAAA,GAAA,IAAA;EAMC,KAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,GAAA,IAAA;CAAb;;AAmBnC,KAIG,iBAAA,GAAiB;EAoCT;EACK,UAAA,CAAA,EAAA,OAAA;EACV;EACI,KAAA,CAAA,EAAA,MAAA;EAoHkB;EAAR,SAAA,CAAA,EAAA,MAAA;EAWW;EAQZ,SAAA,CAAA,EAAA,MAAA;EAQG;EAgBD,QAAA,CAAA,EAAA,OAAA;CAAO;;cAlKjB,6BACK,sBACV,sBACI;;gBAoHU,QAAQ;;2BAWG;;eAQZ;;kBAQG;;iBAgBD"}
1
+ {"version":3,"file":"cache.d.ts","names":[],"sources":["../../../src/utils/cache.ts"],"sourcesContent":[],"mappings":";;;;cAySa,2CAEX;AAFF;AAOE,KAgBG,QAAA,GAAQ,OAAA;AAGA,cAAA,QAAuB,EAAA,CAAA,CAAA,CAAA,CAAA,GAAA,GAAc,EAAd,QAAc,EAAA,EAAA,GAAD,CAAC,GAAA,SAAA;AAEhD,KAEG,YAAA,CAAA,CAAY,CAAA,GAAA,CAAA,GAAA,IAAA,EAAgB,QAAA,EAAmB,EAAC,KAAA,EAAD,CAAC,CAAA;AAExC,cAAA,QAAqC,EAAA,CAAb,CAAA,CAAA,CAAA,GAAA,IAAA,EAAA,YAAY,CAAC,CAAD,CAAA,EAAA,GAAA,IAAA;AAMpC,cAAA,UAGZ,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,GAAA,IAAA;AAEY,cAAA,aAEZ,EAAA,GAAA,GAAA,IAAA;AAEY,cAAA,WAIZ,EAAA;EAzBmC,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA,GAAA,GAAA,EAAA,QAAA,EAAA,EAAA,GAAa,CAAb,GAAA,SAAA;EAAa,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA,GAAA,IAAA,EAMZ,YANY,CAMC,CAND,CAAA,EAAA,GAAA,IAAA;EAMC,KAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,GAAA,IAAA;CAAb;KAiChC,iBAAA,GAjC4C;EAiC5C;EAoCQ,UAAA,CAAA,EAyNZ,OAAA;EAxNiB;EACV,KAAA,CAAA,EAAA,MAAA;EACI;EAoHkB,SAAA,CAAA,EAAA,MAAA;EAAR;EAWW,SAAA,CAAA,EAAA,MAAA;EAQZ;EAQG,QAAA,CAAA,EAAA,OAAA;CAgBD;;cAlKV,4BACK,sBACV,sBACI;;gBAoHU,QAAQ;;2BAWG;;eAQZ;;kBAQG;;iBAgBD"}
@@ -0,0 +1,35 @@
1
+ import { CacheKey } from "./cacheMemory.js";
2
+ import { IntlayerConfig } from "@intlayer/types";
3
+
4
+ //#region src/utils/cacheDisk.d.ts
5
+ type LocalCacheOptions = {
6
+ /** Preferred new option name */
7
+ persistent?: boolean;
8
+ /** Time-to-live in ms; if expired, disk entry is ignored. */
9
+ ttlMs?: number;
10
+ /** Max age in ms based on stored creation timestamp; invalidates on exceed. */
11
+ maxTimeMs?: number;
12
+ /** Optional namespace to separate different logical caches. */
13
+ namespace?: string;
14
+ /** Gzip values on disk (on by default for blobs > 1KB). */
15
+ compress?: boolean;
16
+ };
17
+ declare const cacheDisk: (intlayerConfig: IntlayerConfig, keys: CacheKey[], options?: LocalCacheOptions) => {
18
+ /** In-memory first, then disk (if enabled), otherwise undefined. */
19
+ get: <T>() => Promise<T | undefined>;
20
+ /** Sets in-memory (always) and persists to disk if enabled. */
21
+ set: (value: unknown) => Promise<void>;
22
+ /** Clears only this entry from memory and disk. */
23
+ clear: () => Promise<void>;
24
+ /** Clears ALL cached entries (memory Map and entire cacheDir namespace if persistent). */
25
+ clearAll: () => Promise<void>;
26
+ /** Expose the computed id (useful if you want to key other structures). */
27
+ isValid: () => Promise<boolean>;
28
+ /** Expose the computed id (useful if you want to key other structures). */
29
+ id: string;
30
+ /** Expose the absolute file path for debugging. */
31
+ filePath: string;
32
+ };
33
+ //#endregion
34
+ export { cacheDisk };
35
+ //# sourceMappingURL=cacheDisk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cacheDisk.d.ts","names":[],"sources":["../../../src/utils/cacheDisk.ts"],"sourcesContent":[],"mappings":";;;;KA8BK,iBAAA;;EAAA,UAAA,CAAA,EAAA,OAAiB;EAsCT;EACK,KAAA,CAAA,EAAA,MAAA;EACV;EACI,SAAA,CAAA,EAAA,MAAA;EAoHkB;EAAR,SAAA,CAAA,EAAA,MAAA;EAWW;EAQZ,QAAA,CAAA,EAAA,OAAA;CAQG;AAgBD,cAlKV,SAkKU,EAAA,CAAA,cAAA,EAjKL,cAiKK,EAAA,IAAA,EAhKf,QAgKe,EAAA,EAAA,OAAA,CAAA,EA/JX,iBA+JW,EAAA,GAAA;EAAO;gBA3CR,QAAQ;;2BAWG;;eAQZ;;kBAQG;;iBAgBD"}
@@ -0,0 +1,20 @@
1
+ //#region src/utils/cacheMemory.d.ts
2
+ /** Public stringify kept for convenience / debugging (now faster & broader). */
3
+ declare const stableStringify: (value: unknown, _stack?: WeakSet<object>) => string;
4
+ /** Compute a compact, stable id for arbitrary key tuples. */
5
+ declare const computeKeyId: (keyParts: unknown[]) => string;
6
+ /** ------------------------- In-memory cache ------------------------- **/
7
+ type CacheKey = unknown;
8
+ declare const getCache: <T>(...key: CacheKey[]) => T | undefined;
9
+ type CacheSetArgs<T> = [...keys: CacheKey[], value: T];
10
+ declare const setCache: <T>(...args: CacheSetArgs<T>) => void;
11
+ declare const clearCache: (idOrKey: string) => void;
12
+ declare const clearAllCache: () => void;
13
+ declare const cacheMemory: {
14
+ get: <T>(...key: CacheKey[]) => T | undefined;
15
+ set: <T>(...args: CacheSetArgs<T>) => void;
16
+ clear: (idOrKey: string) => void;
17
+ };
18
+ //#endregion
19
+ export { CacheKey, cacheMemory, clearAllCache, clearCache, computeKeyId, getCache, setCache, stableStringify };
20
+ //# sourceMappingURL=cacheMemory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cacheMemory.d.ts","names":[],"sources":["../../../src/utils/cacheMemory.ts"],"sourcesContent":[],"mappings":";;AAyRa,cAAA,eAEX,EAAA,CAAA,KAAA,EAAA,OAAA,EAAA,MAAA,CAAA,EAAA,OAAA,CAAA,MAAA,CAAA,EAAA,GAAA,MAAA;AAQF;AAaY,cAbC,YAaO,EAAA,CAAA,QAAA,EAAA,OAAA,EAAA,EAAA,GAAA,MAAA;AAGpB;AAIK,KAPO,QAAA,GAOK,OAAA;AAEJ,cANA,QAMqC,EAAA,CAAb,CAAA,CAAA,CAAA,GAAA,GAAA,EAND,QAMa,EAAA,EAAA,GANA,CAMA,GAAA,SAAA;AAMjD,KARK,YAWJ,CAAA,CAAA,CAAA,GAAA,CAAA,GAAA,IAAA,EAXgC,QAWhC,EAAA,EAAA,KAAA,EAXmD,CAWnD,CAAA;AAEY,cAXA,QAaZ,EAAA,CAAA,CAAA,CAAA,CAAA,GAAA,IAAA,EAboC,YAapC,CAbiD,CAajD,CAAA,EAAA,GAAA,IAAA;AAEY,cATA,UAaZ,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,GAAA,IAAA;AAzBmC,cAiBvB,aAjBuB,EAAA,GAAA,GAAA,IAAA;AAAa,cAqBpC,WArBoC,EAAA;EAMC,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA,GAAA,GAAA,EANd,QAMc,EAAA,EAAA,GAND,CAMC,GAAA,SAAA;EAAb,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA,GAAA,IAAA,EAAA,YAAA,CAAa,CAAb,CAAA,EAAA,GAAA,IAAA;EAAY,KAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,GAAA,IAAA"}
@@ -0,0 +1,7 @@
1
+ import { IntlayerConfig } from "@intlayer/types";
2
+
3
+ //#region src/utils/checkVersionsConsistency.d.ts
4
+ declare const checkVersionsConsistency: (configuration: IntlayerConfig) => void;
5
+ //#endregion
6
+ export { checkVersionsConsistency };
7
+ //# sourceMappingURL=checkVersionsConsistency.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkVersionsConsistency.d.ts","names":[],"sources":["../../../src/utils/checkVersionsConsistency.ts"],"sourcesContent":[],"mappings":";;;cA6Ca,0CAA2C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intlayer/config",
3
- "version": "7.1.0",
3
+ "version": "7.1.1-canary.1",
4
4
  "private": false,
5
5
  "description": "Retrieve Intlayer configurations and manage environment variables for both server-side and client-side environments.",
6
6
  "keywords": [
@@ -95,7 +95,7 @@
95
95
  "typecheck": "tsc --noEmit --project tsconfig.types.json"
96
96
  },
97
97
  "dependencies": {
98
- "@intlayer/types": "7.1.0",
98
+ "@intlayer/types": "7.1.1-canary.1",
99
99
  "deepmerge": "4.3.1",
100
100
  "dotenv": "16.6.1",
101
101
  "esbuild": "0.25.2"
@@ -106,12 +106,12 @@
106
106
  "@utils/ts-config-types": "1.0.4",
107
107
  "@utils/tsdown-config": "1.0.4",
108
108
  "rimraf": "6.1.0",
109
- "tsdown": "0.16.4",
109
+ "tsdown": "0.16.5",
110
110
  "typescript": "5.9.3",
111
111
  "vitest": "4.0.8"
112
112
  },
113
113
  "peerDependencies": {
114
- "intlayer": "7.1.0",
114
+ "intlayer": "7.1.1-canary.1",
115
115
  "react": ">=16.0.0"
116
116
  },
117
117
  "peerDependenciesMeta": {