neo.mjs 6.12.1 → 6.13.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.
Files changed (940) hide show
  1. package/apps/ServiceWorker.mjs +1 -1
  2. package/apps/covid/Util.mjs +1 -1
  3. package/apps/covid/model/Country.mjs +1 -1
  4. package/apps/covid/model/HistoricalData.mjs +1 -1
  5. package/apps/covid/store/Countries.mjs +1 -1
  6. package/apps/covid/store/HistoricalData.mjs +1 -1
  7. package/apps/covid/view/AttributionComponent.mjs +1 -1
  8. package/apps/covid/view/FooterContainer.mjs +1 -1
  9. package/apps/covid/view/GalleryContainer.mjs +1 -1
  10. package/apps/covid/view/GalleryContainerController.mjs +1 -1
  11. package/apps/covid/view/HeaderContainer.mjs +1 -1
  12. package/apps/covid/view/HelixContainer.mjs +1 -1
  13. package/apps/covid/view/HelixContainerController.mjs +1 -1
  14. package/apps/covid/view/MainContainer.mjs +1 -1
  15. package/apps/covid/view/MainContainerController.mjs +1 -1
  16. package/apps/covid/view/MainContainerModel.mjs +1 -1
  17. package/apps/covid/view/TableContainer.mjs +1 -1
  18. package/apps/covid/view/TableContainerController.mjs +1 -1
  19. package/apps/covid/view/WorldMapComponent.mjs +1 -1
  20. package/apps/covid/view/WorldMapContainer.mjs +1 -1
  21. package/apps/covid/view/WorldMapContainerController.mjs +1 -1
  22. package/apps/covid/view/country/Gallery.mjs +1 -1
  23. package/apps/covid/view/country/Helix.mjs +1 -1
  24. package/apps/covid/view/country/HistoricalDataTable.mjs +1 -1
  25. package/apps/covid/view/country/LineChartComponent.mjs +1 -1
  26. package/apps/covid/view/country/Table.mjs +1 -1
  27. package/apps/covid/view/mapboxGl/Component.mjs +1 -1
  28. package/apps/covid/view/mapboxGl/Container.mjs +1 -1
  29. package/apps/covid/view/mapboxGl/ContainerController.mjs +1 -1
  30. package/apps/form/model/SideNav.mjs +1 -1
  31. package/apps/form/store/SideNav.mjs +1 -1
  32. package/apps/form/view/FormContainer.mjs +1 -1
  33. package/apps/form/view/FormContainerController.mjs +1 -1
  34. package/apps/form/view/FormPageContainer.mjs +1 -1
  35. package/apps/form/view/SideNavList.mjs +1 -1
  36. package/apps/form/view/Viewport.mjs +3 -3
  37. package/apps/form/view/ViewportController.mjs +1 -1
  38. package/apps/form/view/ViewportModel.mjs +1 -1
  39. package/apps/form/view/pages/Page1.mjs +1 -1
  40. package/apps/form/view/pages/Page10.mjs +1 -1
  41. package/apps/form/view/pages/Page11.mjs +1 -1
  42. package/apps/form/view/pages/Page12.mjs +1 -1
  43. package/apps/form/view/pages/Page13.mjs +1 -1
  44. package/apps/form/view/pages/Page14.mjs +1 -1
  45. package/apps/form/view/pages/Page15.mjs +1 -1
  46. package/apps/form/view/pages/Page2.mjs +1 -1
  47. package/apps/form/view/pages/Page3.mjs +1 -1
  48. package/apps/form/view/pages/Page4.mjs +1 -1
  49. package/apps/form/view/pages/Page5.mjs +1 -1
  50. package/apps/form/view/pages/Page6.mjs +1 -1
  51. package/apps/form/view/pages/Page7.mjs +1 -1
  52. package/apps/form/view/pages/Page8.mjs +1 -1
  53. package/apps/form/view/pages/Page9.mjs +1 -1
  54. package/apps/krausest/TableCollection.mjs +1 -1
  55. package/apps/krausest/view/MainComponent.mjs +1 -1
  56. package/apps/krausest/view/MainComponentController.mjs +1 -1
  57. package/apps/krausest/view/TableComponent.mjs +1 -1
  58. package/apps/portal/childapps/preview/MainContainer.mjs +23 -0
  59. package/apps/portal/childapps/preview/app.mjs +6 -0
  60. package/apps/portal/childapps/preview/index.html +11 -0
  61. package/apps/portal/childapps/preview/neo-config.json +9 -0
  62. package/apps/portal/model/BlogPost.mjs +1 -1
  63. package/apps/portal/model/Content.mjs +5 -5
  64. package/apps/portal/model/ContentSection.mjs +32 -0
  65. package/apps/portal/neo-config.json +3 -2
  66. package/apps/portal/store/BlogPosts.mjs +1 -1
  67. package/apps/portal/store/Content.mjs +4 -51
  68. package/apps/portal/store/ContentSections.mjs +24 -0
  69. package/apps/portal/view/HeaderToolbar.mjs +14 -6
  70. package/apps/portal/view/Viewport.mjs +3 -2
  71. package/apps/portal/view/ViewportController.mjs +11 -1
  72. package/apps/portal/view/blog/Container.mjs +1 -1
  73. package/apps/portal/view/blog/List.mjs +1 -1
  74. package/apps/portal/view/home/MainContainer.mjs +1 -1
  75. package/apps/portal/view/learn/ContentTreeList.mjs +34 -147
  76. package/apps/portal/view/learn/ContentView.mjs +229 -17
  77. package/apps/portal/view/learn/LivePreview.mjs +175 -76
  78. package/apps/portal/view/learn/MainContainer.mjs +20 -18
  79. package/apps/portal/view/learn/MainContainerController.mjs +135 -23
  80. package/apps/portal/view/learn/MainContainerModel.mjs +99 -7
  81. package/apps/portal/view/learn/PageContainer.mjs +110 -0
  82. package/apps/portal/view/learn/PageSectionsPanel.mjs +88 -0
  83. package/apps/realworld/api/Article.mjs +1 -5
  84. package/apps/realworld/api/Base.mjs +1 -1
  85. package/apps/realworld/api/Favorite.mjs +1 -5
  86. package/apps/realworld/api/Profile.mjs +1 -5
  87. package/apps/realworld/api/Tag.mjs +1 -5
  88. package/apps/realworld/api/User.mjs +1 -5
  89. package/apps/realworld/view/FooterComponent.mjs +1 -1
  90. package/apps/realworld/view/HeaderComponent.mjs +1 -1
  91. package/apps/realworld/view/HomeComponent.mjs +1 -1
  92. package/apps/realworld/view/MainContainer.mjs +1 -1
  93. package/apps/realworld/view/MainContainerController.mjs +1 -1
  94. package/apps/realworld/view/article/CommentComponent.mjs +1 -1
  95. package/apps/realworld/view/article/Component.mjs +1 -1
  96. package/apps/realworld/view/article/CreateCommentComponent.mjs +1 -1
  97. package/apps/realworld/view/article/CreateComponent.mjs +1 -1
  98. package/apps/realworld/view/article/PreviewComponent.mjs +1 -1
  99. package/apps/realworld/view/article/TagListComponent.mjs +1 -1
  100. package/apps/realworld/view/user/ProfileComponent.mjs +1 -1
  101. package/apps/realworld/view/user/SettingsComponent.mjs +1 -1
  102. package/apps/realworld/view/user/SignUpComponent.mjs +1 -1
  103. package/apps/realworld2/api/Article.mjs +1 -5
  104. package/apps/realworld2/api/Base.mjs +1 -1
  105. package/apps/realworld2/api/Favorite.mjs +1 -5
  106. package/apps/realworld2/api/Profile.mjs +1 -5
  107. package/apps/realworld2/api/Tag.mjs +1 -5
  108. package/apps/realworld2/api/User.mjs +1 -5
  109. package/apps/realworld2/model/ArticlePreview.mjs +1 -1
  110. package/apps/realworld2/store/ArticlePreviews.mjs +1 -1
  111. package/apps/realworld2/view/FooterComponent.mjs +1 -1
  112. package/apps/realworld2/view/HeaderToolbar.mjs +1 -1
  113. package/apps/realworld2/view/HeaderToolbarController.mjs +1 -1
  114. package/apps/realworld2/view/HomeContainer.mjs +1 -1
  115. package/apps/realworld2/view/MainContainer.mjs +1 -1
  116. package/apps/realworld2/view/MainContainerController.mjs +1 -1
  117. package/apps/realworld2/view/article/DetailsContainer.mjs +1 -1
  118. package/apps/realworld2/view/article/FormContainer.mjs +1 -1
  119. package/apps/realworld2/view/article/Gallery.mjs +1 -1
  120. package/apps/realworld2/view/article/GalleryContainer.mjs +1 -1
  121. package/apps/realworld2/view/article/Helix.mjs +1 -1
  122. package/apps/realworld2/view/article/HelixContainer.mjs +1 -1
  123. package/apps/realworld2/view/article/PreviewComponent.mjs +1 -1
  124. package/apps/realworld2/view/article/PreviewList.mjs +1 -1
  125. package/apps/realworld2/view/article/TagListComponent.mjs +1 -1
  126. package/apps/realworld2/view/user/LoginFormContainer.mjs +1 -1
  127. package/apps/realworld2/view/user/ProfileContainer.mjs +1 -1
  128. package/apps/realworld2/view/user/SettingsFormContainer.mjs +1 -1
  129. package/apps/route/view/ButtonBar.mjs +1 -1
  130. package/apps/route/view/CenterContainer.mjs +1 -1
  131. package/apps/route/view/FooterContainer.mjs +1 -1
  132. package/apps/route/view/HeaderContainer.mjs +1 -1
  133. package/apps/route/view/MainView.mjs +4 -4
  134. package/apps/route/view/MainViewController.mjs +1 -1
  135. package/apps/route/view/MetaContainer.mjs +2 -2
  136. package/apps/route/view/Viewport.mjs +1 -1
  137. package/apps/route/view/center/CardAdministration.mjs +1 -1
  138. package/apps/route/view/center/CardAdministrationDenied.mjs +1 -1
  139. package/apps/route/view/center/CardContact.mjs +1 -1
  140. package/apps/route/view/center/CardHome.mjs +1 -1
  141. package/apps/route/view/center/CardSection1.mjs +1 -1
  142. package/apps/route/view/center/CardSection2.mjs +1 -1
  143. package/apps/sharedcovid/Util.mjs +1 -1
  144. package/apps/sharedcovid/childapps/sharedcovidchart/MainContainer.mjs +1 -1
  145. package/apps/sharedcovid/childapps/sharedcovidgallery/MainContainer.mjs +1 -1
  146. package/apps/sharedcovid/childapps/sharedcovidhelix/MainContainer.mjs +1 -1
  147. package/apps/sharedcovid/childapps/sharedcovidmap/MainContainer.mjs +1 -1
  148. package/apps/sharedcovid/model/Country.mjs +1 -1
  149. package/apps/sharedcovid/model/HistoricalData.mjs +1 -1
  150. package/apps/sharedcovid/store/Countries.mjs +1 -1
  151. package/apps/sharedcovid/store/HistoricalData.mjs +1 -1
  152. package/apps/sharedcovid/view/AttributionComponent.mjs +1 -1
  153. package/apps/sharedcovid/view/FooterContainer.mjs +1 -1
  154. package/apps/sharedcovid/view/GalleryContainer.mjs +1 -1
  155. package/apps/sharedcovid/view/GalleryContainerController.mjs +1 -1
  156. package/apps/sharedcovid/view/HeaderContainer.mjs +1 -1
  157. package/apps/sharedcovid/view/HelixContainer.mjs +1 -1
  158. package/apps/sharedcovid/view/HelixContainerController.mjs +1 -1
  159. package/apps/sharedcovid/view/MainContainer.mjs +1 -1
  160. package/apps/sharedcovid/view/MainContainerController.mjs +1 -1
  161. package/apps/sharedcovid/view/MainContainerModel.mjs +1 -1
  162. package/apps/sharedcovid/view/TableContainer.mjs +1 -1
  163. package/apps/sharedcovid/view/TableContainerController.mjs +1 -1
  164. package/apps/sharedcovid/view/WorldMapComponent.mjs +1 -1
  165. package/apps/sharedcovid/view/WorldMapContainer.mjs +1 -1
  166. package/apps/sharedcovid/view/WorldMapContainerController.mjs +1 -1
  167. package/apps/sharedcovid/view/country/Gallery.mjs +1 -1
  168. package/apps/sharedcovid/view/country/Helix.mjs +1 -1
  169. package/apps/sharedcovid/view/country/HistoricalDataTable.mjs +1 -1
  170. package/apps/sharedcovid/view/country/LineChartComponent.mjs +1 -1
  171. package/apps/sharedcovid/view/country/Table.mjs +1 -1
  172. package/apps/sharedcovid/view/mapboxGl/Component.mjs +1 -1
  173. package/apps/sharedcovid/view/mapboxGl/Container.mjs +1 -1
  174. package/apps/sharedcovid/view/mapboxGl/ContainerController.mjs +1 -1
  175. package/apps/shareddialog/childapps/shareddialog2/view/MainContainer.mjs +1 -1
  176. package/apps/shareddialog/childapps/shareddialog2/view/MainContainerController.mjs +1 -1
  177. package/apps/shareddialog/view/DemoDialog.mjs +1 -1
  178. package/apps/shareddialog/view/MainContainer.mjs +1 -1
  179. package/apps/shareddialog/view/MainContainerController.mjs +1 -1
  180. package/apps/website/model/BlogPost.mjs +1 -1
  181. package/apps/website/model/Example.mjs +1 -1
  182. package/apps/website/store/BlogPosts.mjs +1 -1
  183. package/apps/website/store/Examples.mjs +1 -1
  184. package/apps/website/view/HeaderContainer.mjs +1 -1
  185. package/apps/website/view/MainContainer.mjs +1 -1
  186. package/apps/website/view/MainContainerController.mjs +1 -1
  187. package/apps/website/view/blog/Container.mjs +1 -1
  188. package/apps/website/view/blog/List.mjs +1 -1
  189. package/apps/website/view/examples/List.mjs +1 -1
  190. package/apps/website/view/examples/TabContainer.mjs +1 -1
  191. package/apps/website/view/home/DeveloperIntroComponent.mjs +1 -1
  192. package/apps/website/view/home/ExecutiveIntroComponent.mjs +1 -1
  193. package/apps/website/view/home/TabContainer.mjs +1 -1
  194. package/buildScripts/createApp.mjs +1 -1
  195. package/buildScripts/createAppMinimal.mjs +4 -4
  196. package/buildScripts/createClass.mjs +2 -2
  197. package/buildScripts/docs/jsdocx.mjs +3 -4
  198. package/buildScripts/tools/createExample.mjs +1 -1
  199. package/docs/app/model/Api.mjs +1 -1
  200. package/docs/app/model/Example.mjs +1 -1
  201. package/docs/app/model/Tutorial.mjs +1 -1
  202. package/docs/app/store/Api.mjs +1 -1
  203. package/docs/app/store/Examples.mjs +1 -1
  204. package/docs/app/store/Tutorials.mjs +1 -1
  205. package/docs/app/view/ApiTreeList.mjs +1 -1
  206. package/docs/app/view/ContentTabContainer.mjs +1 -1
  207. package/docs/app/view/ExamplesTreeList.mjs +1 -1
  208. package/docs/app/view/HeaderContainer.mjs +1 -1
  209. package/docs/app/view/MainContainer.mjs +1 -1
  210. package/docs/app/view/MainContainerController.mjs +54 -40
  211. package/docs/app/view/TutorialsTreeList.mjs +1 -1
  212. package/docs/app/view/classdetails/HeaderComponent.mjs +4 -4
  213. package/docs/app/view/classdetails/HierarchyTreeList.mjs +1 -1
  214. package/docs/app/view/classdetails/MainContainer.mjs +1 -1
  215. package/docs/app/view/classdetails/MainContainerController.mjs +4 -17
  216. package/docs/app/view/classdetails/MembersList.mjs +3 -3
  217. package/docs/app/view/classdetails/SourceViewComponent.mjs +5 -5
  218. package/docs/app/view/classdetails/TutorialComponent.mjs +1 -1
  219. package/docs/neo-config.json +1 -1
  220. package/examples/ConfigurationViewport.mjs +3 -2
  221. package/examples/ServiceWorker.mjs +1 -1
  222. package/examples/button/base/MainContainer.mjs +1 -1
  223. package/examples/button/split/MainContainer.mjs +1 -1
  224. package/examples/calendar/basic/MainContainer.mjs +1 -1
  225. package/examples/calendar/basic/MainContainerController.mjs +1 -1
  226. package/examples/calendar/weekview/MainContainer.mjs +1 -1
  227. package/examples/charts/MainContainer.mjs +1 -1
  228. package/examples/component/canvas/MainContainer.mjs +1 -1
  229. package/examples/component/carousel/MainContainer.mjs +1 -1
  230. package/examples/component/chip/MainContainer.mjs +1 -1
  231. package/examples/component/circle/MainContainer.mjs +1 -1
  232. package/examples/component/clock/MainContainer.mjs +1 -1
  233. package/examples/component/coronaGallery/CountryGallery.mjs +1 -1
  234. package/examples/component/coronaGallery/CountryModel.mjs +1 -1
  235. package/examples/component/coronaGallery/CountryStore.mjs +1 -1
  236. package/examples/component/coronaGallery/MainContainer.mjs +1 -1
  237. package/examples/component/coronaHelix/CountryHelix.mjs +1 -1
  238. package/examples/component/coronaHelix/CountryModel.mjs +1 -1
  239. package/examples/component/coronaHelix/CountryStore.mjs +1 -1
  240. package/examples/component/coronaHelix/MainContainer.mjs +1 -1
  241. package/examples/component/dateSelector/MainContainer.mjs +1 -1
  242. package/examples/component/gallery/ImageModel.mjs +1 -1
  243. package/examples/component/gallery/ImageStore.mjs +1 -1
  244. package/examples/component/gallery/MainContainer.mjs +1 -1
  245. package/examples/component/helix/ImageModel.mjs +1 -1
  246. package/examples/component/helix/ImageStore.mjs +1 -1
  247. package/examples/component/helix/MainContainer.mjs +1 -1
  248. package/examples/component/mwc/button/MainContainer.mjs +1 -1
  249. package/examples/component/mwc/buttons/MainContainer.mjs +1 -1
  250. package/examples/component/mwc/textField/MainContainer.mjs +1 -1
  251. package/examples/component/mwc/textFields/MainContainer.mjs +1 -1
  252. package/examples/component/process/MainContainer.mjs +1 -1
  253. package/examples/component/process/realWorldExample/MainContainer.mjs +1 -1
  254. package/examples/component/progress/MainContainer.mjs +1 -1
  255. package/examples/component/splitter/MainContainer.mjs +1 -1
  256. package/examples/component/statusbadge/MainContainer.mjs +1 -1
  257. package/examples/component/timer/MainContainer.mjs +1 -1
  258. package/examples/component/timer/MainContainerController.mjs +1 -1
  259. package/examples/component/toast/MainContainer.mjs +1 -1
  260. package/examples/component/toast/MainContainerController.mjs +1 -1
  261. package/examples/component/video/MainContainer.mjs +1 -1
  262. package/examples/component/video/MainContainerController.mjs +1 -1
  263. package/examples/component/wrapper/cesiumJS/MainContainer.mjs +1 -1
  264. package/examples/component/wrapper/cesiumJS/MainContainerController.mjs +1 -1
  265. package/examples/component/wrapper/googleMaps/MainContainer.mjs +1 -1
  266. package/examples/component/wrapper/googleMaps/MainContainerController.mjs +1 -1
  267. package/examples/component/wrapper/googleMaps/MapComponent.mjs +1 -1
  268. package/examples/component/wrapper/googleMaps/MarkerDialog.mjs +1 -1
  269. package/examples/component/wrapper/monacoEditor/MainContainer.mjs +187 -0
  270. package/examples/component/wrapper/monacoEditor/app.mjs +7 -0
  271. package/examples/component/wrapper/monacoEditor/index.html +11 -0
  272. package/examples/component/wrapper/monacoEditor/neo-config.json +7 -0
  273. package/examples/container/accordion/MainContainer.mjs +1 -1
  274. package/examples/container/base/MainContainer.mjs +1 -1
  275. package/examples/core/config/MainContainer.mjs +1 -1
  276. package/examples/dashboard/MainContainer.mjs +1 -1
  277. package/examples/dialog/DemoDialog.mjs +1 -1
  278. package/examples/dialog/MainContainer.mjs +1 -1
  279. package/examples/fieldWithPrefix/MainContainer.mjs +1 -1
  280. package/examples/fields/MainContainer.mjs +1 -1
  281. package/examples/form/field/checkbox/MainContainer.mjs +1 -1
  282. package/examples/form/field/chip/MainContainer.mjs +1 -1
  283. package/examples/form/field/chip/MainModel.mjs +1 -1
  284. package/examples/form/field/chip/MainStore.mjs +1 -1
  285. package/examples/form/field/color/MainContainer.mjs +1 -1
  286. package/examples/form/field/color/MainModel.mjs +1 -1
  287. package/examples/form/field/color/MainStore.mjs +1 -1
  288. package/examples/form/field/date/MainContainer.mjs +1 -1
  289. package/examples/form/field/email/MainContainer.mjs +1 -1
  290. package/examples/form/field/fileupload/MainContainer.mjs +1 -1
  291. package/examples/form/field/number/MainContainer.mjs +1 -1
  292. package/examples/form/field/picker/MainContainer.mjs +1 -1
  293. package/examples/form/field/radio/MainContainer.mjs +1 -1
  294. package/examples/form/field/select/MainContainer.mjs +7 -1
  295. package/examples/form/field/select/MainModel.mjs +1 -1
  296. package/examples/form/field/select/MainStore.mjs +1 -1
  297. package/examples/form/field/switch/MainContainer.mjs +1 -1
  298. package/examples/form/field/text/MainContainer.mjs +1 -1
  299. package/examples/form/field/textarea/MainContainer.mjs +1 -1
  300. package/examples/form/field/time/MainContainer.mjs +1 -1
  301. package/examples/form/field/trigger/copyToClipboard/MainContainer.mjs +1 -1
  302. package/examples/form/field/url/MainContainer.mjs +1 -1
  303. package/examples/form/fieldset/MainContainer.mjs +1 -1
  304. package/examples/grid/container/MainContainer.mjs +1 -1
  305. package/examples/grid/container/MainModel.mjs +1 -1
  306. package/examples/grid/container/MainStore.mjs +1 -1
  307. package/examples/grid/covid/GridContainer.mjs +1 -1
  308. package/examples/grid/covid/GridContainerController.mjs +1 -1
  309. package/examples/grid/covid/MainContainer.mjs +1 -1
  310. package/examples/grid/covid/Model.mjs +1 -1
  311. package/examples/grid/covid/Store.mjs +1 -1
  312. package/examples/grid/covid/Util.mjs +1 -1
  313. package/examples/layout/form/MainContainer.mjs +1 -1
  314. package/examples/list/animate/List.mjs +1 -1
  315. package/examples/list/animate/MainContainer.mjs +1 -1
  316. package/examples/list/animate/MainContainerController.mjs +1 -1
  317. package/examples/list/animate/MainModel.mjs +1 -1
  318. package/examples/list/animate/MainStore.mjs +1 -1
  319. package/examples/list/base/MainContainer.mjs +1 -1
  320. package/examples/list/base/MainModel.mjs +1 -1
  321. package/examples/list/base/MainStore.mjs +1 -1
  322. package/examples/list/base/neo-config.json +1 -1
  323. package/examples/list/chip/MainContainer.mjs +1 -1
  324. package/examples/list/chip/MainModel.mjs +1 -1
  325. package/examples/list/chip/MainStore.mjs +1 -1
  326. package/examples/list/circle/MainContainer.mjs +1 -1
  327. package/examples/list/circle/MainModel.mjs +1 -1
  328. package/examples/list/circle/MainStore.mjs +1 -1
  329. package/examples/list/color/MainContainer.mjs +1 -1
  330. package/examples/list/color/MainModel.mjs +1 -1
  331. package/examples/list/color/MainStore.mjs +1 -1
  332. package/examples/menu/list/MainContainer.mjs +1 -1
  333. package/examples/menu/list/MainStore.mjs +1 -1
  334. package/examples/menu/panel/MainContainer.mjs +1 -1
  335. package/examples/model/advanced/MainContainer.mjs +1 -1
  336. package/examples/model/advanced/MainContainerController.mjs +1 -1
  337. package/examples/model/dialog/EditUserDialog.mjs +1 -1
  338. package/examples/model/dialog/EditUserDialogController.mjs +1 -1
  339. package/examples/model/dialog/MainContainer.mjs +1 -1
  340. package/examples/model/dialog/MainContainerController.mjs +1 -1
  341. package/examples/model/extendedClass/MainContainer.mjs +1 -1
  342. package/examples/model/extendedClass/MainContainerController.mjs +1 -1
  343. package/examples/model/extendedClass/MainContainerModel.mjs +1 -1
  344. package/examples/model/inline/MainContainer.mjs +1 -1
  345. package/examples/model/inline/MainContainerController.mjs +1 -1
  346. package/examples/model/inlineNoModel/MainContainer.mjs +1 -1
  347. package/examples/model/inlineNoModel/MainContainerController.mjs +1 -1
  348. package/examples/model/multiWindow/EditUserDialog.mjs +1 -1
  349. package/examples/model/multiWindow/EditUserDialogController.mjs +1 -1
  350. package/examples/model/multiWindow/MainContainer.mjs +1 -1
  351. package/examples/model/multiWindow/MainContainerController.mjs +1 -1
  352. package/examples/model/multiWindow/Viewport.mjs +1 -1
  353. package/examples/model/multiWindow/ViewportController.mjs +1 -1
  354. package/examples/model/multiWindow2/Viewport.mjs +1 -1
  355. package/examples/model/nestedData/MainContainer.mjs +1 -1
  356. package/examples/model/nestedData/MainContainerController.mjs +1 -1
  357. package/examples/model/table/MainContainer.mjs +1 -1
  358. package/examples/model/table/MainContainerModel.mjs +1 -1
  359. package/examples/model/table/MainModel.mjs +1 -1
  360. package/examples/model/table/MainStore.mjs +1 -1
  361. package/examples/panel/MainContainer.mjs +1 -1
  362. package/examples/panel/MainContainerController.mjs +1 -1
  363. package/examples/popover/MainContainer.mjs +1 -1
  364. package/examples/preloadingAssets/view/MainContainer.mjs +1 -1
  365. package/examples/preloadingAssets/view/MainContainerController.mjs +1 -1
  366. package/examples/remotesApi/basic/MainContainer.mjs +1 -1
  367. package/examples/remotesApi/basic/MainContainerController.mjs +1 -1
  368. package/examples/sitemap/MainContainer.mjs +1 -1
  369. package/examples/tab/container/MainContainer.mjs +1 -1
  370. package/examples/table/container/MainContainer.mjs +1 -1
  371. package/examples/table/container/MainModel.mjs +1 -1
  372. package/examples/table/container/MainStore.mjs +1 -1
  373. package/examples/table/covid/MainContainer.mjs +1 -1
  374. package/examples/table/covid/Model.mjs +1 -1
  375. package/examples/table/covid/Store.mjs +1 -1
  376. package/examples/table/covid/TableContainer.mjs +1 -1
  377. package/examples/table/covid/TableContainerController.mjs +1 -1
  378. package/examples/table/covid/Util.mjs +1 -1
  379. package/examples/tableFiltering/MainContainer.mjs +1 -1
  380. package/examples/tableFiltering/MainModel.mjs +1 -1
  381. package/examples/tableFiltering/MainStore.mjs +1 -1
  382. package/examples/tablePerformance/MainContainer.mjs +1 -1
  383. package/examples/tablePerformance/MainContainer2.mjs +1 -1
  384. package/examples/tablePerformance/MainContainer3.mjs +1 -1
  385. package/examples/tablePerformance/Viewport.mjs +1 -1
  386. package/examples/tableStore/MainContainer.mjs +1 -1
  387. package/examples/tableStore/MainModel.mjs +1 -1
  388. package/examples/tableStore/MainStore.mjs +1 -1
  389. package/examples/tabs/MainContainer.mjs +1 -1
  390. package/examples/tabs/MainContainer2.mjs +1 -1
  391. package/examples/todoList/version1/MainComponent.mjs +1 -1
  392. package/examples/todoList/version2/MainContainer.mjs +1 -1
  393. package/examples/todoList/version2/TodoList.mjs +1 -1
  394. package/examples/todoList/version2/TodoListModel.mjs +1 -1
  395. package/examples/todoList/version2/TodoListStore.mjs +1 -1
  396. package/examples/toolbar/breadcrumb/view/MainContainer.mjs +1 -1
  397. package/examples/toolbar/breadcrumb/view/MainContainerController.mjs +1 -1
  398. package/examples/toolbar/paging/model/User.mjs +1 -1
  399. package/examples/toolbar/paging/store/Users.mjs +1 -1
  400. package/examples/toolbar/paging/view/AddUserDialog.mjs +1 -1
  401. package/examples/toolbar/paging/view/MainContainer.mjs +1 -1
  402. package/examples/toolbar/paging/view/MainContainerController.mjs +1 -1
  403. package/examples/toolbar/paging/view/MainContainerModel.mjs +1 -1
  404. package/examples/toolbar/paging/view/UserTableContainer.mjs +1 -1
  405. package/examples/tree/MainContainer.mjs +1 -1
  406. package/examples/treeAccordion/MainContainer.mjs +1 -1
  407. package/examples/viewport/MainContainer.mjs +1 -1
  408. package/examples/worker/task/MainContainer.mjs +48 -0
  409. package/examples/worker/task/MyTasks.mjs +48 -0
  410. package/examples/worker/task/app.mjs +6 -0
  411. package/examples/worker/task/index.html +11 -0
  412. package/examples/worker/task/neo-config.json +7 -0
  413. package/examples/worker/task/task.mjs +5 -0
  414. package/package.json +10 -8
  415. package/resources/data/deck/learnneo/{p → pages}/2023-10-07T19-18-28-517Z.md +3 -3
  416. package/resources/data/deck/learnneo/{p → pages}/2023-10-08T20-20-07-934Z.md +3 -3
  417. package/resources/data/deck/learnneo/{p → pages}/2023-10-08T20-20-37-336Z.md +1 -1
  418. package/resources/data/deck/learnneo/{p → pages}/2023-10-08T21-58-25-809Z.md +5 -5
  419. package/resources/data/deck/learnneo/{p → pages}/2023-10-14T19-25-08-153Z.md +15 -14
  420. package/resources/data/deck/learnneo/{p → pages}/2023-10-31T13-59-37-550Z.md +2 -2
  421. package/resources/data/deck/learnneo/{p → pages}/ComponentModels.md +23 -23
  422. package/resources/data/deck/learnneo/{p → pages}/Config.md +17 -23
  423. package/resources/data/deck/learnneo/{p → pages}/DescribingTheUI.md +31 -25
  424. package/resources/data/deck/learnneo/{p → pages}/Earthquakes.md +119 -120
  425. package/resources/data/deck/learnneo/{p → pages}/Events.md +9 -20
  426. package/resources/data/deck/learnneo/{p → pages}/Extending.md +39 -42
  427. package/resources/data/deck/learnneo/pages/GuideEvents.md +12 -0
  428. package/resources/data/deck/learnneo/{p → pages}/References.md +38 -38
  429. package/resources/data/deck/learnneo/pages/Setup.md +27 -0
  430. package/resources/data/deck/learnneo/{p → pages}/TestLivePreview.md +1 -1
  431. package/resources/data/deck/learnneo/pages/WhyNeo-Effort.md +4 -0
  432. package/resources/data/deck/learnneo/pages/WhyNeo-Intro.md +11 -0
  433. package/resources/data/deck/learnneo/pages/WhyNeo-Multi-Threaded.md +13 -0
  434. package/resources/data/deck/learnneo/pages/WhyNeo-Multi-Window.md +36 -0
  435. package/resources/data/deck/learnneo/pages/WhyNeo-Quick.md +21 -0
  436. package/resources/data/deck/learnneo/pages/WhyNeo-Speed.md +27 -0
  437. package/resources/data/deck/learnneo/tree.json +44 -27
  438. package/resources/data/deck/training/{p → pages}/2022-12-27T21-55-23-144Z.md +2 -2
  439. package/resources/data/deck/training/{p → pages}/2022-12-27T21-55-43-542Z.md +1 -1
  440. package/resources/data/deck/training/{p → pages}/2022-12-29T18-36-56-893Z.md +2 -2
  441. package/resources/data/deck/training/{p → pages}/2022-12-29T20-37-08-919Z.md +2 -2
  442. package/resources/data/deck/training/{p → pages}/2022-12-29T20-37-20-344Z.md +2 -2
  443. package/resources/data/deck/training/{p → pages}/2022-12-31T23-18-55-655Z.md +1 -1
  444. package/resources/data/deck/training/{p → pages}/2023-01-01T18-44-07-034Z.md +2 -2
  445. package/resources/data/deck/training/{p → pages}/2023-01-01T21-14-45-740Z.md +2 -2
  446. package/resources/data/deck/training/{p → pages}/2023-01-03T02-07-19-014Z.md +1 -1
  447. package/resources/data/deck/training/{p → pages}/2023-01-04T01-52-23-454Z.md +2 -2
  448. package/resources/data/deck/training/{p → pages}/2023-01-06T23-21-12-009Z.md +1 -1
  449. package/resources/data/deck/training/{p → pages}/2023-01-06T23-34-13-897Z.md +2 -2
  450. package/resources/data/deck/training/{p → pages}/2023-01-08T00-45-11-144Z.md +2 -2
  451. package/resources/data/deck/training/{p → pages}/2023-01-08T01-24-21-088Z.md +1 -1
  452. package/resources/data/deck/training/{p → pages}/2023-01-08T01-46-50-723Z.md +2 -2
  453. package/resources/data/deck/training/{p → pages}/2023-01-12T01-50-54-617Z.md +1 -1
  454. package/resources/data/deck/training/{p → pages}/2023-01-14T00-40-27-784Z.md +2 -2
  455. package/resources/data/deck/training/{p → pages}/2023-01-15T18-51-52-134Z.md +2 -2
  456. package/resources/data/deck/training/{p → pages}/2023-01-15T22-28-57-508Z.md +2 -2
  457. package/resources/data/deck/training/{p → pages}/2023-01-15T22-36-30-913Z.md +1 -1
  458. package/resources/data/deck/training/{p → pages}/2023-07-01T15-42-45-193Z.md +5 -5
  459. package/resources/data/deck/training/{p → pages}/2023-07-02T16-14-06-970Z.md +1 -1
  460. package/resources/data/deck/training/{p → pages}/2023-07-31T00-37-21-927Z.md +1 -1
  461. package/resources/data/deck/training/{p → pages}/2023-10-07T19-18-28-517Z.md +3 -3
  462. package/resources/data/deck/training/{p → pages}/2023-10-08T20-20-07-934Z.md +3 -3
  463. package/resources/data/deck/training/{p → pages}/2023-10-08T20-20-37-336Z.md +1 -1
  464. package/resources/data/deck/training/{p → pages}/2023-10-08T21-58-25-809Z.md +5 -5
  465. package/resources/data/deck/training/{p → pages}/2023-10-14T19-25-08-153Z.md +2 -2
  466. package/resources/design-tokens/json/component.json +30 -30
  467. package/resources/design-tokens/json/core.json +19 -9
  468. package/resources/design-tokens/json/semantic.json +90 -0
  469. package/resources/scss/src/apps/portal/HeaderToolbar.scss +2 -1
  470. package/resources/scss/src/apps/portal/learn/ContentTreeList.scss +8 -7
  471. package/resources/scss/src/apps/portal/learn/ContentView.scss +5 -13
  472. package/resources/scss/src/apps/portal/learn/MainContainer.scss +18 -7
  473. package/resources/scss/src/apps/portal/learn/PageSectionsPanel.scss +8 -0
  474. package/resources/scss/src/list/Base.scss +2 -2
  475. package/resources/scss/theme-dark/list/Base.scss +2 -1
  476. package/resources/scss/theme-light/list/Base.scss +2 -1
  477. package/resources/scss/theme-neo-light/Global.scss +5 -1
  478. package/resources/scss/theme-neo-light/apps/portal/learn/ContentTreeList.scss +23 -0
  479. package/resources/scss/theme-neo-light/button/Base.scss +127 -88
  480. package/resources/scss/theme-neo-light/design-tokens/Component.scss +48 -54
  481. package/resources/scss/theme-neo-light/design-tokens/Core.scss +70 -69
  482. package/resources/scss/theme-neo-light/design-tokens/Semantic.scss +87 -67
  483. package/resources/scss/theme-neo-light/list/Base.scss +14 -26
  484. package/resources/scss/theme-neo-light/tooltip/Base.scss +2 -4
  485. package/src/DefaultConfig.mjs +26 -2
  486. package/src/Fetch.mjs +1 -1
  487. package/src/Main.mjs +53 -37
  488. package/src/Neo.mjs +122 -116
  489. package/src/Xhr.mjs +1 -1
  490. package/src/button/Base.mjs +1 -1
  491. package/src/button/Menu.mjs +1 -1
  492. package/src/button/Split.mjs +1 -1
  493. package/src/calendar/model/Calendar.mjs +1 -1
  494. package/src/calendar/model/Color.mjs +1 -1
  495. package/src/calendar/model/Event.mjs +1 -1
  496. package/src/calendar/store/Calendars.mjs +1 -1
  497. package/src/calendar/store/Colors.mjs +1 -1
  498. package/src/calendar/store/Events.mjs +1 -1
  499. package/src/calendar/view/DayComponent.mjs +1 -1
  500. package/src/calendar/view/EditEventContainer.mjs +1 -1
  501. package/src/calendar/view/MainContainer.mjs +1 -1
  502. package/src/calendar/view/MainContainerModel.mjs +1 -1
  503. package/src/calendar/view/SettingsContainer.mjs +1 -1
  504. package/src/calendar/view/YearComponent.mjs +1 -1
  505. package/src/calendar/view/calendars/ColorsList.mjs +1 -1
  506. package/src/calendar/view/calendars/Container.mjs +1 -1
  507. package/src/calendar/view/calendars/EditContainer.mjs +1 -1
  508. package/src/calendar/view/calendars/List.mjs +1 -1
  509. package/src/calendar/view/month/Component.mjs +1 -1
  510. package/src/calendar/view/settings/GeneralContainer.mjs +1 -1
  511. package/src/calendar/view/settings/MonthContainer.mjs +1 -1
  512. package/src/calendar/view/settings/WeekContainer.mjs +1 -1
  513. package/src/calendar/view/settings/YearContainer.mjs +1 -1
  514. package/src/calendar/view/week/Component.mjs +1 -1
  515. package/src/calendar/view/week/EventDragZone.mjs +1 -1
  516. package/src/calendar/view/week/TimeAxisComponent.mjs +1 -1
  517. package/src/calendar/view/week/plugin/DragDrop.mjs +1 -1
  518. package/src/calendar/view/week/plugin/EventResizable.mjs +1 -1
  519. package/src/collection/Base.mjs +4 -4
  520. package/src/collection/Filter.mjs +1 -1
  521. package/src/collection/Sorter.mjs +1 -1
  522. package/src/component/Base.mjs +48 -25
  523. package/src/component/BoxLabel.mjs +1 -1
  524. package/src/component/Canvas.mjs +1 -1
  525. package/src/component/Carousel.mjs +1 -1
  526. package/src/component/Chip.mjs +1 -1
  527. package/src/component/Circle.mjs +1 -1
  528. package/src/component/Clock.mjs +1 -1
  529. package/src/component/DateSelector.mjs +1 -1
  530. package/src/component/Gallery.mjs +1 -1
  531. package/src/component/Helix.mjs +1 -1
  532. package/src/component/Iframe.mjs +1 -1
  533. package/src/component/Label.mjs +1 -1
  534. package/src/component/Legend.mjs +1 -1
  535. package/src/component/Process.mjs +2 -2
  536. package/src/component/Progress.mjs +1 -1
  537. package/src/component/Splitter.mjs +1 -1
  538. package/src/component/StatusBadge.mjs +1 -1
  539. package/src/component/Timer.mjs +1 -1
  540. package/src/component/Toast.mjs +1 -1
  541. package/src/component/Video.mjs +1 -1
  542. package/src/component/mwc/Button.mjs +1 -1
  543. package/src/component/mwc/TextField.mjs +1 -1
  544. package/src/component/wrapper/AmChart.mjs +1 -1
  545. package/src/component/wrapper/CesiumJS.mjs +1 -1
  546. package/src/component/wrapper/GoogleMaps.mjs +1 -1
  547. package/src/component/wrapper/MapboxGL.mjs +1 -1
  548. package/src/component/wrapper/MonacoEditor.mjs +420 -0
  549. package/src/container/Accordion.mjs +1 -1
  550. package/src/container/AccordionItem.mjs +1 -1
  551. package/src/container/Base.mjs +18 -6
  552. package/src/container/Panel.mjs +1 -1
  553. package/src/container/Viewport.mjs +1 -1
  554. package/src/controller/Application.mjs +1 -1
  555. package/src/controller/Base.mjs +2 -2
  556. package/src/controller/Component.mjs +1 -1
  557. package/src/core/Base.mjs +7 -6
  558. package/src/core/Compare.mjs +1 -1
  559. package/src/core/IdGenerator.mjs +1 -1
  560. package/src/core/Observable.mjs +1 -1
  561. package/src/core/Util.mjs +1 -1
  562. package/src/dashboard/Container.mjs +1 -1
  563. package/src/data/Model.mjs +1 -1
  564. package/src/data/RecordFactory.mjs +35 -31
  565. package/src/data/Store.mjs +1 -1
  566. package/src/data/connection/Fetch.mjs +1 -1
  567. package/src/data/connection/WebSocket.mjs +1 -1
  568. package/src/data/connection/Xhr.mjs +1 -1
  569. package/src/dialog/Base.mjs +1 -1
  570. package/src/dialog/header/Toolbar.mjs +1 -1
  571. package/src/draggable/DragProxyComponent.mjs +1 -1
  572. package/src/draggable/DragZone.mjs +2 -2
  573. package/src/draggable/DropZone.mjs +1 -1
  574. package/src/draggable/list/DragZone.mjs +1 -1
  575. package/src/draggable/list/SortZone.mjs +1 -1
  576. package/src/draggable/tab/header/toolbar/SortZone.mjs +1 -1
  577. package/src/draggable/toolbar/DragZone.mjs +1 -1
  578. package/src/draggable/toolbar/SortZone.mjs +1 -1
  579. package/src/draggable/tree/DragZone.mjs +1 -1
  580. package/src/draggable/tree/SortZone.mjs +1 -1
  581. package/src/filter/BooleanContainer.mjs +1 -1
  582. package/src/filter/DateContainer.mjs +1 -1
  583. package/src/filter/NumberContainer.mjs +1 -1
  584. package/src/filter/ToggleOperatorsButton.mjs +1 -1
  585. package/src/form/Container.mjs +1 -1
  586. package/src/form/Fieldset.mjs +1 -1
  587. package/src/form/field/Base.mjs +57 -2
  588. package/src/form/field/CheckBox.mjs +1 -1
  589. package/src/form/field/Chip.mjs +1 -1
  590. package/src/form/field/Color.mjs +1 -1
  591. package/src/form/field/Country.mjs +1 -1
  592. package/src/form/field/Currency.mjs +1 -1
  593. package/src/form/field/Date.mjs +1 -1
  594. package/src/form/field/Display.mjs +1 -1
  595. package/src/form/field/Email.mjs +1 -1
  596. package/src/form/field/FileUpload.mjs +2 -2
  597. package/src/form/field/Hidden.mjs +1 -1
  598. package/src/form/field/Number.mjs +1 -1
  599. package/src/form/field/Password.mjs +1 -1
  600. package/src/form/field/Phone.mjs +1 -1
  601. package/src/form/field/Picker.mjs +1 -1
  602. package/src/form/field/Radio.mjs +1 -1
  603. package/src/form/field/Range.mjs +1 -1
  604. package/src/form/field/Search.mjs +1 -1
  605. package/src/form/field/Select.mjs +58 -63
  606. package/src/form/field/Switch.mjs +1 -1
  607. package/src/form/field/Text.mjs +103 -52
  608. package/src/form/field/TextArea.mjs +1 -1
  609. package/src/form/field/Time.mjs +1 -1
  610. package/src/form/field/Url.mjs +1 -1
  611. package/src/form/field/ZipCode.mjs +1 -1
  612. package/src/form/field/trigger/Base.mjs +1 -1
  613. package/src/form/field/trigger/Clear.mjs +1 -1
  614. package/src/form/field/trigger/CopyToClipboard.mjs +1 -1
  615. package/src/form/field/trigger/Date.mjs +1 -1
  616. package/src/form/field/trigger/Picker.mjs +1 -1
  617. package/src/form/field/trigger/Search.mjs +1 -1
  618. package/src/form/field/trigger/SpinDown.mjs +1 -1
  619. package/src/form/field/trigger/SpinUp.mjs +1 -1
  620. package/src/form/field/trigger/SpinUpDown.mjs +1 -1
  621. package/src/form/field/trigger/Time.mjs +1 -1
  622. package/src/grid/Container.mjs +1 -1
  623. package/src/grid/View.mjs +1 -1
  624. package/src/grid/header/Button.mjs +1 -1
  625. package/src/grid/header/Toolbar.mjs +1 -1
  626. package/src/layout/Base.mjs +18 -7
  627. package/src/layout/Card.mjs +1 -1
  628. package/src/layout/Fit.mjs +1 -1
  629. package/src/layout/Flexbox.mjs +1 -1
  630. package/src/layout/Form.mjs +1 -1
  631. package/src/layout/Grid.mjs +1 -1
  632. package/src/layout/HBox.mjs +1 -1
  633. package/src/layout/VBox.mjs +1 -1
  634. package/src/list/Base.mjs +60 -54
  635. package/src/list/Chip.mjs +6 -1
  636. package/src/list/Circle.mjs +1 -1
  637. package/src/list/Color.mjs +1 -1
  638. package/src/list/Component.mjs +1 -1
  639. package/src/list/plugin/Animate.mjs +1 -1
  640. package/src/main/DomAccess.mjs +49 -24
  641. package/src/main/DomEvents.mjs +2 -2
  642. package/src/main/addon/AmCharts.mjs +1 -1
  643. package/src/main/addon/AnalyticsByGoogle.mjs +1 -1
  644. package/src/main/addon/Base.mjs +1 -1
  645. package/src/main/addon/CesiumJS.mjs +1 -1
  646. package/src/main/addon/CloneNode.mjs +1 -1
  647. package/src/main/addon/Cookie.mjs +1 -1
  648. package/src/main/addon/DragDrop.mjs +1 -1
  649. package/src/main/addon/GoogleMaps.mjs +1 -1
  650. package/src/main/addon/HighlightJS.mjs +20 -29
  651. package/src/main/addon/IntersectionObserver.mjs +134 -0
  652. package/src/main/addon/LocalStorage.mjs +1 -1
  653. package/src/main/addon/MapboxGL.mjs +1 -1
  654. package/src/main/addon/Markdown.mjs +2 -2
  655. package/src/main/addon/MonacoEditor.mjs +179 -0
  656. package/src/main/addon/Mwc.mjs +1 -1
  657. package/src/main/addon/Navigator.mjs +1 -1
  658. package/src/main/addon/Popover.mjs +1 -1
  659. package/src/main/addon/PrefixField.mjs +1 -1
  660. package/src/main/addon/ResizeObserver.mjs +1 -1
  661. package/src/main/addon/ServiceWorker.mjs +1 -1
  662. package/src/main/addon/Siesta.mjs +1 -1
  663. package/src/main/addon/Stylesheet.mjs +1 -1
  664. package/src/main/addon/WebComponent.mjs +1 -1
  665. package/src/main/addon/WindowPosition.mjs +1 -1
  666. package/src/main/draggable/sensor/Base.mjs +1 -1
  667. package/src/main/draggable/sensor/Mouse.mjs +1 -1
  668. package/src/main/draggable/sensor/Touch.mjs +1 -1
  669. package/src/main/mixin/DeltaUpdates.mjs +1 -1
  670. package/src/main/mixin/TouchDomEvents.mjs +1 -1
  671. package/src/manager/Base.mjs +1 -1
  672. package/src/manager/Component.mjs +1 -1
  673. package/src/manager/DomEvent.mjs +4 -3
  674. package/src/manager/Focus.mjs +1 -1
  675. package/src/manager/Instance.mjs +1 -1
  676. package/src/manager/Store.mjs +1 -1
  677. package/src/manager/Task.mjs +1 -1
  678. package/src/manager/Toast.mjs +1 -1
  679. package/src/manager/rpc/Api.mjs +1 -1
  680. package/src/manager/rpc/Message.mjs +1 -1
  681. package/src/menu/List.mjs +1 -5
  682. package/src/menu/Model.mjs +1 -1
  683. package/src/menu/Panel.mjs +1 -1
  684. package/src/menu/Store.mjs +1 -1
  685. package/src/model/Component.mjs +1 -1
  686. package/src/plugin/Base.mjs +1 -1
  687. package/src/plugin/Popover.mjs +1 -1
  688. package/src/plugin/PrefixField.mjs +10 -9
  689. package/src/plugin/Resizable.mjs +3 -3
  690. package/src/remotes/Api.mjs +1 -1
  691. package/src/selection/CircleModel.mjs +1 -1
  692. package/src/selection/DateSelectorModel.mjs +1 -1
  693. package/src/selection/GalleryModel.mjs +1 -1
  694. package/src/selection/HelixModel.mjs +1 -1
  695. package/src/selection/ListModel.mjs +1 -1
  696. package/src/selection/Model.mjs +1 -1
  697. package/src/selection/TreeAccordionModel.mjs +2 -2
  698. package/src/selection/TreeModel.mjs +4 -4
  699. package/src/selection/grid/CellColumnModel.mjs +1 -1
  700. package/src/selection/grid/CellColumnRowModel.mjs +1 -1
  701. package/src/selection/grid/CellModel.mjs +1 -1
  702. package/src/selection/grid/CellRowModel.mjs +1 -1
  703. package/src/selection/grid/ColumnModel.mjs +1 -1
  704. package/src/selection/grid/RowModel.mjs +1 -1
  705. package/src/selection/menu/ListModel.mjs +1 -1
  706. package/src/selection/table/CellColumnModel.mjs +1 -1
  707. package/src/selection/table/CellColumnRowModel.mjs +1 -1
  708. package/src/selection/table/CellModel.mjs +1 -1
  709. package/src/selection/table/CellRowModel.mjs +1 -1
  710. package/src/selection/table/ColumnModel.mjs +1 -1
  711. package/src/selection/table/RowModel.mjs +1 -1
  712. package/src/sitemap/Component.mjs +1 -1
  713. package/src/sitemap/Model.mjs +1 -1
  714. package/src/sitemap/Store.mjs +1 -1
  715. package/src/tab/Container.mjs +1 -1
  716. package/src/tab/Strip.mjs +1 -1
  717. package/src/tab/header/Button.mjs +1 -1
  718. package/src/tab/header/Toolbar.mjs +1 -1
  719. package/src/table/Container.mjs +1 -1
  720. package/src/table/View.mjs +1 -1
  721. package/src/table/header/Button.mjs +1 -1
  722. package/src/table/header/Toolbar.mjs +1 -1
  723. package/src/toolbar/Base.mjs +1 -1
  724. package/src/toolbar/Breadcrumb.mjs +1 -1
  725. package/src/toolbar/Paging.mjs +1 -1
  726. package/src/tooltip/Base.mjs +10 -7
  727. package/src/tree/Accordion.mjs +1 -1
  728. package/src/tree/List.mjs +52 -46
  729. package/src/util/Array.mjs +1 -1
  730. package/src/util/ClassSystem.mjs +1 -1
  731. package/src/util/Css.mjs +1 -1
  732. package/src/util/Date.mjs +1 -1
  733. package/src/util/Function.mjs +31 -31
  734. package/src/util/HashHistory.mjs +1 -1
  735. package/src/util/KeyNavigation.mjs +1 -1
  736. package/src/util/Logger.mjs +9 -27
  737. package/src/util/Matrix.mjs +1 -1
  738. package/src/util/String.mjs +2 -2
  739. package/src/util/Style.mjs +1 -1
  740. package/src/util/VDom.mjs +1 -1
  741. package/src/util/VNode.mjs +1 -1
  742. package/src/util/_export.mjs +1 -1
  743. package/src/vdom/Helper.mjs +7 -3
  744. package/src/worker/App.mjs +10 -9
  745. package/src/worker/Base.mjs +1 -1
  746. package/src/worker/Canvas.mjs +1 -1
  747. package/src/worker/Data.mjs +1 -1
  748. package/src/worker/Manager.mjs +38 -33
  749. package/src/worker/ServiceBase.mjs +1 -1
  750. package/src/worker/Task.mjs +67 -0
  751. package/src/worker/VDom.mjs +1 -1
  752. package/src/worker/mixin/RemoteMethodAccess.mjs +1 -1
  753. package/test/components/app.mjs +1 -1
  754. package/test/components/files/form/field/Select.mjs +2 -2
  755. package/test/components/files/form/field/Text.mjs +90 -0
  756. package/test/components/files/{component/ChipList.mjs → list/Chip.mjs} +3 -3
  757. package/test/components/siesta.js +23 -24
  758. package/resources/data/deck/learnneo/p/2023-10-01T18-29-19-158Z.md +0 -97
  759. package/resources/data/deck/learnneo/p/GuideEvents.md +0 -153
  760. package/resources/data/deck/learnneo/p/Setup.md +0 -1
  761. package/resources/data/deck/learnneo/pages/whyneo.md +0 -80
  762. package/resources/data/deck/learnneo/t.json +0 -38
  763. package/src/data/field/Field.mjs +0 -48
  764. package/src/data/field/Float.mjs +0 -42
  765. package/src/data/field/Integer.mjs +0 -42
  766. package/src/data/field/String.mjs +0 -42
  767. /package/resources/data/deck/learnneo/{p → pages}/2023-10-08T20-37-30-658Z.md +0 -0
  768. /package/resources/data/deck/learnneo/{p → pages}/2023-10-08T22-22-11-013Z.md +0 -0
  769. /package/resources/data/deck/learnneo/{p → pages}/MainThreadAddonExample.md +0 -0
  770. /package/resources/data/deck/learnneo/{p → pages}/MainThreadAddonIntro.md +0 -0
  771. /package/resources/data/deck/learnneo/{p → pages}/RSP.md +0 -0
  772. /package/resources/data/deck/learnneo/{p → pages}/WhatAboutHTML.md +0 -0
  773. /package/resources/data/deck/learnneo/{p → pages}/stylesheet.md +0 -0
  774. /package/resources/data/deck/training/{p → pages}/2022-12-27T21-54-52-300Z.md +0 -0
  775. /package/resources/data/deck/training/{p → pages}/2022-12-27T21-55-30-948Z.md +0 -0
  776. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-23-55-083Z.md +0 -0
  777. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-24-07-886Z.md +0 -0
  778. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-24-52-295Z.md +0 -0
  779. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-25-03-853Z.md +0 -0
  780. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-43-58-924Z.md +0 -0
  781. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-44-28-881Z.md +0 -0
  782. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-44-41-791Z.md +0 -0
  783. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-45-21-032Z.md +0 -0
  784. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-49-22-078Z.md +0 -0
  785. /package/resources/data/deck/training/{p → pages}/2022-12-27T22-50-20-626Z.md +0 -0
  786. /package/resources/data/deck/training/{p → pages}/2022-12-28T16-58-47-786Z.md +0 -0
  787. /package/resources/data/deck/training/{p → pages}/2022-12-28T16-58-55-192Z.md +0 -0
  788. /package/resources/data/deck/training/{p → pages}/2022-12-28T17-10-18-058Z.md +0 -0
  789. /package/resources/data/deck/training/{p → pages}/2022-12-28T17-10-42-296Z.md +0 -0
  790. /package/resources/data/deck/training/{p → pages}/2022-12-28T17-11-34-653Z.md +0 -0
  791. /package/resources/data/deck/training/{p → pages}/2022-12-28T17-13-09-994Z.md +0 -0
  792. /package/resources/data/deck/training/{p → pages}/2022-12-28T21-32-14-420Z.md +0 -0
  793. /package/resources/data/deck/training/{p → pages}/2022-12-29T01-43-32-431Z.md +0 -0
  794. /package/resources/data/deck/training/{p → pages}/2022-12-29T15-56-54-485Z.md +0 -0
  795. /package/resources/data/deck/training/{p → pages}/2022-12-29T15-57-11-499Z.md +0 -0
  796. /package/resources/data/deck/training/{p → pages}/2022-12-29T16-00-13-223Z.md +0 -0
  797. /package/resources/data/deck/training/{p → pages}/2022-12-29T18-34-25-826Z.md +0 -0
  798. /package/resources/data/deck/training/{p → pages}/2022-12-29T18-36-08-226Z.md +0 -0
  799. /package/resources/data/deck/training/{p → pages}/2022-12-29T19-31-30-507Z.md +0 -0
  800. /package/resources/data/deck/training/{p → pages}/2022-12-29T19-31-55-091Z.md +0 -0
  801. /package/resources/data/deck/training/{p → pages}/2022-12-29T20-03-42-628Z.md +0 -0
  802. /package/resources/data/deck/training/{p → pages}/2022-12-29T20-21-20-669Z.md +0 -0
  803. /package/resources/data/deck/training/{p → pages}/2022-12-30T19-04-30-990Z.md +0 -0
  804. /package/resources/data/deck/training/{p → pages}/2022-12-31T18-43-56-338Z.md +0 -0
  805. /package/resources/data/deck/training/{p → pages}/2022-12-31T18-51-50-682Z.md +0 -0
  806. /package/resources/data/deck/training/{p → pages}/2022-12-31T18-54-04-176Z.md +0 -0
  807. /package/resources/data/deck/training/{p → pages}/2022-12-31T22-11-55-555Z.md +0 -0
  808. /package/resources/data/deck/training/{p → pages}/2022-12-31T23-00-41-222Z.md +0 -0
  809. /package/resources/data/deck/training/{p → pages}/2022-12-31T23-25-40-735Z.md +0 -0
  810. /package/resources/data/deck/training/{p → pages}/2022-12-31T23-25-51-014Z.md +0 -0
  811. /package/resources/data/deck/training/{p → pages}/2023-01-01T17-49-18-429Z.md +0 -0
  812. /package/resources/data/deck/training/{p → pages}/2023-01-01T18-47-39-766Z.md +0 -0
  813. /package/resources/data/deck/training/{p → pages}/2023-01-01T19-04-22-830Z.md +0 -0
  814. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-11-58-025Z.md +0 -0
  815. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-12-37-340Z.md +0 -0
  816. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-13-13-880Z.md +0 -0
  817. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-18-23-886Z.md +0 -0
  818. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-18-31-316Z.md +0 -0
  819. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-18-42-290Z.md +0 -0
  820. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-19-57-020Z.md +0 -0
  821. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-22-31-184Z.md +0 -0
  822. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-22-38-317Z.md +0 -0
  823. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-22-47-693Z.md +0 -0
  824. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-23-17-716Z.md +0 -0
  825. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-23-28-532Z.md +0 -0
  826. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-25-23-899Z.md +0 -0
  827. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-25-59-742Z.md +0 -0
  828. /package/resources/data/deck/training/{p → pages}/2023-01-01T21-26-53-748Z.md +0 -0
  829. /package/resources/data/deck/training/{p → pages}/2023-01-01T23-38-42-863Z.md +0 -0
  830. /package/resources/data/deck/training/{p → pages}/2023-01-06T23-21-31-685Z.md +0 -0
  831. /package/resources/data/deck/training/{p → pages}/2023-01-06T23-21-59-596Z.md +0 -0
  832. /package/resources/data/deck/training/{p → pages}/2023-01-06T23-44-02-340Z.md +0 -0
  833. /package/resources/data/deck/training/{p → pages}/2023-01-06T23-46-36-687Z.md +0 -0
  834. /package/resources/data/deck/training/{p → pages}/2023-01-06T23-46-45-783Z.md +0 -0
  835. /package/resources/data/deck/training/{p → pages}/2023-01-08T01-06-31-267Z.md +0 -0
  836. /package/resources/data/deck/training/{p → pages}/2023-01-08T01-25-12-557Z.md +0 -0
  837. /package/resources/data/deck/training/{p → pages}/2023-01-08T02-09-07-802Z.md +0 -0
  838. /package/resources/data/deck/training/{p → pages}/2023-01-08T02-09-19-678Z.md +0 -0
  839. /package/resources/data/deck/training/{p → pages}/2023-01-08T02-11-26-333Z.md +0 -0
  840. /package/resources/data/deck/training/{p → pages}/2023-01-08T17-22-48-841Z.md +0 -0
  841. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-46-11-806Z.md +0 -0
  842. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-47-23-682Z.md +0 -0
  843. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-47-32-064Z.md +0 -0
  844. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-47-57-045Z.md +0 -0
  845. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-48-03-791Z.md +0 -0
  846. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-48-32-466Z.md +0 -0
  847. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-48-51-322Z.md +0 -0
  848. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-49-52-741Z.md +0 -0
  849. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-52-03-556Z.md +0 -0
  850. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-57-36-333Z.md +0 -0
  851. /package/resources/data/deck/training/{p → pages}/2023-01-08T20-57-51-136Z.md +0 -0
  852. /package/resources/data/deck/training/{p → pages}/2023-01-09T00-07-37-951Z.md +0 -0
  853. /package/resources/data/deck/training/{p → pages}/2023-01-09T00-35-40-671Z.md +0 -0
  854. /package/resources/data/deck/training/{p → pages}/2023-01-10T01-29-38-148Z.md +0 -0
  855. /package/resources/data/deck/training/{p → pages}/2023-01-10T01-43-12-166Z.md +0 -0
  856. /package/resources/data/deck/training/{p → pages}/2023-01-10T02-21-54-303Z.md +0 -0
  857. /package/resources/data/deck/training/{p → pages}/2023-01-13T19-55-24-735Z.md +0 -0
  858. /package/resources/data/deck/training/{p → pages}/2023-01-13T20-08-27-068Z.md +0 -0
  859. /package/resources/data/deck/training/{p → pages}/2023-01-13T20-23-38-411Z.md +0 -0
  860. /package/resources/data/deck/training/{p → pages}/2023-01-13T20-37-06-267Z.md +0 -0
  861. /package/resources/data/deck/training/{p → pages}/2023-01-13T21-05-57-708Z.md +0 -0
  862. /package/resources/data/deck/training/{p → pages}/2023-01-13T21-48-17-258Z.md +0 -0
  863. /package/resources/data/deck/training/{p → pages}/2023-01-13T22-05-05-799Z.md +0 -0
  864. /package/resources/data/deck/training/{p → pages}/2023-01-13T22-08-30-863Z.md +0 -0
  865. /package/resources/data/deck/training/{p → pages}/2023-01-13T23-01-50-449Z.md +0 -0
  866. /package/resources/data/deck/training/{p → pages}/2023-01-14T00-33-05-958Z.md +0 -0
  867. /package/resources/data/deck/training/{p → pages}/2023-01-14T00-41-59-081Z.md +0 -0
  868. /package/resources/data/deck/training/{p → pages}/2023-01-14T13-50-28-199Z.md +0 -0
  869. /package/resources/data/deck/training/{p → pages}/2023-01-14T13-59-20-275Z.md +0 -0
  870. /package/resources/data/deck/training/{p → pages}/2023-01-14T14-03-29-456Z.md +0 -0
  871. /package/resources/data/deck/training/{p → pages}/2023-01-14T14-27-57-678Z.md +0 -0
  872. /package/resources/data/deck/training/{p → pages}/2023-01-14T17-30-18-228Z.md +0 -0
  873. /package/resources/data/deck/training/{p → pages}/2023-01-14T18-28-39-316Z.md +0 -0
  874. /package/resources/data/deck/training/{p → pages}/2023-01-14T18-28-44-115Z.md +0 -0
  875. /package/resources/data/deck/training/{p → pages}/2023-01-14T18-28-49-548Z.md +0 -0
  876. /package/resources/data/deck/training/{p → pages}/2023-01-14T18-40-13-758Z.md +0 -0
  877. /package/resources/data/deck/training/{p → pages}/2023-01-14T19-29-15-291Z.md +0 -0
  878. /package/resources/data/deck/training/{p → pages}/2023-01-15T20-03-30-073Z.md +0 -0
  879. /package/resources/data/deck/training/{p → pages}/2023-01-15T22-07-52-073Z.md +0 -0
  880. /package/resources/data/deck/training/{p → pages}/2023-01-15T22-22-13-517Z.md +0 -0
  881. /package/resources/data/deck/training/{p → pages}/2023-01-16T16-03-40-770Z.md +0 -0
  882. /package/resources/data/deck/training/{p → pages}/2023-01-16T20-21-56-859Z.md +0 -0
  883. /package/resources/data/deck/training/{p → pages}/2023-01-16T20-24-09-690Z.md +0 -0
  884. /package/resources/data/deck/training/{p → pages}/2023-01-20T12-51-22-646Z.md +0 -0
  885. /package/resources/data/deck/training/{p → pages}/2023-01-20T13-06-46-614Z.md +0 -0
  886. /package/resources/data/deck/training/{p → pages}/2023-01-20T13-08-51-600Z.md +0 -0
  887. /package/resources/data/deck/training/{p → pages}/2023-01-20T15-20-13-363Z.md +0 -0
  888. /package/resources/data/deck/training/{p → pages}/2023-01-20T15-34-58-813Z.md +0 -0
  889. /package/resources/data/deck/training/{p → pages}/2023-01-21T16-33-20-458Z.md +0 -0
  890. /package/resources/data/deck/training/{p → pages}/2023-01-21T16-45-28-263Z.md +0 -0
  891. /package/resources/data/deck/training/{p → pages}/2023-01-21T16-56-25-452Z.md +0 -0
  892. /package/resources/data/deck/training/{p → pages}/2023-01-21T17-28-31-493Z.md +0 -0
  893. /package/resources/data/deck/training/{p → pages}/2023-01-21T19-49-51-918Z.md +0 -0
  894. /package/resources/data/deck/training/{p → pages}/2023-01-21T20-08-24-452Z.md +0 -0
  895. /package/resources/data/deck/training/{p → pages}/2023-01-21T20-35-54-947Z.md +0 -0
  896. /package/resources/data/deck/training/{p → pages}/2023-01-21T20-54-47-603Z.md +0 -0
  897. /package/resources/data/deck/training/{p → pages}/2023-01-21T20-56-28-184Z.md +0 -0
  898. /package/resources/data/deck/training/{p → pages}/2023-01-21T20-57-32-927Z.md +0 -0
  899. /package/resources/data/deck/training/{p → pages}/2023-01-21T23-13-33-394Z.md +0 -0
  900. /package/resources/data/deck/training/{p → pages}/2023-01-28T19-11-37-464Z.md +0 -0
  901. /package/resources/data/deck/training/{p → pages}/2023-01-28T20-43-41-188Z.md +0 -0
  902. /package/resources/data/deck/training/{p → pages}/2023-01-28T20-53-56-476Z.md +0 -0
  903. /package/resources/data/deck/training/{p → pages}/2023-01-28T20-58-43-776Z.md +0 -0
  904. /package/resources/data/deck/training/{p → pages}/2023-01-28T22-18-41-259Z.md +0 -0
  905. /package/resources/data/deck/training/{p → pages}/2023-01-28T22-24-34-808Z.md +0 -0
  906. /package/resources/data/deck/training/{p → pages}/2023-01-29T16-25-24-528Z.md +0 -0
  907. /package/resources/data/deck/training/{p → pages}/2023-01-29T21-14-32-588Z.md +0 -0
  908. /package/resources/data/deck/training/{p → pages}/2023-01-31T19-24-53-504Z.md +0 -0
  909. /package/resources/data/deck/training/{p → pages}/2023-01-31T20-33-55-855Z.md +0 -0
  910. /package/resources/data/deck/training/{p → pages}/2023-01-31T20-34-30-261Z.md +0 -0
  911. /package/resources/data/deck/training/{p → pages}/2023-01-31T20-52-53-367Z.md +0 -0
  912. /package/resources/data/deck/training/{p → pages}/2023-02-04T15-18-35-682Z.md +0 -0
  913. /package/resources/data/deck/training/{p → pages}/2023-02-04T15-49-47-597Z.md +0 -0
  914. /package/resources/data/deck/training/{p → pages}/2023-02-04T18-58-57-808Z.md +0 -0
  915. /package/resources/data/deck/training/{p → pages}/2023-02-04T20-07-11-288Z.md +0 -0
  916. /package/resources/data/deck/training/{p → pages}/2023-02-04T20-09-50-169Z.md +0 -0
  917. /package/resources/data/deck/training/{p → pages}/2023-02-04T20-19-42-740Z.md +0 -0
  918. /package/resources/data/deck/training/{p → pages}/2023-02-04T20-23-56-013Z.md +0 -0
  919. /package/resources/data/deck/training/{p → pages}/2023-02-04T20-28-12-391Z.md +0 -0
  920. /package/resources/data/deck/training/{p → pages}/2023-02-05T00-20-32-554Z.md +0 -0
  921. /package/resources/data/deck/training/{p → pages}/2023-02-05T00-35-56-282Z.md +0 -0
  922. /package/resources/data/deck/training/{p → pages}/2023-02-05T15-36-57-182Z.md +0 -0
  923. /package/resources/data/deck/training/{p → pages}/2023-02-05T17-39-51-712Z.md +0 -0
  924. /package/resources/data/deck/training/{p → pages}/2023-02-05T17-44-53-815Z.md +0 -0
  925. /package/resources/data/deck/training/{p → pages}/2023-02-05T17-45-40-114Z.md +0 -0
  926. /package/resources/data/deck/training/{p → pages}/2023-02-05T18-12-14-489Z.md +0 -0
  927. /package/resources/data/deck/training/{p → pages}/2023-02-06T00-14-54-457Z.md +0 -0
  928. /package/resources/data/deck/training/{p → pages}/2023-06-28T18-03-14-313Z.md +0 -0
  929. /package/resources/data/deck/training/{p → pages}/2023-06-28T18-26-17-290Z.md +0 -0
  930. /package/resources/data/deck/training/{p → pages}/2023-06-28T21-16-24-034Z.md +0 -0
  931. /package/resources/data/deck/training/{p → pages}/2023-06-28T21-16-34-972Z.md +0 -0
  932. /package/resources/data/deck/training/{p → pages}/2023-06-28T21-28-28-379Z.md +0 -0
  933. /package/resources/data/deck/training/{p → pages}/2023-06-29T23-15-10-411Z.md +0 -0
  934. /package/resources/data/deck/training/{p → pages}/2023-07-01T21-54-31-329Z.md +0 -0
  935. /package/resources/data/deck/training/{p → pages}/2023-07-31T00-26-03-842Z.md +0 -0
  936. /package/resources/data/deck/training/{p → pages}/2023-07-31T00-31-51-933Z.md +0 -0
  937. /package/resources/data/deck/training/{p → pages}/2023-10-01T18-29-19-158Z.md +0 -0
  938. /package/resources/data/deck/training/{p → pages}/2023-10-08T20-37-30-658Z.md +0 -0
  939. /package/resources/data/deck/training/{p → pages}/2023-10-08T22-22-11-013Z.md +0 -0
  940. /package/resources/data/deck/training/{t.json → tree.json} +0 -0
