diff --git a/public/css/promptmanager.css b/public/css/promptmanager.css
index f02b172b1..3c7f94b35 100644
--- a/public/css/promptmanager.css
+++ b/public/css/promptmanager.css
@@ -359,10 +359,15 @@
content: attr(external_piece_text);
display: block;
width: 100%;
- font-weight: 600;
+ font-weight: 500;
text-align: center;
}
.completion_prompt_manager_popup_entry_form_control #completion_prompt_manager_popup_entry_form_prompt:disabled {
visibility: hidden;
}
+
+#completion_prompt_manager_popup_entry_source_block {
+ display: flex;
+ justify-content: center;
+}
diff --git a/public/index.html b/public/index.html
index 942764ef7..08b1bdb09 100644
--- a/public/index.html
+++ b/public/index.html
@@ -6477,6 +6477,11 @@
+
diff --git a/public/scripts/PromptManager.js b/public/scripts/PromptManager.js
index 94d642afa..2a705e8b2 100644
--- a/public/scripts/PromptManager.js
+++ b/public/scripts/PromptManager.js
@@ -196,6 +196,17 @@ export class PromptCollection {
}
class PromptManager {
+ get promptSources() {
+ return {
+ charDescription: t`Character Description`,
+ charPersonality: t`Character Personality`,
+ scenario: t`Character Scenario`,
+ personaDescription: t`Persona Description`,
+ worldInfoBefore: t`World Info (↑Char)`,
+ worldInfoAfter: t`World Info (↓Char)`,
+ };
+ }
+
constructor() {
this.systemPrompts = [
'main',
@@ -408,6 +419,7 @@ class PromptManager {
this.handleResetPrompt = (event) => {
const promptId = event.target.dataset.pmPrompt;
const prompt = this.getPromptById(promptId);
+ const isPulledPrompt = Object.keys(this.promptSources).includes(promptId);
switch (promptId) {
case 'main':
@@ -439,6 +451,12 @@ class PromptManager {
document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_form_forbid_overrides').checked = prompt.forbid_overrides ?? false;
document.getElementById(this.configuration.prefix + 'prompt_manager_forbid_overrides_block').style.visibility = this.overridablePrompts.includes(prompt.identifier) ? 'visible' : 'hidden';
document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_form_prompt').disabled = prompt.marker ?? false;
+ document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_source_block').style.display = isPulledPrompt ? '' : 'none';
+
+ if (isPulledPrompt) {
+ const sourceName = this.promptSources[promptId];
+ document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_source').textContent = sourceName;
+ }
if (!this.systemPrompts.includes(promptId)) {
document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_form_injection_position').removeAttribute('disabled');
@@ -1207,6 +1225,9 @@ class PromptManager {
const injectionDepthBlock = document.getElementById(this.configuration.prefix + 'prompt_manager_depth_block');
const forbidOverridesField = document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_form_forbid_overrides');
const forbidOverridesBlock = document.getElementById(this.configuration.prefix + 'prompt_manager_forbid_overrides_block');
+ const entrySourceBlock = document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_source_block');
+ const entrySource = document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_source');
+ const isPulledPrompt = Object.keys(this.promptSources).includes(prompt.identifier);
nameField.value = prompt.name ?? '';
roleField.value = prompt.role || 'system';
@@ -1218,6 +1239,12 @@ class PromptManager {
injectionPositionField.removeAttribute('disabled');
forbidOverridesField.checked = prompt.forbid_overrides ?? false;
forbidOverridesBlock.style.visibility = this.overridablePrompts.includes(prompt.identifier) ? 'visible' : 'hidden';
+ entrySourceBlock.style.display = isPulledPrompt ? '' : 'none';
+
+ if (isPulledPrompt) {
+ const sourceName = this.promptSources[prompt.identifier];
+ entrySource.textContent = sourceName;
+ }
if (this.systemPrompts.includes(prompt.identifier)) {
injectionPositionField.setAttribute('disabled', 'disabled');
@@ -1303,6 +1330,8 @@ class PromptManager {
const injectionDepthBlock = document.getElementById(this.configuration.prefix + 'prompt_manager_depth_block');
const forbidOverridesField = document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_form_forbid_overrides');
const forbidOverridesBlock = document.getElementById(this.configuration.prefix + 'prompt_manager_forbid_overrides_block');
+ const entrySourceBlock = document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_source_block');
+ const entrySource = document.getElementById(this.configuration.prefix + 'prompt_manager_popup_entry_source');
nameField.value = '';
roleField.selectedIndex = 0;
@@ -1314,6 +1343,8 @@ class PromptManager {
injectionDepthBlock.style.visibility = 'unset';
forbidOverridesBlock.style.visibility = 'unset';
forbidOverridesField.checked = false;
+ entrySourceBlock.style.display = 'none';
+ entrySource.textContent = '';
roleField.disabled = false;
}