neo.mjs 8.0.0-beta.1 → 8.0.0-beta.2

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 (141) hide show
  1. package/apps/ServiceWorker.mjs +2 -2
  2. package/apps/colors/view/Viewport.mjs +9 -9
  3. package/apps/colors/view/ViewportController.mjs +13 -13
  4. package/apps/colors/view/{ViewportModel.mjs → ViewportStateProvider.mjs} +8 -8
  5. package/apps/covid/view/MainContainer.mjs +8 -8
  6. package/apps/covid/view/MainContainerController.mjs +8 -10
  7. package/apps/covid/view/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +7 -7
  8. package/apps/covid/view/TableContainerController.mjs +1 -1
  9. package/apps/form/view/FormContainerController.mjs +2 -2
  10. package/apps/form/view/SideNavList.mjs +3 -3
  11. package/apps/form/view/Viewport.mjs +7 -7
  12. package/apps/form/view/ViewportController.mjs +4 -4
  13. package/apps/form/view/{ViewportModel.mjs → ViewportStateProvider.mjs} +8 -8
  14. package/apps/portal/index.html +1 -1
  15. package/apps/portal/resources/data/examples_devmode.json +3 -3
  16. package/apps/portal/resources/data/examples_dist_dev.json +3 -3
  17. package/apps/portal/resources/data/examples_dist_prod.json +3 -3
  18. package/apps/portal/view/Viewport.mjs +12 -12
  19. package/apps/portal/view/ViewportStateProvider.mjs +27 -0
  20. package/apps/portal/view/home/FooterContainer.mjs +1 -1
  21. package/apps/portal/view/learn/ContentComponent.mjs +2 -2
  22. package/apps/portal/view/learn/ContentTreeList.mjs +1 -1
  23. package/apps/portal/view/learn/MainContainer.mjs +9 -9
  24. package/apps/portal/view/learn/MainContainerController.mjs +12 -12
  25. package/apps/portal/view/learn/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +7 -7
  26. package/apps/portal/view/learn/PageSectionsList.mjs +1 -1
  27. package/apps/sharedcovid/view/GalleryContainer.mjs +2 -2
  28. package/apps/sharedcovid/view/HelixContainer.mjs +2 -2
  29. package/apps/sharedcovid/view/MainContainer.mjs +8 -8
  30. package/apps/sharedcovid/view/MainContainerController.mjs +10 -11
  31. package/apps/sharedcovid/view/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +8 -8
  32. package/apps/sharedcovid/view/TableContainerController.mjs +1 -1
  33. package/apps/sharedcovid/view/mapboxGl/Container.mjs +2 -2
  34. package/buildScripts/createClass.mjs +11 -11
  35. package/buildScripts/createComponent.mjs +4 -4
  36. package/docs/app/view/MainContainerController.mjs +6 -6
  37. package/examples/ServiceWorker.mjs +2 -2
  38. package/examples/{model → stateProvider}/advanced/MainContainer.mjs +12 -12
  39. package/examples/{model → stateProvider}/advanced/MainContainerController.mjs +10 -10
  40. package/examples/stateProvider/advanced/app.mjs +6 -0
  41. package/examples/{model/dialog → stateProvider/advanced}/index.html +1 -1
  42. package/examples/{model/inline → stateProvider/advanced}/neo-config.json +1 -1
  43. package/examples/{model → stateProvider}/dialog/EditUserDialog.mjs +3 -3
  44. package/examples/{model → stateProvider}/dialog/EditUserDialogController.mjs +5 -5
  45. package/examples/{model → stateProvider}/dialog/MainContainer.mjs +7 -7
  46. package/examples/{model → stateProvider}/dialog/MainContainerController.mjs +5 -5
  47. package/examples/{model → stateProvider}/dialog/app.mjs +1 -1
  48. package/examples/{model/multiWindow2 → stateProvider/dialog}/index.html +1 -1
  49. package/examples/{model → stateProvider}/dialog/neo-config.json +1 -1
  50. package/examples/{model → stateProvider}/extendedClass/MainContainer.mjs +13 -13
  51. package/examples/{model/inline → stateProvider/extendedClass}/MainContainerController.mjs +7 -7
  52. package/examples/stateProvider/extendedClass/MainContainerStateProvider.mjs +24 -0
  53. package/examples/stateProvider/extendedClass/app.mjs +6 -0
  54. package/examples/stateProvider/extendedClass/index.html +11 -0
  55. package/examples/stateProvider/extendedClass/neo-config.json +7 -0
  56. package/examples/{model → stateProvider}/inline/MainContainer.mjs +10 -10
  57. package/examples/{model/extendedClass → stateProvider/inline}/MainContainerController.mjs +7 -7
  58. package/examples/{model/extendedClass → stateProvider/inline}/app.mjs +1 -1
  59. package/examples/{model/extendedClass → stateProvider/inline}/index.html +1 -1
  60. package/examples/{model/extendedClass → stateProvider/inline}/neo-config.json +1 -1
  61. package/examples/{model/inlineNoModel → stateProvider/inlineNoStateProvider}/MainContainer.mjs +4 -4
  62. package/examples/{model/inlineNoModel → stateProvider/inlineNoStateProvider}/MainContainerController.mjs +3 -3
  63. package/examples/stateProvider/inlineNoStateProvider/README.md +8 -0
  64. package/examples/stateProvider/inlineNoStateProvider/app.mjs +6 -0
  65. package/examples/{model/inline → stateProvider/inlineNoStateProvider}/index.html +1 -1
  66. package/examples/stateProvider/inlineNoStateProvider/neo-config.json +7 -0
  67. package/examples/{model → stateProvider}/multiWindow/EditUserDialog.mjs +3 -3
  68. package/examples/{model → stateProvider}/multiWindow/EditUserDialogController.mjs +5 -5
  69. package/examples/{model → stateProvider}/multiWindow/MainContainer.mjs +3 -3
  70. package/examples/{model → stateProvider}/multiWindow/MainContainerController.mjs +6 -6
  71. package/examples/{model → stateProvider}/multiWindow/Viewport.mjs +3 -3
  72. package/examples/{model → stateProvider}/multiWindow/ViewportController.mjs +14 -14
  73. package/examples/{model/multiWindow2 → stateProvider/multiWindow}/app.mjs +1 -1
  74. package/examples/{model/advanced → stateProvider/multiWindow}/index.html +1 -1
  75. package/examples/{model → stateProvider}/multiWindow/neo-config.json +1 -1
  76. package/examples/{model → stateProvider}/multiWindow2/Viewport.mjs +3 -3
  77. package/examples/{model/multiWindow → stateProvider/multiWindow2}/app.mjs +1 -1
  78. package/examples/{model/multiWindow → stateProvider/multiWindow2}/index.html +1 -1
  79. package/examples/{model → stateProvider}/multiWindow2/neo-config.json +1 -1
  80. package/examples/{model → stateProvider}/nestedData/MainContainer.mjs +9 -9
  81. package/examples/{model → stateProvider}/nestedData/MainContainerController.mjs +7 -7
  82. package/examples/stateProvider/nestedData/app.mjs +6 -0
  83. package/examples/stateProvider/nestedData/index.html +11 -0
  84. package/examples/stateProvider/nestedData/neo-config.json +7 -0
  85. package/examples/{model → stateProvider}/table/MainContainer.mjs +8 -8
  86. package/examples/stateProvider/table/MainContainerStateProvider.mjs +24 -0
  87. package/examples/{model → stateProvider}/table/MainModel.mjs +2 -2
  88. package/examples/{model → stateProvider}/table/MainStore.mjs +2 -2
  89. package/examples/{model/advanced → stateProvider/table}/app.mjs +1 -1
  90. package/examples/{model/advanced → stateProvider/table}/neo-config.json +1 -1
  91. package/examples/{model → stateProvider}/twoWay/MainContainer.mjs +9 -9
  92. package/examples/{model/inline → stateProvider/twoWay}/app.mjs +1 -1
  93. package/examples/stateProvider/twoWay/index.html +11 -0
  94. package/examples/{model → stateProvider}/twoWay/neo-config.json +1 -1
  95. package/examples/table/nestedRecordFields/EditUserDialog.mjs +3 -3
  96. package/examples/table/nestedRecordFields/MainContainer.mjs +8 -8
  97. package/examples/table/nestedRecordFields/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +10 -10
  98. package/examples/toolbar/paging/view/MainContainer.mjs +7 -7
  99. package/examples/toolbar/paging/view/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +8 -8
  100. package/examples/treeAccordion/MainContainer.mjs +2 -2
  101. package/package.json +2 -2
  102. package/resources/data/deck/learnneo/pages/guides/{ViewModels.md → StateProviders.md} +52 -58
  103. package/resources/data/deck/learnneo/tree.json +46 -46
  104. package/src/DefaultConfig.mjs +2 -2
  105. package/src/button/Base.mjs +7 -7
  106. package/src/calendar/view/EditEventContainer.mjs +3 -3
  107. package/src/calendar/view/MainContainer.mjs +27 -27
  108. package/src/calendar/view/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +7 -7
  109. package/src/calendar/view/YearComponent.mjs +5 -5
  110. package/src/calendar/view/calendars/EditContainer.mjs +1 -1
  111. package/src/calendar/view/calendars/List.mjs +1 -1
  112. package/src/calendar/view/month/Component.mjs +6 -6
  113. package/src/calendar/view/settings/GeneralContainer.mjs +2 -2
  114. package/src/calendar/view/week/Component.mjs +10 -10
  115. package/src/calendar/view/week/EventDragZone.mjs +1 -1
  116. package/src/component/Base.mjs +77 -61
  117. package/src/container/Base.mjs +3 -3
  118. package/src/controller/Component.mjs +29 -12
  119. package/src/core/Base.mjs +0 -1
  120. package/src/core/Compare.mjs +128 -83
  121. package/src/date/SelectorContainer.mjs +12 -12
  122. package/src/date/{SelectorContainerModel.mjs → SelectorContainerStateProvider.mjs} +7 -7
  123. package/src/layout/Base.mjs +6 -6
  124. package/src/{model/Component.mjs → state/Provider.mjs} +67 -69
  125. package/src/tree/Accordion.mjs +15 -13
  126. package/src/worker/App.mjs +2 -2
  127. package/apps/portal/view/ViewportModel.mjs +0 -27
  128. package/examples/model/extendedClass/MainContainerModel.mjs +0 -24
  129. package/examples/model/inlineNoModel/README.md +0 -8
  130. package/examples/model/inlineNoModel/app.mjs +0 -6
  131. package/examples/model/inlineNoModel/index.html +0 -11
  132. package/examples/model/inlineNoModel/neo-config.json +0 -7
  133. package/examples/model/nestedData/app.mjs +0 -6
  134. package/examples/model/nestedData/index.html +0 -11
  135. package/examples/model/nestedData/neo-config.json +0 -7
  136. package/examples/model/table/MainContainerModel.mjs +0 -24
  137. package/examples/model/table/app.mjs +0 -6
  138. package/examples/model/table/neo-config.json +0 -7
  139. package/examples/model/twoWay/app.mjs +0 -6
  140. package/examples/model/twoWay/index.html +0 -11
  141. /package/examples/{model → stateProvider}/table/index.html +0 -0
