@yadsh/dsh-prompt-firewall 0.2.1 → 0.2.2
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/compatibility.json +3 -9
- package/lib/audit.js +20 -18
- package/lib/audit.js.map +1 -1
- package/lib/client/index.js +23 -17
- package/lib/client/index.js.map +1 -1
- package/lib/client/sections.js +115 -34
- package/lib/client/sections.js.map +1 -1
- package/lib/client/styles.js +1 -1
- package/lib/client/styles.js.map +1 -1
- package/lib/client.js +2 -2
- package/lib/client.js.map +1 -1
- package/lib/config.js +26 -20
- package/lib/config.js.map +1 -1
- package/lib/firewall.js +34 -27
- package/lib/firewall.js.map +1 -1
- package/lib/index.js +42 -38
- package/lib/index.js.map +1 -1
- package/lib/metrics.js +5 -5
- package/lib/metrics.js.map +1 -1
- package/lib/presets.js +9 -9
- package/lib/presets.js.map +1 -1
- package/lib/rules.js +36 -35
- package/lib/rules.js.map +1 -1
- package/lib/typert.host.js +9 -9
- package/lib/typert.remote-client.js +2 -2
- package/lib/types/audit.d.ts +1 -1
- package/lib/types/client/index.d.ts +1 -1
- package/lib/types/client/sections.d.ts +2 -2
- package/lib/types/config.d.ts +2 -2
- package/lib/types/firewall.d.ts +4 -4
- package/lib/types/index.d.ts +12 -12
- package/lib/types/metrics.d.ts +7 -7
- package/lib/types/presets.d.ts +1 -1
- package/lib/types/rules.d.ts +1 -1
- package/lib/types/types.d.ts +7 -7
- package/package.json +5 -3
package/compatibility.json
CHANGED
|
@@ -2,15 +2,9 @@
|
|
|
2
2
|
"deepseekHarness": {
|
|
3
3
|
"channel": "next",
|
|
4
4
|
"range": ">=0.1.5-rc.2 <0.2.0",
|
|
5
|
-
"testedReleases": [
|
|
6
|
-
|
|
7
|
-
]
|
|
8
|
-
"requiredHostFeatures": [
|
|
9
|
-
"system-prompt"
|
|
10
|
-
],
|
|
11
|
-
"requiredClientFeatures": [
|
|
12
|
-
"settings.plugin.item"
|
|
13
|
-
]
|
|
5
|
+
"testedReleases": ["0.1.5-rc.2"],
|
|
6
|
+
"requiredHostFeatures": ["system-prompt"],
|
|
7
|
+
"requiredClientFeatures": ["settings.plugin.item"]
|
|
14
8
|
},
|
|
15
9
|
"node": ">=20"
|
|
16
10
|
}
|
package/lib/audit.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
const ANNOUNCEMENT_MARKERS = Object.freeze([
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"installed plugin",
|
|
3
|
+
"本机已安装",
|
|
4
|
+
"用户提到",
|
|
5
|
+
"when user mentions",
|
|
6
6
|
]);
|
|
7
7
|
export function estimateTokens(chars) {
|
|
8
8
|
return Math.ceil(chars / 4);
|
|
9
9
|
}
|
|
10
10
|
export function looksLikeAnnouncement(text) {
|
|
11
|
-
const normalized = text.toLocaleLowerCase(
|
|
12
|
-
return ANNOUNCEMENT_MARKERS.some(marker => normalized.includes(marker));
|
|
11
|
+
const normalized = text.toLocaleLowerCase("en-US");
|
|
12
|
+
return ANNOUNCEMENT_MARKERS.some((marker) => normalized.includes(marker));
|
|
13
13
|
}
|
|
14
14
|
function auditDecision(decision) {
|
|
15
|
-
if (decision.action ===
|
|
16
|
-
return
|
|
17
|
-
if (decision.action ===
|
|
18
|
-
return
|
|
19
|
-
return
|
|
15
|
+
if (decision.action === "block")
|
|
16
|
+
return "blocked";
|
|
17
|
+
if (decision.action === "protect")
|
|
18
|
+
return "protected";
|
|
19
|
+
return "allowed";
|
|
20
20
|
}
|
|
21
21
|
export function createSectionAudit(section, decision, config) {
|
|
22
22
|
const chars = section.text.length;
|
|
@@ -26,13 +26,15 @@ export function createSectionAudit(section, decision, config) {
|
|
|
26
26
|
reason: decision.reason,
|
|
27
27
|
chars,
|
|
28
28
|
estimatedTokens: estimateTokens(chars),
|
|
29
|
-
...(config.includePreview
|
|
29
|
+
...(config.includePreview
|
|
30
|
+
? { preview: section.text.slice(0, config.previewChars) }
|
|
31
|
+
: {}),
|
|
30
32
|
...(looksLikeAnnouncement(section.text) ? { suspicious: true } : {}),
|
|
31
33
|
};
|
|
32
34
|
}
|
|
33
35
|
export function createAuditResult(sections, decisions, config, bypassReason) {
|
|
34
36
|
if (sections.length !== decisions.length) {
|
|
35
|
-
throw new TypeError(
|
|
37
|
+
throw new TypeError("section and decision counts must match");
|
|
36
38
|
}
|
|
37
39
|
const audited = sections.map((section, index) => {
|
|
38
40
|
const decision = decisions[index];
|
|
@@ -41,8 +43,8 @@ export function createAuditResult(sections, decisions, config, bypassReason) {
|
|
|
41
43
|
return createSectionAudit(section, decision, config);
|
|
42
44
|
});
|
|
43
45
|
const charsBefore = audited.reduce((sum, section) => sum + section.chars, 0);
|
|
44
|
-
const charsRemoved = audited.reduce((sum, section) => sum + (section.decision ===
|
|
45
|
-
const blockedSections = audited.filter(section => section.decision ===
|
|
46
|
+
const charsRemoved = audited.reduce((sum, section) => sum + (section.decision === "blocked" ? section.chars : 0), 0);
|
|
47
|
+
const blockedSections = audited.filter((section) => section.decision === "blocked").length;
|
|
46
48
|
const charsAfter = charsBefore - charsRemoved;
|
|
47
49
|
return {
|
|
48
50
|
timestamp: Date.now(),
|
|
@@ -62,7 +64,7 @@ export function createAuditResult(sections, decisions, config, bypassReason) {
|
|
|
62
64
|
function cloneAudit(result) {
|
|
63
65
|
return {
|
|
64
66
|
...result,
|
|
65
|
-
sections: result.sections.map(section => ({ ...section })),
|
|
67
|
+
sections: result.sections.map((section) => ({ ...section })),
|
|
66
68
|
};
|
|
67
69
|
}
|
|
68
70
|
export class AuditStore {
|
|
@@ -85,7 +87,7 @@ export class AuditStore {
|
|
|
85
87
|
for (const section of result.sections) {
|
|
86
88
|
const known = this.known.get(section.name);
|
|
87
89
|
if (known === undefined) {
|
|
88
|
-
if (this.highlightNewSections && section.name.startsWith(
|
|
90
|
+
if (this.highlightNewSections && section.name.startsWith("plugin:"))
|
|
89
91
|
section.isNew = true;
|
|
90
92
|
this.known.set(section.name, {
|
|
91
93
|
name: section.name,
|
|
@@ -114,7 +116,7 @@ export class AuditStore {
|
|
|
114
116
|
}
|
|
115
117
|
knownSections() {
|
|
116
118
|
return [...this.known.values()]
|
|
117
|
-
.map(section => ({ ...section }))
|
|
119
|
+
.map((section) => ({ ...section }))
|
|
118
120
|
.sort((left, right) => left.name.localeCompare(right.name));
|
|
119
121
|
}
|
|
120
122
|
}
|
package/lib/audit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"AASA,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC,kBAAkB;IAClB,OAAO;IACP,MAAM;IACN,oBAAoB;CACrB,CAAC,
|
|
1
|
+
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../src/audit.ts"],"names":[],"mappings":"AASA,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC,kBAAkB;IAClB,OAAO;IACP,MAAM;IACN,oBAAoB;CACrB,CAAC,CAAC;AAEH,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACnD,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,aAAa,CACpB,QAA0B;IAE1B,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,SAAS,CAAC;IAClD,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,WAAW,CAAC;IACtD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,OAAwB,EACxB,QAA0B,EAC1B,MAA6B;IAE7B,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;IAClC,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,QAAQ,EAAE,aAAa,CAAC,QAAQ,CAAC;QACjC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,KAAK;QACL,eAAe,EAAE,cAAc,CAAC,KAAK,CAAC;QACtC,GAAG,CAAC,MAAM,CAAC,cAAc;YACvB,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE;YACzD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,QAAoC,EACpC,SAAsC,EACtC,MAA6B,EAC7B,YAAqB;IAErB,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC;QACzC,MAAM,IAAI,SAAS,CAAC,wCAAwC,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QAC9C,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,QAAQ,KAAK,SAAS;YACxB,MAAM,IAAI,SAAS,CAAC,gCAAgC,KAAK,EAAE,CAAC,CAAC;QAC/D,OAAO,kBAAkB,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CACf,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAC5D,CAAC,CACF,CAAC;IACF,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAC5C,CAAC,MAAM,CAAC;IACT,MAAM,UAAU,GAAG,WAAW,GAAG,YAAY,CAAC;IAE9C,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,aAAa,EAAE,OAAO,CAAC,MAAM;QAC7B,eAAe,EAAE,OAAO,CAAC,MAAM,GAAG,eAAe;QACjD,eAAe;QACf,WAAW;QACX,UAAU;QACV,YAAY;QACZ,qBAAqB,EAAE,cAAc,CAAC,WAAW,CAAC;QAClD,oBAAoB,EAAE,cAAc,CAAC,UAAU,CAAC;QAChD,sBAAsB,EAAE,cAAc,CAAC,YAAY,CAAC;QACpD,QAAQ,EAAE,OAAO;QACjB,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,MAAyB;IAC3C,OAAO;QACL,GAAG,MAAM;QACT,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;KAC7D,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,UAAU;IAKX,WAAW;IACX,oBAAoB;IALb,OAAO,GAAwB,EAAE,CAAC;IAClC,KAAK,GAAG,IAAI,GAAG,EAAwB,CAAC;IAEzD,YACU,WAAmB,EACnB,oBAA6B;2BAD7B,WAAW;oCACX,oBAAoB;IAC3B,CAAC;IAEJ,SAAS,CACP,WAAmB,EACnB,oBAAoB,GAAG,IAAI,CAAC,oBAAoB;QAEhD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,MAAM,CAAC,MAAyB;QAC9B,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,IAAI,CAAC,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;oBACjE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;gBACvB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE;oBAC3B,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,WAAW,EAAE,MAAM,CAAC,SAAS;oBAC7B,UAAU,EAAE,MAAM,CAAC,SAAS;oBAC5B,YAAY,EAAE,CAAC;iBAChB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC;gBACpC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC;YAAE,OAAO;QACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACnE,CAAC;IAED,IAAI;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IAED,aAAa;QACX,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;aAC5B,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;aAClC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;CACF"}
|
package/lib/client/index.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import promptFirewallRemote from
|
|
3
|
-
import { CardShell, bindSettingsExternalStore, registerSettingsCard, startVisibilityAwarePolling, } from
|
|
4
|
-
import { useCallback, useEffect, useMemo, useRef, useState, useSyncExternalStore } from
|
|
5
|
-
import { styles } from
|
|
6
|
-
import { AuditSection, InspectorSection, LastRequestSection, PolicySection, RulesSection, } from
|
|
7
|
-
const SETTINGS_NAMESPACE =
|
|
2
|
+
import promptFirewallRemote from "@yadsh/dsh-prompt-firewall/remote";
|
|
3
|
+
import { CardShell, bindSettingsExternalStore, registerSettingsCard, startVisibilityAwarePolling, } from "@yadsh/dsh-plugin-kit/client";
|
|
4
|
+
import { useCallback, useEffect, useMemo, useRef, useState, useSyncExternalStore, } from "react";
|
|
5
|
+
import { styles } from "./styles.js";
|
|
6
|
+
import { AuditSection, InspectorSection, LastRequestSection, PolicySection, RulesSection, } from "./sections.js";
|
|
7
|
+
const SETTINGS_NAMESPACE = "prompt-firewall";
|
|
8
8
|
const REFRESH_INTERVAL_MS = 3_000;
|
|
9
9
|
function displayError(error) {
|
|
10
10
|
if (error instanceof Error)
|
|
11
11
|
return error.message;
|
|
12
|
-
if (typeof error ===
|
|
12
|
+
if (typeof error === "string")
|
|
13
13
|
return error;
|
|
14
|
-
return
|
|
14
|
+
return "Could not load Prompt Inspector data.";
|
|
15
15
|
}
|
|
16
16
|
function PromptFirewallCard({ scope, inspect, setSectionPolicy }) {
|
|
17
17
|
const settingsStore = useMemo(() => bindSettingsExternalStore(scope), [scope]);
|
|
18
18
|
const settings = useSyncExternalStore(settingsStore.subscribe, settingsStore.getSnapshot, settingsStore.getSnapshot);
|
|
19
19
|
const config = settings.value;
|
|
20
|
-
const writable = settings.status ===
|
|
20
|
+
const writable = settings.status === "ready" && settings.writable;
|
|
21
21
|
const [inspector, setInspector] = useState(null);
|
|
22
22
|
const [error, setError] = useState(null);
|
|
23
23
|
const [refreshing, setRefreshing] = useState(false);
|
|
@@ -62,7 +62,7 @@ function PromptFirewallCard({ scope, inspect, setSectionPolicy }) {
|
|
|
62
62
|
return;
|
|
63
63
|
}
|
|
64
64
|
const current = scope.getSnapshot().value;
|
|
65
|
-
const parent = field ===
|
|
65
|
+
const parent = field === "audit" ? current?.audit : current?.metrics;
|
|
66
66
|
void scope.set(field, { ...parent, [nested]: value });
|
|
67
67
|
}, [scope]);
|
|
68
68
|
const setPolicy = useCallback(async (name, policy) => {
|
|
@@ -73,27 +73,33 @@ function PromptFirewallCard({ scope, inspect, setSectionPolicy }) {
|
|
|
73
73
|
await refresh();
|
|
74
74
|
}, [refresh, scope, setSectionPolicy]);
|
|
75
75
|
const enabled = config?.enabled ?? true;
|
|
76
|
-
if (settings.status ===
|
|
76
|
+
if (settings.status === "unavailable")
|
|
77
77
|
return null;
|
|
78
|
-
return (_jsxs(CardShell, { title: "Prompt Firewall", description: "Prompt hygiene, section policy, and request-level observability.", badge: _jsx("span", { className: "dsh-plugin-card__badge", children: enabled ?
|
|
78
|
+
return (_jsxs(CardShell, { title: "Prompt Firewall", description: "Prompt hygiene, section policy, and request-level observability.", badge: _jsx("span", { className: "dsh-plugin-card__badge", children: enabled ? "Enabled" : "Disabled" }), label: (open) => `${open ? "Hide" : "Show"} settings: Prompt Firewall`, bodyClassName: "pf-body", children: [error !== null && _jsx("div", { className: "pf-error", children: error }), _jsx(PolicySection, { config: config, writable: writable, setPath: setPath, unsetPreset: () => {
|
|
79
|
+
void scope.unset("preset");
|
|
80
|
+
} }), _jsx(LastRequestSection, { config: config, inspector: inspector, refreshing: refreshing, onRefresh: () => {
|
|
81
|
+
void refresh();
|
|
82
|
+
} }), _jsx(RulesSection, { config: config, writable: writable, setPath: setPath }), _jsx(AuditSection, { config: config, writable: writable, setPath: setPath }), _jsx(InspectorSection, { inspector: inspector, writable: writable, setPolicy: setPolicy })] }));
|
|
79
83
|
}
|
|
80
|
-
export const inject = [
|
|
84
|
+
export const inject = ["slots", "settingsScope", "remote"];
|
|
81
85
|
/** Mount the generated Remote contribution and register the native Settings card. */
|
|
82
86
|
export async function apply(ctx) {
|
|
83
87
|
const remote = ctx.remote;
|
|
84
88
|
const disposeRemote = await remote.$mount(promptFirewallRemote);
|
|
85
89
|
try {
|
|
86
|
-
await ctx.inject([
|
|
90
|
+
await ctx.inject(["remote.promptFirewall"], (remoteCtx) => {
|
|
87
91
|
const injectedRemote = remoteCtx.remote;
|
|
88
|
-
const scope = remoteCtx.settingsScope.bind({
|
|
92
|
+
const scope = remoteCtx.settingsScope.bind({
|
|
93
|
+
namespace: SETTINGS_NAMESPACE,
|
|
94
|
+
});
|
|
89
95
|
const face = {
|
|
90
96
|
scope,
|
|
91
97
|
inspect: () => injectedRemote.promptFirewall.inspect(),
|
|
92
|
-
setSectionPolicy: (section, policy, revision) =>
|
|
98
|
+
setSectionPolicy: (section, policy, revision) => injectedRemote.promptFirewall.setSectionPolicy(section, policy, revision),
|
|
93
99
|
};
|
|
94
100
|
return registerSettingsCard(remoteCtx, {
|
|
95
101
|
key: SETTINGS_NAMESPACE,
|
|
96
|
-
pluginName:
|
|
102
|
+
pluginName: "dsh-prompt-firewall",
|
|
97
103
|
styles,
|
|
98
104
|
component: PromptFirewallCard,
|
|
99
105
|
inject: () => face,
|
package/lib/client/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.tsx"],"names":[],"mappings":"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"}
|
package/lib/client/sections.js
CHANGED
|
@@ -2,74 +2,155 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
// Body sections of the Prompt Firewall settings card. Each section owns its
|
|
3
3
|
// local UI state only; the card parent keeps the settings store, polling, and
|
|
4
4
|
// the remote face.
|
|
5
|
-
import { useState } from
|
|
5
|
+
import { useState } from "react";
|
|
6
6
|
const EMPTY_LIST = Object.freeze([]);
|
|
7
7
|
function list(config, field) {
|
|
8
8
|
return config?.[field] ?? EMPTY_LIST;
|
|
9
9
|
}
|
|
10
10
|
export function Toggle(props) {
|
|
11
|
-
return (_jsxs("label", { className: "pf-toggle-row", children: [_jsxs("span", { className: "pf-toggle-copy", children: [_jsx("strong", { children: props.label }), _jsx("span", { children: props.hint })] }), _jsx("input", { className: "pf-toggle", type: "checkbox", checked: props.checked, disabled: props.disabled, onChange: event => {
|
|
11
|
+
return (_jsxs("label", { className: "pf-toggle-row", children: [_jsxs("span", { className: "pf-toggle-copy", children: [_jsx("strong", { children: props.label }), _jsx("span", { children: props.hint })] }), _jsx("input", { className: "pf-toggle", type: "checkbox", checked: props.checked, disabled: props.disabled, onChange: (event) => {
|
|
12
|
+
props.onChange(event.currentTarget.checked);
|
|
13
|
+
} })] }));
|
|
12
14
|
}
|
|
13
15
|
export function PolicySection(props) {
|
|
14
16
|
const { config, writable, setPath } = props;
|
|
15
|
-
const configuredMode = config?.mode
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
const configuredMode = config?.mode ??
|
|
18
|
+
(config?.preset === "strict"
|
|
19
|
+
? "allowlist"
|
|
20
|
+
: config?.preset === "audit-only"
|
|
21
|
+
? "audit"
|
|
22
|
+
: "blocklist");
|
|
23
|
+
return (_jsxs("section", { className: "pf-section", children: [_jsxs("div", { className: "pf-section-title", children: [_jsx("h3", { children: "Policy" }), _jsx("span", { className: "pf-muted", children: "Changes apply live" })] }), _jsxs("div", { className: "pf-grid", children: [_jsx(Toggle, { checked: config?.enabled ?? true, disabled: !writable, label: "Firewall enabled", hint: "Keep auditing available when policy is off.", onChange: (value) => {
|
|
24
|
+
setPath(["enabled"], value);
|
|
25
|
+
} }), _jsx(Toggle, { checked: config?.protectCoreSections ?? true, disabled: !writable, label: "Protect core sections", hint: "Prevents ordinary rules from removing Harness internals.", onChange: (value) => {
|
|
26
|
+
setPath(["protectCoreSections"], value);
|
|
27
|
+
} }), _jsxs("label", { className: "pf-field", children: [_jsx("span", { children: "Mode" }), _jsxs("select", { className: "pf-control", value: configuredMode, disabled: !writable, onChange: (event) => {
|
|
28
|
+
setPath(["mode"], event.currentTarget.value);
|
|
29
|
+
}, children: [_jsx("option", { value: "off", children: "Off" }), _jsx("option", { value: "audit", children: "Audit only" }), _jsx("option", { value: "blocklist", children: "Blocklist" }), _jsx("option", { value: "allowlist", children: "Allowlist" })] })] }), _jsxs("label", { className: "pf-field", children: [_jsx("span", { children: "Preset" }), _jsxs("select", { className: "pf-control", value: config?.preset ?? "", disabled: !writable, onChange: (event) => {
|
|
18
30
|
const value = event.currentTarget.value;
|
|
19
|
-
if (value ===
|
|
31
|
+
if (value === "")
|
|
20
32
|
props.unsetPreset();
|
|
21
33
|
else
|
|
22
|
-
setPath([
|
|
23
|
-
}, children: [_jsx("option", { value: "", children: "None" }), _jsx("option", { value: "clean", children: "Clean" }), _jsx("option", { value: "strict", children: "Strict" }), _jsx("option", { value: "audit-only", children: "Audit only" })] })] }), _jsxs("label", { className: "pf-field", children: [_jsx("span", { children: "Unknown plugin sections" }), _jsxs("select", { className: "pf-control", value: config?.unknownPluginPolicy ??
|
|
34
|
+
setPath(["preset"], value);
|
|
35
|
+
}, children: [_jsx("option", { value: "", children: "None" }), _jsx("option", { value: "clean", children: "Clean" }), _jsx("option", { value: "strict", children: "Strict" }), _jsx("option", { value: "audit-only", children: "Audit only" })] })] }), _jsxs("label", { className: "pf-field", children: [_jsx("span", { children: "Unknown plugin sections" }), _jsxs("select", { className: "pf-control", value: config?.unknownPluginPolicy ?? "allow", disabled: !writable, onChange: (event) => {
|
|
36
|
+
setPath(["unknownPluginPolicy"], event.currentTarget.value);
|
|
37
|
+
}, children: [_jsx("option", { value: "allow", children: "Allow" }), _jsx("option", { value: "block", children: "Block" })] })] })] })] }));
|
|
24
38
|
}
|
|
25
39
|
export function LastRequestSection(props) {
|
|
26
40
|
const last = props.inspector?.last ?? null;
|
|
27
|
-
const effectiveMode = props.inspector?.config.mode ?? props.config?.mode ??
|
|
28
|
-
return (_jsxs("section", { className: "pf-section", children: [_jsxs("div", { className: "pf-section-title", children: [_jsx("h3", { children: "Last request" }), _jsx("button", { className: "pf-btn", disabled: props.refreshing, onClick: () => {
|
|
41
|
+
const effectiveMode = props.inspector?.config.mode ?? props.config?.mode ?? "blocklist";
|
|
42
|
+
return (_jsxs("section", { className: "pf-section", children: [_jsxs("div", { className: "pf-section-title", children: [_jsx("h3", { children: "Last request" }), _jsx("button", { className: "pf-btn", disabled: props.refreshing, onClick: () => {
|
|
43
|
+
props.onRefresh();
|
|
44
|
+
}, children: props.refreshing ? "Refreshing…" : "Refresh" })] }), _jsxs("div", { className: "pf-stats", children: [_jsxs("div", { className: "pf-stat", children: [_jsx("b", { children: last?.totalSections ?? "—" }), _jsx("span", { children: "sections" })] }), _jsxs("div", { className: "pf-stat", children: [_jsx("b", { children: last?.blockedSections ?? "—" }), _jsx("span", { children: "blocked" })] }), _jsxs("div", { className: "pf-stat", children: [_jsx("b", { children: last === null ? "—" : "~" + String(last.estimatedTokensRemoved) }), _jsx("span", { children: "tokens removed (estimate)" })] }), _jsxs("div", { className: "pf-stat", children: [_jsx("b", { children: effectiveMode }), _jsx("span", { children: "effective mode" })] })] })] }));
|
|
29
45
|
}
|
|
30
46
|
export function RulesSection(props) {
|
|
31
47
|
const { config, writable, setPath } = props;
|
|
32
|
-
const [rule, setRule] = useState(
|
|
33
|
-
const [ruleKind, setRuleKind] = useState(
|
|
34
|
-
const [ruleAction, setRuleAction] = useState(
|
|
48
|
+
const [rule, setRule] = useState("");
|
|
49
|
+
const [ruleKind, setRuleKind] = useState("exact");
|
|
50
|
+
const [ruleAction, setRuleAction] = useState("block");
|
|
35
51
|
const addRule = (event) => {
|
|
36
52
|
event.preventDefault();
|
|
37
53
|
const value = rule.trim();
|
|
38
54
|
if (value.length === 0)
|
|
39
55
|
return;
|
|
40
|
-
const field = ruleAction ===
|
|
41
|
-
?
|
|
42
|
-
: ruleKind ===
|
|
43
|
-
? `${ruleAction ===
|
|
44
|
-
: ruleKind ===
|
|
45
|
-
? `${ruleAction ===
|
|
46
|
-
: `${ruleAction ===
|
|
56
|
+
const field = ruleAction === "protect"
|
|
57
|
+
? "protectedSections"
|
|
58
|
+
: ruleKind === "exact"
|
|
59
|
+
? `${ruleAction === "allow" ? "allowed" : "blocked"}Sections`
|
|
60
|
+
: ruleKind === "prefix"
|
|
61
|
+
? `${ruleAction === "allow" ? "allowed" : "blocked"}Prefixes`
|
|
62
|
+
: `${ruleAction === "allow" ? "allowed" : "blocked"}Patterns`;
|
|
47
63
|
const values = [...new Set([...list(config, field), value])];
|
|
48
64
|
setPath([field], values);
|
|
49
|
-
setRule(
|
|
65
|
+
setRule("");
|
|
50
66
|
};
|
|
51
67
|
const explicitRules = [
|
|
52
|
-
...list(config,
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
...list(config,
|
|
68
|
+
...list(config, "allowedSections").map((value) => ({
|
|
69
|
+
field: "allowedSections",
|
|
70
|
+
value,
|
|
71
|
+
kind: "exact",
|
|
72
|
+
action: "allow",
|
|
73
|
+
})),
|
|
74
|
+
...list(config, "blockedSections").map((value) => ({
|
|
75
|
+
field: "blockedSections",
|
|
76
|
+
value,
|
|
77
|
+
kind: "exact",
|
|
78
|
+
action: "block",
|
|
79
|
+
})),
|
|
80
|
+
...list(config, "protectedSections").map((value) => ({
|
|
81
|
+
field: "protectedSections",
|
|
82
|
+
value,
|
|
83
|
+
kind: "exact",
|
|
84
|
+
action: "protect",
|
|
85
|
+
})),
|
|
86
|
+
...list(config, "allowedPrefixes").map((value) => ({
|
|
87
|
+
field: "allowedPrefixes",
|
|
88
|
+
value,
|
|
89
|
+
kind: "prefix",
|
|
90
|
+
action: "allow",
|
|
91
|
+
})),
|
|
92
|
+
...list(config, "blockedPrefixes").map((value) => ({
|
|
93
|
+
field: "blockedPrefixes",
|
|
94
|
+
value,
|
|
95
|
+
kind: "prefix",
|
|
96
|
+
action: "block",
|
|
97
|
+
})),
|
|
98
|
+
...list(config, "allowedPatterns").map((value) => ({
|
|
99
|
+
field: "allowedPatterns",
|
|
100
|
+
value,
|
|
101
|
+
kind: "glob",
|
|
102
|
+
action: "allow",
|
|
103
|
+
})),
|
|
104
|
+
...list(config, "blockedPatterns").map((value) => ({
|
|
105
|
+
field: "blockedPatterns",
|
|
106
|
+
value,
|
|
107
|
+
kind: "glob",
|
|
108
|
+
action: "block",
|
|
109
|
+
})),
|
|
59
110
|
];
|
|
60
|
-
return (_jsxs("section", { className: "pf-section", children: [_jsxs("div", { className: "pf-section-title", children: [_jsx("h3", { children: "Rules" }), _jsx("span", { className: "pf-muted", children: "Explicit rules; preset rules are applied in addition" })] }), _jsxs("form", { className: "pf-editor", onSubmit: addRule, children: [_jsx("input", { className: "pf-control", value: rule, disabled: !writable, placeholder: "plugin:example or announcement:*", onChange:
|
|
111
|
+
return (_jsxs("section", { className: "pf-section", children: [_jsxs("div", { className: "pf-section-title", children: [_jsx("h3", { children: "Rules" }), _jsx("span", { className: "pf-muted", children: "Explicit rules; preset rules are applied in addition" })] }), _jsxs("form", { className: "pf-editor", onSubmit: addRule, children: [_jsx("input", { className: "pf-control", value: rule, disabled: !writable, placeholder: "plugin:example or announcement:*", onChange: (event) => {
|
|
112
|
+
setRule(event.currentTarget.value);
|
|
113
|
+
} }), _jsxs("select", { className: "pf-control", value: ruleKind, disabled: !writable || ruleAction === "protect", onChange: (event) => {
|
|
114
|
+
setRuleKind(event.currentTarget.value);
|
|
115
|
+
}, children: [_jsx("option", { value: "exact", children: "Exact" }), _jsx("option", { value: "prefix", children: "Prefix" }), _jsx("option", { value: "glob", children: "Glob" })] }), _jsxs("select", { className: "pf-control", value: ruleAction, disabled: !writable, onChange: (event) => {
|
|
61
116
|
const action = event.currentTarget.value;
|
|
62
117
|
setRuleAction(action);
|
|
63
|
-
if (action ===
|
|
64
|
-
setRuleKind(
|
|
65
|
-
}, children: [_jsx("option", { value: "block", children: "Block" }), _jsx("option", { value: "allow", children: "Allow" }), _jsx("option", { value: "protect", children: "Protect" })] }), _jsx("button", { className: "pf-btn primary", type: "submit", disabled: !writable || rule.trim().length === 0, children: "Add rule" })] }), _jsxs("div", { className: "pf-rules", children: [explicitRules.length === 0 && _jsx("div", { className: "pf-empty", children: "No explicit rules yet." }), explicitRules.map(item => _jsxs("div", { className: "pf-rule", children: [_jsx("code", { title: item.value, children: item.value }), _jsx("span", { className: "pf-pill pf-kind", children: item.kind }), _jsx("span", { className: `pf-pill ${item.action}`, children: item.action }), _jsx("button", { className: "pf-btn link danger", disabled: !writable, onClick: () => {
|
|
118
|
+
if (action === "protect")
|
|
119
|
+
setRuleKind("exact");
|
|
120
|
+
}, children: [_jsx("option", { value: "block", children: "Block" }), _jsx("option", { value: "allow", children: "Allow" }), _jsx("option", { value: "protect", children: "Protect" })] }), _jsx("button", { className: "pf-btn primary", type: "submit", disabled: !writable || rule.trim().length === 0, children: "Add rule" })] }), _jsxs("div", { className: "pf-rules", children: [explicitRules.length === 0 && (_jsx("div", { className: "pf-empty", children: "No explicit rules yet." })), explicitRules.map((item) => (_jsxs("div", { className: "pf-rule", children: [_jsx("code", { title: item.value, children: item.value }), _jsx("span", { className: "pf-pill pf-kind", children: item.kind }), _jsx("span", { className: `pf-pill ${item.action}`, children: item.action }), _jsx("button", { className: "pf-btn link danger", disabled: !writable, onClick: () => {
|
|
121
|
+
setPath([item.field], list(config, item.field).filter((value) => value !== item.value));
|
|
122
|
+
}, children: "Remove" })] }, `${item.field}:${item.value}`)))] })] }));
|
|
66
123
|
}
|
|
67
124
|
export function AuditSection(props) {
|
|
68
125
|
const { config, writable, setPath } = props;
|
|
69
|
-
return (_jsxs("details", { className: "pf-advanced", children: [_jsx("summary", { children: "Audit & metrics" }), _jsxs("div", { className: "pf-advanced-content pf-grid", children: [_jsx(Toggle, { checked: config?.audit?.enabled ?? true, disabled: !writable, label: "Audit history", hint: "Keep recent assemblies in Host memory.", onChange:
|
|
126
|
+
return (_jsxs("details", { className: "pf-advanced", children: [_jsx("summary", { children: "Audit & metrics" }), _jsxs("div", { className: "pf-advanced-content pf-grid", children: [_jsx(Toggle, { checked: config?.audit?.enabled ?? true, disabled: !writable, label: "Audit history", hint: "Keep recent assemblies in Host memory.", onChange: (value) => {
|
|
127
|
+
setPath(["audit", "enabled"], value);
|
|
128
|
+
} }), _jsx(Toggle, { checked: config?.audit?.includePreview ?? false, disabled: !writable, label: "Section preview", hint: "Expose only the configured prefix in Inspector.", onChange: (value) => {
|
|
129
|
+
setPath(["audit", "includePreview"], value);
|
|
130
|
+
} }), _jsx(Toggle, { checked: config?.audit?.logBlocked ?? true, disabled: !writable, label: "Log blocked sections", hint: "Names and sizes only unless preview is enabled.", onChange: (value) => {
|
|
131
|
+
setPath(["audit", "logBlocked"], value);
|
|
132
|
+
} }), _jsx(Toggle, { checked: config?.audit?.logAllowed ?? false, disabled: !writable, label: "Log allowed sections", hint: "Useful for initial policy discovery.", onChange: (value) => {
|
|
133
|
+
setPath(["audit", "logAllowed"], value);
|
|
134
|
+
} }), _jsx(Toggle, { checked: config?.audit?.highlightNewSections ?? true, disabled: !writable, label: "Highlight new plugin sections", hint: "Informational only; never blocks automatically.", onChange: (value) => {
|
|
135
|
+
setPath(["audit", "highlightNewSections"], value);
|
|
136
|
+
} }), _jsx(Toggle, { checked: config?.metrics?.enabled ?? true, disabled: !writable, label: "Aggregate metrics", hint: "No arbitrary section-name labels.", onChange: (value) => {
|
|
137
|
+
setPath(["metrics", "enabled"], value);
|
|
138
|
+
} }), _jsxs("label", { className: "pf-field", children: [_jsx("span", { children: "Preview characters" }), _jsx("input", { className: "pf-control", type: "number", min: "0", step: "1", value: config?.audit?.previewChars ?? 160, disabled: !writable, onChange: (event) => {
|
|
139
|
+
setPath(["audit", "previewChars"], Number(event.currentTarget.value));
|
|
140
|
+
} })] }), _jsxs("label", { className: "pf-field", children: [_jsx("span", { children: "History size" }), _jsx("input", { className: "pf-control", type: "number", min: "0", step: "1", value: config?.audit?.historySize ?? 100, disabled: !writable, onChange: (event) => {
|
|
141
|
+
setPath(["audit", "historySize"], Number(event.currentTarget.value));
|
|
142
|
+
} })] })] })] }));
|
|
70
143
|
}
|
|
71
144
|
export function InspectorSection(props) {
|
|
72
145
|
const last = props.inspector?.last ?? null;
|
|
73
|
-
return (_jsxs("section", { className: "pf-section", children: [_jsxs("div", { className: "pf-section-title", children: [_jsx("h3", { children: "Prompt Inspector" }), _jsx("span", { className: "pf-muted", children: "Updates every 3 seconds" })] }), _jsx("div", { className: "pf-table-wrap", children: last === null ? _jsx("div", { className: "pf-empty", children: "No audited prompt assembly yet." }) : _jsxs("table", { className: "pf-table", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "Section" }), _jsx("th", { children: "Size" }), _jsx("th", { children: "Decision" }), _jsx("th", { children: "Reason" }), _jsx("th", { children: "Policy" })] }) }), _jsx("tbody", { children: last.sections.map((section, index) => _jsxs("tr", { children: [_jsxs("td", { children: [_jsxs("div", { className: "pf-section-name", children: [_jsx("span", { children: section.name }), section.isNew && _jsx("span", { className: "pf-new", children: "NEW" }), section.suspicious && _jsx("span", { className: "pf-warn", children: "POSSIBLE ANNOUNCEMENT" })] }), section.preview !== undefined && _jsx("div", { className: "pf-preview", children: section.preview })] }), _jsxs("td", { children: ["~", section.estimatedTokens, " t", _jsx("br", {}), _jsxs("span", { className: "pf-muted", children: [section.chars, " chars"] })] }), _jsx("td", { children: _jsx("span", { className: `pf-pill ${section.decision ===
|
|
146
|
+
return (_jsxs("section", { className: "pf-section", children: [_jsxs("div", { className: "pf-section-title", children: [_jsx("h3", { children: "Prompt Inspector" }), _jsx("span", { className: "pf-muted", children: "Updates every 3 seconds" })] }), _jsx("div", { className: "pf-table-wrap", children: last === null ? (_jsx("div", { className: "pf-empty", children: "No audited prompt assembly yet." })) : (_jsxs("table", { className: "pf-table", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "Section" }), _jsx("th", { children: "Size" }), _jsx("th", { children: "Decision" }), _jsx("th", { children: "Reason" }), _jsx("th", { children: "Policy" })] }) }), _jsx("tbody", { children: last.sections.map((section, index) => (_jsxs("tr", { children: [_jsxs("td", { children: [_jsxs("div", { className: "pf-section-name", children: [_jsx("span", { children: section.name }), section.isNew && _jsx("span", { className: "pf-new", children: "NEW" }), section.suspicious && (_jsx("span", { className: "pf-warn", children: "POSSIBLE ANNOUNCEMENT" }))] }), section.preview !== undefined && (_jsx("div", { className: "pf-preview", children: section.preview }))] }), _jsxs("td", { children: ["~", section.estimatedTokens, " t", _jsx("br", {}), _jsxs("span", { className: "pf-muted", children: [section.chars, " chars"] })] }), _jsx("td", { children: _jsx("span", { className: `pf-pill ${section.decision === "blocked" ? "block" : section.decision === "protected" ? "protect" : "allow"}`, children: section.decision }) }), _jsx("td", { children: section.reason }), _jsx("td", { children: _jsxs("div", { className: "pf-actions", children: [_jsx("button", { className: "pf-btn link", disabled: !props.writable, onClick: () => {
|
|
147
|
+
void props.setPolicy(section.name, "allow");
|
|
148
|
+
}, children: "Allow" }), _jsx("button", { className: "pf-btn link danger", disabled: !props.writable, onClick: () => {
|
|
149
|
+
void props.setPolicy(section.name, "block");
|
|
150
|
+
}, children: "Block" }), _jsx("button", { className: "pf-btn link", disabled: !props.writable, onClick: () => {
|
|
151
|
+
void props.setPolicy(section.name, "protect");
|
|
152
|
+
}, children: "Protect" }), _jsx("button", { className: "pf-btn link", disabled: !props.writable, onClick: () => {
|
|
153
|
+
void props.setPolicy(section.name, "clear");
|
|
154
|
+
}, children: "Clear" })] }) })] }, `${section.name}:${index}`))) })] })) }), _jsx("p", { className: "pf-footer-note", children: "Token counts are estimates. Prompt Firewall is a hygiene and observability layer, not a security boundary." })] }));
|
|
74
155
|
}
|
|
75
156
|
//# sourceMappingURL=sections.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sections.js","sourceRoot":"","sources":["../../src/client/sections.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sections.js","sourceRoot":"","sources":["../../src/client/sections.tsx"],"names":[],"mappings":"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"}
|
package/lib/client/styles.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PLUGIN_CARD_SHELL_CSS } from
|
|
1
|
+
import { PLUGIN_CARD_SHELL_CSS } from "@yadsh/dsh-plugin-kit/client";
|
|
2
2
|
export const styles = `${PLUGIN_CARD_SHELL_CSS}
|
|
3
3
|
.pf-body,.pf-body *{box-sizing:border-box}
|
|
4
4
|
.pf-body{padding-top:16px;display:grid;gap:18px;color:var(--dsw-alias-label-primary)}
|
package/lib/client/styles.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/client/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/client/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,MAAM,CAAC,MAAM,MAAM,GAAW,GAAG,qBAAqB;;;;;;;;;;;;;;;CAerD,CAAC"}
|
package/lib/client.js
CHANGED
|
@@ -5124,7 +5124,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5124
5124
|
},
|
|
5125
5125
|
sourceLocation: {
|
|
5126
5126
|
"file": "packages/dsh-prompt-firewall/src/index.ts",
|
|
5127
|
-
"line":
|
|
5127
|
+
"line": 152,
|
|
5128
5128
|
"column": 3
|
|
5129
5129
|
}
|
|
5130
5130
|
}, {
|
|
@@ -5173,7 +5173,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
5173
5173
|
},
|
|
5174
5174
|
sourceLocation: {
|
|
5175
5175
|
"file": "packages/dsh-prompt-firewall/src/index.ts",
|
|
5176
|
-
"line":
|
|
5176
|
+
"line": 166,
|
|
5177
5177
|
"column": 9
|
|
5178
5178
|
}
|
|
5179
5179
|
}]
|