@ez4/local-storage 0.32.0 → 0.33.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.
@@ -1,2 +1,6 @@
1
1
  import type { Client } from '@ez4/storage';
2
- export declare const createMockClient: (serviceName: string) => Client;
2
+ export type ClientMockContents = {
3
+ keys?: Record<string, Buffer>;
4
+ default?: Buffer;
5
+ };
6
+ export declare const createClientMock: (serviceName: string, contents?: ClientMockContents) => Client;
package/dist/main.cjs CHANGED
@@ -1,26 +1,26 @@
1
- "use strict";var g=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var n=(e,t)=>g(e,"name",{value:t,configurable:!0});var C=(e,t)=>{for(var o in t)g(e,o,{get:t[o],enumerable:!0})},P=(e,t,o,i)=>{if(t&&
2
- typeof t=="object"||typeof t=="function")for(let r of E(t))!b.call(e,r)&&r!==o&&
3
- g(e,r,{get:()=>t[r],enumerable:!(i=h(t,r))||i.enumerable});return e};var z=e=>P(g({},"__esModule",{value:!0}),e);var q={};C(q,{registerTriggers:()=>T});module.exports=z(q);var f=require("@ez4/storage/library"),v=require("@ez4/project/library");var S=require("@ez4/project/library");var s=require("node:fs/promises"),l=require("node:path"),d=require("node:fs"),u=require("@ez4/utils"),
4
- m=require("@ez4/project/library");var p=n((e,t)=>{let o=(0,m.getServiceName)(e,t),i=(0,l.join)(".ez4",(0,u.toKebabCase)(
5
- e));return new class{async exists(r){let a=(0,l.join)(i,r);return Promise.resolve(
6
- (0,d.existsSync)(a))}async write(r,a){let c=(0,l.join)(i,r);await(0,s.mkdir)((0,l.dirname)(
7
- c),{recursive:!0}),await(0,s.writeFile)(c,a),m.Logger.debug(`\u2B06\uFE0F File ${r}\
8
- uploaded.`)}async read(r){let a=(0,l.join)(i,r),c=await(0,s.readFile)(a);return m.Logger.
9
- debug(`\u2B07\uFE0F File ${r} downloaded.`),c}async delete(r){let a=(0,l.join)(
10
- i,r);await(0,s.unlink)(a),m.Logger.debug(`\u2139\uFE0F File ${r} deleted.`)}async getWriteUrl(r){
1
+ "use strict";var g=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var h=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var n=(e,t)=>g(e,"name",{value:t,configurable:!0});var C=(e,t)=>{for(var o in t)g(e,o,{get:t[o],enumerable:!0})},b=(e,t,o,i)=>{if(t&&
2
+ typeof t=="object"||typeof t=="function")for(let r of h(t))!E.call(e,r)&&r!==o&&
3
+ g(e,r,{get:()=>t[r],enumerable:!(i=v(t,r))||i.enumerable});return e};var P=e=>b(g({},"__esModule",{value:!0}),e);var B={};C(B,{registerTriggers:()=>x});module.exports=P(B);var p=require("@ez4/storage/library"),w=require("@ez4/project/library");var S=require("@ez4/project/library");var a=require("node:fs/promises"),l=require("node:path"),d=require("node:fs"),u=require("@ez4/utils"),
4
+ m=require("@ez4/project/library");var f=n((e,t)=>{let o=(0,m.getServiceName)(e,t),i=(0,l.join)(".ez4",(0,u.toKebabCase)(
5
+ e));return new class{async exists(r){let s=(0,l.join)(i,r);return Promise.resolve(
6
+ (0,d.existsSync)(s))}async write(r,s){let c=(0,l.join)(i,r);await(0,a.mkdir)((0,l.dirname)(
7
+ c),{recursive:!0}),await(0,a.writeFile)(c,s),m.Logger.debug(`\u2B06\uFE0F File ${r}\
8
+ uploaded.`)}async read(r){let s=(0,l.join)(i,r),c=await(0,a.readFile)(s);return m.Logger.
9
+ debug(`\u2B07\uFE0F File ${r} downloaded.`),c}async delete(r){let s=(0,l.join)(
10
+ i,r);await(0,a.unlink)(s),m.Logger.debug(`\u2139\uFE0F File ${r} deleted.`)}async getWriteUrl(r){
11
11
  return Promise.resolve(`http://${t.serviceHost}/${o}/${r}`)}async getReadUrl(r){
12
- return Promise.resolve(`http://${t.serviceHost}/${o}/${r}`)}async getStats(r){let a=(0,l.join)(
13
- i,r);try{return{type:"application/octet-stream",size:(await(0,s.stat)(a)).size}}catch(c){
12
+ return Promise.resolve(`http://${t.serviceHost}/${o}/${r}`)}async getStats(r){let s=(0,l.join)(
13
+ i,r);try{return{type:"application/octet-stream",size:(await(0,a.stat)(s)).size}}catch(c){
14
14
  if(!(0,u.isAnyObject)(c)||c.code!=="ENOENT")throw c;return}}}},"createServiceCli\
15
- ent");var y=n((e,t)=>{let o=p(e.name,t);return{type:"Storage",name:e.name,identifier:(0,S.getServiceName)(
16
- e.name,t),clientHandler:n(()=>p(e.name,t),"clientHandler"),requestHandler:n(i=>F(
17
- o,i),"requestHandler")}},"registerBucketEmulator"),F=n(async(e,t)=>{let{method:o,
15
+ ent");var y=n((e,t)=>{let o=f(e.name,t);return{type:"Storage",name:e.name,identifier:(0,S.getServiceName)(
16
+ e.name,t),exportHandler:n(()=>f(e.name,t),"exportHandler"),requestHandler:n(i=>z(
17
+ o,i),"requestHandler")}},"registerBucketEmulator"),z=n(async(e,t)=>{let{method:o,
18
18
  path:i,body:r}=t;if(!i||i==="/")throw new Error("File path wasn't given.");switch(o){case"\
19
- GET":return $(e,i);case"PUT":{if(!r)throw new Error("File content wasn't given.");
20
- return B(e,i,r)}default:throw new Error("Unsupported storage request.")}},"handl\
21
- eRequest"),$=n(async(e,t)=>{let[o,i]=await Promise.all([e.read(t),e.getStats(t)]);
22
- return{status:200,body:o,headers:{"content-type":i}}},"loadFile"),B=n(async(e,t,o)=>(await e.
23
- write(t,o),{status:204}),"storeFile");var w=!1,T=n(()=>{w||((0,f.registerTriggers)(),(0,v.createTrigger)("@ez4/local-s\
24
- torage",{"emulator:getServices":n(({service:e,options:t})=>(0,f.isBucketService)(
25
- e)?y(e,t):null,"emulator:getServices")}),w=!0)},"registerTriggers");0&&(module.exports={registerTriggers});
19
+ GET":return F(e,i);case"PUT":{if(!r)throw new Error("File content wasn't given.");
20
+ return $(e,i,r)}default:throw new Error("Unsupported storage request.")}},"handl\
21
+ eRequest"),F=n(async(e,t)=>{let[o,i]=await Promise.all([e.read(t),e.getStats(t)]);
22
+ return{status:200,body:o,headers:{"content-type":i}}},"loadFile"),$=n(async(e,t,o)=>(await e.
23
+ write(t,o),{status:204}),"storeFile");var x=n(()=>{(0,p.registerTriggers)(),(0,w.tryCreateTrigger)("@ez4/local-storage",
24
+ {"emulator:getServices":n(({service:e,options:t})=>(0,p.isBucketService)(e)?y(e,
25
+ t):null,"emulator:getServices")})},"registerTriggers");0&&(module.exports={registerTriggers});
26
26
  //# sourceMappingURL=main.cjs.map
package/dist/main.mjs CHANGED
@@ -1,23 +1,23 @@
1
- var f=Object.defineProperty;var o=(e,r)=>f(e,"name",{value:r,configurable:!0});import{isBucketService as B,registerTriggers as T}from"@ez4/storage/library";import{
2
- createTrigger as q}from"@ez4/project/library";import{getServiceName as P}from"@ez4/project/library";import{mkdir as p,readFile as d,stat as S,unlink as y,writeFile as w}from"node:fs/promises";
3
- import{dirname as v,join as c}from"node:path";import{existsSync as h}from"node:fs";
4
- import{isAnyObject as E,toKebabCase as b}from"@ez4/utils";import{getServiceName as C,
5
- Logger as l}from"@ez4/project/library";var m=o((e,r)=>{let n=C(e,r),i=c(".ez4",b(e));return new class{async exists(t){let s=c(
6
- i,t);return Promise.resolve(h(s))}async write(t,s){let a=c(i,t);await p(v(a),{recursive:!0}),
7
- await w(a,s),l.debug(`\u2B06\uFE0F File ${t} uploaded.`)}async read(t){let s=c(
8
- i,t),a=await d(s);return l.debug(`\u2B07\uFE0F File ${t} downloaded.`),a}async delete(t){
9
- let s=c(i,t);await y(s),l.debug(`\u2139\uFE0F File ${t} deleted.`)}async getWriteUrl(t){
1
+ var u=Object.defineProperty;var o=(e,r)=>u(e,"name",{value:r,configurable:!0});import{isBucketService as $,registerTriggers as x}from"@ez4/storage/library";import{
2
+ tryCreateTrigger as B}from"@ez4/project/library";import{getServiceName as b}from"@ez4/project/library";import{mkdir as p,readFile as f,stat as d,unlink as S,writeFile as y}from"node:fs/promises";
3
+ import{dirname as w,join as c}from"node:path";import{existsSync as v}from"node:fs";
4
+ import{isAnyObject as h,toKebabCase as E}from"@ez4/utils";import{getServiceName as C,
5
+ Logger as l}from"@ez4/project/library";var m=o((e,r)=>{let n=C(e,r),i=c(".ez4",E(e));return new class{async exists(t){let a=c(
6
+ i,t);return Promise.resolve(v(a))}async write(t,a){let s=c(i,t);await p(w(s),{recursive:!0}),
7
+ await y(s,a),l.debug(`\u2B06\uFE0F File ${t} uploaded.`)}async read(t){let a=c(
8
+ i,t),s=await f(a);return l.debug(`\u2B07\uFE0F File ${t} downloaded.`),s}async delete(t){
9
+ let a=c(i,t);await S(a),l.debug(`\u2139\uFE0F File ${t} deleted.`)}async getWriteUrl(t){
10
10
  return Promise.resolve(`http://${r.serviceHost}/${n}/${t}`)}async getReadUrl(t){
11
- return Promise.resolve(`http://${r.serviceHost}/${n}/${t}`)}async getStats(t){let s=c(
12
- i,t);try{return{type:"application/octet-stream",size:(await S(s)).size}}catch(a){
13
- if(!E(a)||a.code!=="ENOENT")throw a;return}}}},"createServiceClient");var g=o((e,r)=>{let n=m(e.name,r);return{type:"Storage",name:e.name,identifier:P(
14
- e.name,r),clientHandler:o(()=>m(e.name,r),"clientHandler"),requestHandler:o(i=>z(
15
- n,i),"requestHandler")}},"registerBucketEmulator"),z=o(async(e,r)=>{let{method:n,
11
+ return Promise.resolve(`http://${r.serviceHost}/${n}/${t}`)}async getStats(t){let a=c(
12
+ i,t);try{return{type:"application/octet-stream",size:(await d(a)).size}}catch(s){
13
+ if(!h(s)||s.code!=="ENOENT")throw s;return}}}},"createServiceClient");var g=o((e,r)=>{let n=m(e.name,r);return{type:"Storage",name:e.name,identifier:b(
14
+ e.name,r),exportHandler:o(()=>m(e.name,r),"exportHandler"),requestHandler:o(i=>P(
15
+ n,i),"requestHandler")}},"registerBucketEmulator"),P=o(async(e,r)=>{let{method:n,
16
16
  path:i,body:t}=r;if(!i||i==="/")throw new Error("File path wasn't given.");switch(n){case"\
17
- GET":return F(e,i);case"PUT":{if(!t)throw new Error("File content wasn't given.");
18
- return $(e,i,t)}default:throw new Error("Unsupported storage request.")}},"handl\
19
- eRequest"),F=o(async(e,r)=>{let[n,i]=await Promise.all([e.read(r),e.getStats(r)]);
20
- return{status:200,body:n,headers:{"content-type":i}}},"loadFile"),$=o(async(e,r,n)=>(await e.
21
- write(r,n),{status:204}),"storeFile");var u=!1,M=o(()=>{u||(T(),q("@ez4/local-storage",{"emulator:getServices":o(({service:e,
22
- options:r})=>B(e)?g(e,r):null,"emulator:getServices")}),u=!0)},"registerTriggers");export{M as registerTriggers};
17
+ GET":return z(e,i);case"PUT":{if(!t)throw new Error("File content wasn't given.");
18
+ return F(e,i,t)}default:throw new Error("Unsupported storage request.")}},"handl\
19
+ eRequest"),z=o(async(e,r)=>{let[n,i]=await Promise.all([e.read(r),e.getStats(r)]);
20
+ return{status:200,body:n,headers:{"content-type":i}}},"loadFile"),F=o(async(e,r,n)=>(await e.
21
+ write(r,n),{status:204}),"storeFile");var J=o(()=>{x(),B("@ez4/local-storage",{"emulator:getServices":o(({service:e,options:r})=>$(
22
+ e)?g(e,r):null,"emulator:getServices")})},"registerTriggers");export{J as registerTriggers};
23
23
  //# sourceMappingURL=main.mjs.map
