Why is /foundation/jquery-ui.min.js loading on the Publish instance?

Avatar

Avatar

oscarr38307878

Avatar

oscarr38307878

oscarr38307878

16-07-2020

We are trying to cleanup some of the unnecessary dependencies we inherited from legacy CQ5.6.1. We noticed there was a list of jquery-ui.min.js/css loading on the public pages. We understand all /libs, /foundation client libraries serve mostly authoring; therefore we want to start removing some of these from publish instance. Primarily the jquery-ui.

Can you help us understand how are we bringing this into the Publish instance?

We checked the following categories:

cq.jquery, jquery, granite.jquery, cq.foundation-main, cq.foundation, jquery.jcarousel, cq.shared and is nowhere to be found neither as dependency nor embed.

Thanks in advance.

Accepted Solutions (1)

Accepted Solutions (1)

Avatar

Avatar

ChitraMadan

MVP

Avatar

ChitraMadan

MVP

ChitraMadan
MVP

16-07-2020

Hi @oscarr38307878 ,

 

You can find jquery-ui in below location: /libs/foundation/clientlibs/jquery-ui

 

chitra-madan_0-1594936749459.png

 

You must be including this category somewhere in your template.

 

If you just want to include this in edit mode then you can do something like this:

<sly data-sly-test="${wcmmode.edit}"
data-sly-call="${clientlib.all @ categories = [
'cq.shared',
'cq.foundation-main',
cq.jquery.ui
]
}"></sly>
 

Answers (2)

Answers (2)

Avatar

Avatar

sunjot16

Employee

Avatar

sunjot16

Employee

sunjot16
Employee

16-07-2020

There are many clientlibs that are not just specific to authoring. They are also related to how your content/components appear on the UI, lazy loading of assets, etc. If you remove any clientlibs that might be required, it would mess up your UI. You would have to replicate them from author and even rebuilt clientlibs, if needed.

Just do a thorough testing when you perform the cleanup, such that you don't miss anything that could lead to potential issues in the future.

Avatar

Avatar

Vaibhavi

MVP

Avatar

Vaibhavi

MVP

Vaibhavi
MVP

16-07-2020

 Hi @oscarr38307878 , 

cq.jquery.ui is the category of jquery ui.  You must have included this in your template/component as category or loaded in as embed/dependency. If you are not consuming jquery ui you can remove it. 

Few specific lib example widgets, or authoring ui you don't need it in publisher.As you need it only in author, you can do instance check to know author or publisher and load it accordingly. 

But be careful while removing other OOTB libraries, that can make functionality impact. You must do good analysis before you go ahead.