@codexhost/cli-win32-arm64 0.14.0 → 0.16.0
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/README.md +1 -1
- package/app/codexhost-distribution.json +1 -1
- package/app/console-server.mjs +55 -7
- package/app/console-web.js +281 -79
- package/app/desktop-controller.mjs +155 -22
- package/app/host-runtime.mjs +548 -148
- package/app/plugins/antigravity/plugin.mjs +342 -53
- package/app/plugins/claude-code/plugin.mjs +393 -162
- package/app/plugins/codebuddy/plugin.mjs +245 -49
- package/app/plugins/codex-usage/plugin.mjs +75 -28
- package/app/plugins/copilot/plugin.mjs +100 -53
- package/app/plugins/cursor-cli/plugin.mjs +207 -46
- package/app/plugins/deepseek-harness/plugin.mjs +103 -36
- package/app/plugins/grok/plugin.mjs +354 -84
- package/app/plugins/hermes/plugin.mjs +50 -3
- package/app/plugins/kimi-code/plugin.mjs +62 -15
- package/app/plugins/kiro-cli/plugin.mjs +62 -15
- package/app/plugins/omp/plugin.mjs +82 -35
- package/app/plugins/opencode/plugin.mjs +104 -57
- package/app/plugins/pi/plugin.mjs +134 -50
- package/app/plugins/qoder/plugin.mjs +72 -25
- package/app/plugins/qoder-cn/plugin.mjs +72 -25
- package/app/plugins/workbuddy/plugin.mjs +245 -49
- package/app/plugins/zcode/plugin.mjs +101 -29
- package/app/renderer-extension.js +2353 -344
- package/bin/codexhost.exe +0 -0
- package/libexec/codexhost-node-repl.exe +0 -0
- package/libexec/codexhost-shim.exe +0 -0
- package/libexec/codexhost-updater.exe +0 -0
- package/package.json +1 -1
package/app/console-web.js
CHANGED
|
@@ -3105,10 +3105,10 @@
|
|
|
3105
3105
|
const shape = def.shape;
|
|
3106
3106
|
const propValues = {};
|
|
3107
3107
|
for (const key in shape) {
|
|
3108
|
-
const
|
|
3109
|
-
if (
|
|
3108
|
+
const field2 = shape[key]._zod;
|
|
3109
|
+
if (field2.values) {
|
|
3110
3110
|
propValues[key] ?? (propValues[key] = /* @__PURE__ */ new Set());
|
|
3111
|
-
for (const v of
|
|
3111
|
+
for (const v of field2.values)
|
|
3112
3112
|
propValues[key].add(v);
|
|
3113
3113
|
}
|
|
3114
3114
|
}
|
|
@@ -14789,6 +14789,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
14789
14789
|
cachedInputTokens: count,
|
|
14790
14790
|
cacheWriteInputTokens: count,
|
|
14791
14791
|
cacheKnownInputTokens: count,
|
|
14792
|
+
cacheHitCachedInputTokens: count,
|
|
14793
|
+
cacheHitInputTokens: count,
|
|
14792
14794
|
outputTokens: count,
|
|
14793
14795
|
reasoningOutputTokens: count,
|
|
14794
14796
|
/** USD at the public price, summed over the priced requests only. */
|
|
@@ -14896,6 +14898,51 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
14896
14898
|
var threadPrewarmDiscardParamsSchema = external_exports.object({ threadId: hostThreadIdSchema });
|
|
14897
14899
|
var threadPrewarmDiscardResultSchema = external_exports.object({ discarded: external_exports.boolean() });
|
|
14898
14900
|
|
|
14901
|
+
// ../shared-contracts/dist/thread-questions.js
|
|
14902
|
+
var field = external_exports.discriminatedUnion("type", [
|
|
14903
|
+
external_exports.object({
|
|
14904
|
+
id: external_exports.string().min(1),
|
|
14905
|
+
type: external_exports.literal("choice"),
|
|
14906
|
+
prompt: external_exports.string(),
|
|
14907
|
+
options: external_exports.array(external_exports.object({
|
|
14908
|
+
value: external_exports.string().min(1),
|
|
14909
|
+
label: external_exports.string(),
|
|
14910
|
+
description: external_exports.string().optional()
|
|
14911
|
+
})).min(1),
|
|
14912
|
+
multiple: external_exports.boolean(),
|
|
14913
|
+
allowOther: external_exports.boolean(),
|
|
14914
|
+
optional: external_exports.boolean()
|
|
14915
|
+
}),
|
|
14916
|
+
external_exports.object({
|
|
14917
|
+
id: external_exports.string().min(1),
|
|
14918
|
+
type: external_exports.literal("text"),
|
|
14919
|
+
prompt: external_exports.string(),
|
|
14920
|
+
multiline: external_exports.boolean(),
|
|
14921
|
+
secret: external_exports.literal(false),
|
|
14922
|
+
optional: external_exports.boolean(),
|
|
14923
|
+
placeholder: external_exports.string().optional(),
|
|
14924
|
+
prefill: external_exports.string().optional()
|
|
14925
|
+
})
|
|
14926
|
+
]);
|
|
14927
|
+
var threadQuestionSchema = external_exports.object({
|
|
14928
|
+
interactionId: external_exports.string().min(1),
|
|
14929
|
+
turnId: external_exports.string().min(1),
|
|
14930
|
+
title: external_exports.string().optional(),
|
|
14931
|
+
questions: external_exports.array(field).min(1)
|
|
14932
|
+
}).refine(({ questions }) => questions.some((q) => q.type === "choice" && q.multiple), {
|
|
14933
|
+
message: "Shared cards require at least one multi-select question"
|
|
14934
|
+
});
|
|
14935
|
+
var threadQuestionsListParamsSchema = external_exports.strictObject({ threadId: external_exports.string().min(1) });
|
|
14936
|
+
var threadQuestionsResultSchema = external_exports.object({ questions: external_exports.array(threadQuestionSchema) });
|
|
14937
|
+
var threadQuestionRespondParamsSchema = external_exports.strictObject({
|
|
14938
|
+
threadId: external_exports.string().min(1),
|
|
14939
|
+
turnId: external_exports.string().min(1),
|
|
14940
|
+
interactionId: external_exports.string().min(1),
|
|
14941
|
+
answers: external_exports.record(external_exports.string(), external_exports.array(external_exports.string())),
|
|
14942
|
+
cancelled: external_exports.boolean().default(false)
|
|
14943
|
+
});
|
|
14944
|
+
var threadQuestionRespondResultSchema = external_exports.object({ accepted: external_exports.literal(true) });
|
|
14945
|
+
|
|
14899
14946
|
// ../shared-contracts/dist/console.js
|
|
14900
14947
|
var consoleAnnouncementSchema = external_exports.strictObject({
|
|
14901
14948
|
title: external_exports.string().trim().min(1).max(200),
|
|
@@ -16140,6 +16187,16 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
16140
16187
|
["path", { d: "M12 13.5V8" }]
|
|
16141
16188
|
];
|
|
16142
16189
|
|
|
16190
|
+
// ../../node_modules/lucide/dist/esm/icons/calendar-clock.mjs
|
|
16191
|
+
var CalendarClock = [
|
|
16192
|
+
["path", { d: "M16 14v2.2l1.6 1" }],
|
|
16193
|
+
["path", { d: "M16 2v3" }],
|
|
16194
|
+
["path", { d: "M21 7.338V5a2 2 0 00-2-2H5a2 2 0 00-2 2v14a2 2 0 002 2h2.338" }],
|
|
16195
|
+
["path", { d: "M3 9h5.859" }],
|
|
16196
|
+
["path", { d: "M8 2v3" }],
|
|
16197
|
+
["circle", { cx: "16", cy: "16", r: "6" }]
|
|
16198
|
+
];
|
|
16199
|
+
|
|
16143
16200
|
// ../../node_modules/lucide/dist/esm/icons/circle-check.mjs
|
|
16144
16201
|
var CircleCheck = [
|
|
16145
16202
|
["circle", { cx: "12", cy: "12", r: "10" }],
|
|
@@ -16460,6 +16517,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
16460
16517
|
routes: Route,
|
|
16461
16518
|
gateway: Network,
|
|
16462
16519
|
updates: CircleArrowUp,
|
|
16520
|
+
schedules: CalendarClock,
|
|
16463
16521
|
about: Info,
|
|
16464
16522
|
info: Info,
|
|
16465
16523
|
"external-link": ExternalLink,
|
|
@@ -20795,12 +20853,13 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
20795
20853
|
notAvailable: "Not available",
|
|
20796
20854
|
runtimeCapabilityNotInstalled: "This runtime capability is not installed yet.",
|
|
20797
20855
|
sessionImportHarness: "Harness",
|
|
20856
|
+
sessionImportSelectHost: "Select the Host to import sessions from",
|
|
20798
20857
|
sessionImportDescription: "Sessions keep their original project path. If a folder is not in the Codex sidebar, add it as a project first. Original history remains managed by the Harness.",
|
|
20799
|
-
sessionImportAvailabilityNote: "Available Harnesses come from the
|
|
20858
|
+
sessionImportAvailabilityNote: "Available Harnesses come from the selected Host. If activity is unknown, close the session in its native client before importing to avoid concurrent writes.",
|
|
20800
20859
|
sessionImportRefresh: "Refresh",
|
|
20801
|
-
sessionImportRefreshing: "Loading
|
|
20802
|
-
sessionImportUnavailable: "Session import is unavailable for this
|
|
20803
|
-
sessionImportEmpty: "No
|
|
20860
|
+
sessionImportRefreshing: "Loading sessions from the selected Host...",
|
|
20861
|
+
sessionImportUnavailable: "Session import is unavailable for this Harness or the selected Host protocol. Update the Host/plugin or choose another Harness.",
|
|
20862
|
+
sessionImportEmpty: "No sessions are available to import on the selected Host.",
|
|
20804
20863
|
sessionImportSearch: "Search",
|
|
20805
20864
|
sessionImportSearchPlaceholder: "Search titles, session IDs or project paths",
|
|
20806
20865
|
sessionImportNoMatches: "No sessions match your search.",
|
|
@@ -20808,7 +20867,7 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
20808
20867
|
sessionImportPrevious: "Previous",
|
|
20809
20868
|
sessionImportNext: "Next",
|
|
20810
20869
|
sessionImportPageSummary: "Page {page} of {pages} \xB7 {total} sessions",
|
|
20811
|
-
sessionImportLoadFailed: "
|
|
20870
|
+
sessionImportLoadFailed: "Sessions could not be loaded from the selected Host. Check directory access or duplicate session IDs, then retry.",
|
|
20812
20871
|
sessionImportFailed: "The session could not be imported.",
|
|
20813
20872
|
sessionImportUntitled: "Untitled session",
|
|
20814
20873
|
sessionImportUpdatedAt: "Updated",
|
|
@@ -20964,7 +21023,6 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
20964
21023
|
updateLatestVersion: "Latest version",
|
|
20965
21024
|
updateUpToDate: "You are up to date.",
|
|
20966
21025
|
updateAvailable: "A new version is available.",
|
|
20967
|
-
updateWindowsManualRequired: "Automatic updates are unavailable on Windows. Update manually below.",
|
|
20968
21026
|
updateAndRestart: "Update",
|
|
20969
21027
|
updateChecking: "Checking for updates...",
|
|
20970
21028
|
updateDownloading: "Downloading update...",
|
|
@@ -20979,8 +21037,7 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
20979
21037
|
updateFailed: "Update failed.",
|
|
20980
21038
|
updateRetry: "Retry",
|
|
20981
21039
|
updateManualNpmDescription: "To update manually, quit codexhost and run this command:",
|
|
20982
|
-
|
|
20983
|
-
updateWindowsInstallerDescription: "Automatic updates are unavailable on Windows. Download and run the installer for this system.",
|
|
21040
|
+
updateWindowsInstallerDescription: "To update manually, download and run the installer for this system.",
|
|
20984
21041
|
updateManualTitle: "Manual update",
|
|
20985
21042
|
updateManualFallbackDescription: "The automatic update did not complete. Run this command in a terminal instead, then quit Codex and relaunch it with codexhost.",
|
|
20986
21043
|
updateCopyCommand: "Copy",
|
|
@@ -21075,12 +21132,13 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21075
21132
|
notAvailable: "\u6682\u4E0D\u53EF\u7528",
|
|
21076
21133
|
runtimeCapabilityNotInstalled: "\u8FD0\u884C\u65F6\u5C1A\u672A\u5B89\u88C5\u8BE5\u9879\u80FD\u529B\uFF0C\u56E0\u6B64\u6682\u4E0D\u53EF\u7528\u3002",
|
|
21077
21134
|
sessionImportHarness: "Harness",
|
|
21135
|
+
sessionImportSelectHost: "\u8BF7\u9009\u62E9\u8981\u5BFC\u5165\u4F1A\u8BDD\u7684 Host",
|
|
21078
21136
|
sessionImportDescription: "\u4F1A\u8BDD\u5C06\u4FDD\u7559\u539F\u59CB\u9879\u76EE\u8DEF\u5F84\uFF1B\u82E5\u8BE5\u6587\u4EF6\u5939\u5C1A\u672A\u51FA\u73B0\u5728 Codex \u4FA7\u680F\uFF0C\u8BF7\u5148\u5C06\u5176\u6DFB\u52A0\u4E3A\u9879\u76EE\u3002\u539F\u59CB\u5386\u53F2\u4ECD\u7531 Harness \u7BA1\u7406\u3002",
|
|
21079
|
-
sessionImportAvailabilityNote: "\u53EF\u9009 Harness \u6765\u81EA\
|
|
21137
|
+
sessionImportAvailabilityNote: "\u53EF\u9009 Harness \u6765\u81EA\u5F53\u524D Host\u3002\u8FD0\u884C\u72B6\u6001\u672A\u77E5\u65F6\uFF0C\u8BF7\u5148\u5728\u539F\u751F\u5BA2\u6237\u7AEF\u5173\u95ED\u8BE5\u4F1A\u8BDD\u518D\u5BFC\u5165\uFF0C\u907F\u514D\u540C\u65F6\u5199\u5165\u3002",
|
|
21080
21138
|
sessionImportRefresh: "\u5237\u65B0",
|
|
21081
|
-
sessionImportRefreshing: "\u6B63\u5728\u8BFB\u53D6\
|
|
21082
|
-
sessionImportUnavailable: "\
|
|
21083
|
-
sessionImportEmpty: "\u6CA1\u6709\u53EF\u5BFC\u5165\u7684\
|
|
21139
|
+
sessionImportRefreshing: "\u6B63\u5728\u8BFB\u53D6\u5F53\u524D Host \u4E0A\u7684\u4F1A\u8BDD\u2026\u2026",
|
|
21140
|
+
sessionImportUnavailable: "\u8BE5 Harness \u6216\u5F53\u524D Host \u534F\u8BAE\u6682\u4E0D\u652F\u6301\u4F1A\u8BDD\u5BFC\u5165\uFF0C\u8BF7\u66F4\u65B0 Host/\u63D2\u4EF6\u6216\u9009\u62E9\u5176\u4ED6 Harness\u3002",
|
|
21141
|
+
sessionImportEmpty: "\u5F53\u524D Host \u4E0A\u6CA1\u6709\u53EF\u5BFC\u5165\u7684\u4F1A\u8BDD\u3002",
|
|
21084
21142
|
sessionImportSearch: "\u641C\u7D22",
|
|
21085
21143
|
sessionImportSearchPlaceholder: "\u641C\u7D22\u6807\u9898\u3001\u4F1A\u8BDD ID \u6216\u9879\u76EE\u8DEF\u5F84",
|
|
21086
21144
|
sessionImportNoMatches: "\u6CA1\u6709\u5339\u914D\u7684\u4F1A\u8BDD\u3002",
|
|
@@ -21088,7 +21146,7 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21088
21146
|
sessionImportPrevious: "\u4E0A\u4E00\u9875",
|
|
21089
21147
|
sessionImportNext: "\u4E0B\u4E00\u9875",
|
|
21090
21148
|
sessionImportPageSummary: "\u7B2C {page} / {pages} \u9875 \xB7 \u5171 {total} \u6761",
|
|
21091
|
-
sessionImportLoadFailed: "\u65E0\u6CD5\u8BFB\u53D6\
|
|
21149
|
+
sessionImportLoadFailed: "\u65E0\u6CD5\u8BFB\u53D6\u5F53\u524D Host \u4E0A\u7684\u4F1A\u8BDD\uFF0C\u8BF7\u68C0\u67E5\u76EE\u5F55\u8BBF\u95EE\u6743\u9650\u6216\u91CD\u590D\u7684\u4F1A\u8BDD ID \u540E\u91CD\u8BD5\u3002",
|
|
21092
21150
|
sessionImportFailed: "\u65E0\u6CD5\u5BFC\u5165\u8BE5\u4F1A\u8BDD\u3002",
|
|
21093
21151
|
sessionImportUntitled: "\u672A\u547D\u540D\u4F1A\u8BDD",
|
|
21094
21152
|
sessionImportUpdatedAt: "\u66F4\u65B0\u65F6\u95F4",
|
|
@@ -21244,7 +21302,6 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21244
21302
|
updateLatestVersion: "\u6700\u65B0\u7248\u672C",
|
|
21245
21303
|
updateUpToDate: "\u5F53\u524D\u5DF2\u662F\u6700\u65B0\u7248\u672C\u3002",
|
|
21246
21304
|
updateAvailable: "\u6709\u65B0\u7248\u672C\u53EF\u7528\u3002",
|
|
21247
|
-
updateWindowsManualRequired: "Windows \u6682\u4E0D\u652F\u6301\u81EA\u52A8\u66F4\u65B0\uFF0C\u8BF7\u5728\u4E0B\u65B9\u624B\u52A8\u66F4\u65B0\u3002",
|
|
21248
21305
|
updateAndRestart: "\u66F4\u65B0",
|
|
21249
21306
|
updateChecking: "\u6B63\u5728\u68C0\u67E5\u66F4\u65B0...",
|
|
21250
21307
|
updateDownloading: "\u6B63\u5728\u4E0B\u8F7D\u66F4\u65B0...",
|
|
@@ -21259,8 +21316,7 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21259
21316
|
updateFailed: "\u66F4\u65B0\u5931\u8D25\u3002",
|
|
21260
21317
|
updateRetry: "\u91CD\u8BD5",
|
|
21261
21318
|
updateManualNpmDescription: "\u5982\u9700\u624B\u52A8\u66F4\u65B0\uFF0C\u8BF7\u5728\u7EC8\u7AEF\u8FD0\u884C\u4EE5\u4E0B\u547D\u4EE4\u3002\u66F4\u65B0\u5B8C\u6210\u540E\uFF0C\u8BF7\u9000\u51FA Codex \u5E76\u901A\u8FC7 codexhost \u91CD\u65B0\u542F\u52A8\u3002",
|
|
21262
|
-
|
|
21263
|
-
updateWindowsInstallerDescription: "Windows \u6682\u4E0D\u652F\u6301\u81EA\u52A8\u66F4\u65B0\u3002\u8BF7\u4E0B\u8F7D\u5E76\u8FD0\u884C\u9002\u7528\u4E8E\u5F53\u524D\u7CFB\u7EDF\u7684\u5B89\u88C5\u5305\u3002",
|
|
21319
|
+
updateWindowsInstallerDescription: "\u5982\u9700\u624B\u52A8\u66F4\u65B0\uFF0C\u8BF7\u4E0B\u8F7D\u5E76\u8FD0\u884C\u9002\u7528\u4E8E\u5F53\u524D\u7CFB\u7EDF\u7684\u5B89\u88C5\u5305\u3002",
|
|
21264
21320
|
updateManualTitle: "\u624B\u52A8\u66F4\u65B0",
|
|
21265
21321
|
updateManualFallbackDescription: "\u81EA\u52A8\u66F4\u65B0\u672A\u80FD\u5B8C\u6210\uFF0C\u8BF7\u6539\u7528\u4E0B\u5217\u547D\u4EE4\u5728\u7EC8\u7AEF\u624B\u52A8\u66F4\u65B0\u3002\u5B8C\u6210\u540E\u8BF7\u9000\u51FA Codex \u5E76\u901A\u8FC7 codexhost \u91CD\u65B0\u542F\u52A8\u3002",
|
|
21266
21322
|
updateCopyCommand: "\u590D\u5236",
|
|
@@ -21437,6 +21493,8 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21437
21493
|
cachedInputTokens: 0,
|
|
21438
21494
|
cacheWriteInputTokens: 0,
|
|
21439
21495
|
cacheKnownInputTokens: 0,
|
|
21496
|
+
cacheHitCachedInputTokens: 0,
|
|
21497
|
+
cacheHitInputTokens: 0,
|
|
21440
21498
|
outputTokens: 0,
|
|
21441
21499
|
reasoningOutputTokens: 0,
|
|
21442
21500
|
costUsd: 0,
|
|
@@ -21450,6 +21508,8 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21450
21508
|
target.cachedInputTokens += source.cachedInputTokens;
|
|
21451
21509
|
target.cacheWriteInputTokens += source.cacheWriteInputTokens;
|
|
21452
21510
|
target.cacheKnownInputTokens += source.cacheKnownInputTokens;
|
|
21511
|
+
target.cacheHitCachedInputTokens += source.cacheHitCachedInputTokens;
|
|
21512
|
+
target.cacheHitInputTokens += source.cacheHitInputTokens;
|
|
21453
21513
|
target.outputTokens += source.outputTokens;
|
|
21454
21514
|
target.reasoningOutputTokens += source.reasoningOutputTokens;
|
|
21455
21515
|
target.costUsd += source.costUsd;
|
|
@@ -21504,7 +21564,9 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21504
21564
|
};
|
|
21505
21565
|
}
|
|
21506
21566
|
function cacheHitRate(totals2) {
|
|
21507
|
-
return totals2.
|
|
21567
|
+
return totals2.cacheHitInputTokens > 0 ? formatRendererCacheHitRate(
|
|
21568
|
+
totals2.cacheHitCachedInputTokens / totals2.cacheHitInputTokens * 100
|
|
21569
|
+
) : "\u2014";
|
|
21508
21570
|
}
|
|
21509
21571
|
function formatMeasure(measure, value, locale = "en") {
|
|
21510
21572
|
return measure === "cost" ? money(value) : count2(value, locale);
|
|
@@ -21668,7 +21730,7 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21668
21730
|
var DECIMAL = /^(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/iu;
|
|
21669
21731
|
function modelPriceDraft(key, price) {
|
|
21670
21732
|
const prices = Object.fromEntries(
|
|
21671
|
-
MODEL_PRICE_FIELDS.map((
|
|
21733
|
+
MODEL_PRICE_FIELDS.map((field2) => [field2, price?.[field2]?.toString() ?? ""])
|
|
21672
21734
|
);
|
|
21673
21735
|
return { model: key, prices };
|
|
21674
21736
|
}
|
|
@@ -21679,18 +21741,18 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21679
21741
|
return { error: { kind: "duplicate", key } };
|
|
21680
21742
|
}
|
|
21681
21743
|
const price = {};
|
|
21682
|
-
for (const
|
|
21683
|
-
const text = draft.prices[
|
|
21744
|
+
for (const field2 of MODEL_PRICE_FIELDS) {
|
|
21745
|
+
const text = draft.prices[field2].trim();
|
|
21684
21746
|
if (text === "") {
|
|
21685
|
-
if (
|
|
21686
|
-
return { error: { kind: "priceRequired", field } };
|
|
21747
|
+
if (field2 === "input" || field2 === "output")
|
|
21748
|
+
return { error: { kind: "priceRequired", field: field2 } };
|
|
21687
21749
|
continue;
|
|
21688
21750
|
}
|
|
21689
21751
|
const value = Number(text);
|
|
21690
21752
|
if (!DECIMAL.test(text) || !Number.isFinite(value)) {
|
|
21691
|
-
return { error: { kind: "priceInvalid", field } };
|
|
21753
|
+
return { error: { kind: "priceInvalid", field: field2 } };
|
|
21692
21754
|
}
|
|
21693
|
-
price[
|
|
21755
|
+
price[field2] = value;
|
|
21694
21756
|
}
|
|
21695
21757
|
return {
|
|
21696
21758
|
change: {
|
|
@@ -21710,7 +21772,7 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21710
21772
|
}
|
|
21711
21773
|
function formatPrice(messages, price) {
|
|
21712
21774
|
return MODEL_PRICE_FIELDS.map(
|
|
21713
|
-
(
|
|
21775
|
+
(field2) => `${messages.fields[field2]} ${price[field2] ?? messages.unset}`
|
|
21714
21776
|
).join(" \xB7 ");
|
|
21715
21777
|
}
|
|
21716
21778
|
function draftErrorText(messages, error51) {
|
|
@@ -21778,18 +21840,18 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
21778
21840
|
function renderEditor(modelId, view, isCurrent) {
|
|
21779
21841
|
const existing = view.entries.find((entry) => entry.key === modelId);
|
|
21780
21842
|
const draft = modelPriceDraft(modelId, existing?.price ?? null);
|
|
21781
|
-
const
|
|
21843
|
+
const field2 = (label, value, placeholder = "") => h(document2, "input", {
|
|
21782
21844
|
type: "text",
|
|
21783
21845
|
className: "console-input",
|
|
21784
21846
|
value,
|
|
21785
21847
|
placeholder,
|
|
21786
21848
|
"aria-label": label
|
|
21787
21849
|
});
|
|
21788
|
-
const model2 =
|
|
21850
|
+
const model2 = field2(messages.model, modelId);
|
|
21789
21851
|
model2.readOnly = true;
|
|
21790
21852
|
const prices = Object.fromEntries(
|
|
21791
21853
|
MODEL_PRICE_FIELDS.map((name) => {
|
|
21792
|
-
const input =
|
|
21854
|
+
const input = field2(
|
|
21793
21855
|
messages.fields[name],
|
|
21794
21856
|
draft.prices[name],
|
|
21795
21857
|
name === "input" || name === "output" ? messages.required : messages.notSet
|
|
@@ -22601,8 +22663,8 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
22601
22663
|
for (const cell of options.cells) {
|
|
22602
22664
|
const key = options.singleDay ? cell.hour : cell.weekday * 24 + cell.hour;
|
|
22603
22665
|
const totals2 = byHour.get(key) ?? emptyTotals();
|
|
22604
|
-
for (const
|
|
22605
|
-
totals2[
|
|
22666
|
+
for (const field2 of Object.keys(totals2))
|
|
22667
|
+
totals2[field2] += cell.totals[field2];
|
|
22606
22668
|
byHour.set(key, totals2);
|
|
22607
22669
|
}
|
|
22608
22670
|
const max = Math.max(0, ...[...byHour.values()].map((totals2) => measured(totals2, measure)));
|
|
@@ -22965,8 +23027,8 @@ th[aria-sort] .console-usage-sort__mark {
|
|
|
22965
23027
|
save();
|
|
22966
23028
|
load();
|
|
22967
23029
|
}
|
|
22968
|
-
function toggleFilter(
|
|
22969
|
-
view[
|
|
23030
|
+
function toggleFilter(field2, key) {
|
|
23031
|
+
view[field2] = view[field2] === key ? "" : key;
|
|
22970
23032
|
changed();
|
|
22971
23033
|
}
|
|
22972
23034
|
function selectDate(next) {
|
|
@@ -23371,7 +23433,7 @@ ${messages.creditsCoverage}: ${value.reportedRequests} / ${row.requests}` : void
|
|
|
23371
23433
|
{
|
|
23372
23434
|
key: "hit",
|
|
23373
23435
|
label: messages.cacheHit,
|
|
23374
|
-
sort: (row) => row.
|
|
23436
|
+
sort: (row) => row.cacheHitInputTokens > 0 ? row.cacheHitCachedInputTokens / row.cacheHitInputTokens : -1,
|
|
23375
23437
|
cell: (row) => cacheHitRate(row)
|
|
23376
23438
|
},
|
|
23377
23439
|
{
|
|
@@ -23382,8 +23444,8 @@ ${messages.creditsCoverage}: ${value.reportedRequests} / ${row.requests}` : void
|
|
|
23382
23444
|
}
|
|
23383
23445
|
];
|
|
23384
23446
|
}
|
|
23385
|
-
function rowFilter(
|
|
23386
|
-
const selected = view[
|
|
23447
|
+
function rowFilter(field2, key, label, detail) {
|
|
23448
|
+
const selected = view[field2] === key;
|
|
23387
23449
|
const button2 = focusKey(
|
|
23388
23450
|
h(
|
|
23389
23451
|
document2,
|
|
@@ -23397,9 +23459,9 @@ ${detail}` : ""}`
|
|
|
23397
23459
|
},
|
|
23398
23460
|
label
|
|
23399
23461
|
),
|
|
23400
|
-
`${
|
|
23462
|
+
`${field2}:row:${key}`
|
|
23401
23463
|
);
|
|
23402
|
-
button2.addEventListener("click", () => toggleFilter(
|
|
23464
|
+
button2.addEventListener("click", () => toggleFilter(field2, key));
|
|
23403
23465
|
return button2;
|
|
23404
23466
|
}
|
|
23405
23467
|
function panel(title, content, extra = null, wide = false) {
|
|
@@ -24238,8 +24300,8 @@ ${detail}` : ""}`
|
|
|
24238
24300
|
return input;
|
|
24239
24301
|
}
|
|
24240
24302
|
function createNumberField(document2, input) {
|
|
24241
|
-
const
|
|
24242
|
-
|
|
24303
|
+
const field2 = document2.createElement("div");
|
|
24304
|
+
field2.className = "flex h-8 shrink-0 items-center gap-1.5 rounded-md border border-settings-border bg-settings-surface px-2.5 transition-colors focus-within:border-settings-focus data-[invalid=true]:border-settings-danger";
|
|
24243
24305
|
const control = document2.createElement("input");
|
|
24244
24306
|
control.type = "number";
|
|
24245
24307
|
control.id = input.id;
|
|
@@ -24252,8 +24314,8 @@ ${detail}` : ""}`
|
|
|
24252
24314
|
unit.className = "text-xs text-settings-muted";
|
|
24253
24315
|
unit.setAttribute("aria-hidden", "true");
|
|
24254
24316
|
unit.textContent = input.unit;
|
|
24255
|
-
|
|
24256
|
-
return { field, control };
|
|
24317
|
+
field2.append(control, unit);
|
|
24318
|
+
return { field: field2, control };
|
|
24257
24319
|
}
|
|
24258
24320
|
|
|
24259
24321
|
// src/settings/remote-connections-dialogs.ts
|
|
@@ -24337,7 +24399,7 @@ ${detail}` : ""}`
|
|
|
24337
24399
|
);
|
|
24338
24400
|
if (!dialog) return;
|
|
24339
24401
|
const document2 = options.container.ownerDocument;
|
|
24340
|
-
const
|
|
24402
|
+
const field2 = (label, value, placeholder = "", hint = "") => {
|
|
24341
24403
|
const wrapper = remoteElement(document2, "div", "settings-credential-dialog__field");
|
|
24342
24404
|
const input = remoteElement(document2, "input");
|
|
24343
24405
|
input.id = preferenceId("remote-field");
|
|
@@ -24357,13 +24419,13 @@ ${detail}` : ""}`
|
|
|
24357
24419
|
dialog.body.append(wrapper);
|
|
24358
24420
|
return input;
|
|
24359
24421
|
};
|
|
24360
|
-
const name =
|
|
24422
|
+
const name = field2(t("\u540D\u79F0", "Name"), previous?.displayName ?? "");
|
|
24361
24423
|
name.required = true;
|
|
24362
24424
|
const addressHint = t(
|
|
24363
24425
|
"user@hostname\uFF0C\u6216 ~/.ssh/config \u4E2D\u7684\u4E3B\u673A\u522B\u540D",
|
|
24364
24426
|
"user@hostname, or a host alias from ~/.ssh/config"
|
|
24365
24427
|
);
|
|
24366
|
-
const hostname3 =
|
|
24428
|
+
const hostname3 = field2(
|
|
24367
24429
|
t("SSH \u5730\u5740", "SSH address"),
|
|
24368
24430
|
previous?.sshHost ?? "",
|
|
24369
24431
|
"user@hostname",
|
|
@@ -24372,7 +24434,7 @@ ${detail}` : ""}`
|
|
|
24372
24434
|
hostname3.required = true;
|
|
24373
24435
|
hostname3.pattern = "[^\\s\\-]\\S*";
|
|
24374
24436
|
hostname3.title = addressHint;
|
|
24375
|
-
const port =
|
|
24437
|
+
const port = field2(
|
|
24376
24438
|
t("\u7AEF\u53E3\uFF08\u53EF\u9009\uFF09", "Port (optional)"),
|
|
24377
24439
|
previous?.sshPort?.toString() ?? "",
|
|
24378
24440
|
"22"
|
|
@@ -24381,7 +24443,7 @@ ${detail}` : ""}`
|
|
|
24381
24443
|
port.min = "1";
|
|
24382
24444
|
port.max = "65535";
|
|
24383
24445
|
port.step = "1";
|
|
24384
|
-
const identity =
|
|
24446
|
+
const identity = field2(
|
|
24385
24447
|
t("\u79C1\u94A5\u8DEF\u5F84\uFF08\u53EF\u9009\uFF09", "Identity file (optional)"),
|
|
24386
24448
|
previous?.identity ?? "",
|
|
24387
24449
|
"~/.ssh/id_ed25519"
|
|
@@ -26626,6 +26688,50 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26626
26688
|
};
|
|
26627
26689
|
setRefreshLabel(false);
|
|
26628
26690
|
header.append(heading, refresh);
|
|
26691
|
+
let selectedHostId;
|
|
26692
|
+
let availableHostIds = [];
|
|
26693
|
+
let displayedHostId = "";
|
|
26694
|
+
let hostsLocked = false;
|
|
26695
|
+
const hostButtons = [];
|
|
26696
|
+
const hostLabel = document2.createElement("div");
|
|
26697
|
+
hostLabel.className = "settings-session-import-host";
|
|
26698
|
+
const hostCaption = document2.createElement("span");
|
|
26699
|
+
hostCaption.textContent = "Host";
|
|
26700
|
+
const hostOptions = document2.createElement("div");
|
|
26701
|
+
hostOptions.className = "settings-connection-host-tabs";
|
|
26702
|
+
hostOptions.setAttribute("role", "group");
|
|
26703
|
+
hostOptions.setAttribute("aria-label", "Host");
|
|
26704
|
+
hostLabel.append(hostCaption, hostOptions);
|
|
26705
|
+
const lockHosts = (locked) => {
|
|
26706
|
+
hostsLocked = locked;
|
|
26707
|
+
for (const button2 of hostButtons) button2.disabled = locked;
|
|
26708
|
+
};
|
|
26709
|
+
const renderHosts = (client) => {
|
|
26710
|
+
const current = selectedHostId ?? (client ? client.hostId ?? "local" : "");
|
|
26711
|
+
availableHostIds = [
|
|
26712
|
+
.../* @__PURE__ */ new Set([
|
|
26713
|
+
...getDiagnostics()?.snapshot().hosts.map(({ hostId: hostId2 }) => hostId2) ?? [],
|
|
26714
|
+
...current ? [current] : []
|
|
26715
|
+
])
|
|
26716
|
+
];
|
|
26717
|
+
displayedHostId = current;
|
|
26718
|
+
const scrollLeft = hostOptions.scrollLeft;
|
|
26719
|
+
hostOptions.replaceChildren();
|
|
26720
|
+
hostButtons.length = 0;
|
|
26721
|
+
for (const hostId2 of availableHostIds) {
|
|
26722
|
+
const button2 = document2.createElement("button");
|
|
26723
|
+
button2.type = "button";
|
|
26724
|
+
button2.className = "settings-connection-host-tab";
|
|
26725
|
+
button2.dataset.sessionImportHost = hostId2;
|
|
26726
|
+
button2.textContent = connectionHostName(hostId2, messages);
|
|
26727
|
+
button2.setAttribute("aria-pressed", String(hostId2 === current));
|
|
26728
|
+
button2.disabled = hostsLocked;
|
|
26729
|
+
button2.addEventListener("click", () => selectHost(hostId2));
|
|
26730
|
+
hostButtons.push(button2);
|
|
26731
|
+
hostOptions.append(button2);
|
|
26732
|
+
}
|
|
26733
|
+
hostOptions.scrollLeft = scrollLeft;
|
|
26734
|
+
};
|
|
26629
26735
|
const harness2 = document2.createElement("div");
|
|
26630
26736
|
harness2.className = "settings-session-import-harness";
|
|
26631
26737
|
const harnessLabel = document2.createElement("span");
|
|
@@ -26686,6 +26792,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26686
26792
|
const listControls = createSessionImportListControls(document2, messages, () => load());
|
|
26687
26793
|
context.content.append(
|
|
26688
26794
|
header,
|
|
26795
|
+
hostLabel,
|
|
26689
26796
|
harness2,
|
|
26690
26797
|
description,
|
|
26691
26798
|
availabilityNote,
|
|
@@ -26695,9 +26802,11 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26695
26802
|
listControls.pagination
|
|
26696
26803
|
);
|
|
26697
26804
|
let candidates = [];
|
|
26805
|
+
let loadedClient = null;
|
|
26698
26806
|
let importingId = null;
|
|
26699
26807
|
let actions = [];
|
|
26700
26808
|
const updateImportActions = () => {
|
|
26809
|
+
lockHosts(importingId !== null);
|
|
26701
26810
|
listControls.setBusy(importingId !== null, importingId !== null);
|
|
26702
26811
|
for (const button2 of sourceButtons) button2.disabled = importingId !== null;
|
|
26703
26812
|
for (const { button: button2, candidate } of actions) {
|
|
@@ -26718,7 +26827,10 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26718
26827
|
listControls.setTotal(0);
|
|
26719
26828
|
candidates = [];
|
|
26720
26829
|
actions = [];
|
|
26721
|
-
const status = createStatus(
|
|
26830
|
+
const status = createStatus(
|
|
26831
|
+
document2,
|
|
26832
|
+
!displayedHostId && availableHostIds.length > 1 ? messages.sessionImportSelectHost : messages.sessionImportUnavailable
|
|
26833
|
+
);
|
|
26722
26834
|
content.replaceChildren(status);
|
|
26723
26835
|
if (focus) {
|
|
26724
26836
|
status.tabIndex = -1;
|
|
@@ -26743,7 +26855,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26743
26855
|
status.focus();
|
|
26744
26856
|
}
|
|
26745
26857
|
};
|
|
26746
|
-
const renderOpenRecovery = (candidate, threadId) => {
|
|
26858
|
+
const renderOpenRecovery = (candidate, threadId, hostId2) => {
|
|
26747
26859
|
if (!openImportedThread) return;
|
|
26748
26860
|
actions = [];
|
|
26749
26861
|
refresh.disabled = false;
|
|
@@ -26796,6 +26908,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26796
26908
|
retry.className = "settings-command-button";
|
|
26797
26909
|
retry.dataset.sessionImportAction = "retry-open";
|
|
26798
26910
|
const setRetrying = (pending) => {
|
|
26911
|
+
lockHosts(pending);
|
|
26799
26912
|
listControls.setBusy(pending, pending);
|
|
26800
26913
|
for (const button2 of sourceButtons) button2.disabled = pending;
|
|
26801
26914
|
retry.disabled = pending;
|
|
@@ -26810,12 +26923,12 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26810
26923
|
retry.addEventListener("click", () => {
|
|
26811
26924
|
if (retry.disabled) return;
|
|
26812
26925
|
setRetrying(true);
|
|
26813
|
-
void context.runLatest((signal) => openImportedThread(threadId, signal), {
|
|
26926
|
+
void context.runLatest((signal) => openImportedThread(threadId, signal, hostId2), {
|
|
26814
26927
|
success() {
|
|
26815
26928
|
setRetrying(false);
|
|
26816
26929
|
},
|
|
26817
26930
|
failure() {
|
|
26818
|
-
renderOpenRecovery(candidate, threadId);
|
|
26931
|
+
renderOpenRecovery(candidate, threadId, hostId2);
|
|
26819
26932
|
}
|
|
26820
26933
|
});
|
|
26821
26934
|
});
|
|
@@ -26892,7 +27005,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26892
27005
|
if (candidate.running === true || importingId !== null || selectedHarness === null)
|
|
26893
27006
|
return;
|
|
26894
27007
|
const harnessId = selectedHarness;
|
|
26895
|
-
const client =
|
|
27008
|
+
const client = loadedClient;
|
|
26896
27009
|
if (!client) {
|
|
26897
27010
|
renderUnavailable(true);
|
|
26898
27011
|
return;
|
|
@@ -26910,7 +27023,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26910
27023
|
});
|
|
26911
27024
|
committedThreadId = result.threadId;
|
|
26912
27025
|
if (!signal.aborted && openImportedThread)
|
|
26913
|
-
await openImportedThread(result.threadId, signal);
|
|
27026
|
+
await openImportedThread(result.threadId, signal, client.hostId);
|
|
26914
27027
|
},
|
|
26915
27028
|
{
|
|
26916
27029
|
success() {
|
|
@@ -26928,7 +27041,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26928
27041
|
updateImportActions();
|
|
26929
27042
|
refresh.disabled = false;
|
|
26930
27043
|
if (committedThreadId) {
|
|
26931
|
-
renderOpenRecovery(candidate, committedThreadId);
|
|
27044
|
+
renderOpenRecovery(candidate, committedThreadId, client.hostId);
|
|
26932
27045
|
} else {
|
|
26933
27046
|
renderFailure(error51, "import");
|
|
26934
27047
|
}
|
|
@@ -26946,23 +27059,22 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26946
27059
|
};
|
|
26947
27060
|
const load = () => {
|
|
26948
27061
|
if (importingId !== null || context.signal.aborted) return;
|
|
26949
|
-
|
|
26950
|
-
|
|
26951
|
-
|
|
26952
|
-
|
|
26953
|
-
|
|
26954
|
-
|
|
26955
|
-
|
|
26956
|
-
|
|
26957
|
-
|
|
26958
|
-
setRefreshLabel(true);
|
|
26959
|
-
content.replaceChildren(createStatus(document2, messages.sessionImportRefreshing));
|
|
27062
|
+
loadedClient = null;
|
|
27063
|
+
const client = getClient(selectedHostId);
|
|
27064
|
+
renderHosts(client);
|
|
27065
|
+
listControls.setBusy(client !== null);
|
|
27066
|
+
refresh.disabled = client !== null;
|
|
27067
|
+
setRefreshLabel(client !== null);
|
|
27068
|
+
if (client)
|
|
27069
|
+
content.replaceChildren(createStatus(document2, messages.sessionImportRefreshing));
|
|
27070
|
+
else renderUnavailable();
|
|
26960
27071
|
const requestedHarness = selectedHarness;
|
|
26961
27072
|
const pageParams = listControls.params();
|
|
26962
27073
|
void context.runLatest(
|
|
26963
27074
|
async (signal) => {
|
|
27075
|
+
if (!client) throw new RendererSessionImportUnavailableError();
|
|
26964
27076
|
const missing = new Set(
|
|
26965
|
-
getDiagnostics()?.snapshot().hosts.find(({ hostId: hostId2 }) => hostId2 === "local")?.agents.filter(({ availability }) => availability === "notInstalled").map(({ agent }) => agent)
|
|
27077
|
+
getDiagnostics()?.snapshot().hosts.find(({ hostId: hostId2 }) => hostId2 === (client.hostId ?? "local"))?.agents.filter(({ availability }) => availability === "notInstalled").map(({ agent }) => agent)
|
|
26966
27078
|
);
|
|
26967
27079
|
const harnesses = (await client.listSessionImportSources()).harnesses.filter(
|
|
26968
27080
|
({ harnessId }) => !missing.has(harnessId)
|
|
@@ -26980,6 +27092,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26980
27092
|
},
|
|
26981
27093
|
{
|
|
26982
27094
|
success(result) {
|
|
27095
|
+
loadedClient = client;
|
|
26983
27096
|
listControls.setBusy(false);
|
|
26984
27097
|
if (listControls.setTotal(result.total)) {
|
|
26985
27098
|
load();
|
|
@@ -26992,6 +27105,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
26992
27105
|
else renderCandidates();
|
|
26993
27106
|
},
|
|
26994
27107
|
failure(error51) {
|
|
27108
|
+
loadedClient = null;
|
|
26995
27109
|
listControls.setBusy(false);
|
|
26996
27110
|
candidates = [];
|
|
26997
27111
|
refresh.disabled = false;
|
|
@@ -27001,6 +27115,19 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
27001
27115
|
}
|
|
27002
27116
|
);
|
|
27003
27117
|
};
|
|
27118
|
+
const selectHost = (hostId2) => {
|
|
27119
|
+
if (hostsLocked || !availableHostIds.includes(hostId2) || hostId2 === selectedHostId) return;
|
|
27120
|
+
selectedHostId = hostId2;
|
|
27121
|
+
selectedHarness = null;
|
|
27122
|
+
sources = [];
|
|
27123
|
+
candidates = [];
|
|
27124
|
+
actions = [];
|
|
27125
|
+
importStatus.replaceChildren();
|
|
27126
|
+
listControls.reset();
|
|
27127
|
+
renderHarnessOptions();
|
|
27128
|
+
load();
|
|
27129
|
+
hostButtons.find((button2) => button2.dataset.sessionImportHost === hostId2)?.focus();
|
|
27130
|
+
};
|
|
27004
27131
|
refresh.addEventListener("click", load);
|
|
27005
27132
|
load();
|
|
27006
27133
|
return void 0;
|
|
@@ -27177,14 +27304,14 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
27177
27304
|
description: messages.idleReleaseTimeoutDescription,
|
|
27178
27305
|
controlId: minutesId
|
|
27179
27306
|
});
|
|
27180
|
-
const { field, control: minutes } = createNumberField(document2, {
|
|
27307
|
+
const { field: field2, control: minutes } = createNumberField(document2, {
|
|
27181
27308
|
id: minutesId,
|
|
27182
27309
|
describedBy: timeout.description.id,
|
|
27183
27310
|
unit: messages.idleReleaseMinutes,
|
|
27184
27311
|
min: IDLE_RELEASE_TIMEOUT_MINUTES_MIN,
|
|
27185
27312
|
max: IDLE_RELEASE_TIMEOUT_MINUTES_MAX
|
|
27186
27313
|
});
|
|
27187
|
-
timeout.item.append(
|
|
27314
|
+
timeout.item.append(field2);
|
|
27188
27315
|
timeout.item.id = preferenceId("idle-release-timeout");
|
|
27189
27316
|
enabled.setAttribute("aria-controls", timeout.item.id);
|
|
27190
27317
|
card.append(toggle.item, timeout.item);
|
|
@@ -27205,7 +27332,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
27205
27332
|
statusText.textContent = value === "applied" ? "" : statusMessages[value];
|
|
27206
27333
|
};
|
|
27207
27334
|
const setInvalid = (invalid) => {
|
|
27208
|
-
|
|
27335
|
+
field2.dataset.invalid = String(invalid);
|
|
27209
27336
|
timeout.description.dataset.invalid = String(invalid);
|
|
27210
27337
|
timeout.description.textContent = invalid ? messages.idleReleaseInvalid : messages.idleReleaseTimeoutDescription;
|
|
27211
27338
|
minutes.setAttribute("aria-invalid", String(invalid));
|
|
@@ -28920,6 +29047,43 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
28920
29047
|
});
|
|
28921
29048
|
}
|
|
28922
29049
|
|
|
29050
|
+
// src/settings/harness-schedules-page.ts
|
|
29051
|
+
function createHarnessSchedulesPage(messages, options) {
|
|
29052
|
+
const t = (zh, en) => messages.locale === "zh-CN" ? zh : en;
|
|
29053
|
+
return {
|
|
29054
|
+
id: "harness-schedules",
|
|
29055
|
+
label: t("\u5B9A\u65F6\u4EFB\u52A1", "Schedules"),
|
|
29056
|
+
icon: "schedules",
|
|
29057
|
+
mount(context) {
|
|
29058
|
+
const navigate = () => {
|
|
29059
|
+
context.content.replaceChildren();
|
|
29060
|
+
void context.runLatest((signal) => options.openSchedules(signal), {
|
|
29061
|
+
success() {
|
|
29062
|
+
},
|
|
29063
|
+
failure() {
|
|
29064
|
+
const document2 = context.content.ownerDocument;
|
|
29065
|
+
const status = document2.createElement("p");
|
|
29066
|
+
status.setAttribute("role", "status");
|
|
29067
|
+
status.className = "text-sm text-settings-muted";
|
|
29068
|
+
status.textContent = t(
|
|
29069
|
+
"\u65E0\u6CD5\u6253\u5F00\u5B98\u65B9\u5B9A\u65F6\u4EFB\u52A1\u9875\uFF0C\u8BF7\u91CD\u8BD5\u6216\u4ECE\u5B98\u65B9\u4FA7\u680F\u8FDB\u5165\u3002",
|
|
29070
|
+
"Could not open the official schedules page. Retry or use the Desktop sidebar."
|
|
29071
|
+
);
|
|
29072
|
+
const retry = document2.createElement("button");
|
|
29073
|
+
retry.type = "button";
|
|
29074
|
+
retry.className = "rounded-lg px-3 py-2 text-sm text-settings-text hover:bg-settings-hover focus-visible:outline-2 focus-visible:outline-settings-focus";
|
|
29075
|
+
retry.textContent = t("\u91CD\u8BD5", "Retry");
|
|
29076
|
+
retry.addEventListener("click", navigate);
|
|
29077
|
+
context.content.replaceChildren(status, retry);
|
|
29078
|
+
}
|
|
29079
|
+
});
|
|
29080
|
+
};
|
|
29081
|
+
navigate();
|
|
29082
|
+
return void 0;
|
|
29083
|
+
}
|
|
29084
|
+
};
|
|
29085
|
+
}
|
|
29086
|
+
|
|
28923
29087
|
// src/settings/update-request.ts
|
|
28924
29088
|
var RENDERER_UPDATE_REQUEST_TIMEOUT_MS = 15e3;
|
|
28925
29089
|
var RendererUpdateRequestTimeoutError = class extends Error {
|
|
@@ -29247,8 +29411,8 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
29247
29411
|
const starBanner = updateStarBanner(document2, messages);
|
|
29248
29412
|
context.content.append(heading, metadata, panel, controls, starBanner, notes);
|
|
29249
29413
|
const setManualFallback = (fallback) => {
|
|
29250
|
-
controls.className =
|
|
29251
|
-
manualNpmDescription.textContent =
|
|
29414
|
+
controls.className = fallback ? "settings-update-controls" : "settings-update-controls is-quiet";
|
|
29415
|
+
manualNpmDescription.textContent = fallback ? messages.updateManualFallbackDescription : messages.updateManualNpmDescription;
|
|
29252
29416
|
manualNpmDescription.className = fallback ? "settings-update-manual-description is-fallback" : "settings-update-manual-description";
|
|
29253
29417
|
};
|
|
29254
29418
|
let pollTimer;
|
|
@@ -29398,14 +29562,14 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
29398
29562
|
panel.dataset.updateState = view;
|
|
29399
29563
|
panel.replaceChildren();
|
|
29400
29564
|
setManualFallback(Boolean(result.error) || actionableStatus !== null);
|
|
29401
|
-
const inlineUpdate = !result.error && !
|
|
29565
|
+
const inlineUpdate = !result.error && !actionableStatus && result.updateAvailable;
|
|
29402
29566
|
if (inlineUpdate) panel.dataset.inline = "";
|
|
29403
29567
|
else delete panel.dataset.inline;
|
|
29404
29568
|
panel.append(
|
|
29405
29569
|
createPanelHead(
|
|
29406
29570
|
document2,
|
|
29407
29571
|
view,
|
|
29408
|
-
actionableStatus ? statusMessage(actionableStatus, messages) ?? messages.updateFailed : result.error ? messages.updateFailed : result.updateAvailable ?
|
|
29572
|
+
actionableStatus ? statusMessage(actionableStatus, messages) ?? messages.updateFailed : result.error ? messages.updateFailed : result.updateAvailable ? messages.updateAvailable : messages.updateUpToDate
|
|
29409
29573
|
)
|
|
29410
29574
|
);
|
|
29411
29575
|
if (actionableStatus?.error) {
|
|
@@ -29421,7 +29585,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
29421
29585
|
panel.append(error51);
|
|
29422
29586
|
}
|
|
29423
29587
|
const buttons = [];
|
|
29424
|
-
if (
|
|
29588
|
+
if (result.updateAvailable && result.installationAvailable) {
|
|
29425
29589
|
const update = document2.createElement("button");
|
|
29426
29590
|
update.type = "button";
|
|
29427
29591
|
update.className = "settings-command-button";
|
|
@@ -29470,11 +29634,12 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
29470
29634
|
}
|
|
29471
29635
|
});
|
|
29472
29636
|
}
|
|
29473
|
-
function createDefaultRendererSettingsPages(messages = DEFAULT_RENDERER_SETTINGS_MESSAGES, getUpdateClient = () => null, getDiagnostics = () => null, getAccountClient = () => null, getSessionImportClient = () => null, openImportedThread = () => Promise.reject(new Error("Imported Thread navigation is unavailable")), getLoadedSessionsClient = () => null, getRemoteConnections = () => null, requestUsageStatistics = () => Promise.reject(new Error("Local Host connection is unavailable")), usageStatisticsHosts) {
|
|
29637
|
+
function createDefaultRendererSettingsPages(messages = DEFAULT_RENDERER_SETTINGS_MESSAGES, getUpdateClient = () => null, getDiagnostics = () => null, getAccountClient = () => null, getSessionImportClient = () => null, openImportedThread = () => Promise.reject(new Error("Imported Thread navigation is unavailable")), getLoadedSessionsClient = () => null, getRemoteConnections = () => null, requestUsageStatistics = () => Promise.reject(new Error("Local Host connection is unavailable")), usageStatisticsHosts, harnessSchedules) {
|
|
29474
29638
|
return Object.freeze([
|
|
29475
29639
|
createConnectionsSettingsPage(messages, getDiagnostics, void 0, getRemoteConnections),
|
|
29476
29640
|
createRemoteConnectionsPage(messages, getRemoteConnections),
|
|
29477
29641
|
createAccountsSettingsPage(messages, getAccountClient),
|
|
29642
|
+
...harnessSchedules ? [createHarnessSchedulesPage(messages, harnessSchedules)] : [],
|
|
29478
29643
|
createSessionImportSettingsPage(
|
|
29479
29644
|
messages,
|
|
29480
29645
|
getSessionImportClient,
|
|
@@ -30044,6 +30209,41 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
30044
30209
|
margin-top: 0;
|
|
30045
30210
|
}
|
|
30046
30211
|
|
|
30212
|
+
.settings-session-import-host {
|
|
30213
|
+
display: flex;
|
|
30214
|
+
align-items: center;
|
|
30215
|
+
min-width: 0;
|
|
30216
|
+
gap: 12px;
|
|
30217
|
+
margin: -12px 0 12px;
|
|
30218
|
+
color: var(--settings-muted);
|
|
30219
|
+
font-size: 13px;
|
|
30220
|
+
}
|
|
30221
|
+
|
|
30222
|
+
.settings-session-import-host > span,
|
|
30223
|
+
.settings-session-import-host + .settings-session-import-harness > span {
|
|
30224
|
+
flex: none;
|
|
30225
|
+
min-width: 60px;
|
|
30226
|
+
}
|
|
30227
|
+
|
|
30228
|
+
.settings-session-import-host > .settings-connection-host-tabs {
|
|
30229
|
+
flex: 1;
|
|
30230
|
+
}
|
|
30231
|
+
|
|
30232
|
+
.settings-session-import-host .settings-connection-host-tab {
|
|
30233
|
+
height: 34px;
|
|
30234
|
+
padding: 0 12px;
|
|
30235
|
+
font-size: 13px;
|
|
30236
|
+
}
|
|
30237
|
+
|
|
30238
|
+
.settings-session-import-host .settings-connection-host-tab:disabled {
|
|
30239
|
+
opacity: 0.38;
|
|
30240
|
+
cursor: not-allowed;
|
|
30241
|
+
}
|
|
30242
|
+
|
|
30243
|
+
.settings-session-import-host + .settings-session-import-harness {
|
|
30244
|
+
margin-top: 0;
|
|
30245
|
+
}
|
|
30246
|
+
|
|
30047
30247
|
.settings-session-import-search,
|
|
30048
30248
|
.settings-session-import-pagination {
|
|
30049
30249
|
display: flex;
|
|
@@ -30400,7 +30600,8 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
30400
30600
|
background: var(--settings-hover);
|
|
30401
30601
|
}
|
|
30402
30602
|
|
|
30403
|
-
.settings-connection-host-tab[aria-selected="true"]
|
|
30603
|
+
.settings-connection-host-tab[aria-selected="true"],
|
|
30604
|
+
.settings-connection-host-tab[aria-pressed="true"] {
|
|
30404
30605
|
color: var(--settings-text);
|
|
30405
30606
|
font-weight: 600;
|
|
30406
30607
|
background: var(--settings-active);
|
|
@@ -32078,7 +32279,7 @@ ${messages.harnessVersionLatest}: ${harnessVersionLabel(version2.state, messages
|
|
|
32078
32279
|
`;
|
|
32079
32280
|
|
|
32080
32281
|
// src/settings/tailwind.css
|
|
32081
|
-
var tailwind_default = '@layer properties, theme, base, components, utilities;\n/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.top-full{top:100%}.left-0{left:0}.z-20{z-index:20}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-1{margin-left:var(--spacing)}.ml-\\[45px\\]{margin-left:45px}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.size-1\\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-8{height:calc(var(--spacing) * 8)}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-\\[60px\\]{min-height:60px}.w-9{width:calc(var(--spacing) * 9)}.w-14{width:calc(var(--spacing) * 14)}.w-80{width:calc(var(--spacing) * 80)}.w-full{width:100%}.w-px{width:1px}.max-w-64{max-width:calc(var(--spacing) * 64)}.min-w-0{min-width:0}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-disc{list-style-type:disc}.appearance-none{appearance:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.overflow-x-auto{overflow-x:auto}.rounded-\\[10px\\]{border-radius:10px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-settings-border{border-color:var(--settings-border)}.border-settings-divider{border-color:var(--settings-divider)}.bg-settings-panel{background-color:var(--settings-panel)}.bg-settings-subtle{background-color:var(--settings-subtle)}.bg-settings-surface{background-color:var(--settings-surface)}.bg-settings-surface-hover{background-color:var(--settings-surface-hover)}.bg-transparent{background-color:#0000}.p-0{padding:0}.p-4{padding:calc(var(--spacing) * 4)}.\\!px-0{padding-inline:0!important}.px-1{padding-inline:var(--spacing)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pl-4{padding-left:calc(var(--spacing) * 4)}.\\!text-right{text-align:right!important}.text-left{text-align:left}.text-right{text-align:right}.align-top{vertical-align:top}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[11px\\]{font-size:11px}.text-\\[13px\\]{font-size:13px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-\\[18px\\]{--tw-leading:18px;line-height:18px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-pre-wrap{white-space:pre-wrap}.text-settings-muted{color:var(--settings-muted)}.text-settings-subtle{color:var(--settings-subtle)}.text-settings-text{color:var(--settings-text)}.lowercase{text-transform:lowercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.opacity-0{opacity:0}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_10px_30px_rgb\\(0_0_0\\/0\\.22\\)\\]{--tw-shadow:0 10px 30px var(--tw-shadow-color,#00000038);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-settings-border{--tw-ring-color:var(--settings-border)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.outline-none{--tw-outline-style:none;outline-style:none}.ring-inset{--tw-ring-inset:inset}.group-focus-within\\:visible:is(:where(.group):focus-within *){visibility:visible}.group-focus-within\\:opacity-100:is(:where(.group):focus-within *){opacity:1}@media (hover:hover){.group-hover\\:visible:is(:where(.group):hover *){visibility:visible}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-data-\\[state\\=failed\\]\\/status\\:bg-settings-danger:is(:where(.group\\/status)[data-state=failed] *){background-color:var(--settings-danger)}.group-data-\\[state\\=unavailable\\]\\/status\\:bg-settings-warning:is(:where(.group\\/status)[data-state=unavailable] *){background-color:var(--settings-warning)}.marker\\:text-settings-subtle ::marker{color:var(--settings-subtle)}.marker\\:text-settings-subtle::marker{color:var(--settings-subtle)}.marker\\:text-settings-subtle ::-webkit-details-marker{color:var(--settings-subtle)}.marker\\:text-settings-subtle::-webkit-details-marker{color:var(--settings-subtle)}.before\\:absolute:before{content:var(--tw-content);position:absolute}.before\\:top-0\\.5:before{content:var(--tw-content);top:calc(var(--spacing) * .5)}.before\\:left-0\\.5:before{content:var(--tw-content);left:calc(var(--spacing) * .5)}.before\\:size-4:before{content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.before\\:rounded-full:before{content:var(--tw-content);border-radius:3.40282e38px}.before\\:bg-white:before{content:var(--tw-content);background-color:#fff}.before\\:shadow-\\[0_1px_2px_rgb\\(0_0_0\\/0\\.3\\)\\]:before{content:var(--tw-content);--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000004d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.before\\:transition-transform:before{content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.first\\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.first-of-type\\:mt-0:first-of-type{margin-top:0}.checked\\:bg-settings-focus:checked{background-color:var(--settings-focus)}.checked\\:ring-transparent:checked{--tw-ring-color:transparent}.checked\\:before\\:translate-x-4:checked:before{content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.focus-within\\:border-settings-focus:focus-within{border-color:var(--settings-focus)}@media (hover:hover){.hover\\:text-settings-text:hover{color:var(--settings-text)}}.focus-visible\\:text-settings-text:focus-visible{color:var(--settings-text)}.focus-visible\\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\\:outline-settings-focus:focus-visible{outline-color:var(--settings-focus)}.data-\\[invalid\\=true\\]\\:border-settings-danger[data-invalid=true]{border-color:var(--settings-danger)}.data-\\[invalid\\=true\\]\\:text-settings-danger[data-invalid=true],.data-\\[state\\=failed\\]\\:text-settings-danger[data-state=failed]{color:var(--settings-danger)}.data-\\[state\\=unavailable\\]\\:text-settings-warning[data-state=unavailable]{color:var(--settings-warning)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@layer properties{\n *, ::before, ::after, ::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-alpha:100%;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-offset-width:0;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-drop-shadow-alpha:100%;--tw-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}\n';
|
|
32282
|
+
var tailwind_default = '@layer properties, theme, base, components, utilities;\n/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.top-full{top:100%}.left-0{left:0}.z-20{z-index:20}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.ml-1{margin-left:var(--spacing)}.ml-\\[45px\\]{margin-left:45px}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.size-1\\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-8{height:calc(var(--spacing) * 8)}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-\\[60px\\]{min-height:60px}.w-9{width:calc(var(--spacing) * 9)}.w-14{width:calc(var(--spacing) * 14)}.w-80{width:calc(var(--spacing) * 80)}.w-full{width:100%}.w-px{width:1px}.max-w-64{max-width:calc(var(--spacing) * 64)}.min-w-0{min-width:0}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-disc{list-style-type:disc}.appearance-none{appearance:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.overflow-x-auto{overflow-x:auto}.rounded-\\[10px\\]{border-radius:10px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-settings-border{border-color:var(--settings-border)}.border-settings-divider{border-color:var(--settings-divider)}.bg-settings-panel{background-color:var(--settings-panel)}.bg-settings-subtle{background-color:var(--settings-subtle)}.bg-settings-surface{background-color:var(--settings-surface)}.bg-settings-surface-hover{background-color:var(--settings-surface-hover)}.bg-transparent{background-color:#0000}.p-0{padding:0}.p-4{padding:calc(var(--spacing) * 4)}.\\!px-0{padding-inline:0!important}.px-1{padding-inline:var(--spacing)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pl-4{padding-left:calc(var(--spacing) * 4)}.\\!text-right{text-align:right!important}.text-left{text-align:left}.text-right{text-align:right}.align-top{vertical-align:top}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[11px\\]{font-size:11px}.text-\\[13px\\]{font-size:13px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-\\[18px\\]{--tw-leading:18px;line-height:18px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-pre-wrap{white-space:pre-wrap}.text-settings-muted{color:var(--settings-muted)}.text-settings-subtle{color:var(--settings-subtle)}.text-settings-text{color:var(--settings-text)}.lowercase{text-transform:lowercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.opacity-0{opacity:0}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\\[0_10px_30px_rgb\\(0_0_0\\/0\\.22\\)\\]{--tw-shadow:0 10px 30px var(--tw-shadow-color,#00000038);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-settings-border{--tw-ring-color:var(--settings-border)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.outline-none{--tw-outline-style:none;outline-style:none}.ring-inset{--tw-ring-inset:inset}.group-focus-within\\:visible:is(:where(.group):focus-within *){visibility:visible}.group-focus-within\\:opacity-100:is(:where(.group):focus-within *){opacity:1}@media (hover:hover){.group-hover\\:visible:is(:where(.group):hover *){visibility:visible}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-data-\\[state\\=failed\\]\\/status\\:bg-settings-danger:is(:where(.group\\/status)[data-state=failed] *){background-color:var(--settings-danger)}.group-data-\\[state\\=unavailable\\]\\/status\\:bg-settings-warning:is(:where(.group\\/status)[data-state=unavailable] *){background-color:var(--settings-warning)}.marker\\:text-settings-subtle ::marker{color:var(--settings-subtle)}.marker\\:text-settings-subtle::marker{color:var(--settings-subtle)}.marker\\:text-settings-subtle ::-webkit-details-marker{color:var(--settings-subtle)}.marker\\:text-settings-subtle::-webkit-details-marker{color:var(--settings-subtle)}.before\\:absolute:before{content:var(--tw-content);position:absolute}.before\\:top-0\\.5:before{content:var(--tw-content);top:calc(var(--spacing) * .5)}.before\\:left-0\\.5:before{content:var(--tw-content);left:calc(var(--spacing) * .5)}.before\\:size-4:before{content:var(--tw-content);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.before\\:rounded-full:before{content:var(--tw-content);border-radius:3.40282e38px}.before\\:bg-white:before{content:var(--tw-content);background-color:#fff}.before\\:shadow-\\[0_1px_2px_rgb\\(0_0_0\\/0\\.3\\)\\]:before{content:var(--tw-content);--tw-shadow:0 1px 2px var(--tw-shadow-color,#0000004d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.before\\:transition-transform:before{content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.first\\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.first-of-type\\:mt-0:first-of-type{margin-top:0}.checked\\:bg-settings-focus:checked{background-color:var(--settings-focus)}.checked\\:ring-transparent:checked{--tw-ring-color:transparent}.checked\\:before\\:translate-x-4:checked:before{content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.focus-within\\:border-settings-focus:focus-within{border-color:var(--settings-focus)}@media (hover:hover){.hover\\:bg-settings-hover:hover{background-color:var(--settings-hover)}.hover\\:text-settings-text:hover{color:var(--settings-text)}}.focus-visible\\:text-settings-text:focus-visible{color:var(--settings-text)}.focus-visible\\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\\:outline-settings-focus:focus-visible{outline-color:var(--settings-focus)}.data-\\[invalid\\=true\\]\\:border-settings-danger[data-invalid=true]{border-color:var(--settings-danger)}.data-\\[invalid\\=true\\]\\:text-settings-danger[data-invalid=true],.data-\\[state\\=failed\\]\\:text-settings-danger[data-state=failed]{color:var(--settings-danger)}.data-\\[state\\=unavailable\\]\\:text-settings-warning[data-state=unavailable]{color:var(--settings-warning)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@layer properties{\n *, ::before, ::after, ::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-alpha:100%;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-offset-width:0;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-drop-shadow-alpha:100%;--tw-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}\n';
|
|
32082
32283
|
|
|
32083
32284
|
// src/console/app.ts
|
|
32084
32285
|
function required2(pages, id) {
|
|
@@ -32346,6 +32547,7 @@ ${console_default}`
|
|
|
32346
32547
|
lucide/dist/esm/defaultAttributes.mjs:
|
|
32347
32548
|
lucide/dist/esm/createElement.mjs:
|
|
32348
32549
|
lucide/dist/esm/icons/boxes.mjs:
|
|
32550
|
+
lucide/dist/esm/icons/calendar-clock.mjs:
|
|
32349
32551
|
lucide/dist/esm/icons/circle-check.mjs:
|
|
32350
32552
|
lucide/dist/esm/icons/chevron-down.mjs:
|
|
32351
32553
|
lucide/dist/esm/icons/chevron-left.mjs:
|