@intlayer/core
Version:
Includes core Intlayer functions like translation, dictionary, and utility functions shared across multiple packages.
50 lines (48 loc) • 2.12 kB
JavaScript
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
let _intlayer_types = require("@intlayer/types");
//#region src/dictionaryManipulator/getDefaultNode.ts
const getDefaultNode = (nodeType, locales, content) => {
const clonedContent = structuredClone(content);
switch (nodeType) {
case _intlayer_types.NodeType.Translation: return {
nodeType: _intlayer_types.NodeType.Translation,
[_intlayer_types.NodeType.Translation]: Object.assign({}, ...locales.map((locale) => ({ [locale]: structuredClone(clonedContent) ?? "" })))
};
case _intlayer_types.NodeType.Enumeration: return {
nodeType: _intlayer_types.NodeType.Enumeration,
[_intlayer_types.NodeType.Enumeration]: { "1": clonedContent ?? "" }
};
case _intlayer_types.NodeType.Condition: return {
nodeType: _intlayer_types.NodeType.Condition,
[_intlayer_types.NodeType.Condition]: {
true: clonedContent ?? "",
false: clonedContent ?? ""
}
};
case _intlayer_types.NodeType.Insertion: return {
nodeType: _intlayer_types.NodeType.Insertion,
[_intlayer_types.NodeType.Insertion]: { insertion: clonedContent ?? "" }
};
case _intlayer_types.NodeType.Nested: return {
nodeType: _intlayer_types.NodeType.Nested,
[_intlayer_types.NodeType.Nested]: { dictionaryKey: "" }
};
case _intlayer_types.NodeType.Markdown: return {
nodeType: _intlayer_types.NodeType.Markdown,
[_intlayer_types.NodeType.Markdown]: clonedContent ?? ""
};
case _intlayer_types.NodeType.File: return {
nodeType: _intlayer_types.NodeType.File,
[_intlayer_types.NodeType.File]: clonedContent ?? ""
};
case _intlayer_types.NodeType.Object: return { newKey: clonedContent ?? "" };
case _intlayer_types.NodeType.Array: return [clonedContent ?? ""];
case _intlayer_types.NodeType.Text: return clonedContent ?? "";
case _intlayer_types.NodeType.Number: return clonedContent ?? 0;
case _intlayer_types.NodeType.Boolean: return clonedContent ?? true;
default: return clonedContent ?? "";
}
};
//#endregion
exports.getDefaultNode = getDefaultNode;
//# sourceMappingURL=getDefaultNode.cjs.map