@ez4/local-queue 0.22.0 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.cjs CHANGED
@@ -1,21 +1,24 @@
1
- "use strict";var c=Object.defineProperty;var w=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var M=Object.prototype.hasOwnProperty;var a=(e,t)=>c(e,"name",{value:t,configurable:!0});var q=(e,t)=>{for(var r in t)c(e,r,{get:t[r],enumerable:!0})},x=(e,t,r,s)=>{if(t&&
2
- typeof t=="object"||typeof t=="function")for(let o of E(t))!M.call(e,o)&&o!==r&&
3
- c(e,o,{get:()=>t[o],enumerable:!(s=w(t,o))||s.enumerable});return e};var C=e=>x(c({},"__esModule",{value:!0}),e);var O={};q(O,{registerTriggers:()=>T});module.exports=C(O);var h=require("@ez4/project/library");var i=require("@ez4/local-common"),p=require("@ez4/utils"),d=require("@ez4/project/library"),
4
- f=require("@ez4/queue/utils");var l=require("@ez4/queue/utils"),g=require("@ez4/project/library");var S=a((e,t,r)=>{let s=(0,g.getServiceName)(e,r),o=`http://${r.host}/${s}`;return new class{async sendMessage(n){
5
- let u=await(0,l.getJsonStringMessage)(n,t);if(!(await fetch(o,{method:"POST",body:u,
6
- headers:{"content-type":"application/json"}})).ok)throw new Error(`Queue ${e} is\
7
- n't available.`)}async receiveMessage(){throw new Error("Receive message isn't s\
8
- upported yet.")}}},"createQueueClient");var y=a((e,t,r)=>{let{name:s,schema:o}=e;return{type:"Queue",name:s,identifier:(0,d.getServiceName)(
9
- s,t),clientHandler:a(()=>S(s,o,t),"clientHandler"),requestHandler:a(n=>R(e,r,n),
10
- "requestHandler")}},"registerQueueServices"),R=a(async(e,t,r)=>{if(r.method!=="P\
11
- OST"||r.path!=="/"||!r.body)throw new Error("Unsupported queue request.");let s=(0,p.getRandomInteger)(
12
- 0,e.subscriptions.length-1),o=e.subscriptions[s];return await z(e,t,o,r.body),{status:204}},
13
- "handleQueueMessage"),z=a(async(e,t,r,s)=>{let o=await(0,i.createModule)({listener:r.
14
- listener,handler:r.handler}),n=e.services&&t.makeClients(e.services),u={requestId:(0,p.getRandomUUID)()};
15
- try{await(0,i.onBegin)(o,n,u);let m=JSON.parse(s.toString()),b=await(0,f.getJsonMessage)(
16
- m,e.schema);Object.assign(u,{message:b}),await(0,i.onReady)(o,n,u),await o.handler(
17
- u,n)}catch(m){await(0,i.onError)(o,n,u,m)}finally{await(0,i.onEnd)(o,n,u)}},"pro\
18
- cessLambdaMessage");var Q=require("@ez4/queue/library");var v=!1,T=a(()=>{v||((0,h.createTrigger)("@ez4/local-queue",{"emulator:getServi\
19
- ces":a(({service:e,options:t,context:r})=>(0,Q.isQueueService)(e)?y(e,t,r):null,
20
- "emulator:getServices")}),v=!0)},"registerTriggers");0&&(module.exports={registerTriggers});
1
+ "use strict";var p=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var M=Object.getOwnPropertyNames;var q=Object.prototype.hasOwnProperty;var i=(e,r)=>p(e,"name",{value:r,configurable:!0});var x=(e,r)=>{for(var s in r)p(e,s,{get:r[s],enumerable:!0})},I=(e,r,s,t)=>{if(r&&
2
+ typeof r=="object"||typeof r=="function")for(let o of M(r))!q.call(e,o)&&o!==s&&
3
+ p(e,o,{get:()=>r[o],enumerable:!(t=E(r,o))||t.enumerable});return e};var C=e=>I(p({},"__esModule",{value:!0}),e);var z={};x(z,{registerTriggers:()=>R});module.exports=C(z);var c=require("@ez4/queue/library"),b=require("@ez4/project/library");var u=require("@ez4/local-common"),g=require("@ez4/utils"),v=require("@ez4/project/library"),
4
+ Q=require("@ez4/queue/utils");var l=require("@ez4/project/library"),d=require("@ez4/queue/utils");var f=i((e,r,s)=>{let t=(0,l.getServiceName)(e,s),o=`http://${s.serviceHost}/${t}`;
5
+ return new class{async sendMessage(a){let n=await(0,d.getJsonStringMessage)(a,r);
6
+ if(l.Logger.log(`\u2709\uFE0F Sending message to Queue [${e}] at ${o}`),!(await fetch(
7
+ o,{method:"POST",body:n,headers:{"content-type":"application/json"}})).ok)throw new Error(
8
+ `Queue ${e} isn't available.`)}async receiveMessage(){throw new Error("Receive m\
9
+ essage isn't supported yet.")}}},"createQueueClient");var y=i((e,r,s)=>{let{name:t,schema:o}=e;return{type:"Queue",name:t,identifier:(0,v.getServiceName)(
10
+ t,r),clientHandler:i(()=>f(t,o,r),"clientHandler"),requestHandler:i(a=>T(e,r,s,a),
11
+ "requestHandler")}},"registerQueueServices"),T=i(async(e,r,s,t)=>{if(t.method!==
12
+ "POST"||t.path!=="/"||!t.body)throw new Error("Unsupported queue request.");let o=(0,g.getRandomInteger)(
13
+ 0,e.subscriptions.length-1),a=e.subscriptions[o];return a&&await O(e,r,s,a,t.body),
14
+ {status:204}},"handleQueueMessage"),O=i(async(e,r,s,t,o)=>{let a=await(0,u.createModule)(
15
+ {version:r.version,listener:t.listener,handler:t.handler,variables:{...r.variables,
16
+ ...e.variables,...t.variables}}),n=e.services&&s.makeClients(e.services),m={requestId:(0,g.getRandomUUID)()};
17
+ try{await(0,u.onBegin)(a,n,m);let S=JSON.parse(o.toString()),w=await(0,Q.getJsonMessage)(
18
+ S,e.schema);Object.assign(m,{message:w}),await(0,u.onReady)(a,n,m),await a.handler(
19
+ m,n)}catch(S){await(0,u.onError)(a,n,m,S)}finally{await(0,u.onEnd)(a,n,m)}},"pro\
20
+ cessLambdaMessage");var h=!1,R=i(()=>{h||((0,c.registerTriggers)(),(0,b.createTrigger)("@ez4/local-q\
21
+ ueue",{"emulator:getServices":i(({service:e,options:r,context:s})=>(0,c.isQueueService)(
22
+ e)||(0,c.isQueueImport)(e)?y(e,r,s):null,"emulator:getServices")}),h=!0)},"regis\
23
+ terTriggers");0&&(module.exports={registerTriggers});
21
24
  //# sourceMappingURL=main.cjs.map
