@Josh, I already have TDJ working with the <meta CSP> tag, the only thing that 
doesn't work for me is access to github to see the source code of the pages, 
what do we do with this?

Hiedra

-----Mensaje original-----
De: Josh Tynjala <joshtynj...@bowlerhat.dev> 
Enviado el: miércoles, 12 de marzo de 2025 20:38
Para: dev@royale.apache.org
Asunto: Re: [apache/royale-asjs] Apache Royale Tour de Jewel - broken (Issue 
#1252)

I'll help you with the testing.

I suspect that I'll need to add another similar compiler option for including 
arbitrary asset files with a SWC, like fonts or images.

I'm also considering adding metadata or something that associates an asset with 
a specific class, so that we have an option that works similarly to 
<inject_script>. Currently, -js-include-script and -js-include-css apply to the 
entire SWC, even if someone wants to use only classes from the SWC that don't 
need the script/css. For example, we should support a way to say that a 
script/css is associated with TabBarView.as only, but not any other classes in 
the SWC. It's more PAYG.

--
Josh Tynjala
Bowler Hat LLC
https://bowlerhat.dev/


On Wed, Mar 12, 2025 at 10:33 AM Maria Jose Esteve <mjest...@iest.com>
wrote:

> Ok, I'll check it.
> Hahahaha, this change is too much to include in the repository without 
> a good battery of tests and consensus, right?
> Yesterday, instead of the meta tag, I "removed the network cable" :P
>
> Hiedra
>
> -----Mensaje original-----
> De: Josh Tynjala <joshtynj...@bowlerhat.dev> Enviado el: miércoles, 12 
> de marzo de 2025 18:03
> Para: dev@royale.apache.org
> Asunto: Re: [apache/royale-asjs] Apache Royale Tour de Jewel - broken 
> (Issue #1252)
>
> Hi Hiedra,
>
> In order to test this properly, we need to create an environment 
> similar to the royale.apache.org site. The backend sends a 
> Content-Security-Policy header, which is causing this issue with 
> third-party resources getting blocked.
>
> When testing locally on our own computers, we can simulate the same 
> Content-Security-Policy header by adding the following <meta> tag to 
> the HTML file.
>
> <meta http-equiv="Content-Security-Policy" content="default-src 'self'
> data: blob: 'unsafe-inline' https://www.apachecon.com/ 
> https://www.communityovercode.org/ https://analytics.apache.org/; 
> script-src 'self' 'unsafe-inline' 'unsafe-eval'
> https://analytics.apache.org/ https://www.apachecon.com/; style-src 'self'
> 'unsafe-inline' data:; frame-ancestors 'self'; frame-src 'self' data:
> blob:; img-src 'self' data: https://*.apache.org/ 
> https://www.apachecon.com/; worker-src 'self' data: blob:;">
>
> For TourDeJewel, we can add the <meta> tag to the following template 
> file to ensure that it gets included in the generated index.html file:
>
>
> https://github.com/apache/royale-asjs/blob/examples/TDJ_localresources
> /examples/jewel/TourDeJewel/src/main/resources/jewel-example-index-tem
> plate.html
>
> However, you should not commit this change to the repo. I'm suggesting 
> this merely for testing locally to better simulate the environment on 
> royale.apache.org.
>
> --
> Josh Tynjala
> Bowler Hat LLC
> https://bowlerhat.dev/
>
>
> On Tue, Mar 11, 2025 at 5:55 AM Maria Jose Esteve <mjest...@iest.com>
> wrote:
>
> > First step done. I've included web-animations.min.js in Jewel's swc 
> > and modified the TabBarView.as class I've compiled royale-asjs with 
> > Maven and ant and then tested TDJ and everything works as expected.
> > Can someone else try compiling the “examples/TDJ_localresources”
> > branch and verify that there are no issues before merging it into 
> > develop?
> >
> > Thx
> >
> > Hiedra
> >
> > De: Josh Tynjala <notificati...@github.com> Enviado el: martes, 4 de 
> > marzo de 2025 17:45
> > Para: apache/royale-asjs <royale-a...@noreply.github.com>
> > CC: Maria Jose Esteve <mjest...@iest.com>; Comment < 
> > comm...@noreply.github.com>
> > Asunto: Re: [apache/royale-asjs] Apache Royale Tour de Jewel - 
> > broken (Issue #1252)
> >
> >
> > As an example, Jewel's TabBarView contains the following 
> > <inject_script> that links to a JS library on Cloudflare. That's not
> going to work anymore.
> >
> > <inject_script>
> >
> > var script = document.createElement("script");
> >
> > script.setAttribute("src", "
> > https://cdnjs.cloudflare.com/ajax/libs/web-animations/2.3.1/web-anim
> > at
> > ions.min.js
> > ");
> >
> > document.head.appendChild(script);
> >
> > </inject_script>
> >
> > We're going to need to change TabBarView (and any other classes in 
> > royale-asjs that use <inject_script> to load files from CDNs) to 
> > provide that script file in a different way.
> >
> > I recently added a -js-include-script option to royale-compiler.
> > That's probably our best bet. It includes the .js file in the .swc 
> > file (or in the compiled app), and it automatically adds a <script> 
> > tag
> to the .html file.
> >
> > In Jewel, we might use it like this (assuming that 
> > web-animations.min.js is added to our repo at that location):
> >
> > -js-include-script+=src/main/assembly/scripts/web-animations.min.js
> >
> > That means that we'll need to include web-animations.min.js in the 
> > Royale distribution. Hopefully, all of the scripts that we're 
> > referencing have compatible licenses that the ASF accepts.
> >
> > —
> > Reply to this email directly, view it on GitHub<
> > https://github.com/apache/royale-asjs/issues/1252#issuecomment-26982
> > 98
> > 577>,
> > or unsubscribe<
> > https://github.com/notifications/unsubscribe-auth/ANJL3U4PT7OIPW7D5E
> > VN 
> > UED2SXJ7DAVCNFSM6AAAAABWNZIIOCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TU
> > HM
> > ZDMOJYGI4TQNJXG4
> > >.
> > You are receiving this because you commented.Message ID:
> > <apache/royale-asjs/issues/1252/2698298...@github.com<mailto:apache
> > /royale-asjs/issues/1252/2698298...@github.com>>
> > [joshtynjala]joshtynjala left a comment (apache/royale-asjs#1252)<
> > https://github.com/apache/royale-asjs/issues/1252#issuecomment-26982
> > 98
> > 577>
> >
> > As an example, Jewel's TabBarView contains the following 
> > <inject_script> that links to a JS library on Cloudflare. That's not
> going to work anymore.
> >
> > <inject_script>
> >
> > var script = document.createElement("script");
> >
> > script.setAttribute("src", "
> > https://cdnjs.cloudflare.com/ajax/libs/web-animations/2.3.1/web-anim
> > at
> > ions.min.js
> > ");
> >
> > document.head.appendChild(script);
> >
> > </inject_script>
> >
> > We're going to need to change TabBarView (and any other classes in 
> > royale-asjs that use <inject_script> to load files from CDNs) to 
> > provide that script file in a different way.
> >
> > I recently added a -js-include-script option to royale-compiler.
> > That's probably our best bet. It includes the .js file in the .swc 
> > file (or in the compiled app), and it automatically adds a <script> 
> > tag
> to the .html file.
> >
> > In Jewel, we might use it like this (assuming that 
> > web-animations.min.js is added to our repo at that location):
> >
> > -js-include-script+=src/main/assembly/scripts/web-animations.min.js
> >
> > That means that we'll need to include web-animations.min.js in the 
> > Royale distribution. Hopefully, all of the scripts that we're 
> > referencing have compatible licenses that the ASF accepts.
> >
> > —
> > Reply to this email directly, view it on GitHub<
> > https://github.com/apache/royale-asjs/issues/1252#issuecomment-26982
> > 98
> > 577>,
> > or unsubscribe<
> > https://github.com/notifications/unsubscribe-auth/ANJL3U4PT7OIPW7D5E
> > VN 
> > UED2SXJ7DAVCNFSM6AAAAABWNZIIOCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TU
> > HM
> > ZDMOJYGI4TQNJXG4
> > >.
> > You are receiving this because you commented.Message ID:
> > <apache/royale-asjs/issues/1252/2698298...@github.com<mailto:apache
> > /royale-asjs/issues/1252/2698298...@github.com>>
> >
>

Reply via email to