neo.mjs 10.0.0-alpha.5 → 10.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 (188) hide show
  1. package/ServiceWorker.mjs +2 -2
  2. package/apps/colors/view/GridContainer.mjs +1 -1
  3. package/apps/covid/view/AttributionComponent.mjs +1 -1
  4. package/apps/covid/view/HeaderContainer.mjs +6 -6
  5. package/apps/covid/view/MainContainerController.mjs +5 -5
  6. package/apps/covid/view/TableContainerController.mjs +1 -1
  7. package/apps/covid/view/country/Gallery.mjs +13 -13
  8. package/apps/covid/view/country/Helix.mjs +13 -13
  9. package/apps/covid/view/country/HistoricalDataTable.mjs +1 -1
  10. package/apps/email/view/Viewport.mjs +2 -2
  11. package/apps/form/view/SideNavList.mjs +1 -1
  12. package/apps/portal/index.html +1 -1
  13. package/apps/portal/resources/data/examples_devmode.json +26 -27
  14. package/apps/portal/resources/data/examples_dist_dev.json +26 -27
  15. package/apps/portal/resources/data/examples_dist_esm.json +25 -26
  16. package/apps/portal/resources/data/examples_dist_prod.json +26 -27
  17. package/apps/portal/view/HeaderToolbar.mjs +3 -3
  18. package/apps/portal/view/about/Container.mjs +2 -2
  19. package/apps/portal/view/about/MemberContainer.mjs +3 -3
  20. package/apps/portal/view/blog/List.mjs +7 -7
  21. package/apps/portal/view/examples/List.mjs +4 -4
  22. package/apps/portal/view/home/ContentBox.mjs +2 -2
  23. package/apps/portal/view/home/FeatureSection.mjs +3 -3
  24. package/apps/portal/view/home/FooterContainer.mjs +7 -7
  25. package/apps/portal/view/home/parts/AfterMath.mjs +3 -3
  26. package/apps/portal/view/home/parts/MainNeo.mjs +3 -3
  27. package/apps/portal/view/home/parts/References.mjs +6 -6
  28. package/apps/portal/view/learn/ContentComponent.mjs +102 -111
  29. package/apps/portal/view/learn/PageSectionsContainer.mjs +1 -1
  30. package/apps/portal/view/learn/PageSectionsList.mjs +2 -2
  31. package/apps/portal/view/services/Component.mjs +16 -16
  32. package/apps/realworld/view/FooterComponent.mjs +1 -1
  33. package/apps/realworld/view/HeaderComponent.mjs +8 -8
  34. package/apps/realworld/view/HomeComponent.mjs +6 -6
  35. package/apps/realworld/view/article/CommentComponent.mjs +4 -4
  36. package/apps/realworld/view/article/Component.mjs +14 -14
  37. package/apps/realworld/view/article/CreateCommentComponent.mjs +3 -3
  38. package/apps/realworld/view/article/CreateComponent.mjs +3 -3
  39. package/apps/realworld/view/article/PreviewComponent.mjs +1 -1
  40. package/apps/realworld/view/article/TagListComponent.mjs +2 -2
  41. package/apps/realworld/view/user/ProfileComponent.mjs +8 -8
  42. package/apps/realworld/view/user/SettingsComponent.mjs +4 -4
  43. package/apps/realworld/view/user/SignUpComponent.mjs +4 -4
  44. package/apps/realworld2/view/FooterComponent.mjs +1 -1
  45. package/apps/realworld2/view/HomeContainer.mjs +3 -3
  46. package/apps/realworld2/view/article/DetailsContainer.mjs +1 -1
  47. package/apps/realworld2/view/article/PreviewComponent.mjs +7 -7
  48. package/apps/realworld2/view/article/TagListComponent.mjs +2 -2
  49. package/apps/realworld2/view/user/ProfileContainer.mjs +1 -1
  50. package/apps/route/view/center/CardAdministration.mjs +2 -2
  51. package/apps/route/view/center/CardAdministrationDenied.mjs +1 -1
  52. package/apps/route/view/center/CardContact.mjs +2 -2
  53. package/apps/route/view/center/CardHome.mjs +1 -1
  54. package/apps/route/view/center/CardSection1.mjs +1 -1
  55. package/apps/route/view/center/CardSection2.mjs +1 -1
  56. package/apps/sharedcovid/view/AttributionComponent.mjs +1 -1
  57. package/apps/sharedcovid/view/HeaderContainer.mjs +6 -6
  58. package/apps/sharedcovid/view/MainContainerController.mjs +5 -5
  59. package/apps/sharedcovid/view/TableContainerController.mjs +1 -1
  60. package/apps/sharedcovid/view/country/Gallery.mjs +13 -13
  61. package/apps/sharedcovid/view/country/Helix.mjs +13 -13
  62. package/apps/sharedcovid/view/country/HistoricalDataTable.mjs +1 -1
  63. package/apps/shareddialog/childapps/shareddialog2/view/MainContainer.mjs +1 -1
  64. package/apps/shareddialog/view/MainContainer.mjs +1 -1
  65. package/buildScripts/createApp.mjs +2 -2
  66. package/examples/table/cellEditing/MainContainer.mjs +1 -1
  67. package/examples/table/container/MainContainer.mjs +3 -3
  68. package/examples/table/nestedRecordFields/Viewport.mjs +6 -6
  69. package/examples/tableFiltering/MainContainer.mjs +1 -1
  70. package/examples/tablePerformance/MainContainer.mjs +1 -1
  71. package/examples/tablePerformance/MainContainer2.mjs +1 -1
  72. package/examples/tablePerformance/MainContainer3.mjs +2 -2
  73. package/examples/tableStore/MainContainer.mjs +2 -2
  74. package/learn/Glossary.md +261 -0
  75. package/learn/UsingTheseTopics.md +2 -2
  76. package/learn/benefits/ConfigSystem.md +538 -28
  77. package/learn/benefits/Effort.md +47 -2
  78. package/learn/benefits/Features.md +50 -32
  79. package/learn/benefits/FormsEngine.md +68 -38
  80. package/learn/benefits/MultiWindow.md +33 -7
  81. package/learn/benefits/OffTheMainThread.md +2 -2
  82. package/learn/benefits/Quick.md +45 -12
  83. package/learn/benefits/RPCLayer.md +75 -0
  84. package/learn/benefits/Speed.md +16 -11
  85. package/learn/gettingstarted/ComponentModels.md +4 -4
  86. package/learn/gettingstarted/Config.md +6 -6
  87. package/learn/gettingstarted/DescribingTheUI.md +4 -4
  88. package/learn/gettingstarted/Events.md +6 -6
  89. package/learn/gettingstarted/Extending.md +4 -4
  90. package/learn/gettingstarted/References.md +6 -6
  91. package/learn/gettingstarted/Workspaces.md +6 -6
  92. package/learn/guides/ApplicationBootstrap.md +26 -26
  93. package/learn/guides/ComponentsAndContainers.md +12 -12
  94. package/learn/guides/ConfigSystemDeepDive.md +280 -0
  95. package/learn/guides/CustomComponents.md +2 -2
  96. package/learn/guides/DeclarativeComponentTreesVsImperativeVdom.md +17 -17
  97. package/learn/guides/InstanceLifecycle.md +295 -1
  98. package/learn/guides/MainThreadAddons.md +475 -0
  99. package/learn/guides/PortalApp.md +2 -2
  100. package/learn/guides/StateProviders.md +12 -12
  101. package/learn/guides/WorkingWithVDom.md +14 -14
  102. package/learn/guides/events/CustomEvents.md +16 -16
  103. package/learn/guides/events/DomEvents.md +12 -12
  104. package/learn/javascript/ClassFeatures.md +3 -2
  105. package/learn/javascript/Classes.md +8 -8
  106. package/learn/javascript/NewNode.md +4 -4
  107. package/learn/javascript/Overrides.md +8 -8
  108. package/learn/javascript/Super.md +10 -8
  109. package/learn/tree.json +52 -51
  110. package/learn/tutorials/Earthquakes.md +54 -57
  111. package/learn/tutorials/TodoList.md +4 -4
  112. package/package.json +2 -2
  113. package/resources/scss/src/apps/portal/learn/ContentComponent.scss +12 -0
  114. package/resources/scss/src/table/{View.scss → Body.scss} +1 -1
  115. package/resources/scss/src/table/plugin/CellEditing.scss +1 -1
  116. package/resources/scss/theme-dark/table/{View.scss → Body.scss} +1 -1
  117. package/resources/scss/theme-light/table/{View.scss → Body.scss} +1 -1
  118. package/resources/scss/theme-neo-light/Global.scss +1 -2
  119. package/resources/scss/theme-neo-light/table/{View.scss → Body.scss} +1 -1
  120. package/src/DefaultConfig.mjs +2 -2
  121. package/src/Main.mjs +8 -7
  122. package/src/Neo.mjs +16 -2
  123. package/src/button/Base.mjs +2 -2
  124. package/src/calendar/view/SettingsContainer.mjs +2 -2
  125. package/src/calendar/view/YearComponent.mjs +9 -9
  126. package/src/calendar/view/calendars/ColorsList.mjs +1 -1
  127. package/src/calendar/view/calendars/List.mjs +1 -1
  128. package/src/calendar/view/month/Component.mjs +15 -15
  129. package/src/calendar/view/week/Component.mjs +12 -12
  130. package/src/calendar/view/week/EventDragZone.mjs +4 -4
  131. package/src/calendar/view/week/TimeAxisComponent.mjs +3 -3
  132. package/src/component/Base.mjs +17 -2
  133. package/src/component/Carousel.mjs +2 -2
  134. package/src/component/Chip.mjs +3 -3
  135. package/src/component/Circle.mjs +2 -2
  136. package/src/component/DateSelector.mjs +8 -8
  137. package/src/component/Helix.mjs +1 -1
  138. package/src/component/Label.mjs +3 -18
  139. package/src/component/Legend.mjs +3 -3
  140. package/src/component/MagicMoveText.mjs +6 -14
  141. package/src/component/Process.mjs +3 -3
  142. package/src/component/Progress.mjs +1 -1
  143. package/src/component/StatusBadge.mjs +2 -2
  144. package/src/component/Timer.mjs +2 -2
  145. package/src/component/Toast.mjs +5 -3
  146. package/src/container/AccordionItem.mjs +2 -2
  147. package/src/container/Base.mjs +1 -1
  148. package/src/core/Base.mjs +77 -14
  149. package/src/core/Util.mjs +14 -2
  150. package/src/date/DayViewComponent.mjs +2 -2
  151. package/src/date/SelectorContainer.mjs +1 -1
  152. package/src/draggable/grid/header/toolbar/SortZone.mjs +21 -21
  153. package/src/draggable/table/header/toolbar/SortZone.mjs +1 -1
  154. package/src/form/field/CheckBox.mjs +4 -4
  155. package/src/form/field/FileUpload.mjs +25 -39
  156. package/src/form/field/Range.mjs +1 -1
  157. package/src/form/field/Text.mjs +3 -3
  158. package/src/form/field/TextArea.mjs +2 -3
  159. package/src/grid/Body.mjs +8 -5
  160. package/src/grid/_export.mjs +1 -1
  161. package/src/list/Color.mjs +2 -2
  162. package/src/main/DeltaUpdates.mjs +157 -98
  163. package/src/main/addon/AmCharts.mjs +61 -84
  164. package/src/main/addon/Base.mjs +161 -42
  165. package/src/main/addon/GoogleMaps.mjs +9 -16
  166. package/src/main/addon/HighlightJS.mjs +2 -13
  167. package/src/main/addon/IntersectionObserver.mjs +21 -21
  168. package/src/main/addon/MonacoEditor.mjs +32 -64
  169. package/src/manager/ClassHierarchy.mjs +114 -0
  170. package/src/menu/List.mjs +1 -1
  171. package/src/plugin/Popover.mjs +2 -2
  172. package/src/sitemap/Component.mjs +1 -1
  173. package/src/table/{View.mjs → Body.mjs} +25 -22
  174. package/src/table/Container.mjs +43 -43
  175. package/src/table/_export.mjs +2 -2
  176. package/src/table/plugin/CellEditing.mjs +19 -19
  177. package/src/tooltip/Base.mjs +1 -6
  178. package/src/tree/Accordion.mjs +3 -3
  179. package/src/vdom/Helper.mjs +19 -22
  180. package/src/worker/App.mjs +1 -2
  181. package/src/worker/Base.mjs +7 -5
  182. package/src/worker/Canvas.mjs +2 -3
  183. package/src/worker/Data.mjs +5 -7
  184. package/src/worker/Task.mjs +2 -3
  185. package/src/worker/VDom.mjs +3 -4
  186. package/src/worker/mixin/RemoteMethodAccess.mjs +5 -2
  187. package/learn/guides/MainThreadAddonExample.md +0 -15
  188. package/learn/guides/MainThreadAddonIntro.md +0 -44