@@ -1,4 +1,10 @@
1
- import Component from '../../../../src/component/Base.mjs';
1
+ import Component from '../../../../src/component/Base.mjs';
2
+ import LivePreview from './LivePreview.mjs';
3
+ import {marked} from '../../../../node_modules/marked/lib/marked.esm.js';
4
+
5
+ const
6
+ labCloseRegex = /<!--\s*\/lab\s*-->/g,
7
+ labOpenRegex = /<!--\s*lab\s*-->/g;
2
8
 
3
9
  /**
4
10
  * @class Portal.view.learn.ContentView
@@ -15,46 +21,252 @@ class ContentView extends Component {
15
21
  * @member {String[]} baseCls=['learn-content']
16
22
  * @protected
17
23
  */
18
- baseCls: ['learn-content']
24
+ baseCls: ['learn-content'],
25
+ /**
26
+ * @member {Object} bind
27
+ */
28
+ bind: {
29
+ record: data => data.currentPageRecord
30
+ },
31
+ /**
32
+ * @member {Object} record_=null
33
+ */
34
+ record_: null
35
+ }
36
+
37
+ /**
38
+ * @param {Object} config
39
+ */
40
+ construct(config) {
41
+ super.construct(config);
42
+
43
+ let me = this;
44
+
45
+ me.addDomListeners({
46
+ click : me.onClick,
47
+ intersect: 'onIntersect', // view controller
48
+ scope : me
49
+ });
50
+
51
+ Neo.main.addon.HighlightJS.loadLibrary({
52
+ appName : me.appName,
53
+ highlightJsPath: '../../docs/resources/highlight/highlight.pack.js',
54
+ themePath : '../../docs/resources/highlightjs-custom-github-theme.css'
55
+ })
56
+ }
57
+
58
+ /**
59
+ * Triggered after the mounted config got changed
60
+ * @param {Boolean} value
61
+ * @param {Boolean} oldValue
62
+ * @protected
63
+ */
64
+ afterSetMounted(value, oldValue) {
65
+ super.afterSetMounted(value, oldValue);
66
+
67
+ let me = this;
68
+
69
+ value && setTimeout(() => {
70
+ Neo.main.addon.IntersectionObserver.register({
71
+ callback: 'findTopmostItem',
72
+ id : me.id,
73
+ root : `#${me.parentId}`,
74
+ windowId: me.windowId
75
+ })
76
+ }, 50)
19
77
  }