package/dist/main.mjs CHANGED
@@ -1,18 +1,21 @@
1
- var g=Object.defineProperty;var s=(e,r)=>g(e,"name",{value:r,configurable:!0});import{createTrigger as C}from"@ez4/project/library";import{createModule as f,onBegin as y,onEnd as v,onError as h,onReady as Q}from"@ez4/local-common";
2
- import{getRandomInteger as b,getRandomUUID as w}from"@ez4/utils";import{getServiceName as E}from"@ez4/project/library";
3
- import{getJsonMessage as M}from"@ez4/queue/utils";import{getJsonStringMessage as S}from"@ez4/queue/utils";import{getServiceName as d}from"@ez4/project/library";var m=s((e,r,t)=>{let a=d(e,t),o=`http://${t.host}/${a}`;return new class{async sendMessage(i){
4
- let n=await S(i,r);if(!(await fetch(o,{method:"POST",body:n,headers:{"content-ty\
5
- pe":"application/json"}})).ok)throw new Error(`Queue ${e} isn't available.`)}async receiveMessage(){
6
- throw new Error("Receive message isn't supported yet.")}}},"createQueueClient");var c=s((e,r,t)=>{let{name:a,schema:o}=e;return{type:"Queue",name:a,identifier:E(
7
- a,r),clientHandler:s(()=>m(a,o,r),"clientHandler"),requestHandler:s(i=>q(e,t,i),
8
- "requestHandler")}},"registerQueueServices"),q=s(async(e,r,t)=>{if(t.method!=="P\
9
- OST"||t.path!=="/"||!t.body)throw new Error("Unsupported queue request.");let a=b(
10
- 0,e.subscriptions.length-1),o=e.subscriptions[a];return await x(e,r,o,t.body),{status:204}},
11
- "handleQueueMessage"),x=s(async(e,r,t,a)=>{let o=await f({listener:t.listener,handler:t.
12
- handler}),i=e.services&&r.makeClients(e.services),n={requestId:w()};try{await y(
13
- o,i,n);let u=JSON.parse(a.toString()),l=await M(u,e.schema);Object.assign(n,{message:l}),
14
- await Q(o,i,n),await o.handler(n,i)}catch(u){await h(o,i,n,u)}finally{await v(o,
15
- i,n)}},"processLambdaMessage");import{isQueueService as R}from"@ez4/queue/library";var p=!1,F=s(()=>{p||(C("@ez4/local-queue",{"emulator:getServices":s(({service:e,
16
- options:r,context:t})=>R(e)?c(e,r,t):null,"emulator:getServices")}),p=!0)},"regi\
17
- sterTriggers");export{F as registerTriggers};
1
+ var S=Object.defineProperty;var o=(e,r)=>S(e,"name",{value:r,configurable:!0});import{isQueueImport as T,isQueueService as O,registerTriggers as R}from"@ez4/queue/library";
2
+ import{createTrigger as z}from"@ez4/project/library";import{createModule as Q,onBegin as y,onEnd as h,onError as b,onReady as w}from"@ez4/local-common";
3
+ import{getRandomInteger as E,getRandomUUID as M}from"@ez4/utils";import{getServiceName as q}from"@ez4/project/library";
4
+ import{getJsonMessage as x}from"@ez4/queue/utils";import{getServiceName as d,Logger as f}from"@ez4/project/library";import{getJsonStringMessage as v}from"@ez4/queue/utils";var c=o((e,r,a)=>{let t=d(e,a),i=`http://${a.serviceHost}/${t}`;return new class{async sendMessage(s){
5
+ let u=await v(s,r);if(f.log(`\u2709\uFE0F Sending message to Queue [${e}] at ${i}`),
6
+ !(await fetch(i,{method:"POST",body:u,headers:{"content-type":"application/json"}})).
7
+ ok)throw new Error(`Queue ${e} isn't available.`)}async receiveMessage(){throw new Error(
8
+ "Receive message isn't supported yet.")}}},"createQueueClient");var p=o((e,r,a)=>{let{name:t,schema:i}=e;return{type:"Queue",name:t,identifier:q(
9
+ t,r),clientHandler:o(()=>c(t,i,r),"clientHandler"),requestHandler:o(s=>I(e,r,a,s),
10
+ "requestHandler")}},"registerQueueServices"),I=o(async(e,r,a,t)=>{if(t.method!==
11
+ "POST"||t.path!=="/"||!t.body)throw new Error("Unsupported queue request.");let i=E(
12
+ 0,e.subscriptions.length-1),s=e.subscriptions[i];return s&&await C(e,r,a,s,t.body),
13
+ {status:204}},"handleQueueMessage"),C=o(async(e,r,a,t,i)=>{let s=await Q({version:r.
14
+ version,listener:t.listener,handler:t.handler,variables:{...r.variables,...e.variables,
15
+ ...t.variables}}),u=e.services&&a.makeClients(e.services),n={requestId:M()};try{
16
+ await y(s,u,n);let m=JSON.parse(i.toString()),g=await x(m,e.schema);Object.assign(
17
+ n,{message:g}),await w(s,u,n),await s.handler(n,u)}catch(m){await b(s,u,n,m)}finally{
18
+ await h(s,u,n)}},"processLambdaMessage");var l=!1,W=o(()=>{l||(R(),z("@ez4/local-queue",{"emulator:getServices":o(({service:e,
19
+ options:r,context:a})=>O(e)||T(e)?p(e,r,a):null,"emulator:getServices")}),l=!0)},
20
+ "registerTriggers");export{W as registerTriggers};
18
21
  //# sourceMappingURL=main.mjs.map
@@ -1,7 +1,7 @@
1
1
  import type { EmulateServiceContext, EmulatorServiceRequest, ServeOptions } from '@ez4/project/library';
2
- import type { QueueService } from '@ez4/queue/library';
2
+ import type { QueueImport, QueueService } from '@ez4/queue/library';
3
3
  import type { Queue } from '@ez4/queue';
4
- export declare const registerQueueServices: (service: QueueService, options: ServeOptions, context: EmulateServiceContext) => {
4
+ export declare const registerQueueServices: (service: QueueService | QueueImport, options: ServeOptions, context: EmulateServiceContext) => {
5
5
  type: string;
6
6
  name: string;
7
7
  identifier: string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ez4/local-queue",
3
3
  "description": "EZ4: Local queue emulator",
4
- "version": "0.22.0",
4
+ "version": "0.23.0",
5
5
  "author": "Silas B.",
6
6
  "license": "MIT",
7
7
  "type": "module",
@@ -39,10 +39,10 @@
39
39
  "live:publish": "npm run test && npm publish --access public"
40
40
  },
41
41
  "dependencies": {
42
- "@ez4/common": "^0.22.0",
43
- "@ez4/local-common": "^0.22.0",
44
- "@ez4/project": "^0.22.0",
45
- "@ez4/queue": "^0.22.0",
46
- "@ez4/utils": "^0.22.0"
42
+ "@ez4/common": "^0.23.0",
43
+ "@ez4/local-common": "^0.23.0",
44
+ "@ez4/project": "^0.23.0",
45
+ "@ez4/queue": "^0.23.0",
46
+ "@ez4/utils": "^0.23.0"
47
47
  }
48
48
  }