demo.html 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <html data-trap="App: path">
  2. <head>
  3. <title data-trap="#title"></title>
  4. <style>
  5. [data-trap] {
  6. display: none
  7. }
  8. </style>
  9. <script src="../bower_components/amber/support/amber.js"></script>
  10. <script type='text/javascript' src='../bower_components/amber/support/requirejs/require.min.js'></script>
  11. <link rel="stylesheet" href="demo.css"/>
  12. </head>
  13. <body>
  14. <script type="text/javascript">
  15. var AppEntity;
  16. require.config({
  17. paths: {
  18. 'gh_herby_trapped': '../js',
  19. 'gh_herby_trapped/_source': '../st'
  20. }
  21. });
  22. require(
  23. ["amber/devel",
  24. "gh_herby_trapped/Trapped-Backend", "gh_herby_trapped/Trapped-Frontend", "gh_herby_trapped/Trapped-Processors", "gh_herby_trapped/Trapped-Demo" ],
  25. function (smalltalk) {
  26. smalltalk.defaultAmdNamespace = 'gh_herby_trapped';
  27. smalltalk.initialize();
  28. $(function () {
  29. smalltalk.Browser._openOn_(smalltalk.App);
  30. AppEntity = smalltalk.App._new();
  31. smalltalk.Trapped._start_([AppEntity]);
  32. });
  33. }
  34. );
  35. </script>
  36. <h2 data-trap="#title"></h2>
  37. <div data-trap=": (guardContents (#todos #notNil))">
  38. <span data-trap="#remaining"></span> of <span data-trap="#todos #size"></span> remaning
  39. [ <a href="" data-trap=": (signal archive) whenClicked">archive</a> ]
  40. <ul data-trap="#todos: (widget TodoItemsWidget)"></ul>
  41. <form data-trap=": (signal addTodo) whenSubmitted">
  42. <input type="text" data-trap="#todoText: inputValue" size="30" placeholder="add new todo here"/>
  43. <input type="submit" class="btn-primary" value="add"/>
  44. </form>
  45. </div>
  46. <p data-trap=": (guardContents (#todos #isNil))">Loading ...</p>
  47. </body>
  48. </html>