20
78
 
21
79
  /**
22
- * @member {Object} record=null
80
+ * Triggered after the nextPageRecord config got changed
81
+ * @param {Object} value
82
+ * @param {Object} oldValue
23
83
  */
24
- record = null
84
+ afterSetRecord(value, oldValue) {
85
+ value && this.doFetchContent(value)
86
+ }
87
+
88
+ /**
89
+ * @param {Object} record
90
+ * @returns {Promise<void>}
91
+ */
92
+ async doFetchContent(record) {
93
+ let me = this,
94
+ path = me.getModel().getData('contentPath'),
95
+ content, data, html, modifiedHtml, neoDivs;
96
+
97
+ path += `/pages/${record.id}.md`;
98
+
99
+ if (record.isLeaf && path) {
100
+ data = await fetch(path);
101
+ content = await data.text();
102
+ content = me.updateContentSectionsStore(content); // also replaces ## with h2 tags
103
+ content = `# ${record.name}\n${content}`;
104
+ modifiedHtml = await me.highlightPreContent(content);
105
+ neoDivs = {};
106
+
107
+ // Replace <pre data-neo></neo> with <div id='neo-preview-1'/>
108
+ // and create a map keyed by ID, whose value is the javascript
109
+ // from the <pre>
110
+ modifiedHtml = me.extractNeoContent(modifiedHtml, neoDivs);
111
+
112
+ html = marked.parse(modifiedHtml);
113
+ html = me.insertLabDivs(html);
114
+
115
+ me.toggleCls('lab', record.name?.startsWith('Lab:'));
116
+
117
+ me.html = html;
118
+
119
+ await me.timeout(50);
120
+
121
+ Object.keys(neoDivs).forEach(key => {
122
+ // Create LivePreview for each iteration, set value to neoDivs[key]
123
+ Neo.create(LivePreview, {
124
+ appName : me.appName,
125
+ parentComponent: me,
126
+ parentId : key,
127
+ value : neoDivs[key],
128
+ windowId : me.windowId
129
+ })
130
+ });
131
+
132
+ Neo.main.addon.IntersectionObserver.observe({
133
+ disconnect: true,
134
+ id : me.id,
135
+ observe : '.neo-h2',
136
+ windowId : me.windowId
137
+ })
138
+ }
139
+ }
140
+
141
+ /**
142
+ * @param {String} htmlString
143
+ * @param {Object} map
144
+ * @returns {String}
145
+ */
146
+ extractNeoContent(htmlString, map) {
147
+ // 1. Replace <pre data-neo> with <div id='neo-preview-2'/>
148
+ // and update map with key/value pairs, where the key is the ID and the value is the <pre> contents.
149
+
150
+ // Define a regular expression to match <pre data-javascript> tags
151
+ const preRegex = /<pre\s+data-neo\s*>([\s\S]*?)<\/pre>/g;
152
+
153
+ let count = 0;
154
+
155
+ // Replace the content with tokens, and create a promise to update the corresponding content
156
+ return htmlString.replace(preRegex, (match, preContent) => {
157
+ const key = `pre-live-preview-${Neo.core.IdGenerator.getId()}-${count++}`;
158
+ map[key] = preContent;
159
+ return `<div id="${key}"></div>`
160
+ })
161
+ }
162
+
163
+ /**
164
+ * @param preContent
165
+ * @param token
166
+ * @param id
167
+ * @returns {Object}
168
+ */
169
+ getHighlightPromise(preContent, token, id) {
170
+ // Resolves to an object of the form {after, token}, where after is the updated <pre> tag content
171
+ return Neo.main.addon.HighlightJS.highlightAuto({html: preContent, windowId: this.windowId})
172
+ .then(highlight => ({after: `<pre data-javascript id="${id}">${highlight.value}</pre>`, token}))
173
+ }
174
+
175
+ /**
176
+ * @param {String} htmlString
177
+ * @returns {Promise<*>}
178
+ */
179
+ async highlightPreContent(htmlString) {
180
+ // 1. Replace <pre data-javascript> with unique tokens and create a HighlightJS.highlightAuto promise for each
181
+ // 2. When all promises are resolved, use their values to replace the tokens.
182
+
183
+ // Note that if we were to import HighlightJS directly, we wouldn't need all this async code.
184
+
185
+ // Define a regular expression to match <pre data-javascript> tags
186
+ const preRegex = /<pre\s+data-javascript\s*>([\s\S]*?)<\/pre>/g;
187
+
188
+ // Create an array to store promises for each replacement
189
+ const replacementPromises = [];
190
+ let count = 0;
191
+
192
+ // Replace the content with tokens, and create a promise to update the corresponding content
193
+ let updatedHtml = htmlString.replace(preRegex, (match, preContent) => {
194
+ const token = `__NEO-PRE-TOKEN-${++count}__`;
195
+ replacementPromises.push(this.getHighlightPromise(preContent, token, `pre-preview-${Neo.core.IdGenerator.getId()}`));
196
+ return token
197
+ });
198
+
199
+ // Assert: updateHtml is the original, but with <pre data-javascript> replaced with tokens.
200
+
201
+ // Wait for all replacement promises to resolve
202
+ let replacements = await Promise.all(replacementPromises)
203
+
204
+ // Replace each token with the resolved content
205
+ replacements.forEach((replacement) => updatedHtml = updatedHtml.replace(replacement.token, replacement.after));
206
+
207
+ // Return the final updated HTML string
208
+ return updatedHtml
209
+ }
210
+
211
+ /**
212
+ * @param {String} inputString
213
+ * @returns {String}
214
+ */
215
+ insertLabDivs(inputString) {
216
+ // Replace <!-- lab --> with <div class="lab">
217
+ inputString = inputString.replace(labOpenRegex, '<div class="lab">');
218
+
219
+ // Replace <!-- /lab --> with </div>
220
+ inputString = inputString.replace(labCloseRegex, '</div>');
221
+
222
+ return inputString
223
+ }
25
224
 
