{"push_id":880441473,"size":12,"distinct_size":12,"ref":"refs/heads/master","head":"a7d725dee410d48bf50ae6a0e11f472ae1975629","before":"ec889496a3d1125ba1180c0d9438715e4e1517a0","commits":[{"sha":"ccb1595887ab5948712bf4a99ea1c1c426649cf5","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Add initial blocks support\n\nView blocks are reusable sets of VNode lifecycle callbacks, think something\nlike React components with their `render` defined in template files.\n\nTo use a block, pass a corresponding block class as a key to `blocks` option\nof `render` function. For example:\n\n    var blocks = {\n        // key is the block name, value is the block class\n        form: FormBlock\n    };\n\n    var myRender = function(state) {\n        return render(state, h, { blocks: blocks });\n    };\n\nNow the `form` block can be used by templates, just add a `BLOCK_NAME` attribute\nto `TMPL_INLINE` tag:\n\n    <div class=\"container\">\n        <TMPL_INLINE BLOCK_NAME=\"form\" form_content\n            action=\"/login\">\n    </div>\n\nAs an example, `action` attribute (string \"/login\") is passed to the block -\nit will be available as the first argument of `FormBlock` constructor:\n\n    function FormBlock(props) {\n        this.props = props;\n        console.log(props.action); // logs \"/login\";\n    }\n\nCurrently the following lifecycle callbacks are executed (each of these callbacks\nis optional):\n\n- `blockWillMount`\n- `blockDidMount`\n- `blockWillUpdate`\n- `blockDidUpdate`\n- `blockWillUnmount`\n- `shouldBlockUpdate`\n\nThese methods and their signatures were copied from React's API and should more\nor less correspond to it.","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/ccb1595887ab5948712bf4a99ea1c1c426649cf5"},{"sha":"1697485dd18e3adc4e13c544de6590c53e7aabf0","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Use vdom-to-html instead of hyperscript","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/1697485dd18e3adc4e13c544de6590c53e7aabf0"},{"sha":"50260c7f32b4ade812ac1011f2709607b92dccd1","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Add simple test for blocks","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/50260c7f32b4ade812ac1011f2709607b92dccd1"},{"sha":"e3e1b10a04f458113e2c41e142a77a61f6777286","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Update htmltemplate-parser to get a bugfix for parsing <header />","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/e3e1b10a04f458113e2c41e142a77a61f6777286"},{"sha":"d80fa2aab61fcd927de7c59dd9e116273fdcb856","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Add support for == and != operators","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/d80fa2aab61fcd927de7c59dd9e116273fdcb856"},{"sha":"b6f19481ac10e35fb509daa9ed3eefe9fbc3858e","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Add support for empty HTML attributes, dont pass options to h-tag module and add quick fix for 'for' attribute","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/b6f19481ac10e35fb509daa9ed3eefe9fbc3858e"},{"sha":"605a0cc32d224a0c7f6937c4d5440f53ee188ade","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Maintain a single block instance between rerenders\n\nAlso, add a static getBlockKey method support, needed for optimal\nrendering of collections.","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/605a0cc32d224a0c7f6937c4d5440f53ee188ade"},{"sha":"80c551ee66c4c57b1b68ff5572a9dc3dd0c0fbe8","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Update tests with a new template-runtime.txt contents","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/80c551ee66c4c57b1b68ff5572a9dc3dd0c0fbe8"},{"sha":"cf2ea59dc520b57bc7e6d1474dee876d331e287f","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Add TodoMVC example","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/cf2ea59dc520b57bc7e6d1474dee876d331e287f"},{"sha":"9c6a99c60486146b2a944067ab4a0401d33f1f7a","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Get rid of getBlockKey, define block keys in templates\n\nAlso set the convention to capitalize block names.","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/9c6a99c60486146b2a944067ab4a0401d33f1f7a"},{"sha":"49a49b34947169a91191dcd4f8b163796b928b70","author":{"email":"d0e814cf75889460e63536f8d429c9d174c53d4f@booking.com","name":"Aziz Yuldoshev"},"message":"Update htmltemplate-transform to fix replace-break plugin bug","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/49a49b34947169a91191dcd4f8b163796b928b70"},{"sha":"a7d725dee410d48bf50ae6a0e11f472ae1975629","author":{"email":"5d5315fee98f4af2bc65d041a3c523c707bcda65@gmail.com","name":"Artem Tyurin"},"message":"Merge pull request #18 from Lapple/add-view-blocks\n\nAdd View blocks functionality","distinct":true,"url":"https://api.github.com/repos/agentcooper/htmltemplate-vdom/commits/a7d725dee410d48bf50ae6a0e11f472ae1975629"}]}