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.
- package/apps/ServiceWorker.mjs +2 -2
- package/apps/colors/view/Viewport.mjs +9 -9
- package/apps/colors/view/ViewportController.mjs +13 -13
- package/apps/colors/view/{ViewportModel.mjs → ViewportStateProvider.mjs} +8 -8
- package/apps/covid/view/MainContainer.mjs +8 -8
- package/apps/covid/view/MainContainerController.mjs +8 -10
- package/apps/covid/view/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +7 -7
- package/apps/covid/view/TableContainerController.mjs +1 -1
- package/apps/form/view/FormContainerController.mjs +2 -2
- package/apps/form/view/SideNavList.mjs +3 -3
- package/apps/form/view/Viewport.mjs +7 -7
- package/apps/form/view/ViewportController.mjs +4 -4
- package/apps/form/view/{ViewportModel.mjs → ViewportStateProvider.mjs} +8 -8
- package/apps/portal/index.html +1 -1
- package/apps/portal/resources/data/examples_devmode.json +3 -3
- package/apps/portal/resources/data/examples_dist_dev.json +3 -3
- package/apps/portal/resources/data/examples_dist_prod.json +3 -3
- package/apps/portal/view/Viewport.mjs +12 -12
- package/apps/portal/view/ViewportStateProvider.mjs +27 -0
- package/apps/portal/view/home/FooterContainer.mjs +1 -1
- package/apps/portal/view/learn/ContentComponent.mjs +2 -2
- package/apps/portal/view/learn/ContentTreeList.mjs +1 -1
- package/apps/portal/view/learn/MainContainer.mjs +9 -9
- package/apps/portal/view/learn/MainContainerController.mjs +12 -12
- package/apps/portal/view/learn/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +7 -7
- package/apps/portal/view/learn/PageSectionsList.mjs +1 -1
- package/apps/sharedcovid/view/GalleryContainer.mjs +2 -2
- package/apps/sharedcovid/view/HelixContainer.mjs +2 -2
- package/apps/sharedcovid/view/MainContainer.mjs +8 -8
- package/apps/sharedcovid/view/MainContainerController.mjs +10 -11
- package/apps/sharedcovid/view/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +8 -8
- package/apps/sharedcovid/view/TableContainerController.mjs +1 -1
- package/apps/sharedcovid/view/mapboxGl/Container.mjs +2 -2
- package/buildScripts/createClass.mjs +11 -11
- package/buildScripts/createComponent.mjs +4 -4
- package/docs/app/view/MainContainerController.mjs +6 -6
- package/examples/ServiceWorker.mjs +2 -2
- package/examples/{model → stateProvider}/advanced/MainContainer.mjs +12 -12
- package/examples/{model → stateProvider}/advanced/MainContainerController.mjs +10 -10
- package/examples/stateProvider/advanced/app.mjs +6 -0
- package/examples/{model/dialog → stateProvider/advanced}/index.html +1 -1
- package/examples/{model/inline → stateProvider/advanced}/neo-config.json +1 -1
- package/examples/{model → stateProvider}/dialog/EditUserDialog.mjs +3 -3
- package/examples/{model → stateProvider}/dialog/EditUserDialogController.mjs +5 -5
- package/examples/{model → stateProvider}/dialog/MainContainer.mjs +7 -7
- package/examples/{model → stateProvider}/dialog/MainContainerController.mjs +5 -5
- package/examples/{model → stateProvider}/dialog/app.mjs +1 -1
- package/examples/{model/multiWindow2 → stateProvider/dialog}/index.html +1 -1
- package/examples/{model → stateProvider}/dialog/neo-config.json +1 -1
- package/examples/{model → stateProvider}/extendedClass/MainContainer.mjs +13 -13
- package/examples/{model/inline → stateProvider/extendedClass}/MainContainerController.mjs +7 -7
- package/examples/stateProvider/extendedClass/MainContainerStateProvider.mjs +24 -0
- package/examples/stateProvider/extendedClass/app.mjs +6 -0
- package/examples/stateProvider/extendedClass/index.html +11 -0
- package/examples/stateProvider/extendedClass/neo-config.json +7 -0
- package/examples/{model → stateProvider}/inline/MainContainer.mjs +10 -10
- package/examples/{model/extendedClass → stateProvider/inline}/MainContainerController.mjs +7 -7
- package/examples/{model/extendedClass → stateProvider/inline}/app.mjs +1 -1
- package/examples/{model/extendedClass → stateProvider/inline}/index.html +1 -1
- package/examples/{model/extendedClass → stateProvider/inline}/neo-config.json +1 -1
- package/examples/{model/inlineNoModel → stateProvider/inlineNoStateProvider}/MainContainer.mjs +4 -4
- package/examples/{model/inlineNoModel → stateProvider/inlineNoStateProvider}/MainContainerController.mjs +3 -3
- package/examples/stateProvider/inlineNoStateProvider/README.md +8 -0
- package/examples/stateProvider/inlineNoStateProvider/app.mjs +6 -0
- package/examples/{model/inline → stateProvider/inlineNoStateProvider}/index.html +1 -1
- package/examples/stateProvider/inlineNoStateProvider/neo-config.json +7 -0
- package/examples/{model → stateProvider}/multiWindow/EditUserDialog.mjs +3 -3
- package/examples/{model → stateProvider}/multiWindow/EditUserDialogController.mjs +5 -5
- package/examples/{model → stateProvider}/multiWindow/MainContainer.mjs +3 -3
- package/examples/{model → stateProvider}/multiWindow/MainContainerController.mjs +6 -6
- package/examples/{model → stateProvider}/multiWindow/Viewport.mjs +3 -3
- package/examples/{model → stateProvider}/multiWindow/ViewportController.mjs +14 -14
- package/examples/{model/multiWindow2 → stateProvider/multiWindow}/app.mjs +1 -1
- package/examples/{model/advanced → stateProvider/multiWindow}/index.html +1 -1
- package/examples/{model → stateProvider}/multiWindow/neo-config.json +1 -1
- package/examples/{model → stateProvider}/multiWindow2/Viewport.mjs +3 -3
- package/examples/{model/multiWindow → stateProvider/multiWindow2}/app.mjs +1 -1
- package/examples/{model/multiWindow → stateProvider/multiWindow2}/index.html +1 -1
- package/examples/{model → stateProvider}/multiWindow2/neo-config.json +1 -1
- package/examples/{model → stateProvider}/nestedData/MainContainer.mjs +9 -9
- package/examples/{model → stateProvider}/nestedData/MainContainerController.mjs +7 -7
- package/examples/stateProvider/nestedData/app.mjs +6 -0
- package/examples/stateProvider/nestedData/index.html +11 -0
- package/examples/stateProvider/nestedData/neo-config.json +7 -0
- package/examples/{model → stateProvider}/table/MainContainer.mjs +8 -8
- package/examples/stateProvider/table/MainContainerStateProvider.mjs +24 -0
- package/examples/{model → stateProvider}/table/MainModel.mjs +2 -2
- package/examples/{model → stateProvider}/table/MainStore.mjs +2 -2
- package/examples/{model/advanced → stateProvider/table}/app.mjs +1 -1
- package/examples/{model/advanced → stateProvider/table}/neo-config.json +1 -1
- package/examples/{model → stateProvider}/twoWay/MainContainer.mjs +9 -9
- package/examples/{model/inline → stateProvider/twoWay}/app.mjs +1 -1
- package/examples/stateProvider/twoWay/index.html +11 -0
- package/examples/{model → stateProvider}/twoWay/neo-config.json +1 -1
- package/examples/table/nestedRecordFields/EditUserDialog.mjs +3 -3
- package/examples/table/nestedRecordFields/MainContainer.mjs +8 -8
- package/examples/table/nestedRecordFields/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +10 -10
- package/examples/toolbar/paging/view/MainContainer.mjs +7 -7
- package/examples/toolbar/paging/view/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +8 -8
- package/examples/treeAccordion/MainContainer.mjs +2 -2
- package/package.json +2 -2
- package/resources/data/deck/learnneo/pages/guides/{ViewModels.md → StateProviders.md} +52 -58
- package/resources/data/deck/learnneo/tree.json +46 -46
- package/src/DefaultConfig.mjs +2 -2
- package/src/button/Base.mjs +7 -7
- package/src/calendar/view/EditEventContainer.mjs +3 -3
- package/src/calendar/view/MainContainer.mjs +27 -27
- package/src/calendar/view/{MainContainerModel.mjs → MainContainerStateProvider.mjs} +7 -7
- package/src/calendar/view/YearComponent.mjs +5 -5
- package/src/calendar/view/calendars/EditContainer.mjs +1 -1
- package/src/calendar/view/calendars/List.mjs +1 -1
- package/src/calendar/view/month/Component.mjs +6 -6
- package/src/calendar/view/settings/GeneralContainer.mjs +2 -2
- package/src/calendar/view/week/Component.mjs +10 -10
- package/src/calendar/view/week/EventDragZone.mjs +1 -1
- package/src/component/Base.mjs +77 -61
- package/src/container/Base.mjs +3 -3
- package/src/controller/Component.mjs +29 -12
- package/src/core/Base.mjs +0 -1
- package/src/core/Compare.mjs +128 -83
- package/src/date/SelectorContainer.mjs +12 -12
- package/src/date/{SelectorContainerModel.mjs → SelectorContainerStateProvider.mjs} +7 -7
- package/src/layout/Base.mjs +6 -6
- package/src/{model/Component.mjs → state/Provider.mjs} +67 -69
- package/src/tree/Accordion.mjs +15 -13
- package/src/worker/App.mjs +2 -2
- package/apps/portal/view/ViewportModel.mjs +0 -27
- package/examples/model/extendedClass/MainContainerModel.mjs +0 -24
- package/examples/model/inlineNoModel/README.md +0 -8
- package/examples/model/inlineNoModel/app.mjs +0 -6
- package/examples/model/inlineNoModel/index.html +0 -11
- package/examples/model/inlineNoModel/neo-config.json +0 -7
- package/examples/model/nestedData/app.mjs +0 -6
- package/examples/model/nestedData/index.html +0 -11
- package/examples/model/nestedData/neo-config.json +0 -7
- package/examples/model/table/MainContainerModel.mjs +0 -24
- package/examples/model/table/app.mjs +0 -6
- package/examples/model/table/neo-config.json +0 -7
- package/examples/model/twoWay/app.mjs +0 -6
- package/examples/model/twoWay/index.html +0 -11
- /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.
|
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.
|
15
|
+
* @member {Neo.state.Provider|null} mainStateProvider=null
|
16
16
|
*/
|
17
|
-
|
17
|
+
mainStateProvider = null
|
18
18
|
|
19
19
|
static config = {
|
20
20
|
/**
|
21
|
-
* @member {String} className='Neo.examples.
|
21
|
+
* @member {String} className='Neo.examples.stateProvider.multiWindow.ViewportController'
|
22
22
|
* @protected
|
23
23
|
*/
|
24
|
-
className: 'Neo.examples.
|
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
|
-
|
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.
|
56
|
-
|
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
|
-
|
66
|
-
parent: me.
|
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
|
-
|
73
|
+
stateProvider
|
74
74
|
});
|
75
75
|
|
76
|
-
if (!me.
|
77
|
-
me.
|
76
|
+
if (!me.mainStateProvider) {
|
77
|
+
me.mainStateProvider = view.stateProvider
|
78
78
|
}
|
79
79
|
})
|
80
80
|
}
|
@@ -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>
|
6
|
+
<title>stateProvider.multiWindow</title>
|
7
7
|
</head>
|
8
8
|
<body>
|
9
9
|
<script src="../../../src/MicroLoader.mjs" type="module"></script>
|
@@ -1,16 +1,16 @@
|
|
1
1
|
import BaseViewport from '../../../src/container/Viewport.mjs';
|
2
2
|
|
3
3
|
/**
|
4
|
-
* @class Neo.examples.
|
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.
|
10
|
+
* @member {String} className='Neo.examples.stateProvider.multiWindow2.Viewport'
|
11
11
|
* @protected
|
12
12
|
*/
|
13
|
-
className: 'Neo.examples.
|
13
|
+
className: 'Neo.examples.stateProvider.multiWindow2.Viewport',
|
14
14
|
/**
|
15
15
|
* @member {Object} style
|
16
16
|
*/
|
@@ -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>
|
6
|
+
<title>stateProvider.multiWindow2</title>
|
7
7
|
</head>
|
8
8
|
<body>
|
9
9
|
<script src="../../../src/MicroLoader.mjs" type="module"></script>
|
@@ -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.
|
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.
|
14
|
+
* @member {String} className='Neo.examples.stateProvider.nestedData.MainContainer'
|
15
15
|
* @protected
|
16
16
|
*/
|
17
|
-
className: 'Neo.examples.
|
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.
|
23
|
+
* @member {Object|Neo.state.Provider} stateProvider
|
24
24
|
*/
|
25
|
-
|
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 : '
|
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: '
|
114
|
+
handler: 'onLogStateProviderIntoConsoleButtonClick',
|
115
115
|
style : {marginTop: '2em'},
|
116
|
-
text : 'Log
|
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.
|
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.
|
10
|
+
* @member {String} className='Neo.examples.stateProvider.nestedData.MainContainerController'
|
11
11
|
* @protected
|
12
12
|
*/
|
13
|
-
className: 'Neo.examples.
|
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
|
-
|
34
|
-
console.log(this.
|
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.
|
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.
|
66
|
+
this.setState({
|
67
67
|
'user.details.lastname': value
|
68
68
|
})
|
69
69
|
}
|
@@ -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>
|
@@ -1,26 +1,26 @@
|
|
1
|
-
import
|
2
|
-
import TableContainer
|
3
|
-
import Viewport
|
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.
|
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.
|
12
|
+
* @member {String} className='Neo.examples.stateProvider.table.MainContainer'
|
13
13
|
* @protected
|
14
14
|
*/
|
15
|
-
className: 'Neo.examples.
|
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.
|
21
|
+
* @member {Object|Neo.state.Provider} stateProvider=MainContainerStateProvider
|
22
22
|
*/
|
23
|
-
|
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.
|
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.
|
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.
|
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.
|
10
|
+
className : 'Neo.examples.stateProvider.table.MainStore',
|
11
11
|
keyProperty: 'githubId',
|
12
12
|
model : Model,
|
13
13
|
|
@@ -1,23 +1,23 @@
|
|
1
|
-
import
|
2
|
-
import
|
3
|
-
import TextField
|
4
|
-
import Viewport
|
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.
|
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.
|
13
|
+
* @member {String} className='Neo.examples.stateProvider.twoWay.MainContainer'
|
14
14
|
* @protected
|
15
15
|
*/
|
16
|
-
className: 'Neo.examples.
|
16
|
+
className: 'Neo.examples.stateProvider.twoWay.MainContainer',
|
17
17
|
/**
|
18
|
-
* @member {Object|Neo.
|
18
|
+
* @member {Object|Neo.state.Provider} stateProvider
|
19
19
|
*/
|
20
|
-
|
20
|
+
stateProvider: {
|
21
21
|
data: {
|
22
22
|
user: {
|
23
23
|
details: {
|
@@ -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>
|
@@ -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.
|
13
|
+
* @member {String} className='Neo.examples.table.nestedRecordFields.EditUserDialog'
|
14
14
|
* @protected
|
15
15
|
*/
|
16
|
-
className: 'Neo.examples.
|
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.
|
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
|
2
|
-
import
|
3
|
-
import TableContainer
|
4
|
-
import Viewport
|
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.
|
22
|
+
* @member {Neo.state.Provider} stateProvider=MainContainerStateProvider
|
23
23
|
*/
|
24
|
-
|
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.
|
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
|
-
|
79
|
+
stateProvider : {parent: me.getStateProvider()},
|
80
80
|
record,
|
81
81
|
windowId
|
82
82
|
})
|
package/examples/table/nestedRecordFields/{MainContainerModel.mjs → MainContainerStateProvider.mjs}
RENAMED
@@ -1,20 +1,20 @@
|
|
1
|
-
import MainStore
|
2
|
-
import
|
3
|
-
import Store
|
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.
|
9
|
-
* @extends Neo.
|
8
|
+
* @class Neo.examples.table.nestedRecordFields.MainContainerStateProvider
|
9
|
+
* @extends Neo.state.Provider
|
10
10
|
*/
|
11
|
-
class
|
11
|
+
class MainContainerStateProvider extends StateProvider {
|
12
12
|
static config = {
|
13
13
|
/**
|
14
|
-
* @member {String} className='Neo.examples.table.nestedRecordFields.
|
14
|
+
* @member {String} className='Neo.examples.table.nestedRecordFields.MainContainerStateProvider'
|
15
15
|
* @protected
|
16
16
|
*/
|
17
|
-
className: 'Neo.examples.table.nestedRecordFields.
|
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(
|
61
|
+
export default Neo.setupClass(MainContainerStateProvider);
|
@@ -1,8 +1,8 @@
|
|
1
|
-
import MainContainerController
|
2
|
-
import
|
3
|
-
import PagingToolbar
|
4
|
-
import UserTableContainer
|
5
|
-
import Viewport
|
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.
|
95
|
+
* @member {Neo.state.Provider} stateProvider=MainContainerStateProvider
|
96
96
|
*/
|
97
|
-
|
97
|
+
stateProvider: MainContainerStateProvider,
|
98
98
|
/**
|
99
99
|
* @member {Object} style={padding:'20px'}
|
100
100
|
*/
|
package/examples/toolbar/paging/view/{MainContainerModel.mjs → MainContainerStateProvider.mjs}
RENAMED
@@ -1,17 +1,17 @@
|
|
1
|
-
import
|
2
|
-
import UserStore
|
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.
|
6
|
-
* @extends Neo.
|
5
|
+
* @class Neo.examples.toolbar.paging.view.MainContainerStateProvider
|
6
|
+
* @extends Neo.state.Provider
|
7
7
|
*/
|
8
|
-
class
|
8
|
+
class MainContainerStateProvider extends StateProvider {
|
9
9
|
static config = {
|
10
10
|
/**
|
11
|
-
* @member {String} className='Neo.examples.toolbar.paging.view.
|
11
|
+
* @member {String} className='Neo.examples.toolbar.paging.view.MainContainerStateProvider'
|
12
12
|
* @protected
|
13
13
|
*/
|
14
|
-
className: 'Neo.examples.toolbar.paging.view.
|
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(
|
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
|
-
|
106
|
+
stateProvider: {
|
107
107
|
data: {
|
108
108
|
selection: [{name: 'Please select something'}]
|
109
109
|
}
|