{"version":3,"file":"index.mjs","sources":["../../../../src/types/bizproc/index.ts"],"sourcesContent":["/**\n * Data Types and Object Structure in the REST API bizproc\n * @link https://apidocs.bitrix24.com/api-reference/bizproc/bizproc-activity/bizproc-activity-add.html\n * @link https://apidocs.bitrix24.com/api-reference/bizproc/bizproc-robot/bizproc-robot-add.html\n * @todo add docs\n */\nimport { EnumCrmEntityTypeId } from '../crm'\n\n/**\n * @link https://apidocs.bitrix24.com/api-reference/bizproc/bizproc-activity/bizproc-activity-add.html\n */\nexport enum EnumBitrix24Edition {\n  undefined = 'undefined',\n  b24 = 'b24',\n  box = 'box'\n}\n\nexport enum EnumBizprocBaseType {\n  undefined = 'undefined',\n  crm = 'crm',\n  disk = 'disk',\n  lists = 'lists'\n}\n\n/**\n * @link https://apidocs.bitrix24.com/api-reference/bizproc/bizproc-workflow-start.html\n */\nexport enum EnumBizprocDocumentType {\n  undefined = 'undefined',\n  lead = 'CCrmDocumentLead',\n  company = 'CCrmDocumentCompany',\n  contact = 'CCrmDocumentContact',\n  deal = 'CCrmDocumentDeal',\n  invoice = 'Bitrix\\\\Crm\\\\Integration\\\\BizProc\\\\Document\\\\SmartInvoice',\n  quote = 'Bitrix\\\\Crm\\\\Integration\\\\BizProc\\\\Document\\\\Quote',\n  order = 'Bitrix\\\\Crm\\\\Integration\\\\BizProc\\\\Document\\\\Order',\n  dynamic = 'Bitrix\\\\Crm\\\\Integration\\\\BizProc\\\\Document\\\\Dynamic',\n  disk = 'Bitrix\\\\Disk\\\\BizProcDocument',\n  lists = 'BizprocDocument',\n  listsList = 'Bitrix\\\\Lists\\\\BizprocDocumentLists'\n}\n\nexport function convertBizprocDocumentTypeToCrmEntityTypeId(\n  documentType: EnumBizprocDocumentType\n): EnumCrmEntityTypeId {\n  switch (documentType) {\n    case EnumBizprocDocumentType.lead:\n      return EnumCrmEntityTypeId.lead\n    case EnumBizprocDocumentType.company:\n      return EnumCrmEntityTypeId.company\n    case EnumBizprocDocumentType.contact:\n      return EnumCrmEntityTypeId.contact\n    case EnumBizprocDocumentType.deal:\n      return EnumCrmEntityTypeId.deal\n    case EnumBizprocDocumentType.invoice:\n      return EnumCrmEntityTypeId.invoice\n    case EnumBizprocDocumentType.quote:\n      return EnumCrmEntityTypeId.quote\n    case EnumBizprocDocumentType.order:\n      return EnumCrmEntityTypeId.order\n  }\n\n  return EnumCrmEntityTypeId.undefined\n}\n\n/**\n * @link https://apidocs.bitrix24.com/api-reference/bizproc/bizproc-activity/bizproc-activity-add.html\n */\nexport function getDocumentType(\n  documentType: EnumBizprocDocumentType,\n  entityId?: number\n): string[] {\n  let entityIdFormatted = ''\n  let base: EnumBizprocBaseType = EnumBizprocBaseType.undefined\n  switch (documentType) {\n    case EnumBizprocDocumentType.lead:\n      base = EnumBizprocBaseType.crm\n      entityIdFormatted = 'LEAD'\n      break\n    case EnumBizprocDocumentType.company:\n      base = EnumBizprocBaseType.crm\n      entityIdFormatted = 'COMPANY'\n      break\n    case EnumBizprocDocumentType.contact:\n      base = EnumBizprocBaseType.crm\n      entityIdFormatted = 'CONTACT'\n      break\n    case EnumBizprocDocumentType.deal:\n      base = EnumBizprocBaseType.crm\n      entityIdFormatted = 'DEAL'\n      break\n    case EnumBizprocDocumentType.invoice:\n      base = EnumBizprocBaseType.crm\n      entityIdFormatted = 'SMART_INVOICE'\n      break\n    case EnumBizprocDocumentType.quote:\n      base = EnumBizprocBaseType.crm\n      entityIdFormatted = 'QUOTE'\n      break\n    case EnumBizprocDocumentType.order:\n      base = EnumBizprocBaseType.crm\n      entityIdFormatted = 'ORDER'\n      break\n    case EnumBizprocDocumentType.dynamic:\n      base = EnumBizprocBaseType.crm\n      entityIdFormatted = `DYNAMIC_${entityId || 0}`\n      if ((entityId || 0) < 1) {\n        throw new Error('Need set entityId')\n      }\n      break\n    case EnumBizprocDocumentType.disk:\n      base = EnumBizprocBaseType.disk\n      entityIdFormatted = `STORAGE_${entityId || 0}`\n      if ((entityId || 0) < 1) {\n        throw new Error('Need set entityId')\n      }\n      break\n    case EnumBizprocDocumentType.lists:\n      base = EnumBizprocBaseType.lists\n      entityIdFormatted = `iblock_${entityId || 0}`\n      if ((entityId || 0) < 1) {\n        throw new Error('Need set entityId')\n      }\n      break\n    case EnumBizprocDocumentType.listsList:\n      base = EnumBizprocBaseType.lists\n      entityIdFormatted = `iblock_${entityId || 0}`\n      if ((entityId || 0) < 1) {\n        throw new Error('Need set entityId')\n      }\n      break\n  }\n\n  return [\n    base,\n    documentType,\n    entityIdFormatted\n  ]\n}\n\n/**\n * @link https://apidocs.bitrix24.com/api-reference/bizproc/bizproc-workflow-start.html\n */\nexport function getDocumentId(\n  documentType: EnumBizprocDocumentType,\n  id: number,\n  dynamicId?: number\n): string[] {\n  let entityIdFormatted = ''\n  const tmp = getDocumentType(documentType, 1)\n  switch (documentType) {\n    case EnumBizprocDocumentType.lead:\n      entityIdFormatted = `LEAD_${id}`\n      break\n    case EnumBizprocDocumentType.company:\n      entityIdFormatted = `COMPANY_${id}`\n      break\n    case EnumBizprocDocumentType.contact:\n      entityIdFormatted = `CONTACT_${id}`\n      break\n    case EnumBizprocDocumentType.deal:\n      entityIdFormatted = `DEAL_${id}`\n      break\n    case EnumBizprocDocumentType.invoice:\n      entityIdFormatted = `SMART_INVOICE_${id}`\n      break\n    case EnumBizprocDocumentType.quote:\n      entityIdFormatted = `QUOTE_${id}`\n      break\n    case EnumBizprocDocumentType.order:\n      entityIdFormatted = `ORDER_${id}`\n      break\n    case EnumBizprocDocumentType.dynamic:\n      entityIdFormatted = `DYNAMIC_${dynamicId || 0}_${id}`\n      if ((dynamicId || 0) < 1) {\n        throw new Error('Need set dynamicId')\n      }\n      break\n    case EnumBizprocDocumentType.disk:\n      entityIdFormatted = `${id}`\n      break\n    case EnumBizprocDocumentType.lists:\n      entityIdFormatted = `${id}`\n      break\n    case EnumBizprocDocumentType.listsList:\n      entityIdFormatted = `${id}`\n      break\n  }\n\n  return [\n    tmp[0]!,\n    tmp[1]!,\n    entityIdFormatted\n  ]\n}\n\n/**\n * @link https://apidocs.bitrix24.com/api-reference/bizproc/bizproc-workflow-start.html\n */\nexport function getDocumentTypeForFilter(\n  documentType: EnumBizprocDocumentType\n): string[] {\n  const result = getDocumentType(documentType, 1)\n\n  return [\n    result[0]!,\n    result[1]!\n  ]\n}\n"],"names":["EnumBitrix24Edition","EnumBizprocBaseType","EnumBizprocDocumentType"],"mappings":";;;;;;;;;;;;AAWO,IAAK,mBAAA,qBAAAA,oBAAAA,KAAL;AACL,EAAAA,qBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,qBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,qBAAA,KAAA,CAAA,GAAM,KAAA;AAHI,EAAA,OAAAA,oBAAAA;AAAA,CAAA,EAAA,mBAAA,IAAA,EAAA;AAML,IAAK,mBAAA,qBAAAC,oBAAAA,KAAL;AACL,EAAAA,qBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,qBAAA,KAAA,CAAA,GAAM,KAAA;AACN,EAAAA,qBAAA,MAAA,CAAA,GAAO,MAAA;AACP,EAAAA,qBAAA,OAAA,CAAA,GAAQ,OAAA;AAJE,EAAA,OAAAA,oBAAAA;AAAA,CAAA,EAAA,mBAAA,IAAA,EAAA;AAUL,IAAK,uBAAA,qBAAAC,wBAAAA,KAAL;AACL,EAAAA,yBAAA,WAAA,CAAA,GAAY,WAAA;AACZ,EAAAA,yBAAA,MAAA,CAAA,GAAO,kBAAA;AACP,EAAAA,yBAAA,SAAA,CAAA,GAAU,qBAAA;AACV,EAAAA,yBAAA,SAAA,CAAA,GAAU,qBAAA;AACV,EAAAA,yBAAA,MAAA,CAAA,GAAO,kBAAA;AACP,EAAAA,yBAAA,SAAA,CAAA,GAAU,2DAAA;AACV,EAAAA,yBAAA,OAAA,CAAA,GAAQ,oDAAA;AACR,EAAAA,yBAAA,OAAA,CAAA,GAAQ,oDAAA;AACR,EAAAA,yBAAA,SAAA,CAAA,GAAU,sDAAA;AACV,EAAAA,yBAAA,MAAA,CAAA,GAAO,+BAAA;AACP,EAAAA,yBAAA,OAAA,CAAA,GAAQ,iBAAA;AACR,EAAAA,yBAAA,WAAA,CAAA,GAAY,qCAAA;AAZF,EAAA,OAAAA,wBAAAA;AAAA,CAAA,EAAA,uBAAA,IAAA,EAAA;AAeL,SAAS,4CACd,YAAA,EACqB;AACrB,EAAA,QAAQ,YAAA;AAAc,IACpB,KAAK,kBAAA;AACH,MAAA,OAAO,mBAAA,CAAoB,IAAA;AAAA,IAC7B,KAAK,qBAAA;AACH,MAAA,OAAO,mBAAA,CAAoB,OAAA;AAAA,IAC7B,KAAK,qBAAA;AACH,MAAA,OAAO,mBAAA,CAAoB,OAAA;AAAA,IAC7B,KAAK,kBAAA;AACH,MAAA,OAAO,mBAAA,CAAoB,IAAA;AAAA,IAC7B,KAAK,2DAAA;AACH,MAAA,OAAO,mBAAA,CAAoB,OAAA;AAAA,IAC7B,KAAK,oDAAA;AACH,MAAA,OAAO,mBAAA,CAAoB,KAAA;AAAA,IAC7B,KAAK,oDAAA;AACH,MAAA,OAAO,mBAAA,CAAoB,KAAA;AAAA;AAG/B,EAAA,OAAO,mBAAA,CAAoB,SAAA;AAC7B;AArBgB,MAAA,CAAA,2CAAA,EAAA,6CAAA,CAAA;AA0BT,SAAS,eAAA,CACd,cACA,QAAA,EACU;AACV,EAAA,IAAI,iBAAA,GAAoB,EAAA;AACxB,EAAA,IAAI,IAAA,GAA4B,WAAA;AAChC,EAAA,QAAQ,YAAA;AAAc,IACpB,KAAK,kBAAA;AACH,MAAA,IAAA,GAAO,KAAA;AACP,MAAA,iBAAA,GAAoB,MAAA;AACpB,MAAA;AAAA,IACF,KAAK,qBAAA;AACH,MAAA,IAAA,GAAO,KAAA;AACP,MAAA,iBAAA,GAAoB,SAAA;AACpB,MAAA;AAAA,IACF,KAAK,qBAAA;AACH,MAAA,IAAA,GAAO,KAAA;AACP,MAAA,iBAAA,GAAoB,SAAA;AACpB,MAAA;AAAA,IACF,KAAK,kBAAA;AACH,MAAA,IAAA,GAAO,KAAA;AACP,MAAA,iBAAA,GAAoB,MAAA;AACpB,MAAA;AAAA,IACF,KAAK,2DAAA;AACH,MAAA,IAAA,GAAO,KAAA;AACP,MAAA,iBAAA,GAAoB,eAAA;AACpB,MAAA;AAAA,IACF,KAAK,oDAAA;AACH,MAAA,IAAA,GAAO,KAAA;AACP,MAAA,iBAAA,GAAoB,OAAA;AACpB,MAAA;AAAA,IACF,KAAK,oDAAA;AACH,MAAA,IAAA,GAAO,KAAA;AACP,MAAA,iBAAA,GAAoB,OAAA;AACpB,MAAA;AAAA,IACF,KAAK,sDAAA;AACH,MAAA,IAAA,GAAO,KAAA;AACP,MAAA,iBAAA,GAAoB,CAAA,QAAA,EAAW,YAAY,CAAC,CAAA,CAAA;AAC5C,MAAA,IAAA,CAAK,QAAA,IAAY,KAAK,CAAA,EAAG;AACvB,QAAA,MAAM,IAAI,MAAM,mBAAmB,CAAA;AAAA,MACrC;AACA,MAAA;AAAA,IACF,KAAK,+BAAA;AACH,MAAA,IAAA,GAAO,MAAA;AACP,MAAA,iBAAA,GAAoB,CAAA,QAAA,EAAW,YAAY,CAAC,CAAA,CAAA;AAC5C,MAAA,IAAA,CAAK,QAAA,IAAY,KAAK,CAAA,EAAG;AACvB,QAAA,MAAM,IAAI,MAAM,mBAAmB,CAAA;AAAA,MACrC;AACA,MAAA;AAAA,IACF,KAAK,iBAAA;AACH,MAAA,IAAA,GAAO,OAAA;AACP,MAAA,iBAAA,GAAoB,CAAA,OAAA,EAAU,YAAY,CAAC,CAAA,CAAA;AAC3C,MAAA,IAAA,CAAK,QAAA,IAAY,KAAK,CAAA,EAAG;AACvB,QAAA,MAAM,IAAI,MAAM,mBAAmB,CAAA;AAAA,MACrC;AACA,MAAA;AAAA,IACF,KAAK,qCAAA;AACH,MAAA,IAAA,GAAO,OAAA;AACP,MAAA,iBAAA,GAAoB,CAAA,OAAA,EAAU,YAAY,CAAC,CAAA,CAAA;AAC3C,MAAA,IAAA,CAAK,QAAA,IAAY,KAAK,CAAA,EAAG;AACvB,QAAA,MAAM,IAAI,MAAM,mBAAmB,CAAA;AAAA,MACrC;AACA,MAAA;AAAA;AAGJ,EAAA,OAAO;AAAA,IACL,IAAA;AAAA,IACA,YAAA;AAAA,IACA;AAAA,GACF;AACF;AAtEgB,MAAA,CAAA,eAAA,EAAA,iBAAA,CAAA;AA2ET,SAAS,aAAA,CACd,YAAA,EACA,EAAA,EACA,SAAA,EACU;AACV,EAAA,IAAI,iBAAA,GAAoB,EAAA;AACxB,EAAA,MAAM,GAAA,GAAM,eAAA,CAAgB,YAAA,EAAc,CAAC,CAAA;AAC3C,EAAA,QAAQ,YAAA;AAAc,IACpB,KAAK,kBAAA;AACH,MAAA,iBAAA,GAAoB,QAAQ,EAAE,CAAA,CAAA;AAC9B,MAAA;AAAA,IACF,KAAK,qBAAA;AACH,MAAA,iBAAA,GAAoB,WAAW,EAAE,CAAA,CAAA;AACjC,MAAA;AAAA,IACF,KAAK,qBAAA;AACH,MAAA,iBAAA,GAAoB,WAAW,EAAE,CAAA,CAAA;AACjC,MAAA;AAAA,IACF,KAAK,kBAAA;AACH,MAAA,iBAAA,GAAoB,QAAQ,EAAE,CAAA,CAAA;AAC9B,MAAA;AAAA,IACF,KAAK,2DAAA;AACH,MAAA,iBAAA,GAAoB,iBAAiB,EAAE,CAAA,CAAA;AACvC,MAAA;AAAA,IACF,KAAK,oDAAA;AACH,MAAA,iBAAA,GAAoB,SAAS,EAAE,CAAA,CAAA;AAC/B,MAAA;AAAA,IACF,KAAK,oDAAA;AACH,MAAA,iBAAA,GAAoB,SAAS,EAAE,CAAA,CAAA;AAC/B,MAAA;AAAA,IACF,KAAK,sDAAA;AACH,MAAA,iBAAA,GAAoB,CAAA,QAAA,EAAW,SAAA,IAAa,CAAC,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA;AACnD,MAAA,IAAA,CAAK,SAAA,IAAa,KAAK,CAAA,EAAG;AACxB,QAAA,MAAM,IAAI,MAAM,oBAAoB,CAAA;AAAA,MACtC;AACA,MAAA;AAAA,IACF,KAAK,+BAAA;AACH,MAAA,iBAAA,GAAoB,GAAG,EAAE,CAAA,CAAA;AACzB,MAAA;AAAA,IACF,KAAK,iBAAA;AACH,MAAA,iBAAA,GAAoB,GAAG,EAAE,CAAA,CAAA;AACzB,MAAA;AAAA,IACF,KAAK,qCAAA;AACH,MAAA,iBAAA,GAAoB,GAAG,EAAE,CAAA,CAAA;AACzB,MAAA;AAAA;AAGJ,EAAA,OAAO;AAAA,IACL,IAAI,CAAC,CAAA;AAAA,IACL,IAAI,CAAC,CAAA;AAAA,IACL;AAAA,GACF;AACF;AAnDgB,MAAA,CAAA,aAAA,EAAA,eAAA,CAAA;AAwDT,SAAS,yBACd,YAAA,EACU;AACV,EAAA,MAAM,MAAA,GAAS,eAAA,CAAgB,YAAA,EAAc,CAAC,CAAA;AAE9C,EAAA,OAAO;AAAA,IACL,OAAO,CAAC,CAAA;AAAA,IACR,OAAO,CAAC;AAAA,GACV;AACF;AATgB,MAAA,CAAA,wBAAA,EAAA,0BAAA,CAAA;;;;"}