{"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['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;;;;"}