neo.mjs 6.10.4 → 6.10.6

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 (71) hide show
  1. package/apps/ServiceWorker.mjs +2 -2
  2. package/apps/form/model/SideNav.mjs +3 -3
  3. package/apps/form/view/SideNavList.mjs +8 -3
  4. package/apps/form/view/ViewportController.mjs +6 -7
  5. package/apps/portal/Overwrites.mjs +21 -0
  6. package/apps/portal/app.mjs +7 -0
  7. package/apps/portal/data/blog.json +743 -0
  8. package/apps/portal/index.html +15 -0
  9. package/apps/portal/model/BlogPost.mjs +59 -0
  10. package/apps/{learnneo → portal}/model/Content.mjs +3 -3
  11. package/apps/{learnneo → portal}/neo-config.json +1 -1
  12. package/apps/portal/store/BlogPosts.mjs +43 -0
  13. package/apps/{learnneo → portal}/store/Content.mjs +2 -5
  14. package/apps/{learnneo/view/home → portal/view}/HeaderToolbar.mjs +22 -14
  15. package/apps/portal/view/Viewport.mjs +59 -0
  16. package/apps/portal/view/ViewportController.mjs +79 -0
  17. package/apps/portal/view/blog/Container.mjs +50 -0
  18. package/apps/portal/view/blog/List.mjs +173 -0
  19. package/apps/{newwebsite/view/Viewport.mjs → portal/view/home/MainContainer.mjs} +7 -8
  20. package/apps/{learnneo/view/home → portal/view/learn}/ContentTreeList.mjs +6 -6
  21. package/apps/{learnneo/view/home → portal/view/learn}/ContentView.mjs +3 -3
  22. package/apps/{learnneo/view → portal/view/learn}/LivePreview.mjs +6 -6
  23. package/apps/{learnneo/view/home → portal/view/learn}/MainContainer.mjs +27 -31
  24. package/apps/{learnneo/view/home → portal/view/learn}/MainContainerController.mjs +3 -3
  25. package/apps/{learnneo/view/home → portal/view/learn}/MainContainerModel.mjs +3 -3
  26. package/apps/website/Overwrites.mjs +16 -0
  27. package/apps/website/app.mjs +2 -1
  28. package/apps/website/view/blog/List.mjs +1 -1
  29. package/buildScripts/webpack/development/webpack.config.appworker.mjs +3 -1
  30. package/buildScripts/webpack/json/myApps.template.json +1 -1
  31. package/buildScripts/webpack/production/webpack.config.appworker.mjs +3 -1
  32. package/examples/ServiceWorker.mjs +2 -2
  33. package/package.json +2 -2
  34. package/resources/examples/data/formSideNav.json +19 -19
  35. package/resources/scss/src/apps/portal/blog/Container.scss +18 -0
  36. package/resources/scss/src/apps/portal/blog/List.scss +183 -0
  37. package/resources/scss/src/apps/{newwebsite/Viewport.scss → portal/home/MainContainer.scss} +1 -1
  38. package/resources/scss/src/tab/Strip.scss +1 -0
  39. package/resources/scss/theme-neo-light/button/Base.scss +5 -5
  40. package/resources/scss/theme-neo-light/tab/header/Button.scss +8 -7
  41. package/src/DefaultConfig.mjs +2 -2
  42. package/src/component/Base.mjs +5 -0
  43. package/src/component/Toast.mjs +5 -2
  44. package/src/container/Base.mjs +14 -0
  45. package/src/controller/Application.mjs +2 -1
  46. package/src/controller/Base.mjs +14 -3
  47. package/src/controller/Component.mjs +1 -1
  48. package/src/core/Base.mjs +7 -5
  49. package/src/data/RecordFactory.mjs +3 -3
  50. package/src/form/Container.mjs +50 -0
  51. package/src/form/field/Text.mjs +2 -2
  52. package/src/form/field/TextArea.mjs +5 -0
  53. package/src/main/addon/WindowPosition.mjs +24 -14
  54. package/src/model/Component.mjs +7 -3
  55. package/src/tab/Strip.mjs +21 -36
  56. package/src/tab/header/Button.mjs +5 -7
  57. package/src/worker/Base.mjs +41 -29
  58. package/src/worker/Manager.mjs +4 -3
  59. package/src/worker/mixin/RemoteMethodAccess.mjs +20 -18
  60. package/apps/learnneo/app.mjs +0 -6
  61. package/apps/learnneo/index.html +0 -21
  62. package/apps/learnneo/view/Viewport.mjs +0 -52
  63. package/apps/learnneo/view/ViewportController.mjs +0 -19
  64. package/apps/newwebsite/app.mjs +0 -6
  65. package/apps/newwebsite/index.html +0 -13
  66. package/apps/newwebsite/neo-config.json +0 -7
  67. /package/resources/scss/src/apps/{learnneo/home → portal}/HeaderToolbar.scss +0 -0
  68. /package/resources/scss/src/apps/{learnneo → portal}/Viewport.scss +0 -0
  69. /package/resources/scss/src/apps/{learnneo/home → portal/learn}/ContentTreeList.scss +0 -0
  70. /package/resources/scss/src/apps/{learnneo/home → portal/learn}/ContentView.scss +0 -0
  71. /package/resources/scss/src/apps/{learnneo/home → portal/learn}/MainContainer.scss +0 -0