@@ -5,7 +5,7 @@ export declare const registerBucketEmulator: (service: BucketService, options: S
5
5
  type: string;
6
6
  name: string;
7
7
  identifier: string;
8
- clientHandler: () => StorageClient;
8
+ exportHandler: () => StorageClient;
9
9
  requestHandler: (request: EmulatorServiceRequest) => Promise<{
10
10
  status: number;
11
11
  }>;
@@ -1,6 +1,8 @@
1
1
  import type { Client } from '@ez4/storage';
2
2
  import type { Mock } from 'node:test';
3
+ import type { ClientMockContents } from '../client/mock';
3
4
  export declare namespace BucketTester {
5
+ type MockContents = ClientMockContents;
4
6
  type ClientMock = Client & {
5
7
  exists: Mock<Client['exists']>;
6
8
  write: Mock<Client['write']>;
@@ -11,5 +13,5 @@ export declare namespace BucketTester {
11
13
  getStats: Mock<Client['getStats']>;
12
14
  };
13
15
  const getClient: (resourceName: string) => Client;
14
- const getClientMock: (resourceName?: string) => ClientMock;
16
+ const getClientMock: (resourceName: string, contents?: MockContents) => ClientMock;
15
17
  }
package/dist/test.cjs CHANGED
@@ -1,17 +1,19 @@
1
- "use strict";var l=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var s=(n,t)=>l(n,"name",{value:t,configurable:!0});var M=(n,t)=>{for(var o in t)l(n,o,{get:t[o],enumerable:!0})},h=(n,t,o,e)=>{if(t&&
2
- typeof t=="object"||typeof t=="function")for(let r of C(t))!u.call(n,r)&&r!==o&&
3
- l(n,r,{get:()=>t[r],enumerable:!(e=f(t,r))||e.enumerable});return n};var w=n=>h(l({},"__esModule",{value:!0}),n);var x={};M(x,{BucketTester:()=>p});module.exports=w(x);var d=require("@ez4/project/library"),i=require("node:test");var c=require("@ez4/project/library"),a=require("@ez4/utils");var m=Buffer.from("This is a mock content."),g=s(n=>{let t=(0,a.toKebabCase)(n),
4
- o={};return new class{async exists(e){return Promise.resolve(!!o[e])}async write(e,r){
5
- return c.Logger.debug(`\u2B06\uFE0F File ${e} uploaded.`),o[e]=!0,Promise.resolve()}async read(e){
6
- if(!o[e])throw new Error(`Key ${e} not found.`);return c.Logger.debug(`\u2B07\uFE0F File ${e}\
7
- downloaded.`),Promise.resolve(Buffer.from(m))}async delete(e){if(!o[e])throw new Error(
8
- `Key ${e} not found.`);return c.Logger.debug(`\u2139\uFE0F File ${e} deleted.`),
9
- delete o[e],Promise.resolve()}async getWriteUrl(e){return Promise.resolve(`http:\
10
- //${t}/${e}`)}async getReadUrl(e){return Promise.resolve(`http://${t}/${e}`)}async getStats(e){
11
- if(!o[e])throw new Error(`Key ${e} not found.`);return Promise.resolve({type:"ap\
12
- plication/octet-stream",size:m.byteLength})}}},"createMockClient");var p;(o=>(o.getClient=s(e=>d.Tester.getServiceClient(e),"getClient"),o.getClientMock=
13
- s(e=>{let r=g(e??"BucketMock");return i.mock.method(r,"exists"),i.mock.method(r,
14
- "write"),i.mock.method(r,"read"),i.mock.method(r,"delete"),i.mock.method(r,"getW\
15
- riteUrl"),i.mock.method(r,"getReadUrl"),i.mock.method(r,"getStats"),r},"getClien\
16
- tMock")))(p||={});0&&(module.exports={BucketTester});
1
+ "use strict";var a=Object.defineProperty;var C=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var M=Object.prototype.hasOwnProperty;var l=(n,r)=>a(n,"name",{value:r,configurable:!0});var y=(n,r)=>{for(var i in r)a(n,i,{get:r[i],enumerable:!0})},h=(n,r,i,o)=>{if(r&&
2
+ typeof r=="object"||typeof r=="function")for(let e of u(r))!M.call(n,e)&&e!==i&&
3
+ a(n,e,{get:()=>r[e],enumerable:!(o=C(r,e))||o.enumerable});return n};var k=n=>h(a({},"__esModule",{value:!0}),n);var w={};y(w,{BucketTester:()=>p});module.exports=k(w);var g=require("@ez4/project/library"),s=require("node:test");var c=require("node:stream"),m=require("@ez4/project/library"),d=require("@ez4/utils");var f=l((n,r)=>{let i=(0,d.toKebabCase)(n),o=r?.keys??{};return new class{async exists(e){
4
+ let t=o[e]??r?.default;return Promise.resolve(!!t)}async write(e,t){return m.Logger.
5
+ debug(`\u2B06\uFE0F File ${e} uploaded.`),t instanceof c.Readable?o[e]=t.read():
6
+ o[e]=Buffer.from(t),Promise.resolve()}async read(e){let t=o[e]??r?.default;if(!t)
7
+ throw new Error(`Key ${e} not found.`);return m.Logger.debug(`\u2B07\uFE0F File ${e}\
8
+ downloaded.`),Promise.resolve(Buffer.from(t))}async delete(e){if(!o[e]){if(!r?.
9
+ default)throw new Error(`Key ${e} not found.`);return Promise.resolve()}return m.Logger.
10
+ debug(`\u2139\uFE0F File ${e} deleted.`),delete o[e],Promise.resolve()}async getWriteUrl(e){
11
+ return Promise.resolve(`http://${i}/${e}`)}async getReadUrl(e){return Promise.resolve(
12
+ `http://${i}/${e}`)}async getStats(e){let t=o[e]??r?.default;if(!t)throw new Error(
13
+ `Key ${e} not found.`);return Promise.resolve({type:"application/octet-stream",size:t.
14
+ byteLength})}}},"createClientMock");var p;(i=>(i.getClient=l(o=>g.Tester.getServiceClient(o),"getClient"),i.getClientMock=
15
+ l((o,e)=>{let t=f(o,e);return s.mock.method(t,"exists"),s.mock.method(t,"write"),
16
+ s.mock.method(t,"read"),s.mock.method(t,"delete"),s.mock.method(t,"getWriteUrl"),
17
+ s.mock.method(t,"getReadUrl"),s.mock.method(t,"getStats"),t},"getClientMock")))(
18
+ p||={});0&&(module.exports={BucketTester});
17
19
  //# sourceMappingURL=test.cjs.map
package/dist/test.mjs CHANGED
@@ -1,14 +1,16 @@
1
- var a=Object.defineProperty;var i=(s,n)=>a(s,"name",{value:n,configurable:!0});import{Tester as d}from"@ez4/project/library";import{mock as o}from"node:test";import{Logger as l}from"@ez4/project/library";import{toKebabCase as g}from"@ez4/utils";var c=Buffer.from("This is a mock content."),m=i(s=>{let n=g(s),t={};return new class{async exists(e){
2
- return Promise.resolve(!!t[e])}async write(e,r){return l.debug(`\u2B06\uFE0F File ${e}\
3
- uploaded.`),t[e]=!0,Promise.resolve()}async read(e){if(!t[e])throw new Error(`K\
4
- ey ${e} not found.`);return l.debug(`\u2B07\uFE0F File ${e} downloaded.`),Promise.
5
- resolve(Buffer.from(c))}async delete(e){if(!t[e])throw new Error(`Key ${e} not f\
6
- ound.`);return l.debug(`\u2139\uFE0F File ${e} deleted.`),delete t[e],Promise.resolve()}async getWriteUrl(e){
7
- return Promise.resolve(`http://${n}/${e}`)}async getReadUrl(e){return Promise.resolve(
8
- `http://${n}/${e}`)}async getStats(e){if(!t[e])throw new Error(`Key ${e} not fou\
9
- nd.`);return Promise.resolve({type:"application/octet-stream",size:c.byteLength})}}},
10
- "createMockClient");var p;(t=>(t.getClient=i(e=>d.getServiceClient(e),"getClient"),t.getClientMock=i(
11
- e=>{let r=m(e??"BucketMock");return o.method(r,"exists"),o.method(r,"write"),o.method(
12
- r,"read"),o.method(r,"delete"),o.method(r,"getWriteUrl"),o.method(r,"getReadUrl"),
13
- o.method(r,"getStats"),r},"getClientMock")))(p||={});export{p as BucketTester};
1
+ var c=Object.defineProperty;var s=(l,o)=>c(l,"name",{value:o,configurable:!0});import{Tester as g}from"@ez4/project/library";import{mock as n}from"node:test";import{Readable as d}from"node:stream";import{Logger as a}from"@ez4/project/library";
2
+ import{toKebabCase as f}from"@ez4/utils";var m=s((l,o)=>{let i=f(l),r=o?.keys??{};return new class{async exists(e){let t=r[e]??
3
+ o?.default;return Promise.resolve(!!t)}async write(e,t){return a.debug(`\u2B06\uFE0F File\
4
+ ${e} uploaded.`),t instanceof d?r[e]=t.read():r[e]=Buffer.from(t),Promise.resolve()}async read(e){
5
+ let t=r[e]??o?.default;if(!t)throw new Error(`Key ${e} not found.`);return a.debug(
6
+ `\u2B07\uFE0F File ${e} downloaded.`),Promise.resolve(Buffer.from(t))}async delete(e){
7
+ if(!r[e]){if(!o?.default)throw new Error(`Key ${e} not found.`);return Promise.resolve()}
8
+ return a.debug(`\u2139\uFE0F File ${e} deleted.`),delete r[e],Promise.resolve()}async getWriteUrl(e){
9
+ return Promise.resolve(`http://${i}/${e}`)}async getReadUrl(e){return Promise.resolve(
10
+ `http://${i}/${e}`)}async getStats(e){let t=r[e]??o?.default;if(!t)throw new Error(
11
+ `Key ${e} not found.`);return Promise.resolve({type:"application/octet-stream",size:t.
12
+ byteLength})}}},"createClientMock");var p;(i=>(i.getClient=s(r=>g.getServiceClient(r),"getClient"),i.getClientMock=s(
13
+ (r,e)=>{let t=m(r,e);return n.method(t,"exists"),n.method(t,"write"),n.method(t,
14
+ "read"),n.method(t,"delete"),n.method(t,"getWriteUrl"),n.method(t,"getReadUrl"),
15
+ n.method(t,"getStats"),t},"getClientMock")))(p||={});export{p as BucketTester};
14
16
  //# sourceMappingURL=test.mjs.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ez4/local-storage",
3
3
  "description": "EZ4: Local storage emulator",
4
- "version": "0.32.0",
4
+ "version": "0.33.0",
5
5
  "author": "Silas B.",
6
6
  "license": "MIT",
7
7
  "type": "module",
@@ -43,9 +43,9 @@
43
43
  "live:publish": "npm run build && npm publish --access public"
44
44
  },
45
45
  "dependencies": {
46
- "@ez4/local-common": "^0.32.0",
47
- "@ez4/project": "^0.32.0",
48
- "@ez4/storage": "^0.32.0",
49
- "@ez4/utils": "^0.32.0"
46
+ "@ez4/local-common": "^0.33.0",
47
+ "@ez4/project": "^0.33.0",
48
+ "@ez4/storage": "^0.33.0",
49
+ "@ez4/utils": "^0.33.0"
50
50
  }
51
51
  }