@intlayer/core 5.3.0 → 5.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/dist/cjs/dictionaryManipulator/getNodeChildren.cjs +1 -1
  2. package/dist/cjs/dictionaryManipulator/getNodeChildren.cjs.map +1 -1
  3. package/dist/cjs/dictionaryManipulator/getNodeType.cjs +2 -14
  4. package/dist/cjs/dictionaryManipulator/getNodeType.cjs.map +1 -1
  5. package/dist/cjs/interpreter/getContent/getContent.cjs +2 -0
  6. package/dist/cjs/interpreter/getContent/getContent.cjs.map +1 -1
  7. package/dist/cjs/interpreter/getContent/plugins.cjs +52 -3
  8. package/dist/cjs/interpreter/getContent/plugins.cjs.map +1 -1
  9. package/dist/cjs/interpreter/getInsertion.cjs +29 -0
  10. package/dist/cjs/interpreter/getInsertion.cjs.map +1 -0
  11. package/dist/cjs/interpreter/getTranslation.cjs.map +1 -1
  12. package/dist/cjs/transpiler/file/file.cjs +57 -0
  13. package/dist/cjs/transpiler/file/file.cjs.map +1 -0
  14. package/dist/cjs/transpiler/file/index.cjs +23 -0
  15. package/dist/cjs/transpiler/file/index.cjs.map +1 -0
  16. package/dist/cjs/transpiler/index.cjs +2 -0
  17. package/dist/cjs/transpiler/index.cjs.map +1 -1
  18. package/dist/cjs/transpiler/insertion/getInsertionValues.cjs +34 -0
  19. package/dist/cjs/transpiler/insertion/getInsertionValues.cjs.map +1 -0
  20. package/dist/cjs/transpiler/insertion/index.cjs +25 -0
  21. package/dist/cjs/transpiler/insertion/index.cjs.map +1 -0
  22. package/dist/cjs/transpiler/insertion/insertion.cjs +54 -0
  23. package/dist/cjs/transpiler/insertion/insertion.cjs.map +1 -0
  24. package/dist/cjs/transpiler/markdown/getMarkdownMetadata.cjs +30 -22
  25. package/dist/cjs/transpiler/markdown/getMarkdownMetadata.cjs.map +1 -1
  26. package/dist/cjs/transpiler/markdown/markdown.cjs +13 -2
  27. package/dist/cjs/transpiler/markdown/markdown.cjs.map +1 -1
  28. package/dist/cjs/transpiler/translation/index.cjs +1 -3
  29. package/dist/cjs/transpiler/translation/index.cjs.map +1 -1
  30. package/dist/cjs/transpiler/translation/translation.cjs.map +1 -1
  31. package/dist/cjs/types/dictionary.cjs.map +1 -1
  32. package/dist/cjs/types/index.cjs +3 -1
  33. package/dist/cjs/types/index.cjs.map +1 -1
  34. package/dist/cjs/types/keyPath.cjs.map +1 -1
  35. package/dist/cjs/types/nodeType.cjs +2 -0
  36. package/dist/cjs/types/nodeType.cjs.map +1 -1
  37. package/dist/cjs/{transpiler/translation/types.cjs → types/translation.cjs} +3 -3
  38. package/dist/cjs/types/translation.cjs.map +1 -0
  39. package/dist/esm/dictionaryManipulator/getNodeChildren.mjs +1 -1
  40. package/dist/esm/dictionaryManipulator/getNodeChildren.mjs.map +1 -1
  41. package/dist/esm/dictionaryManipulator/getNodeType.mjs +2 -14
  42. package/dist/esm/dictionaryManipulator/getNodeType.mjs.map +1 -1
  43. package/dist/esm/interpreter/getContent/getContent.mjs +4 -1
  44. package/dist/esm/interpreter/getContent/getContent.mjs.map +1 -1
  45. package/dist/esm/interpreter/getContent/plugins.mjs +51 -3
  46. package/dist/esm/interpreter/getContent/plugins.mjs.map +1 -1
  47. package/dist/esm/interpreter/getInsertion.mjs +5 -0
  48. package/dist/esm/interpreter/getInsertion.mjs.map +1 -0
  49. package/dist/esm/interpreter/getTranslation.mjs.map +1 -1
  50. package/dist/esm/transpiler/file/file.mjs +40 -0
  51. package/dist/esm/transpiler/file/file.mjs.map +1 -0
  52. package/dist/esm/transpiler/file/index.mjs +2 -0
  53. package/dist/esm/transpiler/file/index.mjs.map +1 -0
  54. package/dist/esm/transpiler/index.mjs +1 -0
  55. package/dist/esm/transpiler/index.mjs.map +1 -1
  56. package/dist/esm/transpiler/insertion/getInsertionValues.mjs +10 -0
  57. package/dist/esm/transpiler/insertion/getInsertionValues.mjs.map +1 -0
  58. package/dist/esm/transpiler/insertion/index.mjs +3 -0
  59. package/dist/esm/transpiler/insertion/index.mjs.map +1 -0
  60. package/dist/esm/transpiler/insertion/insertion.mjs +33 -0
  61. package/dist/esm/transpiler/insertion/insertion.mjs.map +1 -0
  62. package/dist/esm/transpiler/markdown/getMarkdownMetadata.mjs +30 -22
  63. package/dist/esm/transpiler/markdown/getMarkdownMetadata.mjs.map +1 -1
  64. package/dist/esm/transpiler/markdown/markdown.mjs +13 -2
  65. package/dist/esm/transpiler/markdown/markdown.mjs.map +1 -1
  66. package/dist/esm/transpiler/translation/index.mjs +0 -1
  67. package/dist/esm/transpiler/translation/index.mjs.map +1 -1
  68. package/dist/esm/transpiler/translation/translation.mjs.map +1 -1
  69. package/dist/esm/types/index.mjs +1 -0
  70. package/dist/esm/types/index.mjs.map +1 -1
  71. package/dist/esm/types/nodeType.mjs +2 -0
  72. package/dist/esm/types/nodeType.mjs.map +1 -1
  73. package/dist/esm/types/translation.mjs +1 -0
  74. package/dist/types/dictionaryManipulator/getDefaultNode.d.ts +1 -1
  75. package/dist/types/dictionaryManipulator/getDefaultNode.d.ts.map +1 -1
  76. package/dist/types/dictionaryManipulator/getNodeChildren.d.ts.map +1 -1
  77. package/dist/types/dictionaryManipulator/getNodeType.d.ts.map +1 -1
  78. package/dist/types/interpreter/getContent/getContent.d.ts.map +1 -1
  79. package/dist/types/interpreter/getContent/plugins.d.ts +12 -0
  80. package/dist/types/interpreter/getContent/plugins.d.ts.map +1 -1
  81. package/dist/types/interpreter/getInsertion.d.ts +16 -0
  82. package/dist/types/interpreter/getInsertion.d.ts.map +1 -0
  83. package/dist/types/interpreter/getTranslation.d.ts +1 -1
  84. package/dist/types/interpreter/getTranslation.d.ts.map +1 -1
  85. package/dist/types/transpiler/condition/condition.d.ts +1 -1
  86. package/dist/types/transpiler/condition/condition.d.ts.map +1 -1
  87. package/dist/types/transpiler/enumeration/enumeration.d.ts +1 -1
  88. package/dist/types/transpiler/enumeration/enumeration.d.ts.map +1 -1
  89. package/dist/types/transpiler/file/file.d.ts +23 -0
  90. package/dist/types/transpiler/file/file.d.ts.map +1 -0
  91. package/dist/types/transpiler/file/index.d.ts +2 -0
  92. package/dist/types/transpiler/file/index.d.ts.map +1 -0
  93. package/dist/types/transpiler/index.d.ts +1 -0
  94. package/dist/types/transpiler/index.d.ts.map +1 -1
  95. package/dist/types/transpiler/insertion/getInsertionValues.d.ts +2 -0
  96. package/dist/types/transpiler/insertion/getInsertionValues.d.ts.map +1 -0
  97. package/dist/types/transpiler/insertion/index.d.ts +3 -0
  98. package/dist/types/transpiler/insertion/index.d.ts.map +1 -0
  99. package/dist/types/transpiler/insertion/insertion.d.ts +19 -0
  100. package/dist/types/transpiler/insertion/insertion.d.ts.map +1 -0
  101. package/dist/types/transpiler/markdown/getMarkdownMetadata.d.ts +1 -1
  102. package/dist/types/transpiler/markdown/getMarkdownMetadata.d.ts.map +1 -1
  103. package/dist/types/transpiler/markdown/markdown.d.ts +1 -1
  104. package/dist/types/transpiler/markdown/markdown.d.ts.map +1 -1
  105. package/dist/types/transpiler/translation/index.d.ts +0 -1
  106. package/dist/types/transpiler/translation/index.d.ts.map +1 -1
  107. package/dist/types/transpiler/translation/translation.d.ts +8 -3
  108. package/dist/types/transpiler/translation/translation.d.ts.map +1 -1
  109. package/dist/types/types/dictionary.d.ts +8 -2
  110. package/dist/types/types/dictionary.d.ts.map +1 -1
  111. package/dist/types/types/index.d.ts +1 -0
  112. package/dist/types/types/index.d.ts.map +1 -1
  113. package/dist/types/types/keyPath.d.ts +9 -1
  114. package/dist/types/types/keyPath.d.ts.map +1 -1
  115. package/dist/types/types/nodeType.d.ts +10 -4
  116. package/dist/types/types/nodeType.d.ts.map +1 -1
  117. package/dist/types/{transpiler/translation/types.d.ts → types/translation.d.ts} +1 -3
  118. package/dist/types/types/translation.d.ts.map +1 -0
  119. package/package.json +8 -8
  120. package/dist/cjs/transpiler/translation/types.cjs.map +0 -1
  121. package/dist/esm/transpiler/translation/types.mjs +0 -1
  122. package/dist/types/transpiler/translation/types.d.ts.map +0 -1
  123. /package/dist/esm/{transpiler/translation/types.mjs.map → types/translation.mjs.map} +0 -0
