{
  "version": 3,
  "sources": ["../../../src/fragments/log-group.ts"],
  "sourcesContent": ["/** cloudformation generator */\nimport type {AWSLogsLogGroup} from '../__generated__/json-schemas/serverless-application-model.ts';\nimport type {ServerlessApplicationModel} from '../types.ts';\n\nexport interface LogGroupInput {\n  functionName: string;\n}\n\n/** cloudformation generator */\nexport function makeLogGroup({\n  functionName,\n}: LogGroupInput): ServerlessApplicationModel {\n  const logGroup: AWSLogsLogGroup = {\n    Properties: {\n      // @ts-expect-error typedef doesn't include intrinsic functions\n      LogGroupName: {'Fn::Sub': `/aws/lambda/\\${${functionName}}`},\n      // @ts-expect-error typedef doesn't include intrinsic functions\n      RetentionInDays: {Ref: 'LogRetentionInDays'},\n    },\n    Type: 'AWS::Logs::LogGroup',\n  };\n\n  return {\n    Outputs: {\n      LogGroupName: {\n        Export: {\n          // eslint-disable-next-line no-template-curly-in-string\n          Name: {'Fn::Sub': '${AWS::StackName}-LogGroupName'},\n        },\n        Value: {Ref: `${functionName}LogGroup`},\n      },\n    },\n    Parameters: {\n      LogRetentionInDays: {\n        Default: '3',\n        Description: 'Log retention in days',\n        Type: 'Number',\n      },\n    },\n    Resources: {\n      [`${functionName}LogGroup`]: logGroup,\n    },\n  };\n}\n"],
  "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AASO,SAAS,aAAa;AAAA,EAC3B;AACF,GAA8C;AAC5C,QAAM,WAA4B;AAAA,IAChC,YAAY;AAAA;AAAA,MAEV,cAAc,EAAC,WAAW,kBAAkB,YAAY,IAAG;AAAA;AAAA,MAE3D,iBAAiB,EAAC,KAAK,qBAAoB;AAAA,IAC7C;AAAA,IACA,MAAM;AAAA,EACR;AAEA,SAAO;AAAA,IACL,SAAS;AAAA,MACP,cAAc;AAAA,QACZ,QAAQ;AAAA;AAAA,UAEN,MAAM,EAAC,WAAW,iCAAgC;AAAA,QACpD;AAAA,QACA,OAAO,EAAC,KAAK,GAAG,YAAY,WAAU;AAAA,MACxC;AAAA,IACF;AAAA,IACA,YAAY;AAAA,MACV,oBAAoB;AAAA,QAClB,SAAS;AAAA,QACT,aAAa;AAAA,QACb,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,WAAW;AAAA,MACT,CAAC,GAAG,YAAY,UAAU,GAAG;AAAA,IAC/B;AAAA,EACF;AACF;",
  "names": []
}
