{"version":3,"file":"array.cjs","sources":["../../../src/loaders/array.ts"],"sourcesContent":["import { TypeLoaderFn } from '../types.js'\nimport { loadType } from './type.js'\n\nexport const ArrayTypeLoader: TypeLoaderFn = async (context, value) => {\n  if (!Array.isArray(value)) {\n    return\n  }\n\n  if (value.length <= 0) {\n    context.logger.warn('You tried to specify an array type without any item')\n    return\n  }\n\n  if (value.length > 1) {\n    context.logger.warn(\n      \"You tried to specify an array type with multiple items. Please use the 'enum' option if you want to specify an enum.\"\n    )\n    return\n  }\n\n  const itemsSchema = await loadType(context, { type: value[0] })\n\n  // TODO: Better warn stack trace\n  if (!itemsSchema) {\n    context.logger.warn(\n      'You tried to specify an array type with an item that resolves to undefined.'\n    )\n    return\n  }\n\n  return {\n    type: 'array',\n    items: itemsSchema,\n  }\n}\n"],"names":["loadType"],"mappings":";;;;AAGO,MAAM,eAAA,GAAgC,OAAO,OAAA,EAAS,KAAA,KAAU;AACrE,EAAA,IAAI,CAAC,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,EAAG;AACzB,IAAA;AAAA,EACF;AAEA,EAAA,IAAI,KAAA,CAAM,UAAU,CAAA,EAAG;AACrB,IAAA,OAAA,CAAQ,MAAA,CAAO,KAAK,qDAAqD,CAAA;AACzE,IAAA;AAAA,EACF;AAEA,EAAA,IAAI,KAAA,CAAM,SAAS,CAAA,EAAG;AACpB,IAAA,OAAA,CAAQ,MAAA,CAAO,IAAA;AAAA,MACb;AAAA,KACF;AACA,IAAA;AAAA,EACF;AAEA,EAAA,MAAM,WAAA,GAAc,MAAMA,aAAA,CAAS,OAAA,EAAS,EAAE,IAAA,EAAM,KAAA,CAAM,CAAC,CAAA,EAAG,CAAA;AAG9D,EAAA,IAAI,CAAC,WAAA,EAAa;AAChB,IAAA,OAAA,CAAQ,MAAA,CAAO,IAAA;AAAA,MACb;AAAA,KACF;AACA,IAAA;AAAA,EACF;AAEA,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,OAAA;AAAA,IACN,KAAA,EAAO;AAAA,GACT;AACF;;;;"}