{"version":3,"file":"fields.mjs","sources":["../../../../src/services/document-service/transform/fields.ts"],"sourcesContent":["import type { Modules, UID } from '@strapi/types';\n\ntype Fields = Modules.Documents.Params.Pick<UID.Schema, 'fields'>['fields'];\n\nexport const transformFields = (fields: Fields): Fields => {\n  // If  it's a string, and it doesn't contain documentId, should be an array\n  if (typeof fields === 'string') {\n    // '*' => '*'\n    if (fields === '*') {\n      return fields;\n    }\n\n    // '' => 'documentId'\n    if (fields === '') {\n      return 'documentId';\n    }\n\n    // 'name,description' => 'name,description,documentId'\n    if (!fields.split(',').includes('documentId')) {\n      return `${fields},documentId`;\n    }\n  }\n\n  // It's not an array, ignore it\n  if (!fields || !Array.isArray(fields)) {\n    // If fields is empty, return it as is\n    return fields;\n  }\n\n  // Ensure we are always selecting the documentId\n  // ['name', 'description'] => ['name', 'description', 'documentId']\n  if (!fields.includes('documentId')) {\n    fields.push('documentId');\n  }\n\n  return fields;\n};\n"],"names":["transformFields","fields","split","includes","Array","isArray","push"],"mappings":"AAIO,MAAMA,kBAAkB,CAACC,MAAAA,GAAAA;;IAE9B,IAAI,OAAOA,WAAW,QAAA,EAAU;;AAE9B,QAAA,IAAIA,WAAW,GAAA,EAAK;YAClB,OAAOA,MAAAA;AACT,QAAA;;AAGA,QAAA,IAAIA,WAAW,EAAA,EAAI;YACjB,OAAO,YAAA;AACT,QAAA;;AAGA,QAAA,IAAI,CAACA,MAAAA,CAAOC,KAAK,CAAC,GAAA,CAAA,CAAKC,QAAQ,CAAC,YAAA,CAAA,EAAe;YAC7C,OAAO,CAAA,EAAGF,MAAAA,CAAO,WAAW,CAAC;AAC/B,QAAA;AACF,IAAA;;AAGA,IAAA,IAAI,CAACA,MAAAA,IAAU,CAACG,KAAAA,CAAMC,OAAO,CAACJ,MAAAA,CAAAA,EAAS;;QAErC,OAAOA,MAAAA;AACT,IAAA;;;AAIA,IAAA,IAAI,CAACA,MAAAA,CAAOE,QAAQ,CAAC,YAAA,CAAA,EAAe;AAClCF,QAAAA,MAAAA,CAAOK,IAAI,CAAC,YAAA,CAAA;AACd,IAAA;IAEA,OAAOL,MAAAA;AACT;;;;"}