neo.mjs 6.9.11 → 6.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/BACKERS.md +0 -30
  2. package/apps/ServiceWorker.mjs +2 -2
  3. package/apps/learnneo/index.html +7 -2
  4. package/apps/learnneo/neo-config.json +1 -4
  5. package/apps/learnneo/view/LivePreview.mjs +171 -0
  6. package/apps/learnneo/view/Viewport.mjs +11 -4
  7. package/apps/learnneo/view/ViewportController.mjs +2 -2
  8. package/apps/learnneo/view/home/ContentTreeList.mjs +93 -5
  9. package/apps/learnneo/view/home/MainContainer.mjs +16 -16
  10. package/apps/learnneo/view/home/MainContainerController.mjs +5 -20
  11. package/apps/learnneo/view/home/MainContainerModel.mjs +3 -5
  12. package/apps/newwebsite/index.html +3 -0
  13. package/buildScripts/convertDesignTokens.mjs +173 -0
  14. package/examples/ServiceWorker.mjs +2 -2
  15. package/package.json +5 -8
  16. package/resources/data/deck/learnneo/p/2023-10-01T18-29-19-158Z.md +14 -16
  17. package/resources/data/deck/learnneo/p/2023-10-07T19-18-28-517Z.md +9 -17
  18. package/resources/data/deck/learnneo/p/2023-10-08T20-20-07-934Z.md +7 -5
  19. package/resources/data/deck/learnneo/p/2023-10-08T20-20-37-336Z.md +17 -10
  20. package/resources/data/deck/learnneo/p/2023-10-14T19-25-08-153Z.md +18 -22
  21. package/resources/data/deck/learnneo/p/2023-10-31T13-59-37-550Z.md +31 -0
  22. package/resources/data/deck/learnneo/p/MainThreadAddonExample.md +15 -0
  23. package/resources/data/deck/learnneo/p/MainThreadAddonIntro.md +46 -0
  24. package/resources/data/deck/learnneo/p/TestLivePreview.md +10 -0
  25. package/resources/data/deck/learnneo/p/stylesheet.md +22 -8
  26. package/resources/data/deck/learnneo/t.json +126 -56
  27. package/resources/data/deck/training/p/2023-01-10T02-21-54-303Z.md +1 -1
  28. package/resources/data/deck/training/t.json +1276 -1
  29. package/resources/design-tokens/json/component.json +288 -0
  30. package/resources/design-tokens/json/core.json +352 -0
  31. package/resources/design-tokens/json/semantic.json +231 -0
  32. package/resources/images/logos/Github-logo-black.svg +1 -0
  33. package/resources/images/logos/Slack-logo-black.svg +17 -0
  34. package/resources/scss/src/apps/learnneo/Viewport.scss +3 -0
  35. package/resources/scss/src/apps/learnneo/home/ContentTreeList.scss +60 -13
  36. package/resources/scss/src/apps/learnneo/home/ContentView.scss +11 -2
  37. package/resources/scss/src/apps/newwebsite/MainContainer.scss +14 -15
  38. package/resources/scss/src/list/Base.scss +4 -0
  39. package/resources/scss/theme-neo-light/Global.scss +36 -16
  40. package/resources/scss/theme-neo-light/button/Base.scss +46 -45
  41. package/resources/scss/theme-neo-light/design-tokens/Component.scss +66 -1
  42. package/resources/scss/theme-neo-light/design-tokens/Core.scss +66 -5
  43. package/resources/scss/theme-neo-light/design-tokens/Semantic.scss +64 -0
  44. package/resources/scss/theme-neo-light/list/Base.scss +27 -6
  45. package/resources/scss/theme-neo-light/tab/header/Button.scss +1 -1
  46. package/src/DefaultConfig.mjs +2 -2
  47. package/src/component/StatusBadge.mjs +194 -246
  48. package/src/component/Video.mjs +19 -25
  49. package/src/controller/Base.mjs +33 -26
  50. package/src/core/Base.mjs +2 -2
  51. package/src/data/connection/Xhr.mjs +1 -1
  52. package/src/form/field/TextArea.mjs +3 -3
  53. package/src/main/DomAccess.mjs +64 -70
  54. package/src/main/DomEvents.mjs +1 -1
  55. package/src/main/addon/HighlightJS.mjs +16 -1
  56. package/src/main/addon/Mwc.mjs +6 -1
  57. package/src/worker/Manager.mjs +8 -3
  58. package/examples/container/dialog/MainContainer.mjs +0 -68
  59. package/examples/container/dialog/MainContainerController.mjs +0 -84
  60. package/examples/container/dialog/app.mjs +0 -6
  61. package/examples/container/dialog/index.html +0 -11
  62. package/examples/container/dialog/neo-config.json +0 -7
  63. package/src/container/Dialog.mjs +0 -205
  64. package/src/main/addon/Dialog.mjs +0 -68