@@ -1,9 +1,9 @@
1
1
  import ComponentController from '../../../src/controller/Component.mjs';
2
- import ComponentModel from '../../../src/model/Component.mjs';
3
2
  import NeoArray from '../../../src/util/Array.mjs';
3
+ import StateProvider from '../../../src/state/Provider.mjs';
4
4
 
5
5
  /**
6
- * @class Neo.examples.model.multiWindow.ViewportController
6
+ * @class Neo.examples.stateProvider.multiWindow.ViewportController
7
7
  * @extends Neo.controller.Component
8
8
  */
9
9
  class MainContainerController extends ComponentController {
@@ -12,16 +12,16 @@ class MainContainerController extends ComponentController {
12
12
  */
13
13
  connectedApps = []
14
14
  /**
15
- * @member {Neo.model.Component|null} mainModel=null
15
+ * @member {Neo.state.Provider|null} mainStateProvider=null
16
16
  */
17
- mainModel = null
17
+ mainStateProvider = null
18
18
 
19
19
  static config = {
20
20
  /**
21
- * @member {String} className='Neo.examples.model.multiWindow.ViewportController'
21
+ * @member {String} className='Neo.examples.stateProvider.multiWindow.ViewportController'
22
22
  * @protected
23
23
  */
24
- className: 'Neo.examples.model.multiWindow.ViewportController'
24
+ className: 'Neo.examples.stateProvider.multiWindow.ViewportController'
25
25
  }
26
26
 
27
27
  /**
@@ -46,14 +46,14 @@ class MainContainerController extends ComponentController {
46
46
  onAppConnect(data) {
47
47
  let me = this,
48
48
  name = data.appName,
49
- model, view;
49
+ stateProvider, view;
50
50
 
51
51
  console.log('onAppConnect', data);
52
52
 
53
53
  NeoArray.add(me.connectedApps, name);
54
54
 
55
- if (!me.mainModel) {
56
- model = {
55
+ if (!me.mainStateProvider) {
56
+ stateProvider = {
57
57
  data: {
58
58
  user: {
59
59
  firstname: 'Tobias',
@@ -62,19 +62,19 @@ class MainContainerController extends ComponentController {
62
62
  }
63
63
  };
64
64
  } else {
65
- model = {
66
- parent: me.mainModel
65
+ stateProvider = {
66
+ parent: me.mainStateProvider
67
67
  };
68
68
  }
69
69
 
70
70
  import('../multiWindow/MainContainer.mjs').then(module => {
71
71
  view = Neo.apps[name].mainView.add({
72
72
  module: module.default,
73
- model : model
73
+ stateProvider
74
74
  });
75
75
 
76
- if (!me.mainModel) {
77
- me.mainModel = view.model
76
+ if (!me.mainStateProvider) {
77
+ me.mainStateProvider = view.stateProvider
78
78
  }
79
79
  })
80
80
  }
@@ -2,5 +2,5 @@ import Viewport from './Viewport.mjs';
2
2
 
3
3
  export const onStart = () => Neo.app({
4
4
  mainView: Viewport,
5
- name : 'Neo.examples.model.multiWindow2'
5
+ name : 'Neo.examples.stateProvider.multiWindow'
6
6
  });
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta name="viewport" content="width=device-width, initial-scale=1">
5
5
  <meta charset="UTF-8">
6
- <title>model.Component: advanced</title>
6
+ <title>stateProvider.multiWindow</title>
7
7
  </head>
8
8
  <body>
9
9
  <script src="../../../src/MicroLoader.mjs" type="module"></script>
@@ -1,5 +1,5 @@
1
1
  {
2
- "appPath" : "examples/model/multiWindow/app.mjs",
2
+ "appPath" : "examples/stateProvider/multiWindow/app.mjs",
3
3
  "basePath" : "../../../",
4
4
  "environment" : "development",
5
5
  "mainPath" : "./Main.mjs",
@@ -1,16 +1,16 @@
1
1
  import BaseViewport from '../../../src/container/Viewport.mjs';
2
2
 
3
3
  /**
4
- * @class Neo.examples.model.multiWindow2.Viewport
4
+ * @class Neo.examples.stateProvider.multiWindow2.Viewport
5
5
  * @extends Neo.container.Viewport
6
6
  */
7
7
  class Viewport extends BaseViewport {
8
8
  static config = {
9
9
  /**
10
- * @member {String} className='Neo.examples.model.multiWindow2.Viewport'
10
+ * @member {String} className='Neo.examples.stateProvider.multiWindow2.Viewport'
11
11
  * @protected
12
12
  */
13
- className: 'Neo.examples.model.multiWindow2.Viewport',
13
+ className: 'Neo.examples.stateProvider.multiWindow2.Viewport',
14
14
  /**
15
15
  * @member {Object} style
16
16
  */
@@ -2,5 +2,5 @@ import Viewport from './Viewport.mjs';
2
2
 
3
3
  export const onStart = () => Neo.app({
4
4
  mainView: Viewport,
5
- name : 'Neo.examples.model.multiWindow'
5
+ name : 'Neo.examples.stateProvider.multiWindow2'
6
6
  });
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta name="viewport" content="width=device-width, initial-scale=1">
5
5
  <meta charset="UTF-8">
6
- <title>model.multiWindow</title>
6
+ <title>stateProvider.multiWindow2</title>
7
7
  </head>
8
8
  <body>
9
9
  <script src="../../../src/MicroLoader.mjs" type="module"></script>
@@ -1,5 +1,5 @@
1
1
  {
2
- "appPath" : "examples/model/multiWindow2/app.mjs",
2
+ "appPath" : "examples/stateProvider/multiWindow2/app.mjs",
3
3
  "basePath" : "../../../",
4
4
  "environment" : "development",
5
5
  "mainPath" : "./Main.mjs",
@@ -1,28 +1,28 @@
1
- import ComponentModel from '../../../src/model/Component.mjs';
2
1
  import MainContainerController from './MainContainerController.mjs'
3
2
  import Panel from '../../../src/container/Panel.mjs';
3
+ import StateProvider from '../../../src/state/Provider.mjs';
4
4
  import TextField from '../../../src/form/field/Text.mjs';
5
5
  import Viewport from '../../../src/container/Viewport.mjs';
6
6
 
7
7
  /**
8
- * @class Neo.examples.model.nestedData.MainContainer
8
+ * @class Neo.examples.stateProvider.nestedData.MainContainer
9
9
  * @extends Neo.container.Viewport
10
10
  */
11
11
  class MainContainer extends Viewport {
12
12
  static config = {
13
13
  /**
14
- * @member {String} className='Neo.examples.model.nestedData.MainContainer'
14
+ * @member {String} className='Neo.examples.stateProvider.nestedData.MainContainer'
15
15
  * @protected
16
16
  */
17
- className: 'Neo.examples.model.nestedData.MainContainer',
17
+ className: 'Neo.examples.stateProvider.nestedData.MainContainer',
18
18
  /**
19
19
  * @member {Neo.controller.Component} controller=MainContainerController
20
20
  */
21
21
  controller: MainContainerController,
22
22
  /**
23
- * @member {Object|Neo.model.Component} model
23
+ * @member {Object|Neo.state.Provider} stateProvider
24
24
  */
25
- model: {
25
+ stateProvider: {
26
26
  data: {
27
27
  user: {
28
28
  details: {
@@ -59,7 +59,7 @@ class MainContainer extends Viewport {
59
59
  dock : 'top',
60
60
  items: [{
61
61
  ntype: 'label',
62
- text : 'model.Component: nested data'
62
+ text : 'state.Provider: nested data'
63
63
  }, {
64
64
  ntype: 'component',
65
65
  flex : 1
@@ -111,9 +111,9 @@ class MainContainer extends Viewport {
111
111
  }
112
112
  }, {
113
113
  ntype : 'button',
114
- handler: 'onLogModelIntoConsoleButtonClick',
114
+ handler: 'onLogStateProviderIntoConsoleButtonClick',
115
115
  style : {marginTop: '2em'},
116
- text : 'Log model into console'
116
+ text : 'Log stateProvider into console'
117
117
  }]
118
118
  }]
119
119
  }
@@ -1,16 +1,16 @@
1
1
  import Controller from '../../../src/controller/Component.mjs';
2
2
 
3
3
  /**
4
- * @class Neo.examples.model.nestedData.MainContainerController
4
+ * @class Neo.examples.stateProvider.nestedData.MainContainerController
5
5
  * @extends Neo.controller.Component
6
6
  */
7
7
  class MainContainerController extends Controller {
8
8
  static config = {
9
9
  /**
10
- * @member {String} className='Neo.examples.model.nestedData.MainContainerController'
10
+ * @member {String} className='Neo.examples.stateProvider.nestedData.MainContainerController'
11
11
  * @protected
12
12
  */
13
- className: 'Neo.examples.model.nestedData.MainContainerController'
13
+ className: 'Neo.examples.stateProvider.nestedData.MainContainerController'
14
14
  }
15
15
 
16
16
  /**
@@ -30,8 +30,8 @@ class MainContainerController extends Controller {
30
30
  /**
31
31
  * @param {Object} data
32
32
  */
33
- onLogModelIntoConsoleButtonClick(data) {
34
- console.log(this.getModel())
33
+ onLogStateProviderIntoConsoleButtonClick(data) {
34
+ console.log(this.getStateProvider())
35
35
  }
36
36
 
37
37
  /**
@@ -56,14 +56,14 @@ class MainContainerController extends Controller {
56
56
  * @param {String} value
57
57
  */
58
58
  updateButton1Text(value) {
59
- this.getModel().data.user.details.firstname = value
59
+ this.getStateProvider().data.user.details.firstname = value
60
60
  }
61
61
 
62
62
  /**
63
63
  * @param {String} value
64
64
  */
65
65
  updateButton2Text(value) {
66
- this.getModel().setData({
66
+ this.setState({
67
67
  'user.details.lastname': value
68
68
  })
69
69
  }
@@ -0,0 +1,6 @@
1
+ import MainContainer from './MainContainer.mjs';
2
+
3
+ export const onStart = () => Neo.app({
4
+ mainView: MainContainer,
5
+ name : 'Neo.examples.stateProvider.nestedData'
6
+ });
@@ -0,0 +1,11 @@
1
+ <!DOCTYPE HTML>
2
+ <html>
3
+ <head>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1">
5
+ <meta charset="UTF-8">
6
+ <title>state.Provider: nested data</title>
7
+ </head>
8
+ <body>
9
+ <script src="../../../src/MicroLoader.mjs" type="module"></script>
10
+ </body>
11
+ </html>
@@ -0,0 +1,7 @@
1
+ {
2
+ "appPath" : "examples/stateProvider/nestedData/app.mjs",
3
+ "basePath" : "../../../",
4
+ "environment": "development",
5
+ "mainPath" : "./Main.mjs",
6
+ "themes" : ["neo-theme-dark"]
7
+ }
@@ -1,26 +1,26 @@
1
- import MainContainerModel from './MainContainerModel.mjs';
2
- import TableContainer from '../../../src/table/Container.mjs';
3
- import Viewport from '../../../src/container/Viewport.mjs';
1
+ import MainContainerStateProvider from './MainContainerStateProvider.mjs';
2
+ import TableContainer from '../../../src/table/Container.mjs';
3
+ import Viewport from '../../../src/container/Viewport.mjs';
4
4
 
5
5
  /**
6
- * @class Neo.examples.model.table.MainContainer
6
+ * @class Neo.examples.stateProvider.table.MainContainer
7
7
  * @extends Neo.container.Viewport
8
8
  */
9
9
  class MainContainer extends Viewport {
10
10
  static config = {
11
11
  /**
12
- * @member {String} className='Neo.examples.model.table.MainContainer'
12
+ * @member {String} className='Neo.examples.stateProvider.table.MainContainer'
13
13
  * @protected
14
14
  */
15
- className: 'Neo.examples.model.table.MainContainer',
15
+ className: 'Neo.examples.stateProvider.table.MainContainer',
16
16
  /**
17
17
  * @member {Object} layout
18
18
  */
19
19
  layout: {ntype: 'fit'},
20
20
  /**
21
- * @member {Object|Neo.model.Component} model=MainContainerModel
21
+ * @member {Object|Neo.state.Provider} stateProvider=MainContainerStateProvider
22
22
  */
23
- model: MainContainerModel,
23
+ stateProvider: MainContainerStateProvider,
24
24
  /**
25
25
  * @member {Object} style
26
26
  */
@@ -0,0 +1,24 @@
1
+ import MainStore from './MainStore.mjs';
2
+ import StateProvider from '../../../src/state/Provider.mjs';
3
+
4
+ /**
5
+ * @class Neo.examples.stateProvider.table.MainContainerStateProvider
6
+ * @extends Neo.state.Provider
7
+ */
8
+ class MainContainerStateProvider extends StateProvider {
9
+ static config = {
10
+ /**
11
+ * @member {String} className='Neo.examples.stateProvider.table.MainContainerStateProvider'
12
+ * @protected
13
+ */
14
+ className: 'Neo.examples.stateProvider.table.MainContainerStateProvider',
15
+ /**
16
+ * @member {Object} stores
17
+ */
18
+ stores: {
19
+ main: MainStore
20
+ }
21
+ }
22
+ }
23
+
24
+ export default Neo.setupClass(MainContainerStateProvider);
@@ -1,12 +1,12 @@
1
1
  import Model from '../../../src/data/Model.mjs';
2
2
 
3
3
  /**
4
- * @class Neo.examples.model.table.MainModel
4
+ * @class Neo.examples.stateProvider.table.MainModel
5
5
  * @extends Neo.data.Model
6
6
  */
7
7
  class MainModel extends Model {
8
8
  static config = {
9
- className: 'Neo.examples.model.table.MainModel',
9
+ className: 'Neo.examples.stateProvider.table.MainModel',
10
10
 
11
11
  fields: [{
12
12
  name: 'country',
@@ -2,12 +2,12 @@ import Model from './MainModel.mjs';
2
2
  import Store from '../../../src/data/Store.mjs';
3
3
 
4
4
  /**
5
- * @class Neo.examples.model.table.MainStore
5
+ * @class Neo.examples.stateProvider.table.MainStore
6
6
  * @extends Neo.data.Store
7
7
  */
8
8
  class MainStore extends Store {
9
9
  static config = {
10
- className : 'Neo.examples.model.table.MainStore',
10
+ className : 'Neo.examples.stateProvider.table.MainStore',
11
11
  keyProperty: 'githubId',
12
12
  model : Model,
13
13
 
@@ -2,5 +2,5 @@ import MainContainer from './MainContainer.mjs';
2
2
 
3
3
  export const onStart = () => Neo.app({
4
4
  mainView: MainContainer,
5
- name : 'Neo.examples.model.advanced'
5
+ name : 'Neo.examples.stateProvider.table'
6
6
  });
@@ -1,5 +1,5 @@
1
1
  {
2
- "appPath" : "examples/model/advanced/app.mjs",
2
+ "appPath" : "examples/stateProvider/table/app.mjs",
3
3
  "basePath" : "../../../",
4
4
  "environment": "development",
5
5
  "mainPath" : "./Main.mjs",
@@ -1,23 +1,23 @@
1
- import ComponentModel from '../../../src/model/Component.mjs';
2
- import Label from '../../../src/component/Label.mjs';
3
- import TextField from '../../../src/form/field/Text.mjs';
4
- import Viewport from '../../../src/container/Viewport.mjs';
1
+ import Label from '../../../src/component/Label.mjs';
2
+ import StateProvider from '../../../src/state/Provider.mjs';
3
+ import TextField from '../../../src/form/field/Text.mjs';
4
+ import Viewport from '../../../src/container/Viewport.mjs';
5
5
 
6
6
  /**
7
- * @class Neo.examples.model.twoWay.MainContainer
7
+ * @class Neo.examples.stateProvider.twoWay.MainContainer
8
8
  * @extends Neo.container.Viewport
9
9
  */
10
10
  class MainContainer extends Viewport {
11
11
  static config = {
12
12
  /**
13
- * @member {String} className='Neo.examples.model.twoWay.MainContainer'
13
+ * @member {String} className='Neo.examples.stateProvider.twoWay.MainContainer'
14
14
  * @protected
15
15
  */
16
- className: 'Neo.examples.model.twoWay.MainContainer',
16
+ className: 'Neo.examples.stateProvider.twoWay.MainContainer',
17
17
  /**
18
- * @member {Object|Neo.model.Component} model
18
+ * @member {Object|Neo.state.Provider} stateProvider
19
19
  */
20
- model: {
20
+ stateProvider: {
21
21
  data: {
22
22
  user: {
23
23
  details: {
@@ -2,5 +2,5 @@ import MainContainer from './MainContainer.mjs';
2
2
 
3
3
  export const onStart = () => Neo.app({
4
4
  mainView: MainContainer,
5
- name : 'Neo.examples.model.inline'
5
+ name : 'Neo.examples.stateProvider.twoWay'
6
6
  });
@@ -0,0 +1,11 @@
1
+ <!DOCTYPE HTML>
2
+ <html>
3
+ <head>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1">
5
+ <meta charset="UTF-8">
6
+ <title>state.Provider: 2 way binding</title>
7
+ </head>
8
+ <body>
9
+ <script src="../../../src/MicroLoader.mjs" type="module"></script>
10
+ </body>
11
+ </html>
@@ -1,5 +1,5 @@
1
1
  {
2
- "appPath" : "examples/model/twoWay/app.mjs",
2
+ "appPath" : "examples/stateProvider/twoWay/app.mjs",
3
3
  "basePath" : "../../../",
4
4
  "environment": "development",
5
5
  "mainPath" : "./Main.mjs"
@@ -10,10 +10,10 @@ import TextField from '../../../src/form/field/Text.mjs';
10
10
  class EditUserDialog extends Dialog {
11
11
  static config = {
12
12
  /**
13
- * @member {String} className='Neo.examples.model.dialog.EditUserDialog'
13
+ * @member {String} className='Neo.examples.table.nestedRecordFields.EditUserDialog'
14
14
  * @protected
15
15
  */
16
- className: 'Neo.examples.model.dialog.EditUserDialog',
16
+ className: 'Neo.examples.table.nestedRecordFields.EditUserDialog',
17
17
  /**
18
18
  * @member {String} closeAction='hide'
19
19
  */
@@ -121,7 +121,7 @@ class EditUserDialog extends Dialog {
121
121
  */
122
122
  onSelectedFieldChange(data) {
123
123
  let me = this,
124
- store = me.getModel().getStore('mainStore');
124
+ store = me.getStateProvider().getStore('mainStore');
125
125
 
126
126
  if (data.value === false) {
127
127
  me.record.annotations.selected = false
@@ -1,7 +1,7 @@
1
- import Button from '../../../src/button/Base.mjs';
2
- import MainContainerModel from './MainContainerModel.mjs';
3
- import TableContainer from '../../../src/table/Container.mjs';
4
- import Viewport from '../../../src/container/Viewport.mjs';
1
+ import Button from '../../../src/button/Base.mjs';
2
+ import MainContainerStateProvider from './MainContainerStateProvider.mjs';
3
+ import TableContainer from '../../../src/table/Container.mjs';
4
+ import Viewport from '../../../src/container/Viewport.mjs';
5
5
 
6
6
  /**
7
7
  * @class Neo.examples.table.nestedRecordFields.MainContainer
@@ -19,9 +19,9 @@ class MainContainer extends Viewport {
19
19
  */
20
20
  layout: 'fit',
21
21
  /**
22
- * @member {Neo.model.Component} model=MainContainerModel
22
+ * @member {Neo.state.Provider} stateProvider=MainContainerStateProvider
23
23
  */
24
- model: MainContainerModel,
24
+ stateProvider: MainContainerStateProvider,
25
25
  /**
26
26
  * @member {Object} style={padding:'20px'}
27
27
  */
@@ -52,7 +52,7 @@ class MainContainer extends Viewport {
52
52
  * @param {Object} data
53
53
  */
54
54
  countryRenderer({record}) {
55
- let countryStore = this.getModel().getStore('countries');
55
+ let countryStore = this.getStateProvider().getStore('countries');
56
56
 
57
57
  if (countryStore.getCount() > 0) {
58
58
  return countryStore.get(record.country).name
@@ -76,7 +76,7 @@ class MainContainer extends Viewport {
76
76
  module : module.default,
77
77
  animateTargetId: button.id,
78
78
  appName,
79
- model : {parent: me.getModel()},
79
+ stateProvider : {parent: me.getStateProvider()},
80
80
  record,
81
81
  windowId
82
82
  })
@@ -1,20 +1,20 @@
1
- import MainStore from './MainStore.mjs';
2
- import Model from '../../../src/model/Component.mjs';
3
- import Store from '../../../src/data/Store.mjs';
1
+ import MainStore from './MainStore.mjs';
2
+ import StateProvider from '../../../src/state/Provider.mjs';
3
+ import Store from '../../../src/data/Store.mjs';
4
4
 
5
5
  const countrySymbol = Symbol.for('country');
6
6
 
7
7
  /**
8
- * @class Neo.examples.table.nestedRecordFields.MainContainerModel
9
- * @extends Neo.model.Component
8
+ * @class Neo.examples.table.nestedRecordFields.MainContainerStateProvider
9
+ * @extends Neo.state.Provider
10
10
  */
11
- class MainContainerModel extends Model {
11
+ class MainContainerStateProvider extends StateProvider {
12
12
  static config = {
13
13
  /**
14
- * @member {String} className='Neo.examples.table.nestedRecordFields.MainContainerModel'
14
+ * @member {String} className='Neo.examples.table.nestedRecordFields.MainContainerStateProvider'
15
15
  * @protected
16
16
  */
17
- className: 'Neo.examples.table.nestedRecordFields.MainContainerModel',
17
+ className: 'Neo.examples.table.nestedRecordFields.MainContainerStateProvider',
18
18
  /**
19
19
  * @member {Object} stores
20
20
  */
@@ -30,7 +30,7 @@ class MainContainerModel extends Model {
30
30
  fields: [
31
31
  {name: 'code'},
32
32
  {name: 'name'}
33
- ]},
33
+ ]}
34
34
  },
35
35
  mainStore: MainStore
36
36
  }
@@ -58,4 +58,4 @@ class MainContainerModel extends Model {
58
58
  }
59
59
  }
60
60
 
61
- export default Neo.setupClass(MainContainerModel);
61
+ export default Neo.setupClass(MainContainerStateProvider);
@@ -1,8 +1,8 @@
1
- import MainContainerController from './MainContainerController.mjs';
2
- import MainContainerModel from './MainContainerModel.mjs';
3
- import PagingToolbar from '../../../../src/toolbar/Paging.mjs';
4
- import UserTableContainer from './UserTableContainer.mjs';
5
- import Viewport from '../../../../src/container/Viewport.mjs';
1
+ import MainContainerController from './MainContainerController.mjs';
2
+ import MainContainerStateProvider from './MainContainerStateProvider.mjs';
3
+ import PagingToolbar from '../../../../src/toolbar/Paging.mjs';
4
+ import UserTableContainer from './UserTableContainer.mjs';
5
+ import Viewport from '../../../../src/container/Viewport.mjs';
6
6
 
7
7
  /**
8
8
  * @class Neo.examples.toolbar.paging.view.MainContainer
@@ -92,9 +92,9 @@ class MainContainer extends Viewport {
92
92
  */
93
93
  layout: {ntype: 'vbox', align: 'stretch'},
94
94
  /**
95
- * @member {Neo.model.Component} model=MainContainerModel
95
+ * @member {Neo.state.Provider} stateProvider=MainContainerStateProvider
96
96
  */
97
- model: MainContainerModel,
97
+ stateProvider: MainContainerStateProvider,
98
98
  /**
99
99
  * @member {Object} style={padding:'20px'}
100
100
  */
@@ -1,17 +1,17 @@
1
- import Model from '../../../../src/model/Component.mjs';
2
- import UserStore from '../store/Users.mjs';
1
+ import StateProvider from '../../../../src/state/Provider.mjs';
2
+ import UserStore from '../store/Users.mjs';
3
3
 
4
4
  /**
5
- * @class Neo.examples.toolbar.paging.view.MainContainerModel
6
- * @extends Neo.model.Component
5
+ * @class Neo.examples.toolbar.paging.view.MainContainerStateProvider
6
+ * @extends Neo.state.Provider
7
7
  */
8
- class MainContainerModel extends Model {
8
+ class MainContainerStateProvider extends StateProvider {
9
9
  static config = {
10
10
  /**
11
- * @member {String} className='Neo.examples.toolbar.paging.view.MainContainerModel'
11
+ * @member {String} className='Neo.examples.toolbar.paging.view.MainContainerStateProvider'
12
12
  * @protected
13
13
  */
14
- className: 'Neo.examples.toolbar.paging.view.MainContainerModel',
14
+ className: 'Neo.examples.toolbar.paging.view.MainContainerStateProvider',
15
15
  /**
16
16
  * @member {Object} stores
17
17
  */
@@ -24,4 +24,4 @@ class MainContainerModel extends Model {
24
24
  }
25
25
  }
26
26
 
27
- export default Neo.setupClass(MainContainerModel);
27
+ export default Neo.setupClass(MainContainerStateProvider);
@@ -3,9 +3,9 @@ import CheckBox from '../../src/form/field/CheckBox.mjs';
3
3
  import ConfigurationViewport from '../ConfigurationViewport.mjs';
4
4
  import NumberField from '../../src/form/field/Number.mjs';
5
5
  import Panel from '../../src/container/Panel.mjs';
6
+ import StateProvider from '../../src/state/Provider.mjs';
6
7
  import Store from '../../src/data/Store.mjs';
7
8
  import ViewController from '../../src/controller/Component.mjs';
8
- import ViewModel from '../../src/model/Component.mjs';
9
9
 
10
10
  /**
11
11
  * @class Neo.examples.treeAccordion.MainContainer
@@ -103,7 +103,7 @@ class MainContainer extends ConfigurationViewport {
103
103
  return Neo.ntype({
104
104
  ntype: 'container',
105
105
 
106
- model: {
106
+ stateProvider: {
107
107
  data: {
108
108
  selection: [{name: 'Please select something'}]
109
109
  }