Hi Chanaka, What will be the location of these fragments? If it's the same as server > side fragments it will give control over different UUF components IMO.
These are normal fragments that you use in the server-side. Its not like giving control to a different component, instead we are re-using the same template in the client-side. On Wed, Dec 14, 2016 at 10:47 AM, Chanaka Jayasena <[email protected]> wrote: > Hi Sajith, > > This will be very useful for the developers. Now we are maintaining client > side templates in public folder and doing ajax calls to fetch them and > render. > > What will be the location of these fragments? If it's the same as server > side fragments it will give control over different UUF components IMO. > > thanks, > Chanaka > > On Tue, Dec 13, 2016 at 10:37 PM, SajithAR Ariyarathna <[email protected]> > wrote: > >> Hi All, >> >> To do $subject, we are hoping to give a UUF client JS library. With the >> client-side library, webapp developers will be able to render fragments and >> push to zones similar to the server-side. >> >> Functions in the library: >> >> UUF.renderFragment(fragmentFullyQualifedName, templateFillingObject, >> zoneName, mode) >> >> Using this function webapp developers can render a fragment in the >> client-side and push the content to a given zone. >> >> Here, >> >> *fragmentFullyQualifedName* - Fully qualified name >> (<component-name>.<fragment-name>) of the fragment that you want to >> render. e.g. "org.wso2.carbon.apimgt.store.api-grid" >> *templateFillingObject* - JSON object which will be used to fill the >> fragment's template. e.g. {name: "My API", version: "1.0.0"} >> >> *zoneName* - Name of the zone that you want to push the rendered HTML. >> e.g. "grid" >> >> *mode* - Dictates how the pushing content orders with the existing >> content in the zone. Mode can be "PREPEND" (put the pushing content before >> the existing content), "APPEND" (put the pushing content after the existing >> content) or "OVERWRITE" (replace the existing content with the pushing >> content) >> >> >> UUF.renderTemplate(hbsTemplate, templateFillingObject, zoneName, mode) >> >> Using this function webapp devs can render a given Handlebars template >> and push it to a desired zone. >> >> Here, >> >> *hbsTemplate* - Handlebars template string >> >> >> Bringing zones to the client-side. >> >> When rendering a zone in the server-side, we can mark the start and end >> of a zone's content with HTML comments. >> >> e.g. >> >> <!-- [UUF-ZONE]{"name": "grid", "position": "start"} --> >> <p>content of zone grid goes here</p> >> <div>here is a div</div> >> <p>some more stuff</p> >> <!-- [UUF-ZONE]{"name": "grid", "position": "end"} --> >> >> HTML comments can be identified by filtering nodes in the DOM. And >> further filtering the comments that starts with [UUF-ZONE], we can >> identify UUF zone marking comments. Jerad did a POC for this. In that we >> were able to successfully identify zones and push content for all modes. >> >> >> We are hoping to expose this library through the "uuf-client" fragment in >> the common "foundation" component [1]. >> >> [1] https://github.com/wso2/carbon-uuf-common/tree/master/compo >> nents/org.wso2.carbon.uuf.common.foundation >> >> WDYT? >> >> Thanks. >> -- >> Sajith Janaprasad Ariyarathna >> Software Engineer; WSO2, Inc.; http://wso2.com/ >> <https://wso2.com/signature> >> > > > > -- > Chanaka Jayasena > Associate Tech Lead, > email: [email protected]; cell: +94 77 4464006 <+94%2077%20446%204006> > blog: http://chanaka3d.blogspot.com > -- Sajith Janaprasad Ariyarathna Software Engineer; WSO2, Inc.; http://wso2.com/ <https://wso2.com/signature>
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