package/ServiceWorker.mjs CHANGED
@@ -20,9 +20,9 @@ class ServiceWorker extends ServiceBase {
20
20
  */
21
21
  singleton: true,
22
22
  /**
23
- * @member {String} version='10.0.0-alpha.5'
23
+ * @member {String} version='10.0.0-beta.2'
24
24
  */
25
- version: '10.0.0-alpha.5'
25
+ version: '10.0.0-beta.2'
26
26
  }
27
27
 
28
28
  /**
@@ -81,7 +81,7 @@ class GridContainer extends BaseGridContainer {
81
81
  * @returns {Object}
82
82
  */
83
83
  colorRenderer({value}) {
84
- return {cls: ['color-' + value], html: ' '}
84
+ return {cls: ['color-' + value], text: ' '}
85
85
  }
86
86
  }
87
87
 
@@ -21,7 +21,7 @@ class AttributionComponent extends Component {
21
21
  */
22
22
  vdom:
23
23
  {style: {margin: '20px'}, cn: [
24
- {tag: 'h2', html: 'Attribution'},
24
+ {tag: 'h2', text: 'Attribution'},
25
25
  {tag: 'ul', cn: [
26
26
  {tag: 'li', html: 'The logos were created by <a target="_blank" href="https://www.driefmeier.com/">Sebastian Driefmeier</a>. Thank you!'},
27
27
  {tag: 'li', html: ['The logos are based on the image from <a target="_blank" href="https://phil.cdc.gov/Details.aspx?pid=23312">CDC Public Health Image Library (PHIL)</a>,</br>',
@@ -55,25 +55,25 @@ class HeaderContainer extends Container {
55
55
  items: [{
56
56
  cls : ['covid-numberbox'],
57
57
  vdom: {cn: [
58
- {cls: ['covid-numberbox-title', 'cases'], html:'Cases'},
58
+ {cls: ['covid-numberbox-title', 'cases'], text:'Cases'},
59
59
  {cls: ['covid-numberbox-number', 'cases']}
60
60
  ]}
61
61
  }, {
62
62
  cls : ['covid-numberbox'],
63
63
  vdom: {cn: [
64
- {cls: ['covid-numberbox-title', 'active'], html:'Active'},
64
+ {cls: ['covid-numberbox-title', 'active'], text:'Active'},
65
65
  {cls: ['covid-numberbox-number', 'active']}
66
66
  ]}
67
67
  }, {
68
68
  cls : ['covid-numberbox'],
69
69
  vdom: {cn: [
70
- {cls: ['covid-numberbox-title', 'recovered'], html:'Recovered'},
70
+ {cls: ['covid-numberbox-title', 'recovered'], text:'Recovered'},
71
71
  {cls: ['covid-numberbox-number', 'recovered']}
72
72
  ]}
73
73
  }, {
74
74
  cls : ['covid-numberbox'],
75
75
  vdom: {cn: [
76
- {cls: ['covid-numberbox-title', 'deaths'], html:'Deaths'},
76
+ {cls: ['covid-numberbox-title', 'deaths'], text:'Deaths'},
77
77
  {cls: ['covid-numberbox-number', 'deaths']}
78
78
  ]}
79
79
  }, {
@@ -89,7 +89,7 @@ class HeaderContainer extends Container {
89
89
  'data-show-count': 'true',
90
90
  'data-size' : 'large',
91
91
  href : 'https://github.com/neomjs/neo',
92
- html : 'Star'
92
+ text : 'Star'
93
93
  }]
94
94
  }
95
95
  }, {
@@ -103,7 +103,7 @@ class HeaderContainer extends Container {
103
103
  'data-icon' : 'octicon-heart',
104
104
  'data-size' : 'large',
105
105
  href : 'https://github.com/sponsors/tobiu',
106
- html : 'Sponsor'
106
+ text : 'Sponsor'
107
107
  }]
108
108
  }
109
109
  }]
@@ -131,10 +131,10 @@ class MainContainerController extends ComponentController {
131
131
 
132
132
  me.summaryData = data;
133
133
 
134
- container.items[0].vdom.cn[1].html = Util.formatNumber({value: data.cases});
135
- container.items[1].vdom.cn[1].html = Util.formatNumber({value: data.active});
136
- container.items[2].vdom.cn[1].html = Util.formatNumber({value: data.recovered});
137
- container.items[3].vdom.cn[1].html = Util.formatNumber({value: data.deaths});
134
+ container.items[0].vdom.cn[1].text = Util.formatNumber({value: data.cases});
135
+ container.items[1].vdom.cn[1].text = Util.formatNumber({value: data.active});
136
+ container.items[2].vdom.cn[1].text = Util.formatNumber({value: data.recovered});
137
+ container.items[3].vdom.cn[1].text = Util.formatNumber({value: data.deaths});
138
138
 
139
139
  container.updateDepth = 2;
140
140
  container.update();
@@ -142,7 +142,7 @@ class MainContainerController extends ComponentController {
142
142
  container = me.getReference('last-update');
143
143
  vdom = container.vdom;
144
144
 
145
- vdom.html = 'Last Update: ' + new Intl.DateTimeFormat('default', {
145
+ vdom.text = 'Last Update: ' + new Intl.DateTimeFormat('default', {
146
146
  hour : 'numeric',
147
147
  minute: 'numeric',
148
148
  second: 'numeric'
@@ -224,7 +224,7 @@ class TableContainerController extends ComponentController {
224
224
 
225
225
  me.loadHistoricalData(record?.countryInfo?.iso2 || 'all');
226
226
 
227
- me.getReference('historical-data-label').html = 'Historical Data (' + (record?.country || 'World') + ')';
227
+ me.getReference('historical-data-label').text = 'Historical Data (' + (record?.country || 'World') + ')';
228
228
  }
229
229
 
230
230
  /**
@@ -45,24 +45,24 @@ class CountryGallery extends Gallery {
45
45
  ]},
46
46
  {tag: 'table', cls: ['neo-content-table'], cn: [
47
47
  {tag: 'tr', cn: [
48
- {tag: 'td', html: 'Cases'},
48
+ {tag: 'td', text: 'Cases'},
49
49
  {tag: 'td', cls: ['neo-align-right']},
50
50
  {tag: 'td', style: {width: '100%'}},
51
- {tag: 'td', html: 'Cases today'},
51
+ {tag: 'td', text: 'Cases today'},
52
52
  {tag: 'td', cls: ['neo-align-right']}
53
53
  ]},
54
54
  {tag: 'tr', cn: [
55
- {tag: 'td', html: 'Deaths'},
55
+ {tag: 'td', text: 'Deaths'},
56
56
  {tag: 'td', cls: ['neo-align-right', 'neo-content-deaths']},
57
57
  {tag: 'td', style: {width: '100%'}},
58
- {tag: 'td', html: 'Deaths today'},
58
+ {tag: 'td', text: 'Deaths today'},
59
59
  {tag: 'td', cls: ['neo-align-right', 'neo-content-deaths']}
60
60
  ]},
61
61
  {tag: 'tr', cn: [
62
- {tag: 'td', html: 'Recovered'},
62
+ {tag: 'td', text: 'Recovered'},
63
63
  {tag: 'td', cls: ['neo-align-right', 'neo-content-recovered']},
64
64
  {tag: 'td', style: {width: '100%'}},
65
- {tag: 'td', html: 'Critical'},
65
+ {tag: 'td', text: 'Critical'},
66
66
  {tag: 'td', cls: ['neo-align-right', 'neo-content-critical']}
67
67
  ]}
68
68
  ]}
@@ -127,15 +127,15 @@ class CountryGallery extends Gallery {
127
127
  firstChild.style.width = me.itemWidth + 'px';
128
128
 
129
129
  firstChild.cn[0].cn[0].src = Util.getCountryFlagUrl(record.country);
130
- firstChild.cn[0].cn[1].html = record.country;
130
+ firstChild.cn[0].cn[1].text = record.country;
131
131
 
132
- table.cn[0].cn[1].html = fN({value: record.cases});
133
- table.cn[1].cn[1].html = fN({value: record.deaths});
134
- table.cn[2].cn[1].html = fN({value: record.recovered});
132
+ table.cn[0].cn[1].text = fN({value: record.cases});
133
+ table.cn[1].cn[1].text = fN({value: record.deaths});
134
+ table.cn[2].cn[1].text = fN({value: record.recovered});
135
135
 
136
- table.cn[0].cn[4].html = fN({value: record.todayCases});
137
- table.cn[1].cn[4].html = fN({value: record.todayDeaths});
138
- table.cn[2].cn[4].html = fN({value: record.critical});
136
+ table.cn[0].cn[4].text = fN({value: record.todayCases});
137
+ table.cn[1].cn[4].text = fN({value: record.todayDeaths});
138
+ table.cn[2].cn[4].text = fN({value: record.critical});
139
139
 
140
140
  return vdomItem;
141
141
  }
@@ -45,24 +45,24 @@ class CountryHelix extends Helix {
45
45
  ]},
46
46
  {tag: 'table', cls: ['neo-content-table'], cn: [
47
47
  {tag: 'tr', cn: [
48
- {tag: 'td', html: 'Cases'},
48
+ {tag: 'td', text: 'Cases'},
49
49
  {tag: 'td', cls: ['neo-align-right']},
50
50
  {tag: 'td', style: {width: '100%'}},
51
- {tag: 'td', html: 'Cases today'},
51
+ {tag: 'td', text: 'Cases today'},
52
52
  {tag: 'td', cls: ['neo-align-right']}
53
53
  ]},
54
54
  {tag: 'tr', cn: [
55
- {tag: 'td', html: 'Deaths'},
55
+ {tag: 'td', text: 'Deaths'},
56
56
  {tag: 'td', cls: ['neo-align-right', 'neo-content-deaths']},
57
57
  {tag: 'td', style: {width: '100%'}},
58
- {tag: 'td', html: 'Deaths today'},
58
+ {tag: 'td', text: 'Deaths today'},
59
59
  {tag: 'td', cls: ['neo-align-right', 'neo-content-deaths']}
60
60
  ]},
61
61
  {tag: 'tr', cn: [
62
- {tag: 'td', html: 'Recovered'},
62
+ {tag: 'td', text: 'Recovered'},
63
63
  {tag: 'td', cls: ['neo-align-right', 'neo-content-recovered']},
64
64
  {tag: 'td', style: {width: '100%'}},
65
- {tag: 'td', html: 'Critical'},
65
+ {tag: 'td', text: 'Critical'},
66
66
  {tag: 'td', cls: ['neo-align-right', 'neo-content-critical']}
67
67
  ]}
68
68
  ]}
@@ -138,15 +138,15 @@ class CountryHelix extends Helix {
138
138
  vdomItem.id = me.getItemVnodeId(record[me.keyProperty]);
139
139
 
140
140
  firstChild.cn[0].cn[0].src = Util.getCountryFlagUrl(record.country);
141
- firstChild.cn[0].cn[1].html = record.country;
141
+ firstChild.cn[0].cn[1].text = record.country;
142
142
 
143
- table.cn[0].cn[1].html = fN({value: record.cases});
144
- table.cn[1].cn[1].html = fN({value: record.deaths});
145
- table.cn[2].cn[1].html = fN({value: record.recovered});
143
+ table.cn[0].cn[1].text = fN({value: record.cases});
144
+ table.cn[1].cn[1].text = fN({value: record.deaths});
145
+ table.cn[2].cn[1].text = fN({value: record.recovered});
146
146
 
147
- table.cn[0].cn[4].html = fN({value: record.todayCases});
148
- table.cn[1].cn[4].html = fN({value: record.todayDeaths});
149
- table.cn[2].cn[4].html = fN({value: record.critical});
147
+ table.cn[0].cn[4].text = fN({value: record.todayCases});
148
+ table.cn[1].cn[4].text = fN({value: record.todayDeaths});
149
+ table.cn[2].cn[4].text = fN({value: record.critical});
150
150
 
151
151
  return vdomItem;
152
152
  }
@@ -38,7 +38,7 @@ class HistoricalDataTable extends Container {
38
38
  renderer : function(data) {
39
39
  return {
40
40
  cls : ['neo-date-column', 'neo-table-cell'],
41
- html: new Intl.DateTimeFormat('default', {
41
+ text: new Intl.DateTimeFormat('default', {
42
42
  day : 'numeric',
43
43
  month: 'numeric',
44
44
  year : 'numeric'
@@ -42,13 +42,13 @@ class Viewport extends BaseViewport {
42
42
  iconCls: 'fa fa-home',
43
43
  text : 'Tab 1'
44
44
  },
45
- vdom: {html: 'Welcome to your new Neo App.'}
45
+ text: '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: {html: 'Have fun creating something awesome!'}
51
+ text: 'Have fun creating something awesome!'
52
52
  }]
53
53
  }]
54
54
  }
@@ -36,7 +36,7 @@ class SideNavList extends List {
36
36
 
37
37
  return record.isHeader ? itemText : [
38
38
  {tag: 'i', cls: this.getIconCls(record)},
39
- {html: itemText}
39
+ {text: itemText}
40
40
  ];
41
41
  }
42
42
 
@@ -16,7 +16,7 @@
16
16
  "@type": "Organization",
17
17
  "name": "Neo.mjs"
18
18
  },
19
- "datePublished": "2025-06-24",
19
+ "datePublished": "2025-06-30",
20
20
  "publisher": {
21
21
  "@type": "Organization",
22
22
  "name": "Neo.mjs"
@@ -1,144 +1,143 @@
1
1
  [{
2
2
  "id" : 25,
3
3
  "environments": ["Desktop", "Mobile"],
4
- "image" : "devmode/liquid-glass.png",
5
- "name" : "Liquid Glass effect",
6
- "sourceUrl" : "https://github.com/neomjs/liquid-glass-demo/blob/main/apps/myapp/view/GlassComponent.mjs",
7
- "url" : "https://neomjs.github.io/pages2/workspace/neo-liquid-glass-demo/apps/myapp/index.html"
8
- }, {
9
- "id" : 24,
10
- "environments": ["Desktop", "Mobile"],
11
4
  "image" : "devmode/bigData.png",
12
5
  "name" : "Buffered Data Grid with 5M cells",
13
6
  "sourceUrl" : "examples/grid/bigData",
14
7
  "url" : "examples/grid/bigData/index.html"
15
8
  }, {
16
- "id" : 23,
9
+ "id" : 24,
17
10
  "image" : "devmode/sharedcovid.png",
18
11
  "name" : "Multi Window Covid App",
19
12
  "sharedWorkers": true,
20
13
  "sourceUrl" : "apps/sharedcovid",
21
14
  "url" : "apps/sharedcovid/index.html#mainview=table"
22
15
  }, {
23
- "id" : 22,
16
+ "id" : 23,
24
17
  "image" : "devmode/calendar-preview.png",
25
18
  "name" : "Calendar",
26
19
  "sourceUrl": "src/calendar",
27
20
  "url" : "examples/calendar/basic/index.html"
28
21
  }, {
29
- "id" : 21,
22
+ "id" : 22,
30
23
  "image" : "devmode/helix.png",
31
24
  "name" : "component.Helix",
32
25
  "sourceUrl": "examples/component/helix",
33
26
  "url" : "examples/component/helix/index.html"
34
27
  }, {
35
- "id" : 20,
28
+ "id" : 21,
36
29
  "image" : "devmode/mwCoronaGallery.png",
37
30
  "name" : "Multi Window Covid Gallery",
38
31
  "sharedWorkers": true,
39
32
  "sourceUrl" : "examples/component/multiWindowCoronaGallery",
40
33
  "url" : "examples/component/multiWindowCoronaGallery/index.html"
41
34
  }, {
42
- "id" : 19,
35
+ "id" : 20,
43
36
  "image" : "devmode/offscreenCanvas.png",
44
37
  "name" : "OffscreenCanvas",
45
38
  "sourceUrl": "https://github.com/neomjs/offscreen-canvas/",
46
39
  "url" : "https://neomjs.github.io/pages2/workspace/neo-offscreen-canvas-demo/apps/myapp/index.html"
47
40
  }, {
48
- "id" : 18,
41
+ "id" : 19,
49
42
  "image" : "devmode/sharedOffscreenCanvas.png",
50
43
  "name" : "Multi-Window OffscreenCanvas",
51
44
  "sourceUrl" : "https://github.com/neomjs/shared-offscreen",
52
45
  "sharedWorkers": true,
53
46
  "url" : "https://neomjs.github.io/pages2/workspace/neo-shared-offscreen-canvas-demo/apps/mainapp/index.html"
54
47
  }, {
55
- "id" : 17,
48
+ "id" : 18,
56
49
  "image" : "devmode/multi_window_dd.png",
57
50
  "name" : "Multi-Window Drag&Drop",
58
51
  "sharedWorkers": true,
59
52
  "sourceUrl" : "apps/shareddialog",
60
53
  "url" : "apps/shareddialog/index.html"
61
54
  }, {
62
- "id" : 16,
55
+ "id" : 17,
63
56
  "image" : "devmode/tabContainer.png",
64
57
  "name" : "tab.Container",
65
58
  "sourceUrl": "examples/tab/container",
66
59
  "url" : "examples/tab/container/index.html"
67
60
  }, {
68
- "id" : 15,
61
+ "id" : 16,
69
62
  "image" : "devmode/model-component-example.png",
70
63
  "name" : "State Provider Example",
71
64
  "sourceUrl": "examples/stateProvider/advanced",
72
65
  "url" : "examples/stateProvider/advanced/index.html"
73
66
  }, {
74
- "id" : 14,
67
+ "id" : 15,
75
68
  "image" : "devmode/dragdrop.png",
76
69
  "name" : "Dialog drag&drop",
77
70
  "sourceUrl": "examples/dialog",
78
71
  "url" : "examples/dialog/"
79
72
  }, {
80
- "id" : 13,
73
+ "id" : 14,
81
74
  "image" : "dist_prod/colorsApp.png",
82
75
  "name" : "Colors Dashboard",
83
76
  "sharedWorkers": true,
84
77
  "sourceUrl" : "apps/colors",
85
78
  "url" : "apps/colors/index.html"
86
79
  }, {
87
- "id" : 12,
80
+ "id" : 13,
88
81
  "image" : "devmode/covidDashboard.png",
89
82
  "name" : "Covid Dashboard",
90
83
  "sourceUrl": "apps/covid",
91
84
  "url" : "apps/covid/index.html"
92
85
  }, {
93
- "id" : 11,
86
+ "id" : 12,
94
87
  "image" : "devmode/coronaHelix.png",
95
88
  "name" : "COVID-19 Helix",
96
89
  "sourceUrl": "examples/component/coronaHelix",
97
90
  "url" : "examples/component/coronaHelix/index.html"
98
91
  }, {
99
- "id" : 10,
92
+ "id" : 11,
100
93
  "image" : "devmode/coronaGallery.png",
101
94
  "name" : "COVID-19 Gallery",
102
95
  "sourceUrl": "examples/component/coronaGallery",
103
96
  "url" : "examples/component/coronaGallery/index.html"
104
97
  }, {
105
- "id" : 9,
98
+ "id" : 10,
106
99
  "image" : "devmode/gallery.png",
107
100
  "name" : "component.Gallery",
108
101
  "sourceUrl": "examples/component/gallery",
109
102
  "url" : "examples/component/gallery/index.html"
110
103
  }, {
111
- "id" : 8,
104
+ "id" : 9,
112
105
  "image" : "devmode/tableFiltering.png",
113
106
  "name" : "Table Filtering",
114
107
  "sourceUrl": "examples/tableFiltering",
115
108
  "url" : "examples/tableFiltering/"
116
109
  }, {
117
- "id" : 7,
110
+ "id" : 8,
118
111
  "image" : "devmode/dateSelector.png",
119
112
  "name" : "component.DateSelector",
120
113
  "sourceUrl": "examples/component/dateSelector",
121
114
  "url" : "examples/component/dateSelector/index.html"
122
115
  }, {
123
- "id" : 6,
116
+ "id" : 7,
124
117
  "image" : "devmode/dateField.png",
125
118
  "name" : "form.field.Date",
126
119
  "sourceUrl": "examples/form/field/date",
127
120
  "url" : "examples/form/field/date/index.html"
128
121
  }, {
129
- "id" : 5,
122
+ "id" : 6,
130
123
  "image" : "devmode/selectField.png",
131
124
  "name" : "form.field.ComboBox",
132
125
  "sourceUrl": "examples/form/field/combobox",
133
126
  "url" : "examples/form/field/combobox/index.html"
134
127
  }, {
135
- "id" : 4,
128
+ "id" : 5,
136
129
  "environments" : ["Desktop", "Mobile"],
137
130
  "image" : "dist_prod/portalApp.png",
138
131
  "name" : "Portal App",
139
132
  "sharedWorkers": true,
140
133
  "sourceUrl" : "apps/portal",
141
134
  "url" : "apps/portal/index.html"
135
+ }, {
136
+ "id" : 4,
137
+ "image" : "devmode/liquid-glass.png",
138
+ "name" : "Liquid Glass effect",
139
+ "sourceUrl": "https://github.com/neomjs/liquid-glass-demo/blob/main/apps/myapp/view/GlassComponent.mjs",
140
+ "url" : "https://neomjs.github.io/pages2/workspace/neo-liquid-glass-demo/apps/myapp/index.html"
142
141
  }, {
143
142
  "id" : 3,
144
143
  "image" : "devmode/siesta.png",
@@ -1,144 +1,143 @@
1
1
  [{
2
2
  "id" : 24,
3
3
  "environments": ["Desktop", "Mobile"],
4
- "image" : "devmode/liquid-glass.png",
5
- "name" : "Liquid Glass effect",
6
- "sourceUrl" : "https://github.com/neomjs/liquid-glass-demo/blob/main/apps/myapp/view/GlassComponent.mjs",
7
- "url" : "https://neomjs.github.io/pages2/workspace/neo-liquid-glass-demo/dist/development/apps/myapp/index.html"
8
- }, {
9
- "id" : 23,
10
- "environments": ["Desktop", "Mobile"],
11
4
  "image" : "devmode/bigData.png",
12
5
  "name" : "Buffered Data Grid with 5M cells",
13
6
  "sourceUrl" : "examples/grid/bigData",
14
7
  "url" : "dist/development/examples/grid/bigData/index.html"
15
8
  }, {
16
- "id" : 22,
9
+ "id" : 23,
17
10
  "image" : "devmode/sharedcovid.png",
18
11
  "name" : "Multi Window Covid App",
19
12
  "sharedWorkers": true,
20
13
  "sourceUrl" : "apps/sharedcovid",
21
14
  "url" : "dist/development/apps/sharedcovid/index.html#mainview=table"
22
15
  }, {
23
- "id" : 21,
16
+ "id" : 22,
24
17
  "image" : "devmode/calendar-preview.png",
25
18
  "name" : "Calendar",
26
19
  "sourceUrl": "src/calendar",
27
20
  "url" : "dist/development/examples/calendar/basic/index.html"
28
21
  }, {
29
- "id" : 20,
22
+ "id" : 21,
30
23
  "image" : "devmode/helix.png",
31
24
  "name" : "component.Helix",
32
25
  "sourceUrl": "examples/component/helix",
33
26
  "url" : "dist/development/examples/component/helix/index.html"
34
27
  }, {
35
- "id" : 19,
28
+ "id" : 20,
36
29
  "image" : "devmode/mwCoronaGallery.png",
37
30
  "name" : "Multi Window Covid Gallery",
38
31
  "sharedWorkers": true,
39
32
  "sourceUrl" : "examples/component/multiWindowCoronaGallery",
40
33
  "url" : "dist/development/examples/component/multiWindowCoronaGallery/index.html"
41
34
  }, {
42
- "id" : 18,
35
+ "id" : 19,
43
36
  "image" : "devmode/offscreenCanvas.png",
44
37
  "name" : "OffscreenCanvas",
45
38
  "sourceUrl": "https://github.com/neomjs/offscreen-canvas/tree/main/apps/myapp",
46
39
  "url" : "https://neomjs.github.io/pages2/workspace/neo-offscreen-canvas-demo/dist/development/apps/myapp/index.html"
47
40
  }, {
48
- "id" : 17,
41
+ "id" : 18,
49
42
  "image" : "devmode/sharedOffscreenCanvas.png",
50
43
  "name" : "Multi-Window OffscreenCanvas",
51
44
  "sharedWorkers": true,
52
45
  "sourceUrl" : "https://github.com/neomjs/shared-offscreen",
53
46
  "url" : "https://neomjs.github.io/pages2/workspace/neo-shared-offscreen-canvas-demo/dist/development/apps/mainapp/index.html"
54
47
  }, {
55
- "id" : 16,
48
+ "id" : 17,
56
49
  "image" : "devmode/multi_window_dd.png",
57
50
  "name" : "Multi-Window Drag&Drop",
58
51
  "sharedWorkers": true,
59
52
  "sourceUrl" : "apps/shareddialog",
60
53
  "url" : "dist/development/apps/shareddialog/index.html"
61
54
  }, {
62
- "id" : 15,
55
+ "id" : 16,
63
56
  "image" : "devmode/tabContainer.png",
64
57
  "name" : "tab.Container",
65
58
  "sourceUrl": "examples/tab/container",
66
59
  "url" : "dist/development/examples/tab/container/index.html"
67
60
  }, {
68
- "id" : 14,
61
+ "id" : 15,
69
62
  "image" : "devmode/model-component-example.png",
70
63
  "name" : "State Provider Example",
71
64
  "sourceUrl": "examples/stateProvider/advanced",
72
65
  "url" : "dist/development/examples/stateProvider/advanced/index.html"
73
66
  }, {
74
- "id" : 13,
67
+ "id" : 14,
75
68
  "image" : "devmode/dragdrop.png",
76
69
  "name" : "Dialog drag&drop",
77
70
  "sourceUrl": "examples/dialog",
78
71
  "url" : "dist/development/examples/dialog/"
79
72
  }, {
80
- "id" : 12,
73
+ "id" : 13,
81
74
  "image" : "dist_prod/colorsApp.png",
82
75
  "name" : "Colors Dashboard",
83
76
  "sharedWorkers": true,
84
77
  "sourceUrl" : "apps/colors",
85
78
  "url" : "dist/development/apps/colors/index.html"
86
79
  }, {
87
- "id" : 11,
80
+ "id" : 12,
88
81
  "image" : "devmode/covidDashboard.png",
89
82
  "name" : "Covid Dashboard",
90
83
  "sourceUrl": "apps/covid",
91
84
  "url" : "dist/development/apps/covid/index.html#mainview=table"
92
85
  }, {
93
- "id" : 10,
86
+ "id" : 11,
94
87
  "image" : "devmode/coronaHelix.png",
95
88
  "name" : "COVID-19 Helix",
96
89
  "sourceUrl": "examples/component/coronaHelix",
97
90
  "url" : "dist/development/examples/component/coronaHelix/index.html"
98
91
  }, {
99
- "id" : 9,
92
+ "id" : 10,
100
93
  "image" : "devmode/coronaGallery.png",
101
94
  "name" : "COVID-19 Gallery",
102
95
  "sourceUrl": "examples/component/coronaGallery",
103
96
  "url" : "dist/development/examples/component/coronaGallery/index.html"
104
97
  }, {
105
- "id" : 8,
98
+ "id" : 9,
106
99
  "image" : "devmode/gallery.png",
107
100
  "name" : "component.Gallery",
108
101
  "sourceUrl": "examples/component/gallery",
109
102
  "url" : "dist/development/examples/component/gallery/index.html"
110
103
  }, {
111
- "id" : 7,
104
+ "id" : 8,
112
105
  "image" : "devmode/tableFiltering.png",
113
106
  "name" : "Table Filtering",
114
107
  "sourceUrl": "examples/tableFiltering",
115
108
  "url" : "dist/development/examples/tableFiltering/"
116
109
  }, {
117
- "id" : 6,
110
+ "id" : 7,
118
111
  "image" : "devmode/dateSelector.png",
119
112
  "name" : "component.DateSelector",
120
113
  "sourceUrl": "examples/component/dateSelector",
121
114
  "url" : "dist/development/examples/component/dateSelector/index.html"
122
115
  }, {
123
- "id" : 5,
116
+ "id" : 6,
124
117
  "image" : "devmode/dateField.png",
125
118
  "name" : "form.field.Date",
126
119
  "sourceUrl": "examples/form/field/date",
127
120
  "url" : "dist/development/examples/form/field/date/index.html"
128
121
  }, {
129
- "id" : 4,
122
+ "id" : 5,
130
123
  "image" : "devmode/selectField.png",
131
124
  "name" : "form.field.ComboBox",
132
125
  "sourceUrl": "examples/form/field/combobox",
133
126
  "url" : "dist/development/examples/form/field/combobox/index.html"
134
127
  }, {
135
- "id" : 3,
128
+ "id" : 4,
136
129
  "environments" : ["Desktop", "Mobile"],
137
130
  "image" : "dist_prod/portalApp.png",
138
131
  "name" : "Portal App",
139
132
  "sharedWorkers": true,
140
133
  "sourceUrl" : "apps/portal",
141
134
  "url" : "dist/development/apps/portal/index.html"
135
+ }, {
136
+ "id" : 3,
137
+ "image" : "devmode/liquid-glass.png",
138
+ "name" : "Liquid Glass effect",
139
+ "sourceUrl": "https://github.com/neomjs/liquid-glass-demo/blob/main/apps/myapp/view/GlassComponent.mjs",
140
+ "url" : "https://neomjs.github.io/pages2/workspace/neo-liquid-glass-demo/dist/development/apps/myapp/index.html"
142
141
  }, {
143
142
  "hidden" : true,
144
143
  "id" : 2,