{"version":3,"file":"SetNumberOfCardOrScanBoardInPort.cjs","names":["Request"],"sources":["../../generated/api/SetNumberOfCardOrScanBoardInPort.ts"],"sourcesContent":["import { encodeUIntLE, ErrorType, Request, Session } from '@novastar/codec';\nimport AddressMapping from '../AddressMapping';\nimport { CardTypeEnum } from '../CardType';\n\ndeclare module '@novastar/codec' {\n  interface API {\n    SetNumberOfCardOrScanBoardInPort(\n      addr: number,\n      bBroadcast: boolean,\n      number: number,\n      portIndex: number,\n      cardType: CardTypeEnum\n    ): Promise<void>;\n    trySetNumberOfCardOrScanBoardInPort(\n      addr: number,\n      number: number,\n      portIndex: number,\n      cardType: CardTypeEnum\n    ): Promise<ErrorType | null>;\n  }\n}\nexport default function createSetNumberOfCardOrScanBoardInPort<Broadcast extends boolean>(\n  addr: number,\n  bBroadcast: Broadcast,\n  number: number,\n  portIndex: number,\n  cardType: CardTypeEnum\n): Request<Broadcast> {\n  const $data = encodeUIntLE(number, AddressMapping.NumberOfCardOrBoardInPortOccupancy);\n  const req = new Request($data, bBroadcast, 'SetNumberOfCardOrScanBoardInPort');\n  req.destination = addr;\n  req.address = 0;\n  if (portIndex < AddressMapping.New16PortOccupancy) {\n    req.address =\n      AddressMapping.NumberOfCardOrBoardInPortAddr +\n      portIndex * AddressMapping.NumOfCardAndBoardInPortOccupancy +\n      cardType * AddressMapping.NumberOfCardOrBoardInPortOccupancy;\n  } else {\n    req.address =\n      AddressMapping.NumberOfCardOrBoardInPort16Addr +\n      portIndex * AddressMapping.NumOfCardAndBoardInPortOccupancy +\n      cardType * AddressMapping.NumberOfCardOrBoardInPortOccupancy;\n  }\n  return req;\n}\nSession.prototype.SetNumberOfCardOrScanBoardInPort =\n  async function SetNumberOfCardOrScanBoardInPort(\n    this: Session,\n    addr: number,\n    bBroadcast: boolean,\n    number: number,\n    portIndex: number,\n    cardType: CardTypeEnum\n  ): Promise<void> {\n    const req = createSetNumberOfCardOrScanBoardInPort(\n      addr,\n      bBroadcast,\n      number,\n      portIndex,\n      cardType\n    );\n    await this.connection.send(req);\n  };\nSession.prototype.trySetNumberOfCardOrScanBoardInPort =\n  async function trySetNumberOfCardOrScanBoardInPort(\n    this: Session,\n    addr: number,\n    number: number,\n    portIndex: number,\n    cardType: CardTypeEnum\n  ): Promise<ErrorType | null> {\n    const req = createSetNumberOfCardOrScanBoardInPort(addr, false, number, portIndex, cardType);\n    return (await this.connection.trySend(req))?.ack ?? null;\n  };\n"],"mappings":";;;;;AAqBA,SAAwB,uCACtB,MACA,YACA,QACA,WACA,UACoB;CAEpB,MAAM,MAAM,IAAIA,0DADW,SACC,GAAG,YAAY,kCAAkC;CAC7E,IAAI,cAAc;CAClB,IAAI,UAAU;CACd,IAAI,eACF,IAAI,qBAEF,iBACA;MAEF,IAAI,qBAEF,iBACA;CAEJ,OAAO;AACT;AACA,wBAAQ,UAAU,mCAChB,eAAe,iCAEb,MACA,YACA,QACA,WACA,UACe;CACf,MAAM,MAAM,uCACV,MACA,YACA,QACA,WACA,QACF;CACA,MAAM,KAAK,WAAW,KAAK,GAAG;AAChC;AACF,wBAAQ,UAAU,sCAChB,eAAe,oCAEb,MACA,QACA,WACA,UAC2B;CAC3B,MAAM,MAAM,uCAAuC,MAAM,OAAO,QAAQ,WAAW,QAAQ;CAC3F,QAAQ,MAAM,KAAK,WAAW,QAAQ,GAAG,IAAI,OAAO;AACtD"}