{"version":3,"file":"data.mjs","sources":["../../../../src/services/document-service/transform/data.ts"],"sourcesContent":["import { createIdMap } from './id-map';\nimport { extractDataIds as extractDataRelationIds } from './relations/extract/data-ids';\nimport { transformDataIdsVisitor as transformRelationDataIds } from './relations/transform/data-ids';\nimport { setDefaultLocaleToRelations } from './relations/transform/default-locale';\n\n/**\n * Transforms input data, containing relation document ids, to entity ids.\n */\nexport const transformData = async (data: any, opts: any) => {\n  // Store cache on request state so repeated calls in one request can reuse it\n  const requestState = strapi.requestContext?.get?.()?.state as\n    | { __documentServiceIdMap?: ReturnType<typeof createIdMap> }\n    | undefined;\n\n  if (requestState && !requestState.__documentServiceIdMap) {\n    requestState.__documentServiceIdMap = createIdMap({ strapi });\n  }\n\n  const idMap = requestState?.__documentServiceIdMap ?? createIdMap({ strapi });\n\n  // Assign default locales\n  const transformedData = await setDefaultLocaleToRelations(data, opts.uid);\n\n  // Extract any relation ids from the input\n  await extractDataRelationIds(idMap, transformedData, opts);\n\n  // Load any relation the extract methods found\n  await idMap.load();\n\n  // Transform any relation ids to entity ids\n  return transformRelationDataIds(idMap, transformedData, opts);\n};\n"],"names":["transformData","data","opts","requestState","strapi","requestContext","get","state","__documentServiceIdMap","createIdMap","idMap","transformedData","setDefaultLocaleToRelations","uid","extractDataRelationIds","load","transformRelationDataIds"],"mappings":";;;;;AAKA;;AAEC,IACM,MAAMA,aAAAA,GAAgB,OAAOC,IAAAA,EAAWC,IAAAA,GAAAA;;AAE7C,IAAA,MAAMC,YAAAA,GAAeC,MAAAA,CAAOC,cAAc,EAAEC,GAAAA,IAAAA,EAASC,KAAAA;AAIrD,IAAA,IAAIJ,YAAAA,IAAgB,CAACA,YAAAA,CAAaK,sBAAsB,EAAE;QACxDL,YAAAA,CAAaK,sBAAsB,GAAGC,WAAAA,CAAY;AAAEL,YAAAA;AAAO,SAAA,CAAA;AAC7D,IAAA;IAEA,MAAMM,KAAAA,GAAQP,YAAAA,EAAcK,sBAAAA,IAA0BC,WAAAA,CAAY;AAAEL,QAAAA;AAAO,KAAA,CAAA;;AAG3E,IAAA,MAAMO,eAAAA,GAAkB,MAAMC,2BAAAA,CAA4BX,IAAAA,EAAMC,KAAKW,GAAG,CAAA;;IAGxE,MAAMC,cAAAA,CAAuBJ,OAAOC,eAAAA,EAAiBT,IAAAA,CAAAA;;AAGrD,IAAA,MAAMQ,MAAMK,IAAI,EAAA;;IAGhB,OAAOC,uBAAAA,CAAyBN,OAAOC,eAAAA,EAAiBT,IAAAA,CAAAA;AAC1D;;;;"}