@@ -1 +1,1276 @@
1
- {"data":[{"id":"2022-12-29T19-31-05-548Z","parentId":null,"isLeaf":false,"name":"The Neo Philosophy"},{"id":"2022-12-29T19-31-30-507Z","parentId":"2022-12-29T19-31-05-548Z","isLeaf":true,"name":"What is Neo"},{"id":"2023-01-10T02-21-54-303Z","parentId":"2022-12-29T19-31-05-548Z","isLeaf":true,"name":"Exampless"},{"id":"2023-09-20T15-56-52-693Z","parentId":"2022-12-29T19-31-05-548Z","isLeaf":false,"name":"Coding Style"},{"id":"2023-01-10T01-29-38-148Z","parentId":"2023-09-20T15-56-52-693Z","isLeaf":true,"name":"Introduction"},{"id":"2022-12-29T19-31-55-091Z","parentId":"2023-09-20T15-56-52-693Z","isLeaf":true,"name":"History"},{"id":"2022-12-29T20-03-42-628Z","parentId":"2023-09-20T15-56-52-693Z","isLeaf":true,"name":"Browser-Based Runtime"},{"id":"2022-12-30T19-04-30-990Z","parentId":"2023-09-20T15-56-52-693Z","isLeaf":true,"name":"Neo's Approach"},{"id":"2022-12-29T20-21-20-669Z","parentId":"2023-09-20T15-56-52-693Z","isLeaf":true,"name":"Browser-Based Runtime (continued)"},{"id":"2022-12-27T21-54-09-743Z","parentId":null,"isLeaf":false,"name":"Earthquakes"},{"id":"2023-01-10T01-43-12-166Z","parentId":"2022-12-27T21-54-09-743Z","isLeaf":true,"name":"Lab: Create a Workspace"},{"id":"2022-12-27T21-54-52-300Z","parentId":"2022-12-27T21-54-09-743Z","isLeaf":true,"name":"Useful Scripts"},{"id":"2022-12-29T20-36-54-785Z","parentId":"2022-12-27T21-54-09-743Z","isLeaf":false,"name":"Anatomy"},{"id":"2022-12-27T21-55-23-144Z","parentId":"2022-12-29T20-36-54-785Z","isLeaf":true,"name":".msj"},{"id":"2022-12-29T20-37-08-919Z","parentId":"2022-12-29T20-36-54-785Z","isLeaf":true,"name":"Class-based"},{"id":"2022-12-29T20-37-20-344Z","parentId":"2022-12-29T20-36-54-785Z","isLeaf":true,"name":"Declarative"},{"id":"2022-12-27T21-55-30-948Z","parentId":"2022-12-27T21-54-09-743Z","isLeaf":true,"name":"Order of Execution"},{"id":"2022-12-29T18-36-56-893Z","parentId":"2022-12-27T21-54-09-743Z","isLeaf":true,"name":"Lab: Generate an App "},{"id":"2022-12-29T15-49-59-475Z","parentId":"2022-12-27T21-54-09-743Z","isLeaf":false,"name":"Chrome Devtools"},{"id":"2022-12-29T15-56-54-485Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":true,"name":"Neo Workers"},{"id":"2022-12-29T18-34-25-826Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":true,"name":"DevTools JavaScript Context"},{"id":"2022-12-29T15-57-11-499Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":true,"name":"Getting a Reference to a Component"},{"id":"2023-07-01T21-54-31-329Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":true,"name":"Don't Use these in App Logic"},{"id":"2023-06-28T21-15-43-718Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":false,"name":"A Handy Way to Select Components"},{"id":"2023-06-28T18-03-14-313Z","parentId":"2023-06-28T21-15-43-718Z","isLeaf":true,"name":"Introduction"},{"id":"2023-06-28T21-28-28-379Z","parentId":"2023-06-28T21-15-43-718Z","isLeaf":true,"name":"What We Need to Code"},{"id":"2023-06-28T21-16-24-034Z","parentId":"2023-06-28T21-15-43-718Z","isLeaf":true,"name":"Main Thread Code"},{"id":"2023-06-28T21-16-34-972Z","parentId":"2023-06-28T21-15-43-718Z","isLeaf":true,"name":"The Neo.mjs Code to Detect the Event"},{"id":"2023-06-28T18-26-17-290Z","parentId":"2023-06-28T21-15-43-718Z","isLeaf":true,"name":"Demo"},{"id":"2022-12-29T16-00-13-223Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":true,"name":"Changing Properties"},{"id":"2022-12-31T18-43-56-338Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":true,"name":"Changing Properties (Continued)"},{"id":"2022-12-31T18-51-50-682Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":true,"name":"Changing Properties (Continued)"},{"id":"2022-12-31T18-54-04-176Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":true,"name":"Running Methods"},{"id":"2022-12-29T18-36-08-226Z","parentId":"2022-12-29T15-49-59-475Z","isLeaf":true,"name":"Lab: Introduction to Debugging"},{"id":"2022-12-27T22-13-00-809Z","parentId":"2022-12-27T21-54-09-743Z","isLeaf":false,"name":"Let's Do Something More Interesting"},{"id":"2023-01-08T02-30-13-460Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":false,"name":"Introduction"},{"id":"2022-12-31T23-00-41-222Z","parentId":"2023-01-08T02-30-13-460Z","isLeaf":true,"name":"Introduction"},{"id":"2023-01-08T01-25-12-557Z","parentId":"2023-01-08T02-30-13-460Z","isLeaf":true,"name":"Goals"},{"id":"2023-06-29T23-15-10-411Z","parentId":"2023-01-08T02-30-13-460Z","isLeaf":true,"name":"Key Concepts"},{"id":"2023-01-08T02-11-26-333Z","parentId":"2023-01-08T02-30-13-460Z","isLeaf":true,"name":"The Forest and the Trees"},{"id":"2022-12-27T21-55-43-542Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Let's Add a Table to the App"},{"id":"2022-12-27T22-23-55-083Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"It Does a Lot!"},{"id":"2022-12-27T22-24-07-886Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Key Features"},{"id":"2023-01-01T17-49-18-429Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Inspect the Store"},{"id":"2022-12-27T22-26-59-121Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":false,"name":"Let's Take a Closer Look at the Store"},{"id":"2022-12-27T22-24-52-295Z","parentId":"2022-12-27T22-26-59-121Z","isLeaf":true,"name":"Declarative"},{"id":"2022-12-27T22-25-03-853Z","parentId":"2022-12-27T22-26-59-121Z","isLeaf":true,"name":"Class Based"},{"id":"2022-12-27T22-44-41-791Z","parentId":"2022-12-27T22-26-59-121Z","isLeaf":true,"name":"Neo.data.Store"},{"id":"2022-12-27T22-44-28-881Z","parentId":"2022-12-27T22-26-59-121Z","isLeaf":true,"name":"Neo.data.Model"},{"id":"2023-07-01T15-42-45-193Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Lab: Create a new buildScript"},{"id":"2022-12-31T22-11-55-555Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Lab: Earthquakes \u2014 Create the App"},{"id":"2022-12-27T22-43-58-924Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"<b>Refactor the Table into a Class</b>"},{"id":"2023-01-01T18-44-07-034Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Earthquakes Table"},{"id":"2022-12-31T23-18-55-655Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Lab: Earthquakes \u2014 Refactor"},{"id":"2022-12-27T22-45-21-032Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"The Earthquakes Table is Reusable"},{"id":"2023-01-01T19-04-22-830Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Sharing the Store"},{"id":"2022-12-27T22-49-22-078Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"<b>Component (View) Models</b>"},{"id":"2022-12-27T22-50-20-626Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Example"},{"id":"2023-01-04T01-52-23-454Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Adding a Component Model to Hold the Store"},{"id":"2023-01-08T00-45-11-144Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Refactor the model"},{"id":"2023-01-03T02-07-19-014Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Lab: Earthquakes \u2014 Use a Component Model"},{"id":"2022-12-31T23-25-40-735Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Neo.component.wrapper.GoogleMaps"},{"id":"2023-01-01T18-47-39-766Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Earthquakes Map"},{"id":"2023-01-12T01-50-54-617Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Lab: Earthquakes \u2014 Add a map"},{"id":"2022-12-31T23-25-51-014Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"<b>Events</b>"},{"id":"2023-01-08T01-06-31-267Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Lab: Earthquakes \u2014 Listen to Events"},{"id":"2023-01-01T21-26-53-748Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"<b>Controllers</b>"},{"id":"2023-01-08T01-46-50-723Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Controllers are Simple"},{"id":"2023-01-08T01-24-21-088Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Lab: Earthquakes \u2014 Put the Listeners in the Controller "},{"id":"2023-07-31T00-26-03-842Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"<b>Multi-Window</b>"},{"id":"2023-07-31T00-31-51-933Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"SharedWorker"},{"id":"2023-07-31T00-37-21-927Z","parentId":"2022-12-27T22-13-00-809Z","isLeaf":true,"name":"Lab: Earthquakes &mdash; Make the Application Multi-Window"},{"id":"2023-01-08T01-21-48-916Z","parentId":"2022-12-27T21-54-09-743Z","isLeaf":false,"name":"Review"},{"id":"2023-01-08T02-09-19-678Z","parentId":"2023-01-08T01-21-48-916Z","isLeaf":true,"name":"Review"},{"id":"2023-01-08T02-09-07-802Z","parentId":"2023-01-08T01-21-48-916Z","isLeaf":true,"name":"What's Difficult"},{"id":"2023-01-06T23-44-18-920Z","parentId":null,"isLeaf":false,"name":"Yelp"},{"id":"2023-01-06T23-44-02-340Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"What We'll be Coding"},{"id":"2023-01-06T23-46-36-687Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"What We'll be Coding"},{"id":"2023-01-06T23-46-45-783Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"The Feed"},{"id":"2023-01-01T21-14-45-740Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Create the App"},{"id":"2023-01-14T13-47-50-821Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Neo.component.Base"},{"id":"2023-01-13T21-05-57-708Z","parentId":"2023-01-14T13-47-50-821Z","isLeaf":true,"name":"Neo.component.Base"},{"id":"2023-01-14T13-50-28-199Z","parentId":"2023-01-14T13-47-50-821Z","isLeaf":true,"name":"Properties"},{"id":"2023-01-14T19-29-15-291Z","parentId":"2023-01-14T13-47-50-821Z","isLeaf":true,"name":"Style"},{"id":"2023-01-14T13-59-20-275Z","parentId":"2023-01-14T13-47-50-821Z","isLeaf":true,"name":"Events"},{"id":"2023-01-14T14-03-29-456Z","parentId":"2023-01-14T13-47-50-821Z","isLeaf":true,"name":"Methods"},{"id":"2023-01-15T20-03-30-073Z","parentId":"2023-01-14T13-47-50-821Z","isLeaf":true,"name":"reference"},{"id":"2023-01-06T23-34-13-897Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Create the Banner"},{"id":"2023-01-01T21-11-08-828Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"<b>Config</b>"},{"id":"2023-01-13T23-01-50-449Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Introduction"},{"id":"2023-07-02T16-14-06-970Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"The config:{} Block"},{"id":"2023-01-01T21-11-58-025Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Normal Properties"},{"id":"2023-01-01T21-12-37-340Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"property_"},{"id":"2023-01-16T16-03-40-770Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Assigning Values"},{"id":"2023-01-01T21-13-13-880Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Lifecycle Methods"},{"id":"2023-01-13T19-55-24-735Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"User beforeSet to Validate"},{"id":"2023-01-13T20-08-27-068Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Use beforeSet to Transform"},{"id":"2023-01-13T22-05-05-799Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Use beforeSet to Create a Defensive Copy"},{"id":"2023-01-13T20-23-38-411Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Use afterSet for Side Effects or Firing Events"},{"id":"2023-01-13T20-37-06-267Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Use beforeGet to Control What the Get Returns"},{"id":"2023-01-13T22-08-30-863Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Use beforeGet to Return a Defensive Copy"},{"id":"2023-01-14T14-27-57-678Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Component Property Lifecycle Methods"},{"id":"2023-01-14T17-30-18-228Z","parentId":"2023-01-01T21-11-08-828Z","isLeaf":true,"name":"Calling Super Class Methods"},{"id":"2023-01-01T21-16-22-773Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Containers"},{"id":"2023-01-01T21-18-23-886Z","parentId":"2023-01-01T21-16-22-773Z","isLeaf":true,"name":"items:[]"},{"id":"2023-01-14T17-48-39-137Z","parentId":"2023-01-01T21-16-22-773Z","isLeaf":false,"name":"layout:{}"},{"id":"2023-01-01T21-18-42-290Z","parentId":"2023-01-14T17-48-39-137Z","isLeaf":true,"name":"Introduction"},{"id":"2023-01-14T18-28-39-316Z","parentId":"2023-01-14T17-48-39-137Z","isLeaf":true,"name":"fit"},{"id":"2023-01-14T18-28-44-115Z","parentId":"2023-01-14T17-48-39-137Z","isLeaf":true,"name":"card"},{"id":"2023-01-14T18-28-49-548Z","parentId":"2023-01-14T17-48-39-137Z","isLeaf":true,"name":"vbox, hbox"},{"id":"2023-01-14T18-40-13-758Z","parentId":"2023-01-14T17-48-39-137Z","isLeaf":true,"name":"flexbox"},{"id":"2023-01-01T21-18-31-316Z","parentId":"2023-01-01T21-16-22-773Z","isLeaf":true,"name":"itemDefaults"},{"id":"2023-01-01T21-19-57-020Z","parentId":"2023-01-01T21-16-22-773Z","isLeaf":true,"name":"add()"},{"id":"2023-01-15T22-22-13-517Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Warning!"},{"id":"2023-01-20T12-51-22-646Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Goals"},{"id":"2023-01-06T23-21-12-009Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Create the Filter Container"},{"id":"2023-01-15T18-51-52-134Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Create get/set Properties for City and Category"},{"id":"2023-01-15T22-28-57-508Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Update the UI as the Properties Change"},{"id":"2023-01-15T22-36-30-913Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Update the Properties as the UI Changes"},{"id":"2023-01-15T22-07-52-073Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Those Labs Were Lengthy!"},{"id":"2023-01-01T21-21-02-577Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Events"},{"id":"2023-01-01T21-22-31-184Z","parentId":"2023-01-01T21-21-02-577Z","isLeaf":true,"name":"Terminology"},{"id":"2023-01-01T21-22-38-317Z","parentId":"2023-01-01T21-21-02-577Z","isLeaf":true,"name":"Declarative"},{"id":"2023-01-01T21-22-47-693Z","parentId":"2023-01-01T21-21-02-577Z","isLeaf":true,"name":"Procedural"},{"id":"2023-01-08T17-22-48-841Z","parentId":"2023-01-01T21-21-02-577Z","isLeaf":true,"name":"Buttons"},{"id":"2023-01-01T21-23-17-716Z","parentId":"2023-01-01T21-21-02-577Z","isLeaf":true,"name":"How it Works"},{"id":"2023-01-01T21-23-28-532Z","parentId":"2023-01-01T21-21-02-577Z","isLeaf":true,"name":"Firing Your Own Events"},{"id":"2023-01-06T23-21-31-685Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Fire cityChange Event"},{"id":"2023-01-01T21-24-25-230Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Panels"},{"id":"2023-01-01T23-38-42-863Z","parentId":"2023-01-01T21-24-25-230Z","isLeaf":true,"name":"Introduction"},{"id":"2023-01-16T20-21-56-859Z","parentId":"2023-01-01T21-24-25-230Z","isLeaf":true,"name":"headers:[]"},{"id":"2023-01-08T20-57-36-333Z","parentId":"2023-01-01T21-24-25-230Z","isLeaf":true,"name":"Toolbars"},{"id":"2023-01-08T20-57-51-136Z","parentId":"2023-01-01T21-24-25-230Z","isLeaf":true,"name":"Buttons"},{"id":"2023-01-14T00-17-55-115Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Tab Panels"},{"id":"2023-01-16T20-24-09-690Z","parentId":"2023-01-14T00-17-55-115Z","isLeaf":true,"name":"Neo.tab.Container"},{"id":"2022-12-28T17-11-34-653Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Create the Tab Panel and Map"},{"id":"2022-12-28T16-58-00-245Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Component (View) Models"},{"id":"2022-12-28T17-13-09-994Z","parentId":"2022-12-28T16-58-00-245Z","isLeaf":true,"name":"Introduction"},{"id":"2022-12-28T16-58-47-786Z","parentId":"2022-12-28T16-58-00-245Z","isLeaf":true,"name":"Structure"},{"id":"2022-12-28T21-31-39-670Z","parentId":"2022-12-28T16-58-00-245Z","isLeaf":false,"name":"Exploring Component Models"},{"id":"2022-12-28T17-10-18-058Z","parentId":"2022-12-28T21-31-39-670Z","isLeaf":true,"name":"The Bound Property Must Have a Setter"},{"id":"2022-12-29T01-43-32-431Z","parentId":"2022-12-28T21-31-39-670Z","isLeaf":true,"name":"One-Way Binding"},{"id":"2022-12-28T17-10-42-296Z","parentId":"2022-12-28T21-31-39-670Z","isLeaf":true,"name":"Your Own Setter Versus a Config"},{"id":"2022-12-28T21-32-14-420Z","parentId":"2022-12-28T21-31-39-670Z","isLeaf":true,"name":"Syncing Properties without Component Models"},{"id":"2022-12-28T16-58-55-192Z","parentId":"2022-12-28T21-31-39-670Z","isLeaf":true,"name":"Component Model \u2014 Inline vs Class"},{"id":"2023-01-20T13-06-46-614Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Neo.controller.Component Review"},{"id":"2023-01-20T13-08-51-600Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Neo.controller.Component Review"},{"id":"2023-01-14T00-33-05-958Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Bind the Map Center"},{"id":"2023-01-20T15-20-13-363Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Create View Mode and Conroller Classes"},{"id":"2023-01-06T23-21-59-596Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Bind City and Category"},{"id":"2023-01-20T15-34-58-813Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Detect Changes to View Model Properties"},{"id":"2023-01-01T21-27-44-418Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Sending and Receiving Data"},{"id":"2023-01-08T20-17-25-083Z","parentId":"2023-01-01T21-27-44-418Z","isLeaf":false,"name":"Neo.data.*"},{"id":"2023-01-08T20-18-07-668Z","parentId":"2023-01-08T20-17-25-083Z","isLeaf":false,"name":"Introduction"},{"id":"2023-01-08T20-44-13-323Z","parentId":"2023-01-08T20-17-25-083Z","isLeaf":false,"name":"Neo.data.Store"},{"id":"2023-01-08T20-47-23-682Z","parentId":"2023-01-08T20-44-13-323Z","isLeaf":true,"name":"Introduction"},{"id":"2023-01-21T20-57-32-927Z","parentId":"2023-01-08T20-44-13-323Z","isLeaf":true,"name":"Commonly Used Configs"},{"id":"2023-01-21T16-33-14-852Z","parentId":"2023-01-08T20-44-13-323Z","isLeaf":false,"name":"Creating"},{"id":"2023-01-21T16-33-20-458Z","parentId":"2023-01-21T16-33-14-852Z","isLeaf":true,"name":"In-line \"store\" Config"},{"id":"2023-01-21T16-45-28-263Z","parentId":"2023-01-21T16-33-14-852Z","isLeaf":true,"name":"Creating a Store in the View Model"},{"id":"2023-01-21T16-56-25-452Z","parentId":"2023-01-21T16-33-14-852Z","isLeaf":true,"name":"Create and Use a Store Class"},{"id":"2023-01-21T17-28-31-493Z","parentId":"2023-01-21T16-33-14-852Z","isLeaf":true,"name":"Neo.create()"},{"id":"2023-01-08T20-47-32-064Z","parentId":"2023-01-08T20-44-13-323Z","isLeaf":true,"name":"Fetching Data"},{"id":"2023-01-21T20-56-28-184Z","parentId":"2023-01-08T20-44-13-323Z","isLeaf":true,"name":"responseRoot"},{"id":"2023-01-08T20-48-32-466Z","parentId":"2023-01-08T20-44-13-323Z","isLeaf":true,"name":"Selecting Records"},{"id":"2023-01-09T00-19-42-024Z","parentId":"2023-01-08T20-44-13-323Z","isLeaf":false,"name":"Sorting"},{"id":"2023-01-08T20-48-03-791Z","parentId":"2023-01-09T00-19-42-024Z","isLeaf":true,"name":"Sorting"},{"id":"2023-01-09T00-35-40-671Z","parentId":"2023-01-09T00-19-42-024Z","isLeaf":true,"name":"Methods"},{"id":"2023-01-08T20-47-57-045Z","parentId":"2023-01-08T20-44-13-323Z","isLeaf":true,"name":"Filtering"},{"id":"2023-01-09T00-07-37-951Z","parentId":"2023-01-08T20-44-13-323Z","isLeaf":true,"name":"Grouping"},{"id":"2023-01-08T20-18-54-411Z","parentId":"2023-01-08T20-17-25-083Z","isLeaf":false,"name":"Neo.data.Model"},{"id":"2023-01-08T20-46-11-806Z","parentId":"2023-01-08T20-18-54-411Z","isLeaf":true,"name":"Neo.data.Model"},{"id":"2023-01-21T20-08-24-452Z","parentId":"2023-01-08T20-18-54-411Z","isLeaf":true,"name":"fields[]"},{"id":"2023-01-21T19-49-51-918Z","parentId":"2023-01-08T20-18-54-411Z","isLeaf":true,"name":"Field#calculate()"},{"id":"2023-01-21T20-35-54-947Z","parentId":"2023-01-08T20-18-54-411Z","isLeaf":true,"name":"Example"},{"id":"2023-01-08T20-48-51-322Z","parentId":"2023-01-08T20-18-54-411Z","isLeaf":true,"name":"Neo.data.RecordFactory"},{"id":"2023-01-08T20-49-52-741Z","parentId":"2023-01-01T21-27-44-418Z","isLeaf":true,"name":"Neo.data.connection.Xhr"},{"id":"2023-01-08T20-52-03-556Z","parentId":"2023-01-01T21-27-44-418Z","isLeaf":true,"name":"Neo.data.connection.WebSocket"},{"id":"2023-01-21T20-54-47-603Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"The Data Feed"},{"id":"2023-01-14T00-40-27-784Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Fetch Yelp Data"},{"id":"2023-01-21T23-13-33-394Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Contemplate the Moment"},{"id":"2023-01-01T21-29-09-942Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Tables"},{"id":"2023-01-28T19-11-37-464Z","parentId":"2023-01-01T21-29-09-942Z","isLeaf":true,"name":"Introduction"},{"id":"2023-01-28T20-53-56-476Z","parentId":"2023-01-01T21-29-09-942Z","isLeaf":true,"name":"columns:[]"},{"id":"2023-01-28T20-58-43-776Z","parentId":"2023-01-01T21-29-09-942Z","isLeaf":true,"name":"renderer"},{"id":"2023-01-28T22-24-34-808Z","parentId":"2023-01-01T21-29-09-942Z","isLeaf":true,"name":"Example"},{"id":"2023-01-28T22-18-41-259Z","parentId":"2023-01-01T21-29-09-942Z","isLeaf":true,"name":"Example"},{"id":"2023-01-28T20-43-41-188Z","parentId":"2023-01-01T21-29-09-942Z","isLeaf":true,"name":"Anatomy"},{"id":"2023-01-29T16-25-24-528Z","parentId":"2023-01-01T21-29-09-942Z","isLeaf":true,"name":"Selection"},{"id":"2023-01-29T21-14-32-588Z","parentId":"2023-01-01T21-29-09-942Z","isLeaf":true,"name":"What's Selected"},{"id":"2023-01-14T00-41-59-081Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Add a Table"},{"id":"2023-01-01T21-28-12-759Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Forms and Fields"},{"id":"2023-01-31T20-34-30-261Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Introduction"},{"id":"2023-02-04T20-09-50-169Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Hierarchy"},{"id":"2023-01-31T20-33-55-855Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Fields are Name/Value Pairs"},{"id":"2023-02-04T20-19-42-740Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.field.Base"},{"id":"2023-02-04T20-23-56-013Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.field.Text"},{"id":"2023-01-31T20-52-53-367Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.field.Text"},{"id":"2023-02-04T15-49-47-597Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.field.Text Validation"},{"id":"2023-02-04T20-28-12-391Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.field.Text validator()"},{"id":"2023-02-06T00-14-54-457Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.field.Number"},{"id":"2023-02-05T00-20-32-554Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.field.Picker Components"},{"id":"2023-02-04T15-18-35-682Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"triggers"},{"id":"2023-02-05T00-35-56-282Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.field.Select"},{"id":"2023-02-05T15-36-57-182Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.field.Select"},{"id":"2023-01-31T19-24-53-504Z","parentId":"2023-01-01T21-28-12-759Z","isLeaf":true,"name":"Neo.form.Container"},{"id":"2023-02-05T17-39-51-712Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Encapsulate the Tab Panel View"},{"id":"2023-02-05T18-12-14-489Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Create the Detail Panel"},{"id":"2023-02-05T17-44-53-815Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Show Business Details"},{"id":"2023-02-05T17-45-40-114Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":true,"name":"Lab: Yelp \u2014 Add a Form"},{"id":"2023-01-21T16-21-16-292Z","parentId":"2023-01-06T23-44-18-920Z","isLeaf":false,"name":"Styling"},{"id":"2023-01-10T01-09-10-911Z","parentId":null,"isLeaf":false,"name":"iTunes"}]}
1
+ {
2
+ "data": [
3
+ {
4
+ "id": "2022-12-29T19-31-05-548Z",
5
+ "parentId": null,
6
+ "isLeaf": false,
7
+ "name": "The Neo Philosophy"
8
+ },
9
+ {
10
+ "id": "2022-12-29T19-31-30-507Z",
11
+ "parentId": "2022-12-29T19-31-05-548Z",
12
+ "isLeaf": true,
13
+ "name": "What is Neo"
14
+ },
15
+ {
16
+ "id": "2023-01-10T02-21-54-303Z",
17
+ "parentId": "2022-12-29T19-31-05-548Z",
18
+ "isLeaf": true,
19
+ "name": "Exampless"
20
+ },
21
+ {
22
+ "id": "2023-09-20T15-56-52-693Z",
23
+ "parentId": "2022-12-29T19-31-05-548Z",
24
+ "isLeaf": false,
25
+ "name": "Coding Style"
26
+ },
27
+ {
28
+ "id": "2023-01-10T01-29-38-148Z",
29
+ "parentId": "2023-09-20T15-56-52-693Z",
30
+ "isLeaf": true,
31
+ "name": "Introduction"
32
+ },
33
+ {
34
+ "id": "2022-12-29T19-31-55-091Z",
35
+ "parentId": "2023-09-20T15-56-52-693Z",
36
+ "isLeaf": true,
37
+ "name": "History"
38
+ },
39
+ {
40
+ "id": "2022-12-29T20-03-42-628Z",
41
+ "parentId": "2023-09-20T15-56-52-693Z",
42
+ "isLeaf": true,
43
+ "name": "Browser-Based Runtime"
44
+ },
45
+ {
46
+ "id": "2022-12-30T19-04-30-990Z",
47
+ "parentId": "2023-09-20T15-56-52-693Z",
48
+ "isLeaf": true,
49
+ "name": "Neo's Approach"
50
+ },
51
+ {
52
+ "id": "2022-12-29T20-21-20-669Z",
53
+ "parentId": "2023-09-20T15-56-52-693Z",
54
+ "isLeaf": true,
55
+ "name": "Browser-Based Runtime (continued)"
56
+ },
57
+ {
58
+ "id": "2022-12-27T21-54-09-743Z",
59
+ "parentId": null,
60
+ "isLeaf": false,
61
+ "name": "Earthquakes"
62
+ },
63
+ {
64
+ "id": "2023-01-10T01-43-12-166Z",
65
+ "parentId": "2022-12-27T21-54-09-743Z",
66
+ "isLeaf": true,
67
+ "name": "Lab: Create a Workspace"
68
+ },
69
+ {
70
+ "id": "2022-12-27T21-54-52-300Z",
71
+ "parentId": "2022-12-27T21-54-09-743Z",
72
+ "isLeaf": true,
73
+ "name": "Useful Scripts"
74
+ },
75
+ {
76
+ "id": "2022-12-29T20-36-54-785Z",
77
+ "parentId": "2022-12-27T21-54-09-743Z",
78
+ "isLeaf": false,
79
+ "name": "Anatomy"
80
+ },
81
+ {
82
+ "id": "2022-12-27T21-55-23-144Z",
83
+ "parentId": "2022-12-29T20-36-54-785Z",
84
+ "isLeaf": true,
85
+ "name": ".msj"
86
+ },
87
+ {
88
+ "id": "2022-12-29T20-37-08-919Z",
89
+ "parentId": "2022-12-29T20-36-54-785Z",
90
+ "isLeaf": true,
91
+ "name": "Class-based"
92
+ },
93
+ {
94
+ "id": "2022-12-29T20-37-20-344Z",
95
+ "parentId": "2022-12-29T20-36-54-785Z",
96
+ "isLeaf": true,
97
+ "name": "Declarative"
98
+ },
99
+ {
100
+ "id": "2022-12-27T21-55-30-948Z",
101
+ "parentId": "2022-12-27T21-54-09-743Z",
102
+ "isLeaf": true,
103
+ "name": "Order of Execution"
104
+ },
105
+ {
106
+ "id": "2022-12-29T18-36-56-893Z",
107
+ "parentId": "2022-12-27T21-54-09-743Z",
108
+ "isLeaf": true,
109
+ "name": "Lab: Generate an App "
110
+ },
111
+ {
112
+ "id": "2022-12-29T15-49-59-475Z",
113
+ "parentId": "2022-12-27T21-54-09-743Z",
114
+ "isLeaf": false,
115
+ "name": "Chrome Devtools"
116
+ },
117
+ {
118
+ "id": "2022-12-29T15-56-54-485Z",
119
+ "parentId": "2022-12-29T15-49-59-475Z",
120
+ "isLeaf": true,
121
+ "name": "Neo Workers"
122
+ },
123
+ {
124
+ "id": "2022-12-29T18-34-25-826Z",
125
+ "parentId": "2022-12-29T15-49-59-475Z",
126
+ "isLeaf": true,
127
+ "name": "DevTools JavaScript Context"
128
+ },
129
+ {
130
+ "id": "2022-12-29T15-57-11-499Z",
131
+ "parentId": "2022-12-29T15-49-59-475Z",
132
+ "isLeaf": true,
133
+ "name": "Getting a Reference to a Component"
134
+ },
135
+ {
136
+ "id": "2023-07-01T21-54-31-329Z",
137
+ "parentId": "2022-12-29T15-49-59-475Z",
138
+ "isLeaf": true,
139
+ "name": "Don't Use these in App Logic"
140
+ },
141
+ {
142
+ "id": "2023-06-28T21-15-43-718Z",
143
+ "parentId": "2022-12-29T15-49-59-475Z",
144
+ "isLeaf": false,
145
+ "name": "A Handy Way to Select Components"
146
+ },
147
+ {
148
+ "id": "2023-06-28T18-03-14-313Z",
149
+ "parentId": "2023-06-28T21-15-43-718Z",
150
+ "isLeaf": true,
151
+ "name": "Introduction"
152
+ },
153
+ {
154
+ "id": "2023-06-28T21-28-28-379Z",
155
+ "parentId": "2023-06-28T21-15-43-718Z",
156
+ "isLeaf": true,
157
+ "name": "What We Need to Code"
158
+ },
159
+ {
160
+ "id": "2023-06-28T21-16-24-034Z",
161
+ "parentId": "2023-06-28T21-15-43-718Z",
162
+ "isLeaf": true,
163
+ "name": "Main Thread Code"
164
+ },
165
+ {
166
+ "id": "2023-06-28T21-16-34-972Z",
167
+ "parentId": "2023-06-28T21-15-43-718Z",
168
+ "isLeaf": true,
169
+ "name": "The Neo.mjs Code to Detect the Event"
170
+ },
171
+ {
172
+ "id": "2023-06-28T18-26-17-290Z",
173
+ "parentId": "2023-06-28T21-15-43-718Z",
174
+ "isLeaf": true,
175
+ "name": "Demo"
176
+ },
177
+ {
178
+ "id": "2022-12-29T16-00-13-223Z",
179
+ "parentId": "2022-12-29T15-49-59-475Z",
180
+ "isLeaf": true,
181
+ "name": "Changing Properties"
182
+ },
183
+ {
184
+ "id": "2022-12-31T18-43-56-338Z",
185
+ "parentId": "2022-12-29T15-49-59-475Z",
186
+ "isLeaf": true,
187
+ "name": "Changing Properties (Continued)"
188
+ },
189
+ {
190
+ "id": "2022-12-31T18-51-50-682Z",
191
+ "parentId": "2022-12-29T15-49-59-475Z",
192
+ "isLeaf": true,
193
+ "name": "Changing Properties (Continued)"
194
+ },
195
+ {
196
+ "id": "2022-12-31T18-54-04-176Z",
197
+ "parentId": "2022-12-29T15-49-59-475Z",
198
+ "isLeaf": true,
199
+ "name": "Running Methods"
200
+ },
201
+ {
202
+ "id": "2022-12-29T18-36-08-226Z",
203
+ "parentId": "2022-12-29T15-49-59-475Z",
204
+ "isLeaf": true,
205
+ "name": "Lab: Introduction to Debugging"
206
+ },
207
+ {
208
+ "id": "2022-12-27T22-13-00-809Z",
209
+ "parentId": "2022-12-27T21-54-09-743Z",
210
+ "isLeaf": false,
211
+ "name": "Let's Do Something More Interesting"
212
+ },
213
+ {
214
+ "id": "2023-01-08T02-30-13-460Z",
215
+ "parentId": "2022-12-27T22-13-00-809Z",
216
+ "isLeaf": false,
217
+ "name": "Introduction"
218
+ },
219
+ {
220
+ "id": "2022-12-31T23-00-41-222Z",
221
+ "parentId": "2023-01-08T02-30-13-460Z",
222
+ "isLeaf": true,
223
+ "name": "Introduction"
224
+ },
225
+ {
226
+ "id": "2023-01-08T01-25-12-557Z",
227
+ "parentId": "2023-01-08T02-30-13-460Z",
228
+ "isLeaf": true,
229
+ "name": "Goals"
230
+ },
231
+ {
232
+ "id": "2023-06-29T23-15-10-411Z",
233
+ "parentId": "2023-01-08T02-30-13-460Z",
234
+ "isLeaf": true,
235
+ "name": "Key Concepts"
236
+ },
237
+ {
238
+ "id": "2023-01-08T02-11-26-333Z",
239
+ "parentId": "2023-01-08T02-30-13-460Z",
240
+ "isLeaf": true,
241
+ "name": "The Forest and the Trees"
242
+ },
243
+ {
244
+ "id": "2022-12-27T21-55-43-542Z",
245
+ "parentId": "2022-12-27T22-13-00-809Z",
246
+ "isLeaf": true,
247
+ "name": "Let's Add a Table to the App"
248
+ },
249
+ {
250
+ "id": "2022-12-27T22-23-55-083Z",
251
+ "parentId": "2022-12-27T22-13-00-809Z",
252
+ "isLeaf": true,
253
+ "name": "It Does a Lot!"
254
+ },
255
+ {
256
+ "id": "2022-12-27T22-24-07-886Z",
257
+ "parentId": "2022-12-27T22-13-00-809Z",
258
+ "isLeaf": true,
259
+ "name": "Key Features"
260
+ },
261
+ {
262
+ "id": "2023-01-01T17-49-18-429Z",
263
+ "parentId": "2022-12-27T22-13-00-809Z",
264
+ "isLeaf": true,
265
+ "name": "Inspect the Store"
266
+ },
267
+ {
268
+ "id": "2022-12-27T22-26-59-121Z",
269
+ "parentId": "2022-12-27T22-13-00-809Z",
270
+ "isLeaf": false,
271
+ "name": "Let's Take a Closer Look at the Store"
272
+ },
273
+ {
274
+ "id": "2022-12-27T22-24-52-295Z",
275
+ "parentId": "2022-12-27T22-26-59-121Z",
276
+ "isLeaf": true,
277
+ "name": "Declarative"
278
+ },
279
+ {
280
+ "id": "2022-12-27T22-25-03-853Z",
281
+ "parentId": "2022-12-27T22-26-59-121Z",
282
+ "isLeaf": true,
283
+ "name": "Class Based"
284
+ },
285
+ {
286
+ "id": "2022-12-27T22-44-41-791Z",
287
+ "parentId": "2022-12-27T22-26-59-121Z",
288
+ "isLeaf": true,
289
+ "name": "Neo.data.Store"
290
+ },
291
+ {
292
+ "id": "2022-12-27T22-44-28-881Z",
293
+ "parentId": "2022-12-27T22-26-59-121Z",
294
+ "isLeaf": true,
295
+ "name": "Neo.data.Model"
296
+ },
297
+ {
298
+ "id": "2023-07-01T15-42-45-193Z",
299
+ "parentId": "2022-12-27T22-13-00-809Z",
300
+ "isLeaf": true,
301
+ "name": "Lab: Create a new buildScript"
302
+ },
303
+ {
304
+ "id": "2022-12-31T22-11-55-555Z",
305
+ "parentId": "2022-12-27T22-13-00-809Z",
306
+ "isLeaf": true,
307
+ "name": "Lab: Earthquakes \u2014 Create the App"
308
+ },
309
+ {
310
+ "id": "2022-12-27T22-43-58-924Z",
311
+ "parentId": "2022-12-27T22-13-00-809Z",
312
+ "isLeaf": true,
313
+ "name": "<b>Refactor the Table into a Class</b>"
314
+ },
315
+ {
316
+ "id": "2023-01-01T18-44-07-034Z",
317
+ "parentId": "2022-12-27T22-13-00-809Z",
318
+ "isLeaf": true,
319
+ "name": "Earthquakes Table"
320
+ },
321
+ {
322
+ "id": "2022-12-31T23-18-55-655Z",
323
+ "parentId": "2022-12-27T22-13-00-809Z",
324
+ "isLeaf": true,
325
+ "name": "Lab: Earthquakes \u2014 Refactor"
326
+ },
327
+ {
328
+ "id": "2022-12-27T22-45-21-032Z",
329
+ "parentId": "2022-12-27T22-13-00-809Z",
330
+ "isLeaf": true,
331
+ "name": "The Earthquakes Table is Reusable"
332
+ },
333
+ {
334
+ "id": "2023-01-01T19-04-22-830Z",
335
+ "parentId": "2022-12-27T22-13-00-809Z",
336
+ "isLeaf": true,
337
+ "name": "Sharing the Store"
338
+ },
339
+ {
340
+ "id": "2022-12-27T22-49-22-078Z",
341
+ "parentId": "2022-12-27T22-13-00-809Z",
342
+ "isLeaf": true,
343
+ "name": "<b>Component (View) Models</b>"
344
+ },
345
+ {
346
+ "id": "2022-12-27T22-50-20-626Z",
347
+ "parentId": "2022-12-27T22-13-00-809Z",
348
+ "isLeaf": true,
349
+ "name": "Example"
350
+ },
351
+ {
352
+ "id": "2023-01-04T01-52-23-454Z",
353
+ "parentId": "2022-12-27T22-13-00-809Z",
354
+ "isLeaf": true,
355
+ "name": "Adding a Component Model to Hold the Store"
356
+ },
357
+ {
358
+ "id": "2023-01-08T00-45-11-144Z",
359
+ "parentId": "2022-12-27T22-13-00-809Z",
360
+ "isLeaf": true,
361
+ "name": "Refactor the model"
362
+ },
363
+ {
364
+ "id": "2023-01-03T02-07-19-014Z",
365
+ "parentId": "2022-12-27T22-13-00-809Z",
366
+ "isLeaf": true,
367
+ "name": "Lab: Earthquakes \u2014 Use a Component Model"
368
+ },
369
+ {
370
+ "id": "2022-12-31T23-25-40-735Z",
371
+ "parentId": "2022-12-27T22-13-00-809Z",
372
+ "isLeaf": true,
373
+ "name": "Neo.component.wrapper.GoogleMaps"
374
+ },
375
+ {
376
+ "id": "2023-01-01T18-47-39-766Z",
377
+ "parentId": "2022-12-27T22-13-00-809Z",
378
+ "isLeaf": true,
379
+ "name": "Earthquakes Map"
380
+ },
381
+ {
382
+ "id": "2023-01-12T01-50-54-617Z",
383
+ "parentId": "2022-12-27T22-13-00-809Z",
384
+ "isLeaf": true,
385
+ "name": "Lab: Earthquakes \u2014 Add a map"
386
+ },
387
+ {
388
+ "id": "2022-12-31T23-25-51-014Z",
389
+ "parentId": "2022-12-27T22-13-00-809Z",
390
+ "isLeaf": true,
391
+ "name": "<b>Events</b>"
392
+ },
393
+ {
394
+ "id": "2023-01-08T01-06-31-267Z",
395
+ "parentId": "2022-12-27T22-13-00-809Z",
396
+ "isLeaf": true,
397
+ "name": "Lab: Earthquakes \u2014 Listen to Events"
398
+ },
399
+ {
400
+ "id": "2023-01-01T21-26-53-748Z",
401
+ "parentId": "2022-12-27T22-13-00-809Z",
402
+ "isLeaf": true,
403
+ "name": "<b>Controllers</b>"
404
+ },
405
+ {
406
+ "id": "2023-01-08T01-46-50-723Z",
407
+ "parentId": "2022-12-27T22-13-00-809Z",
408
+ "isLeaf": true,
409
+ "name": "Controllers are Simple"
410
+ },
411
+ {
412
+ "id": "2023-01-08T01-24-21-088Z",
413
+ "parentId": "2022-12-27T22-13-00-809Z",
414
+ "isLeaf": true,
415
+ "name": "Lab: Earthquakes \u2014 Put the Listeners in the Controller "
416
+ },
417
+ {
418
+ "id": "2023-07-31T00-26-03-842Z",
419
+ "parentId": "2022-12-27T22-13-00-809Z",
420
+ "isLeaf": true,
421
+ "name": "<b>Multi-Window</b>"
422
+ },
423
+ {
424
+ "id": "2023-07-31T00-31-51-933Z",
425
+ "parentId": "2022-12-27T22-13-00-809Z",
426
+ "isLeaf": true,
427
+ "name": "SharedWorker"
428
+ },
429
+ {
430
+ "id": "2023-07-31T00-37-21-927Z",
431
+ "parentId": "2022-12-27T22-13-00-809Z",
432
+ "isLeaf": true,
433
+ "name": "Lab: Earthquakes &mdash; Make the Application Multi-Window"
434
+ },
435
+ {
436
+ "id": "2023-01-08T01-21-48-916Z",
437
+ "parentId": "2022-12-27T21-54-09-743Z",
438
+ "isLeaf": false,
439
+ "name": "Review"
440
+ },
441
+ {
442
+ "id": "2023-01-08T02-09-19-678Z",
443
+ "parentId": "2023-01-08T01-21-48-916Z",
444
+ "isLeaf": true,
445
+ "name": "Review"
446
+ },
447
+ {
448
+ "id": "2023-01-08T02-09-07-802Z",
449
+ "parentId": "2023-01-08T01-21-48-916Z",
450
+ "isLeaf": true,
451
+ "name": "What's Difficult"
452
+ },
453
+ {
454
+ "id": "2023-01-06T23-44-18-920Z",
455
+ "parentId": null,
456
+ "isLeaf": false,
457
+ "name": "Yelp"
458
+ },
459
+ {
460
+ "id": "2023-01-06T23-44-02-340Z",
461
+ "parentId": "2023-01-06T23-44-18-920Z",
462
+ "isLeaf": true,
463
+ "name": "What We'll be Coding"
464
+ },
465
+ {
466
+ "id": "2023-01-06T23-46-36-687Z",
467
+ "parentId": "2023-01-06T23-44-18-920Z",
468
+ "isLeaf": true,
469
+ "name": "What We'll be Coding"
470
+ },
471
+ {
472
+ "id": "2023-01-06T23-46-45-783Z",
473
+ "parentId": "2023-01-06T23-44-18-920Z",
474
+ "isLeaf": true,
475
+ "name": "The Feed"
476
+ },
477
+ {
478
+ "id": "2023-01-01T21-14-45-740Z",
479
+ "parentId": "2023-01-06T23-44-18-920Z",
480
+ "isLeaf": true,
481
+ "name": "Lab: Yelp \u2014 Create the App"
482
+ },
483
+ {
484
+ "id": "2023-01-14T13-47-50-821Z",
485
+ "parentId": "2023-01-06T23-44-18-920Z",
486
+ "isLeaf": false,
487
+ "name": "Neo.component.Base"
488
+ },
489
+ {
490
+ "id": "2023-01-13T21-05-57-708Z",
491
+ "parentId": "2023-01-14T13-47-50-821Z",
492
+ "isLeaf": true,
493
+ "name": "Neo.component.Base"
494
+ },
495
+ {
496
+ "id": "2023-01-14T13-50-28-199Z",
497
+ "parentId": "2023-01-14T13-47-50-821Z",
498
+ "isLeaf": true,
499
+ "name": "Properties"
500
+ },
501
+ {
502
+ "id": "2023-01-14T19-29-15-291Z",
503
+ "parentId": "2023-01-14T13-47-50-821Z",
504
+ "isLeaf": true,
505
+ "name": "Style"
506
+ },
507
+ {
508
+ "id": "2023-01-14T13-59-20-275Z",
509
+ "parentId": "2023-01-14T13-47-50-821Z",
510
+ "isLeaf": true,
511
+ "name": "Events"
512
+ },
513
+ {
514
+ "id": "2023-01-14T14-03-29-456Z",
515
+ "parentId": "2023-01-14T13-47-50-821Z",
516
+ "isLeaf": true,
517
+ "name": "Methods"
518
+ },
519
+ {
520
+ "id": "2023-01-15T20-03-30-073Z",
521
+ "parentId": "2023-01-14T13-47-50-821Z",
522
+ "isLeaf": true,
523
+ "name": "reference"
524
+ },
525
+ {
526
+ "id": "2023-01-06T23-34-13-897Z",
527
+ "parentId": "2023-01-06T23-44-18-920Z",
528
+ "isLeaf": true,
529
+ "name": "Lab: Yelp \u2014 Create the Banner"
530
+ },
531
+ {
532
+ "id": "2023-01-01T21-11-08-828Z",
533
+ "parentId": "2023-01-06T23-44-18-920Z",
534
+ "isLeaf": false,
535
+ "name": "<b>Config</b>"
536
+ },
537
+ {
538
+ "id": "2023-01-13T23-01-50-449Z",
539
+ "parentId": "2023-01-01T21-11-08-828Z",
540
+ "isLeaf": true,
541
+ "name": "Introduction"
542
+ },
543
+ {
544
+ "id": "2023-07-02T16-14-06-970Z",
545
+ "parentId": "2023-01-01T21-11-08-828Z",
546
+ "isLeaf": true,
547
+ "name": "The config:{} Block"
548
+ },
549
+ {
550
+ "id": "2023-01-01T21-11-58-025Z",
551
+ "parentId": "2023-01-01T21-11-08-828Z",
552
+ "isLeaf": true,
553
+ "name": "Normal Properties"
554
+ },
555
+ {
556
+ "id": "2023-01-01T21-12-37-340Z",
557
+ "parentId": "2023-01-01T21-11-08-828Z",
558
+ "isLeaf": true,
559
+ "name": "property_"
560
+ },
561
+ {
562
+ "id": "2023-01-16T16-03-40-770Z",
563
+ "parentId": "2023-01-01T21-11-08-828Z",
564
+ "isLeaf": true,
565
+ "name": "Assigning Values"
566
+ },
567
+ {
568
+ "id": "2023-01-01T21-13-13-880Z",
569
+ "parentId": "2023-01-01T21-11-08-828Z",
570
+ "isLeaf": true,
571
+ "name": "Lifecycle Methods"
572
+ },
573
+ {
574
+ "id": "2023-01-13T19-55-24-735Z",
575
+ "parentId": "2023-01-01T21-11-08-828Z",
576
+ "isLeaf": true,
577
+ "name": "User beforeSet to Validate"
578
+ },
579
+ {
580
+ "id": "2023-01-13T20-08-27-068Z",
581
+ "parentId": "2023-01-01T21-11-08-828Z",
582
+ "isLeaf": true,
583
+ "name": "Use beforeSet to Transform"
584
+ },
585
+ {
586
+ "id": "2023-01-13T22-05-05-799Z",
587
+ "parentId": "2023-01-01T21-11-08-828Z",
588
+ "isLeaf": true,
589
+ "name": "Use beforeSet to Create a Defensive Copy"
590
+ },
591
+ {
592
+ "id": "2023-01-13T20-23-38-411Z",
593
+ "parentId": "2023-01-01T21-11-08-828Z",
594
+ "isLeaf": true,
595
+ "name": "Use afterSet for Side Effects or Firing Events"
596
+ },
597
+ {
598
+ "id": "2023-01-13T20-37-06-267Z",
599
+ "parentId": "2023-01-01T21-11-08-828Z",
600
+ "isLeaf": true,
601
+ "name": "Use beforeGet to Control What the Get Returns"
602
+ },
603
+ {
604
+ "id": "2023-01-13T22-08-30-863Z",
605
+ "parentId": "2023-01-01T21-11-08-828Z",
606
+ "isLeaf": true,
607
+ "name": "Use beforeGet to Return a Defensive Copy"
608
+ },
609
+ {
610
+ "id": "2023-01-14T14-27-57-678Z",
611
+ "parentId": "2023-01-01T21-11-08-828Z",
612
+ "isLeaf": true,
613
+ "name": "Component Property Lifecycle Methods"
614
+ },
615
+ {
616
+ "id": "2023-01-14T17-30-18-228Z",
617
+ "parentId": "2023-01-01T21-11-08-828Z",
618
+ "isLeaf": true,
619
+ "name": "Calling Super Class Methods"
620
+ },
621
+ {
622
+ "id": "2023-01-01T21-16-22-773Z",
623
+ "parentId": "2023-01-06T23-44-18-920Z",
624
+ "isLeaf": false,
625
+ "name": "Containers"
626
+ },
627
+ {
628
+ "id": "2023-01-01T21-18-23-886Z",
629
+ "parentId": "2023-01-01T21-16-22-773Z",
630
+ "isLeaf": true,
631
+ "name": "items:[]"
632
+ },
633
+ {
634
+ "id": "2023-01-14T17-48-39-137Z",
635
+ "parentId": "2023-01-01T21-16-22-773Z",
636
+ "isLeaf": false,
637
+ "name": "layout:{}"
638
+ },
639
+ {
640
+ "id": "2023-01-01T21-18-42-290Z",
641
+ "parentId": "2023-01-14T17-48-39-137Z",
642
+ "isLeaf": true,
643
+ "name": "Introduction"
644
+ },
645
+ {
646
+ "id": "2023-01-14T18-28-39-316Z",
647
+ "parentId": "2023-01-14T17-48-39-137Z",
648
+ "isLeaf": true,
649
+ "name": "fit"
650
+ },
651
+ {
652
+ "id": "2023-01-14T18-28-44-115Z",
653
+ "parentId": "2023-01-14T17-48-39-137Z",
654
+ "isLeaf": true,
655
+ "name": "card"
656
+ },
657
+ {
658
+ "id": "2023-01-14T18-28-49-548Z",
659
+ "parentId": "2023-01-14T17-48-39-137Z",
660
+ "isLeaf": true,
661
+ "name": "vbox, hbox"
662
+ },
663
+ {
664
+ "id": "2023-01-14T18-40-13-758Z",
665
+ "parentId": "2023-01-14T17-48-39-137Z",
666
+ "isLeaf": true,
667
+ "name": "flexbox"
668
+ },
669
+ {
670
+ "id": "2023-01-01T21-18-31-316Z",
671
+ "parentId": "2023-01-01T21-16-22-773Z",
672
+ "isLeaf": true,
673
+ "name": "itemDefaults"
674
+ },
675
+ {
676
+ "id": "2023-01-01T21-19-57-020Z",
677
+ "parentId": "2023-01-01T21-16-22-773Z",
678
+ "isLeaf": true,
679
+ "name": "add()"
680
+ },
681
+ {
682
+ "id": "2023-01-15T22-22-13-517Z",
683
+ "parentId": "2023-01-06T23-44-18-920Z",
684
+ "isLeaf": true,
685
+ "name": "Warning!"
686
+ },
687
+ {
688
+ "id": "2023-01-20T12-51-22-646Z",
689
+ "parentId": "2023-01-06T23-44-18-920Z",
690
+ "isLeaf": true,
691
+ "name": "Goals"
692
+ },
693
+ {
694
+ "id": "2023-01-06T23-21-12-009Z",
695
+ "parentId": "2023-01-06T23-44-18-920Z",
696
+ "isLeaf": true,
697
+ "name": "Lab: Yelp \u2014 Create the Filter Container"
698
+ },
699
+ {
700
+ "id": "2023-01-15T18-51-52-134Z",
701
+ "parentId": "2023-01-06T23-44-18-920Z",
702
+ "isLeaf": true,
703
+ "name": "Lab: Yelp \u2014 Create get/set Properties for City and Category"
704
+ },
705
+ {
706
+ "id": "2023-01-15T22-28-57-508Z",
707
+ "parentId": "2023-01-06T23-44-18-920Z",
708
+ "isLeaf": true,
709
+ "name": "Lab: Yelp \u2014 Update the UI as the Properties Change"
710
+ },
711
+ {
712
+ "id": "2023-01-15T22-36-30-913Z",
713
+ "parentId": "2023-01-06T23-44-18-920Z",
714
+ "isLeaf": true,
715
+ "name": "Lab: Yelp \u2014 Update the Properties as the UI Changes"
716
+ },
717
+ {
718
+ "id": "2023-01-15T22-07-52-073Z",
719
+ "parentId": "2023-01-06T23-44-18-920Z",
720
+ "isLeaf": true,
721
+ "name": "Those Labs Were Lengthy!"
722
+ },
723
+ {
724
+ "id": "2023-01-01T21-21-02-577Z",
725
+ "parentId": "2023-01-06T23-44-18-920Z",
726
+ "isLeaf": false,
727
+ "name": "Events"
728
+ },
729
+ {
730
+ "id": "2023-01-01T21-22-31-184Z",
731
+ "parentId": "2023-01-01T21-21-02-577Z",
732
+ "isLeaf": true,
733
+ "name": "Terminology"
734
+ },
735
+ {
736
+ "id": "2023-01-01T21-22-38-317Z",
737
+ "parentId": "2023-01-01T21-21-02-577Z",
738
+ "isLeaf": true,
739
+ "name": "Declarative"
740
+ },
741
+ {
742
+ "id": "2023-01-01T21-22-47-693Z",
743
+ "parentId": "2023-01-01T21-21-02-577Z",
744
+ "isLeaf": true,
745
+ "name": "Procedural"
746
+ },
747
+ {
748
+ "id": "2023-01-08T17-22-48-841Z",
749
+ "parentId": "2023-01-01T21-21-02-577Z",
750
+ "isLeaf": true,
751
+ "name": "Buttons"
752
+ },
753
+ {
754
+ "id": "2023-01-01T21-23-17-716Z",
755
+ "parentId": "2023-01-01T21-21-02-577Z",
756
+ "isLeaf": true,
757
+ "name": "How it Works"
758
+ },
759
+ {
760
+ "id": "2023-01-01T21-23-28-532Z",
761
+ "parentId": "2023-01-01T21-21-02-577Z",
762
+ "isLeaf": true,
763
+ "name": "Firing Your Own Events"
764
+ },
765
+ {
766
+ "id": "2023-01-06T23-21-31-685Z",
767
+ "parentId": "2023-01-06T23-44-18-920Z",
768
+ "isLeaf": true,
769
+ "name": "Lab: Yelp \u2014 Fire cityChange Event"
770
+ },
771
+ {
772
+ "id": "2023-01-01T21-24-25-230Z",
773
+ "parentId": "2023-01-06T23-44-18-920Z",
774
+ "isLeaf": false,
775
+ "name": "Panels"
776
+ },
777
+ {
778
+ "id": "2023-01-01T23-38-42-863Z",
779
+ "parentId": "2023-01-01T21-24-25-230Z",
780
+ "isLeaf": true,
781
+ "name": "Introduction"
782
+ },
783
+ {
784
+ "id": "2023-01-16T20-21-56-859Z",
785
+ "parentId": "2023-01-01T21-24-25-230Z",
786
+ "isLeaf": true,
787
+ "name": "headers:[]"
788
+ },
789
+ {
790
+ "id": "2023-01-08T20-57-36-333Z",
791
+ "parentId": "2023-01-01T21-24-25-230Z",
792
+ "isLeaf": true,
793
+ "name": "Toolbars"
794
+ },
795
+ {
796
+ "id": "2023-01-08T20-57-51-136Z",
797
+ "parentId": "2023-01-01T21-24-25-230Z",
798
+ "isLeaf": true,
799
+ "name": "Buttons"
800
+ },
801
+ {
802
+ "id": "2023-01-14T00-17-55-115Z",
803
+ "parentId": "2023-01-06T23-44-18-920Z",
804
+ "isLeaf": false,
805
+ "name": "Tab Panels"
806
+ },
807
+ {
808
+ "id": "2023-01-16T20-24-09-690Z",
809
+ "parentId": "2023-01-14T00-17-55-115Z",
810
+ "isLeaf": true,
811
+ "name": "Neo.tab.Container"
812
+ },
813
+ {
814
+ "id": "2022-12-28T17-11-34-653Z",
815
+ "parentId": "2023-01-06T23-44-18-920Z",
816
+ "isLeaf": true,
817
+ "name": "Lab: Yelp \u2014 Create the Tab Panel and Map"
818
+ },
819
+ {
820
+ "id": "2022-12-28T16-58-00-245Z",
821
+ "parentId": "2023-01-06T23-44-18-920Z",
822
+ "isLeaf": false,
823
+ "name": "Component (View) Models"
824
+ },
825
+ {
826
+ "id": "2022-12-28T17-13-09-994Z",
827
+ "parentId": "2022-12-28T16-58-00-245Z",
828
+ "isLeaf": true,
829
+ "name": "Introduction"
830
+ },
831
+ {
832
+ "id": "2022-12-28T16-58-47-786Z",
833
+ "parentId": "2022-12-28T16-58-00-245Z",
834
+ "isLeaf": true,
835
+ "name": "Structure"
836
+ },
837
+ {
838
+ "id": "2022-12-28T21-31-39-670Z",
839
+ "parentId": "2022-12-28T16-58-00-245Z",
840
+ "isLeaf": false,
841
+ "name": "Exploring Component Models"
842
+ },
843
+ {
844
+ "id": "2022-12-28T17-10-18-058Z",
845
+ "parentId": "2022-12-28T21-31-39-670Z",
846
+ "isLeaf": true,
847
+ "name": "The Bound Property Must Have a Setter"
848
+ },
849
+ {
850
+ "id": "2022-12-29T01-43-32-431Z",
851
+ "parentId": "2022-12-28T21-31-39-670Z",
852
+ "isLeaf": true,
853
+ "name": "One-Way Binding"
854
+ },
855
+ {
856
+ "id": "2022-12-28T17-10-42-296Z",
857
+ "parentId": "2022-12-28T21-31-39-670Z",
858
+ "isLeaf": true,
859
+ "name": "Your Own Setter Versus a Config"
860
+ },
861
+ {
862
+ "id": "2022-12-28T21-32-14-420Z",
863
+ "parentId": "2022-12-28T21-31-39-670Z",
864
+ "isLeaf": true,
865
+ "name": "Syncing Properties without Component Models"
866
+ },
867
+ {
868
+ "id": "2022-12-28T16-58-55-192Z",
869
+ "parentId": "2022-12-28T21-31-39-670Z",
870
+ "isLeaf": true,
871
+ "name": "Component Model \u2014 Inline vs Class"
872
+ },
873
+ {
874
+ "id": "2023-01-20T13-06-46-614Z",
875
+ "parentId": "2023-01-06T23-44-18-920Z",
876
+ "isLeaf": true,
877
+ "name": "Neo.controller.Component Review"
878
+ },
879
+ {
880
+ "id": "2023-01-20T13-08-51-600Z",
881
+ "parentId": "2023-01-06T23-44-18-920Z",
882
+ "isLeaf": true,
883
+ "name": "Neo.controller.Component Review"
884
+ },
885
+ {
886
+ "id": "2023-01-14T00-33-05-958Z",
887
+ "parentId": "2023-01-06T23-44-18-920Z",
888
+ "isLeaf": true,
889
+ "name": "Lab: Yelp \u2014 Bind the Map Center"
890
+ },
891
+ {
892
+ "id": "2023-01-20T15-20-13-363Z",
893
+ "parentId": "2023-01-06T23-44-18-920Z",
894
+ "isLeaf": true,
895
+ "name": "Lab: Yelp \u2014 Create View Mode and Conroller Classes"
896
+ },
897
+ {
898
+ "id": "2023-01-06T23-21-59-596Z",
899
+ "parentId": "2023-01-06T23-44-18-920Z",
900
+ "isLeaf": true,
901
+ "name": "Lab: Yelp \u2014 Bind City and Category"
902
+ },
903
+ {
904
+ "id": "2023-01-20T15-34-58-813Z",
905
+ "parentId": "2023-01-06T23-44-18-920Z",
906
+ "isLeaf": true,
907
+ "name": "Lab: Yelp \u2014 Detect Changes to View Model Properties"
908
+ },
909
+ {
910
+ "id": "2023-01-01T21-27-44-418Z",
911
+ "parentId": "2023-01-06T23-44-18-920Z",
912
+ "isLeaf": false,
913
+ "name": "Sending and Receiving Data"
914
+ },
915
+ {
916
+ "id": "2023-01-08T20-17-25-083Z",
917
+ "parentId": "2023-01-01T21-27-44-418Z",
918
+ "isLeaf": false,
919
+ "name": "Neo.data.*"
920
+ },
921
+ {
922
+ "id": "2023-01-08T20-18-07-668Z",
923
+ "parentId": "2023-01-08T20-17-25-083Z",
924
+ "isLeaf": false,
925
+ "name": "Introduction"
926
+ },
927
+ {
928
+ "id": "2023-01-08T20-44-13-323Z",
929
+ "parentId": "2023-01-08T20-17-25-083Z",
930
+ "isLeaf": false,
931
+ "name": "Neo.data.Store"
932
+ },
933
+ {
934
+ "id": "2023-01-08T20-47-23-682Z",
935
+ "parentId": "2023-01-08T20-44-13-323Z",
936
+ "isLeaf": true,
937
+ "name": "Introduction"
938
+ },
939
+ {
940
+ "id": "2023-01-21T20-57-32-927Z",
941
+ "parentId": "2023-01-08T20-44-13-323Z",
942
+ "isLeaf": true,
943
+ "name": "Commonly Used Configs"
944
+ },
945
+ {
946
+ "id": "2023-01-21T16-33-14-852Z",
947
+ "parentId": "2023-01-08T20-44-13-323Z",
948
+ "isLeaf": false,
949
+ "name": "Creating"
950
+ },
951
+ {
952
+ "id": "2023-01-21T16-33-20-458Z",
953
+ "parentId": "2023-01-21T16-33-14-852Z",
954
+ "isLeaf": true,
955
+ "name": "In-line \"store\" Config"
956
+ },
957
+ {
958
+ "id": "2023-01-21T16-45-28-263Z",
959
+ "parentId": "2023-01-21T16-33-14-852Z",
960
+ "isLeaf": true,
961
+ "name": "Creating a Store in the View Model"
962
+ },
963
+ {
964
+ "id": "2023-01-21T16-56-25-452Z",
965
+ "parentId": "2023-01-21T16-33-14-852Z",
966
+ "isLeaf": true,
967
+ "name": "Create and Use a Store Class"
968
+ },
969
+ {
970
+ "id": "2023-01-21T17-28-31-493Z",
971
+ "parentId": "2023-01-21T16-33-14-852Z",
972
+ "isLeaf": true,
973
+ "name": "Neo.create()"
974
+ },
975
+ {
976
+ "id": "2023-01-08T20-47-32-064Z",
977
+ "parentId": "2023-01-08T20-44-13-323Z",
978
+ "isLeaf": true,
979
+ "name": "Fetching Data"
980
+ },
981
+ {
982
+ "id": "2023-01-21T20-56-28-184Z",
983
+ "parentId": "2023-01-08T20-44-13-323Z",
984
+ "isLeaf": true,
985
+ "name": "responseRoot"
986
+ },
987
+ {
988
+ "id": "2023-01-08T20-48-32-466Z",
989
+ "parentId": "2023-01-08T20-44-13-323Z",
990
+ "isLeaf": true,
991
+ "name": "Selecting Records"
992
+ },
993
+ {
994
+ "id": "2023-01-09T00-19-42-024Z",
995
+ "parentId": "2023-01-08T20-44-13-323Z",
996
+ "isLeaf": false,
997
+ "name": "Sorting"
998
+ },
999
+ {
1000
+ "id": "2023-01-08T20-48-03-791Z",
1001
+ "parentId": "2023-01-09T00-19-42-024Z",
1002
+ "isLeaf": true,
1003
+ "name": "Sorting"
1004
+ },
1005
+ {
1006
+ "id": "2023-01-09T00-35-40-671Z",
1007
+ "parentId": "2023-01-09T00-19-42-024Z",
1008
+ "isLeaf": true,
1009
+ "name": "Methods"
1010
+ },
1011
+ {
1012
+ "id": "2023-01-08T20-47-57-045Z",
1013
+ "parentId": "2023-01-08T20-44-13-323Z",
1014
+ "isLeaf": true,
1015
+ "name": "Filtering"
1016
+ },
1017
+ {
1018
+ "id": "2023-01-09T00-07-37-951Z",
1019
+ "parentId": "2023-01-08T20-44-13-323Z",
1020
+ "isLeaf": true,
1021
+ "name": "Grouping"
1022
+ },
1023
+ {
1024
+ "id": "2023-01-08T20-18-54-411Z",
1025
+ "parentId": "2023-01-08T20-17-25-083Z",
1026
+ "isLeaf": false,
1027
+ "name": "Neo.data.Model"
1028
+ },
1029
+ {
1030
+ "id": "2023-01-08T20-46-11-806Z",
1031
+ "parentId": "2023-01-08T20-18-54-411Z",
1032
+ "isLeaf": true,
1033
+ "name": "Neo.data.Model"
1034
+ },
1035
+ {
1036
+ "id": "2023-01-21T20-08-24-452Z",
1037
+ "parentId": "2023-01-08T20-18-54-411Z",
1038
+ "isLeaf": true,
1039
+ "name": "fields[]"
1040
+ },
1041
+ {
1042
+ "id": "2023-01-21T19-49-51-918Z",
1043
+ "parentId": "2023-01-08T20-18-54-411Z",
1044
+ "isLeaf": true,
1045
+ "name": "Field#calculate()"
1046
+ },
1047
+ {
1048
+ "id": "2023-01-21T20-35-54-947Z",
1049
+ "parentId": "2023-01-08T20-18-54-411Z",
1050
+ "isLeaf": true,
1051
+ "name": "Example"
1052
+ },
1053
+ {
1054
+ "id": "2023-01-08T20-48-51-322Z",
1055
+ "parentId": "2023-01-08T20-18-54-411Z",
1056
+ "isLeaf": true,
1057
+ "name": "Neo.data.RecordFactory"
1058
+ },
1059
+ {
1060
+ "id": "2023-01-08T20-49-52-741Z",
1061
+ "parentId": "2023-01-01T21-27-44-418Z",
1062
+ "isLeaf": true,
1063
+ "name": "Neo.data.connection.Xhr"
1064
+ },
1065
+ {
1066
+ "id": "2023-01-08T20-52-03-556Z",
1067
+ "parentId": "2023-01-01T21-27-44-418Z",
1068
+ "isLeaf": true,
1069
+ "name": "Neo.data.connection.WebSocket"
1070
+ },
1071
+ {
1072
+ "id": "2023-01-21T20-54-47-603Z",
1073
+ "parentId": "2023-01-06T23-44-18-920Z",
1074
+ "isLeaf": true,
1075
+ "name": "The Data Feed"
1076
+ },
1077
+ {
1078
+ "id": "2023-01-14T00-40-27-784Z",
1079
+ "parentId": "2023-01-06T23-44-18-920Z",
1080
+ "isLeaf": true,
1081
+ "name": "Lab: Yelp \u2014 Fetch Yelp Data"
1082
+ },
1083
+ {
1084
+ "id": "2023-01-21T23-13-33-394Z",
1085
+ "parentId": "2023-01-06T23-44-18-920Z",
1086
+ "isLeaf": true,
1087
+ "name": "Contemplate the Moment"
1088
+ },
1089
+ {
1090
+ "id": "2023-01-01T21-29-09-942Z",
1091
+ "parentId": "2023-01-06T23-44-18-920Z",
1092
+ "isLeaf": false,
1093
+ "name": "Tables"
1094
+ },
1095
+ {
1096
+ "id": "2023-01-28T19-11-37-464Z",
1097
+ "parentId": "2023-01-01T21-29-09-942Z",
1098
+ "isLeaf": true,
1099
+ "name": "Introduction"
1100
+ },
1101
+ {
1102
+ "id": "2023-01-28T20-53-56-476Z",
1103
+ "parentId": "2023-01-01T21-29-09-942Z",
1104
+ "isLeaf": true,
1105
+ "name": "columns:[]"
1106
+ },
1107
+ {
1108
+ "id": "2023-01-28T20-58-43-776Z",
1109
+ "parentId": "2023-01-01T21-29-09-942Z",
1110
+ "isLeaf": true,
1111
+ "name": "renderer"
1112
+ },
1113
+ {
1114
+ "id": "2023-01-28T22-24-34-808Z",
1115
+ "parentId": "2023-01-01T21-29-09-942Z",
1116
+ "isLeaf": true,
1117
+ "name": "Example"
1118
+ },
1119
+ {
1120
+ "id": "2023-01-28T22-18-41-259Z",
1121
+ "parentId": "2023-01-01T21-29-09-942Z",
1122
+ "isLeaf": true,
1123
+ "name": "Example"
1124
+ },
1125
+ {
1126
+ "id": "2023-01-28T20-43-41-188Z",
1127
+ "parentId": "2023-01-01T21-29-09-942Z",
1128
+ "isLeaf": true,
1129
+ "name": "Anatomy"
1130
+ },
1131
+ {
1132
+ "id": "2023-01-29T16-25-24-528Z",
1133
+ "parentId": "2023-01-01T21-29-09-942Z",
1134
+ "isLeaf": true,
1135
+ "name": "Selection"
1136
+ },
1137
+ {
1138
+ "id": "2023-01-29T21-14-32-588Z",
1139
+ "parentId": "2023-01-01T21-29-09-942Z",
1140
+ "isLeaf": true,
1141
+ "name": "What's Selected"
1142
+ },
1143
+ {
1144
+ "id": "2023-01-14T00-41-59-081Z",
1145
+ "parentId": "2023-01-06T23-44-18-920Z",
1146
+ "isLeaf": true,
1147
+ "name": "Lab: Yelp \u2014 Add a Table"
1148
+ },
1149
+ {
1150
+ "id": "2023-01-01T21-28-12-759Z",
1151
+ "parentId": "2023-01-06T23-44-18-920Z",
1152
+ "isLeaf": false,
1153
+ "name": "Forms and Fields"
1154
+ },
1155
+ {
1156
+ "id": "2023-01-31T20-34-30-261Z",
1157
+ "parentId": "2023-01-01T21-28-12-759Z",
1158
+ "isLeaf": true,
1159
+ "name": "Introduction"
1160
+ },
1161
+ {
1162
+ "id": "2023-02-04T20-09-50-169Z",
1163
+ "parentId": "2023-01-01T21-28-12-759Z",
1164
+ "isLeaf": true,
1165
+ "name": "Hierarchy"
1166
+ },
1167
+ {
1168
+ "id": "2023-01-31T20-33-55-855Z",
1169
+ "parentId": "2023-01-01T21-28-12-759Z",
1170
+ "isLeaf": true,
1171
+ "name": "Fields are Name/Value Pairs"
1172
+ },
1173
+ {
1174
+ "id": "2023-02-04T20-19-42-740Z",
1175
+ "parentId": "2023-01-01T21-28-12-759Z",
1176
+ "isLeaf": true,
1177
+ "name": "Neo.form.field.Base"
1178
+ },
1179
+ {
1180
+ "id": "2023-02-04T20-23-56-013Z",
1181
+ "parentId": "2023-01-01T21-28-12-759Z",
1182
+ "isLeaf": true,
1183
+ "name": "Neo.form.field.Text"
1184
+ },
1185
+ {
1186
+ "id": "2023-01-31T20-52-53-367Z",
1187
+ "parentId": "2023-01-01T21-28-12-759Z",
1188
+ "isLeaf": true,
1189
+ "name": "Neo.form.field.Text"
1190
+ },
1191
+ {
1192
+ "id": "2023-02-04T15-49-47-597Z",
1193
+ "parentId": "2023-01-01T21-28-12-759Z",
1194
+ "isLeaf": true,
1195
+ "name": "Neo.form.field.Text Validation"
1196
+ },
1197
+ {
1198
+ "id": "2023-02-04T20-28-12-391Z",
1199
+ "parentId": "2023-01-01T21-28-12-759Z",
1200
+ "isLeaf": true,
1201
+ "name": "Neo.form.field.Text validator()"
1202
+ },
1203
+ {
1204
+ "id": "2023-02-06T00-14-54-457Z",
1205
+ "parentId": "2023-01-01T21-28-12-759Z",
1206
+ "isLeaf": true,
1207
+ "name": "Neo.form.field.Number"
1208
+ },
1209
+ {
1210
+ "id": "2023-02-05T00-20-32-554Z",
1211
+ "parentId": "2023-01-01T21-28-12-759Z",
1212
+ "isLeaf": true,
1213
+ "name": "Neo.form.field.Picker Components"
1214
+ },
1215
+ {
1216
+ "id": "2023-02-04T15-18-35-682Z",
1217
+ "parentId": "2023-01-01T21-28-12-759Z",
1218
+ "isLeaf": true,
1219
+ "name": "triggers"
1220
+ },
1221
+ {
1222
+ "id": "2023-02-05T00-35-56-282Z",
1223
+ "parentId": "2023-01-01T21-28-12-759Z",
1224
+ "isLeaf": true,
1225
+ "name": "Neo.form.field.Select"
1226
+ },
1227
+ {
1228
+ "id": "2023-02-05T15-36-57-182Z",
1229
+ "parentId": "2023-01-01T21-28-12-759Z",
1230
+ "isLeaf": true,
1231
+ "name": "Neo.form.field.Select"
1232
+ },
1233
+ {
1234
+ "id": "2023-01-31T19-24-53-504Z",
1235
+ "parentId": "2023-01-01T21-28-12-759Z",
1236
+ "isLeaf": true,
1237
+ "name": "Neo.form.Container"
1238
+ },
1239
+ {
1240
+ "id": "2023-02-05T17-39-51-712Z",
1241
+ "parentId": "2023-01-06T23-44-18-920Z",
1242
+ "isLeaf": true,
1243
+ "name": "Lab: Yelp \u2014 Encapsulate the Tab Panel View"
1244
+ },
1245
+ {
1246
+ "id": "2023-02-05T18-12-14-489Z",
1247
+ "parentId": "2023-01-06T23-44-18-920Z",
1248
+ "isLeaf": true,
1249
+ "name": "Lab: Yelp \u2014 Create the Detail Panel"
1250
+ },
1251
+ {
1252
+ "id": "2023-02-05T17-44-53-815Z",
1253
+ "parentId": "2023-01-06T23-44-18-920Z",
1254
+ "isLeaf": true,
1255
+ "name": "Lab: Yelp \u2014 Show Business Details"
1256
+ },
1257
+ {
1258
+ "id": "2023-02-05T17-45-40-114Z",
1259
+ "parentId": "2023-01-06T23-44-18-920Z",
1260
+ "isLeaf": true,
1261
+ "name": "Lab: Yelp \u2014 Add a Form"
1262
+ },
1263
+ {
1264
+ "id": "2023-01-21T16-21-16-292Z",
1265
+ "parentId": "2023-01-06T23-44-18-920Z",
1266
+ "isLeaf": false,
1267
+ "name": "Styling"
1268
+ },
1269
+ {
1270
+ "id": "2023-01-10T01-09-10-911Z",
1271
+ "parentId": null,
1272
+ "isLeaf": false,
1273
+ "name": "iTunes"
1274
+ }
1275
+ ]
1276
+ }