@@ -18,6 +18,15 @@ class RemoteMethodAccess extends Base {
18
18
  mixin: true
19
19
  }
20
20
 
21
+ /**
22
+ * @param {Object} source
23
+ * @param {Object} target
24
+ */
25
+ assignPort(source, target) {
26
+ const {appName, port, windowId} = source;
27
+ Object.assign(target, {appName, port, windowId})
28
+ }
29
+
21
30
  /**
22
31
  * @param {Object} remote
23
32
  * @param method
@@ -36,10 +45,7 @@ class RemoteMethodAccess extends Base {
36
45
  remoteMethod : method
37
46
  };
38
47
 
39
- if (me.isSharedWorker) {
40
- opts.appName = data?.appName;
41
- opts.port = data?.port;
42
- }
48
+ me.isSharedWorker && me.assignPort(data, opts);
43
49
 
44
50
  return me.promiseMessage(origin, opts, buffer);
45
51
  }
@@ -109,19 +115,17 @@ class RemoteMethodAccess extends Base {
109
115
  * @param {Object} data
110
116
  */
111
117
  reject(msg, data) {
112
- let opts = {
118
+ let me = this,
119
+
120
+ opts = {
113
121
  action : 'reply',
114
122
  data,
115
123
  reject : true,
116
124
  replyId: msg.id
117
125
  };
118
126
 
119
- if (this.isSharedWorker) {
120
- opts.appName = msg.appName;
121
- opts.port = msg.port;
122
- }
123
-
124
- this.sendMessage(msg.origin, opts);
127
+ me.isSharedWorker && me.assignPort(msg, opts);
128
+ me.sendMessage(msg.origin, opts);
125
129
  }
126
130
 
127
131
  /**
@@ -130,18 +134,16 @@ class RemoteMethodAccess extends Base {
130
134
  * @param {Object} data
131
135
  */
132
136
  resolve(msg, data) {
133
- let opts = {
137
+ let me = this,
138
+
139
+ opts = {
134
140
  action : 'reply',
135
141
  data,
136
142
  replyId: msg.id
137
143
  };
138
144
 
139
- if (this.isSharedWorker) {
140
- opts.appName = msg.appName;
141
- opts.port = msg.port;
142
- }
143
-
144
- this.sendMessage(msg.origin, opts);
145
+ me.isSharedWorker && me.assignPort(msg, opts);
146
+ me.sendMessage(msg.origin, opts);
145
147
  }
146
148
  }
147
149
 
@@ -1,6 +0,0 @@
1
- import Viewport from './view/Viewport.mjs';
2
-
3
- export const onStart = () => Neo.app({
4
- mainView: Viewport,
5
- name : 'LearnNeo'
6
- })
@@ -1,21 +0,0 @@
1
- <!DOCTYPE HTML>
2
- <html>
3
-
4
- <head>
5
- <meta name="viewport" content="width=device-width, initial-scale=1">
6
- <meta charset="UTF-8">
7
- <title>LearnNeo</title>
8
- <link
9
- href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Source+Sans+3:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,500;0,8..60,600;0,8..60,700;1,8..60,400;1,8..60,500;1,8..60,600;1,8..60,700&display=swap"
10
- rel="stylesheet">
11
- <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
12
- <script>
13
-
14
- </script>
15
- </head>
16
-
17
- <body>
18
- <script src="../../src/MicroLoader.mjs" type="module"></script>
19
- </body>
20
-
21
- </html>
@@ -1,52 +0,0 @@
1
- import BaseViewport from '../../../src/container/Viewport.mjs';
2
- import ViewportController from './ViewportController.mjs';
3
-
4
- /**
5
- * @class LearnNeo.view.Viewport
6
- * @extends Neo.container.Viewport
7
- */
8
- class Viewport extends BaseViewport {
9
- static config = {
10
- /**
11
- * @member {String} className='LearnNeo.view.Viewport'
12
- * @protected
13
- */
14
- className: 'LearnNeo.view.Viewport',
15
- /**
16
- * @member {Neo.controller.Component} controller=ViewportController
17
- */
18
- controller: ViewportController,
19
- /**
20
- * @member {Object[]} items
21
- */
22
- items: [{
23
- module: () => import('./home/MainContainer.mjs')
24
- }],
25
- /**
26
- * @member {Object} layout={ntype:'card'}
27
- */
28
- layout: {ntype: 'card'}
29
- }
30
-
31
- /**
32
- *
33
- */
34
- onConstructed() {
35
- super.onConstructed();
36
-
37
- let me = this;
38
-
39
- Neo.Main.getByPath({path: 'location.search'})
40
- .then(data => {
41
- const searchString = data?.substr(1) || '';
42
- const search = searchString ? JSON.parse(`{"${decodeURI(searchString.replace(/&/g, "\",\"").replace(/=/g, "\":\""))}"}`) : {};
43
- me.deck = search.deck || 'learnneo';
44
-
45
- me.addCls(me.deck);
46
- })
47
- }
48
- }
49
-
50
- Neo.applyClassConfig(Viewport);
51
-
52
- export default Viewport;
@@ -1,19 +0,0 @@
1
- import Controller from '../../../src/controller/Component.mjs';
2
-
3
- /**
4
- * @class LearnNeo.view.ViewportController
5
- * @extends Neo.controller.Component
6
- */
7
- class ViewportController extends Controller {
8
- static config = {
9
- /**
10
- * @member {String} className='LearnNeo.view.ViewportController'
11
- * @protected
12
- */
13
- className: 'LearnNeo.view.ViewportController'
14
- }
15
- }
16
-
17
- Neo.applyClassConfig(ViewportController);
18
-
19
- export default ViewportController;
@@ -1,6 +0,0 @@
1
- import Viewport from './view/Viewport.mjs';
2
-
3
- export const onStart = () => Neo.app({
4
- mainView: Viewport,
5
- name : 'NewWebsite'
6
- })
@@ -1,13 +0,0 @@
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>Neo Website</title>
7
- <link rel="preconnect" href="https://fonts.googleapis.com">
8
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9
- <link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Source+Sans+3:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,500;0,8..60,600;0,8..60,700;1,8..60,400;1,8..60,500;1,8..60,600;1,8..60,700&display=swap" rel="stylesheet">
10
- <body>
11
- <script src="../../src/MicroLoader.mjs" type="module"></script>
12
- </body>
13
- </html>
@@ -1,7 +0,0 @@
1
- {
2
- "appPath" : "apps/newwebsite/app.mjs",
3
- "basePath" : "../../",
4
- "environment": "development",
5
- "mainPath" : "./Main.mjs",
6
- "themes" : ["neo-theme-neo-light"]
7
- }