{"version":3,"file":"getContent.cjs","names":["translationPlugin","internationalization","enumerationPlugin","conditionPlugin","insertionPlugin","nestedPlugin","filePlugin","genderPlugin","deepTransformNode"],"sources":["../../../../src/interpreter/getContent/getContent.ts"],"sourcesContent":["import { internationalization } from '@intlayer/config/built';\nimport type { ContentNode } from '@intlayer/types/dictionary';\nimport type {\n  DeclaredLocales,\n  LocalesValues,\n} from '@intlayer/types/module_augmentation';\nimport { deepTransformNode } from './deepTransform';\nimport {\n  conditionPlugin,\n  type DeepTransformContent,\n  enumerationPlugin,\n  filePlugin,\n  genderPlugin,\n  type IInterpreterPluginState,\n  insertionPlugin,\n  type NodeProps,\n  nestedPlugin,\n  type Plugins,\n  translationPlugin,\n} from './plugins';\n\nexport const getBasePlugins = (\n  locale?: LocalesValues,\n  fallback: boolean = true\n): Plugins[] =>\n  [\n    translationPlugin(\n      locale ?? internationalization.defaultLocale,\n      fallback ? internationalization.defaultLocale : undefined\n    ),\n    enumerationPlugin,\n    conditionPlugin,\n    insertionPlugin,\n    nestedPlugin(locale ?? internationalization.defaultLocale),\n    filePlugin,\n    genderPlugin,\n  ] as Plugins[];\n\n/**\n * Transforms a node in a single pass, applying each plugin as needed.\n *\n * @param node The node to transform.\n * @param locale The locale to use if your transformers need it (e.g. for translations).\n */\nexport const getContent = <\n  const T extends ContentNode,\n  const L extends LocalesValues = DeclaredLocales,\n>(\n  node: T,\n  nodeProps: NodeProps,\n  plugins: Plugins[] = []\n) =>\n  deepTransformNode(node, {\n    ...nodeProps,\n    plugins,\n  }) as DeepTransformContent<T, IInterpreterPluginState, L>;\n"],"mappings":";;;;;;;AAqBA,MAAa,kBACX,QACA,WAAoB,SAEpB;CACEA,yDACE,UAAUC,4CAAqB,eAC/B,WAAWA,4CAAqB,gBAAgB,OACjD;CACDC;CACAC;CACAC;CACAC,oDAAa,UAAUJ,4CAAqB,cAAc;CAC1DK;CACAC;CACD;;;;;;;AAQH,MAAa,cAIX,MACA,WACA,UAAqB,EAAE,KAEvBC,+DAAkB,MAAM;CACtB,GAAG;CACH;CACD,CAAC"}