// import {helloHelper} from 'helper.js' // helloHelper2 = require('./helper.js') // for organizational proposes const helper = require('./helper') const sdapi = require('./sdapi') const exportHelper = require('./export_png') const outpaint = require('./outpaint') const psapi = require('./psapi') const app = window.require('photoshop').app const { batchPlay } = require('photoshop').action const { executeAsModal } = require('photoshop').core const dialog_box = require('./dialog_box') const {entrypoints} = require('uxp') async function getUniqueDocumentId () { try { uniqueDocumentId = await psapi.readUniqueDocumentIdExe() console.log( 'btnLinkCurrentDocument.click(): uniqueDocumentId: ', uniqueDocumentId ) // Regular expression to check if string is a valid UUID const regexExp = /^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/gi // String with valid UUID separated by dash // const str = 'a24a6ea4-ce75-4665-a070-57453082c256' const isValidId = regexExp.test(uniqueDocumentId) // true console.log('isValidId: ', isValidId) if (isValidId == false) { let uuid = self.crypto.randomUUID() console.log(uuid) // for example "36b8f84d-df4e-4d49-b662-bcde71a8764f" await psapi.saveUniqueDocumentIdExe(uuid) uniqueDocumentId = uuid } } catch (e) { console.warn('warning Document Id may not be valid', e) } return uniqueDocumentId } document .getElementById('btnLinkCurrentDocument') .addEventListener('click', async () => { await getUniqueDocumentId() }) // attach event listeners for tabs Array.from(document.querySelectorAll(".sp-tab")).forEach(theTab => { theTab.onclick = () => { // localStorage.setItem("currentTab", theTab.getAttribute("id")); Array.from(document.querySelectorAll(".sp-tab")).forEach(aTab => { if (aTab.getAttribute("id") === theTab.getAttribute("id")) { aTab.classList.add("selected"); } else { aTab.classList.remove("selected"); } }); Array.from(document.querySelectorAll(".sp-tab-page")).forEach(tabPage => { if (tabPage.getAttribute("id").startsWith(theTab.getAttribute("id"))) { tabPage.classList.add("visible"); } else { tabPage.classList.remove("visible"); } }); } }); // entrypoints.setup({ // panels:{ // vanilla: ()=>{ // console.log("you are in the vanilla panel") // }, // experimental_1: ()=>{ // console.log("you are in the experimental_1 panel") // } // } // } // ) // just a number that shouldn't unique enough that we will use when save files. // each session will get a number from 1 to 1000000 const random_session_id = Math.floor((Math.random() * 1000000) + 1); function getSelectedText() // JavaScript { // // Obtain the object reference for the