Copy link to clipboard
Copied
Hi all,
I have a persistent problem which I am not able to solve. I have developed two extensions which now sit on my workspace the whole time.
They are separate extensions, they don't communicate with each other. However, I've had a weird issue with one extension sometimes reading the other extension license key instead of its own (but they use different folders!), then returning an alert and loading the extension as if the License Key were wrong (which is correct).
I'm not sure what the reason was, but I renamed some jsx functions so they have different names plus I removed the folder object on each jsx file from being a global variable and I've put that into a function instead.
It worked but still I don't get why it happened. Anyway, let's move on...
There is still one issue going on and I think its related to the problem above. If I close one of these two extensions, it could happen that the other extension panel becomes empty. No buttons, nothing. And the only way at this point is to close the second one too, then reopen both. And this is too weird.
The two extensions have different data folders, different names, they listen to different events, all the names in the manifest files are different. Why does that happen?
Moreover, if I quit Overlord, which is another extension and not one of mine, it might also cause one of my two extensions to go empty.
Any ideas?
Copy link to clipboard
Copied
I'm very sure that the conflict occurs because of the JSX code. I'd recommend switching to Bolt-CEP since this boilerplate is flavored for a single JSX object attached to helper object $ for all your panels to prevent pollution in the global namespace.
https://github.com/hyperbrew/bolt-cep
Copy link to clipboard
Copied
I love you! Thank you!
Copy link to clipboard
Copied
Hi Alex,
I loooked into Bolt-CEP but it would mean that I had to translate all the js/jquery code into typescript, which I don't even know how to use, and learn a tons of new things. Moreover, CEP will be replaced by UXP so I'll have to update everything again soon.
Since the only issue I have now is with the extension going blank when another extension is closed, I'm wondering if there's any easier option to, let's say, shield my extension. Any ideas?
I read this interesting article https://hyperbrew.co/blog/top-2-extendscript-mistakes-and-how-to-avoid-them/ although it doesn't help in protecting my extension from external 'close extension' commands.
Copy link to clipboard
Copied
You don't need to translate all code to TypeScript. There are are options to use JS both in JSX and JS.
As for the CEP replaced by UXP, from what I have heard, After Effects should have at least 2 years of CEP support so there are still plenty of time.
I could help you in more detailed manner if you could provide some code. If you feel so, you can reach me here:
Copy link to clipboard
Copied
Ok, I'll see what I can do. I did a test the other day with some simple lines of code and worked, even though I was quite confused by the amount of files and their purpose.
I tried to reuse a few lines from my js file with jquery but I couldn't make it work and gave up. I've had no problem with re using the jsx code, htlm and css I have, but the jquery part didn't work.
Maybe I'll give it another go and send you something.
Thank you for the help!
Copy link to clipboard
Copied
Unfortunately using cep-bolt doesn't fix the issue.
I have translated one of my extensions to cep-bolt and the problem persists as yoh can see here: