@lensjs/core 2.1.1 → 2.2.1
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/core/lens.cjs +32 -27
- package/dist/core/lens.d.cts +27 -3
- package/dist/core/lens.d.ts +27 -3
- package/dist/core/lens.js +32 -27
- package/dist/{index-DiLfwsvc.d.cts → index-CMvlRWcQ.d.cts} +5 -4
- package/dist/{index-DiLfwsvc.d.ts → index-CMvlRWcQ.d.ts} +5 -4
- package/dist/index.cjs +79 -42
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +79 -42
- package/dist/stores/better_sqlite.cjs +2 -0
- package/dist/stores/better_sqlite.js +2 -0
- package/dist/stores/index.cjs +2 -0
- package/dist/stores/index.js +2 -0
- package/dist/ui/assets/{CacheActionBadge-CK7JdKoE.js → CacheActionBadge-WGVr5yhe.js} +1 -1
- package/dist/ui/assets/CacheEntriesTable-txREHfFk.js +1 -0
- package/dist/ui/assets/CacheEntryContainer-BoeiVJN6.js +2 -0
- package/dist/ui/assets/{CacheEntryDetails-D9Xy7d9u.js → CacheEntryDetails-DovbpPae.js} +1 -1
- package/dist/ui/assets/CacheEntryDetailsContainer-DcmH8iqv.js +2 -0
- package/dist/ui/assets/ExceptionContainer-C0H0kKkb.js +2 -0
- package/dist/ui/assets/{ExceptionDetails-BbIFoM7M.js → ExceptionDetails-DX14YGmx.js} +1 -1
- package/dist/ui/assets/ExceptionDetailsContainer-CHAXdzwk.js +2 -0
- package/dist/ui/assets/{ExceptionTable-DY3mmGT4.js → ExceptionTable-Chiah5kT.js} +1 -1
- package/dist/ui/assets/{LoadMore-CJh7FLbl.js → LoadMore-CosGy1fp.js} +1 -1
- package/dist/ui/assets/QueriesContainer-CporgPyk.js +2 -0
- package/dist/ui/assets/{QueryDetailsContainer-7CA9a5de.js → QueryDetailsContainer-Dimuidq4.js} +1 -1
- package/dist/ui/assets/{QueryTable-pn7Ayura.js → QueryTable-BLpmWt7g.js} +1 -1
- package/dist/ui/assets/RequestDetails-DeJofxSW.js +1 -0
- package/dist/ui/assets/{RequestDetailsContainer-BECT0XJh.js → RequestDetailsContainer-BtDTKq1O.js} +2 -2
- package/dist/ui/assets/{RequestsContainer-DLkjpX67.js → RequestsContainer-CxIavrPj.js} +2 -2
- package/dist/ui/assets/{RequetsTable-Cgas07Fe.js → RequetsTable-CUevs9X4.js} +1 -1
- package/dist/ui/assets/{StatusCode-C5lihzKZ.js → StatusCode-D_bCVpUf.js} +1 -1
- package/dist/ui/assets/{TabbedDataViewer-BUMQ0QVm.js → TabbedDataViewer-CbZANxvH.js} +1 -1
- package/dist/ui/assets/{Table-BesHc4Lc.js → Table-z_QSS7J8.js} +1 -1
- package/dist/ui/assets/{columns-C1CwS8yE.js → columns-Bxz-DZCj.js} +1 -1
- package/dist/ui/assets/{columns-CULxhcpY.js → columns-D0UC1pqC.js} +1 -1
- package/dist/ui/assets/columns-DJaOm2Yg.js +1 -0
- package/dist/ui/assets/{index-PEcJ5nx0.js → index-CQJv-KV7.js} +2 -2
- package/dist/ui/assets/{useCacheEntries-jbGe2CRY.js → useCacheEntries-DWzLAzvE.js} +1 -1
- package/dist/ui/assets/{useExceptions-uYUhAW-J.js → useExceptions-BF0fHNek.js} +1 -1
- package/dist/ui/assets/{useLensApi-BsDmB7vx.js → useLensApi-BEMg_OuP.js} +1 -1
- package/dist/ui/assets/{useLoadMore-sLsrekV5.js → useLoadMore-ClIkZ0Gw.js} +1 -1
- package/dist/ui/assets/{useQueries-DJE91mYq.js → useQueries-C0vKfgzw.js} +1 -1
- package/dist/ui/index.html +1 -1
- package/dist/utils/event_emitter.cjs +20 -12
- package/dist/utils/event_emitter.d.cts +12 -7
- package/dist/utils/event_emitter.d.ts +12 -7
- package/dist/utils/event_emitter.js +20 -2
- package/dist/utils/index.cjs +27 -12
- package/dist/utils/index.d.cts +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.js +26 -12
- package/dist/watchers/cache_watcher.cjs +1 -1
- package/dist/watchers/cache_watcher.js +1 -1
- package/dist/watchers/index.cjs +1 -1
- package/dist/watchers/index.js +1 -1
- package/package.json +1 -2
- package/dist/ui/assets/CacheEntriesTable-C5HcgCZI.js +0 -1
- package/dist/ui/assets/CacheEntryContainer-C0no2_6_.js +0 -2
- package/dist/ui/assets/CacheEntryDetailsContainer-BcwliP55.js +0 -2
- package/dist/ui/assets/ExceptionContainer-CQalcd8x.js +0 -2
- package/dist/ui/assets/ExceptionDetailsContainer-fajmF7id.js +0 -2
- package/dist/ui/assets/QueriesContainer-DWTsKzEk.js +0 -2
- package/dist/ui/assets/RequestDetails-CYSM4og8.js +0 -1
- package/dist/ui/assets/columns-gYFQU5qH.js +0 -1
package/dist/utils/index.js
CHANGED
|
@@ -10,34 +10,44 @@ var generateRandomUuid = () => {
|
|
|
10
10
|
function interpolateQuery(query, bindings) {
|
|
11
11
|
const formatValue = (value) => {
|
|
12
12
|
if (value === null || value === void 0) return "NULL";
|
|
13
|
-
if (typeof value === "string")
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
if (
|
|
17
|
-
return
|
|
18
|
-
|
|
13
|
+
if (typeof value === "string") {
|
|
14
|
+
return `'${value.replace(/'/g, "''")}'`;
|
|
15
|
+
}
|
|
16
|
+
if (value instanceof DateTime) {
|
|
17
|
+
return `'${value.toISO()}'`;
|
|
18
|
+
}
|
|
19
|
+
if (value instanceof Date) {
|
|
20
|
+
return `'${value.toISOString()}'`;
|
|
21
|
+
}
|
|
22
|
+
if (Array.isArray(value)) {
|
|
23
|
+
return value.map((v) => formatValue(v)).join(", ");
|
|
24
|
+
}
|
|
25
|
+
if (typeof value === "object") {
|
|
19
26
|
return `'${JSON.stringify(value).replace(/'/g, "''")}'`;
|
|
27
|
+
}
|
|
20
28
|
return value.toString();
|
|
21
29
|
};
|
|
22
30
|
if (Array.isArray(bindings)) {
|
|
23
31
|
let i = 0;
|
|
24
32
|
return query.replace(/\?/g, () => {
|
|
25
|
-
if (i >= bindings.length)
|
|
33
|
+
if (i >= bindings.length) {
|
|
26
34
|
throw new Error("Not enough bindings for placeholders");
|
|
35
|
+
}
|
|
27
36
|
return formatValue(bindings[i++]);
|
|
28
37
|
});
|
|
29
38
|
}
|
|
30
39
|
return query.replace(/(\$|\:)(\w+)/g, (match, prefix, keyOrIndex) => {
|
|
31
40
|
let value;
|
|
32
41
|
if (prefix === "$" && /^\d+$/.test(keyOrIndex)) {
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
if (index < 0 || index >= keys.length)
|
|
42
|
+
const placeholder = `$${keyOrIndex}`;
|
|
43
|
+
if (!(placeholder in bindings)) {
|
|
36
44
|
throw new Error(`Missing binding for ${match}`);
|
|
37
|
-
|
|
45
|
+
}
|
|
46
|
+
value = bindings[placeholder];
|
|
38
47
|
} else {
|
|
39
|
-
if (!(keyOrIndex in bindings))
|
|
48
|
+
if (!(keyOrIndex in bindings)) {
|
|
40
49
|
throw new Error(`Missing binding for ${match}`);
|
|
50
|
+
}
|
|
41
51
|
value = bindings[keyOrIndex];
|
|
42
52
|
}
|
|
43
53
|
return formatValue(value);
|
|
@@ -108,12 +118,16 @@ function prettyHrTime(hrtime, verbose = false) {
|
|
|
108
118
|
}
|
|
109
119
|
return `${(ms / 1e3).toFixed(1)} s`;
|
|
110
120
|
}
|
|
121
|
+
function normalizePath(path2) {
|
|
122
|
+
return path2.startsWith("/") ? path2 : `/${path2}`;
|
|
123
|
+
}
|
|
111
124
|
export {
|
|
112
125
|
formatSqlQuery,
|
|
113
126
|
generateRandomUuid,
|
|
114
127
|
getMeta,
|
|
115
128
|
interpolateQuery,
|
|
116
129
|
isStaticFile,
|
|
130
|
+
normalizePath,
|
|
117
131
|
prepareIgnoredPaths,
|
|
118
132
|
prettyHrTime,
|
|
119
133
|
shouldIgnoreCurrentPath,
|
|
@@ -94,7 +94,7 @@ var CacheWatcher = class extends Watcher {
|
|
|
94
94
|
let value = "";
|
|
95
95
|
if ("data" in data && typeof data.data === "object" && data.data !== null) {
|
|
96
96
|
if ("key" in data.data) {
|
|
97
|
-
key = String(data.data.key);
|
|
97
|
+
key = String(data.data.key ?? "__");
|
|
98
98
|
}
|
|
99
99
|
if ("value" in data.data) {
|
|
100
100
|
value = data.data.value;
|
|
@@ -68,7 +68,7 @@ var CacheWatcher = class extends Watcher {
|
|
|
68
68
|
let value = "";
|
|
69
69
|
if ("data" in data && typeof data.data === "object" && data.data !== null) {
|
|
70
70
|
if ("key" in data.data) {
|
|
71
|
-
key = String(data.data.key);
|
|
71
|
+
key = String(data.data.key ?? "__");
|
|
72
72
|
}
|
|
73
73
|
if ("value" in data.data) {
|
|
74
74
|
value = data.data.value;
|
package/dist/watchers/index.cjs
CHANGED
|
@@ -143,7 +143,7 @@ var CacheWatcher = class extends Watcher {
|
|
|
143
143
|
let value = "";
|
|
144
144
|
if ("data" in data && typeof data.data === "object" && data.data !== null) {
|
|
145
145
|
if ("key" in data.data) {
|
|
146
|
-
key = String(data.data.key);
|
|
146
|
+
key = String(data.data.key ?? "__");
|
|
147
147
|
}
|
|
148
148
|
if ("value" in data.data) {
|
|
149
149
|
value = data.data.value;
|
package/dist/watchers/index.js
CHANGED
|
@@ -104,7 +104,7 @@ var CacheWatcher = class extends Watcher {
|
|
|
104
104
|
let value = "";
|
|
105
105
|
if ("data" in data && typeof data.data === "object" && data.data !== null) {
|
|
106
106
|
if ("key" in data.data) {
|
|
107
|
-
key = String(data.data.key);
|
|
107
|
+
key = String(data.data.key ?? "__");
|
|
108
108
|
}
|
|
109
109
|
if ("value" in data.data) {
|
|
110
110
|
value = data.data.value;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lensjs/core",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.2.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -25,7 +25,6 @@
|
|
|
25
25
|
"@lensjs/typescript-config": "1.0.12"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"emittery": "^1.2.0",
|
|
29
28
|
"libsql": "^0.5.22",
|
|
30
29
|
"luxon": "^3.7.2",
|
|
31
30
|
"rimraf": "^6.0.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as a}from"./index-PEcJ5nx0.js";import{L as s}from"./LoadMore-CJh7FLbl.js";import{T as t}from"./Table-BesHc4Lc.js";import{g as r}from"./columns-gYFQU5qH.js";import"./index-BRRKsoNv.js";import"./CacheActionBadge-CK7JdKoE.js";const p=({hasMoreObject:o})=>a.jsxs("div",{className:"w-full",children:[a.jsx("div",{className:"overflow-x-auto",children:a.jsx(t,{columns:r(),data:o.data})}),a.jsx(s,{paginatedPage:o})]});export{p as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CacheEntriesTable-C5HcgCZI.js","./index-PEcJ5nx0.js","./index-B2QCOgug.css","./LoadMore-CJh7FLbl.js","./Table-BesHc4Lc.js","./columns-gYFQU5qH.js","./index-BRRKsoNv.js","./CacheActionBadge-CK7JdKoE.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r as t,j as a,_ as s}from"./index-PEcJ5nx0.js";import{u as i}from"./useLoadMore-sLsrekV5.js";import{u as m}from"./useCacheEntries-jbGe2CRY.js";import"./useLensApi-BsDmB7vx.js";const n=t.lazy(()=>s(()=>import("./CacheEntriesTable-C5HcgCZI.js"),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url)),_=()=>{const{loadMoreItems:e,getItems:r}=m(),o=i({paginatedPage:e});return t.useEffect(()=>{r()},[]),a.jsx(n,{hasMoreObject:o})};export{_ as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CacheEntryDetails-D9Xy7d9u.js","./index-PEcJ5nx0.js","./index-B2QCOgug.css","./TabbedDataViewer-BUMQ0QVm.js","./CacheActionBadge-CK7JdKoE.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{m as o,r as s,j as r,_ as i}from"./index-PEcJ5nx0.js";import{u as m}from"./useCacheEntries-jbGe2CRY.js";import"./useLensApi-BsDmB7vx.js";const n=s.lazy(()=>i(()=>import("./CacheEntryDetails-D9Xy7d9u.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url)),E=()=>{const{item:e,getItem:a}=m(),{id:t}=o();return s.useEffect(()=>{t&&a(t)},[t]),r.jsx("div",{children:e&&r.jsx(n,{data:e})})};export{E as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./ExceptionTable-DY3mmGT4.js","./index-PEcJ5nx0.js","./index-B2QCOgug.css","./LoadMore-CJh7FLbl.js","./Table-BesHc4Lc.js","./columns-C1CwS8yE.js","./index-BRRKsoNv.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r as t,j as s,_ as a}from"./index-PEcJ5nx0.js";import{u as i}from"./useLoadMore-sLsrekV5.js";import{u as m}from"./useExceptions-uYUhAW-J.js";import"./useLensApi-BsDmB7vx.js";const n=t.lazy(()=>a(()=>import("./ExceptionTable-DY3mmGT4.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)),_=()=>{const{loadMoreItems:e,getItems:o}=m(),r=i({paginatedPage:e});return t.useEffect(()=>{o()},[]),s.jsx(n,{hasMoreObject:r})};export{_ as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./ExceptionDetails-BbIFoM7M.js","./index-PEcJ5nx0.js","./index-B2QCOgug.css","./TabbedDataViewer-BUMQ0QVm.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{m as a,r as s,j as r,_ as i}from"./index-PEcJ5nx0.js";import{u as m}from"./useExceptions-uYUhAW-J.js";import"./useLensApi-BsDmB7vx.js";const n=s.lazy(()=>i(()=>import("./ExceptionDetails-BbIFoM7M.js"),__vite__mapDeps([0,1,2,3]),import.meta.url)),x=()=>{const{item:e,getItem:o}=m(),{id:t}=a();return s.useEffect(()=>{t&&o(t)},[t]),r.jsx("div",{children:e&&r.jsx(n,{data:e})})};export{x as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./QueryTable-pn7Ayura.js","./index-PEcJ5nx0.js","./index-B2QCOgug.css","./LoadMore-CJh7FLbl.js","./Table-BesHc4Lc.js","./columns-CULxhcpY.js","./index-BRRKsoNv.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r as e,j as s,_ as a}from"./index-PEcJ5nx0.js";import{u as i}from"./useQueries-DJE91mYq.js";import{u}from"./useLoadMore-sLsrekV5.js";import"./useLensApi-BsDmB7vx.js";const m=e.lazy(()=>a(()=>import("./QueryTable-pn7Ayura.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)),f=()=>{const{loadMoreRequests:r,fetchQueries:t}=i(),o=u({paginatedPage:r});return e.useEffect(()=>{t()},[]),s.jsx(m,{hasMoreObject:o})};export{f as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as n,j as e}from"./index-PEcJ5nx0.js";import{D as r,T as o}from"./TabbedDataViewer-BUMQ0QVm.js";import{T as d}from"./Table-BesHc4Lc.js";import{g as i}from"./columns-CULxhcpY.js";import{g as m}from"./columns-C1CwS8yE.js";import{g as u}from"./columns-gYFQU5qH.js";import{f as c}from"./index-BRRKsoNv.js";import{R as x,S as b}from"./StatusCode-C5lihzKZ.js";import"./CacheActionBadge-CK7JdKoE.js";const h=({request:a})=>{const t=n.useMemo(()=>c(a?.request.data?.createdAt),[a?.request.data.createdAt]);if(!a||!a.request)return e.jsx(r,{title:"Request Details",items:[],emptyMessage:"No request data available"});const s=()=>a?.request.data?.headers?.host||"Unknown",l=n.useMemo(()=>[{label:"Time",value:t,className:"text-gray-900 dark:text-gray-100"},{label:"Hostname",value:s(),className:"text-gray-900 dark:text-gray-100 font-mono"},{label:"Method",value:a.request.data.method?e.jsx(x,{method:a.request.data.method}):"Unknown"},{label:"Request ID",value:a.request.data.id||"N/A",className:"text-gray-700 dark:text-gray-300 font-mono text-sm"},{label:"Path",value:a.request.data.path||"N/A",className:"text-gray-900 dark:text-gray-100 font-mono"},{label:"Status",value:a.request.data.status?e.jsx(b,{status:a.request.data.status}):"N/A"},{label:"Duration",value:a.request.data.duration||"N/A",className:"text-gray-900 dark:text-gray-100 font-medium"},{label:"IP Address",value:a.request.data.ip||"N/A",className:"text-gray-900 dark:text-gray-100 font-mono"}],[a.request.data,t]);return e.jsx(r,{title:"Request Details",items:l})},A=({request:a})=>{const t=[{id:"payload",label:"Payload",data:a.request.data.body},{id:"headers",label:"Headers",data:a.request.data.headers}],s=[{id:"response-body",label:"Body",data:a.request.data.response.json},{id:"response-headers",label:"Headers",data:a.request.data.response.headers}],l=[{id:"request-queries",label:`Queries (${a.queries.length})`,shouldShow:a.queries.length>0,content:e.jsx(d,{columns:i(),data:a?.queries})},{id:"request-cache",label:`Cache (${a.cacheEntries.length})`,shouldShow:a.cacheEntries.length>0,content:e.jsx(d,{columns:u(),data:a.cacheEntries})},{id:"request-exceptions",label:`Exceptions (${a.exceptions.length})`,shouldShow:a.exceptions.length>0,content:e.jsx(d,{columns:m(),data:a.exceptions})}];return e.jsxs("div",{className:"flex flex-col gap-3",children:[e.jsx(h,{request:a}),a.request.data.user&&e.jsx(r,{title:"User",items:[{label:"ID",value:a.request.data.user?.id},{label:"Email",value:a.request.data.user?.email},{label:"Name",value:a.request.data.user?.name}]}),e.jsx(o,{tabs:t,title:"Request Data",defaultActiveTab:"payload"}),e.jsx(o,{tabs:s,title:"Response Data",defaultActiveTab:"response-body"}),e.jsx(o,{tabs:l})]})};export{A as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{q as o,k as r,j as t,L as i}from"./index-PEcJ5nx0.js";import{h as m}from"./index-BRRKsoNv.js";import{C as c}from"./CacheActionBadge-CK7JdKoE.js";import{C as d}from"./Table-BesHc4Lc.js";const x=()=>{const a=o(r());return[{name:"Key",value:e=>e.data.data.key||"__"},{name:"Operation",render:e=>t.jsx(c,{action:e.data.action})},{name:"Happened",render:e=>{const{label:n,exact:s}=m(e.data.createdAt);return t.jsx("span",{title:s,children:n})},position:"end",class:"min-w-32"},{name:"Actions",render:e=>t.jsx(i,{to:`${a.CACHE_ENTRIES}/${e.id}`,className:"transition-colors duration-100 hover:text-white",children:t.jsx(d,{size:20})}),position:"end"}]};export{x as g};
|