neo.mjs 9.15.0 → 10.0.0-alpha.1

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 (98) hide show
  1. package/ServiceWorker.mjs +2 -2
  2. package/apps/email/view/Viewport.mjs +2 -2
  3. package/apps/form/view/Viewport.mjs +1 -1
  4. package/apps/portal/index.html +1 -1
  5. package/apps/portal/view/examples/List.mjs +1 -1
  6. package/apps/portal/view/home/FooterContainer.mjs +1 -1
  7. package/apps/portal/view/learn/ContentComponent.mjs +5 -5
  8. package/apps/realworld2/view/HomeContainer.mjs +1 -1
  9. package/apps/route/view/center/CardAdministration.mjs +3 -3
  10. package/apps/route/view/center/CardAdministrationDenied.mjs +2 -2
  11. package/apps/route/view/center/CardContact.mjs +2 -2
  12. package/apps/route/view/center/CardHome.mjs +2 -2
  13. package/apps/route/view/center/CardSection1.mjs +2 -2
  14. package/apps/route/view/center/CardSection2.mjs +2 -2
  15. package/buildScripts/createApp.mjs +2 -2
  16. package/docs/app/view/classdetails/HeaderComponent.mjs +3 -3
  17. package/docs/app/view/classdetails/MembersList.mjs +43 -46
  18. package/docs/app/view/classdetails/SourceViewComponent.mjs +1 -1
  19. package/docs/app/view/classdetails/TutorialComponent.mjs +1 -1
  20. package/examples/component/toast/MainContainer.mjs +16 -16
  21. package/examples/component/wrapper/googleMaps/MarkerDialog.mjs +4 -4
  22. package/examples/fields/MainContainer.mjs +1 -1
  23. package/examples/panel/MainContainer.mjs +2 -2
  24. package/examples/tab/container/MainContainer.mjs +3 -3
  25. package/examples/tabs/MainContainer.mjs +2 -2
  26. package/examples/tabs/MainContainer2.mjs +3 -3
  27. package/examples/viewport/MainContainer.mjs +2 -2
  28. package/package.json +3 -3
  29. package/resources/data/deck/learnneo/pages/UsingTheseTopics.md +65 -0
  30. package/resources/data/deck/learnneo/pages/benefits/ConfigSystem.md +1 -1
  31. package/resources/data/deck/learnneo/pages/benefits/FormsEngine.md +7 -7
  32. package/resources/data/deck/learnneo/pages/benefits/FourEnvironments.md +10 -11
  33. package/resources/data/deck/learnneo/pages/benefits/Introduction.md +38 -5
  34. package/resources/data/deck/learnneo/pages/benefits/MultiWindow.md +1 -1
  35. package/resources/data/deck/learnneo/pages/benefits/Speed.md +1 -1
  36. package/resources/data/deck/learnneo/pages/gettingstarted/ComponentModels.md +2 -2
  37. package/resources/data/deck/learnneo/pages/gettingstarted/Config.md +3 -3
  38. package/resources/data/deck/learnneo/pages/gettingstarted/DescribingTheUI.md +2 -2
  39. package/resources/data/deck/learnneo/pages/gettingstarted/Events.md +3 -3
  40. package/resources/data/deck/learnneo/pages/gettingstarted/Extending.md +2 -2
  41. package/resources/data/deck/learnneo/pages/gettingstarted/References.md +3 -3
  42. package/resources/data/deck/learnneo/pages/gettingstarted/Workspaces.md +3 -3
  43. package/resources/data/deck/learnneo/pages/guides/ComponentsAndContainers.md +6 -6
  44. package/resources/data/deck/learnneo/pages/guides/CustomComponents.md +1 -1
  45. package/resources/data/deck/learnneo/pages/guides/MainThreadAddonIntro.md +1 -1
  46. package/resources/data/deck/learnneo/pages/guides/StateProviders.md +6 -6
  47. package/resources/data/deck/learnneo/pages/guides/events/CustomEvents.md +8 -8
  48. package/resources/data/deck/learnneo/pages/guides/events/DomEvents.md +11 -11
  49. package/resources/data/deck/learnneo/pages/javascript/Classes.md +4 -4
  50. package/resources/data/deck/learnneo/pages/javascript/NewNode.md +2 -2
  51. package/resources/data/deck/learnneo/pages/javascript/Overrides.md +4 -4
  52. package/resources/data/deck/learnneo/pages/tutorials/Earthquakes.md +21 -21
  53. package/resources/data/deck/learnneo/pages/tutorials/TodoList.md +2 -2
  54. package/resources/data/deck/learnneo/tree.json +1 -1
  55. package/resources/data/deck/training/pages/2022-12-27T21-55-23-144Z.md +2 -2
  56. package/resources/data/deck/training/pages/2022-12-29T18-36-08-226Z.md +1 -1
  57. package/resources/data/deck/training/pages/2022-12-29T18-36-56-893Z.md +2 -2
  58. package/resources/data/deck/training/pages/2022-12-29T20-37-08-919Z.md +2 -2
  59. package/resources/data/deck/training/pages/2022-12-29T20-37-20-344Z.md +2 -2
  60. package/resources/data/deck/training/pages/2023-01-13T21-48-17-258Z.md +2 -2
  61. package/resources/data/deck/training/pages/2023-02-05T17-44-53-815Z.md +9 -9
  62. package/resources/data/deck/training/pages/2023-10-14T19-25-08-153Z.md +1 -1
  63. package/resources/scss/src/apps/portal/learn/ContentComponent.scss +17 -13
  64. package/src/DefaultConfig.mjs +14 -2
  65. package/src/Main.mjs +14 -5
  66. package/src/button/Base.mjs +1 -1
  67. package/src/calendar/view/calendars/List.mjs +1 -1
  68. package/src/component/Base.mjs +11 -11
  69. package/src/component/Chip.mjs +1 -1
  70. package/src/component/Helix.mjs +3 -3
  71. package/src/component/Process.mjs +2 -2
  72. package/src/component/StatusBadge.mjs +2 -2
  73. package/src/component/Timer.mjs +1 -1
  74. package/src/component/Toast.mjs +2 -2
  75. package/src/container/Base.mjs +1 -1
  76. package/src/form/field/CheckBox.mjs +2 -2
  77. package/src/form/field/FileUpload.mjs +14 -14
  78. package/src/form/field/Range.mjs +1 -1
  79. package/src/form/field/Text.mjs +1 -1
  80. package/src/form/field/trigger/Base.mjs +2 -2
  81. package/src/form/field/trigger/SpinUpDown.mjs +2 -2
  82. package/src/grid/View.mjs +1 -1
  83. package/src/main/DeltaUpdates.mjs +382 -0
  84. package/src/main/DomAccess.mjs +13 -36
  85. package/src/main/render/DomApiRenderer.mjs +138 -0
  86. package/src/main/render/StringBasedRenderer.mjs +58 -0
  87. package/src/table/View.mjs +1 -1
  88. package/src/table/plugin/CellEditing.mjs +1 -1
  89. package/src/tree/Accordion.mjs +11 -11
  90. package/src/tree/List.mjs +12 -5
  91. package/src/vdom/Helper.mjs +174 -292
  92. package/src/vdom/VNode.mjs +47 -11
  93. package/src/vdom/domConstants.mjs +65 -0
  94. package/src/vdom/util/DomApiVnodeCreator.mjs +51 -0
  95. package/src/vdom/util/StringFromVnode.mjs +123 -0
  96. package/src/worker/mixin/RemoteMethodAccess.mjs +13 -1
  97. package/resources/data/deck/learnneo/pages/Welcome.md +0 -64
  98. package/src/main/mixin/DeltaUpdates.mjs +0 -352
