{"version":3,"file":"validate-growi-plugin-directive.cjs","sources":["../../../../../src/v4/server/utils/template/validate-growi-plugin-directive.ts"],"sourcesContent":["import { GrowiPluginType } from '@growi/core';\n\nimport type {\n  GrowiPluginValidationData,\n  GrowiTemplatePluginValidationData,\n} from '../../../../model/index.js';\nimport { GrowiPluginValidationError } from '../../../../model/index.js';\nimport { validateGrowiDirective } from '../common/index.js';\n\n/**\n * An utility for template plugin which wrap 'validateGrowiDirective' of './common' module\n * @param projectDirRoot\n */\nexport const validateTemplatePluginGrowiDirective = (\n  projectDirRoot: string,\n): GrowiTemplatePluginValidationData => {\n  const data = validateGrowiDirective(projectDirRoot, GrowiPluginType.Template);\n\n  const { growiPlugin } = data;\n\n  // check supporting locales\n  const supportingLocales: string[] | undefined = growiPlugin.locales;\n  if (supportingLocales == null || supportingLocales.length === 0) {\n    throw new GrowiPluginValidationError<\n      GrowiPluginValidationData & { supportingLocales?: string[] }\n    >(\n      \"Template plugin must have 'supportingLocales' and that must have one or more locales\",\n      {\n        ...data,\n        supportingLocales,\n      },\n    );\n  }\n\n  return {\n    ...data,\n    supportingLocales,\n  };\n};\n"],"names":["validateTemplatePluginGrowiDirective","projectDirRoot","data","validateGrowiDirective","GrowiPluginType","growiPlugin","supportingLocales","GrowiPluginValidationError"],"mappings":"2OAaaA,EACXC,GACsC,CACtC,MAAMC,EAAOC,EAAAA,uBAAuBF,EAAgBG,EAAAA,gBAAgB,QAAQ,EAEtE,CAAE,YAAAC,GAAgBH,EAGlBI,EAA0CD,EAAY,QAC5D,GAAIC,GAAqB,MAAQA,EAAkB,SAAW,EAC5D,MAAM,IAAIC,EAAAA,2BAGR,uFACA,CACE,GAAGL,EACH,kBAAAI,CAAA,CACF,EAIJ,MAAO,CACL,GAAGJ,EACH,kBAAAI,CAAA,CAEJ"}