@solongate/proxy 0.81.71 → 0.81.72
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.js +10 -3
- package/dist/tui/components.d.ts +4 -1
- package/dist/tui/index.js +9 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -6946,11 +6946,12 @@ function PaneTitle({ label, extra, width: width2 }) {
|
|
|
6946
6946
|
/* @__PURE__ */ jsx(Text, { color: theme.dim, children: tail + "\u2500".repeat(Math.max(0, width2 - used)) })
|
|
6947
6947
|
] });
|
|
6948
6948
|
}
|
|
6949
|
-
function StreamLine({ e, loc, selected }) {
|
|
6949
|
+
function StreamLine({ e, loc, selected, date }) {
|
|
6950
6950
|
return /* @__PURE__ */ jsxs(Text, { wrap: "truncate", backgroundColor: selected ? "#1c2f63" : void 0, children: [
|
|
6951
6951
|
/* @__PURE__ */ jsx(Text, { color: selected ? theme.accentBright : theme.dim, children: selected ? "\u25B8" : " " }),
|
|
6952
6952
|
/* @__PURE__ */ jsxs(Text, { color: theme.dim, children: [
|
|
6953
6953
|
"[",
|
|
6954
|
+
date ? ymd(e.at) + " " : "",
|
|
6954
6955
|
hhmmss(e.at),
|
|
6955
6956
|
" "
|
|
6956
6957
|
] }),
|
|
@@ -7001,7 +7002,7 @@ function KeyHints({ hints }) {
|
|
|
7001
7002
|
i < hints.length - 1 ? " " : ""
|
|
7002
7003
|
] }, i)) });
|
|
7003
7004
|
}
|
|
7004
|
-
var hhmmss;
|
|
7005
|
+
var hhmmss, ymd;
|
|
7005
7006
|
var init_components = __esm({
|
|
7006
7007
|
"src/tui/components.tsx"() {
|
|
7007
7008
|
"use strict";
|
|
@@ -7010,6 +7011,12 @@ var init_components = __esm({
|
|
|
7010
7011
|
const d = new Date(ts);
|
|
7011
7012
|
return Number.isNaN(d.getTime()) ? "--:--:--" : d.toTimeString().slice(0, 8);
|
|
7012
7013
|
};
|
|
7014
|
+
ymd = (ts) => {
|
|
7015
|
+
const d = new Date(ts);
|
|
7016
|
+
if (Number.isNaN(d.getTime())) return "----------";
|
|
7017
|
+
const p = (n) => String(n).padStart(2, "0");
|
|
7018
|
+
return `${d.getFullYear()}-${p(d.getMonth() + 1)}-${p(d.getDate())}`;
|
|
7019
|
+
};
|
|
7013
7020
|
}
|
|
7014
7021
|
});
|
|
7015
7022
|
|
|
@@ -9973,7 +9980,7 @@ function AuditPanel({ active: active2, focused }) {
|
|
|
9973
9980
|
)
|
|
9974
9981
|
] }) : null,
|
|
9975
9982
|
/* @__PURE__ */ jsx6(Text6, { color: theme.dim, wrap: "truncate", children: `${total} matched \xB7 page ${Math.min(page + 1, pages)}/${pages} \xB7 ${PAGE}/page \xB7 ${pageRows.length ? selClamped + 1 : 0}/${pageRows.length}${start ? ` \xB7 \u25B2${start} newer` : ""}${start + listRows < pageRows.length ? ` \xB7 \u25BC${pageRows.length - start - listRows} older` : ""}` }),
|
|
9976
|
-
/* @__PURE__ */ jsx6(Box6, { flexDirection: "column", overflow: "hidden", children: windowed.map((e, i) => /* @__PURE__ */ jsx6(StreamLine, { e: toStream(e), loc: source === "local", selected: start + i === selClamped && focused }, e.id)) }),
|
|
9983
|
+
/* @__PURE__ */ jsx6(Box6, { flexDirection: "column", overflow: "hidden", children: windowed.map((e, i) => /* @__PURE__ */ jsx6(StreamLine, { e: toStream(e), loc: source === "local", selected: start + i === selClamped && focused, date: true }, e.id)) }),
|
|
9977
9984
|
pageRows.length === 0 ? /* @__PURE__ */ jsxs6(Text6, { color: theme.dim, children: [
|
|
9978
9985
|
"(no entries",
|
|
9979
9986
|
source === "local" ? " in the local file" : "",
|
package/dist/tui/components.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
2
|
/** HH:MM:SS for a timestamp (ms or ISO); `--:--:--` when unparseable. */
|
|
3
3
|
export declare const hhmmss: (ts: string | number) => string;
|
|
4
|
+
/** YYYY-MM-DD for a timestamp; `----------` when unparseable. */
|
|
5
|
+
export declare const ymd: (ts: string | number) => string;
|
|
4
6
|
/** Section divider title used across the Live/Audit consoles. */
|
|
5
7
|
export declare function PaneTitle({ label, extra, width }: {
|
|
6
8
|
label: string;
|
|
@@ -25,10 +27,11 @@ export interface StreamRow {
|
|
|
25
27
|
evalMs?: number | null;
|
|
26
28
|
rule?: string | null;
|
|
27
29
|
}
|
|
28
|
-
export declare function StreamLine({ e, loc, selected }: {
|
|
30
|
+
export declare function StreamLine({ e, loc, selected, date }: {
|
|
29
31
|
e: StreamRow;
|
|
30
32
|
loc: boolean;
|
|
31
33
|
selected?: boolean;
|
|
34
|
+
date?: boolean;
|
|
32
35
|
}): JSX.Element;
|
|
33
36
|
export declare function Panel({ title, subtitle, children }: {
|
|
34
37
|
title: string;
|
package/dist/tui/index.js
CHANGED
|
@@ -129,6 +129,12 @@ var hhmmss = (ts) => {
|
|
|
129
129
|
const d = new Date(ts);
|
|
130
130
|
return Number.isNaN(d.getTime()) ? "--:--:--" : d.toTimeString().slice(0, 8);
|
|
131
131
|
};
|
|
132
|
+
var ymd = (ts) => {
|
|
133
|
+
const d = new Date(ts);
|
|
134
|
+
if (Number.isNaN(d.getTime())) return "----------";
|
|
135
|
+
const p = (n) => String(n).padStart(2, "0");
|
|
136
|
+
return `${d.getFullYear()}-${p(d.getMonth() + 1)}-${p(d.getDate())}`;
|
|
137
|
+
};
|
|
132
138
|
function PaneTitle({ label, extra, width }) {
|
|
133
139
|
const tail = extra ? ` ${extra} ` : " ";
|
|
134
140
|
const used = 2 + 1 + label.length + tail.length;
|
|
@@ -141,11 +147,12 @@ function PaneTitle({ label, extra, width }) {
|
|
|
141
147
|
/* @__PURE__ */ jsx(Text, { color: theme.dim, children: tail + "\u2500".repeat(Math.max(0, width - used)) })
|
|
142
148
|
] });
|
|
143
149
|
}
|
|
144
|
-
function StreamLine({ e, loc, selected }) {
|
|
150
|
+
function StreamLine({ e, loc, selected, date }) {
|
|
145
151
|
return /* @__PURE__ */ jsxs(Text, { wrap: "truncate", backgroundColor: selected ? "#1c2f63" : void 0, children: [
|
|
146
152
|
/* @__PURE__ */ jsx(Text, { color: selected ? theme.accentBright : theme.dim, children: selected ? "\u25B8" : " " }),
|
|
147
153
|
/* @__PURE__ */ jsxs(Text, { color: theme.dim, children: [
|
|
148
154
|
"[",
|
|
155
|
+
date ? ymd(e.at) + " " : "",
|
|
149
156
|
hhmmss(e.at),
|
|
150
157
|
" "
|
|
151
158
|
] }),
|
|
@@ -3093,7 +3100,7 @@ function AuditPanel({ active: active2, focused }) {
|
|
|
3093
3100
|
)
|
|
3094
3101
|
] }) : null,
|
|
3095
3102
|
/* @__PURE__ */ jsx6(Text6, { color: theme.dim, wrap: "truncate", children: `${total} matched \xB7 page ${Math.min(page + 1, pages)}/${pages} \xB7 ${PAGE}/page \xB7 ${pageRows.length ? selClamped + 1 : 0}/${pageRows.length}${start ? ` \xB7 \u25B2${start} newer` : ""}${start + listRows < pageRows.length ? ` \xB7 \u25BC${pageRows.length - start - listRows} older` : ""}` }),
|
|
3096
|
-
/* @__PURE__ */ jsx6(Box6, { flexDirection: "column", overflow: "hidden", children: windowed.map((e, i) => /* @__PURE__ */ jsx6(StreamLine, { e: toStream(e), loc: source === "local", selected: start + i === selClamped && focused }, e.id)) }),
|
|
3103
|
+
/* @__PURE__ */ jsx6(Box6, { flexDirection: "column", overflow: "hidden", children: windowed.map((e, i) => /* @__PURE__ */ jsx6(StreamLine, { e: toStream(e), loc: source === "local", selected: start + i === selClamped && focused, date: true }, e.id)) }),
|
|
3097
3104
|
pageRows.length === 0 ? /* @__PURE__ */ jsxs6(Text6, { color: theme.dim, children: [
|
|
3098
3105
|
"(no entries",
|
|
3099
3106
|
source === "local" ? " in the local file" : "",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@solongate/proxy",
|
|
3
|
-
"version": "0.81.
|
|
3
|
+
"version": "0.81.72",
|
|
4
4
|
"description": "AI tool security proxy: protect any AI tool server with customizable policies, path/command constraints, rate limiting, and audit logging. No code changes required.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|