26
225
  /**
27
226
  * @param {Object} data
28
227
  */
29
228
  onClick(data) {
30
- let me = this,
229
+ let me = this,
31
230
  record = me.record;
32
231
 
33
232
  if (data.altKey && data.shiftKey && !data.metaKey) {
34
- me.fire('edit', {component: me, record})
233
+ me.fire('edit', { component: me, record })
35
234
  }
36
235
  // Command/windows shift click = refresh
37
236
  else if (!data.altKey && data.shiftKey && data.metaKey) {
38
- me.fire('refresh', {component: me, record})
237
+ me.fire('refresh', { component: me, record })
39
238
  }
40
239
  }
41
240
 
42
241
  /**
43
- *
242
+ * Updates the contentSections VM store and replaces ## with h2 tags
243
+ * @param {String} content
244
+ * @returns {String}
44
245
  */
45
- onConstructed() {
46
- super.onConstructed();
246
+ updateContentSectionsStore(content) {
247
+ let me = this,
248
+ contentArray = content.split('\n'),
249
+ i = 1,
250
+ storeData = [];
47
251
 
48
- let me = this;
252
+ contentArray.forEach((line, index) => {
253
+ if (line.startsWith('##') && line.charAt(2) !== '#') {
254
+ line = line.substring(2).trim();
49
255
 
50
- me.addDomListeners({
51
- click: me.onClick,
52
- scope: me
53
- })
54
- }
256
+ storeData.push({id: i, name: line, sourceId: me.id});
55
257
 
258
+ contentArray[index] = `<h2 class="neo-h2" data-record-id="${i}">${line}</h2>`;
259
+
260
+ i++
261
+ }
262
+ });
263
+
264
+ me.getModel().getStore('contentSections').data = storeData;
265
+
266
+ return contentArray.join('\n')
267
+ }
56
268
  }
