UNPKG

@azure/functions-extensions-servicebus

Version:
2 lines 11.4 kB
(()=>{"use strict";var e={479:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var s=Object.getOwnPropertyDescriptor(t,r);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,s)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return s(t,e),t},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.createGrpcClient=void 0;const a=n(r(437)),c=n(r(237)),u=i(r(873));t.createGrpcClient=function({protoPath:e,serviceName:t,address:r,credentials:o=a.credentials.createInsecure(),grpcMaxMessageLength:s,includeDirs:n=[]}){const i=c.loadSync(e,{keepCase:!1,longs:String,enums:String,defaults:!0,oneofs:!0,includeDirs:[u.default.dirname(e),...n]}),d=a.loadPackageDefinition(i)[t];if(!d)throw new Error(`Service "${t}" not found in proto file: ${e}`);return new d(r,o,{"grpc.max_send_message_length":s,"grpc.max_receive_message_length":s})}},409:function(e,t,r){var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var s=Object.getOwnPropertyDescriptor(t,r);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,s)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&o(t,e,r);return s(t,e),t},i=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(s,n){function i(e){try{c(o.next(e))}catch(e){n(e)}}function a(e){try{c(o.throw(e))}catch(e){n(e)}}function c(e){var t;e.done?s(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())}))},a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceBusMessageActions=void 0;const c=n(r(437)),u=a(r(873)),d=r(479),l=r(232),p=u.default.join(__dirname,"/proto/settlement.proto");class f{constructor(){const{uri:e,grpcMaxMessageLength:t}=l.GrpcUriBuilder.build();this.client=(0,d.createGrpcClient)({protoPath:p,serviceName:"Settlement",address:e,credentials:c.credentials.createInsecure(),grpcMaxMessageLength:t})}static getInstance(){return f.instance||(f.instance=new f),f.instance}validateLockToken(e){const t=e.lockToken;if(!t)throw new Error("ArgumentException: lockToken is required in ServiceBusReceivedMessage.");return t}complete(e){return i(this,void 0,void 0,(function*(){const t=this.validateLockToken(e);return new Promise(((e,r)=>{const o={locktoken:t};this.client.complete(o,(t=>{t?(console.error("Complete request failed:",{code:t.code,message:t.message,details:t.details}),r(t)):e()}))}))}))}abandon(e,t){return i(this,void 0,void 0,(function*(){const r=this.validateLockToken(e);return new Promise(((e,o)=>{const s={locktoken:r,propertiesToModify:t||new Uint8Array};this.client.abandon(s,(t=>{t?(console.error("Abandon request failed:",{code:t.code,message:t.message,details:t.details}),o(t)):e()}))}))}))}deadletter(e,t,r,o){return i(this,void 0,void 0,(function*(){const s=this.validateLockToken(e);return new Promise(((e,n)=>{const i={locktoken:s,propertiesToModify:t||new Uint8Array,deadletterReason:r,deadletterErrorDescription:o};this.client.deadletter(i,(t=>{t?(console.error("Deadletter request failed:",{code:t.code,message:t.message,details:t.details}),n(t)):e()}))}))}))}defer(e,t){return i(this,void 0,void 0,(function*(){const r=this.validateLockToken(e);return new Promise(((e,o)=>{const s={locktoken:r,propertiesToModify:t||new Uint8Array};this.client.defer(s,(t=>{t?(console.error("Defer request failed:",{code:t.code,message:t.message,details:t.details}),o(t)):e()}))}))}))}renewMessageLock(e){return i(this,void 0,void 0,(function*(){const t=this.validateLockToken(e);return new Promise(((e,r)=>{const o={locktoken:t};this.client.renewMessageLock(o,(t=>{t?(console.error("RenewMessageLock request failed:",{code:t.code,message:t.message,details:t.details}),r(t)):e()}))}))}))}setSessionState(e,t){return i(this,void 0,void 0,(function*(){return new Promise(((r,o)=>{const s={sessionId:e,sessionState:t};this.client.setSessionState(s,(e=>{e?(console.error("SetSessionState request failed:",{code:e.code,message:e.message,details:e.details}),o(e)):r()}))}))}))}releaseSession(e){return i(this,void 0,void 0,(function*(){return new Promise(((t,r)=>{const o={sessionId:e};this.client.releaseSession(o,(e=>{e?(console.error("ReleaseSession request failed:",{code:e.code,message:e.message,details:e.details}),r(e)):t()}))}))}))}renewSessionLock(e){return i(this,void 0,void 0,(function*(){return new Promise(((t,r)=>{const o={sessionId:e};this.client.renewSessionLock(o,((e,o)=>{if(e)console.error("RenewSessionLock request failed:",{code:e.code,message:e.message,details:e.details}),r(e);else if(o&&o.lockedUntil)t(o.lockedUntil);else{const e=new Error("No response or lockedUntil returned from renewSessionLock");console.error(e),r(e)}}))}))}))}static resetInstance(){f.instance=null}}t.ServiceBusMessageActions=f,f.instance=null},173:function(e,t,r){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AzureServiceBusMessageFactory=void 0;const s=r(695),n=o(r(288)),i=r(843),a=r(409),c="x-opt-enqueued-time",u="x-opt-sequence-number";class d{static buildServiceBusMessageFromModelBindingData(e){const t=a.ServiceBusMessageActions.getInstance(),r=e=>{if(!e.content)throw new Error("ModelBindingData.content is null or undefined.");const{decodedMessage:t,lockToken:r}=i.ServiceBusMessageDecoder.decode(e.content);return this.createServiceBusReceivedMessageFromRhea(t,r)};return{messages:Array.isArray(e)?e.map(r):r(e),actions:t}}static createServiceBusReceivedMessageFromAmqp(e,t){var r,o,s,i,a,l,p,f,v,g,m,h,y,_,M,k,S;return{body:d.decodeAmqpBody(e.body,null===(r=e.properties)||void 0===r?void 0:r.contentType),messageId:null===(s=null===(o=e.properties)||void 0===o?void 0:o.messageId)||void 0===s?void 0:s.toString(),correlationId:null===(a=null===(i=e.properties)||void 0===i?void 0:i.correlationId)||void 0===a?void 0:a.toString(),contentType:null===(l=e.properties)||void 0===l?void 0:l.contentType,subject:null===(p=e.properties)||void 0===p?void 0:p.subject,to:null===(f=e.properties)||void 0===f?void 0:f.to,replyTo:null===(v=e.properties)||void 0===v?void 0:v.replyTo,replyToSessionId:null===(g=e.properties)||void 0===g?void 0:g.replyToGroupId,sessionId:null===(m=e.properties)||void 0===m?void 0:m.groupId,timeToLive:null===(h=e.header)||void 0===h?void 0:h.timeToLive,applicationProperties:e.applicationProperties||{},deliveryCount:(null===(y=e.header)||void 0===y?void 0:y.deliveryCount)||0,lockToken:t,_rawAmqpMessage:e,enqueuedTimeUtc:void 0===(null===(_=e.messageAnnotations)||void 0===_?void 0:_[c])||"string"!=typeof e.messageAnnotations[c]&&"number"!=typeof e.messageAnnotations[c]?void 0:new Date(e.messageAnnotations[c]),sequenceNumber:void 0!==(null===(M=e.messageAnnotations)||void 0===M?void 0:M[u])?n.default.fromNumber(Number(e.messageAnnotations[u])):void 0,deadLetterReason:null===(k=e.applicationProperties)||void 0===k?void 0:k.DeadLetterReason,deadLetterErrorDescription:null===(S=e.applicationProperties)||void 0===S?void 0:S.DeadLetterErrorDescription,state:"active"}}static createServiceBusReceivedMessageFromRhea(e,t){const r=s.AmqpAnnotatedMessage.fromRheaMessage(e);return d.createServiceBusReceivedMessageFromAmqp(r,t)}static decodeAmqpBody(e,t){if("object"==typeof e&&null!==e&&"typecode"in e&&"content"in e&&"number"==typeof e.typecode&&Buffer.isBuffer(e.content)){const{typecode:r,content:o}=e;if(117===r){const e=o.toString("utf8");switch(t){case"text/plain":case"application/xml":return e;case"application/json":try{return JSON.parse(e)}catch(t){return e}default:return e}}return o}return e}}t.AzureServiceBusMessageFactory=d},469:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.registerServiceBusMessageFactory=void 0;const o=r(490),s=r(173),n="AzureServiceBusReceivedMessage";t.registerServiceBusMessageFactory=function(){try{const e=o.ResourceFactoryResolver.getInstance();e.hasResourceFactory(n)||e.registerResourceFactory(n,(e=>s.AzureServiceBusMessageFactory.buildServiceBusMessageFromModelBindingData(e)))}catch(e){throw new Error(`Service Bus Message Factory initialization failed: ${e instanceof Error?e.message:String(e)}`)}}},232:function(e,t,r){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.GrpcUriBuilder=void 0;const s=o(r(148));t.GrpcUriBuilder=class{static build(){const e=(0,s.default)(process.argv.slice(2)),{host:t,port:r,"functions-grpc-max-message-length":o}=e,n=[];if(t||n.push("'host'"),r||n.push("'port'"),o||n.push("'functions-grpc-max-message-length'"),n.length)throw new Error(`Missing required arguments: ${n.join(", ")}`);return{uri:`${String(t)}:${String(r)}`,grpcMaxMessageLength:Number(o)}}}},785:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.LockTokenUtil=void 0;class r{static convertToString(e){return[e.subarray(0,4).reverse().toString("hex"),e.subarray(4,6).reverse().toString("hex"),e.subarray(6,8).reverse().toString("hex"),e.subarray(8,10).toString("hex"),e.subarray(10).toString("hex")].join("-")}static extractFromMessage(e,t){const r=Buffer.isBuffer(e)?e.subarray(0,t):new Uint8Array(e.slice(0,t));return this.convertToString(Buffer.from(r.subarray(0,16)))}}t.LockTokenUtil=r,r.X_OPT_LOCK_TOKEN=Buffer.from("x-opt-lock-token")},843:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceBusMessageDecoder=void 0;const o=r(978),s=r(785);t.ServiceBusMessageDecoder=class{static decode(e){if(!e||0===e.length)throw new Error("Content buffer is empty");const t=e.indexOf(s.LockTokenUtil.X_OPT_LOCK_TOKEN);if(-1===t)throw new Error("Lock token not found in content");const r=s.LockTokenUtil.extractFromMessage(e,t),n=e.subarray(t+s.LockTokenUtil.X_OPT_LOCK_TOKEN.length);return{decodedMessage:o.message.decode(Buffer.from(n)),lockToken:r}}}},695:e=>{e.exports=require("@azure/core-amqp")},490:e=>{e.exports=require("@azure/functions-extensions-base")},437:e=>{e.exports=require("@grpc/grpc-js")},237:e=>{e.exports=require("@grpc/proto-loader")},288:e=>{e.exports=require("long")},148:e=>{e.exports=require("minimist")},873:e=>{e.exports=require("path")},978:e=>{e.exports=require("rhea")}},t={};function r(o){var s=t[o];if(void 0!==s)return s.exports;var n=t[o]={exports:{}};return e[o].call(n.exports,n,n.exports,r),n.exports}var o,s={};o=s,Object.defineProperty(o,"__esModule",{value:!0}),(0,r(469).registerServiceBusMessageFactory)(),module.exports=s})(); //# sourceMappingURL=azure-functions-extensions-servicebus.min.js.map