package/ServiceWorker.mjs CHANGED
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='9.15.0'
23
+ * @member {String} version='10.0.0-alpha.1'
24
24
  */
25
- version: '9.15.0'
25
+ version: '10.0.0-alpha.1'
26
26
  }
27
27
 
28
28
  /**
@@ -42,13 +42,13 @@ class Viewport extends BaseViewport {
42
42
  iconCls: 'fa fa-home',
43
43
  text : 'Tab 1'
44
44
  },
45
- vdom: {innerHTML: 'Welcome to your new Neo App.'}
45
+ vdom: {html: 'Welcome to your new Neo App.'}
46
46
  }, {
47
47
  header: {
48
48
  iconCls: 'fa fa-play-circle',
49
49
  text : 'Tab 2'
50
50
  },
51
- vdom: {innerHTML: 'Have fun creating something awesome!'}
51
+ vdom: {html: 'Have fun creating something awesome!'}
52
52
  }]
53
53
  }]
54
54
  }
@@ -29,7 +29,7 @@ class Viewport extends BaseViewport {
29
29
 
30
30
  items: [{
31
31
  flex: 'none',
32
- vdom: {tag: 'h1', innerHTML: 'Nested Forms'}
32
+ vdom: {tag: 'h1', html: 'Nested Forms'}
33
33
  }, {
34
34
  module : SideNavList,
35
35
  reference: 'side-nav',
@@ -16,7 +16,7 @@
16
16
  "@type": "Organization",
17
17
  "name": "Neo.mjs"
18
18
  },
19
- "datePublished": "2025-06-13",
19
+ "datePublished": "2025-06-17",
20
20
  "publisher": {
21
21
  "@type": "Organization",
22
22
  "name": "Neo.mjs"
@@ -163,7 +163,7 @@ class List extends BaseList {
163
163
  createSourceLink(record) {
164
164
  let vdom = {
165
165
  tag : 'a',
166
- cls : ['fab fa-github', 'neo-github-image'],
166
+ cls : ['fab', 'fa-github', 'neo-github-image'],
167
167
  href : record.sourceUrl,
168
168
  target: '_blank'
169
169
  };
@@ -107,7 +107,7 @@ class FooterContainer extends Container {
107
107
  }, {
108
108
  module: Component,
109
109
  cls : ['neo-version'],
110
- html : 'v9.15.0'
110
+ html : 'v10.0.0-alpha.1'
111
111
  }]
112
112
  }],
113
113
  /**
@@ -5,8 +5,8 @@ import {marked} from '../../../../node_modules/marked/lib/marked.esm.js';
5
5
  const
6
6
  labCloseRegex = /<!--\s*\/lab\s*-->/g,
7
7
  labOpenRegex = /<!--\s*lab\s*-->/g,
8
- preJsRegex = /<pre\s+data-javascript\s*>([\s\S]*?)<\/pre>/g,
9
- preNeoRegex = /<pre\s+data-neo\s*>([\s\S]*?)<\/pre>/g,
8
+ preLivePreviewRegex = /<pre\s+data-code-livepreview\s*>([\s\S]*?)<\/pre>/g,
9
+ preJsRegex = /<pre\s+data-code-readonly\s*>([\s\S]*?)<\/pre>/g,
10
10
  preNeoComponentRegex = /<pre\s+data-neo-component\s*>([\s\S]*?)<\/pre>/g;
11
11
 
12
12
  /**
@@ -185,7 +185,7 @@ class ContentComponent extends Component {
185
185
  // Replace <pre data-neo></pre> with <div id='neo-preview-1'/>
186
186
  // and create a map keyed by ID, whose value is the javascript
187
187
  // from the <pre>
188
- modifiedHtml = me.extractNeoContent(modifiedHtml, neoDivs);
188
+ modifiedHtml = me.extractLivePreviewContent(modifiedHtml, neoDivs);
189
189
 
190
190
  html = marked.parse(modifiedHtml);
191
191
  html = me.insertLabDivs(html);
@@ -248,11 +248,11 @@ class ContentComponent extends Component {
248
248
  * @param {Object} map
249
249
  * @returns {String}
250
250
  */
251
- extractNeoContent(htmlString, map) {
251
+ extractLivePreviewContent(htmlString, map) {
252
252
  // 1. Replace <pre data-neo> with <div id='neo-pre-live-preview-x'/>
253
253
  // and update map with key/value pairs, where the key is the ID and the value is the <pre> contents.
254
254
  // Replace the content with tokens, and create a promise to update the corresponding content
255
- return htmlString.replace(preNeoRegex, (match, preContent) => {
255
+ return htmlString.replace(preLivePreviewRegex, (match, preContent) => {
256
256
  const key = Neo.core.IdGenerator.getId('pre-live-preview');
257
257
  map[key] = preContent;
258
258
  return `<div id="${key}"></div>`
@@ -60,7 +60,7 @@ class HomeContainer extends Container {
60
60
  cls : ['neo-examples-tab-component'],
61
61
  header: {iconCls: 'fa fa-user-ninja', text: 'Your Feed'},
62
62
  style : {padding: '20px'},
63
- vdom : {innerHTML: 'todo'}
63
+ vdom : {html: 'todo'}
64
64
  }, {
65
65
  module: PreviewList,
66
66
  header: {iconCls: 'fa fa-globe-europe', text: 'Global Feed'}
@@ -17,14 +17,14 @@ class CardAdministration extends Container {
17
17
  username_: '',
18
18
 
19
19
  vdom: {
20
- tag: 'h1',
21
- innerHTML: 'Access Granted.'
20
+ tag : 'h1',
21
+ html: 'Access Granted.'
22
22
  }
23
23
  }
24
24
 
25
25
 
26
26
  afterSetUsername(value, oldValue) {
27
- this.vdom.innerHTML = `Access Granted to ${this.username}.`;
27
+ this.vdom.html = `Access Granted to ${this.username}.`;
28
28
  }
29
29
  }
30
30
 
@@ -15,8 +15,8 @@ class CardAdministrationDenied extends Container {
15
15
  baseCls: ['route_card_simple_page','neo-container'],
16
16
 
17
17
  vdom: {
18
- tag: 'h1',
19
- innerHTML: 'Access Denied.'
18
+ tag : 'h1',
19
+ html: 'Access Denied.'
20
20
  }
21
21
  }
22
22
  }
@@ -16,8 +16,8 @@ class CardContact extends Container {
16
16
 
17
17
  items: [
18
18
  { cls : ['route_card_simple_page'], vdom: { cn: [
19
- {tag: 'h1',innerHTML: 'Contact' },
20
- {tag: 'a', href: 'https://github.com/neomjs/neo', target: '_blank', innerHTML: 'please visit https://github.com/neomjs/neo'}
19
+ {tag: 'h1', html: 'Contact' },
20
+ {tag: 'a', href: 'https://github.com/neomjs/neo', target: '_blank', html: 'please visit https://github.com/neomjs/neo'}
21
21
  ] } }
22
22
  ]
23
23
  }
@@ -15,8 +15,8 @@ class CardHome extends Container {
15
15
  baseCls: ['route_card_simple_page','neo-container'],
16
16
 
17
17
  vdom: {
18
- tag: 'h1',
19
- innerHTML: 'This is the landing page of the example.'
18
+ tag : 'h1',
19
+ html: 'This is the landing page of the example.'
20
20
  }
21
21
  }
22
22
  }
@@ -15,8 +15,8 @@ class CardSection1 extends Container {
15
15
  baseCls: ['route_card_simple_page','neo-container'],
16
16
 
17
17
  vdom: {
18
- tag: 'h1',
19
- innerHTML: 'This is section 1 of the example.'
18
+ tag : 'h1',
19
+ html: 'This is section 1 of the example.'
20
20
  }
21
21
  }
22
22
  }
@@ -15,8 +15,8 @@ class CardSection2 extends Container {
15
15
  baseCls: ['route_card_simple_page','neo-container'],
16
16
 
17
17
  vdom: {
18
- tag: 'h1',
19
- innerHTML: 'This is section 2 of the example.'
18
+ tag : 'h1',
19
+ html: 'This is section 2 of the example.'
20
20
  }
21
21
 
22
22
  }
@@ -234,13 +234,13 @@ if (programOpts.info) {
234
234
  " iconCls: 'fa fa-home',",
235
235
  " text : 'Tab 1'",
236
236
  " },",
237
- " vdom: {innerHTML: 'Welcome to your new Neo App.'}",
237
+ " vdom: {html: 'Welcome to your new Neo App.'}",
238
238
  " }, {",
239
239
  " header: {",
240
240
  " iconCls: 'fa fa-play-circle',",
241
241
  " text : 'Tab 2'",
242
242
  " },",
243
- " vdom: {innerHTML: 'Have fun creating something awesome!'}",
243
+ " vdom: {html: 'Have fun creating something awesome!'}",
244
244
  " }]",
245
245
  " }]",
246
246
  " }",
@@ -64,12 +64,12 @@ class HeaderComponent extends Component {
64
64
  }
65
65
  }
66
66
 
67
- me.vdom.cn[0].innerHTML = singleton ? (className + ' → Singleton') : className;
67
+ me.vdom.cn[0].html = singleton ? (className + ' → Singleton') : className;
68
68
 
69
69
  if (record.description) {
70
70
  me.vdom.cn.push({
71
- cls : ['neo-docs-header-description'],
72
- innerHTML: record.description
71
+ cls : ['neo-docs-header-description'],
72
+ html: record.description
73
73
  })
74
74
  }
75
75
 
@@ -127,8 +127,8 @@ class MembersList extends Base {
127
127
  vdom.cn.push({
128
128
  // scrolling placeholder
129
129
  }, {
130
- cls : ['neo-docs-memberlist-group-header'],
131
- innerHTML: 'Configs',
130
+ cls : ['neo-docs-memberlist-group-header'],
131
+ html: 'Configs',
132
132
  'data-list-header': 'Configs'
133
133
  })
134
134
  }
@@ -152,9 +152,9 @@ class MembersList extends Base {
152
152
  vdom.cn.push({
153
153
  // scrolling placeholder
154
154
  }, {
155
- cls : ['neo-docs-memberlist-group-header'],
156
- innerHTML: 'Events',
157
- style : {zIndex: 3},
155
+ cls : ['neo-docs-memberlist-group-header'],
156
+ html : 'Events',
157
+ style: {zIndex: 3},
158
158
  'data-list-header': 'Events'
159
159
  })
160
160
  }
@@ -182,9 +182,9 @@ class MembersList extends Base {
182
182
  vdom.cn.push({
183
183
  // scrolling placeholder
184
184
  }, {
185
- cls : ['neo-docs-memberlist-group-header'],
186
- innerHTML: 'Methods',
187
- style : {zIndex: 2},
185
+ cls : ['neo-docs-memberlist-group-header'],
186
+ html : 'Methods',
187
+ style: {zIndex: 2},
188
188
  'data-list-header': 'Methods'
189
189
  })
190
190
  }
@@ -281,26 +281,26 @@ class MembersList extends Base {
281
281
  cn : [{
282
282
  cls: ['neo-list-item-header-container'],
283
283
  cn : [{
284
- cls : ['neo-list-item-header'],
285
- innerHTML: headerText
284
+ cls : ['neo-list-item-header'],
285
+ html: headerText
286
286
  }, {
287
287
  style: {
288
288
  flex: 1
289
289
  }
290
290
  }, {
291
- cls : ['neo-list-item-header'],
292
- innerHTML: itemAttributes.join(', ')
291
+ cls : ['neo-list-item-header'],
292
+ html: itemAttributes.join(', ')
293
293
  }]
294
294
  }, {
295
295
  cls: 'neo-docs-view-source-link-container',
296
296
  cn :[{
297
- tag : 'a',
298
- cls : ['neo-docs-view-source-link'],
299
- href : `#/viewSource/${item.neoClassName}/line/${item.meta.lineno}`,
300
- innerHTML: `Source: ${path}/${item.meta.filename} (Line ${item.meta.lineno})`
297
+ tag : 'a',
298
+ cls : ['neo-docs-view-source-link'],
299
+ href: `#/viewSource/${item.neoClassName}/line/${item.meta.lineno}`,
300
+ html: `Source: ${path}/${item.meta.filename} (Line ${item.meta.lineno})`
301
301
  }]
302
302
  }, {
303
- innerHTML: item.description
303
+ html: item.description
304
304
  }]
305
305
  };
306
306
 
@@ -325,7 +325,7 @@ class MembersList extends Base {
325
325
 
326
326
  if (item.returns?.[0].type && item.kind !== 'event') {
327
327
  itemConfig.cn.push({
328
- innerHTML: 'Returns {' + MembersList.escapeHtml(item.returns[0].type.names.join('|') + '} ') + (item.returns[0].description || '')
328
+ html: 'Returns {' + MembersList.escapeHtml(item.returns[0].type.names.join('|') + '} ') + (item.returns[0].description || '')
329
329
  })
330
330
  }
331
331
 
@@ -365,37 +365,37 @@ class MembersList extends Base {
365
365
  cn : [{
366
366
  tag: 'thead',
367
367
  cn : [{
368
- tag : 'th',
369
- innerHTML: 'Name'
368
+ tag : 'th',
369
+ html: 'Name'
370
370
  }, {
371
- tag : 'th',
372
- innerHTML: 'Type'
371
+ tag : 'th',
372
+ html: 'Type'
373
373
  }, {
374
- tag : 'th',
375
- innerHTML: 'Description'
374
+ tag : 'th',
375
+ html: 'Description'
376
376
  }]
377
377
  }]
378
378
  };
379
379
 
380
380
  if (hasDefaultValues) {
381
381
  paramTable.cn[0].cn.splice(2, 0, {
382
- tag : 'th',
383
- innerHTML: 'Default'
382
+ tag : 'th',
383
+ html: 'Default'
384
384
  })
385
385
  }
386
386
 
387
387
  if (hasOptionalParams) {
388
388
  paramTable.cn[0].cn.splice(2, 0, {
389
- tag : 'th',
390
- innerHTML: 'Optional'
389
+ tag : 'th',
390
+ html: 'Optional'
391
391
  })
392
392
  }
393
393
 
394
394
  params.forEach(param => {
395
395
  if (param.name.indexOf('.') < 0) { // ignore nested params
396
396
  description = {
397
- tag : 'td',
398
- innerHTML: param.description
397
+ tag : 'td',
398
+ html: param.description
399
399
  };
400
400
  nestedParams = [];
401
401
 
@@ -414,36 +414,33 @@ class MembersList extends Base {
414
414
  if (nestedParams.length > 0) {
415
415
  description = {
416
416
  tag: 'td',
417
- cn : [{
418
- innerHTML: description.innerHTML
419
- },
420
- MembersList.createParametersTable(nestedParams)]
417
+ cn : [
418
+ {html: description.html},
419
+ MembersList.createParametersTable(nestedParams)
420
+ ]
421
421
  }
422
422
  }
423
423
 
424
424
  paramTable.cn.push({
425
425
  tag: 'tr',
426
- cn : [{
427
- tag : 'td',
428
- innerHTML: param.name
429
- }, {
430
- tag : 'td',
431
- innerHTML: param.type ? MembersList.escapeHtml(param.type.names.join(' | ')) : ''
432
- },
433
- description]
426
+ cn : [
427
+ {tag: 'td', html: param.name},
428
+ {tag: 'td', html: param.type ? MembersList.escapeHtml(param.type.names.join(' | ')) : ''},
429
+ description
430
+ ]
434
431
  });
435
432
 
436
433
  if (hasDefaultValues) {
437
434
  paramTable.cn[paramTable.cn.length - 1].cn.splice(2, 0, {
438
- tag : 'td',
439
- innerHTML: param.defaultvalue === undefined ? '' : (param.defaultvalue + '')
435
+ tag : 'td',
436
+ html: param.defaultvalue === undefined ? '' : (param.defaultvalue + '')
440
437
  })
441
438
  }
442
439
 
443
440
  if (hasOptionalParams) {
444
441
  paramTable.cn[paramTable.cn.length - 1].cn.splice(2, 0, {
445
- tag : 'td',
446
- innerHTML: param.optional
442
+ tag : 'td',
443
+ html: param.optional
447
444
  })
448
445
  }
449
446
  }
@@ -131,7 +131,7 @@ class SourceViewComponent extends Component {
131
131
  let me = this,
132
132
  node = me.vdom.cn[0]; // pre tag
133
133
 
134
- node.cn[0].innerHTML = data; // code tag
134
+ node.cn[0].html = data; // code tag
135
135
  me.update();
136
136
 
137
137
  me.mounted && me.syntaxHighlight()
@@ -66,7 +66,7 @@ class TutorialComponent extends Component {
66
66
  if (me.fileType === 'json') {
67
67
  me.vdom.cn = data
68
68
  } else {
69
- me.vdom.innerHTML = data
69
+ me.vdom.html = data
70
70
  }
71
71
 
72
72
  me.update();
@@ -112,24 +112,24 @@ class MainContainer extends Viewport {
112
112
 
113
113
  itemTpl: data => {
114
114
  return [
115
- {cls: 'import', innerHTML: 'import Toast from \'../../../../node_modules/neo.mjs/src/component/Toast.mjs\';'},
116
- {innerHTML: 'Neo.toast({'},
115
+ {cls: 'import', html: 'import Toast from \'../../../../node_modules/neo.mjs/src/component/Toast.mjs\';'},
116
+ {html: 'Neo.toast({'},
117
117
  {cls: 'tab', cn: [
118
- {cls: 'grey', innerHTML: '/* mandatory */'},
119
- {innerHTML: `appName: '${data.appName}',`},
120
- {innerHTML: `msg: '${data.msg}',`},
121
- {innerHTML: `windowId: '${data.windowId}',`},
122
- {innerHTML: '/* optional */'},
123
- {innerHTML: `title: '${data.title}',`, removeDom: !data.title},
124
- {innerHTML: `iconCls: '${data.iconCls}',`, removeDom: !data.iconCls},
125
- {innerHTML: `closable: ${data.closable},`, removeDom: !data.closable},
126
- {innerHTML: `position: '${data.position}',`, removeDom: !data.position},
127
- {innerHTML: `slideDirection: '${data.slideDirection}',`, removeDom: !data.slideDirection},
128
- {innerHTML: `maxWidth: ${data.maxWidth},`, removeDom: !data.maxWidth},
129
- {innerHTML: `minHeight: ${data.minHeight},`, removeDom: !data.minHeight},
130
- {innerHTML: `ui: '${data.ui}'`, removeDom: !data.ui},
118
+ {cls: 'grey', html: '/* mandatory */'},
119
+ {html: `appName: '${data.appName}',`},
120
+ {html: `msg: '${data.msg}',`},
121
+ {html: `windowId: '${data.windowId}',`},
122
+ {html: '/* optional */'},
123
+ {html: `title: '${data.title}',`, removeDom: !data.title},
124
+ {html: `iconCls: '${data.iconCls}',`, removeDom: !data.iconCls},
125
+ {html: `closable: ${data.closable},`, removeDom: !data.closable},
126
+ {html: `position: '${data.position}',`, removeDom: !data.position},
127
+ {html: `slideDirection: '${data.slideDirection}',`, removeDom: !data.slideDirection},
128
+ {html: `maxWidth: ${data.maxWidth},`, removeDom: !data.maxWidth},
129
+ {html: `minHeight: ${data.minHeight},`, removeDom: !data.minHeight},
130
+ {html: `ui: '${data.ui}'`, removeDom: !data.ui},
131
131
  ]},
132
- {innerHTML: '})'}
132
+ {html: '})'}
133
133
  ]
134
134
  }
135
135
  }]
@@ -27,10 +27,10 @@ class MarkerDialog extends DialogBase {
27
27
  }],
28
28
 
29
29
  itemTpl: data => [
30
- {cls: ['detail-depth'], innerHTML: `Depth: ${data.depth}`},
31
- {cls: ['detail-date'], innerHTML: `${data.visualDate}`},
32
- {cls: ['detail-quality'], innerHTML: `Quality: ${data.quality}`},
33
- {cls: ['detail-quality'], innerHTML: `Size: ${data.size}`}
30
+ {cls: ['detail-depth'], html: `Depth: ${data.depth}`},
31
+ {cls: ['detail-date'], html: `${data.visualDate}`},
32
+ {cls: ['detail-quality'], html: `Quality: ${data.quality}`},
33
+ {cls: ['detail-quality'], html: `Size: ${data.size}`}
34
34
  ]
35
35
  }
36
36
 
@@ -249,7 +249,7 @@ class MainContainer extends Container {
249
249
  text : 'Date'
250
250
  },
251
251
  vdom: {
252
- innerHTML: 'todo'
252
+ html: 'todo'
253
253
  }
254
254
  }]
255
255
  }
@@ -113,7 +113,7 @@ class MainContainer extends Panel {
113
113
  items: [{
114
114
  ntype: 'component',
115
115
  vdom : {
116
- innerHTML: 'item 1'
116
+ html: 'item 1'
117
117
  }
118
118
  }]
119
119
  }, {
@@ -157,7 +157,7 @@ class MainContainer extends Panel {
157
157
  items: [{
158
158
  ntype: 'component',
159
159
  vdom : {
160
- innerHTML: 'item 2'
160
+ html: 'item 2'
161
161
  }
162
162
  }]
163
163
  }]
@@ -179,13 +179,13 @@ class MainContainer extends ConfigurationViewport {
179
179
 
180
180
  items: [{
181
181
  header: {iconCls: 'fa fa-home', text: 'Tab 1', flag: 'tab1',},
182
- vdom : {innerHTML: 'Tab 1 Content'}
182
+ vdom : {html: 'Tab 1 Content'}
183
183
  }, {
184
184
  header: {iconCls: 'fa fa-play-circle', text: 'Tab 2'},
185
- vdom : {innerHTML: 'Tab 2 Content'}
185
+ vdom : {html: 'Tab 2 Content'}
186
186
  }, {
187
187
  header: {iconCls: 'fa fa-user', text: 'Tab 3', badgeText: 'hello'},
188
- vdom : {innerHTML: 'Tab 3 Content'}
188
+ vdom : {html: 'Tab 3 Content'}
189
189
  }],
190
190
 
191
191
  listeners: {
@@ -152,7 +152,7 @@ class MainContainer extends TabContainer {
152
152
  text : 'Tab 2'
153
153
  },
154
154
  vdom: {
155
- innerHTML: 'Test 2'
155
+ html: 'Test 2'
156
156
  }
157
157
  }, {
158
158
  header: {
@@ -160,7 +160,7 @@ class MainContainer extends TabContainer {
160
160
  text : 'Tab 3'
161
161
  },
162
162
  vdom: {
163
- innerHTML: 'Test 3'
163
+ html: 'Test 3'
164
164
  }
165
165
  }]
166
166
  }
@@ -37,7 +37,7 @@ class MainContainer2 extends Container {
37
37
  text : 'Tab 1'
38
38
  },
39
39
  vdom: {
40
- innerHTML: 'Tab Content 1'
40
+ html: 'Tab Content 1'
41
41
  }
42
42
  }, {
43
43
  header: {
@@ -45,7 +45,7 @@ class MainContainer2 extends Container {
45
45
  text : 'Tab 2'
46
46
  },
47
47
  vdom: {
48
- innerHTML: 'Tab Content 2'
48
+ html: 'Tab Content 2'
49
49
  }
50
50
  }, {
51
51
  ntype : 'container',
@@ -133,7 +133,7 @@ class MainContainer2 extends Container {
133
133
  text : 'Dynamic Tab ' + this.tabCount
134
134
  },
135
135
  vdom: {
136
- innerHTML: 'Dynamic Tab ' + this.tabCount
136
+ html: 'Dynamic Tab ' + this.tabCount
137
137
  }
138
138
  });
139
139
  }
@@ -78,7 +78,7 @@ class MainContainer extends Viewport {
78
78
  text : 'Tab 2'
79
79
  },
80
80
  vdom: {
81
- innerHTML: 'Test 2'
81
+ html: 'Test 2'
82
82
  }
83
83
  }, {
84
84
  header: {
@@ -86,7 +86,7 @@ class MainContainer extends Viewport {
86
86
  text : 'Tab 3'
87
87
  },
88
88
  vdom: {
89
- innerHTML: 'Test 3'
89
+ html: 'Test 3'
90
90
  }
91
91
  }]
92
92
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name" : "neo.mjs",
3
- "version" : "9.15.0",
3
+ "version" : "10.0.0-alpha.1",
4
4
  "description" : "The webworkers driven UI framework",
5
5
  "type" : "module",
6
6
  "repository" : {
@@ -63,10 +63,10 @@
63
63
  "monaco-editor" : "0.50.0",
64
64
  "neo-jsdoc" : "1.0.1",
65
65
  "neo-jsdoc-x" : "1.0.5",
66
- "postcss" : "^8.5.5",
66
+ "postcss" : "^8.5.6",
67
67
  "sass" : "^1.89.2",
68
68
  "siesta-lite" : "5.5.2",
69
- "terser" : "^5.42.0",
69
+ "terser" : "^5.43.0",
70
70
  "url" : "^0.11.4",
71
71
  "webpack" : "^5.99.9",
72
72
  "webpack-cli" : "^6.0.1",