local-operator-ui 0.34.53 → 0.34.55
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/out/main/index.js +193 -18
- package/out/renderer/assets/{_basePickBy-CvpcKweF.js → _basePickBy-Be_5LfVS.js} +1 -1
- package/out/renderer/assets/{_baseUniq-D1oOSrqB.js → _baseUniq-hdy9kmQQ.js} +1 -1
- package/out/renderer/assets/{agent-details-page-Dbd7Qqbd.js → agent-details-page-CLbcLEwm.js} +2 -2
- package/out/renderer/assets/agent-hub-page-Bf5Aw-Jn.js +11 -0
- package/out/renderer/assets/{agents-page-DfuX5-79.js → agents-page-BpaQBOFJ.js} +3 -3
- package/out/renderer/assets/{arc-BajJ7pje.js → arc-CgN-UZqL.js} +1 -1
- package/out/renderer/assets/{architectureDiagram-IEHRJDOE-D1-CNSAD.js → architectureDiagram-IEHRJDOE-DowMu2Qf.js} +1 -1
- package/out/renderer/assets/{blockDiagram-JOT3LUYC-CD5T8WZA.js → blockDiagram-JOT3LUYC-DgKTIFqt.js} +1 -1
- package/out/renderer/assets/{book-open-CfuxuX-l.js → book-open-yKrSTgbR.js} +1 -1
- package/out/renderer/assets/browser-page-CKyYrwF0.js +1 -0
- package/out/renderer/assets/{browser-webauthn-prompt-DW800ko_.js → browser-webauthn-prompt-CJ6FJJMN.js} +1 -1
- package/out/renderer/assets/{c4Diagram-VJAJSXHY-COKPfAva.js → c4Diagram-VJAJSXHY-Ctyv3nA_.js} +1 -1
- package/out/renderer/assets/channel-DaruqAQQ.js +1 -0
- package/out/renderer/assets/{chunk-4BMEZGHF-iSOGNS5q.js → chunk-4BMEZGHF-CW43fWPt.js} +1 -1
- package/out/renderer/assets/{chunk-A2AXSNBT-B7eDvfbn.js → chunk-A2AXSNBT-BfdEIIIg.js} +1 -1
- package/out/renderer/assets/{chunk-AEK57VVT-CTtvvIx6.js → chunk-AEK57VVT-Bx4nZ-57.js} +1 -1
- package/out/renderer/assets/{chunk-D6G4REZN-D89NRhvc.js → chunk-D6G4REZN-BA6hwejS.js} +1 -1
- package/out/renderer/assets/{chunk-RZ5BOZE2-D9-5Iwp7.js → chunk-RZ5BOZE2-Civ6_Z-P.js} +1 -1
- package/out/renderer/assets/{chunk-XZIHB7SX-Cdyx-enm.js → chunk-XZIHB7SX-BVPRrS8K.js} +1 -1
- package/out/renderer/assets/classDiagram-GIVACNV2-D8vhGZVf.js +1 -0
- package/out/renderer/assets/classDiagram-v2-COTLJTTW-D8vhGZVf.js +1 -0
- package/out/renderer/assets/clone-HcmO38Fx.js +1 -0
- package/out/renderer/assets/{console-mirror-D4VUczn2.js → console-mirror-D12eLWy7.js} +1 -1
- package/out/renderer/assets/{consoleCapture-BZscABJW.js → consoleCapture-B5s47GGM.js} +1 -1
- package/out/renderer/assets/{conversation-input-sync-Dlf10JWF.js → conversation-input-sync-oIWpPfzj.js} +259 -259
- package/out/renderer/assets/{dagre-OKDRZEBW-hOluomAX.js → dagre-OKDRZEBW-CayNWWG3.js} +1 -1
- package/out/renderer/assets/{diagram-SSKATNLV-BWdY9OnP.js → diagram-SSKATNLV-CNrEYtm4.js} +1 -1
- package/out/renderer/assets/{diagram-VNBRO52H-CUZoZ2hJ.js → diagram-VNBRO52H-jzZ7n3uT.js} +1 -1
- package/out/renderer/assets/{erDiagram-Q7BY3M3F-BaXRnwVj.js → erDiagram-Q7BY3M3F-9BaZ6ZkV.js} +1 -1
- package/out/renderer/assets/{error-boundary-BCQ7FGQc.js → error-boundary-BfL6ia-P.js} +1 -1
- package/out/renderer/assets/{flowDiagram-4HSFHLVR-D3gvS8EU.js → flowDiagram-4HSFHLVR-CptBIl13.js} +1 -1
- package/out/renderer/assets/{ganttDiagram-APWFNJXF-DRKxbsB1.js → ganttDiagram-APWFNJXF-CgcFEyO7.js} +3 -3
- package/out/renderer/assets/{gitGraphDiagram-7IBYFJ6S-B-6CMRoo.js → gitGraphDiagram-7IBYFJ6S-cmMetjXL.js} +1 -1
- package/out/renderer/assets/{graph-Bvgoe8Zc.js → graph-R1Ok41yA.js} +1 -1
- package/out/renderer/assets/{index-DWZ82U8c.js → index-BFzgup69.js} +1 -1
- package/out/renderer/assets/{index-dNBOt_b9.js → index-CNvEPxPr.js} +197 -197
- package/out/renderer/assets/index-CsR1USrT.js +57 -0
- package/out/renderer/assets/{index-Bg8G2adf.js → index-Dsm4DzII.js} +1 -1
- package/out/renderer/assets/{index-DxyRyuQP.css → index-pufheB69.css} +1 -1
- package/out/renderer/assets/{infoDiagram-PH2N3AL5-g5rZp0e7.js → infoDiagram-PH2N3AL5-DeSmG1nL.js} +1 -1
- package/out/renderer/assets/{installer-BRjexwGb.js → installer-BM-QRi7Y.js} +1 -1
- package/out/renderer/assets/{journeyDiagram-U35MCT3I-CyyN61cm.js → journeyDiagram-U35MCT3I--ZNfC2qt.js} +1 -1
- package/out/renderer/assets/{kanban-definition-NDS4AKOZ-BcYjcFGg.js → kanban-definition-NDS4AKOZ-kUi3-HdL.js} +1 -1
- package/out/renderer/assets/{layout-DIrLHdoU.js → layout-DQq3NfPk.js} +1 -1
- package/out/renderer/assets/{legacy-agents-page-C4087qcZ.js → legacy-agents-page-D0vembfV.js} +7 -7
- package/out/renderer/assets/{mermaid.core-TBXZ6m8l.js → mermaid.core-kSHzKq9G.js} +5 -5
- package/out/renderer/assets/mesh-page-BhfRHXQS.js +1 -0
- package/out/renderer/assets/{mindmap-definition-ALO5MXBD-CDtMt6Do.js → mindmap-definition-ALO5MXBD-BsJiNdkz.js} +1 -1
- package/out/renderer/assets/mini-DngBC0gl.js +1 -0
- package/out/renderer/assets/{notebook-pen-Dd0WXtBw.js → notebook-pen-BbGvgaYT.js} +1 -1
- package/out/renderer/assets/{org-access-BVkMTwKq.js → org-access-DVLt_Z75.js} +1 -1
- package/out/renderer/assets/{org-surface-gate-CV-1baVy.js → org-surface-gate-J1G29FUu.js} +1 -1
- package/out/renderer/assets/{page-header-Dl5IO6UP.js → page-header-BSVtXSul.js} +1 -1
- package/out/renderer/assets/{pieDiagram-IB7DONF6-gmMGr-ui.js → pieDiagram-IB7DONF6-D9NPKlbA.js} +1 -1
- package/out/renderer/assets/projects-page-CV3ap9Ch.js +45 -0
- package/out/renderer/assets/{publication-validation-cIO-Z0gj.js → publication-validation-CXXK8RMX.js} +1 -1
- package/out/renderer/assets/{quadrantDiagram-7GDLP6J5-Ctwtym9P.js → quadrantDiagram-7GDLP6J5-Dp6sSgy_.js} +1 -1
- package/out/renderer/assets/{radar-MK3ICKWK-CApF2ugX.js → radar-MK3ICKWK-BdYaxH9C.js} +1 -1
- package/out/renderer/assets/{radient-auth-buttons-B1WkSc0e.js → radient-auth-buttons-2gyRX5Xg.js} +1 -1
- package/out/renderer/assets/{requirementDiagram-KVF5MWMF-DB3NXRpA.js → requirementDiagram-KVF5MWMF-CSxZpxDc.js} +1 -1
- package/out/renderer/assets/{sankeyDiagram-QLVOVGJD-lcLgzHR-.js → sankeyDiagram-QLVOVGJD-DNfJtnGS.js} +1 -1
- package/out/renderer/assets/{schedules-page-ByfZ04x2.js → schedules-page-BMY6s4UJ.js} +1 -1
- package/out/renderer/assets/{sequenceDiagram-X6HHIX6F-C92s7I-3.js → sequenceDiagram-X6HHIX6F-wP1VuU8h.js} +1 -1
- package/out/renderer/assets/settings-page-CVUD4U35.js +292 -0
- package/out/renderer/assets/{stateDiagram-DGXRK772-D1MupxMG.js → stateDiagram-DGXRK772-BRguDCdq.js} +1 -1
- package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-CqO4MBYu.js +1 -0
- package/out/renderer/assets/{timeline-definition-BDJGKUSR-SK8QkNlF.js → timeline-definition-BDJGKUSR-Sovor235.js} +1 -1
- package/out/renderer/assets/{ui-preferences-store-BSjv1eml.js → ui-preferences-store-g6-xQ9NA.js} +1 -1
- package/out/renderer/assets/{use-download-agent-mutation-Bik5KhXj.js → use-download-agent-mutation-CKVzPGPY.js} +4 -4
- package/out/renderer/assets/{use-memberships-query-CXnke9-r.js → use-memberships-query-BgAi_tHu.js} +1 -1
- package/out/renderer/assets/{use-session-snapshot-D20-nQEA.js → use-session-snapshot-Ba7FspxL.js} +1 -1
- package/out/renderer/assets/{xychartDiagram-VJFVF3MP-_YTSS36c.js → xychartDiagram-VJFVF3MP-BBlbpFBv.js} +1 -1
- package/out/renderer/console-capture.html +5 -5
- package/out/renderer/index.html +7 -7
- package/out/renderer/installer.html +4 -4
- package/out/renderer/mini.html +7 -7
- package/package.json +2 -2
- package/out/renderer/assets/agent-hub-page-hB4xULfK.js +0 -11
- package/out/renderer/assets/browser-page-DbFH9sog.js +0 -1
- package/out/renderer/assets/channel-5khbBi1K.js +0 -1
- package/out/renderer/assets/classDiagram-GIVACNV2-B_cQ6qiw.js +0 -1
- package/out/renderer/assets/classDiagram-v2-COTLJTTW-B_cQ6qiw.js +0 -1
- package/out/renderer/assets/clone-DUh4Smnq.js +0 -1
- package/out/renderer/assets/index-C9huVbt8.js +0 -57
- package/out/renderer/assets/mesh-page-Z6_brJoS.js +0 -1
- package/out/renderer/assets/mini-DDoFzOhf.js +0 -1
- package/out/renderer/assets/projects-page-B4mpUcqQ.js +0 -45
- package/out/renderer/assets/settings-page-DaWmx0G_.js +0 -292
- package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-BsNwRWuq.js +0 -1
package/out/main/index.js
CHANGED
|
@@ -4728,8 +4728,9 @@ function sanitizeGlassSettings(raw, capability, base = DEFAULT_GLASS_SETTINGS) {
|
|
|
4728
4728
|
}
|
|
4729
4729
|
const glassIsActive = (settings, capability) => settings.enabled && capability.supported;
|
|
4730
4730
|
const GLASS_TRANSPARENT = "#00000000";
|
|
4731
|
-
function glassWindowOptions(settings, capability) {
|
|
4732
|
-
|
|
4731
|
+
function glassWindowOptions(settings, capability, platform) {
|
|
4732
|
+
const inactive = platform === "darwin" ? { visualEffectState: "active" } : {};
|
|
4733
|
+
if (!glassIsActive(settings, capability)) return inactive;
|
|
4733
4734
|
if (capability.mechanism === "vibrancy") {
|
|
4734
4735
|
return {
|
|
4735
4736
|
backgroundColor: GLASS_TRANSPARENT,
|
|
@@ -4743,12 +4744,12 @@ function glassWindowOptions(settings, capability) {
|
|
|
4743
4744
|
backgroundMaterial: winMaterialFor(settings.material)
|
|
4744
4745
|
};
|
|
4745
4746
|
}
|
|
4746
|
-
return
|
|
4747
|
+
return inactive;
|
|
4747
4748
|
}
|
|
4748
|
-
function groundWithGlass(ground, settings, capability) {
|
|
4749
|
+
function groundWithGlass(ground, settings, capability, platform) {
|
|
4749
4750
|
return {
|
|
4750
4751
|
backgroundColor: ground,
|
|
4751
|
-
...glassWindowOptions(settings, capability)
|
|
4752
|
+
...glassWindowOptions(settings, capability, platform)
|
|
4752
4753
|
};
|
|
4753
4754
|
}
|
|
4754
4755
|
function macVibrancyFor(material) {
|
|
@@ -32465,7 +32466,22 @@ const enUiChatComposer = {
|
|
|
32465
32466
|
"ui.chat.composer.start_recording_hint": "Start recording ({shortcut} or hold {pushToTalk})",
|
|
32466
32467
|
"ui.chat.composer.processing_audio": "Processing audio",
|
|
32467
32468
|
"ui.chat.composer.welcome": "What can I help you with today?",
|
|
32468
|
-
"ui.chat.composer.delivery_remedies_hint": "The message that could not be delivered has Send again and Edit controls in the conversation above this box: press Shift+Tab to reach them."
|
|
32469
|
+
"ui.chat.composer.delivery_remedies_hint": "The message that could not be delivered has Send again and Edit controls in the conversation above this box: press Shift+Tab to reach them.",
|
|
32470
|
+
"ui.chat.composer.secret_ask_notice": "The agent is asking for a secret. Enter it in the asks panel — you can keep chatting meanwhile.",
|
|
32471
|
+
"ui.chat.composer.secret_ask_open": "Open asks",
|
|
32472
|
+
"ui.chat.composer.secret_confirm_message": "This looks like a password or key. Where should it go?",
|
|
32473
|
+
"ui.chat.composer.secret_confirm_chars": "{count, plural, one {# character} other {# characters}}",
|
|
32474
|
+
"ui.chat.composer.secret_confirm_sending": "Sending to the secret field…",
|
|
32475
|
+
"ui.chat.composer.secret_confirm_put": "Put in secret field",
|
|
32476
|
+
"ui.chat.composer.secret_confirm_put_multi": "Open asks panel",
|
|
32477
|
+
"ui.chat.composer.secret_confirm_send": "Send as message",
|
|
32478
|
+
"ui.chat.composer.secret_confirm_cancel": "Cancel",
|
|
32479
|
+
"ui.chat.composer.secret_fill_locked": "Not put in the secret field: a message is still sending. Your text is kept — try again once it lands.",
|
|
32480
|
+
"ui.chat.composer.secret_fill_changed": "Not put in the secret field: the request changed first. Your text is kept.",
|
|
32481
|
+
"ui.chat.composer.secret_fill_gone": "Not put in the secret field: that request is no longer waiting. Your text is kept.",
|
|
32482
|
+
"ui.chat.composer.secret_fill_refused": "The secret field did not take that value. Your text is kept — the asks panel shows why.",
|
|
32483
|
+
"ui.chat.composer.secret_fill_unavailable": "Could not reach the secret field. Your text is kept.",
|
|
32484
|
+
"ui.chat.composer.secret_fill_multi": "This request asks for more than one secret. Your text is kept — choose the field in the asks panel."
|
|
32469
32485
|
};
|
|
32470
32486
|
const enUiChatComposerMedia = {
|
|
32471
32487
|
"ui.chat.composer_media.recording": "Recording",
|
|
@@ -34315,7 +34331,7 @@ const enUiSettingsAppearanceWindowGlass = {
|
|
|
34315
34331
|
"ui.settings.appearance.window_glass.coverage_sidebars": "Sidebars only",
|
|
34316
34332
|
"ui.settings.appearance.window_glass.coverage_full": "Full app",
|
|
34317
34333
|
"ui.settings.appearance.window_glass.intensity_label": "Frosted to see-through",
|
|
34318
|
-
"ui.settings.appearance.window_glass.intensity_description": "Left is frosted: mostly solid with a hint of the desktop. Right is see-through, as clear as every theme's text allows. Message blocks, inputs and code stay solid
|
|
34334
|
+
"ui.settings.appearance.window_glass.intensity_description": "Left is frosted: mostly solid with a hint of the desktop. Right is see-through, as clear as every theme's text allows. Message blocks and cards become tints, inputs keep a firm edge, and code, documents and images stay solid.",
|
|
34319
34335
|
"ui.settings.appearance.window_glass.material_label": "Material",
|
|
34320
34336
|
"ui.settings.appearance.window_glass.material_description": "The system material behind the app. It also sets how far see-through can go.",
|
|
34321
34337
|
"ui.settings.appearance.window_glass.material_window": "Window",
|
|
@@ -34683,6 +34699,27 @@ const enUiSettings = {
|
|
|
34683
34699
|
"ui.settings.profile.retry": "Retry",
|
|
34684
34700
|
"ui.settings.profile.retrying": "Retrying"
|
|
34685
34701
|
};
|
|
34702
|
+
const enUiSettingsModelDefaultEffort = {
|
|
34703
|
+
"ui.settings.model.default_effort.label": "Default effort",
|
|
34704
|
+
"ui.settings.model.default_effort.placeholder": "Select an effort level",
|
|
34705
|
+
"ui.settings.model.default_effort.busy": "Saving the default effort",
|
|
34706
|
+
"ui.settings.model.default_effort.model_default": "Model default",
|
|
34707
|
+
"ui.settings.model.default_effort.model_default_resolves": "Runs at {level} for this model.",
|
|
34708
|
+
"ui.settings.model.default_effort.helper_ready": "Applies to new conversations. Model default lets this model choose its own level.",
|
|
34709
|
+
"ui.settings.model.default_effort.loading": "Checking this model's effort levels…",
|
|
34710
|
+
"ui.settings.model.default_effort.error": "This model's effort levels could not be read.",
|
|
34711
|
+
"ui.settings.model.default_effort.no_model": "Select a model to choose its effort levels.",
|
|
34712
|
+
"ui.settings.model.default_effort.no_home": "Your home folder is not available yet, so effort levels cannot be read.",
|
|
34713
|
+
"ui.settings.model.default_effort.settings_loading": "Checking your saved default effort…",
|
|
34714
|
+
"ui.settings.model.default_effort.settings_error": "Your saved default effort could not be read.",
|
|
34715
|
+
"ui.settings.model.default_effort.unresolved": "This model has not reported its effort levels yet.",
|
|
34716
|
+
"ui.settings.model.default_effort.empty": "Effort is not adjustable on this model.",
|
|
34717
|
+
"ui.settings.model.default_effort.one_level": "This model offers one effort level: {level}.",
|
|
34718
|
+
"ui.settings.model.default_effort.one_level_sentinel": "This model has no effort level to choose: it always runs at its own default.",
|
|
34719
|
+
"ui.settings.model.default_effort.clamped": "{level} is not available on {model}. Using {resolved}.",
|
|
34720
|
+
"ui.settings.model.default_effort.clamped_unset": "{level} is not available on {model}. Using Model default.",
|
|
34721
|
+
"ui.settings.model.default_effort.save_failed": "Your default effort was not saved."
|
|
34722
|
+
};
|
|
34686
34723
|
const enUiSettingsModel = {
|
|
34687
34724
|
"ui.settings.model.backend_setting_combos.search_providers": "Search providers",
|
|
34688
34725
|
"ui.settings.model.backend_setting_combos.search_models": "Search models",
|
|
@@ -34717,6 +34754,10 @@ const enUiSettingsModel = {
|
|
|
34717
34754
|
"ui.settings.model.model_setting_options.provider_detail": "{provider}{aggregated, select, yes {, aggregated} other {}}{credential, select, signed_in {, signed in} missing {, no credential} other {}}",
|
|
34718
34755
|
"ui.settings.model.system_prompt.load_failed": "Failed to load system prompt: {reason}"
|
|
34719
34756
|
};
|
|
34757
|
+
const enUiSettingsModelProviderCallout = {
|
|
34758
|
+
"ui.settings.model.provider_callout.sentence": "Sign in with a provider to reach more models. Your existing Claude, ChatGPT or Radient subscription works here, so you don't need an API key. Connect one in ",
|
|
34759
|
+
"ui.settings.model.provider_callout.providers_link": "Providers"
|
|
34760
|
+
};
|
|
34720
34761
|
const enUiSettingsNavigation = {
|
|
34721
34762
|
"ui.settings.navigation.settings_page.the_local_operator_server_is_taking_longer_than_usual_to_answer_i": "The Local Operator server is taking longer than usual to answer. If it does not respond, you will be able to retry from here.",
|
|
34722
34763
|
"ui.settings.navigation.settings_page.your_settings_could_not_be_loaded": "Your settings could not be loaded.",
|
|
@@ -36279,7 +36320,9 @@ const bundledEnglish = {
|
|
|
36279
36320
|
...enUiSettingsConfiguration,
|
|
36280
36321
|
...enUiSettingsIntegrations,
|
|
36281
36322
|
...enUiSettings,
|
|
36323
|
+
...enUiSettingsModelDefaultEffort,
|
|
36282
36324
|
...enUiSettingsModel,
|
|
36325
|
+
...enUiSettingsModelProviderCallout,
|
|
36283
36326
|
...enUiSettingsNavigation,
|
|
36284
36327
|
...enUiSettingsShortcuts,
|
|
36285
36328
|
...enUiSettingsSpeech,
|
|
@@ -45556,6 +45599,50 @@ function miniViewErrorSurfaceHtml() {
|
|
|
45556
45599
|
</style></head>
|
|
45557
45600
|
<body><p><strong>Quick send could not open.</strong> Try the hotkey again, or restart Local Operator if it keeps failing.</p></body></html>`;
|
|
45558
45601
|
}
|
|
45602
|
+
function miniGlassPlan(input) {
|
|
45603
|
+
const { mechanism, active, applied, launchedGlassOn, material } = input;
|
|
45604
|
+
if (mechanism === "vibrancy") {
|
|
45605
|
+
if (active)
|
|
45606
|
+
return {
|
|
45607
|
+
applied: "vibrancy",
|
|
45608
|
+
steps: [{ kind: "transparent-ground" }, { kind: "vibrancy", material }]
|
|
45609
|
+
};
|
|
45610
|
+
if (applied === "vibrancy")
|
|
45611
|
+
return {
|
|
45612
|
+
applied: "none",
|
|
45613
|
+
steps: [
|
|
45614
|
+
{ kind: "vibrancy", material: null },
|
|
45615
|
+
{ kind: "opaque-ground" }
|
|
45616
|
+
]
|
|
45617
|
+
};
|
|
45618
|
+
return { applied, steps: [] };
|
|
45619
|
+
}
|
|
45620
|
+
if (mechanism === "background-material") {
|
|
45621
|
+
if (active && launchedGlassOn)
|
|
45622
|
+
return {
|
|
45623
|
+
applied: "background-material",
|
|
45624
|
+
steps: [
|
|
45625
|
+
{ kind: "transparent-ground" },
|
|
45626
|
+
{ kind: "background-material", material }
|
|
45627
|
+
]
|
|
45628
|
+
};
|
|
45629
|
+
if (!active && applied === "background-material")
|
|
45630
|
+
return {
|
|
45631
|
+
applied: "none",
|
|
45632
|
+
steps: [
|
|
45633
|
+
{ kind: "background-material", material: null },
|
|
45634
|
+
{ kind: "opaque-ground" }
|
|
45635
|
+
]
|
|
45636
|
+
};
|
|
45637
|
+
}
|
|
45638
|
+
return { applied, steps: [] };
|
|
45639
|
+
}
|
|
45640
|
+
function miniDocumentState(state2, launchedGlassOn) {
|
|
45641
|
+
return {
|
|
45642
|
+
...state2,
|
|
45643
|
+
restartRequired: !state2.capability.liveToggle && state2.active !== launchedGlassOn
|
|
45644
|
+
};
|
|
45645
|
+
}
|
|
45559
45646
|
function createMiniView(options) {
|
|
45560
45647
|
const window = new electron.BrowserWindow({
|
|
45561
45648
|
width: MINI_VIEW_WIDTH,
|
|
@@ -45569,8 +45656,18 @@ function createMiniView(options) {
|
|
|
45569
45656
|
*/
|
|
45570
45657
|
useContentSize: true,
|
|
45571
45658
|
show: false,
|
|
45572
|
-
/*
|
|
45573
|
-
|
|
45659
|
+
/*
|
|
45660
|
+
* The ground under an as-yet-unpainted document, WITH the glass options in
|
|
45661
|
+
* the one order that keeps default-off identical: the opaque ground first,
|
|
45662
|
+
* the glass after it, so only an ACTIVE glass overrides it
|
|
45663
|
+
* (`groundWithGlass`'s contract).
|
|
45664
|
+
*/
|
|
45665
|
+
...groundWithGlass(
|
|
45666
|
+
MINI_VIEW_GROUND,
|
|
45667
|
+
options.glass.settings,
|
|
45668
|
+
options.glass.capability,
|
|
45669
|
+
process.platform
|
|
45670
|
+
),
|
|
45574
45671
|
// A composer that floats over other apps carries no frame of its own:
|
|
45575
45672
|
// the app's own rows are the entire surface, and the one sanctioned
|
|
45576
45673
|
// elevation step is the card's ground.
|
|
@@ -45611,6 +45708,12 @@ function createMiniView(options) {
|
|
|
45611
45708
|
*/
|
|
45612
45709
|
additionalArguments: [
|
|
45613
45710
|
windowChromeArgumentFor(process.platform, options.chromeMode),
|
|
45711
|
+
/*
|
|
45712
|
+
* THE FIRST-FRAME GLASS FACT, the same entry the main window carries:
|
|
45713
|
+
* without it the popout's first paint is the opaque card and the
|
|
45714
|
+
* material arrives late as a visible jump.
|
|
45715
|
+
*/
|
|
45716
|
+
windowGlassArgument(options.glass.state, options.glass.scheme),
|
|
45614
45717
|
telemetryArgument(false)
|
|
45615
45718
|
]
|
|
45616
45719
|
}
|
|
@@ -45618,6 +45721,53 @@ function createMiniView(options) {
|
|
|
45618
45721
|
if (process.platform === "darwin") {
|
|
45619
45722
|
window.setVisibleOnAllWorkspaces(true, { visibleOnFullScreen: true });
|
|
45620
45723
|
}
|
|
45724
|
+
const launchedGlassOn = glassIsActive(
|
|
45725
|
+
options.glass.settings,
|
|
45726
|
+
options.glass.capability
|
|
45727
|
+
);
|
|
45728
|
+
let appliedMechanism = launchedGlassOn ? options.glass.capability.mechanism : "none";
|
|
45729
|
+
const applyGlassState = (state2) => {
|
|
45730
|
+
if (window.isDestroyed()) return;
|
|
45731
|
+
const active = state2.active && state2.capability.mechanism !== "none";
|
|
45732
|
+
const plan = miniGlassPlan({
|
|
45733
|
+
mechanism: state2.capability.mechanism,
|
|
45734
|
+
active,
|
|
45735
|
+
applied: appliedMechanism,
|
|
45736
|
+
launchedGlassOn,
|
|
45737
|
+
material: state2.settings.material
|
|
45738
|
+
});
|
|
45739
|
+
try {
|
|
45740
|
+
for (const step of plan.steps) {
|
|
45741
|
+
switch (step.kind) {
|
|
45742
|
+
case "transparent-ground":
|
|
45743
|
+
window.setBackgroundColor(GLASS_TRANSPARENT);
|
|
45744
|
+
break;
|
|
45745
|
+
case "vibrancy":
|
|
45746
|
+
window.setVibrancy(
|
|
45747
|
+
step.material === null ? null : macVibrancyFor(step.material)
|
|
45748
|
+
);
|
|
45749
|
+
break;
|
|
45750
|
+
case "background-material":
|
|
45751
|
+
window.setBackgroundMaterial(
|
|
45752
|
+
step.material === null ? "none" : winMaterialFor(step.material)
|
|
45753
|
+
);
|
|
45754
|
+
break;
|
|
45755
|
+
case "opaque-ground":
|
|
45756
|
+
window.setBackgroundColor(MINI_VIEW_GROUND);
|
|
45757
|
+
break;
|
|
45758
|
+
}
|
|
45759
|
+
}
|
|
45760
|
+
appliedMechanism = plan.applied;
|
|
45761
|
+
} catch (error) {
|
|
45762
|
+
options.report?.(
|
|
45763
|
+
`[mini-view] applying the window glass was refused (${String(error)}) - the popout keeps its previous look`
|
|
45764
|
+
);
|
|
45765
|
+
}
|
|
45766
|
+
window.webContents.send(
|
|
45767
|
+
WINDOW_GLASS_STATE_CHANNEL,
|
|
45768
|
+
miniDocumentState(state2, launchedGlassOn)
|
|
45769
|
+
);
|
|
45770
|
+
};
|
|
45621
45771
|
let paintedForLoad = false;
|
|
45622
45772
|
let paintTimer = null;
|
|
45623
45773
|
let paintWaiters = [];
|
|
@@ -45814,7 +45964,7 @@ function createMiniView(options) {
|
|
|
45814
45964
|
}
|
|
45815
45965
|
if (!window.isDestroyed()) window.destroy();
|
|
45816
45966
|
}
|
|
45817
|
-
return { window, toggle, hide, dispose };
|
|
45967
|
+
return { window, toggle, hide, dispose, applyGlassState };
|
|
45818
45968
|
}
|
|
45819
45969
|
const PALETTE_DOOR_CHANNELS = {
|
|
45820
45970
|
everything: "toggle-command-palette",
|
|
@@ -53845,8 +53995,10 @@ function attachWindowGlass(options) {
|
|
|
53845
53995
|
);
|
|
53846
53996
|
};
|
|
53847
53997
|
const push2 = () => {
|
|
53848
|
-
|
|
53849
|
-
window.
|
|
53998
|
+
const state2 = current();
|
|
53999
|
+
if (!window.isDestroyed())
|
|
54000
|
+
window.webContents.send(WINDOW_GLASS_STATE_CHANNEL, state2);
|
|
54001
|
+
options.onState?.(state2);
|
|
53850
54002
|
};
|
|
53851
54003
|
const fromOwnWindow = (event) => event.sender === window.webContents;
|
|
53852
54004
|
electron.ipcMain.handle(
|
|
@@ -54288,7 +54440,8 @@ function attachWindowSurface(options) {
|
|
|
54288
54440
|
initial: options.glass,
|
|
54289
54441
|
userDataDir: options.userDataDir,
|
|
54290
54442
|
restoreGround: () => chromeController?.sync(),
|
|
54291
|
-
log: options.log
|
|
54443
|
+
log: options.log,
|
|
54444
|
+
onState: options.onGlassState
|
|
54292
54445
|
});
|
|
54293
54446
|
chromeController = attachWindowChrome({
|
|
54294
54447
|
...options.chrome,
|
|
@@ -54687,11 +54840,16 @@ function createWindow(initialSession = null, openCatalogue = false, request = ow
|
|
|
54687
54840
|
* over it when it is active. Without a ground Electron's default is `#FFF`, so
|
|
54688
54841
|
* every launch on a dark palette opened with a white flash - the same defect
|
|
54689
54842
|
* `INSTALL_WINDOW_CANVAS` fixed for the installer window. The palette ground
|
|
54690
|
-
* comes first and the glass overrides it only when ACTIVE; inactive
|
|
54691
|
-
*
|
|
54692
|
-
* `scripts/window-glass.test.mjs`).
|
|
54843
|
+
* comes first and the glass overrides it only when ACTIVE; inactive keeps that
|
|
54844
|
+
* ground on every platform and darwin adds only the inert `visualEffectState`
|
|
54845
|
+
* above (`groundWithGlass`, pinned by `scripts/window-glass.test.mjs`).
|
|
54693
54846
|
*/
|
|
54694
|
-
...groundWithGlass(
|
|
54847
|
+
...groundWithGlass(
|
|
54848
|
+
chrome.colors.ground,
|
|
54849
|
+
glass.settings,
|
|
54850
|
+
glass.capability,
|
|
54851
|
+
process.platform
|
|
54852
|
+
),
|
|
54695
54853
|
width: windowLaunch.width,
|
|
54696
54854
|
height: windowLaunch.height,
|
|
54697
54855
|
// The layout is verified down to 800x600 and not below: the app rail,
|
|
@@ -54780,7 +54938,15 @@ function createWindow(initialSession = null, openCatalogue = false, request = ow
|
|
|
54780
54938
|
headless: windowLaunch.mode === "headless",
|
|
54781
54939
|
log: (line) => logger.info(line, LogFileType.BACKEND)
|
|
54782
54940
|
},
|
|
54783
|
-
log: (line) => logger.info(line, LogFileType.BACKEND)
|
|
54941
|
+
log: (line) => logger.info(line, LogFileType.BACKEND),
|
|
54942
|
+
/*
|
|
54943
|
+
* EVERY GLASS STATE THIS WINDOW PAINTS, FOR THE POPOUT: the mini view is a
|
|
54944
|
+
* second BrowserWindow on the same material and its document has no channel
|
|
54945
|
+
* of its own (it must not own the setting). Forwarded here rather than
|
|
54946
|
+
* broadcast from the controller so the popout's window, not "every window",
|
|
54947
|
+
* is the recipient.
|
|
54948
|
+
*/
|
|
54949
|
+
onGlassState: (state2) => miniView?.applyGlassState(state2)
|
|
54784
54950
|
});
|
|
54785
54951
|
mainWindow2.on("closed", () => surface.chrome.dispose());
|
|
54786
54952
|
mainWindow2.on("closed", () => surface.glass.dispose());
|
|
@@ -55352,6 +55518,15 @@ electron.app.whenReady().then(async () => {
|
|
|
55352
55518
|
url: miniViewUrlFor(rendererUrl),
|
|
55353
55519
|
preloadPath: path$1.join(__dirname, "../preload/index.js"),
|
|
55354
55520
|
show: windowLaunch.show,
|
|
55521
|
+
/*
|
|
55522
|
+
* The launch's window-glass resolution: the popout is a floating HUD
|
|
55523
|
+
* on the window's material, and it must be BUILT with it (a Windows
|
|
55524
|
+
* material cannot be added to a live window). Resolved at this point,
|
|
55525
|
+
* before the main window exists, from the same persisted file.
|
|
55526
|
+
*/
|
|
55527
|
+
glass: resolveLaunchWindowGlass({
|
|
55528
|
+
userDataDir: electron.app.getPath("userData")
|
|
55529
|
+
}),
|
|
55355
55530
|
/*
|
|
55356
55531
|
* The launch's chrome facts, resolved through the same function the
|
|
55357
55532
|
* main window called — read here rather than threaded through
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as o,c as b,g as v,k as O,h as P,j as p,l as w,m as A,n as x,t as c,o as N}from"./_baseUniq-
|
|
1
|
+
import{e as o,c as b,g as v,k as O,h as P,j as p,l as w,m as A,n as x,t as c,o as N}from"./_baseUniq-hdy9kmQQ.js";import{as as g,aa as y,at as E,au as F,av as M,aw as I,ax as _,ay as $,az as B,aA as T}from"./mermaid.core-kSHzKq9G.js";var S=/\s/;function z(n){for(var r=n.length;r--&&S.test(n.charAt(r)););return r}var G=/^\s+/;function H(n){return n&&n.slice(0,z(n)+1).replace(G,"")}var m=NaN,L=/^[-+]0x[0-9a-f]+$/i,R=/^0b[01]+$/i,q=/^0o[0-7]+$/i,C=parseInt;function K(n){if(typeof n=="number")return n;if(o(n))return m;if(g(n)){var r=typeof n.valueOf=="function"?n.valueOf():n;n=g(r)?r+"":r}if(typeof n!="string")return n===0?n:+n;n=H(n);var t=R.test(n);return t||q.test(n)?C(n.slice(2),t?2:8):L.test(n)?m:+n}var W=1/0,X=17976931348623157e292;function Y(n){if(!n)return n===0?n:0;if(n=K(n),n===W||n===-1/0){var r=n<0?-1:1;return r*X}return n===n?n:0}function D(n){var r=Y(n),t=r%1;return r===r?t?r-t:r:0}function fn(n){var r=n==null?0:n.length;return r?b(n):[]}var l=Object.prototype,J=l.hasOwnProperty,dn=y(function(n,r){n=Object(n);var t=-1,e=r.length,a=e>2?r[2]:void 0;for(a&&E(r[0],r[1],a)&&(e=1);++t<e;)for(var f=r[t],i=F(f),s=-1,d=i.length;++s<d;){var u=i[s],h=n[u];(h===void 0||M(h,l[u])&&!J.call(n,u))&&(n[u]=f[u])}return n});function un(n){var r=n==null?0:n.length;return r?n[r-1]:void 0}function Q(n){return function(r,t,e){var a=Object(r);if(!I(r)){var f=v(t);r=O(r),t=function(s){return f(a[s],s,a)}}var i=n(r,t,e);return i>-1?a[f?r[i]:i]:void 0}}var U=Math.max;function Z(n,r,t){var e=n==null?0:n.length;if(!e)return-1;var a=t==null?0:D(t);return a<0&&(a=U(e+a,0)),P(n,v(r),a)}var hn=Q(Z);function V(n,r){var t=-1,e=I(n)?Array(n.length):[];return p(n,function(a,f,i){e[++t]=r(a,f,i)}),e}function gn(n,r){var t=_(n)?w:V;return t(n,v(r))}var j=Object.prototype,k=j.hasOwnProperty;function nn(n,r){return n!=null&&k.call(n,r)}function vn(n,r){return n!=null&&A(n,r,nn)}function rn(n,r){return n<r}function tn(n,r,t){for(var e=-1,a=n.length;++e<a;){var f=n[e],i=r(f);if(i!=null&&(s===void 0?i===i&&!o(i):t(i,s)))var s=i,d=f}return d}function mn(n){return n&&n.length?tn(n,$,rn):void 0}function an(n,r,t,e){if(!g(n))return n;r=x(r,n);for(var a=-1,f=r.length,i=f-1,s=n;s!=null&&++a<f;){var d=c(r[a]),u=t;if(d==="__proto__"||d==="constructor"||d==="prototype")return n;if(a!=i){var h=s[d];u=void 0,u===void 0&&(u=g(h)?h:B(r[a+1])?[]:{})}T(s,d,u),s=s[d]}return n}function on(n,r,t){for(var e=-1,a=r.length,f={};++e<a;){var i=r[e],s=N(n,i);t(s,i)&&an(f,x(i,n),s)}return f}export{rn as a,tn as b,V as c,on as d,mn as e,fn as f,hn as g,vn as h,dn as i,D as j,un as l,gn as m,Y as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{aH as S,aI as Rn,ax as T,aJ as w,aK as xn,aL as Mn,aw as sn,aM as mn,aN as un,aO as x,au as U,aP as Cn,aQ as on,aR as Fn,aS as E,aF as gn,aT as R,as as ln,aU as Dn,aV as D,aW as Gn,aX as Un,aY as _,aA as Nn,aZ as Bn,av as Kn,a_ as X,a$ as Hn,b0 as jn,az as Yn,ay as cn,aD as Zn,b1 as m}from"./mermaid.core-TBXZ6m8l.js";var qn="[object Symbol]";function N(n){return typeof n=="symbol"||S(n)&&Rn(n)==qn}function dn(n,r){for(var e=-1,t=n==null?0:n.length,a=Array(t);++e<t;)a[e]=r(n[e],e,n);return a}var J=w?w.prototype:void 0,Q=J?J.toString:void 0;function pn(n){if(typeof n=="string")return n;if(T(n))return dn(n,pn)+"";if(N(n))return Q?Q.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function Xn(){}function An(n,r){for(var e=-1,t=n==null?0:n.length;++e<t&&r(n[e],e,n)!==!1;);return n}function Jn(n,r,e,t){for(var a=n.length,i=e+-1;++i<a;)if(r(n[i],i,n))return i;return-1}function Qn(n){return n!==n}function Wn(n,r,e){for(var t=e-1,a=n.length;++t<a;)if(n[t]===r)return t;return-1}function zn(n,r,e){return r===r?Wn(n,r,e):Jn(n,Qn,e)}function Vn(n,r){var e=n==null?0:n.length;return!!e&&zn(n,r,0)>-1}function $(n){return sn(n)?xn(n):Mn(n)}var kn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,nr=/^\w*$/;function B(n,r){if(T(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||N(n)?!0:nr.test(n)||!kn.test(n)||r!=null&&n in Object(r)}var rr=500;function er(n){var r=mn(n,function(t){return e.size===rr&&e.clear(),t}),e=r.cache;return r}var tr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ir=/\\(\\)?/g,ar=er(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(tr,function(e,t,a,i){r.push(a?i.replace(ir,"$1"):t||e)}),r});function fr(n){return n==null?"":pn(n)}function yn(n,r){return T(n)?n:B(n,r)?[n]:ar(fr(n))}function M(n){if(typeof n=="string"||N(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function bn(n,r){r=yn(r,n);for(var e=0,t=r.length;n!=null&&e<t;)n=n[M(r[e++])];return e&&e==t?n:void 0}function sr(n,r,e){var t=n==null?void 0:bn(n,r);return t===void 0?e:t}function K(n,r){for(var e=-1,t=r.length,a=n.length;++e<t;)n[a+e]=r[e];return n}var W=w?w.isConcatSpreadable:void 0;function ur(n){return T(n)||un(n)||!!(W&&n&&n[W])}function Ot(n,r,e,t,a){var i=-1,f=n.length;for(e||(e=ur),a||(a=[]);++i<f;){var s=n[i];e(s)?K(a,s):t||(a[a.length]=s)}return a}function or(n,r,e,t){var a=-1,i=n==null?0:n.length;for(t&&i&&(e=n[++a]);++a<i;)e=r(e,n[a],a,n);return e}function gr(n,r){return n&&x(r,$(r),n)}function lr(n,r){return n&&x(r,U(r),n)}function Tn(n,r){for(var e=-1,t=n==null?0:n.length,a=0,i=[];++e<t;){var f=n[e];r(f,e,n)&&(i[a++]=f)}return i}function hn(){return[]}var cr=Object.prototype,dr=cr.propertyIsEnumerable,z=Object.getOwnPropertySymbols,H=z?function(n){return n==null?[]:(n=Object(n),Tn(z(n),function(r){return dr.call(n,r)}))}:hn;function pr(n,r){return x(n,H(n),r)}var Ar=Object.getOwnPropertySymbols,wn=Ar?function(n){for(var r=[];n;)K(r,H(n)),n=Cn(n);return r}:hn;function yr(n,r){return x(n,wn(n),r)}function On(n,r,e){var t=r(n);return T(n)?t:K(t,e(n))}function G(n){return On(n,$,H)}function br(n){return On(n,U,wn)}var Tr=Object.prototype,hr=Tr.hasOwnProperty;function wr(n){var r=n.length,e=new n.constructor(r);return r&&typeof n[0]=="string"&&hr.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Or(n,r){var e=r?on(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}var $r=/\w*$/;function _r(n){var r=new n.constructor(n.source,$r.exec(n));return r.lastIndex=n.lastIndex,r}var V=w?w.prototype:void 0,k=V?V.valueOf:void 0;function Sr(n){return k?Object(k.call(n)):{}}var Er="[object Boolean]",Ir="[object Date]",Pr="[object Map]",vr="[object Number]",Lr="[object RegExp]",Rr="[object Set]",xr="[object String]",Mr="[object Symbol]",mr="[object ArrayBuffer]",Cr="[object DataView]",Fr="[object Float32Array]",Dr="[object Float64Array]",Gr="[object Int8Array]",Ur="[object Int16Array]",Nr="[object Int32Array]",Br="[object Uint8Array]",Kr="[object Uint8ClampedArray]",Hr="[object Uint16Array]",jr="[object Uint32Array]";function Yr(n,r,e){var t=n.constructor;switch(r){case mr:return on(n);case Er:case Ir:return new t(+n);case Cr:return Or(n,e);case Fr:case Dr:case Gr:case Ur:case Nr:case Br:case Kr:case Hr:case jr:return Fn(n,e);case Pr:return new t;case vr:case xr:return new t(n);case Lr:return _r(n);case Rr:return new t;case Mr:return Sr(n)}}var Zr="[object Map]";function qr(n){return S(n)&&E(n)==Zr}var nn=R&&R.isMap,Xr=nn?gn(nn):qr,Jr="[object Set]";function Qr(n){return S(n)&&E(n)==Jr}var rn=R&&R.isSet,Wr=rn?gn(rn):Qr,zr=1,Vr=2,kr=4,$n="[object Arguments]",ne="[object Array]",re="[object Boolean]",ee="[object Date]",te="[object Error]",_n="[object Function]",ie="[object GeneratorFunction]",ae="[object Map]",fe="[object Number]",Sn="[object Object]",se="[object RegExp]",ue="[object Set]",oe="[object String]",ge="[object Symbol]",le="[object WeakMap]",ce="[object ArrayBuffer]",de="[object DataView]",pe="[object Float32Array]",Ae="[object Float64Array]",ye="[object Int8Array]",be="[object Int16Array]",Te="[object Int32Array]",he="[object Uint8Array]",we="[object Uint8ClampedArray]",Oe="[object Uint16Array]",$e="[object Uint32Array]",g={};g[$n]=g[ne]=g[ce]=g[de]=g[re]=g[ee]=g[pe]=g[Ae]=g[ye]=g[be]=g[Te]=g[ae]=g[fe]=g[Sn]=g[se]=g[ue]=g[oe]=g[ge]=g[he]=g[we]=g[Oe]=g[$e]=!0;g[te]=g[_n]=g[le]=!1;function C(n,r,e,t,a,i){var f,s=r&zr,u=r&Vr,d=r&kr;if(f!==void 0)return f;if(!ln(n))return n;var l=T(n);if(l){if(f=wr(n),!s)return Dn(n,f)}else{var o=E(n),c=o==_n||o==ie;if(D(n))return Gn(n,s);if(o==Sn||o==$n||c&&!a){if(f=u||c?{}:Un(n),!s)return u?yr(n,lr(f,n)):pr(n,gr(f,n))}else{if(!g[o])return a?n:{};f=Yr(n,o,s)}}i||(i=new _);var h=i.get(n);if(h)return h;i.set(n,f),Wr(n)?n.forEach(function(p){f.add(C(p,r,e,p,n,i))}):Xr(n)&&n.forEach(function(p,A){f.set(A,C(p,r,e,A,n,i))});var y=d?u?br:G:u?U:$,b=l?void 0:y(n);return An(b||n,function(p,A){b&&(A=p,p=n[A]),Nn(f,A,C(p,r,e,A,n,i))}),f}var _e="__lodash_hash_undefined__";function Se(n){return this.__data__.set(n,_e),this}function Ee(n){return this.__data__.has(n)}function I(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new Bn;++r<e;)this.add(n[r])}I.prototype.add=I.prototype.push=Se;I.prototype.has=Ee;function Ie(n,r){for(var e=-1,t=n==null?0:n.length;++e<t;)if(r(n[e],e,n))return!0;return!1}function En(n,r){return n.has(r)}var Pe=1,ve=2;function In(n,r,e,t,a,i){var f=e&Pe,s=n.length,u=r.length;if(s!=u&&!(f&&u>s))return!1;var d=i.get(n),l=i.get(r);if(d&&l)return d==r&&l==n;var o=-1,c=!0,h=e&ve?new I:void 0;for(i.set(n,r),i.set(r,n);++o<s;){var y=n[o],b=r[o];if(t)var p=f?t(b,y,o,r,n,i):t(y,b,o,n,r,i);if(p!==void 0){if(p)continue;c=!1;break}if(h){if(!Ie(r,function(A,O){if(!En(h,O)&&(y===A||a(y,A,e,t,i)))return h.push(O)})){c=!1;break}}else if(!(y===b||a(y,b,e,t,i))){c=!1;break}}return i.delete(n),i.delete(r),c}function Le(n){var r=-1,e=Array(n.size);return n.forEach(function(t,a){e[++r]=[a,t]}),e}function j(n){var r=-1,e=Array(n.size);return n.forEach(function(t){e[++r]=t}),e}var Re=1,xe=2,Me="[object Boolean]",me="[object Date]",Ce="[object Error]",Fe="[object Map]",De="[object Number]",Ge="[object RegExp]",Ue="[object Set]",Ne="[object String]",Be="[object Symbol]",Ke="[object ArrayBuffer]",He="[object DataView]",en=w?w.prototype:void 0,F=en?en.valueOf:void 0;function je(n,r,e,t,a,i,f){switch(e){case He:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case Ke:return!(n.byteLength!=r.byteLength||!i(new X(n),new X(r)));case Me:case me:case De:return Kn(+n,+r);case Ce:return n.name==r.name&&n.message==r.message;case Ge:case Ne:return n==r+"";case Fe:var s=Le;case Ue:var u=tℜif(s||(s=j),n.size!=r.size&&!u)return!1;var d=f.get(n);if(d)return d==r;t|=xe,f.set(n,r);var l=In(s(n),s(r),t,a,i,f);return f.delete(n),l;case Be:if(F)return F.call(n)==F.call(r)}return!1}var Ye=1,Ze=Object.prototype,qe=Ze.hasOwnProperty;function Xe(n,r,e,t,a,i){var f=e&Ye,s=G(n),u=s.length,d=G(r),l=d.length;if(u!=l&&!f)return!1;for(var o=u;o--;){var c=s[o];if(!(f?c in r:qe.call(r,c)))return!1}var h=i.get(n),y=i.get(r);if(h&&y)return h==r&&y==n;var b=!0;i.set(n,r),i.set(r,n);for(var p=f;++o<u;){c=s[o];var A=n[c],O=r[c];if(t)var q=f?t(O,A,c,r,n,i):t(A,O,c,n,r,i);if(!(q===void 0?A===O||a(A,O,e,t,i):q)){b=!1;break}p||(p=c=="constructor")}if(b&&!p){var P=n.constructor,v=r.constructor;P!=v&&"constructor"in n&&"constructor"in r&&!(typeof P=="function"&&P instanceof P&&typeof v=="function"&&v instanceof v)&&(b=!1)}return i.delete(n),i.delete(r),b}var Je=1,tn="[object Arguments]",an="[object Array]",L="[object Object]",Qe=Object.prototype,fn=Qe.hasOwnProperty;function We(n,r,e,t,a,i){var f=T(n),s=T(r),u=f?an:E(n),d=s?an:E(r);u=u==tn?L:u,d=d==tn?L:d;var l=u==L,o=d==L,c=u==d;if(c&&D(n)){if(!D(r))return!1;f=!0,l=!1}if(c&&!l)return i||(i=new _),f||Hn(n)?In(n,r,e,t,a,i):je(n,r,u,e,t,a,i);if(!(e&Je)){var h=l&&fn.call(n,"__wrapped__"),y=o&&fn.call(r,"__wrapped__");if(h||y){var b=h?n.value():n,p=y?r.value():r;return i||(i=new _),a(b,p,e,t,i)}}return c?(i||(i=new _),Xe(n,r,e,t,a,i)):!1}function Y(n,r,e,t,a){return n===r?!0:n==null||r==null||!S(n)&&!S(r)?n!==n&&r!==r:We(n,r,e,t,Y,a)}var ze=1,Ve=2;function ke(n,r,e,t){var a=e.length,i=a;if(n==null)return!i;for(n=Object(n);a--;){var f=e[a];if(f[2]?f[1]!==n[f[0]]:!(f[0]in n))return!1}for(;++a<i;){f=e[a];var s=f[0],u=n[s],d=f[1];if(f[2]){if(u===void 0&&!(s in n))return!1}else{var l=new _,o;if(!(o===void 0?Y(d,u,ze|Ve,t,l):o))return!1}}return!0}function Pn(n){return n===n&&!ln(n)}function nt(n){for(var r=$(n),e=r.length;e--;){var t=r[e],a=n[t];r[e]=[t,a,Pn(a)]}return r}function vn(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function rt(n){var r=nt(n);return r.length==1&&r[0][2]?vn(r[0][0],r[0][1]):function(e){return e===n||ke(e,n,r)}}function et(n,r){return n!=null&&r in Object(n)}function tt(n,r,e){r=yn(r,n);for(var t=-1,a=r.length,i=!1;++t<a;){var f=M(r[t]);if(!(i=n!=null&&e(n,f)))break;n=n[f]}return i||++t!=a?i:(a=n==null?0:n.length,!!a&&jn(a)&&Yn(f,a)&&(T(n)||un(n)))}function it(n,r){return n!=null&&tt(n,r,et)}var at=1,ft=2;function st(n,r){return B(n)&&Pn(r)?vn(M(n),r):function(e){var t=sr(e,n);return t===void 0&&t===r?it(e,n):Y(r,t,at|ft)}}function ut(n){return function(r){return r?.[n]}}function ot(n){return function(r){return bn(r,n)}}function gt(n){return B(n)?ut(M(n)):ot(n)}function Ln(n){return typeof n=="function"?n:n==null?cn:typeof n=="object"?T(n)?st(n[0],n[1]):rt(n):gt(n)}function lt(n,r){return n&&Zn(n,r,$)}function ct(n,r){return function(e,t){if(e==null)return e;if(!sn(e))return n(e,t);for(var a=e.length,i=-1,f=Object(e);++i<a&&t(f[i],i,f)!==!1;);return e}}var Z=ct(lt);function dt(n){return typeof n=="function"?n:cn}function $t(n,r){var e=T(n)?An:Z;return e(n,dt(r))}function pt(n,r){var e=[];return Z(n,function(t,a,i){r(t,a,i)&&e.push(t)}),e}function _t(n,r){var e=T(n)?Tn:pt;return e(n,Ln(r))}function At(n,r){return dn(r,function(e){return n[e]})}function St(n){return n==null?[]:At(n,$(n))}function Et(n){return n===void 0}function yt(n,r,e,t,a){return a(n,function(i,f,s){e=t?(t=!1,i):r(e,i,f,s)}),e}function It(n,r,e){var t=T(n)?or:yt,a=arguments.length<3;return t(n,Ln(r),e,a,Z)}var bt=1/0,Tt=m&&1/j(new m([,-0]))[1]==bt?function(n){return new m(n)}:Xn,ht=200;function Pt(n,r,e){var t=-1,a=Vn,i=n.length,f=!0,s=[],u=s;if(i>=ht){var d=r?null:Tt(n);if(d)return j(d);f=!1,a=En,u=new I}else u=r?[]:s;n:for(;++t<i;){var l=n[t],o=r?r(l):l;if(l=l!==0?l:0,f&&o===o){for(var c=u.length;c--;)if(u[c]===o)continue n;r&&u.push(o),s.push(l)}else a(u,o,e)||(u!==s&&u.push(o),s.push(l))}return s}export{Tn as A,pt as B,Ie as C,Xn as D,I as S,Pt as a,C as b,Ot as c,$t as d,N as e,_t as f,Ln as g,Jn as h,Et as i,Z as j,$ as k,dn as l,tt as m,yn as n,bn as o,dt as p,lt as q,It as r,it as s,M as t,fr as u,St as v,Vn as w,En as x,zn as y,br as z};
|
|
1
|
+
import{aH as S,aI as Rn,ax as T,aJ as w,aK as xn,aL as Mn,aw as sn,aM as mn,aN as un,aO as x,au as U,aP as Cn,aQ as on,aR as Fn,aS as E,aF as gn,aT as R,as as ln,aU as Dn,aV as D,aW as Gn,aX as Un,aY as _,aA as Nn,aZ as Bn,av as Kn,a_ as X,a$ as Hn,b0 as jn,az as Yn,ay as cn,aD as Zn,b1 as m}from"./mermaid.core-kSHzKq9G.js";var qn="[object Symbol]";function N(n){return typeof n=="symbol"||S(n)&&Rn(n)==qn}function dn(n,r){for(var e=-1,t=n==null?0:n.length,a=Array(t);++e<t;)a[e]=r(n[e],e,n);return a}var J=w?w.prototype:void 0,Q=J?J.toString:void 0;function pn(n){if(typeof n=="string")return n;if(T(n))return dn(n,pn)+"";if(N(n))return Q?Q.call(n):"";var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function Xn(){}function An(n,r){for(var e=-1,t=n==null?0:n.length;++e<t&&r(n[e],e,n)!==!1;);return n}function Jn(n,r,e,t){for(var a=n.length,i=e+-1;++i<a;)if(r(n[i],i,n))return i;return-1}function Qn(n){return n!==n}function Wn(n,r,e){for(var t=e-1,a=n.length;++t<a;)if(n[t]===r)return t;return-1}function zn(n,r,e){return r===r?Wn(n,r,e):Jn(n,Qn,e)}function Vn(n,r){var e=n==null?0:n.length;return!!e&&zn(n,r,0)>-1}function $(n){return sn(n)?xn(n):Mn(n)}var kn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,nr=/^\w*$/;function B(n,r){if(T(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||N(n)?!0:nr.test(n)||!kn.test(n)||r!=null&&n in Object(r)}var rr=500;function er(n){var r=mn(n,function(t){return e.size===rr&&e.clear(),t}),e=r.cache;return r}var tr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ir=/\\(\\)?/g,ar=er(function(n){var r=[];return n.charCodeAt(0)===46&&r.push(""),n.replace(tr,function(e,t,a,i){r.push(a?i.replace(ir,"$1"):t||e)}),r});function fr(n){return n==null?"":pn(n)}function yn(n,r){return T(n)?n:B(n,r)?[n]:ar(fr(n))}function M(n){if(typeof n=="string"||N(n))return n;var r=n+"";return r=="0"&&1/n==-1/0?"-0":r}function bn(n,r){r=yn(r,n);for(var e=0,t=r.length;n!=null&&e<t;)n=n[M(r[e++])];return e&&e==t?n:void 0}function sr(n,r,e){var t=n==null?void 0:bn(n,r);return t===void 0?e:t}function K(n,r){for(var e=-1,t=r.length,a=n.length;++e<t;)n[a+e]=r[e];return n}var W=w?w.isConcatSpreadable:void 0;function ur(n){return T(n)||un(n)||!!(W&&n&&n[W])}function Ot(n,r,e,t,a){var i=-1,f=n.length;for(e||(e=ur),a||(a=[]);++i<f;){var s=n[i];e(s)?K(a,s):t||(a[a.length]=s)}return a}function or(n,r,e,t){var a=-1,i=n==null?0:n.length;for(t&&i&&(e=n[++a]);++a<i;)e=r(e,n[a],a,n);return e}function gr(n,r){return n&&x(r,$(r),n)}function lr(n,r){return n&&x(r,U(r),n)}function Tn(n,r){for(var e=-1,t=n==null?0:n.length,a=0,i=[];++e<t;){var f=n[e];r(f,e,n)&&(i[a++]=f)}return i}function hn(){return[]}var cr=Object.prototype,dr=cr.propertyIsEnumerable,z=Object.getOwnPropertySymbols,H=z?function(n){return n==null?[]:(n=Object(n),Tn(z(n),function(r){return dr.call(n,r)}))}:hn;function pr(n,r){return x(n,H(n),r)}var Ar=Object.getOwnPropertySymbols,wn=Ar?function(n){for(var r=[];n;)K(r,H(n)),n=Cn(n);return r}:hn;function yr(n,r){return x(n,wn(n),r)}function On(n,r,e){var t=r(n);return T(n)?t:K(t,e(n))}function G(n){return On(n,$,H)}function br(n){return On(n,U,wn)}var Tr=Object.prototype,hr=Tr.hasOwnProperty;function wr(n){var r=n.length,e=new n.constructor(r);return r&&typeof n[0]=="string"&&hr.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Or(n,r){var e=r?on(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}var $r=/\w*$/;function _r(n){var r=new n.constructor(n.source,$r.exec(n));return r.lastIndex=n.lastIndex,r}var V=w?w.prototype:void 0,k=V?V.valueOf:void 0;function Sr(n){return k?Object(k.call(n)):{}}var Er="[object Boolean]",Ir="[object Date]",Pr="[object Map]",vr="[object Number]",Lr="[object RegExp]",Rr="[object Set]",xr="[object String]",Mr="[object Symbol]",mr="[object ArrayBuffer]",Cr="[object DataView]",Fr="[object Float32Array]",Dr="[object Float64Array]",Gr="[object Int8Array]",Ur="[object Int16Array]",Nr="[object Int32Array]",Br="[object Uint8Array]",Kr="[object Uint8ClampedArray]",Hr="[object Uint16Array]",jr="[object Uint32Array]";function Yr(n,r,e){var t=n.constructor;switch(r){case mr:return on(n);case Er:case Ir:return new t(+n);case Cr:return Or(n,e);case Fr:case Dr:case Gr:case Ur:case Nr:case Br:case Kr:case Hr:case jr:return Fn(n,e);case Pr:return new t;case vr:case xr:return new t(n);case Lr:return _r(n);case Rr:return new t;case Mr:return Sr(n)}}var Zr="[object Map]";function qr(n){return S(n)&&E(n)==Zr}var nn=R&&R.isMap,Xr=nn?gn(nn):qr,Jr="[object Set]";function Qr(n){return S(n)&&E(n)==Jr}var rn=R&&R.isSet,Wr=rn?gn(rn):Qr,zr=1,Vr=2,kr=4,$n="[object Arguments]",ne="[object Array]",re="[object Boolean]",ee="[object Date]",te="[object Error]",_n="[object Function]",ie="[object GeneratorFunction]",ae="[object Map]",fe="[object Number]",Sn="[object Object]",se="[object RegExp]",ue="[object Set]",oe="[object String]",ge="[object Symbol]",le="[object WeakMap]",ce="[object ArrayBuffer]",de="[object DataView]",pe="[object Float32Array]",Ae="[object Float64Array]",ye="[object Int8Array]",be="[object Int16Array]",Te="[object Int32Array]",he="[object Uint8Array]",we="[object Uint8ClampedArray]",Oe="[object Uint16Array]",$e="[object Uint32Array]",g={};g[$n]=g[ne]=g[ce]=g[de]=g[re]=g[ee]=g[pe]=g[Ae]=g[ye]=g[be]=g[Te]=g[ae]=g[fe]=g[Sn]=g[se]=g[ue]=g[oe]=g[ge]=g[he]=g[we]=g[Oe]=g[$e]=!0;g[te]=g[_n]=g[le]=!1;function C(n,r,e,t,a,i){var f,s=r&zr,u=r&Vr,d=r&kr;if(f!==void 0)return f;if(!ln(n))return n;var l=T(n);if(l){if(f=wr(n),!s)return Dn(n,f)}else{var o=E(n),c=o==_n||o==ie;if(D(n))return Gn(n,s);if(o==Sn||o==$n||c&&!a){if(f=u||c?{}:Un(n),!s)return u?yr(n,lr(f,n)):pr(n,gr(f,n))}else{if(!g[o])return a?n:{};f=Yr(n,o,s)}}i||(i=new _);var h=i.get(n);if(h)return h;i.set(n,f),Wr(n)?n.forEach(function(p){f.add(C(p,r,e,p,n,i))}):Xr(n)&&n.forEach(function(p,A){f.set(A,C(p,r,e,A,n,i))});var y=d?u?br:G:u?U:$,b=l?void 0:y(n);return An(b||n,function(p,A){b&&(A=p,p=n[A]),Nn(f,A,C(p,r,e,A,n,i))}),f}var _e="__lodash_hash_undefined__";function Se(n){return this.__data__.set(n,_e),this}function Ee(n){return this.__data__.has(n)}function I(n){var r=-1,e=n==null?0:n.length;for(this.__data__=new Bn;++r<e;)this.add(n[r])}I.prototype.add=I.prototype.push=Se;I.prototype.has=Ee;function Ie(n,r){for(var e=-1,t=n==null?0:n.length;++e<t;)if(r(n[e],e,n))return!0;return!1}function En(n,r){return n.has(r)}var Pe=1,ve=2;function In(n,r,e,t,a,i){var f=e&Pe,s=n.length,u=r.length;if(s!=u&&!(f&&u>s))return!1;var d=i.get(n),l=i.get(r);if(d&&l)return d==r&&l==n;var o=-1,c=!0,h=e&ve?new I:void 0;for(i.set(n,r),i.set(r,n);++o<s;){var y=n[o],b=r[o];if(t)var p=f?t(b,y,o,r,n,i):t(y,b,o,n,r,i);if(p!==void 0){if(p)continue;c=!1;break}if(h){if(!Ie(r,function(A,O){if(!En(h,O)&&(y===A||a(y,A,e,t,i)))return h.push(O)})){c=!1;break}}else if(!(y===b||a(y,b,e,t,i))){c=!1;break}}return i.delete(n),i.delete(r),c}function Le(n){var r=-1,e=Array(n.size);return n.forEach(function(t,a){e[++r]=[a,t]}),e}function j(n){var r=-1,e=Array(n.size);return n.forEach(function(t){e[++r]=t}),e}var Re=1,xe=2,Me="[object Boolean]",me="[object Date]",Ce="[object Error]",Fe="[object Map]",De="[object Number]",Ge="[object RegExp]",Ue="[object Set]",Ne="[object String]",Be="[object Symbol]",Ke="[object ArrayBuffer]",He="[object DataView]",en=w?w.prototype:void 0,F=en?en.valueOf:void 0;function je(n,r,e,t,a,i,f){switch(e){case He:if(n.byteLength!=r.byteLength||n.byteOffset!=r.byteOffset)return!1;n=n.buffer,r=r.buffer;case Ke:return!(n.byteLength!=r.byteLength||!i(new X(n),new X(r)));case Me:case me:case De:return Kn(+n,+r);case Ce:return n.name==r.name&&n.message==r.message;case Ge:case Ne:return n==r+"";case Fe:var s=Le;case Ue:var u=tℜif(s||(s=j),n.size!=r.size&&!u)return!1;var d=f.get(n);if(d)return d==r;t|=xe,f.set(n,r);var l=In(s(n),s(r),t,a,i,f);return f.delete(n),l;case Be:if(F)return F.call(n)==F.call(r)}return!1}var Ye=1,Ze=Object.prototype,qe=Ze.hasOwnProperty;function Xe(n,r,e,t,a,i){var f=e&Ye,s=G(n),u=s.length,d=G(r),l=d.length;if(u!=l&&!f)return!1;for(var o=u;o--;){var c=s[o];if(!(f?c in r:qe.call(r,c)))return!1}var h=i.get(n),y=i.get(r);if(h&&y)return h==r&&y==n;var b=!0;i.set(n,r),i.set(r,n);for(var p=f;++o<u;){c=s[o];var A=n[c],O=r[c];if(t)var q=f?t(O,A,c,r,n,i):t(A,O,c,n,r,i);if(!(q===void 0?A===O||a(A,O,e,t,i):q)){b=!1;break}p||(p=c=="constructor")}if(b&&!p){var P=n.constructor,v=r.constructor;P!=v&&"constructor"in n&&"constructor"in r&&!(typeof P=="function"&&P instanceof P&&typeof v=="function"&&v instanceof v)&&(b=!1)}return i.delete(n),i.delete(r),b}var Je=1,tn="[object Arguments]",an="[object Array]",L="[object Object]",Qe=Object.prototype,fn=Qe.hasOwnProperty;function We(n,r,e,t,a,i){var f=T(n),s=T(r),u=f?an:E(n),d=s?an:E(r);u=u==tn?L:u,d=d==tn?L:d;var l=u==L,o=d==L,c=u==d;if(c&&D(n)){if(!D(r))return!1;f=!0,l=!1}if(c&&!l)return i||(i=new _),f||Hn(n)?In(n,r,e,t,a,i):je(n,r,u,e,t,a,i);if(!(e&Je)){var h=l&&fn.call(n,"__wrapped__"),y=o&&fn.call(r,"__wrapped__");if(h||y){var b=h?n.value():n,p=y?r.value():r;return i||(i=new _),a(b,p,e,t,i)}}return c?(i||(i=new _),Xe(n,r,e,t,a,i)):!1}function Y(n,r,e,t,a){return n===r?!0:n==null||r==null||!S(n)&&!S(r)?n!==n&&r!==r:We(n,r,e,t,Y,a)}var ze=1,Ve=2;function ke(n,r,e,t){var a=e.length,i=a;if(n==null)return!i;for(n=Object(n);a--;){var f=e[a];if(f[2]?f[1]!==n[f[0]]:!(f[0]in n))return!1}for(;++a<i;){f=e[a];var s=f[0],u=n[s],d=f[1];if(f[2]){if(u===void 0&&!(s in n))return!1}else{var l=new _,o;if(!(o===void 0?Y(d,u,ze|Ve,t,l):o))return!1}}return!0}function Pn(n){return n===n&&!ln(n)}function nt(n){for(var r=$(n),e=r.length;e--;){var t=r[e],a=n[t];r[e]=[t,a,Pn(a)]}return r}function vn(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function rt(n){var r=nt(n);return r.length==1&&r[0][2]?vn(r[0][0],r[0][1]):function(e){return e===n||ke(e,n,r)}}function et(n,r){return n!=null&&r in Object(n)}function tt(n,r,e){r=yn(r,n);for(var t=-1,a=r.length,i=!1;++t<a;){var f=M(r[t]);if(!(i=n!=null&&e(n,f)))break;n=n[f]}return i||++t!=a?i:(a=n==null?0:n.length,!!a&&jn(a)&&Yn(f,a)&&(T(n)||un(n)))}function it(n,r){return n!=null&&tt(n,r,et)}var at=1,ft=2;function st(n,r){return B(n)&&Pn(r)?vn(M(n),r):function(e){var t=sr(e,n);return t===void 0&&t===r?it(e,n):Y(r,t,at|ft)}}function ut(n){return function(r){return r?.[n]}}function ot(n){return function(r){return bn(r,n)}}function gt(n){return B(n)?ut(M(n)):ot(n)}function Ln(n){return typeof n=="function"?n:n==null?cn:typeof n=="object"?T(n)?st(n[0],n[1]):rt(n):gt(n)}function lt(n,r){return n&&Zn(n,r,$)}function ct(n,r){return function(e,t){if(e==null)return e;if(!sn(e))return n(e,t);for(var a=e.length,i=-1,f=Object(e);++i<a&&t(f[i],i,f)!==!1;);return e}}var Z=ct(lt);function dt(n){return typeof n=="function"?n:cn}function $t(n,r){var e=T(n)?An:Z;return e(n,dt(r))}function pt(n,r){var e=[];return Z(n,function(t,a,i){r(t,a,i)&&e.push(t)}),e}function _t(n,r){var e=T(n)?Tn:pt;return e(n,Ln(r))}function At(n,r){return dn(r,function(e){return n[e]})}function St(n){return n==null?[]:At(n,$(n))}function Et(n){return n===void 0}function yt(n,r,e,t,a){return a(n,function(i,f,s){e=t?(t=!1,i):r(e,i,f,s)}),e}function It(n,r,e){var t=T(n)?or:yt,a=arguments.length<3;return t(n,Ln(r),e,a,Z)}var bt=1/0,Tt=m&&1/j(new m([,-0]))[1]==bt?function(n){return new m(n)}:Xn,ht=200;function Pt(n,r,e){var t=-1,a=Vn,i=n.length,f=!0,s=[],u=s;if(i>=ht){var d=r?null:Tt(n);if(d)return j(d);f=!1,a=En,u=new I}else u=r?[]:s;n:for(;++t<i;){var l=n[t],o=r?r(l):l;if(l=l!==0?l:0,f&&o===o){for(var c=u.length;c--;)if(u[c]===o)continue n;r&&u.push(o),s.push(l)}else a(u,o,e)||(u!==s&&u.push(o),s.push(l))}return s}export{Tn as A,pt as B,Ie as C,Xn as D,I as S,Pt as a,C as b,Ot as c,$t as d,N as e,_t as f,Ln as g,Jn as h,Et as i,Z as j,$ as k,dn as l,tt as m,yn as n,bn as o,dt as p,lt as q,It as r,it as s,M as t,fr as u,St as v,Vn as w,En as x,zn as y,br as z};
|
package/out/renderer/assets/{agent-details-page-Dbd7Qqbd.js → agent-details-page-CLbcLEwm.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{t as a,r as E,j as e,c as
|
|
1
|
+
import{t as a,r as E,j as e,c as J}from"./index-CsR1USrT.js";import{i as ge,a as fe}from"./publication-validation-CXXK8RMX.js";import{C as oe,u as O,B as C,aK as Q,a4 as $,aL as U,aM as le,aN as ce,aO as je,_ as be,aP as pe,aQ as ee,a3 as ye,aR as we,aS as ve}from"./conversation-input-sync-oIWpPfzj.js";import{c as Ne,u as Ce,L as ke,T as te,B as l,S as K,h as de,i as q,j as I,k as v,X as Ae,l as N,A as se,m as ae,n as ne}from"./error-boundary-BfL6ia-P.js";import{f as De,h as Se,u as _e,i as Te,a as Ee,b as Fe,c as Pe,O as Me,H as ze,A as Le,d as ie}from"./use-download-agent-mutation-CKVzPGPY.js";import{e as re}from"./en-US-CHJkXXr4.js";import{b as qe,c as Ie,u as Ke,d as Oe,g as Qe,e as Ue,f as Be}from"./use-memberships-query-BgAi_tHu.js";import{S as Re,e as He,A as We,f as Ye,g as $e}from"./index-CNvEPxPr.js";import"./ui-preferences-store-g6-xQ9NA.js";import"./book-open-yKrSTgbR.js";import"./console-mirror-D12eLWy7.js";/**
|
|
2
2
|
* @license lucide-react v0.507.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
5
5
|
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/const Ge=[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]],Je=Ne("message-circle",Ge);function Ve(t,o=Date.now()){return De(t,o,{locale:{...re,formatDistance(n,i,s){switch(n){case"xSeconds":return a("ui.hub.comments.age.seconds",{count:i});case"xMinutes":return a("ui.hub.comments.age.minutes",{count:i});case"xHours":return a("ui.hub.comments.age.hours",{count:i});case"xDays":return a("ui.hub.comments.age.days",{count:i});case"xMonths":return a("ui.hub.comments.age.months",{count:i});case"xYears":return a("ui.hub.comments.age.years",{count:i});default:return a("ui.hub.comments.age.fallback",{duration:re.formatDistance(n,i,s)})}}}})}const F={all:["agent-comments"],list:t=>[...F.all,"list",t]},Xe=({agentId:t,enabled:o=!0})=>oe({queryKey:F.list(t||"invalid"),queryFn:async()=>{if(!t)throw new Error("Agent ID is required to fetch comments.");return(await qe(t)).result},enabled:!!t&&o,staleTime:2*60*1e3,gcTime:5*60*1e3,refetchOnWindowFocus:!0}),Ze=()=>{const t=O(),{isAuthenticated:o}=C();return U({mutationFn:async n=>{const{agentId:i,data:s}=n;if(!o)throw new Error(a("ui.hub.comments.mutation.unauthorized"));return Ie(i,s)},onSuccess:(n,i)=>{t.invalidateQueries({queryKey:F.list(i.agentId)}),B(a("ui.hub.comments.mutation.posted"))},onError:n=>{$(a("ui.hub.comments.mutation.post_failed",{reason:n.message}))}})},et=()=>{const t=O(),{isAuthenticated:o}=C();return U({mutationFn:async n=>{const{agentId:i,commentId:s,data:c}=n;if(!o)throw new Error(a("ui.hub.comments.mutation.unauthorized"));return Ke(i,s,c)},onSuccess:(n,i)=>{t.invalidateQueries({queryKey:F.list(i.agentId)}),B(a("ui.hub.comments.mutation.updated"))},onError:n=>{$(a("ui.hub.comments.mutation.update_failed",{reason:n.message}))}})},tt=()=>{const t=O(),{isAuthenticated:o}=C();return U({mutationFn:async n=>{const{agentId:i,commentId:s}=n;if(!o)throw new Error(a("ui.hub.comments.mutation.unauthorized"));return Oe(i,s)},onSuccess:(n,i)=>{t.invalidateQueries({queryKey:F.list(i.agentId)}),B(a("ui.hub.comments.mutation.deleted"))},onError:n=>{$(a("ui.hub.comments.mutation.delete_failed",{reason:n.message}))}})},st=({agentId:t})=>{Ce();const{isAuthenticated:o,user:n}=C(),[i,s]=E.useState(""),[c,b]=E.useState(null),[x,k]=E.useState(""),{data:u,isLoading:p,error:A}=Xe({agentId:t}),M=u?.records??[],g=Ze(),D=et(),Q=tt(),S=async r=>{if(r.preventDefault(),!(!i.trim()||!o||!t))try{await g.mutateAsync({agentId:t,data:{text:i}}),s("")}catch(d){console.error("Submit comment error caught in component:",d)}},R=(r,d)=>{b(r),k(d)},m=()=>{b(null),k("")},y=async()=>{if(!(!c||!x.trim()||!o||!t))try{await D.mutateAsync({agentId:t,commentId:c,data:{text:x}}),m()}catch(r){console.error("Update comment error caught in component:",r)}},w=async r=>{if(!(!o||!t)&&window.confirm(a("ui.hub.comments.delete.confirm")))try{await Q.mutateAsync({agentId:t,commentId:r})}catch(d){console.error("Delete comment error caught in component:",d)}},H=r=>o&&n?.radientUser?.account?.id===r.account_id;return e.jsxs("div",{className:"mt-6",children:[e.jsx("h2",{className:"mb-4 font-semibold text-heading text-ink",children:a("ui.hub.comments.heading")}),o?e.jsxs("div",{className:"mb-4 flex flex-col gap-1.5",children:[e.jsxs(ke,{htmlFor:"new-comment",children:[e.jsx(Je,{size:14,"aria-hidden":"true"}),a("ui.hub.comments.form.label")]}),e.jsxs("form",{onSubmit:S,className:"flex flex-col gap-3",children:[e.jsx(te,{id:"new-comment",placeholder:a("ui.hub.comments.form.placeholder"),rows:3,value:i,onChange:r=>s(r.target.value),required:!0}),e.jsx(l,{type:"submit",variant:"primary",disabled:g.isPending||!i.trim(),className:"self-end",children:g.isPending?e.jsx(K,{size:"sm",label:a("ui.hub.comments.form.posting")}):a("ui.hub.comments.form.submit")})]})]}):e.jsx("p",{className:"mt-6 mb-4 text-body-sm text-ink-muted",children:a("ui.hub.comments.form.sign_in")}),e.jsx(de,{className:"my-6"}),p&&e.jsx("ul",{className:"flex flex-col",children:[...Array(3)].map((r,d)=>e.jsxs("li",{className:"flex gap-3 pb-6",children:[e.jsx(q,{children:e.jsx(I,{children:e.jsx(v,{className:"size-full"})})}),e.jsxs("div",{className:"flex w-full flex-col gap-1.5",children:[e.jsx(v,{className:"h-3.5 w-24"}),e.jsx(v,{className:"h-3 w-15"}),e.jsx(v,{className:"mt-2 h-3.5 w-full"}),e.jsx(v,{className:"h-3.5 w-4/5"})]})]},`skeleton-${d}`))}),A&&e.jsx("p",{role:"alert",className:"my-6 text-body-sm text-danger",children:a("ui.hub.comments.load_error",{reason:A.message})}),!p&&!A&&e.jsx("ul",{className:"flex flex-col gap-6",children:M.length===0?e.jsx("li",{className:"text-body-sm text-ink-muted",children:a("ui.hub.comments.empty")}):M.map(r=>c===r.id?e.jsxs("li",{className:"flex gap-3",children:[e.jsx(q,{children:e.jsx(I,{children:r.account_metadata?.name?.charAt(0).toUpperCase()||"?"})}),e.jsxs("div",{className:"flex w-full flex-col gap-2",children:[e.jsx(te,{rows:3,value:x,onChange:d=>k(d.target.value),autoFocus:!0,"aria-label":a("ui.hub.comments.edit.label")}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsxs(l,{variant:"secondary",size:"sm",onClick:m,children:[e.jsx(Ae,{}),a("ui.hub.comments.edit.cancel")]}),e.jsxs(l,{variant:"primary",size:"sm",onClick:y,disabled:D.isPending||!x.trim(),children:[D.isPending?e.jsx(K,{size:"xs",label:a("ui.hub.comments.edit.saving")}):e.jsx(Re,{}),a("ui.hub.comments.edit.save")]})]})]})]},r.id):e.jsxs("li",{className:"flex gap-3",children:[e.jsx(q,{children:e.jsx(I,{children:r.account_metadata?.name?.charAt(0).toUpperCase()||"?"})}),e.jsxs("div",{className:"w-full",children:[e.jsxs("div",{className:"flex w-full items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("p",{className:"font-medium text-body text-ink",children:r.account_metadata?.name||a("ui.hub.comments.author.unknown")}),e.jsx("p",{className:"text-ink-muted text-meta",children:Ve(new Date(r.created_at))})]}),H(r)&&e.jsxs("div",{className:"flex gap-0.5",children:[e.jsx(N,{content:a("ui.hub.comments.edit.label"),children:e.jsx(l,{variant:"ghost",size:"icon-sm",onClick:()=>R(r.id,r.text),disabled:!!c,"aria-label":a("ui.hub.comments.edit.label"),children:e.jsx(He,{})})}),e.jsx(N,{content:a("ui.hub.comments.delete.label"),children:e.jsx(l,{variant:"ghost",size:"icon-sm",onClick:()=>w(r.id),disabled:!!c,"aria-label":a("ui.hub.comments.delete.label"),children:e.jsx(le,{})})})]})]}),e.jsx("p",{className:"mt-2 text-body-sm text-ink whitespace-pre-wrap",children:r.text})]})]},r.id))})]})},G={all:["agent-details"],detail:t=>[...G.all,t]},at=({agentId:t,enabled:o=!0})=>oe({queryKey:G.detail(t||"invalid"),queryFn:async()=>{if(!t)throw new Error("Agent ID is required to fetch details.");return await Ue(t)},select:i=>i.result,enabled:!!t&&o,staleTime:3e5,gcTime:6e5,refetchOnWindowFocus:!1}),nt=()=>{const t=O(),o=ce(),{isAuthenticated:n}=C();return U({mutationFn:async({agentId:s})=>{if(!n)throw new Error("Authentication required to delist an agent.");if(!s)throw new Error("Agent ID is required to delist.");return Be(s)},onSuccess:(s,c)=>{B("Agent delisted"),t.invalidateQueries({queryKey:G.detail(c.agentId)}),ge(t),o("/agent-hub")},onError:s=>{console.error("Delist agent error:",s)}})},it={like:"The like did not go through",favourite:"The favourite did not go through",download:"The download did not start",delist:"The agent was not delisted"},Y=({children:t})=>e.jsx("span",{className:"inline-flex h-4 min-w-5 items-center text-meta text-ink-muted",children:t}),jt=()=>{const{agentId:t}=je(),o=ce(),{isAuthenticated:n,user:i}=C(),{data:s,isLoading:c,isFetching:b,error:x,refetch:k}=at({agentId:t??"",enabled:!!t}),u=s?.visibility==="org",p=s?Se(s.name):"",{memberships:A}=Qe({enabled:u}),M=u?A.find(xe=>xe.tenant_id===s?.tenant_id)?.tenant_name??null:null,{statuses:g,isKnown:D,isError:Q,isFetching:S,refetch:R}=_e({agentIds:t&&!u?[t]:[]}),m=Te(D,g,t),y=m&&g[t??""]?.liked===!0,w=m&&g[t??""]?.favourited===!0,H=s?.like_count??0,r=s?.favourite_count??0,d=s?.download_count??0,P=Ee(),z=Fe(),_=Me(),f=nt(),[ue,L]=E.useState(!1),[j,h]=E.useState(null),W=!!i&&!!s&&i.radientUser?.account?.id===s.account_id,J=()=>{!t||!n||P.isPending||(h(null),P.mutate({agentId:t,isCurrentlyLiked:y},{onError:()=>h("like")}))},V=()=>{!t||!n||z.isPending||(h(null),z.mutate({agentId:t,isCurrentlyFavourited:w},{onError:()=>h("favourite")}))},X=()=>{!t||!s||_.isPending||(h(null),_.mutate({agentId:s.id,agentName:s.name},{onError:()=>h("download")}))},me=()=>{!t||!W||f.isPending||(h(null),f.mutate({agentId:t},{onError:()=>h("delist")}),L(!1))},T=j?j==="like"?{action:"like",error:P.error,retry:J}:j==="favourite"?{action:"favourite",error:z.error,retry:V}:j==="download"?{action:"download",error:_.error,retry:X}:{action:"delist",error:f.error,retry:void 0}:null,he=()=>{o("/agent-hub")};return c?e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx(K,{label:"Loading agent details"})}):x?e.jsx("div",{className:"flex h-full items-center justify-center p-6",children:e.jsxs(se,{variant:"danger",className:"max-w-2xl",children:[e.jsx(ae,{children:"This agent could not be loaded"}),e.jsx(ne,{children:be("The Radient agent catalogue did not answer.",x)}),e.jsx("div",{className:"mt-2",children:e.jsx(l,{variant:"outline",size:"sm",onClick:()=>void k(),disabled:b,"aria-busy":b,children:b?"Trying…":"Try again"})})]})}):s?e.jsxs("div",{className:"m-6 flex flex-1 flex-col rounded-md bg-surface p-8",children:[e.jsxs("div",{className:"mb-6 flex items-center justify-between gap-4",children:[e.jsxs("div",{className:"flex min-w-0 items-center gap-4",children:[e.jsx(l,{variant:"ghost",size:"icon",onClick:he,"aria-label":"Back to Agent hub",children:e.jsx(We,{})}),e.jsx(q,{className:"size-11 shrink-0",children:e.jsx(I,{children:e.jsx(Ye,{size:22,"aria-hidden":"true"})})}),e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("h1",{className:"truncate text-display text-ink",children:p}),u&&e.jsx(Pe,{orgName:M})]})]}),e.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[!u&&e.jsxs(e.Fragment,{children:[e.jsx(N,{content:"Sign in to Radient to use this feature",disabled:n,children:e.jsx("span",{children:e.jsxs(l,{variant:"ghost",size:"sm",onClick:J,disabled:!n||P.isPending||!m,"aria-label":m?y?"Unlike agent":"Like agent":"Like state unavailable",className:Z(y&&"text-danger"),children:[e.jsx(ze,{fill:y?"currentColor":"none"}),e.jsx(Y,{children:H})]})})}),e.jsx(N,{content:"Sign in to Radient to use this feature",disabled:n,children:e.jsx("span",{children:e.jsxs(l,{variant:"ghost",size:"sm",onClick:V,disabled:!n||z.isPending||!m,"aria-label":m?w?"Unfavourite agent":"Favourite agent":"Favourite state unavailable",className:Z(w&&"text-warning"),children:[e.jsx($e,{fill:w?"currentColor":"none"}),e.jsx(Y,{children:r})]})})})]}),e.jsx(N,{content:"Download agent to your computer",children:e.jsx("span",{children:e.jsxs(l,{variant:"ghost",size:"icon",onClick:X,disabled:_.isPending,"aria-label":"Download agent",className:"ml-1",children:[e.jsx(pe,{}),e.jsx(Y,{children:_.isPending?e.jsx(v,{className:"h-3.5 w-5"}):d})]})})}),W&&!u&&e.jsx(N,{content:"Permanently delist this agent from Agent hub",children:e.jsx("span",{children:e.jsx(l,{variant:"ghost",size:"icon",onClick:()=>L(!0),disabled:f.isPending,"aria-label":"Delist agent",className:"ml-1 text-danger hover:bg-danger-wash hover:text-danger",children:e.jsx(le,{})})})})]})]}),n&&Q&&!j&&!u&&e.jsxs("output",{className:"mb-6 flex flex-wrap items-center gap-2 text-meta text-warning","data-testid":"agent-details-status-unknown",children:[e.jsx("span",{children:"Your likes and favourites could not be read, so this agent's viewer state is not shown."}),e.jsx(l,{variant:"ghost",size:"sm",onClick:()=>void R(),disabled:S,"aria-busy":S,children:S?"Trying…":"Try again"})]}),T&&j&&e.jsxs(se,{variant:"danger",className:"mb-6","data-testid":"agent-details-error",children:[e.jsx(ae,{children:it[j]}),e.jsx(ne,{children:fe(T.action,T.error,p)}),T.retry&&e.jsx("div",{className:"mt-2",children:e.jsx(l,{variant:"outline",size:"sm",onClick:T.retry,children:"Try again"})})]}),e.jsx(Le,{tags:s.tags,categories:s.categories}),e.jsxs("div",{className:"mt-4 mb-6 flex flex-col gap-2 text-body-sm text-ink-muted",children:[e.jsxs("p",{children:["Created by: ",s.account_metadata?.name??"Unknown",s.account_metadata?.email?` (${s.account_metadata.email})`:""]}),e.jsxs("p",{children:["Created: ",ie(new Date(s.created_at))," ago (",ee(s.created_at),")"]}),e.jsxs("p",{children:["Last modified: ",ie(new Date(s.updated_at))," ","ago (",ee(s.updated_at),")"]})]}),e.jsx("div",{className:"mt-2 mb-8 leading-relaxed text-body text-ink",children:s.description||"No description provided."}),e.jsx(de,{className:"my-6"}),!u&&e.jsx(st,{agentId:s.id}),e.jsx(ye,{open:ue,onClose:()=>L(!1),title:"Delist this agent?",maxWidth:"xs",actions:e.jsxs(e.Fragment,{children:[e.jsx(we,{onClick:()=>L(!1),children:"Cancel"}),e.jsx(ve,{onClick:()=>{!t||!W||f.isPending||me()},disabled:f.isPending,children:f.isPending?e.jsx(K,{size:"sm",label:"Delisting agent"}):"Delist"})]}),dialogProps:{"aria-describedby":"delist-dialog-description"},children:e.jsxs("div",{id:"delist-dialog-description",className:"text-body text-ink-muted",children:['This takes "',p,'" off the hub straight away, and nobody will be able to download it. You can upload it again later.']})})]}):e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx("p",{className:"text-body text-ink",children:"Agent not found."})})};export{jt as AgentDetailsPage};
|
|
6
|
+
*/const Ve=[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]],Xe=Ne("message-circle",Ve);function Ze(t,o=Date.now()){return De(t,o,{locale:{...re,formatDistance(n,i,s){switch(n){case"xSeconds":return a("ui.hub.comments.age.seconds",{count:i});case"xMinutes":return a("ui.hub.comments.age.minutes",{count:i});case"xHours":return a("ui.hub.comments.age.hours",{count:i});case"xDays":return a("ui.hub.comments.age.days",{count:i});case"xMonths":return a("ui.hub.comments.age.months",{count:i});case"xYears":return a("ui.hub.comments.age.years",{count:i});default:return a("ui.hub.comments.age.fallback",{duration:re.formatDistance(n,i,s)})}}}})}const F={all:["agent-comments"],list:t=>[...F.all,"list",t]},Ge=({agentId:t,enabled:o=!0})=>oe({queryKey:F.list(t||"invalid"),queryFn:async()=>{if(!t)throw new Error("Agent ID is required to fetch comments.");return(await qe(t)).result},enabled:!!t&&o,staleTime:2*60*1e3,gcTime:5*60*1e3,refetchOnWindowFocus:!0}),Je=()=>{const t=O(),{isAuthenticated:o}=C();return Q({mutationFn:async n=>{const{agentId:i,data:s}=n;if(!o)throw new Error(a("ui.hub.comments.mutation.unauthorized"));return Ie(i,s)},onSuccess:(n,i)=>{t.invalidateQueries({queryKey:F.list(i.agentId)}),U(a("ui.hub.comments.mutation.posted"))},onError:n=>{$(a("ui.hub.comments.mutation.post_failed",{reason:n.message}))}})},et=()=>{const t=O(),{isAuthenticated:o}=C();return Q({mutationFn:async n=>{const{agentId:i,commentId:s,data:c}=n;if(!o)throw new Error(a("ui.hub.comments.mutation.unauthorized"));return Ke(i,s,c)},onSuccess:(n,i)=>{t.invalidateQueries({queryKey:F.list(i.agentId)}),U(a("ui.hub.comments.mutation.updated"))},onError:n=>{$(a("ui.hub.comments.mutation.update_failed",{reason:n.message}))}})},tt=()=>{const t=O(),{isAuthenticated:o}=C();return Q({mutationFn:async n=>{const{agentId:i,commentId:s}=n;if(!o)throw new Error(a("ui.hub.comments.mutation.unauthorized"));return Oe(i,s)},onSuccess:(n,i)=>{t.invalidateQueries({queryKey:F.list(i.agentId)}),U(a("ui.hub.comments.mutation.deleted"))},onError:n=>{$(a("ui.hub.comments.mutation.delete_failed",{reason:n.message}))}})},st=({agentId:t})=>{Ce();const{isAuthenticated:o,user:n}=C(),[i,s]=E.useState(""),[c,b]=E.useState(null),[x,k]=E.useState(""),{data:u,isLoading:p,error:A}=Ge({agentId:t}),P=u?.records??[],g=Je(),D=et(),B=tt(),S=async r=>{if(r.preventDefault(),!(!i.trim()||!o||!t))try{await g.mutateAsync({agentId:t,data:{text:i}}),s("")}catch(d){console.error("Submit comment error caught in component:",d)}},R=(r,d)=>{b(r),k(d)},m=()=>{b(null),k("")},y=async()=>{if(!(!c||!x.trim()||!o||!t))try{await D.mutateAsync({agentId:t,commentId:c,data:{text:x}}),m()}catch(r){console.error("Update comment error caught in component:",r)}},w=async r=>{if(!(!o||!t)&&window.confirm(a("ui.hub.comments.delete.confirm")))try{await B.mutateAsync({agentId:t,commentId:r})}catch(d){console.error("Delete comment error caught in component:",d)}},H=r=>o&&n?.radientUser?.account?.id===r.account_id;return e.jsxs("div",{className:"mt-6",children:[e.jsx("h2",{className:"mb-4 font-semibold text-heading text-ink",children:a("ui.hub.comments.heading")}),o?e.jsxs("div",{className:"mb-4 flex flex-col gap-1.5",children:[e.jsxs(ke,{htmlFor:"new-comment",children:[e.jsx(Xe,{size:14,"aria-hidden":"true"}),a("ui.hub.comments.form.label")]}),e.jsxs("form",{onSubmit:S,className:"flex flex-col gap-3",children:[e.jsx(te,{id:"new-comment",placeholder:a("ui.hub.comments.form.placeholder"),rows:3,value:i,onChange:r=>s(r.target.value),required:!0}),e.jsx(l,{type:"submit",variant:"primary",disabled:g.isPending||!i.trim(),className:"self-end",children:g.isPending?e.jsx(K,{size:"sm",label:a("ui.hub.comments.form.posting")}):a("ui.hub.comments.form.submit")})]})]}):e.jsx("p",{className:"mt-6 mb-4 text-body-sm text-ink-muted",children:a("ui.hub.comments.form.sign_in")}),e.jsx(de,{className:"my-6"}),p&&e.jsx("ul",{className:"flex flex-col",children:[...Array(3)].map((r,d)=>e.jsxs("li",{className:"flex gap-3 pb-6",children:[e.jsx(q,{children:e.jsx(I,{children:e.jsx(v,{className:"size-full"})})}),e.jsxs("div",{className:"flex w-full flex-col gap-1.5",children:[e.jsx(v,{className:"h-3.5 w-24"}),e.jsx(v,{className:"h-3 w-15"}),e.jsx(v,{className:"mt-2 h-3.5 w-full"}),e.jsx(v,{className:"h-3.5 w-4/5"})]})]},`skeleton-${d}`))}),A&&e.jsx("p",{role:"alert",className:"my-6 text-body-sm text-danger",children:a("ui.hub.comments.load_error",{reason:A.message})}),!p&&!A&&e.jsx("ul",{className:"flex flex-col gap-6",children:P.length===0?e.jsx("li",{className:"text-body-sm text-ink-muted",children:a("ui.hub.comments.empty")}):P.map(r=>c===r.id?e.jsxs("li",{className:"flex gap-3",children:[e.jsx(q,{children:e.jsx(I,{children:r.account_metadata?.name?.charAt(0).toUpperCase()||"?"})}),e.jsxs("div",{className:"flex w-full flex-col gap-2",children:[e.jsx(te,{rows:3,value:x,onChange:d=>k(d.target.value),autoFocus:!0,"aria-label":a("ui.hub.comments.edit.label")}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsxs(l,{variant:"secondary",size:"sm",onClick:m,children:[e.jsx(Ae,{}),a("ui.hub.comments.edit.cancel")]}),e.jsxs(l,{variant:"primary",size:"sm",onClick:y,disabled:D.isPending||!x.trim(),children:[D.isPending?e.jsx(K,{size:"xs",label:a("ui.hub.comments.edit.saving")}):e.jsx(Re,{}),a("ui.hub.comments.edit.save")]})]})]})]},r.id):e.jsxs("li",{className:"flex gap-3",children:[e.jsx(q,{children:e.jsx(I,{children:r.account_metadata?.name?.charAt(0).toUpperCase()||"?"})}),e.jsxs("div",{className:"w-full",children:[e.jsxs("div",{className:"flex w-full items-center justify-between",children:[e.jsxs("div",{children:[e.jsx("p",{className:"font-medium text-body text-ink",children:r.account_metadata?.name||a("ui.hub.comments.author.unknown")}),e.jsx("p",{className:"text-ink-muted text-meta",children:Ze(new Date(r.created_at))})]}),H(r)&&e.jsxs("div",{className:"flex gap-0.5",children:[e.jsx(N,{content:a("ui.hub.comments.edit.label"),children:e.jsx(l,{variant:"ghost",size:"icon-sm",onClick:()=>R(r.id,r.text),disabled:!!c,"aria-label":a("ui.hub.comments.edit.label"),children:e.jsx(He,{})})}),e.jsx(N,{content:a("ui.hub.comments.delete.label"),children:e.jsx(l,{variant:"ghost",size:"icon-sm",onClick:()=>w(r.id),disabled:!!c,"aria-label":a("ui.hub.comments.delete.label"),children:e.jsx(le,{})})})]})]}),e.jsx("p",{className:"mt-2 text-body-sm text-ink whitespace-pre-wrap",children:r.text})]})]},r.id))})]})},V={all:["agent-details"],detail:t=>[...V.all,t]},at=({agentId:t,enabled:o=!0})=>oe({queryKey:V.detail(t||"invalid"),queryFn:async()=>{if(!t)throw new Error("Agent ID is required to fetch details.");return await Qe(t)},select:i=>i.result,enabled:!!t&&o,staleTime:3e5,gcTime:6e5,refetchOnWindowFocus:!1}),nt=()=>{const t=O(),o=ce(),{isAuthenticated:n}=C();return Q({mutationFn:async({agentId:s})=>{if(!n)throw new Error("Authentication required to delist an agent.");if(!s)throw new Error("Agent ID is required to delist.");return Ue(s)},onSuccess:(s,c)=>{U("Agent delisted"),t.invalidateQueries({queryKey:V.detail(c.agentId)}),ge(t),o("/agent-hub")},onError:s=>{console.error("Delist agent error:",s)}})},it={like:"The like did not go through",favourite:"The favourite did not go through",download:"The download did not start",delist:"The agent was not delisted"},Y=({children:t})=>e.jsx("span",{className:"inline-flex h-4 min-w-5 items-center text-meta text-ink-muted",children:t}),jt=()=>{const{agentId:t}=je(),o=ce(),{isAuthenticated:n,user:i}=C(),{data:s,isLoading:c,isFetching:b,error:x,refetch:k}=at({agentId:t??"",enabled:!!t}),u=s?.visibility==="org",p=s?Se(s.name):"",{memberships:A}=Be({enabled:u}),P=u?A.find(xe=>xe.tenant_id===s?.tenant_id)?.tenant_name??null:null,{statuses:g,isKnown:D,isError:B,isFetching:S,refetch:R}=_e({agentIds:t&&!u?[t]:[]}),m=Te(D,g,t),y=m&&g[t??""]?.liked===!0,w=m&&g[t??""]?.favourited===!0,H=s?.like_count??0,r=s?.favourite_count??0,d=s?.download_count??0,M=Ee(),z=Fe(),_=Pe(),f=nt(),[ue,L]=E.useState(!1),[j,h]=E.useState(null),W=!!i&&!!s&&i.radientUser?.account?.id===s.account_id,X=()=>{!t||!n||M.isPending||(h(null),M.mutate({agentId:t,isCurrentlyLiked:y},{onError:()=>h("like")}))},Z=()=>{!t||!n||z.isPending||(h(null),z.mutate({agentId:t,isCurrentlyFavourited:w},{onError:()=>h("favourite")}))},G=()=>{!t||!s||_.isPending||(h(null),_.mutate({agentId:s.id,agentName:s.name},{onError:()=>h("download")}))},me=()=>{!t||!W||f.isPending||(h(null),f.mutate({agentId:t},{onError:()=>h("delist")}),L(!1))},T=j?j==="like"?{action:"like",error:M.error,retry:X}:j==="favourite"?{action:"favourite",error:z.error,retry:Z}:j==="download"?{action:"download",error:_.error,retry:G}:{action:"delist",error:f.error,retry:void 0}:null,he=()=>{o("/agent-hub")};return c?e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx(K,{label:"Loading agent details"})}):x?e.jsx("div",{className:"flex h-full items-center justify-center p-6",children:e.jsxs(se,{variant:"danger",className:"max-w-2xl",children:[e.jsx(ae,{children:"This agent could not be loaded"}),e.jsx(ne,{children:be("The Radient agent catalogue did not answer.",x)}),e.jsx("div",{className:"mt-2",children:e.jsx(l,{variant:"outline",size:"sm",onClick:()=>void k(),disabled:b,"aria-busy":b,children:b?"Trying…":"Try again"})})]})}):s?e.jsxs("div",{className:"m-6 flex flex-1 flex-col rounded-md bg-surface p-8",children:[e.jsxs("div",{className:"mb-6 flex items-center justify-between gap-4",children:[e.jsxs("div",{className:"flex min-w-0 items-center gap-4",children:[e.jsx(l,{variant:"ghost",size:"icon",onClick:he,"aria-label":"Back to Agent hub",children:e.jsx(We,{})}),e.jsx(q,{className:"size-11 shrink-0",children:e.jsx(I,{children:e.jsx(Ye,{size:22,"aria-hidden":"true"})})}),e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("h1",{className:"truncate text-display text-ink",children:p}),u&&e.jsx(Me,{orgName:P})]})]}),e.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[!u&&e.jsxs(e.Fragment,{children:[e.jsx(N,{content:"Sign in to Radient to use this feature",disabled:n,children:e.jsx("span",{children:e.jsxs(l,{variant:"ghost",size:"sm",onClick:X,disabled:!n||M.isPending||!m,"aria-label":m?y?"Unlike agent":"Like agent":"Like state unavailable",className:J(y&&"text-danger"),children:[e.jsx(ze,{fill:y?"currentColor":"none"}),e.jsx(Y,{children:H})]})})}),e.jsx(N,{content:"Sign in to Radient to use this feature",disabled:n,children:e.jsx("span",{children:e.jsxs(l,{variant:"ghost",size:"sm",onClick:Z,disabled:!n||z.isPending||!m,"aria-label":m?w?"Unfavourite agent":"Favourite agent":"Favourite state unavailable",className:J(w&&"text-warning"),children:[e.jsx($e,{fill:w?"currentColor":"none"}),e.jsx(Y,{children:r})]})})})]}),e.jsx(N,{content:"Download agent to your computer",children:e.jsx("span",{children:e.jsxs(l,{variant:"ghost",size:"icon",onClick:G,disabled:_.isPending,"aria-label":"Download agent",className:"ml-1",children:[e.jsx(pe,{}),e.jsx(Y,{children:_.isPending?e.jsx(v,{className:"h-3.5 w-5"}):d})]})})}),W&&!u&&e.jsx(N,{content:"Permanently delist this agent from Agent hub",children:e.jsx("span",{children:e.jsx(l,{variant:"ghost",size:"icon",onClick:()=>L(!0),disabled:f.isPending,"aria-label":"Delist agent",className:"ml-1 text-danger hover:bg-danger-wash hover:text-danger",children:e.jsx(le,{})})})})]})]}),n&&B&&!j&&!u&&e.jsxs("output",{className:"mb-6 flex flex-wrap items-center gap-2 text-meta text-warning","data-testid":"agent-details-status-unknown",children:[e.jsx("span",{children:"Your likes and favourites could not be read, so this agent's viewer state is not shown."}),e.jsx(l,{variant:"ghost",size:"sm",onClick:()=>void R(),disabled:S,"aria-busy":S,children:S?"Trying…":"Try again"})]}),T&&j&&e.jsxs(se,{variant:"danger",className:"mb-6","data-testid":"agent-details-error",children:[e.jsx(ae,{children:it[j]}),e.jsx(ne,{children:fe(T.action,T.error,p)}),T.retry&&e.jsx("div",{className:"mt-2",children:e.jsx(l,{variant:"outline",size:"sm",onClick:T.retry,children:"Try again"})})]}),e.jsx(Le,{tags:s.tags,categories:s.categories}),e.jsxs("div",{className:"mt-4 mb-6 flex flex-col gap-2 text-body-sm text-ink-muted",children:[e.jsxs("p",{children:["Created by: ",s.account_metadata?.name??"Unknown",s.account_metadata?.email?` (${s.account_metadata.email})`:""]}),e.jsxs("p",{children:["Created: ",ie(new Date(s.created_at))," ago (",ee(s.created_at),")"]}),e.jsxs("p",{children:["Last modified: ",ie(new Date(s.updated_at))," ","ago (",ee(s.updated_at),")"]})]}),e.jsx("div",{className:"mt-2 mb-8 leading-relaxed text-body text-ink",children:s.description||"No description provided."}),e.jsx(de,{className:"my-6"}),!u&&e.jsx(st,{agentId:s.id}),e.jsx(ye,{open:ue,onClose:()=>L(!1),title:"Delist this agent?",maxWidth:"xs",actions:e.jsxs(e.Fragment,{children:[e.jsx(we,{onClick:()=>L(!1),children:"Cancel"}),e.jsx(ve,{onClick:()=>{!t||!W||f.isPending||me()},disabled:f.isPending,children:f.isPending?e.jsx(K,{size:"sm",label:"Delisting agent"}):"Delist"})]}),dialogProps:{"aria-describedby":"delist-dialog-description"},children:e.jsxs("div",{id:"delist-dialog-description",className:"text-body text-ink-muted",children:['This takes "',p,'" off the hub straight away, and nobody will be able to download it. You can upload it again later.']})})]}):e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx("p",{className:"text-body text-ink",children:"Agent not found."})})};export{jt as AgentDetailsPage};
|