Skip to content
b-laporte edited this page Sep 26, 2014 · 28 revisions

Highest priority

  • Syntax change: HTML + add $ to all framework's exposed methods and objects ($event, $attributes)
  • IO library
  • support 2-way binding on <select>
  • Observable path
  • Function observe extension + filter
  • Full table example in playground
  • Error reporting
  • Test for samples
  • onupdate / onedit for inputs and textarea
  • Cpt should be able to expose scope to their content

Phase 1

  • ongoing: Official AT widget wrappers
  • ongoing: Official Hashspace wrapper in Atlas
  • ongoing: General documentation page + home page
  • ongoing(BL): Sort/Filter/Pagination helpers based on piped expressions
  • Dialog and popover management
  • support <select> elements
  • Change {template} syntax
  • Widget: Autocomplete
  • Widget: Datepicker
  • ongoing(PK): Finalize hashtester type() method to promote unit-tests in application (PK)
  • Documentation & samples on packaging
  • ongoing(PK): Unit tests on samples (PK)
  • Dispose templates when nodes are removed from DOM?
  • Integration in AT editor
  • rename log.addLogger into log.addAppender to follow log4j convention - cf. http://logging.apache.org/log4j/1.2/manual.html
  • update {log} to flag global variables when logged
  • add content.select("@tagName") and content.selectAll("@tagName") on component element content collection
  • support mechanism to expose component variables to content elements (aka. expose attribute)
  • rename itm_key into itm_index for {foreach}
  • support html and html-unsafe attributes on eltNode to inject HTML content defined in the data model
  • support observe property on component controllers
  • extend dynamic path expressions to support functions and remove function expressions

Phase 2

  • Compilation modes (commonJS or global hsp variable)
  • support html and html-unsafe attributes on eltNode to inject HTML content defined in the data model
  • Animations/Transitions?
  • Custom attributes
  • Possibility to compile server side & re-synchronize dynamically on the client-side
  • Be able to create integer arrays through [1..10] or [1..data.foo]
  • i18n with localization function (e.g. russian plurals)
  • support possibility to pass an event handler to a sub-template (e.g. <#foo onclick="{alert(123)}"/>)

Done

  • hashspace.ariatemplates.com with auto-deployment from github
  • Support full expressions for Array collections
  • Piped expressions (e.g. myArray|orderBy:"name")
  • noder.ariatemplates.com with auto-deployment from github
  • Support of textarea
  • support of [] in expressions
  • Plunker or Codepen or JsFiddle support
  • Use transpiler with compiler & remove $set on samples
  • Easily wrap external widget (e.g. sample with chart.js)
  • Hello world application with grunt build and unit tests
  • Easily integrate #space in an external project (incl. TDD and unit tests)
  • HTML entities
  • Remove insert
  • Improve observers on function expressions
  • playground: add hash-based or pushState-based navigation to the page (i.e. update URL on change of the viewed sample, and read the sample to be displayed onload)

Bugs/TODO

  • change in component path can change component nature
  • {let} scope should be handled in the compiler
  • {let} scope should be supported in component elements
  • component template attributes should have a default value + isEmpty support
Clone this wiki locally