neo.mjs 6.45.0 → 6.47.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.
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='6.45.0'
23
+ * @member {String} version='6.47.0'
24
24
  */
25
- version: '6.45.0'
25
+ version: '6.47.0'
26
26
  }
27
27
 
28
28
  /**
@@ -105,6 +105,13 @@ class FooterContainer extends Container {
105
105
  iconCls: 'fa-brands fa-x-twitter',
106
106
  text : 'X',
107
107
  url : 'https://x.com/neomjs1'
108
+ }, {
109
+ module: Component,
110
+ cls : ['portal-home-footer-spacer']
111
+ }, {
112
+ module: Component,
113
+ cls : ['neo-version'],
114
+ html : 'v6.47.0'
108
115
  }]
109
116
  }],
110
117
  /**
@@ -49,7 +49,11 @@ class Colors extends FeatureSection {
49
49
  /**
50
50
  * @member {String} subHeadline='Socket Data'
51
51
  */
52
- subHeadline: 'Socket Data'
52
+ subHeadline: 'Socket Data',
53
+ /**
54
+ * @member {String} textContainerPosition='end'
55
+ */
56
+ textContainerPosition: 'end'
53
57
  }
54
58
  }
55
59
 
@@ -31,7 +31,7 @@ class Features extends BaseContainer {
31
31
  */
32
32
  items: [{
33
33
  header: 'Multi-threading',
34
- route : '#/learn/WhyNeo-Quick',
34
+ route : '#/learn/benefits.Multi-Threading',
35
35
 
36
36
  content: [
37
37
  'Following the OMT (Off the Main-Thread) paradigm',
@@ -42,7 +42,7 @@ class Features extends BaseContainer {
42
42
  ]
43
43
  }, {
44
44
  header: 'Multi-Window Apps',
45
- route : '#/learn/WhyNeo-Quick',
45
+ route : '#/learn/WhyNeo-Multi-Window',
46
46
 
47
47
  content: [
48
48
  'No need for a Native Shell (e.g. Electron)',
@@ -60,6 +60,28 @@ serviceWorkerFolders.forEach(folder => {
60
60
  fs.writeFileSync(serviceWorkerPath, serviceContentArray.join(os.EOL));
61
61
  });
62
62
 
63
+ // Update the version inside the Portal App Footer
64
+ if (insideNeo) {
65
+ const footerPath = path.join(__dirname, 'apps/portal/view/home/FooterContainer.mjs');
66
+
67
+ if (fs.existsSync(footerPath)) {
68
+ const footerContentArray = fs.readFileSync(footerPath).toString().split(os.EOL);
69
+
70
+ i = 0;
71
+ len = footerContentArray.length;
72
+
73
+ for (; i < len; i++) {
74
+ if (footerContentArray[i].includes('neo-version')) {
75
+ // we want to update the comment inside ServiceWorker.mjs as well
76
+ footerContentArray[i + 1] = footerContentArray[i + 1].replace(/'\w.+'/, `'v${packageJson.version}'`);
77
+ break;
78
+ }
79
+ }
80
+
81
+ fs.writeFileSync(footerPath, footerContentArray.join(os.EOL));
82
+ }
83
+ }
84
+
63
85
  const processTime = (Math.round((new Date - startDate) * 100) / 100000).toFixed(2);
64
86
  console.log(`\nTotal time for ${programName}: ${processTime}s`);
65
87
 
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='6.45.0'
23
+ * @member {String} version='6.47.0'
24
24
  */
25
- version: '6.45.0'
25
+ version: '6.47.0'
26
26
  }
27
27
 
28
28
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neo.mjs",
3
- "version": "6.45.0",
3
+ "version": "6.47.0",
4
4
  "description": "The webworkers driven UI framework",
5
5
  "type": "module",
6
6
  "repository": {
@@ -8,28 +8,6 @@
8
8
  position : relative;
9
9
  text-decoration: none;
10
10
 
11
- &:hover {
12
- background-color: var(--sem-color-surface-primary-background);
13
-
14
- &:after {
15
- background-color: var(--purple-200);
16
- border-radius : 2px;
17
- bottom : 10px;
18
- content : attr(href) ' \2192';
19
- font-size : 0.7em;
20
- left : -1px;
21
- opacity : 0.7;
22
- padding : 3px 20px;
23
- position : absolute;
24
- right : -1px;
25
- text-align : center;
26
- }
27
-
28
- .portal-content-box-headline {
29
- border-bottom-color: #b7c0da;
30
- }
31
- }
32
-
33
11
  .portal-content-box-content {
34
12
  margin-top : 0.75em;
35
13
  padding-left: 1.3em;
@@ -46,6 +24,32 @@
46
24
  }
47
25
  }
48
26
 
27
+ .neo-mouse {
28
+ .portal-content-box {
29
+ &:hover {
30
+ background-color: var(--sem-color-surface-primary-background);
31
+
32
+ &:after {
33
+ background-color: var(--purple-200);
34
+ border-radius : 2px;
35
+ bottom : 10px;
36
+ content : attr(href) ' \2192';
37
+ font-size : 0.7em;
38
+ left : -1px;
39
+ opacity : 0.7;
40
+ padding : 3px 20px;
41
+ position : absolute;
42
+ right : -1px;
43
+ text-align : center;
44
+ }
45
+
46
+ .portal-content-box-headline {
47
+ border-bottom-color: #b7c0da;
48
+ }
49
+ }
50
+ }
51
+ }
52
+
49
53
  .neo-no-mouse {
50
54
  .portal-content-box {
51
55
  &:after {
@@ -10,27 +10,28 @@
10
10
  flex-direction: column;
11
11
  }
12
12
 
13
- &.portal-position-end {
14
- flex-direction: row-reverse;
13
+ @media (min-width: 841px) {
14
+ &.portal-position-end {
15
+ flex-direction: row-reverse;
16
+ }
15
17
  }
16
18
 
17
19
  .neo-content {
18
20
  font-size: min(max(2.3vw, 16px), 30px);
19
21
  }
20
22
 
21
- .neo-h1 {
22
- font-size : min(max(5.5vw, 30px), 64px);
23
+ h1.neo-h1 {
24
+ color : var(--purple-400);
25
+ font-size : min(max(4.5vw, 30px), 44px);
23
26
  line-height: 1em;
24
27
  margin : 0;
25
- text-align : center;
26
28
  }
27
29
 
28
- .neo-h2 {
29
- font-size : min(max(3.5vw, 24px), 44px);
30
+ h2.neo-h2 {
31
+ font-size : min(max(3.5vw, 24px), 35px);
30
32
  font-weight: 600;
31
33
  line-height: 1em;
32
34
  margin : 0;
33
- text-align : center;
34
35
  }
35
36
 
36
37
  .page-live-preview {
@@ -39,7 +40,7 @@
39
40
  }
40
41
 
41
42
  .portal-content-text {
42
- align-items : center;
43
+ align-items : start;
43
44
  display : flex;
44
45
  flex : 1;
45
46
  flex-direction : column;
@@ -55,9 +56,8 @@
55
56
  }
56
57
 
57
58
  .portal-content-wrapper {
58
- background-color: lightgray;
59
- flex : 2;
60
- padding : 20px;
59
+ flex : 2;
60
+ padding: 20px;
61
61
 
62
62
  @media (max-width: 600px) {
63
63
  max-height: 35em;
@@ -25,6 +25,18 @@
25
25
  color: white;
26
26
  }
27
27
 
28
+ .neo-version {
29
+ align-items: center;
30
+ display : flex;
31
+ padding : var(--button-padding);
32
+ }
33
+
34
+ .neo-version,
35
+ .portal-home-footer-spacer {
36
+ height: var(--button-height);
37
+ margin: var(--button-margin);
38
+ }
39
+
28
40
  .portal-home-footer-section {
29
41
  background-color: transparent;
30
42
  color : white;
@@ -39,7 +51,8 @@
39
51
  font-size: 1.2rem;
40
52
  }
41
53
 
42
- .neo-button {
54
+ .neo-button,
55
+ .neo-version {
43
56
  padding: 0 3px;
44
57
  }
45
58
  }
@@ -47,14 +60,5 @@
47
60
  @media (max-width: 500px) {
48
61
  max-height: 15em;
49
62
  min-height: 15em;
50
- padding : 1em;
51
-
52
- h2.neo-h2 {
53
- font-size: 1.2rem;
54
- }
55
-
56
- .neo-button {
57
- padding: 0 3px;
58
- }
59
63
  }
60
64
  }
@@ -1,3 +1,12 @@
1
1
  .portal-home-parts-colors {
2
+ .colors-header-toolbar {
3
+ .neo-button {
4
+ height : 27px;
5
+ padding: var(--button-padding);
2
6
 
7
+ .neo-button-text {
8
+ font-size: var(--button-text-font-size);
9
+ }
10
+ }
11
+ }
3
12
  }
@@ -262,12 +262,12 @@ const DefaultConfig = {
262
262
  useVdomWorker: true,
263
263
  /**
264
264
  * buildScripts/injectPackageVersion.mjs will update this value
265
- * @default '6.45.0'
265
+ * @default '6.47.0'
266
266
  * @memberOf! module:Neo
267
267
  * @name config.version
268
268
  * @type String
269
269
  */
270
- version: '6.45.0'
270
+ version: '6.47.0'
271
271
  };
272
272
 
273
273
  Object.assign(DefaultConfig, {
@@ -442,7 +442,7 @@ class DomEvents extends Base {
442
442
 
443
443
  data = {
444
444
  ...me.getEventData(event),
445
- valid: target.checkValidity(),
445
+ valid: target.checkValidity?.(),
446
446
  value: target.value
447
447
  };
448
448
 
@@ -67,7 +67,7 @@ class MonacoEditor extends Base {
67
67
  editor = me.map[id] = monaco.editor.create(node, data);
68
68
 
69
69
  editor.getModel().onDidChangeContent(me.onContentChange.bind(me, id))
70
- } else {
70
+ } else if (Neo.config.environment === 'development') {
71
71
  console.warn(`addon.MonacoEditor: node ${id} not found`)
72
72
  }
73
73
  }
@@ -18,6 +18,11 @@ class GalleryModel extends Model {
18
18
  * @protected
19
19
  */
20
20
  ntype: 'selection-gallerymodel',
21
+ /**
22
+ * @member {String} cls='neo-selection-gallerymodel'
23
+ * @protected
24
+ */
25
+ cls: 'neo-selection-gallerymodel',
21
26
  /**
22
27
  * True to stay in the same column when navigating with the up and down keys,
23
28
  * otherwise you will navigate to the next / prev column when moving out
@@ -18,6 +18,11 @@ class HelixModel extends Model {
18
18
  * @protected
19
19
  */
20
20
  ntype: 'selection-helixmodel',
21
+ /**
22
+ * @member {String} cls='neo-selection-helixmodel'
23
+ * @protected
24
+ */
25
+ cls: 'neo-selection-helixmodel',
21
26
  /**
22
27
  * True to stay in the same column when navigating with the up and down keys,
23
28
  * otherwise you will navigate to the next / prev column when moving out
@@ -18,7 +18,7 @@ class RowModel extends Model {
18
18
  */
19
19
  ntype: 'selection-table-rowmodel',
20
20
  /**
21
- * @member {String} cls='selection-rowmodel'
21
+ * @member {String} cls='neo-selection-rowmodel'
22
22
  * @protected
23
23
  */
24
24
  cls: 'neo-selection-rowmodel'
@@ -232,7 +232,7 @@ class Manager extends Base {
232
232
  NeoConfig.hasTouchEvents = ('ontouchstart' in window) || (navigator.maxTouchPoints > 0);
233
233
 
234
234
  // Useful for styling
235
- !NeoConfig.hasMouseEvents && document.body.classList.add('neo-no-mouse');
235
+ document.body.classList.add(NeoConfig.hasMouseEvents ? 'neo-mouse' : 'neo-no-mouse');
236
236
 
237
237
  if (window.Worker) {
238
238
  me.webWorkersEnabled = true