acs-aem-tools icon indicating copy to clipboard operation
acs-aem-tools copied to clipboard

Override component tool

Open Schikkeg opened this issue 11 years ago • 4 comments

For any missing feature OR enhancement OOB component generally done by overriding from /libs tp /apps folder. Creating the folder structure takes additional time & for client libs you need to take additional steps to include property such as category and resource type etc.. The idea of the tool is to make that option easy, however this feature ideal location would be crxde light however my taught here is to have page help to achieve it. WDYT?

Schikkeg avatar Feb 06 '14 19:02 Schikkeg

So like a wizard where you select the source component and a target folder?

Ideas:

  • If the source component uses a tabpanel in the dialog, the same tabpanel dialog should be created in the target component, with each tab pointing to the source using cqinclude xtype.
  • default category should be the old one, but should be overrideable in the wizard.
  • for script files, maybe prompt the user to select which files they want to overlay. and then create those files in the target component using cq:include script="<path>" to include the source script?

Not sure I get the clientlib reference in the description above. Can you explain a bit more?

justinedelson avatar Feb 06 '14 19:02 justinedelson

Yes like a wizard from source to target.

Agree with all ideas & make sense. Good sugestion actually was not in my list originally.

Generally most of components have all their structure of type "nt:folder". For clientlib for folder cq:ClientLibraryFolder have additionally property which we need to carry over. Example you want to override only siteadmin.js which is at [1] we need to make sure at /apps/cq/ui/widgets have all the properties related to cq:ClientLibraryFolder

[1] /libs/cq/ui/widgets/source/widgets/wcm/SiteAdmin.js

On Thu, Feb 6, 2014 at 2:21 PM, justinedelson [email protected]:

So like a wizard where you select the source component and a target folder?

Ideas:

  • If the source component uses a tabpanel in the dialog, the same tabpanel dialog should be created in the target component, with each tab pointing to the source using cqinclude xtype.
  • default category should be the old one, but should be overrideable in the wizard.
  • for script files, maybe prompt the user to select which files they want to overlay. and then create those files in the target component using cq:include script="" to include the source script?

Not sure I get the clientlib reference in the description above. Can you explain a bit more?

Reply to this email directly or view it on GitHubhttps://github.com/Adobe-Consulting-Services/acs-aem-tools/issues/16#issuecomment-34359821 .

Schikkeg avatar Feb 06 '14 19:02 Schikkeg

Ah. I see. I'd suggest treating these as three separate use cases: (1) extend a component - take a component in /libs/foundation and make a new component in /apps/myco which extends it (2) overlay a component - take a component in /libs/foundation and make a component in /apps/foundation (3) create the structure for an overlay of a clientlib - take /libs/cq/ui/widgets and make /apps/cq/ui/widgets. Probably empty, but ready to be populated. Or maybe the wizard lets you populate it by selecting which files you want to overlay.

justinedelson avatar Feb 06 '14 22:02 justinedelson

FWIW Overlay is now a right-click option in Crxde Lite in AEM 6.2

davidjgonzalez avatar Jun 08 '16 14:06 davidjgonzalez