@@ -16,33 +16,41 @@ const parseToObject = (input) => {
16
16
  return JSON.parse(normalizedInput);
17
17
  };
18
18
  const getMarkdownMetadata = (markdown) => {
19
- const lines = markdown.split(/\r?\n/);
20
- const metadata = {};
21
- let inMetadataBlock = false;
22
- for (const line of lines) {
23
- const trimmedLine = line.trim();
24
- if (trimmedLine === "---") {
25
- if (!inMetadataBlock) {
26
- inMetadataBlock = true;
27
- continue;
28
- } else {
29
- break;
30
- }
19
+ try {
20
+ const lines = markdown.split(/\r?\n/);
21
+ const firstNonEmptyLine = lines.find((line) => line.trim() !== "");
22
+ if (!firstNonEmptyLine || firstNonEmptyLine.trim() !== "---") {
23
+ return {};
31
24
  }
32
- if (inMetadataBlock) {
33
- const match = line.match(/^([^:]+)\s*:\s*(.*)$/);
34
- if (match) {
35
- const key = match[1].trim();
36
- const value = match[2].trim();
37
- try {
38
- metadata[key] = parseToObject(value);
39
- } catch (e) {
40
- metadata[key] = value;
25
+ const metadata = {};
26
+ let inMetadataBlock = false;
27
+ for (const line of lines) {
28
+ const trimmedLine = line.trim();
29
+ if (trimmedLine === "---") {
30
+ if (!inMetadataBlock) {
31
+ inMetadataBlock = true;
32
+ continue;
33
+ } else {
34
+ break;
35
+ }
36
+ }
37
+ if (inMetadataBlock) {
38
+ const match = line.match(/^([^:]+)\s*:\s*(.*)$/);
39
+ if (match) {
40
+ const key = match[1].trim();
41
+ const value = match[2].trim();
42
+ try {
43
+ metadata[key] = parseToObject(value);
44
+ } catch (e) {
45
+ metadata[key] = value;
46
+ }
41
47
  }
42
48
  }
43
49
  }
50
+ return metadata;
51
+ } catch (e) {
52
+ return void 0;
44
53
  }
45
- return metadata;
46
54
  };
47
55
  export {
48
56
  getMarkdownMetadata
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/transpiler/markdown/getMarkdownMetadata.ts"],"sourcesContent":["const parseToObject = <T = any>(input: string): T | null => {\n // Normalize different bracket types and keys/values\n let normalizedInput = input\n .trim()\n .replace(/^\\[/, '[') // Keep array brackets\n .replace(/^\\{/, '{') // Keep object brackets\n .replace(/\\]$/, ']') // Keep array brackets\n .replace(/\\}$/, '}') // Keep object brackets\n .replace(/([\\w\\d_]+)\\s*:/g, '\"$1\":') // Ensure JSON-valid keys (e.g., key: -> \"key\":)\n .replace(/:\\s*([a-zA-Z_][\\w\\d_]*)/g, ': \"$1\"'); // Handle unquoted string values\n\n // Fix arrays with unquoted items (e.g., [content, anotherContent])\n normalizedInput = normalizedInput.replace(\n /\\[([^\\[\\]]+?)\\]/g,\n (_match, arrayContent) => {\n const newContent = (arrayContent as string)\n .split(',')\n .map((item) => {\n const trimmed = item.trim();\n // If already quoted or is a valid number, return as is.\n if (\n (trimmed.startsWith('\"') && trimmed.endsWith('\"')) ||\n !isNaN(Number(trimmed))\n ) {\n return trimmed;\n }\n return `\"${trimmed}\"`;\n })\n .join(', ');\n return `[${newContent}]`;\n }\n );\n\n // Parse the string into an object\n return JSON.parse(normalizedInput) as T;\n};\n\nexport const getMarkdownMetadata = (markdown: string): Record<string, any> => {\n const lines = markdown.split(/\\r?\\n/);\n const metadata: Record<string, any> = {};\n let inMetadataBlock = false;\n\n for (const line of lines) {\n const trimmedLine = line.trim();\n\n // Check for the start/end of metadata block\n if (trimmedLine === '---') {\n // Toggle metadata block on first '---', then break on second\n if (!inMetadataBlock) {\n inMetadataBlock = true;\n continue;\n } else {\n // End of metadata block\n break;\n }\n }\n\n // If we're in the metadata block, parse key: value\n if (inMetadataBlock) {\n const match = line.match(/^([^:]+)\\s*:\\s*(.*)$/);\n if (match) {\n const key: string = match[1].trim();\n const value: string = match[2].trim();\n\n try {\n metadata[key] = parseToObject(value);\n } catch (e) {\n metadata[key] = value;\n }\n }\n }\n }\n\n return metadata;\n};\n"],"mappings":"AAAA,MAAM,gBAAgB,CAAU,UAA4B;AAE1D,MAAI,kBAAkB,MACnB,KAAK,EACL,QAAQ,OAAO,GAAG,EAClB,QAAQ,OAAO,GAAG,EAClB,QAAQ,OAAO,GAAG,EAClB,QAAQ,OAAO,GAAG,EAClB,QAAQ,mBAAmB,OAAO,EAClC,QAAQ,4BAA4B,QAAQ;AAG/C,oBAAkB,gBAAgB;AAAA,IAChC;AAAA,IACA,CAAC,QAAQ,iBAAiB;AACxB,YAAM,aAAc,aACjB,MAAM,GAAG,EACT,IAAI,CAAC,SAAS;AACb,cAAM,UAAU,KAAK,KAAK;AAE1B,YACG,QAAQ,WAAW,GAAG,KAAK,QAAQ,SAAS,GAAG,KAChD,CAAC,MAAM,OAAO,OAAO,CAAC,GACtB;AACA,iBAAO;AAAA,QACT;AACA,eAAO,IAAI,OAAO;AAAA,MACpB,CAAC,EACA,KAAK,IAAI;AACZ,aAAO,IAAI,UAAU;AAAA,IACvB;AAAA,EACF;AAGA,SAAO,KAAK,MAAM,eAAe;AACnC;AAEO,MAAM,sBAAsB,CAAC,aAA0C;AAC5E,QAAM,QAAQ,SAAS,MAAM,OAAO;AACpC,QAAM,WAAgC,CAAC;AACvC,MAAI,kBAAkB;AAEtB,aAAW,QAAQ,OAAO;AACxB,UAAM,cAAc,KAAK,KAAK;AAG9B,QAAI,gBAAgB,OAAO;AAEzB,UAAI,CAAC,iBAAiB;AACpB,0BAAkB;AAClB;AAAA,MACF,OAAO;AAEL;AAAA,MACF;AAAA,IACF;AAGA,QAAI,iBAAiB;AACnB,YAAM,QAAQ,KAAK,MAAM,sBAAsB;AAC/C,UAAI,OAAO;AACT,cAAM,MAAc,MAAM,CAAC,EAAE,KAAK;AAClC,cAAM,QAAgB,MAAM,CAAC,EAAE,KAAK;AAEpC,YAAI;AACF,mBAAS,GAAG,IAAI,cAAc,KAAK;AAAA,QACrC,SAAS,GAAG;AACV,mBAAS,GAAG,IAAI;AAAA,QAClB;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../src/transpiler/markdown/getMarkdownMetadata.ts"],"sourcesContent":["const parseToObject = <T = any>(input: string): T | null => {\n // Normalize different bracket types and keys/values\n let normalizedInput = input\n .trim()\n .replace(/^\\[/, '[') // Keep array brackets\n .replace(/^\\{/, '{') // Keep object brackets\n .replace(/\\]$/, ']') // Keep array brackets\n .replace(/\\}$/, '}') // Keep object brackets\n .replace(/([\\w\\d_]+)\\s*:/g, '\"$1\":') // Ensure JSON-valid keys (e.g., key: -> \"key\":)\n .replace(/:\\s*([a-zA-Z_][\\w\\d_]*)/g, ': \"$1\"'); // Handle unquoted string values\n\n // Fix arrays with unquoted items (e.g., [content, anotherContent])\n normalizedInput = normalizedInput.replace(\n /\\[([^\\[\\]]+?)\\]/g,\n (_match, arrayContent) => {\n const newContent = (arrayContent as string)\n .split(',')\n .map((item) => {\n const trimmed = item.trim();\n // If already quoted or is a valid number, return as is.\n if (\n (trimmed.startsWith('\"') && trimmed.endsWith('\"')) ||\n !isNaN(Number(trimmed))\n ) {\n return trimmed;\n }\n return `\"${trimmed}\"`;\n })\n .join(', ');\n return `[${newContent}]`;\n }\n );\n\n // Parse the string into an object\n return JSON.parse(normalizedInput) as T;\n};\n\nexport const getMarkdownMetadata = (\n markdown: string\n): Record<string, any> | undefined => {\n try {\n const lines = markdown.split(/\\r?\\n/);\n\n // Check if the very first non-empty line is the metadata start delimiter.\n const firstNonEmptyLine = lines.find((line) => line.trim() !== '');\n\n if (!firstNonEmptyLine || firstNonEmptyLine.trim() !== '---') {\n return {};\n }\n\n const metadata: Record<string, any> = {};\n let inMetadataBlock = false;\n\n for (const line of lines) {\n const trimmedLine = line.trim();\n\n // Toggle metadata block on encountering the delimiter.\n if (trimmedLine === '---') {\n if (!inMetadataBlock) {\n // Begin metadata block.\n inMetadataBlock = true;\n continue;\n } else {\n // End of metadata block; stop processing.\n break;\n }\n }\n\n // If we're inside the metadata block, parse key: value pairs.\n if (inMetadataBlock) {\n const match = line.match(/^([^:]+)\\s*:\\s*(.*)$/);\n if (match) {\n const key = match[1].trim();\n const value = match[2].trim();\n try {\n metadata[key] = parseToObject(value);\n } catch (e) {\n metadata[key] = value;\n }\n }\n }\n }\n\n return metadata;\n } catch (e) {\n return undefined;\n }\n};\n"],"mappings":"AAAA,MAAM,gBAAgB,CAAU,UAA4B;AAE1D,MAAI,kBAAkB,MACnB,KAAK,EACL,QAAQ,OAAO,GAAG,EAClB,QAAQ,OAAO,GAAG,EAClB,QAAQ,OAAO,GAAG,EAClB,QAAQ,OAAO,GAAG,EAClB,QAAQ,mBAAmB,OAAO,EAClC,QAAQ,4BAA4B,QAAQ;AAG/C,oBAAkB,gBAAgB;AAAA,IAChC;AAAA,IACA,CAAC,QAAQ,iBAAiB;AACxB,YAAM,aAAc,aACjB,MAAM,GAAG,EACT,IAAI,CAAC,SAAS;AACb,cAAM,UAAU,KAAK,KAAK;AAE1B,YACG,QAAQ,WAAW,GAAG,KAAK,QAAQ,SAAS,GAAG,KAChD,CAAC,MAAM,OAAO,OAAO,CAAC,GACtB;AACA,iBAAO;AAAA,QACT;AACA,eAAO,IAAI,OAAO;AAAA,MACpB,CAAC,EACA,KAAK,IAAI;AACZ,aAAO,IAAI,UAAU;AAAA,IACvB;AAAA,EACF;AAGA,SAAO,KAAK,MAAM,eAAe;AACnC;AAEO,MAAM,sBAAsB,CACjC,aACoC;AACpC,MAAI;AACF,UAAM,QAAQ,SAAS,MAAM,OAAO;AAGpC,UAAM,oBAAoB,MAAM,KAAK,CAAC,SAAS,KAAK,KAAK,MAAM,EAAE;AAEjE,QAAI,CAAC,qBAAqB,kBAAkB,KAAK,MAAM,OAAO;AAC5D,aAAO,CAAC;AAAA,IACV;AAEA,UAAM,WAAgC,CAAC;AACvC,QAAI,kBAAkB;AAEtB,eAAW,QAAQ,OAAO;AACxB,YAAM,cAAc,KAAK,KAAK;AAG9B,UAAI,gBAAgB,OAAO;AACzB,YAAI,CAAC,iBAAiB;AAEpB,4BAAkB;AAClB;AAAA,QACF,OAAO;AAEL;AAAA,QACF;AAAA,MACF;AAGA,UAAI,iBAAiB;AACnB,cAAM,QAAQ,KAAK,MAAM,sBAAsB;AAC/C,YAAI,OAAO;AACT,gBAAM,MAAM,MAAM,CAAC,EAAE,KAAK;AAC1B,gBAAM,QAAQ,MAAM,CAAC,EAAE,KAAK;AAC5B,cAAI;AACF,qBAAS,GAAG,IAAI,cAAc,KAAK;AAAA,UACrC,SAAS,GAAG;AACV,qBAAS,GAAG,IAAI;AAAA,UAClB;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,WAAO;AAAA,EACT,SAAS,GAAG;AACV,WAAO;AAAA,EACT;AACF;","names":[]}
@@ -4,8 +4,19 @@ import {
4
4
  } from "../../types/index.mjs";
5
5
  import { getMarkdownMetadata } from "./getMarkdownMetadata.mjs";
6
6
  const markdown = (content) => {
7
- const metadata = getMarkdownMetadata(content);
8
- return formatNodeType(NodeType.Markdown, content, { metadata });
7
+ const getMetadata = () => {
8
+ if (typeof content === "string") {
9
+ return getMarkdownMetadata(content);
10
+ }
11
+ if (typeof content === "function") {
12
+ return () => getMarkdownMetadata(content());
13
+ } else if (typeof content.then === "function") {
14
+ return async () => getMarkdownMetadata(await content);
15
+ }
16
+ };
17
+ return formatNodeType(NodeType.Markdown, content, {
18
+ metadata: getMetadata()
19
+ });
9
20
  };
10
21
  export {
11
22
  markdown as md
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/transpiler/markdown/markdown.ts"],"sourcesContent":["import {\n formatNodeType,\n NodeType,\n type TypedNodeModel,\n} from '../../types/index';\nimport { getMarkdownMetadata } from './getMarkdownMetadata';\n\nexport type MarkdownContentState = string;\n\nexport type MarkdownContent = TypedNodeModel<\n NodeType.Markdown,\n MarkdownContentState\n>;\n\n/**\n * Function intended to be used to build intlayer dictionaries.\n *\n * Allow to pick a content based on a quantity.\n *\n * Usage:\n *\n * ```ts\n * markdown('## Hello world!');\n * ```\n *\n */\nconst markdown = (content: string | Promise<string>): MarkdownContent => {\n const metadata = getMarkdownMetadata(content as string);\n\n return formatNodeType(NodeType.Markdown, content as string, { metadata });\n};\n\nexport { markdown as md };\n"],"mappings":"AAAA;AAAA,EACE;AAAA,EACA;AAAA,OAEK;AACP,SAAS,2BAA2B;AAqBpC,MAAM,WAAW,CAAC,YAAuD;AACvE,QAAM,WAAW,oBAAoB,OAAiB;AAEtD,SAAO,eAAe,SAAS,UAAU,SAAmB,EAAE,SAAS,CAAC;AAC1E;","names":[]}
1
+ {"version":3,"sources":["../../../../src/transpiler/markdown/markdown.ts"],"sourcesContent":["import {\n formatNodeType,\n NodeType,\n type TypedNodeModel,\n} from '../../types/index';\nimport { getMarkdownMetadata } from './getMarkdownMetadata';\n\nexport type MarkdownContentState = string;\n\nexport type MarkdownContent = TypedNodeModel<\n NodeType.Markdown,\n MarkdownContentState\n>;\n\n/**\n * Function intended to be used to build intlayer dictionaries.\n *\n * Allow to pick a content based on a quantity.\n *\n * Usage:\n *\n * ```ts\n * markdown('## Hello world!');\n * ```\n *\n */\nconst markdown = <Content = unknown>(content: Content): MarkdownContent => {\n const getMetadata = () => {\n if (typeof content === 'string') {\n return getMarkdownMetadata(content);\n }\n if (typeof content === 'function') {\n return () => getMarkdownMetadata(content());\n } else if (typeof (content as Promise<string>).then === 'function') {\n return async () =>\n getMarkdownMetadata(await (content as Promise<string>));\n }\n };\n\n return formatNodeType(NodeType.Markdown, content as string, {\n metadata: getMetadata(),\n });\n};\n\nexport { markdown as md };\n"],"mappings":"AAAA;AAAA,EACE;AAAA,EACA;AAAA,OAEK;AACP,SAAS,2BAA2B;AAqBpC,MAAM,WAAW,CAAoB,YAAsC;AACzE,QAAM,cAAc,MAAM;AACxB,QAAI,OAAO,YAAY,UAAU;AAC/B,aAAO,oBAAoB,OAAO;AAAA,IACpC;AACA,QAAI,OAAO,YAAY,YAAY;AACjC,aAAO,MAAM,oBAAoB,QAAQ,CAAC;AAAA,IAC5C,WAAW,OAAQ,QAA4B,SAAS,YAAY;AAClE,aAAO,YACL,oBAAoB,MAAO,OAA2B;AAAA,IAC1D;AAAA,EACF;AAEA,SAAO,eAAe,SAAS,UAAU,SAAmB;AAAA,IAC1D,UAAU,YAAY;AAAA,EACxB,CAAC;AACH;","names":[]}
@@ -1,3 +1,2 @@
1
1
  export * from "./translation.mjs";
2
- export * from "./types.mjs";
3
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/transpiler/translation/index.ts"],"sourcesContent":["export * from './translation';\nexport * from './types';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../../src/transpiler/translation/index.ts"],"sourcesContent":["export * from './translation';\n"],"mappings":"AAAA,cAAc;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/transpiler/translation/translation.ts"],"sourcesContent":["import { formatNodeType, NodeType } from '../../types/index';\nimport type { LanguageContent, TranslationContent } from './types';\n\n/**\n *\n * Function intended to be used to build intlayer dictionaries.\n *\n * Get the content of a translation based on the locale.\n *\n * Usage:\n *\n * ```ts\n * translation<string>({\n * \"en\": \"Hello\",\n * \"fr\": \"Bonjour\",\n * // ... any other available locale\n * })\n * ```\n *\n * Using TypeScript:\n * - this function require each locale to be defined if defined in the project configuration.\n * - If a locale is missing, it will make each existing locale optional and raise an error if the locale is not found.\n */\nconst translation = <\n Content = unknown,\n ContentRecord extends LanguageContent<Content> = LanguageContent<Content>,\n>(\n content: ContentRecord\n) =>\n formatNodeType(NodeType.Translation, content) satisfies TranslationContent<\n Content,\n ContentRecord\n >;\n\nexport { translation as t };\n"],"mappings":"AAAA,SAAS,gBAAgB,gBAAgB;AAuBzC,MAAM,cAAc,CAIlB,YAEA,eAAe,SAAS,aAAa,OAAO;","names":[]}
1
+ {"version":3,"sources":["../../../../src/transpiler/translation/translation.ts"],"sourcesContent":["import type { LanguageContent } from 'intlayer';\nimport { formatNodeType, NodeType, TypedNodeModel } from '../../types/index';\n\nexport type TranslationContent<\n Content = unknown,\n RecordContent extends LanguageContent<Content> = LanguageContent<Content>,\n> = TypedNodeModel<NodeType.Translation, RecordContent>;\n\n/**\n *\n * Function intended to be used to build intlayer dictionaries.\n *\n * Get the content of a translation based on the locale.\n *\n * Usage:\n *\n * ```ts\n * translation<string>({\n * \"en\": \"Hello\",\n * \"fr\": \"Bonjour\",\n * // ... any other available locale\n * })\n * ```\n *\n * Using TypeScript:\n * - this function require each locale to be defined if defined in the project configuration.\n * - If a locale is missing, it will make each existing locale optional and raise an error if the locale is not found.\n */\nconst translation = <\n Content = unknown,\n ContentRecord extends LanguageContent<Content> = LanguageContent<Content>,\n>(\n content: ContentRecord\n) =>\n formatNodeType(NodeType.Translation, content) satisfies TranslationContent<\n Content,\n ContentRecord\n >;\n\nexport { translation as t };\n"],"mappings":"AACA,SAAS,gBAAgB,gBAAgC;AA2BzD,MAAM,cAAc,CAIlB,YAEA,eAAe,SAAS,aAAa,OAAO;","names":[]}
@@ -1,4 +1,5 @@
1
1
  export * from "./dictionary.mjs";
2
2
  export * from "./nodeType.mjs";
3
3
  export * from "./keyPath.mjs";
4
+ export * from "./translation.mjs";
4
5
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/types/index.ts"],"sourcesContent":["export * from './dictionary';\nexport * from './nodeType';\nexport * from './keyPath';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../src/types/index.ts"],"sourcesContent":["export * from './dictionary';\nexport * from './nodeType';\nexport * from './keyPath';\nexport * from './translation';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
@@ -2,6 +2,8 @@ var NodeType = /* @__PURE__ */ ((NodeType2) => {
2
2
  NodeType2["Translation"] = "translation";
3
3
  NodeType2["Enumeration"] = "enumeration";
4
4
  NodeType2["Condition"] = "condition";
5
+ NodeType2["Insertion"] = "insertion";
6
+ NodeType2["File"] = "file";
5
7
  NodeType2["Object"] = "object";
6
8
  NodeType2["Array"] = "array";
7
9
  NodeType2["Nested"] = "nested";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/types/nodeType.ts"],"sourcesContent":["export enum NodeType {\n Translation = 'translation',\n Enumeration = 'enumeration',\n Condition = 'condition',\n Object = 'object',\n Array = 'array',\n Nested = 'nested',\n ReactNode = 'reactNode',\n Markdown = 'markdown',\n Text = 'text',\n Number = 'number',\n Boolean = 'boolean',\n Unknown = 'unknown',\n}\n\nexport type TypedNodeModel<T extends NodeType, Content> = {\n nodeType: T | `${T}`;\n} & {\n [K in T]: Content;\n};\n\nexport const formatNodeType = <T extends NodeType, Content = any>(\n nodeType: T | `${T}`,\n content: Content,\n additionalAttributes?: { [key: string]: any }\n) =>\n ({\n ...additionalAttributes,\n nodeType,\n [nodeType]: content,\n }) as TypedNodeModel<T, Content>;\n"],"mappings":"AAAO,IAAK,WAAL,kBAAKA,cAAL;AACL,EAAAA,UAAA,iBAAc;AACd,EAAAA,UAAA,iBAAc;AACd,EAAAA,UAAA,eAAY;AACZ,EAAAA,UAAA,YAAS;AACT,EAAAA,UAAA,WAAQ;AACR,EAAAA,UAAA,YAAS;AACT,EAAAA,UAAA,eAAY;AACZ,EAAAA,UAAA,cAAW;AACX,EAAAA,UAAA,UAAO;AACP,EAAAA,UAAA,YAAS;AACT,EAAAA,UAAA,aAAU;AACV,EAAAA,UAAA,aAAU;AAZA,SAAAA;AAAA,GAAA;AAqBL,MAAM,iBAAiB,CAC5B,UACA,SACA,0BAEC;AAAA,EACC,GAAG;AAAA,EACH;AAAA,EACA,CAAC,QAAQ,GAAG;AACd;","names":["NodeType"]}
1
+ {"version":3,"sources":["../../../src/types/nodeType.ts"],"sourcesContent":["export enum NodeType {\n Translation = 'translation',\n Enumeration = 'enumeration',\n Condition = 'condition',\n Insertion = 'insertion',\n File = 'file',\n Object = 'object',\n Array = 'array',\n Nested = 'nested',\n ReactNode = 'reactNode',\n Markdown = 'markdown',\n Text = 'text',\n Number = 'number',\n Boolean = 'boolean',\n Unknown = 'unknown',\n}\n\ntype AdditionalAttributesType = {\n [key: string]: any;\n};\n\nexport type TypedNodeModel<\n T extends NodeType,\n Content,\n AdditionalAttributes extends AdditionalAttributesType = {},\n> = {\n nodeType: T | `${T}`;\n} & {\n [K in T]: Content;\n} & AdditionalAttributes;\n\nexport const formatNodeType = <\n T extends NodeType,\n Content = any,\n AdditionalAttributes extends AdditionalAttributesType = {},\n>(\n nodeType: T | `${T}`,\n content: Content,\n additionalAttributes?: { [key: string]: any }\n) =>\n ({\n ...additionalAttributes,\n nodeType,\n [nodeType]: content,\n }) as TypedNodeModel<T, Content, AdditionalAttributes>;\n"],"mappings":"AAAO,IAAK,WAAL,kBAAKA,cAAL;AACL,EAAAA,UAAA,iBAAc;AACd,EAAAA,UAAA,iBAAc;AACd,EAAAA,UAAA,eAAY;AACZ,EAAAA,UAAA,eAAY;AACZ,EAAAA,UAAA,UAAO;AACP,EAAAA,UAAA,YAAS;AACT,EAAAA,UAAA,WAAQ;AACR,EAAAA,UAAA,YAAS;AACT,EAAAA,UAAA,eAAY;AACZ,EAAAA,UAAA,cAAW;AACX,EAAAA,UAAA,UAAO;AACP,EAAAA,UAAA,YAAS;AACT,EAAAA,UAAA,aAAU;AACV,EAAAA,UAAA,aAAU;AAdA,SAAAA;AAAA,GAAA;AA+BL,MAAM,iBAAiB,CAK5B,UACA,SACA,0BAEC;AAAA,EACC,GAAG;AAAA,EACH;AAAA,EACA,CAAC,QAAQ,GAAG;AACd;","names":["NodeType"]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=translation.mjs.map
@@ -1,5 +1,5 @@
1
1
  import type { LocalesValues } from '@intlayer/config/client';
2
2
  import type { TranslationContent, EnumerationContent, ConditionContent, NestedContent, MarkdownContent } from '../transpiler';
3
3
  import { type ContentNode, NodeType } from '../types';
4
- export declare const getDefaultNode: (nodeType: NodeType, locales: LocalesValues[], content?: ContentNode) => string | number | boolean | MarkdownContent | NestedContent<never> | ((args?: any) => ContentNode<string | number | boolean, false, string | number | boolean>) | TranslationContent<ContentNode> | EnumerationContent<ContentNode> | ConditionContent<ContentNode> | Record<number, ContentNode>;
4
+ export declare const getDefaultNode: (nodeType: NodeType, locales: LocalesValues[], content?: ContentNode) => string | number | boolean | import("../transpiler/file").FileContent | MarkdownContent | TranslationContent<NodeType> | NestedContent<never> | import("..").InsertionContent<string | number | boolean> | ((args?: any) => ContentNode<string | number | boolean, false, string | number | boolean>) | EnumerationContent<ContentNode> | ConditionContent<ContentNode> | Record<number, ContentNode>;
5
5
  //# sourceMappingURL=getDefaultNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getDefaultNode.d.ts","sourceRoot":"","sources":["../../../src/dictionaryManipulator/getDefaultNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,eAAe,EAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,WAAW,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEtD,eAAO,MAAM,cAAc,GACzB,UAAU,QAAQ,EAClB,SAAS,aAAa,EAAE,EACxB,UAAU,WAAW,sSAiEtB,CAAC"}
1
+ {"version":3,"file":"getDefaultNode.d.ts","sourceRoot":"","sources":["../../../src/dictionaryManipulator/getDefaultNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,eAAe,EAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,WAAW,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEtD,eAAO,MAAM,cAAc,GACzB,UAAU,QAAQ,EAClB,SAAS,aAAa,EAAE,EACxB,UAAU,WAAW,yYAiEtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getNodeChildren.d.ts","sourceRoot":"","sources":["../../../src/dictionaryManipulator/getNodeChildren.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAA4B,MAAM,UAAU,CAAC;AAEtE,eAAO,MAAM,eAAe,GAAI,SAAS,WAAW,KAAG,WAuCtD,CAAC"}
1
+ {"version":3,"file":"getNodeChildren.d.ts","sourceRoot":"","sources":["../../../src/dictionaryManipulator/getNodeChildren.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAA4B,MAAM,UAAU,CAAC;AAEtE,eAAO,MAAM,eAAe,GAAI,SAAS,WAAW,KAAG,WAyCtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getNodeType.d.ts","sourceRoot":"","sources":["../../../src/dictionaryManipulator/getNodeType.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,QAAQ,EAAuB,MAAM,UAAU,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,eAAO,MAAM,WAAW,GAAI,SAAS,WAAW,KAAG,QAgDlD,CAAC"}
1
+ {"version":3,"file":"getNodeType.d.ts","sourceRoot":"","sources":["../../../src/dictionaryManipulator/getNodeType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,eAAO,MAAM,WAAW,GAAI,SAAS,WAAW,KAAG,QA8BlD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getContent.d.ts","sourceRoot":"","sources":["../../../../src/interpreter/getContent/getContent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAKL,KAAK,oBAAoB,EACzB,KAAK,SAAS,EAEf,MAAM,WAAW,CAAC;AAEnB;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,CAAC,SAAS,WAAW,EACrB,CAAC,SAAS,aAAa,GAAG,OAAO,EAEjC,MAAM,CAAC,EACP,WAAW,SAAS,EACpB,SAAQ,CAAyD,KAa3D,oBAAoB,CAAC,CAAC,CAC7B,CAAC"}
1
+ {"version":3,"file":"getContent.d.ts","sourceRoot":"","sources":["../../../../src/interpreter/getContent/getContent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG3E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAOL,KAAK,oBAAoB,EACzB,KAAK,SAAS,EAEf,MAAM,WAAW,CAAC;AAEnB;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,CAAC,SAAS,WAAW,EACrB,CAAC,SAAS,aAAa,GAAG,OAAO,EAEjC,MAAM,CAAC,EACP,WAAW,SAAS,EACpB,SAAQ,CAAyD,KAe3D,oBAAoB,CAAC,CAAC,CAC7B,CAAC"}
@@ -12,6 +12,7 @@ import { type GetNestingResult } from '../getNesting';
12
12
  * > `transformFn` is a function that can be used to deeply transform inside the plugin.
13
13
  */
14
14
  export type Plugins = {
15
+ id: string;
15
16
  canHandle: (node: any) => boolean;
16
17
  transform: (node: any, props: NodeProps, transformFn: (node: any, props: NodeProps) => any) => any;
17
18
  };
@@ -42,6 +43,15 @@ export type ConditionCond<T, S> = T extends {
42
43
  } ? (value: boolean) => DeepTransformContent<T[NodeType.Condition][keyof T[NodeType.Condition]], S> : never;
43
44
  /** Condition plugin. Replaces node with a function that takes boolean => string. */
44
45
  export declare const conditionPlugin: Plugins;
46
+ /** ---------------------------------------------
47
+ * INSERTION PLUGIN
48
+ * --------------------------------------------- */
49
+ export type InsertionCond<T, S> = T extends {
50
+ nodeType: NodeType | string;
51
+ [NodeType.Insertion]: infer I;
52
+ fields?: infer U;
53
+ } ? U extends readonly string[] ? (data: Record<U[number], string>) => DeepTransformContent<I, S> : (data: Record<string, string>) => DeepTransformContent<I, S> : never;
54
+ export declare const insertionPlugin: Plugins;
45
55
  /** ---------------------------------------------
46
56
  * NESTED PLUGIN
47
57
  * --------------------------------------------- */
@@ -75,6 +85,7 @@ export interface NodeProps {
75
85
  */
76
86
  export interface IInterpreterPlugin<T, S> {
77
87
  translation: TranslationCond<T, S>;
88
+ insertion: InsertionCond<T, S>;
78
89
  enumeration: EnumerationCond<T, S>;
79
90
  condition: ConditionCond<T, S>;
80
91
  nested: NestedCond<T, S>;
@@ -86,6 +97,7 @@ export type IInterpreterPluginState = {
86
97
  translation: true;
87
98
  enumeration: true;
88
99
  condition: true;
100
+ insertion: true;
89
101
  nested: true;
90
102
  };
91
103
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../../../src/interpreter/getContent/plugins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../../../src/interpreter/getContent/plugins.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { InsertionContent } from '../transpiler';
2
+ /**
3
+ * Allow to insert values in a string.
4
+ *
5
+ * Usage:
6
+ *
7
+ * ```ts
8
+ * const content = getInsertion('Hello {{name}}!', {
9
+ * name: 'John',
10
+ * });
11
+ * // 'Hello John!'
12
+ * ```
13
+ *
14
+ */
15
+ export declare const getInsertion: (content: string, values: { [K in InsertionContent["fields"][number]]: string; }) => string;
16
+ //# sourceMappingURL=getInsertion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getInsertion.d.ts","sourceRoot":"","sources":["../../../src/interpreter/getInsertion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY,GACvB,SAAS,MAAM,EACf,QAAQ,GAAG,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,GAAE,WACM,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { LocalesValues } from '@intlayer/config/client';
2
- import type { LanguageContent } from '../transpiler/translation/types';
2
+ import { LanguageContent } from '../types';
3
3
  /**
4
4
  *
5
5
  * Allow to pick a content based on a locale.
@@ -1 +1 @@
1
- {"version":3,"file":"getTranslation.d.ts","sourceRoot":"","sources":["../../../src/interpreter/getTranslation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,GAAG,MAAM,EAC7C,iBAAiB,eAAe,CAAC,OAAO,CAAC,EACzC,SAAS,aAAa,KACrB,OAYF,CAAC"}
1
+ {"version":3,"file":"getTranslation.d.ts","sourceRoot":"","sources":["../../../src/interpreter/getTranslation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,GAAG,MAAM,EAC7C,iBAAiB,eAAe,CAAC,OAAO,CAAC,EACzC,SAAS,aAAa,KACrB,OAYF,CAAC"}
@@ -20,6 +20,6 @@ export type ConditionContent<Content = unknown> = TypedNodeModel<NodeType.Condit
20
20
  * The last key provided will be used as the fallback value.
21
21
  *
22
22
  */
23
- declare const condition: <Content>(content?: ConditionContentStates<Content>) => TypedNodeModel<NodeType.Condition, ConditionContentStates<Content>>;
23
+ declare const condition: <Content>(content?: ConditionContentStates<Content>) => TypedNodeModel<NodeType.Condition, ConditionContentStates<Content>, {}>;
24
24
  export { condition as cond };
25
25
  //# sourceMappingURL=condition.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"condition.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/condition/condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,sBAAsB,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,OAAO,EAAE,EAAE,OAAO,CAAC,GAAG;IAC5E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,OAAO,GAAG,OAAO,IAAI,cAAc,CAC9D,QAAQ,CAAC,SAAS,EAClB,sBAAsB,CAAC,OAAO,CAAC,CAChC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,QAAA,MAAM,SAAS,GAAI,OAAO,EAAE,UAAU,sBAAsB,CAAC,OAAO,CAAC,wEACxB,CAAC;AAE9C,OAAO,EAAE,SAAS,IAAI,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"condition.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/condition/condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,sBAAsB,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,OAAO,EAAE,EAAE,OAAO,CAAC,GAAG;IAC5E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,OAAO,GAAG,OAAO,IAAI,cAAc,CAC9D,QAAQ,CAAC,SAAS,EAClB,sBAAsB,CAAC,OAAO,CAAC,CAChC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,QAAA,MAAM,SAAS,GAAI,OAAO,EAAE,UAAU,sBAAsB,CAAC,OAAO,CAAC,4EACxB,CAAC;AAE9C,OAAO,EAAE,SAAS,IAAI,IAAI,EAAE,CAAC"}
@@ -32,6 +32,6 @@ export type EnumerationContent<Content = unknown> = TypedNodeModel<NodeType.Enum
32
32
  * > The order of the keys will define the priority of the content.
33
33
  *
34
34
  */
35
- declare const enumeration: <Content>(content?: EnumerationContentState<Content>) => TypedNodeModel<NodeType.Enumeration, EnumerationContentState<Content>>;
35
+ declare const enumeration: <Content>(content?: EnumerationContentState<Content>) => TypedNodeModel<NodeType.Enumeration, EnumerationContentState<Content>, {}>;
36
36
  export { enumeration as enu };
37
37
  //# sourceMappingURL=enumeration.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enumeration.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/enumeration/enumeration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,QAAQ,EACT,MAAM,mBAAmB,CAAC;AAE3B,KAAK,OAAO,GAAG,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;AACpC,KAAK,OAAO,GAAG,IAAI,MAAM,EAAE,CAAC;AAC5B,KAAK,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAEjC,KAAK,KAAK,GAAG,OAAO,CAAC;AACrB,KAAK,WAAW,GAAG,IAAI,OAAO,EAAE,CAAC;AACjC,KAAK,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,KAAK,eAAe,GAAG,KAAK,OAAO,EAAE,CAAC;AACtC,KAAK,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,KAAK,eAAe,GAAG,KAAK,OAAO,EAAE,CAAC;AAEtC,MAAM,MAAM,WAAW,GACnB,KAAK,GACL,WAAW,GACX,QAAQ,GACR,eAAe,GACf,QAAQ,GACR,eAAe,CAAC;AAEpB,MAAM,MAAM,uBAAuB,CAAC,OAAO,IAAI,OAAO,CACpD,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAC7B,GAAG;IACF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,OAAO,GAAG,OAAO,IAAI,cAAc,CAChE,QAAQ,CAAC,WAAW,EACpB,uBAAuB,CAAC,OAAO,CAAC,CACjC,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,WAAW,GAAI,OAAO,EAAE,UAAU,uBAAuB,CAAC,OAAO,CAAC,2EACzB,CAAC;AAEhD,OAAO,EAAE,WAAW,IAAI,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"enumeration.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/enumeration/enumeration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,QAAQ,EACT,MAAM,mBAAmB,CAAC;AAE3B,KAAK,OAAO,GAAG,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;AACpC,KAAK,OAAO,GAAG,IAAI,MAAM,EAAE,CAAC;AAC5B,KAAK,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAEjC,KAAK,KAAK,GAAG,OAAO,CAAC;AACrB,KAAK,WAAW,GAAG,IAAI,OAAO,EAAE,CAAC;AACjC,KAAK,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,KAAK,eAAe,GAAG,KAAK,OAAO,EAAE,CAAC;AACtC,KAAK,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,KAAK,eAAe,GAAG,KAAK,OAAO,EAAE,CAAC;AAEtC,MAAM,MAAM,WAAW,GACnB,KAAK,GACL,WAAW,GACX,QAAQ,GACR,eAAe,GACf,QAAQ,GACR,eAAe,CAAC;AAEpB,MAAM,MAAM,uBAAuB,CAAC,OAAO,IAAI,OAAO,CACpD,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAC7B,GAAG;IACF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,OAAO,GAAG,OAAO,IAAI,cAAc,CAChE,QAAQ,CAAC,WAAW,EACpB,uBAAuB,CAAC,OAAO,CAAC,CACjC,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,WAAW,GAAI,OAAO,EAAE,UAAU,uBAAuB,CAAC,OAAO,CAAC,+EACzB,CAAC;AAEhD,OAAO,EAAE,WAAW,IAAI,GAAG,EAAE,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { NodeType, type TypedNodeModel } from '../../types/index';
2
+ export type FileContent = TypedNodeModel<NodeType.File, string, {
3
+ content: string;
4
+ fixedPath?: string;
5
+ }>;
6
+ /**
7
+ * Function intended to be used to build intlayer dictionaries.
8
+ *
9
+ * Allow identify the usage of an external resource.
10
+ *
11
+ * Usage:
12
+ *
13
+ * ```ts
14
+ * file('/path/to/file.md') // absolute path
15
+ *
16
+ * // or
17
+ *
18
+ * file('path/to/file.md') // relative path
19
+ * ```
20
+ */
21
+ declare const file: (path: string) => FileContent;
22
+ export default file;
23
+ //# sourceMappingURL=file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/file/file.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,QAAQ,EACR,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAI3B,MAAM,MAAM,WAAW,GAAG,cAAc,CACtC,QAAQ,CAAC,IAAI,EACb,MAAM,EACN;IACE,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CACF,CAAC;AAKF;;;;;;;;;;;;;;GAcG;AACH,QAAA,MAAM,IAAI,GAAI,MAAM,MAAM,KAAG,WAiC5B,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './file';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/file/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export * from './translation/index';
2
2
  export * from './enumeration/index';
3
3
  export * from './condition/index';
4
+ export * from './insertion/index';
4
5
  export * from './markdown/index';
5
6
  export * from './nesting/index';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transpiler/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transpiler/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const getInsertionValues: (content: string) => string[];
2
+ //# sourceMappingURL=getInsertionValues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getInsertionValues.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/insertion/getInsertionValues.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,GAAI,SAAS,MAAM,KAAG,MAAM,EAU1D,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './insertion';
2
+ export * from './getInsertionValues';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/insertion/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { NodeType, type TypedNodeModel } from '../../types/index';
2
+ export type InsertionContent<Content = unknown> = TypedNodeModel<NodeType.Insertion, Content, {
3
+ fields: string[];
4
+ }>;
5
+ /**
6
+ * Function intended to be used to build intlayer dictionaries.
7
+ *
8
+ * Allow to identify insertions inside a content.
9
+ *
10
+ * Usage:
11
+ *
12
+ * ```ts
13
+ * insertion('Hi, my name is {{name}} and I am {{age}} years old.')
14
+ * ```
15
+ *
16
+ */
17
+ declare const insertion: <Content = unknown>(content: Content) => InsertionContent<Content>;
18
+ export { insertion as insert };
19
+ //# sourceMappingURL=insertion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insertion.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/insertion/insertion.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAG3B,MAAM,MAAM,gBAAgB,CAAC,OAAO,GAAG,OAAO,IAAI,cAAc,CAC9D,QAAQ,CAAC,SAAS,EAClB,OAAO,EACP;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CACrB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,SAAS,GAAI,OAAO,GAAG,OAAO,EAClC,SAAS,OAAO,KACf,gBAAgB,CAAC,OAAO,CA6B1B,CAAC;AAEF,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const getMarkdownMetadata: (markdown: string) => Record<string, any>;
1
+ export declare const getMarkdownMetadata: (markdown: string) => Record<string, any> | undefined;
2
2
  //# sourceMappingURL=getMarkdownMetadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getMarkdownMetadata.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/markdown/getMarkdownMetadata.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,KAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAqCxE,CAAC"}
1
+ {"version":3,"file":"getMarkdownMetadata.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/markdown/getMarkdownMetadata.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,mBAAmB,GAC9B,UAAU,MAAM,KACf,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAgDxB,CAAC"}
@@ -13,6 +13,6 @@ export type MarkdownContent = TypedNodeModel<NodeType.Markdown, MarkdownContentS
13
13
  * ```
14
14
  *
15
15
  */
16
- declare const markdown: (content: string | Promise<string>) => MarkdownContent;
16
+ declare const markdown: <Content = unknown>(content: Content) => MarkdownContent;
17
17
  export { markdown as md };
18
18
  //# sourceMappingURL=markdown.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/markdown/markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAG3B,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAE1C,MAAM,MAAM,eAAe,GAAG,cAAc,CAC1C,QAAQ,CAAC,QAAQ,EACjB,oBAAoB,CACrB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,QAAQ,GAAI,SAAS,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,KAAG,eAIrD,CAAC;AAEF,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,CAAC"}
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/markdown/markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,KAAK,cAAc,EACpB,MAAM,mBAAmB,CAAC;AAG3B,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAE1C,MAAM,MAAM,eAAe,GAAG,cAAc,CAC1C,QAAQ,CAAC,QAAQ,EACjB,oBAAoB,CACrB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,QAAQ,GAAI,OAAO,GAAG,OAAO,EAAE,SAAS,OAAO,KAAG,eAgBvD,CAAC;AAEF,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,CAAC"}
@@ -1,3 +1,2 @@
1
1
  export * from './translation';
2
- export * from './types';
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/translation/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/translation/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -1,5 +1,6 @@
1
- import { NodeType } from '../../types/index';
2
- import type { LanguageContent } from './types';
1
+ import type { LanguageContent } from 'intlayer';
2
+ import { NodeType, TypedNodeModel } from '../../types/index';
3
+ export type TranslationContent<Content = unknown, RecordContent extends LanguageContent<Content> = LanguageContent<Content>> = TypedNodeModel<NodeType.Translation, RecordContent>;
3
4
  /**
4
5
  *
5
6
  * Function intended to be used to build intlayer dictionaries.
@@ -20,6 +21,10 @@ import type { LanguageContent } from './types';
20
21
  * - this function require each locale to be defined if defined in the project configuration.
21
22
  * - If a locale is missing, it will make each existing locale optional and raise an error if the locale is not found.
22
23
  */
23
- declare const translation: <Content = unknown, ContentRecord extends LanguageContent<Content> = LanguageContent<Content>>(content: ContentRecord) => import("../..").TypedNodeModel<NodeType.Translation, ContentRecord>;
24
+ declare const translation: <Content = unknown, ContentRecord extends LanguageContent<Content> = LanguageContent<Content>>(content: ContentRecord) => TypedNodeModel<NodeType.Translation, ContentRecord, {
25
+ nodeType: NodeType.Translation | "translation";
26
+ } & {
27
+ translation: ContentRecord;
28
+ }>;
24
29
  export { translation as t };
25
30
  //# sourceMappingURL=translation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"translation.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/translation/translation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAsB,MAAM,SAAS,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,QAAA,MAAM,WAAW,GACf,OAAO,GAAG,OAAO,EACjB,aAAa,SAAS,eAAe,CAAC,OAAO,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,EAEzE,SAAS,aAAa,wEAKrB,CAAC;AAEJ,OAAO,EAAE,WAAW,IAAI,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"translation.d.ts","sourceRoot":"","sources":["../../../../src/transpiler/translation/translation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAkB,QAAQ,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE7E,MAAM,MAAM,kBAAkB,CAC5B,OAAO,GAAG,OAAO,EACjB,aAAa,SAAS,eAAe,CAAC,OAAO,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,IACvE,cAAc,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;AAExD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,QAAA,MAAM,WAAW,GACf,OAAO,GAAG,OAAO,EACjB,aAAa,SAAS,eAAe,CAAC,OAAO,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,EAEzE,SAAS,aAAa;;;;EAKrB,CAAC;AAEJ,OAAO,EAAE,WAAW,IAAI,CAAC,EAAE,CAAC"}
@@ -1,5 +1,11 @@
1
1
  import type { IntlayerDictionaryTypesConnector } from 'intlayer';
2
- import type { ConditionContent, EnumerationContent, MarkdownContent, NestedContent, TranslationContent } from '../transpiler/index';
2
+ import type { ConditionContent } from '../transpiler/condition';
3
+ import type { EnumerationContent } from '../transpiler/enumeration';
4
+ import type { FileContent } from '../transpiler/file';
5
+ import type { InsertionContent } from '../transpiler/insertion';
6
+ import type { MarkdownContent } from '../transpiler/markdown';
7
+ import type { NestedContent } from '../transpiler/nesting';
8
+ import type { TranslationContent } from '../transpiler/translation';
3
9
  /**
4
10
  * Provides a fallback to string type if the generic type T is undefined,
5
11
  * otherwise returns T. This is useful for handling cases where no keys are found.
@@ -19,7 +25,7 @@ export type StringFallback<T> = T extends undefined ? string : T;
19
25
  */
20
26
  export type DictionaryKeys = StringFallback<keyof IntlayerDictionaryTypesConnector>;
21
27
  type BaseNode = number | string | boolean | null | undefined;
22
- export type TypedNode<NodeType = undefined> = TranslationContent<NodeType> | EnumerationContent<NodeType> | ConditionContent<NodeType> | MarkdownContent | NestedContent<DictionaryKeys>;
28
+ export type TypedNode<NodeType = undefined> = TranslationContent<NodeType> | EnumerationContent<NodeType> | ConditionContent<NodeType> | InsertionContent<NodeType> | MarkdownContent | NestedContent<DictionaryKeys> | FileContent;
23
29
  type FetchableContentNode<NodeType> = (args?: any) => ContentNode<NodeType> | Promise<ContentNode<NodeType>>;
24
30
  export type ContentNode<T = undefined, FetchableNode = false, NodeType = T extends undefined ? BaseNode : T> = NodeType | TypedNode<NodeType> | ((args?: any) => ContentNode<NodeType>) | (FetchableNode extends true ? FetchableContentNode<NodeType> : undefined);
25
31
  type IsArray<T> = T extends any[] ? true : false;
@@ -1 +1 @@
1
- {"version":3,"file":"dictionary.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dictionary.d.ts","sourceRoot":"","sources":["../../../src/types/dictionary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE;;;;GAIG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,MAAM,GAAG,CAAC,CAAC;AAEjE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,cAAc,GAAG,cAAc,CACzC,MAAM,gCAAgC,CACvC,CAAC;AAEF,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAE7D,MAAM,MAAM,SAAS,CAAC,QAAQ,GAAG,SAAS,IACtC,kBAAkB,CAAC,QAAQ,CAAC,GAC5B,kBAAkB,CAAC,QAAQ,CAAC,GAC5B,gBAAgB,CAAC,QAAQ,CAAC,GAC1B,gBAAgB,CAAC,QAAQ,CAAC,GAC1B,eAAe,GACf,aAAa,CAAC,cAAc,CAAC,GAC7B,WAAW,CAAC;AAEhB,KAAK,oBAAoB,CAAC,QAAQ,IAAI,CACpC,IAAI,CAAC,EAAE,GAAG,KACP,WAAW,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;AAE5D,MAAM,MAAM,WAAW,CACrB,CAAC,GAAG,SAAS,EACb,aAAa,GAAG,KAAK,EACrB,QAAQ,GAAG,CAAC,SAAS,SAAS,GAAG,QAAQ,GAAG,CAAC,IAE3C,QAAQ,GACR,SAAS,CAAC,QAAQ,CAAC,GACnB,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,WAAW,CAAC,QAAQ,CAAC,CAAC,GACvC,CAAC,aAAa,SAAS,IAAI,GAAG,oBAAoB,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC,CAAC;AAG9E,KAAK,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,GAAG,KAAK,CAAC;AAEjD,KAAK,wBAAwB,CAAC,CAAC,EAAE,aAAa,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAGnE,AAFA,gEAAgE;AAEhE,WAAW,CAAC,CAAC,EAAE,aAAa,CAAC,GAAG,mBAAmB,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,GACvE,KAAK,CAAC;AAEV,KAAK,yBAAyB,CAAC,CAAC,EAAE,aAAa,IAAI;KAChD,CAAC,IAAI,MAAM,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC;CACzD,CAAC;AAGF,KAAK,mBAAmB,CACtB,QAAQ,EACR,aAAa,GAAG,IAAI,IAClB,QAAQ,SAAS,MAAM,GACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,IAAI,GAC5B,wBAAwB,CAAC,QAAQ,EAAE,aAAa,CAAC,GAE7C,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,GACpC,yBAAyB,CAAC,QAAQ,EAAE,aAAa,CAAC,GACxD,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AAEzC,MAAM,MAAM,UAAU,CAAC,WAAW,GAAG,SAAS,EAAE,aAAa,GAAG,KAAK,IAAI;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,WAAW,SAAS,SAAS,GAClC,GAAG,GACH,mBAAmB,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,WAAW,CAAC;CACnE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from './dictionary';
2
2
  export * from './nodeType';
3
3
  export * from './keyPath';
4
+ export * from './translation';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC"}
@@ -19,6 +19,10 @@ export type ConditionNode = {
19
19
  type: NodeType.Condition;
20
20
  key: string;
21
21
  };
22
+ export type InsertionNode = {
23
+ type: NodeType.Insertion;
24
+ key?: undefined;
25
+ };
22
26
  export type MarkdownNode = {
23
27
  type: NodeType.Markdown;
24
28
  key?: undefined;
@@ -31,5 +35,9 @@ export type NestedNode = {
31
35
  type: NodeType.Nested;
32
36
  key?: undefined;
33
37
  };
34
- export type KeyPath = ObjectNode | ArrayNode | TranslationNode | EnumerationNode | MarkdownNode | ReactNode | ConditionNode | NestedNode;
38
+ export type FileNode = {
39
+ type: NodeType.File;
40
+ key?: undefined;
41
+ };
42
+ export type KeyPath = ObjectNode | ArrayNode | TranslationNode | EnumerationNode | InsertionNode | MarkdownNode | ReactNode | ConditionNode | NestedNode;
35
43
  //# sourceMappingURL=keyPath.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyPath.d.ts","sourceRoot":"","sources":["../../../src/types/keyPath.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACxB,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,OAAO,GACf,UAAU,GACV,SAAS,GACT,eAAe,GACf,eAAe,GACf,YAAY,GACZ,SAAS,GACT,aAAa,GACb,UAAU,CAAC"}
1
+ {"version":3,"file":"keyPath.d.ts","sourceRoot":"","sources":["../../../src/types/keyPath.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACxB,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;IACzB,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;IACpB,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,OAAO,GACf,UAAU,GACV,SAAS,GACT,eAAe,GACf,eAAe,GACf,aAAa,GACb,YAAY,GACZ,SAAS,GACT,aAAa,GACb,UAAU,CAAC"}