demo.html 1.8 KB

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