Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-999

Implement an agnostic tapestry.js layer + adapters to allow developers to switch from prototype to jquery

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.1.0.7, 5.0.19
    • Fix Version/s: 5.4
    • Component/s: tapestry-core
    • Labels:
      None

      Description

      As per the discussion on the mailing about Tapestry 5 and jQuery, i create this JIRA to compile the toughts of everyone for this feature.

      As Howard said on the mailing list, goals are :

      Goal #1: Backwards compatibility
      Goal #2: Documented
      Goal #3: Plugability / Extensibility / Overridablilty

      First design thoughts suggested by howard are (extracted from Howard's answer) :

      1. tapestry.js defines a Tapestry namespace with key function properties for the standard stuff
      2. split current tapestry.js into more smaller files
      3. In addition to tapestry.js, ... include either tapestry-prototype-adapter.js (plus prototype.js and scriptaculous.js) OR tapestry-jquery-adapter.js (plus jquery.js).
      4. tapestry.js [should] be smaller handlers that often just fire additional events; a cascade of events that eventually results in server-side requests

      Objectives :

      1. make certain parts more pluggable i.e. Popup Bubbles
      2. write javascript with functional closures
      3. ... element could have at most one active animation; the animation would have to complete before the next one (cf. jQuery animation and queuing mechanism)

      Challenges :

      1. Remove prototype code from tapestry.js
      2. Keep backward compatibility with existing Tapestry object

        Attachments

          Activity

            People

            • Assignee:
              hlship Howard M. Lewis Ship
              Reporter:
              ccordenier Christophe Cordenier
            • Votes:
              12 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: