@mcp-z/mcp-sheets 1.0.5 → 1.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.
|
@@ -142,19 +142,46 @@ function _ts_generator(thisArg, body) {
|
|
|
142
142
|
};
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
|
+
function parseDefaultTtl(uri) {
|
|
146
|
+
try {
|
|
147
|
+
var url = new URL(uri);
|
|
148
|
+
var ttlParam = url.searchParams.get('ttl');
|
|
149
|
+
var ttlSecondsParam = url.searchParams.get('ttlSeconds');
|
|
150
|
+
var ttlMs = ttlSecondsParam ? Number(ttlSecondsParam) * 1000 : ttlParam ? Number(ttlParam) : undefined;
|
|
151
|
+
url.searchParams.delete('ttl');
|
|
152
|
+
url.searchParams.delete('ttlSeconds');
|
|
153
|
+
return Number.isFinite(ttlMs) && ttlMs > 0 ? {
|
|
154
|
+
uri: url.toString(),
|
|
155
|
+
ttl: ttlMs
|
|
156
|
+
} : {
|
|
157
|
+
uri: url.toString()
|
|
158
|
+
};
|
|
159
|
+
} catch (unused) {
|
|
160
|
+
return {
|
|
161
|
+
uri: uri
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
}
|
|
145
165
|
function createStore(uri) {
|
|
146
166
|
return _async_to_generator(function() {
|
|
147
|
-
var store;
|
|
167
|
+
var _parseDefaultTtl, parsedUri, defaultTtl, store, originalSet;
|
|
148
168
|
return _ts_generator(this, function(_state) {
|
|
149
169
|
switch(_state.label){
|
|
150
170
|
case 0:
|
|
171
|
+
_parseDefaultTtl = parseDefaultTtl(uri), parsedUri = _parseDefaultTtl.uri, defaultTtl = _parseDefaultTtl.ttl;
|
|
151
172
|
return [
|
|
152
173
|
4,
|
|
153
|
-
(0, _keyvregistry.default)(
|
|
174
|
+
(0, _keyvregistry.default)(parsedUri)
|
|
154
175
|
];
|
|
155
176
|
case 1:
|
|
156
177
|
store = _state.sent();
|
|
157
178
|
if (!store) throw new Error("Failed to create store for URI: ".concat(uri));
|
|
179
|
+
if (defaultTtl !== undefined) {
|
|
180
|
+
originalSet = store.set.bind(store);
|
|
181
|
+
store.set = function(key, value, ttl) {
|
|
182
|
+
return originalSet(key, value, ttl !== null && ttl !== void 0 ? ttl : defaultTtl);
|
|
183
|
+
};
|
|
184
|
+
}
|
|
158
185
|
return [
|
|
159
186
|
2,
|
|
160
187
|
store
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/Projects/mcp-z/mcp-sheets/src/lib/create-store.ts"],"sourcesContent":["import type Keyv from 'keyv';\nimport keyvRegistry from 'keyv-registry';\n\nexport default async function createStore<T>(uri: string): Promise<Keyv<T>> {\n const store = await keyvRegistry<T>(
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/Projects/mcp-z/mcp-sheets/src/lib/create-store.ts"],"sourcesContent":["import type Keyv from 'keyv';\nimport keyvRegistry from 'keyv-registry';\n\nfunction parseDefaultTtl(uri: string): { uri: string; ttl?: number } {\n try {\n const url = new URL(uri);\n const ttlParam = url.searchParams.get('ttl');\n const ttlSecondsParam = url.searchParams.get('ttlSeconds');\n const ttlMs = ttlSecondsParam ? Number(ttlSecondsParam) * 1000 : ttlParam ? Number(ttlParam) : undefined;\n url.searchParams.delete('ttl');\n url.searchParams.delete('ttlSeconds');\n return Number.isFinite(ttlMs) && (ttlMs as number) > 0 ? { uri: url.toString(), ttl: ttlMs } : { uri: url.toString() };\n } catch {\n return { uri };\n }\n}\n\nexport default async function createStore<T>(uri: string): Promise<Keyv<T>> {\n const { uri: parsedUri, ttl: defaultTtl } = parseDefaultTtl(uri);\n const store = await keyvRegistry<T>(parsedUri);\n if (!store) throw new Error(`Failed to create store for URI: ${uri}`);\n if (defaultTtl !== undefined) {\n const originalSet = store.set.bind(store);\n store.set = ((key, value, ttl) => originalSet(key, value, ttl ?? defaultTtl)) as typeof store.set;\n }\n return store;\n}\n"],"names":["createStore","parseDefaultTtl","uri","url","URL","ttlParam","searchParams","get","ttlSecondsParam","ttlMs","Number","undefined","delete","isFinite","toString","ttl","parsedUri","defaultTtl","store","originalSet","keyvRegistry","Error","set","bind","key","value"],"mappings":";;;;+BAiBA;;;eAA8BA;;;mEAhBL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEzB,SAASC,gBAAgBC,GAAW;IAClC,IAAI;QACF,IAAMC,MAAM,IAAIC,IAAIF;QACpB,IAAMG,WAAWF,IAAIG,YAAY,CAACC,GAAG,CAAC;QACtC,IAAMC,kBAAkBL,IAAIG,YAAY,CAACC,GAAG,CAAC;QAC7C,IAAME,QAAQD,kBAAkBE,OAAOF,mBAAmB,OAAOH,WAAWK,OAAOL,YAAYM;QAC/FR,IAAIG,YAAY,CAACM,MAAM,CAAC;QACxBT,IAAIG,YAAY,CAACM,MAAM,CAAC;QACxB,OAAOF,OAAOG,QAAQ,CAACJ,UAAU,AAACA,QAAmB,IAAI;YAAEP,KAAKC,IAAIW,QAAQ;YAAIC,KAAKN;QAAM,IAAI;YAAEP,KAAKC,IAAIW,QAAQ;QAAG;IACvH,EAAE,eAAM;QACN,OAAO;YAAEZ,KAAAA;QAAI;IACf;AACF;AAEe,SAAeF,YAAeE,GAAW;;YACVD,kBAA/Be,WAAgBC,YACvBC,OAGEC;;;;oBAJoClB,mBAAAA,gBAAgBC,MAA/Cc,YAA+Bf,iBAApCC,KAAqBe,aAAehB,iBAApBc;oBACV;;wBAAMK,IAAAA,qBAAY,EAAIJ;;;oBAA9BE,QAAQ;oBACd,IAAI,CAACA,OAAO,MAAM,IAAIG,MAAM,AAAC,mCAAsC,OAAJnB;oBAC/D,IAAIe,eAAeN,WAAW;wBACtBQ,cAAcD,MAAMI,GAAG,CAACC,IAAI,CAACL;wBACnCA,MAAMI,GAAG,GAAI,SAACE,KAAKC,OAAOV;mCAAQI,YAAYK,KAAKC,OAAOV,gBAAAA,iBAAAA,MAAOE;;oBACnE;oBACA;;wBAAOC;;;;IACT"}
|
|
@@ -1,6 +1,31 @@
|
|
|
1
1
|
import keyvRegistry from 'keyv-registry';
|
|
2
|
+
function parseDefaultTtl(uri) {
|
|
3
|
+
try {
|
|
4
|
+
const url = new URL(uri);
|
|
5
|
+
const ttlParam = url.searchParams.get('ttl');
|
|
6
|
+
const ttlSecondsParam = url.searchParams.get('ttlSeconds');
|
|
7
|
+
const ttlMs = ttlSecondsParam ? Number(ttlSecondsParam) * 1000 : ttlParam ? Number(ttlParam) : undefined;
|
|
8
|
+
url.searchParams.delete('ttl');
|
|
9
|
+
url.searchParams.delete('ttlSeconds');
|
|
10
|
+
return Number.isFinite(ttlMs) && ttlMs > 0 ? {
|
|
11
|
+
uri: url.toString(),
|
|
12
|
+
ttl: ttlMs
|
|
13
|
+
} : {
|
|
14
|
+
uri: url.toString()
|
|
15
|
+
};
|
|
16
|
+
} catch {
|
|
17
|
+
return {
|
|
18
|
+
uri
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
}
|
|
2
22
|
export default async function createStore(uri) {
|
|
3
|
-
const
|
|
23
|
+
const { uri: parsedUri, ttl: defaultTtl } = parseDefaultTtl(uri);
|
|
24
|
+
const store = await keyvRegistry(parsedUri);
|
|
4
25
|
if (!store) throw new Error(`Failed to create store for URI: ${uri}`);
|
|
26
|
+
if (defaultTtl !== undefined) {
|
|
27
|
+
const originalSet = store.set.bind(store);
|
|
28
|
+
store.set = (key, value, ttl)=>originalSet(key, value, ttl !== null && ttl !== void 0 ? ttl : defaultTtl);
|
|
29
|
+
}
|
|
5
30
|
return store;
|
|
6
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/Projects/mcp-z/mcp-sheets/src/lib/create-store.ts"],"sourcesContent":["import type Keyv from 'keyv';\nimport keyvRegistry from 'keyv-registry';\n\nexport default async function createStore<T>(uri: string): Promise<Keyv<T>> {\n const store = await keyvRegistry<T>(
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/Projects/mcp-z/mcp-sheets/src/lib/create-store.ts"],"sourcesContent":["import type Keyv from 'keyv';\nimport keyvRegistry from 'keyv-registry';\n\nfunction parseDefaultTtl(uri: string): { uri: string; ttl?: number } {\n try {\n const url = new URL(uri);\n const ttlParam = url.searchParams.get('ttl');\n const ttlSecondsParam = url.searchParams.get('ttlSeconds');\n const ttlMs = ttlSecondsParam ? Number(ttlSecondsParam) * 1000 : ttlParam ? Number(ttlParam) : undefined;\n url.searchParams.delete('ttl');\n url.searchParams.delete('ttlSeconds');\n return Number.isFinite(ttlMs) && (ttlMs as number) > 0 ? { uri: url.toString(), ttl: ttlMs } : { uri: url.toString() };\n } catch {\n return { uri };\n }\n}\n\nexport default async function createStore<T>(uri: string): Promise<Keyv<T>> {\n const { uri: parsedUri, ttl: defaultTtl } = parseDefaultTtl(uri);\n const store = await keyvRegistry<T>(parsedUri);\n if (!store) throw new Error(`Failed to create store for URI: ${uri}`);\n if (defaultTtl !== undefined) {\n const originalSet = store.set.bind(store);\n store.set = ((key, value, ttl) => originalSet(key, value, ttl ?? defaultTtl)) as typeof store.set;\n }\n return store;\n}\n"],"names":["keyvRegistry","parseDefaultTtl","uri","url","URL","ttlParam","searchParams","get","ttlSecondsParam","ttlMs","Number","undefined","delete","isFinite","toString","ttl","createStore","parsedUri","defaultTtl","store","Error","originalSet","set","bind","key","value"],"mappings":"AACA,OAAOA,kBAAkB,gBAAgB;AAEzC,SAASC,gBAAgBC,GAAW;IAClC,IAAI;QACF,MAAMC,MAAM,IAAIC,IAAIF;QACpB,MAAMG,WAAWF,IAAIG,YAAY,CAACC,GAAG,CAAC;QACtC,MAAMC,kBAAkBL,IAAIG,YAAY,CAACC,GAAG,CAAC;QAC7C,MAAME,QAAQD,kBAAkBE,OAAOF,mBAAmB,OAAOH,WAAWK,OAAOL,YAAYM;QAC/FR,IAAIG,YAAY,CAACM,MAAM,CAAC;QACxBT,IAAIG,YAAY,CAACM,MAAM,CAAC;QACxB,OAAOF,OAAOG,QAAQ,CAACJ,UAAU,AAACA,QAAmB,IAAI;YAAEP,KAAKC,IAAIW,QAAQ;YAAIC,KAAKN;QAAM,IAAI;YAAEP,KAAKC,IAAIW,QAAQ;QAAG;IACvH,EAAE,OAAM;QACN,OAAO;YAAEZ;QAAI;IACf;AACF;AAEA,eAAe,eAAec,YAAed,GAAW;IACtD,MAAM,EAAEA,KAAKe,SAAS,EAAEF,KAAKG,UAAU,EAAE,GAAGjB,gBAAgBC;IAC5D,MAAMiB,QAAQ,MAAMnB,aAAgBiB;IACpC,IAAI,CAACE,OAAO,MAAM,IAAIC,MAAM,CAAC,gCAAgC,EAAElB,KAAK;IACpE,IAAIgB,eAAeP,WAAW;QAC5B,MAAMU,cAAcF,MAAMG,GAAG,CAACC,IAAI,CAACJ;QACnCA,MAAMG,GAAG,GAAI,CAACE,KAAKC,OAAOV,MAAQM,YAAYG,KAAKC,OAAOV,gBAAAA,iBAAAA,MAAOG;IACnE;IACA,OAAOC;AACT"}
|
package/package.json
CHANGED