57
269
 
58
- Neo.applyClassConfig(ContentView);
270
+ Neo.setupClass(ContentView);
59
271
 
60
272
  export default ContentView;
@@ -1,95 +1,138 @@
1
- import Base from '../../../../src/container/Base.mjs';
1
+ import Container from '../../../../src/container/Base.mjs';
2
+ import MonacoEditor from '../../../../src/component/wrapper/MonacoEditor.mjs'
2
3
  import TabContainer from '../../../../src/tab/Container.mjs';
3
- import TextArea from '../../../../src/form/field/TextArea.mjs';
4
+
5
+ const
6
+ classDeclarationRegex = /class\s+([a-zA-Z$_][a-zA-Z0-9$_]*)\s*(?:extends\s+[a-zA-Z$_][a-zA-Z0-9$_]*)?\s*{[\s\S]*?}/g,
7
+ exportRegex = /export\s+(?:default\s+)?(?:const|let|var|class|function|async\s+function|generator\s+function|async\s+generator\s+function|(\{[\s\S]*?\}))/g,
8
+ importRegex = /import\s+([\w-]+)\s+from\s+['"]([^'"]+)['"]/;
4
9
 
5
10
  /**
6
11
  * @class Portal.view.learn.LivePreview
7
12
  * @extends Neo.container.Base
8
13
  */
