@uploadista/kv-store-ioredis 0.0.3 → 0.0.6
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/index.cjs +1 -0
- package/dist/index.d.cts +15 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.ts +14 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -0
- package/package.json +5 -4
- package/tsdown.config.ts +11 -0
- package/.turbo/turbo-build.log +0 -5
- package/.turbo/turbo-check.log +0 -5
- package/.turbo/turbo-lint.log +0 -0
- package/dist/io-redis-kv-store.d.ts +0 -9
- package/dist/io-redis-kv-store.d.ts.map +0 -1
- package/dist/io-redis-kv-store.js +0 -37
- package/tsconfig.tsbuildinfo +0 -1
package/dist/index.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let c=require(`@uploadista/core/errors`);c=s(c);let l=require(`@uploadista/core/types`);l=s(l);let u=require(`effect`);u=s(u);function d({redis:e}){return{get:t=>u.Effect.tryPromise({try:()=>e.get(t),catch:e=>c.UploadistaError.fromCode(`UNKNOWN_ERROR`,{cause:e})}),set:(t,n)=>u.Effect.tryPromise({try:()=>e.set(t,n),catch:e=>c.UploadistaError.fromCode(`UNKNOWN_ERROR`,{cause:e})}).pipe(u.Effect.asVoid),delete:t=>u.Effect.tryPromise({try:()=>e.del(t),catch:e=>c.UploadistaError.fromCode(`UNKNOWN_ERROR`,{cause:e})}).pipe(u.Effect.asVoid),list:t=>u.Effect.gen(function*(n){let r=new Set,i=`0`;do{let[a,o]=yield*n(u.Effect.tryPromise({try:()=>e.scan(i,`MATCH`,`${t}*`,`COUNT`,`20`),catch:e=>c.UploadistaError.fromCode(`UNKNOWN_ERROR`,{cause:e})}));i=a;for(let e of o)r.add(e.replace(t,``))}while(i!==`0`);return Array.from(r)})}}const f=e=>u.Layer.succeed(l.BaseKvStoreService,d(e));exports.ioRedisKvStore=f,exports.makeIoRedisBaseKvStore=d;
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { BaseKvStore, BaseKvStoreService } from "@uploadista/core/types";
|
|
2
|
+
import { Layer } from "effect";
|
|
3
|
+
import { Redis } from "ioredis";
|
|
4
|
+
|
|
5
|
+
//#region src/io-redis-kv-store.d.ts
|
|
6
|
+
type IoRedisKvStoreConfig = {
|
|
7
|
+
redis: Redis;
|
|
8
|
+
};
|
|
9
|
+
declare function makeIoRedisBaseKvStore({
|
|
10
|
+
redis
|
|
11
|
+
}: IoRedisKvStoreConfig): BaseKvStore;
|
|
12
|
+
declare const ioRedisKvStore: (config: IoRedisKvStoreConfig) => Layer.Layer<BaseKvStoreService, never, never>;
|
|
13
|
+
//#endregion
|
|
14
|
+
export { IoRedisKvStoreConfig, ioRedisKvStore, makeIoRedisBaseKvStore };
|
|
15
|
+
//# sourceMappingURL=index.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/io-redis-kv-store.ts"],"sourcesContent":[],"mappings":";;;;;KAKY,oBAAA;SACH;AADT,CAAA;AAKgB,iBAAA,sBAAA,CAAsB;EAAA;AAAA,CAAA,EAEnC,oBAFmC,CAAA,EAEZ,WAFY;AACpC,cAgDW,cAhDX,EAAA,CAAA,MAAA,EAgDqC,oBAhDrC,EAAA,GAgDyD,KAAA,CAAA,KAhDzD,CAgDyD,kBAhDzD,EAAA,KAAA,EAAA,KAAA,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
import { BaseKvStore, BaseKvStoreService } from "@uploadista/core/types";
|
|
2
|
+
import { Layer } from "effect";
|
|
3
|
+
import { Redis } from "ioredis";
|
|
4
|
+
|
|
5
|
+
//#region src/io-redis-kv-store.d.ts
|
|
6
|
+
type IoRedisKvStoreConfig = {
|
|
7
|
+
redis: Redis;
|
|
8
|
+
};
|
|
9
|
+
declare function makeIoRedisBaseKvStore({
|
|
10
|
+
redis
|
|
11
|
+
}: IoRedisKvStoreConfig): BaseKvStore;
|
|
12
|
+
declare const ioRedisKvStore: (config: IoRedisKvStoreConfig) => Layer.Layer<BaseKvStoreService, never, never>;
|
|
13
|
+
//#endregion
|
|
14
|
+
export { IoRedisKvStoreConfig, ioRedisKvStore, makeIoRedisBaseKvStore };
|
|
2
15
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/io-redis-kv-store.ts"],"sourcesContent":[],"mappings":";;;;;KAKY,oBAAA;SACH;AADT,CAAA;AAKgB,iBAAA,sBAAA,CAAsB;EAAA;AAAA,CAAA,EAEnC,oBAFmC,CAAA,EAEZ,WAFY;AACpC,cAgDW,cAhDX,EAAA,CAAA,MAAA,EAgDqC,oBAhDrC,EAAA,GAgDyD,KAAA,CAAA,KAhDzD,CAgDyD,kBAhDzD,EAAA,KAAA,EAAA,KAAA,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import{UploadistaError as e}from"@uploadista/core/errors";import{BaseKvStoreService as t}from"@uploadista/core/types";import{Effect as n,Layer as r}from"effect";function i({redis:t}){return{get:r=>n.tryPromise({try:()=>t.get(r),catch:t=>e.fromCode(`UNKNOWN_ERROR`,{cause:t})}),set:(r,i)=>n.tryPromise({try:()=>t.set(r,i),catch:t=>e.fromCode(`UNKNOWN_ERROR`,{cause:t})}).pipe(n.asVoid),delete:r=>n.tryPromise({try:()=>t.del(r),catch:t=>e.fromCode(`UNKNOWN_ERROR`,{cause:t})}).pipe(n.asVoid),list:r=>n.gen(function*(i){let a=new Set,o=`0`;do{let[s,c]=yield*i(n.tryPromise({try:()=>t.scan(o,`MATCH`,`${r}*`,`COUNT`,`20`),catch:t=>e.fromCode(`UNKNOWN_ERROR`,{cause:t})}));o=s;for(let e of c)a.add(e.replace(r,``))}while(o!==`0`);return Array.from(a)})}}const a=e=>r.succeed(t,i(e));export{a as ioRedisKvStore,i as makeIoRedisBaseKvStore};
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/io-redis-kv-store.ts"],"sourcesContent":["import { UploadistaError } from \"@uploadista/core/errors\";\nimport { type BaseKvStore, BaseKvStoreService } from \"@uploadista/core/types\";\nimport { Effect, Layer } from \"effect\";\nimport type { Redis as IoRedis } from \"ioredis\";\n\nexport type IoRedisKvStoreConfig = {\n redis: IoRedis;\n};\n\n// Base IORedis KV store that stores raw strings\nexport function makeIoRedisBaseKvStore({\n redis,\n}: IoRedisKvStoreConfig): BaseKvStore {\n return {\n get: (key: string) =>\n Effect.tryPromise({\n try: () => redis.get(key),\n catch: (cause) => UploadistaError.fromCode(\"UNKNOWN_ERROR\", { cause }),\n }),\n\n set: (key: string, value: string) =>\n Effect.tryPromise({\n try: () => redis.set(key, value),\n catch: (cause) => UploadistaError.fromCode(\"UNKNOWN_ERROR\", { cause }),\n }).pipe(Effect.asVoid),\n\n delete: (key: string) =>\n Effect.tryPromise({\n try: () => redis.del(key),\n catch: (cause) => UploadistaError.fromCode(\"UNKNOWN_ERROR\", { cause }),\n }).pipe(Effect.asVoid),\n\n list: (keyPrefix: string) =>\n Effect.gen(function* (_) {\n const keys = new Set<string>();\n let cursor = \"0\";\n\n do {\n const [next, batch] = yield* _(\n Effect.tryPromise({\n try: () =>\n redis.scan(cursor, \"MATCH\", `${keyPrefix}*`, \"COUNT\", \"20\"),\n catch: (cause) =>\n UploadistaError.fromCode(\"UNKNOWN_ERROR\", { cause }),\n }),\n );\n\n cursor = next;\n for (const key of batch) {\n keys.add(key.replace(keyPrefix, \"\"));\n }\n } while (cursor !== \"0\");\n\n return Array.from(keys);\n }),\n };\n}\n\n// Base store layer\nexport const ioRedisKvStore = (config: IoRedisKvStoreConfig) =>\n Layer.succeed(BaseKvStoreService, makeIoRedisBaseKvStore(config));\n"],"mappings":"iKAUA,SAAgB,EAAuB,CACrC,SACoC,CACpC,MAAO,CACL,IAAM,GACJ,EAAO,WAAW,CAChB,QAAW,EAAM,IAAI,EAAI,CACzB,MAAQ,GAAU,EAAgB,SAAS,gBAAiB,CAAE,QAAO,CAAC,CACvE,CAAC,CAEJ,KAAM,EAAa,IACjB,EAAO,WAAW,CAChB,QAAW,EAAM,IAAI,EAAK,EAAM,CAChC,MAAQ,GAAU,EAAgB,SAAS,gBAAiB,CAAE,QAAO,CAAC,CACvE,CAAC,CAAC,KAAK,EAAO,OAAO,CAExB,OAAS,GACP,EAAO,WAAW,CAChB,QAAW,EAAM,IAAI,EAAI,CACzB,MAAQ,GAAU,EAAgB,SAAS,gBAAiB,CAAE,QAAO,CAAC,CACvE,CAAC,CAAC,KAAK,EAAO,OAAO,CAExB,KAAO,GACL,EAAO,IAAI,UAAW,EAAG,CACvB,IAAM,EAAO,IAAI,IACb,EAAS,IAEb,EAAG,CACD,GAAM,CAAC,EAAM,GAAS,MAAO,EAC3B,EAAO,WAAW,CAChB,QACE,EAAM,KAAK,EAAQ,QAAS,GAAG,EAAU,GAAI,QAAS,KAAK,CAC7D,MAAQ,GACN,EAAgB,SAAS,gBAAiB,CAAE,QAAO,CAAC,CACvD,CAAC,CACH,CAED,EAAS,EACT,IAAK,IAAM,KAAO,EAChB,EAAK,IAAI,EAAI,QAAQ,EAAW,GAAG,CAAC,OAE/B,IAAW,KAEpB,OAAO,MAAM,KAAK,EAAK,EACvB,CACL,CAIH,MAAa,EAAkB,GAC7B,EAAM,QAAQ,EAAoB,EAAuB,EAAO,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uploadista/kv-store-ioredis",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.6",
|
|
5
5
|
"description": "Redis KV store for Uploadista",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"author": "Uploadista",
|
|
@@ -15,13 +15,14 @@
|
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"ioredis": "5.8.1",
|
|
17
17
|
"effect": "3.18.4",
|
|
18
|
-
"@uploadista/core": "0.0.
|
|
18
|
+
"@uploadista/core": "0.0.6"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
|
-
"
|
|
21
|
+
"tsdown": "0.15.9",
|
|
22
|
+
"@uploadista/typescript-config": "0.0.6"
|
|
22
23
|
},
|
|
23
24
|
"scripts": {
|
|
24
|
-
"build": "
|
|
25
|
+
"build": "tsdown",
|
|
25
26
|
"format": "biome format --write ./src",
|
|
26
27
|
"lint": "biome lint --write ./src",
|
|
27
28
|
"check": "biome check --write ./src"
|
package/tsdown.config.ts
ADDED
package/.turbo/turbo-build.log
DELETED
package/.turbo/turbo-check.log
DELETED
package/.turbo/turbo-lint.log
DELETED
|
File without changes
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { type BaseKvStore, BaseKvStoreService } from "@uploadista/core/types";
|
|
2
|
-
import { Layer } from "effect";
|
|
3
|
-
import type { Redis as IoRedis } from "ioredis";
|
|
4
|
-
export type IoRedisKvStoreConfig = {
|
|
5
|
-
redis: IoRedis;
|
|
6
|
-
};
|
|
7
|
-
export declare function makeIoRedisBaseKvStore({ redis, }: IoRedisKvStoreConfig): BaseKvStore;
|
|
8
|
-
export declare const ioRedisKvStore: (config: IoRedisKvStoreConfig) => Layer.Layer<BaseKvStoreService, never, never>;
|
|
9
|
-
//# sourceMappingURL=io-redis-kv-store.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"io-redis-kv-store.d.ts","sourceRoot":"","sources":["../src/io-redis-kv-store.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAU,KAAK,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,KAAK,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,SAAS,CAAC;AAEhD,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAGF,wBAAgB,sBAAsB,CAAC,EACrC,KAAK,GACN,EAAE,oBAAoB,GAAG,WAAW,CA4CpC;AAGD,eAAO,MAAM,cAAc,GAAI,QAAQ,oBAAoB,kDACQ,CAAC"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { UploadistaError } from "@uploadista/core/errors";
|
|
2
|
-
import { BaseKvStoreService } from "@uploadista/core/types";
|
|
3
|
-
import { Effect, Layer } from "effect";
|
|
4
|
-
// Base IORedis KV store that stores raw strings
|
|
5
|
-
export function makeIoRedisBaseKvStore({ redis, }) {
|
|
6
|
-
return {
|
|
7
|
-
get: (key) => Effect.tryPromise({
|
|
8
|
-
try: () => redis.get(key),
|
|
9
|
-
catch: (cause) => UploadistaError.fromCode("UNKNOWN_ERROR", { cause }),
|
|
10
|
-
}),
|
|
11
|
-
set: (key, value) => Effect.tryPromise({
|
|
12
|
-
try: () => redis.set(key, value),
|
|
13
|
-
catch: (cause) => UploadistaError.fromCode("UNKNOWN_ERROR", { cause }),
|
|
14
|
-
}).pipe(Effect.asVoid),
|
|
15
|
-
delete: (key) => Effect.tryPromise({
|
|
16
|
-
try: () => redis.del(key),
|
|
17
|
-
catch: (cause) => UploadistaError.fromCode("UNKNOWN_ERROR", { cause }),
|
|
18
|
-
}).pipe(Effect.asVoid),
|
|
19
|
-
list: (keyPrefix) => Effect.gen(function* (_) {
|
|
20
|
-
const keys = new Set();
|
|
21
|
-
let cursor = "0";
|
|
22
|
-
do {
|
|
23
|
-
const [next, batch] = yield* _(Effect.tryPromise({
|
|
24
|
-
try: () => redis.scan(cursor, "MATCH", `${keyPrefix}*`, "COUNT", "20"),
|
|
25
|
-
catch: (cause) => UploadistaError.fromCode("UNKNOWN_ERROR", { cause }),
|
|
26
|
-
}));
|
|
27
|
-
cursor = next;
|
|
28
|
-
for (const key of batch) {
|
|
29
|
-
keys.add(key.replace(keyPrefix, ""));
|
|
30
|
-
}
|
|
31
|
-
} while (cursor !== "0");
|
|
32
|
-
return Array.from(keys);
|
|
33
|
-
}),
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
// Base store layer
|
|
37
|
-
export const ioRedisKvStore = (config) => Layer.succeed(BaseKvStoreService, makeIoRedisBaseKvStore(config));
|
package/tsconfig.tsbuildinfo
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"root":["./src/index.ts","./src/io-redis-kv-store.ts"],"version":"5.9.3"}
|