| const settings_tab = require('./settings') |
| const sdapi = require('../../sdapi_py_re') |
| const thumbnail = require('../../thumbnail') |
|
|
| |
| function getHistoryMetadata(img) { |
| |
| const metadata_json = JSON.parse(img.dataset.metadata_json_string) |
| console.log('metadata_json: ', metadata_json) |
| |
|
|
| |
| function convertAutoMetadataToPresset(metadata_json) { |
| metadata_json['seed'] = metadata_json?.auto_metadata?.Seed |
| } |
| convertAutoMetadataToPresset(metadata_json) |
|
|
| const b_use_original_prompt = settings_tab.getUseOriginalPrompt() |
| if (b_use_original_prompt) { |
| metadata_json['prompt'] = metadata_json?.original_prompt |
| ? metadata_json['original_prompt'] |
| : metadata_json['prompt'] |
|
|
| metadata_json['negative_prompt'] = |
| metadata_json?.original_negative_prompt |
| ? metadata_json['original_negative_prompt'] |
| : metadata_json['negative_prompt'] |
| } |
| document.querySelector('#historySeedLabel').textContent = |
| metadata_json?.seed |
|
|
| g_ui_settings_object.autoFillInSettings(metadata_json) |
| } |
|
|
| document |
| .getElementById('btnLoadHistory') |
| .addEventListener('click', async function () { |
| try { |
| const output_dir_relative = './server/python_server/' |
| const container = document.getElementById( |
| 'divHistoryImagesContainer' |
| ) |
| const uniqueDocumentId = await getUniqueDocumentId() |
| const [image_paths, metadata_jsons, base64_images] = |
| await sdapi.loadHistory(uniqueDocumentId) |
|
|
| while (container.firstChild) { |
| container.removeChild(container.firstChild) |
| } |
|
|
| const length = image_paths.length |
| |
|
|
| |
| for (let i = length - 1; i >= 0; --i) { |
| const img = document.createElement('img') |
| |
| const image_src = `data:image/png;base64, ${base64_images[i]}` |
| img.src = image_src |
|
|
| img.dataset.path = `${output_dir_relative}/${image_paths[i]}` |
| img.className = 'history-image' |
| img.dataset.metadata_json_string = JSON.stringify( |
| metadata_jsons[i] |
| ) |
| console.log(`metadata_jsons[${i}]: `, metadata_jsons[i]) |
|
|
| const img_container = thumbnail.Thumbnail.wrapImgInContainer( |
| img, |
| 'viewer-image-container' |
| ) |
| thumbnail.Thumbnail.addSPButtonToContainer( |
| img_container, |
| 'svg_sp_btn', |
| 'copy metadata to settings', |
| history_tab.getHistoryMetadata, |
| img |
| ) |
| thumbnail.Thumbnail.addSPButtonToContainer( |
| img_container, |
| 'svg_sp_btn_datadownload', |
| 'place the image on the canvas', |
| moveHistoryImageToLayer, |
| img |
| ) |
| container.appendChild(img_container) |
| |
| } |
| } catch (e) { |
| console.warn(`loadHistory warning: ${e}`) |
| } |
| }) |
| document |
| .getElementById('btnClearHistoryCache') |
| .addEventListener('click', () => { |
| const container = document.getElementById('divHistoryImagesContainer') |
| container.innerHTML = '' |
| }) |
| module.exports = { |
| getHistoryMetadata, |
| } |
|
|