9
- class LivePreview extends Base {
14
+ class LivePreview extends Container {
10
15
  static config = {
11
16
  /**
12
17
  * @member {String} className='Portal.view.learn.LivePreview'
13
18
  * @protected
14
19
  */
15
20
  className: 'Portal.view.learn.LivePreview',
16
- baseCls: ['learn-live-preview'],
17
- value_: null,
18
- autoMount: true,
21
+ /**
22
+ * @member {String} ntype='live-preview'
23
+ * @protected
24
+ */
25
+ ntype: 'live-preview',
26
+
27
+ baseCls : ['learn-live-preview'],
28
+ value_ : null,
29
+ autoMount : true,
19
30
  autoRender: true,
20
- height: 400,
21
- layout: 'fit',
31
+ height : 400,
32
+ layout : 'fit',
22
33
  /**
23
34
  * @member {Object[]} items
24
35
  */
25
36
  items: [{
26
- module: TabContainer,
27
- reference: 'tab-container',
28
- cls: 'live-preview-container',
37
+ module : TabContainer,
38
+ cls : ['live-preview-container'],
39
+ reference : 'tab-container',
40
+ removeInactiveCards: false,
41
+
29
42
  items: [{
30
- module: TextArea,
31
- hideLabel: true,
32
- style: {height: '100%'},
33
- reference: 'textArea',
43
+ module : MonacoEditor,
44
+ hideLabel : true,
45
+ style : {height: '100%'},
46
+ reference : 'editor',
34
47
  tabButtonConfig: {
35
48
  text: 'Source'
36
49
  },
37
- listeners: {
38
- change: data => data.component.up({className: 'Portal.view.learn.LivePreview'}).value = data.value
50
+ listeners : {
51
+ editorChange: data => {
52
+ let container = data.component.up({className: 'Portal.view.learn.LivePreview'});
53
+ container.editorValue = data.value;
54
+
55
+ if (container.previewContainer) {
56
+ container.doRunSource()
57
+ }
58
+ }
39
59
  }
40
60
  }, {
41
- tabButtonConfig: {
42
- text: 'Preview'
43
- },
44
- reference: 'preview',
45
- ntype: 'container'
61
+ module : Container,
62
+ reference : 'preview',
63
+ tabButtonConfig: {text: 'Preview'}
46
64
  }]
47
65
  }]
48
66
  }
49
67
 
68
+ /**
69
+ * Link the preview output to different targets
70
+ * @member {Neo.component.Base} previewContainer=null
71
+ */
72
+ previewContainer = null
73
+
74
+ /**
75
+ * @returns {Neo.component.Base|null}
76
+ */
77
+ get tabContainer() {
78
+ return this.getReference('tab-container')
79
+ }
80
+
81
+ /**
82
+ * Triggered after the value config got changed
83
+ * @param {String|null} value
84
+ * @param {String|null} oldValue
85
+ * @protected
86
+ */
50
87
  afterSetValue(value, oldValue) {
51
88
  if (value) {
52
- this.getItem('textArea').value = value;
89
+ this.getItem('editor').value = value?.trim()
53
90
  }
54
91
  }
55
92
 
56
- onConstructed() {
57
- super.onConstructed();
93
+ /**
94
+ *
95
+ */
96
+ async createPopupWindow() {
97
+ let me = this,
98
+ winData = await Neo.Main.getWindowData(),
99
+ rect = await me.getDomRect(me.getReference('preview').id);
58
100
 
59
- let me = this;
101
+ let {height, left, top, width} = rect;
60
102
 
61
- me.getReference('tab-container').on('activeIndexChange', me.onActiveIndexChange, me)
103
+ height -= 50; // popup header in Chrome
104
+ left += winData.screenLeft;
105
+ top += (winData.outerHeight - winData.innerHeight + winData.screenTop);
106
+
107
+ Neo.Main.windowOpen({
108
+ url : `./childapps/preview/index.html?id=${me.id}`,
109
+ windowFeatures: `height=${height},left=${left},top=${top},width=${width}`,
110
+ windowName : me.id
111
+ })
62
112
  }
63
113
 
114
+ /**
115
+ *
116
+ */
64
117
  doRunSource() {
65
- let source = this.value;
66
-
67
- const importRegex = /import\s+([\w-]+)\s+from\s+['"]([^'"]+)['"]/;
68
- const exportRegex = /export\s+(?:default\s+)?(?:const|let|var|class|function|async\s+function|generator\s+function|async\s+generator\s+function|(\{[\s\S]*?\}))/g;
69
-
70
-
71
- const cleanLines = [];
72
- const importPromises = [];
73
- const importModuleNames = [];
74
-
75
- const moduleNameAndPath = [];
76
-
77
- const className = this.findLastClassName(source);
118
+ let me = this,
119
+ source = me.editorValue || me.value;
78
120
 
121
+ const
122
+ cleanLines = [],
123
+ importModuleNames = [],
124
+ moduleNameAndPath = [],
125
+ className = me.findLastClassName(source);
79
126
 
80
127
  source.split('\n').forEach(line => {
81
128
  let importMatch = line.match(importRegex);
129
+
82
130
  if (importMatch) {
83
- let moduleName = importMatch[1];
84
- let path = importMatch[2];
85
- moduleNameAndPath.push({
86
- moduleName,
87
- path
88
- });
89
- // importPromises.push(import(path));
90
- // importPromises.push(import(path).then(module => {
91
- // eval(`const ${moduleName} = module.default;`)
92
- // }));
131
+ let moduleName = importMatch[1],
132
+ path = importMatch[2];
133
+
134
+ moduleNameAndPath.push({moduleName, path});
135
+
93
136
  importModuleNames.push(moduleName);
94
137
  } else if (line.match(exportRegex)) {
95
138
  // Skip export statements
@@ -97,8 +140,9 @@ class LivePreview extends Base {
97
140
  cleanLines.push(line);
98
141
  }
99
142
  });
143
+
100
144
  var params = [];
101
- var vars = [];
145
+ var vars = [];
102
146
  // Figure out the parts of the source we'll be running.
103
147
  // o The promises/import() corresponding to the user's import statements
104
148
  // o The vars holding the name of the imported module based on the module name for each import
@@ -118,8 +162,9 @@ class LivePreview extends Base {
118
162
  let promises = moduleNameAndPath.map(item => {
119
163
  params.push(`${item.moduleName}Module`);
120
164
  vars.push(`const ${item.moduleName} = ${item.moduleName}Module.default`);
121
- return `import("${item.path}")`;
165
+ return `import("${item.path}")`
122
166
  });
167
+
123
168
  const codeString = `
124
169
  Promise.all([
125
170
  ${promises.join(',\n')}
@@ -132,25 +177,43 @@ class LivePreview extends Base {
132
177
  .catch(error=>container.add({ntype:'component',html:error.message}));
133
178
  `;
134
179
 
135
- const container = this.getReference('preview');
180
+ const container = me.getPreviewContainer();
136
181
  container.removeAll();
182
+
137
183
  try {
138
- const dynamicCode = new Function('container', codeString);
139
- dynamicCode(container);
184
+ new Function('container', codeString)(container);
140
185
  } catch (error) {
141
186
  container.add({
142
187
  ntype: 'component',
143
- html: error.message
188
+ html : error.message
144
189
  })
145
190
  }
146
191
  }
147
192
 
148
193
  /**
149
- * @param {String} reference
150
- * @returns {Object|Neo.component.Base|null}
151
- */
152
- getItem(reference, items = this.items) {
153
- let i = 0,
194
+ * @param {String} sourceCode
195
+ * @returns {String|null}
196
+ */
197
+ findLastClassName(sourceCode) {
198
+ let lastClassName = null,
199
+ match;
200
+
201
+ // Iterate through all matches of the regular expression
202
+ while ((match = classDeclarationRegex.exec(sourceCode)) !== null) {
203
+ // Update the last class name found
204
+ lastClassName = match[1]
205
+ }
206
+
207
+ return lastClassName
208
+ }
209
+
210
+ /**
211
+ * @param {String} reference
212
+ * @param {Object[]} items=this.items
213
+ * @returns {Object|Neo.component.Base|null}
214
+ */
215
+ getItem(reference, items=this.items) {
216
+ let i = 0,
154
217
  len = items.length,
155
218
  item,
156
219
  childItem;
@@ -163,13 +226,27 @@ class LivePreview extends Base {
163
226
  childItem = this.getItem(reference, item.items);
164
227
 
165
228
  if (childItem) {
166
- return childItem;
229
+ return childItem
167
230
  }
168
231
  }
169
232
  }
233
+
170
234
  return null
171
235
  }
172
236
 
237
+ /**
238
+ * @returns {Neo.component.Base|null}
239
+ */
240
+ getPreviewContainer() {
241
+ let me = this;
242
+
243
+ if (me.previewContainer) {
244
+ return me.previewContainer
245
+ }
246
+
247
+ return me.getReference('preview')
248
+ }
249
+
173
250
  /**
174
251
  * @param {Object} data
175
252
  * @param {Neo.component.Base} data.item
@@ -178,27 +255,49 @@ class LivePreview extends Base {
178
255
  * @param {Number} data.value
179
256
  */
180
257
  onActiveIndexChange(data) {
181
- if (data.item.reference !== 'preview') return;
182
- this.doRunSource();
258
+ if (data.item.reference === 'preview') {
259
+ this.doRunSource()
260
+ }
261
+
262
+ this.getReference('popout-window-button').hidden = data.value !== 1
183
263
  }
184
- findLastClassName(sourceCode) {
185
- // Define a regular expression to match class declarations
186
- const classDeclarationRegex = /class\s+([a-zA-Z$_][a-zA-Z0-9$_]*)\s*(?:extends\s+[a-zA-Z$_][a-zA-Z0-9$_]*)?\s*{[\s\S]*?}/g;
187
264
 
188
- let match;
189
- let lastClassName = null;
265
+ /**
266
+ *
267
+ */
268
+ onConstructed() {
269
+ super.onConstructed();
190
270
 
191
- // Iterate through all matches of the regular expression
192
- while ((match = classDeclarationRegex.exec(sourceCode)) !== null) {
193
- // Update the last class name found
194
- lastClassName = match[1];
195
- }
271
+ let me = this,
272
+ tabContainer = me.getReference('tab-container');
273
+
274
+ // we want to add a normal (non-header) button
275
+ tabContainer.getTabBar().add({
276
+ handler : me.popoutPreview.bind(me),
277
+ hidden : tabContainer.activeIndex !== 1,
278
+ iconCls : 'far fa-window-maximize',
279
+ reference: 'popout-window-button',
280
+ style : {marginLeft: 'auto'},
281
+ ui : 'ghost'
282
+ });
283
+
284
+ tabContainer.on('activeIndexChange', me.onActiveIndexChange, me)
285
+ }
286
+
287
+ /**
288
+ * @param {Object} data
289
+ */
290
+ async popoutPreview(data) {
291
+ let me = this;
196
292
 
197
- return lastClassName;
293
+ data.component.disabled = true;
294
+ await me.createPopupWindow();
198
295
 
296
+ // this component requires a view controller to manage connected apps
297
+ me.getController()?.connectedApps.push(me.id)
199
298
  }
200
299
  }
201
300
 
202
- Neo.applyClassConfig(LivePreview);
301
+ Neo.setupClass(LivePreview);
203
302
 
204
303
  export default LivePreview;