{"version":3,"file":"SetDistributeNumberOfCardOrScanBoardInPort.cjs","names":["Request"],"sources":["../../generated/api/SetDistributeNumberOfCardOrScanBoardInPort.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    SetDistributeNumberOfCardOrScanBoardInPort(\n      addr: number,\n      portAddr: number,\n      distributeAddr: number,\n      bBroadcast: boolean,\n      number: number,\n      portIndex: number,\n      cardType: CardTypeEnum\n    ): Promise<void>;\n    trySetDistributeNumberOfCardOrScanBoardInPort(\n      addr: number,\n      portAddr: number,\n      distributeAddr: number,\n      number: number,\n      portIndex: number,\n      cardType: CardTypeEnum\n    ): Promise<ErrorType | null>;\n  }\n}\nexport default function createSetDistributeNumberOfCardOrScanBoardInPort<Broadcast extends boolean>(\n  addr: number,\n  portAddr: number,\n  distributeAddr: number,\n  bBroadcast: Broadcast,\n  number: number,\n  portIndex: number,\n  cardType: CardTypeEnum\n): Request<Broadcast> {\n  const $data = encodeUIntLE(number, AddressMapping.DistributeNumberOfCardOrBoardInPortOccupancy);\n  const req = new Request($data, bBroadcast, 'SetDistributeNumberOfCardOrScanBoardInPort');\n  req.destination = addr;\n  req.deviceType = 3;\n  req.port = portAddr;\n  req.rcvIndex = distributeAddr;\n  req.address = 0;\n  if (portIndex > 3) {\n    req.address =\n      AddressMapping.DistributeNumberOfCardOrBoardInPortAddr +\n      AddressMapping.DistributePortAddr +\n      portIndex * AddressMapping.DistributeNumOfCardAndBoardInPortOccupancy +\n      cardType * AddressMapping.DistributeNumberOfCardOrBoardInPortOccupancy;\n  } else {\n    req.address =\n      AddressMapping.DistributeNumberOfCardOrBoardInPortAddr +\n      portIndex * AddressMapping.DistributeNumOfCardAndBoardInPortOccupancy +\n      cardType * AddressMapping.DistributeNumberOfCardOrBoardInPortOccupancy;\n  }\n  return req;\n}\nSession.prototype.SetDistributeNumberOfCardOrScanBoardInPort =\n  async function SetDistributeNumberOfCardOrScanBoardInPort(\n    this: Session,\n    addr: number,\n    portAddr: number,\n    distributeAddr: number,\n    bBroadcast: boolean,\n    number: number,\n    portIndex: number,\n    cardType: CardTypeEnum\n  ): Promise<void> {\n    const req = createSetDistributeNumberOfCardOrScanBoardInPort(\n      addr,\n      portAddr,\n      distributeAddr,\n      bBroadcast,\n      number,\n      portIndex,\n      cardType\n    );\n    await this.connection.send(req);\n  };\nSession.prototype.trySetDistributeNumberOfCardOrScanBoardInPort =\n  async function trySetDistributeNumberOfCardOrScanBoardInPort(\n    this: Session,\n    addr: number,\n    portAddr: number,\n    distributeAddr: number,\n    number: number,\n    portIndex: number,\n    cardType: CardTypeEnum\n  ): Promise<ErrorType | null> {\n    const req = createSetDistributeNumberOfCardOrScanBoardInPort(\n      addr,\n      portAddr,\n      distributeAddr,\n      false,\n      number,\n      portIndex,\n      cardType\n    );\n    return (await this.connection.trySend(req))?.ack ?? null;\n  };\n"],"mappings":";;;;;AAyBA,SAAwB,iDACtB,MACA,UACA,gBACA,YACA,QACA,WACA,UACoB;CAEpB,MAAM,MAAM,IAAIA,0DADW,SACC,GAAG,YAAY,4CAA4C;CACvF,IAAI,cAAc;CAClB,IAAI,aAAa;CACjB,IAAI,OAAO;CACX,IAAI,WAAW;CACf,IAAI,UAAU;CACd,IAAI,YAAY,GACd,IAAI,4BAGF,iBACA;MAEF,IAAI,qBAEF,iBACA;CAEJ,OAAO;AACT;AACA,wBAAQ,UAAU,6CAChB,eAAe,2CAEb,MACA,UACA,gBACA,YACA,QACA,WACA,UACe;CACf,MAAM,MAAM,iDACV,MACA,UACA,gBACA,YACA,QACA,WACA,QACF;CACA,MAAM,KAAK,WAAW,KAAK,GAAG;AAChC;AACF,wBAAQ,UAAU,gDAChB,eAAe,8CAEb,MACA,UACA,gBACA,QACA,WACA,UAC2B;CAC3B,MAAM,MAAM,iDACV,MACA,UACA,gBACA,OACA,QACA,WACA,QACF;CACA,QAAQ,MAAM,KAAK,WAAW,QAAQ,GAAG,IAAI,OAAO;AACtD"}