mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
@ -1,6 +1,6 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
import { DOMPurify, Popper } from '../lib.js';
|
import { DOMPurify } from '../lib.js';
|
||||||
|
|
||||||
import { event_types, eventSource, is_send_press, main_api, substituteParams } from '../script.js';
|
import { event_types, eventSource, is_send_press, main_api, substituteParams } from '../script.js';
|
||||||
import { is_group_generating } from './group-chats.js';
|
import { is_group_generating } from './group-chats.js';
|
||||||
@ -1440,36 +1440,8 @@ class PromptManager {
|
|||||||
footerDiv.querySelector('select').selectedIndex = selectedPromptIndex;
|
footerDiv.querySelector('select').selectedIndex = selectedPromptIndex;
|
||||||
|
|
||||||
// Add prompt export dialogue and options
|
// Add prompt export dialogue and options
|
||||||
|
|
||||||
const exportForCharacter = await renderTemplateAsync('promptManagerExportForCharacter');
|
|
||||||
const exportPopup = await renderTemplateAsync('promptManagerExportPopup', { isGlobalStrategy: 'global' === this.configuration.promptOrder.strategy, exportForCharacter });
|
|
||||||
rangeBlockDiv.insertAdjacentHTML('beforeend', exportPopup);
|
|
||||||
|
|
||||||
// Destroy previous popper instance if it exists
|
|
||||||
if (this.exportPopper) {
|
|
||||||
this.exportPopper.destroy();
|
|
||||||
}
|
|
||||||
|
|
||||||
this.exportPopper = Popper.createPopper(
|
|
||||||
document.getElementById('prompt-manager-export'),
|
|
||||||
document.getElementById('prompt-manager-export-format-popup'),
|
|
||||||
{ placement: 'bottom' },
|
|
||||||
);
|
|
||||||
|
|
||||||
const showExportSelection = () => {
|
|
||||||
const popup = document.getElementById('prompt-manager-export-format-popup');
|
|
||||||
const show = popup.hasAttribute('data-show');
|
|
||||||
|
|
||||||
if (show) popup.removeAttribute('data-show');
|
|
||||||
else popup.setAttribute('data-show', '');
|
|
||||||
|
|
||||||
this.exportPopper.update();
|
|
||||||
};
|
|
||||||
|
|
||||||
footerDiv.querySelector('#prompt-manager-import').addEventListener('click', this.handleImport);
|
footerDiv.querySelector('#prompt-manager-import').addEventListener('click', this.handleImport);
|
||||||
footerDiv.querySelector('#prompt-manager-export').addEventListener('click', showExportSelection);
|
footerDiv.querySelector('#prompt-manager-export').addEventListener('click', this.handleFullExport);
|
||||||
rangeBlockDiv.querySelector('.export-promptmanager-prompts-full').addEventListener('click', this.handleFullExport);
|
|
||||||
rangeBlockDiv.querySelector('.export-promptmanager-prompts-character')?.addEventListener('click', this.handleCharacterExport);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
<div class="row">
|
|
||||||
<a class="export-promptmanager-prompts-character list-group-item" data-i18n="Export for character">Export for character</a>
|
|
||||||
<span class="tooltip fa-solid fa-info-circle" data-i18n="[title]Export prompts for this character, including their order." title="Export prompts for this character, including their order."></span>
|
|
||||||
</div>
|
|
@ -1,12 +0,0 @@
|
|||||||
<div id="prompt-manager-export-format-popup" class="list-group">
|
|
||||||
<div class="prompt-manager-export-format-popup-flex">
|
|
||||||
<div class="row">
|
|
||||||
<a class="export-promptmanager-prompts-full list-group-item" data-i18n="Export all">Export all</a>
|
|
||||||
<span class="tooltip fa-solid fa-info-circle" data-i18n="[title]Export all your prompts to a file" title="Export all your prompts to a file"></span>
|
|
||||||
</div>
|
|
||||||
{{#if isGlobalStrategy}}
|
|
||||||
{{else}}
|
|
||||||
{{{exportForCharacter}}}
|
|
||||||
{{/if}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
Reference in New Issue
Block a user