neo.mjs 6.17.2 → 6.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (323) hide show
  1. package/apps/ServiceWorker.mjs +3 -5
  2. package/apps/colors/README.md +8 -0
  3. package/apps/colors/app.mjs +6 -0
  4. package/apps/colors/childapps/widget/app.mjs +7 -0
  5. package/apps/colors/childapps/widget/index.html +11 -0
  6. package/apps/colors/childapps/widget/neo-config.json +10 -0
  7. package/apps/colors/childapps/widget/view/Viewport.mjs +19 -0
  8. package/apps/colors/index.html +11 -0
  9. package/apps/colors/model/Color.mjs +43 -0
  10. package/apps/colors/neo-config.json +10 -0
  11. package/apps/colors/remotes-api.json +13 -0
  12. package/apps/colors/store/Colors.mjs +24 -0
  13. package/apps/colors/view/BarChartComponent.mjs +64 -0
  14. package/apps/colors/view/HeaderToolbar.mjs +95 -0
  15. package/apps/colors/view/PieChartComponent.mjs +58 -0
  16. package/apps/colors/view/TableContainer.mjs +91 -0
  17. package/apps/colors/view/Viewport.mjs +57 -0
  18. package/apps/colors/view/ViewportController.mjs +277 -0
  19. package/apps/colors/view/ViewportModel.mjs +53 -0
  20. package/apps/portal/Util.mjs +11 -0
  21. package/apps/portal/childapps/preview/neo-config.json +2 -2
  22. package/apps/portal/neo-config.json +2 -1
  23. package/apps/portal/remotes-api.json +13 -0
  24. package/apps/portal/view/HeaderToolbar.mjs +1 -1
  25. package/apps/portal/view/ViewportController.mjs +89 -1
  26. package/apps/portal/view/home/MainContainer.mjs +34 -6
  27. package/apps/portal/view/home/parts/AfterMath.mjs +1 -1
  28. package/apps/portal/view/home/parts/Colors.mjs +98 -0
  29. package/apps/portal/view/home/parts/Helix.mjs +114 -0
  30. package/apps/portal/view/home/parts/HelloWorld.mjs +6 -3
  31. package/apps/portal/view/home/parts/How.mjs +66 -0
  32. package/apps/portal/view/home/parts/MainNeo.mjs +4 -3
  33. package/apps/portal/view/learn/LivePreview.mjs +56 -15
  34. package/apps/portal/view/learn/MainContainerController.mjs +10 -90
  35. package/apps/realworld/api/Article.mjs +1 -3
  36. package/apps/realworld/api/Favorite.mjs +1 -3
  37. package/apps/realworld/api/Profile.mjs +1 -3
  38. package/apps/realworld/api/Tag.mjs +1 -3
  39. package/apps/realworld/api/User.mjs +1 -3
  40. package/apps/realworld2/api/Article.mjs +1 -3
  41. package/apps/realworld2/api/Favorite.mjs +1 -3
  42. package/apps/realworld2/api/Profile.mjs +1 -3
  43. package/apps/realworld2/api/Tag.mjs +1 -3
  44. package/apps/realworld2/api/User.mjs +1 -3
  45. package/apps/realworld2/view/article/HelixContainer.mjs +5 -5
  46. package/buildScripts/webpack/json/myApps.template.json +1 -0
  47. package/docs/app/view/MainContainer.mjs +5 -0
  48. package/docs/app/view/classdetails/MembersList.mjs +1 -1
  49. package/examples/ServiceWorker.mjs +3 -5
  50. package/examples/component/helix/Viewport.mjs +309 -0
  51. package/examples/component/helix/ViewportController.mjs +122 -0
  52. package/examples/component/helix/app.mjs +2 -2
  53. package/examples/component/helix/neo-config.json +0 -1
  54. package/examples/component/multiWindowHelix/Viewport.mjs +11 -3
  55. package/examples/component/multiWindowHelix/ViewportController.mjs +21 -9
  56. package/examples/component/multiWindowHelix/neo-config.json +0 -1
  57. package/examples/fieldWithPrefix/MainContainer.mjs +1 -6
  58. package/examples/list/animate/MainContainerController.mjs +1 -1
  59. package/examples/worker/task/MyTasks.mjs +1 -3
  60. package/package.json +2 -2
  61. package/resources/data/deck/learnneo/pages/Events.md +15 -9
  62. package/resources/data/deck/learnneo/pages/GuideEvents.md +254 -0
  63. package/resources/data/deck/learnneo/pages/WhyNeo-Speed.md +1 -1
  64. package/resources/images/logo/neo_logo_primary.svg +6 -0
  65. package/resources/images/logo/neo_logo_text_primary.svg +5 -0
  66. package/resources/scss/src/apps/colors/BarChartComponent.scss +3 -0
  67. package/resources/scss/src/apps/colors/HeaderToolbar.scss +11 -0
  68. package/resources/scss/src/apps/colors/PieChartComponent.scss +3 -0
  69. package/resources/scss/src/apps/colors/TableContainer.scss +64 -0
  70. package/resources/scss/src/apps/colors/Viewport.scss +9 -0
  71. package/resources/scss/src/apps/portal/HeaderToolbar.scss +142 -124
  72. package/resources/scss/src/apps/portal/home/MainContainer.scss +9 -22
  73. package/resources/scss/src/apps/portal/home/parts/MainNeo.scss +22 -0
  74. package/resources/scss/src/apps/portal/home/preview/PageCodeContainer.scss +1 -1
  75. package/resources/scss/src/examples/component/multiWindowHelix/Viewport.scss +3 -0
  76. package/resources/scss/src/form/field/CheckBox.scss +1 -0
  77. package/resources/scss/src/tab/header/Button.scss +2 -1
  78. package/resources/scss/theme-dark/Global.scss +8 -0
  79. package/resources/scss/theme-dark/button/Base.scss +1 -1
  80. package/resources/scss/theme-dark/tab/header/Button.scss +1 -0
  81. package/resources/scss/theme-light/Global.scss +8 -0
  82. package/resources/scss/theme-light/button/Base.scss +1 -1
  83. package/resources/scss/theme-light/tab/header/Button.scss +1 -0
  84. package/resources/scss/theme-neo-light/Global.scss +53 -53
  85. package/resources/scss/theme-neo-light/button/Base.scss +3 -4
  86. package/resources/scss/theme-neo-light/tab/header/Button.scss +6 -8
  87. package/src/DefaultConfig.mjs +2 -2
  88. package/src/Fetch.mjs +1 -3
  89. package/src/Main.mjs +13 -11
  90. package/src/MicroLoader.mjs +2 -2
  91. package/src/Neo.mjs +27 -26
  92. package/src/Xhr.mjs +1 -3
  93. package/src/button/Base.mjs +6 -4
  94. package/src/button/Split.mjs +10 -9
  95. package/src/calendar/view/EditEventContainer.mjs +13 -12
  96. package/src/calendar/view/MainContainer.mjs +40 -40
  97. package/src/calendar/view/MainContainerModel.mjs +5 -5
  98. package/src/calendar/view/SettingsContainer.mjs +11 -11
  99. package/src/calendar/view/YearComponent.mjs +73 -75
  100. package/src/calendar/view/calendars/ColorsList.mjs +2 -2
  101. package/src/calendar/view/calendars/EditContainer.mjs +2 -2
  102. package/src/calendar/view/calendars/List.mjs +12 -13
  103. package/src/calendar/view/month/Component.mjs +72 -73
  104. package/src/calendar/view/settings/GeneralContainer.mjs +5 -5
  105. package/src/calendar/view/settings/MonthContainer.mjs +5 -5
  106. package/src/calendar/view/settings/WeekContainer.mjs +6 -6
  107. package/src/calendar/view/settings/YearContainer.mjs +4 -4
  108. package/src/calendar/view/week/Component.mjs +47 -57
  109. package/src/calendar/view/week/EventDragZone.mjs +43 -50
  110. package/src/calendar/view/week/TimeAxisComponent.mjs +21 -21
  111. package/src/calendar/view/week/plugin/DragDrop.mjs +53 -45
  112. package/src/calendar/view/week/plugin/EventResizable.mjs +8 -3
  113. package/src/collection/Base.mjs +15 -22
  114. package/src/collection/Filter.mjs +4 -9
  115. package/src/collection/Sorter.mjs +6 -7
  116. package/src/component/Base.mjs +73 -41
  117. package/src/component/Canvas.mjs +9 -9
  118. package/src/component/Carousel.mjs +31 -33
  119. package/src/component/Chip.mjs +9 -9
  120. package/src/component/Circle.mjs +84 -91
  121. package/src/component/Clock.mjs +8 -8
  122. package/src/component/DateSelector.mjs +14 -15
  123. package/src/component/Gallery.mjs +82 -80
  124. package/src/component/Helix.mjs +131 -126
  125. package/src/component/Iframe.mjs +1 -1
  126. package/src/component/Label.mjs +1 -1
  127. package/src/component/Legend.mjs +3 -3
  128. package/src/component/Process.mjs +39 -37
  129. package/src/component/Splitter.mjs +9 -11
  130. package/src/component/StatusBadge.mjs +2 -3
  131. package/src/component/Timer.mjs +62 -68
  132. package/src/component/Toast.mjs +11 -11
  133. package/src/component/Video.mjs +7 -8
  134. package/src/component/mwc/Button.mjs +10 -10
  135. package/src/component/mwc/TextField.mjs +17 -17
  136. package/src/component/wrapper/AmChart.mjs +5 -5
  137. package/src/component/wrapper/CesiumJS.mjs +11 -17
  138. package/src/component/wrapper/GoogleMaps.mjs +58 -35
  139. package/src/component/wrapper/MapboxGL.mjs +112 -79
  140. package/src/container/Accordion.mjs +18 -20
  141. package/src/container/AccordionItem.mjs +12 -11
  142. package/src/container/Base.mjs +24 -23
  143. package/src/container/Panel.mjs +9 -9
  144. package/src/controller/Base.mjs +12 -14
  145. package/src/controller/Component.mjs +60 -66
  146. package/src/core/Base.mjs +5 -8
  147. package/src/core/IdGenerator.mjs +1 -3
  148. package/src/core/Observable.mjs +40 -24
  149. package/src/core/Util.mjs +5 -5
  150. package/src/data/Model.mjs +3 -3
  151. package/src/data/RecordFactory.mjs +3 -6
  152. package/src/data/Store.mjs +34 -34
  153. package/src/data/connection/Fetch.mjs +3 -3
  154. package/src/data/connection/WebSocket.mjs +21 -25
  155. package/src/data/connection/Xhr.mjs +31 -28
  156. package/src/date/DayViewComponent.mjs +1 -1
  157. package/src/date/SelectorContainer.mjs +2 -2
  158. package/src/dialog/Base.mjs +27 -25
  159. package/src/dialog/header/Toolbar.mjs +5 -4
  160. package/src/draggable/DragProxyComponent.mjs +7 -4
  161. package/src/draggable/DragZone.mjs +30 -30
  162. package/src/draggable/DropZone.mjs +7 -7
  163. package/src/draggable/list/DragZone.mjs +18 -18
  164. package/src/draggable/tab/header/toolbar/SortZone.mjs +7 -7
  165. package/src/draggable/toolbar/DragZone.mjs +15 -15
  166. package/src/draggable/toolbar/SortZone.mjs +30 -31
  167. package/src/draggable/tree/DragZone.mjs +9 -9
  168. package/src/filter/BooleanContainer.mjs +3 -3
  169. package/src/filter/NumberContainer.mjs +5 -5
  170. package/src/filter/ToggleOperatorsButton.mjs +5 -5
  171. package/src/form/Fieldset.mjs +26 -26
  172. package/src/form/field/Base.mjs +1 -1
  173. package/src/form/field/CheckBox.mjs +15 -16
  174. package/src/form/field/Color.mjs +13 -15
  175. package/src/form/field/ComboBox.mjs +16 -24
  176. package/src/form/field/Country.mjs +1 -1
  177. package/src/form/field/Date.mjs +3 -4
  178. package/src/form/field/Display.mjs +1 -1
  179. package/src/form/field/Email.mjs +2 -2
  180. package/src/form/field/Number.mjs +51 -56
  181. package/src/form/field/Picker.mjs +2 -2
  182. package/src/form/field/Radio.mjs +1 -1
  183. package/src/form/field/Range.mjs +7 -6
  184. package/src/form/field/Text.mjs +29 -36
  185. package/src/form/field/TextArea.mjs +9 -9
  186. package/src/form/field/Time.mjs +30 -30
  187. package/src/form/field/trigger/Base.mjs +19 -13
  188. package/src/form/field/trigger/Clear.mjs +13 -13
  189. package/src/form/field/trigger/CopyToClipboard.mjs +7 -7
  190. package/src/form/field/trigger/Picker.mjs +2 -2
  191. package/src/form/field/trigger/SpinDown.mjs +1 -1
  192. package/src/form/field/trigger/SpinUp.mjs +1 -1
  193. package/src/form/field/trigger/SpinUpDown.mjs +3 -3
  194. package/src/form/field/trigger/Time.mjs +3 -3
  195. package/src/grid/Container.mjs +33 -33
  196. package/src/grid/View.mjs +20 -22
  197. package/src/grid/header/Button.mjs +12 -12
  198. package/src/grid/header/Toolbar.mjs +4 -4
  199. package/src/layout/Base.mjs +5 -4
  200. package/src/layout/Card.mjs +15 -16
  201. package/src/layout/Fit.mjs +22 -8
  202. package/src/layout/Flexbox.mjs +30 -29
  203. package/src/layout/Form.mjs +15 -15
  204. package/src/layout/Grid.mjs +2 -2
  205. package/src/layout/HBox.mjs +3 -2
  206. package/src/layout/VBox.mjs +3 -2
  207. package/src/list/Base.mjs +45 -47
  208. package/src/list/Chip.mjs +4 -4
  209. package/src/list/Circle.mjs +3 -3
  210. package/src/list/Color.mjs +4 -4
  211. package/src/list/Component.mjs +10 -10
  212. package/src/list/plugin/Animate.mjs +18 -13
  213. package/src/main/DomAccess.mjs +92 -56
  214. package/src/main/DomEvents.mjs +38 -39
  215. package/src/main/addon/AmCharts.mjs +37 -37
  216. package/src/main/addon/AnalyticsByGoogle.mjs +4 -4
  217. package/src/main/addon/CesiumJS.mjs +8 -8
  218. package/src/main/addon/CloneNode.mjs +5 -5
  219. package/src/main/addon/Cookie.mjs +4 -4
  220. package/src/main/addon/DragDrop.mjs +35 -34
  221. package/src/main/addon/GoogleMaps.mjs +19 -19
  222. package/src/main/addon/IntersectionObserver.mjs +20 -1
  223. package/src/main/addon/LocalStorage.mjs +3 -3
  224. package/src/main/addon/MapboxGL.mjs +40 -41
  225. package/src/main/addon/MonacoEditor.mjs +5 -5
  226. package/src/main/addon/Mwc.mjs +6 -6
  227. package/src/main/addon/Navigator.mjs +35 -39
  228. package/src/main/addon/Popover.mjs +5 -6
  229. package/src/main/addon/PrefixField.mjs +1 -2
  230. package/src/main/addon/ServiceWorker.mjs +9 -9
  231. package/src/main/addon/Siesta.mjs +3 -2
  232. package/src/main/addon/Stylesheet.mjs +37 -37
  233. package/src/main/addon/WebComponent.mjs +2 -3
  234. package/src/main/addon/WindowPosition.mjs +18 -18
  235. package/src/main/draggable/sensor/Base.mjs +2 -2
  236. package/src/main/draggable/sensor/Mouse.mjs +15 -15
  237. package/src/main/draggable/sensor/Touch.mjs +24 -23
  238. package/src/main/mixin/DeltaUpdates.mjs +10 -12
  239. package/src/main/mixin/TouchDomEvents.mjs +6 -6
  240. package/src/manager/Base.mjs +4 -4
  241. package/src/manager/Component.mjs +41 -41
  242. package/src/manager/DomEvent.mjs +41 -44
  243. package/src/manager/Focus.mjs +14 -16
  244. package/src/manager/Instance.mjs +2 -4
  245. package/src/manager/Store.mjs +4 -8
  246. package/src/manager/Task.mjs +20 -22
  247. package/src/manager/Toast.mjs +14 -16
  248. package/src/manager/rpc/Api.mjs +1 -3
  249. package/src/manager/rpc/Message.mjs +16 -18
  250. package/src/menu/List.mjs +16 -16
  251. package/src/menu/Panel.mjs +4 -4
  252. package/src/model/Component.mjs +16 -14
  253. package/src/plugin/Base.mjs +2 -0
  254. package/src/plugin/Popover.mjs +1 -1
  255. package/src/plugin/PrefixField.mjs +35 -45
  256. package/src/plugin/Resizable.mjs +86 -101
  257. package/src/plugin/Responsive.mjs +1 -1
  258. package/src/remotes/Api.mjs +4 -6
  259. package/src/selection/CircleModel.mjs +12 -16
  260. package/src/selection/DateSelectorModel.mjs +21 -23
  261. package/src/selection/GalleryModel.mjs +49 -63
  262. package/src/selection/HelixModel.mjs +35 -41
  263. package/src/selection/ListModel.mjs +9 -14
  264. package/src/selection/Model.mjs +31 -31
  265. package/src/selection/TreeAccordionModel.mjs +74 -80
  266. package/src/selection/grid/CellColumnModel.mjs +10 -10
  267. package/src/selection/grid/CellColumnRowModel.mjs +10 -10
  268. package/src/selection/grid/CellModel.mjs +26 -28
  269. package/src/selection/grid/CellRowModel.mjs +24 -24
  270. package/src/selection/grid/ColumnModel.mjs +16 -20
  271. package/src/selection/grid/RowModel.mjs +27 -29
  272. package/src/selection/menu/ListModel.mjs +2 -2
  273. package/src/selection/table/CellColumnModel.mjs +12 -12
  274. package/src/selection/table/CellColumnRowModel.mjs +12 -12
  275. package/src/selection/table/CellModel.mjs +26 -29
  276. package/src/selection/table/CellRowModel.mjs +19 -19
  277. package/src/selection/table/ColumnModel.mjs +18 -22
  278. package/src/selection/table/RowModel.mjs +27 -29
  279. package/src/sitemap/Component.mjs +20 -20
  280. package/src/sitemap/Store.mjs +1 -1
  281. package/src/tab/Container.mjs +15 -15
  282. package/src/tab/Strip.mjs +1 -1
  283. package/src/tab/header/Toolbar.mjs +4 -4
  284. package/src/table/Container.mjs +8 -10
  285. package/src/table/View.mjs +29 -34
  286. package/src/table/header/Button.mjs +18 -18
  287. package/src/table/header/Toolbar.mjs +2 -2
  288. package/src/toolbar/Base.mjs +14 -14
  289. package/src/toolbar/Breadcrumb.mjs +11 -11
  290. package/src/toolbar/Paging.mjs +18 -18
  291. package/src/tooltip/Base.mjs +20 -22
  292. package/src/tree/Accordion.mjs +69 -75
  293. package/src/tree/List.mjs +22 -25
  294. package/src/util/Array.mjs +19 -18
  295. package/src/util/ClassSystem.mjs +9 -9
  296. package/src/util/Css.mjs +2 -2
  297. package/src/util/Date.mjs +9 -9
  298. package/src/util/Function.mjs +2 -2
  299. package/src/util/HashHistory.mjs +3 -5
  300. package/src/util/KeyNavigation.mjs +17 -17
  301. package/src/util/Logger.mjs +9 -9
  302. package/src/util/Matrix.mjs +19 -19
  303. package/src/util/String.mjs +9 -9
  304. package/src/util/Style.mjs +11 -11
  305. package/src/util/VDom.mjs +12 -14
  306. package/src/util/VNode.mjs +29 -29
  307. package/src/vdom/Helper.mjs +84 -93
  308. package/src/vdom/VNode.mjs +1 -1
  309. package/src/worker/App.mjs +19 -16
  310. package/src/worker/Base.mjs +14 -15
  311. package/src/worker/Canvas.mjs +1 -3
  312. package/src/worker/Data.mjs +4 -8
  313. package/src/worker/Manager.mjs +27 -32
  314. package/src/worker/Message.mjs +1 -1
  315. package/src/worker/ServiceBase.mjs +38 -42
  316. package/src/worker/Task.mjs +1 -3
  317. package/src/worker/VDom.mjs +2 -4
  318. package/src/worker/mixin/RemoteMethodAccess.mjs +5 -6
  319. package/apps/portal/view/home/parts/CoolStuff.mjs +0 -82
  320. package/examples/component/helix/MainContainer.mjs +0 -340
  321. /package/resources/images/{Neo_Logo_Blue.svg → logo/neo_logo_secondary.svg} +0 -0
  322. /package/resources/images/{Neo_Logo_Text.svg → logo/neo_logo_text_secondary.svg} +0 -0
  323. /package/resources/images/{Neo_Logo_White.svg → logo/neo_logo_white.svg} +0 -0
@@ -256,12 +256,11 @@ class Component extends BaseComponent {
256
256
  * @param {Boolean} [silent=false]
257
257
  */
258
258
  adjustTotalHeight(data, silent=false) {
259
- let me = this,
260
- rowHeight = data.rowHeight,
261
- rowsPerItem = data.rowsPerItem,
262
- height = data.totalHeight - rowHeight,
263
- i = 0,
264
- gradient = [];
259
+ let me = this,
260
+ {rowHeight, rowsPerItem} = data,
261
+ height = data.totalHeight - rowHeight,
262
+ i = 0,
263
+ gradient = [];
265
264
 
266
265
  for (; i < rowsPerItem; i++) {
267
266
  gradient.push(
@@ -355,27 +354,24 @@ class Component extends BaseComponent {
355
354
  * @protected
356
355
  */
357
356
  afterSetEnableDrag(value, oldValue) {
358
- let me = this;
359
-
360
- if (value && !me.getPlugin({flag: 'dragdrop'})) {
357
+ if (value && !this.getPlugin('calendar-week-dragdrop')) {
361
358
  Promise.all([
362
359
  import('./plugin/DragDrop.mjs'),
363
360
  import('./plugin/EventResizable.mjs')
364
361
  ]).then(modules => {
365
- let me = this,
366
- plugins = me.plugins || [];
362
+ let me = this,
363
+ {appName} = me,
364
+ plugins = me.plugins || [];
367
365
 
368
366
  plugins.push({
369
367
  module : modules[0].default,
370
- appName: me.appName,
371
- flag : 'dragdrop',
368
+ appName,
372
369
  ...me.pluginDragDropConfig
373
370
  }, {
374
371
  module : modules[1].default,
375
- appName : me.appName,
372
+ appName,
376
373
  delegationCls: 'neo-event',
377
374
  directions : ['b', 't'],
378
- flag : 'resizable',
379
375
  ...me.pluginEventResizableConfig
380
376
  });
381
377
 
@@ -391,8 +387,8 @@ class Component extends BaseComponent {
391
387
  * @protected
392
388
  */
393
389
  afterSetEventBorder(value, oldValue) {
394
- let me = this,
395
- cls = me.cls;
390
+ let me = this,
391
+ {cls} = me;
396
392
 
397
393
  oldValue && NeoArray.remove(cls, `neo-event-border-${oldValue}`);
398
394
  value && NeoArray.add( cls, `neo-event-border-${value}`);
@@ -483,8 +479,8 @@ class Component extends BaseComponent {
483
479
  * @protected
484
480
  */
485
481
  afterSetShowWeekends(value, oldValue) {
486
- let me = this,
487
- cls = me.cls;
482
+ let me = this,
483
+ {cls} = me;
488
484
 
489
485
  NeoArray[value ? 'add' : 'remove'](cls, 'neo-show-weekends');
490
486
 
@@ -504,7 +500,7 @@ class Component extends BaseComponent {
504
500
  */
505
501
  afterSetTimeAxisPosition(value, oldValue) {
506
502
  let me = this,
507
- cls = me.cls,
503
+ {cls} = me,
508
504
  timeAxisContainer = me.getColumnTimeAxisContainer();
509
505
 
510
506
  NeoArray[value === 'end' ? 'add' : 'remove'](cls, 'neo-timeaxis-end');
@@ -681,17 +677,19 @@ class Component extends BaseComponent {
681
677
  */
682
678
  onEventDoubleClick(data) {
683
679
  if (this.data.events.enableEdit) {
684
- !data.path[0].cls.includes('neo-event') && data.path.shift();
680
+ let {path} = data;
681
+
682
+ !path[0].cls.includes('neo-event') && path.shift();
685
683
 
686
684
  let me = this,
687
- editEventContainer = me.owner.editEventContainer,
688
- eventNode = data.path[0],
685
+ {editEventContainer} = me.owner,
686
+ eventNode = path[0],
689
687
  eventVdom = VDomUtil.findVdomChild(me.vdom, eventNode.id).vdom,
690
688
  record = me.eventStore.get(eventVdom.flag),
691
- style = editEventContainer.style;
689
+ {style} = editEventContainer;
692
690
 
693
691
  Object.assign(style, {left: `${eventNode.rect.width + 15}px`, top: eventVdom.style.top});
694
- editEventContainer.setSilent({parentId: data.path[1].id, record, style});
692
+ editEventContainer.setSilent({parentId: path[1].id, record, style});
695
693
  editEventContainer.render(true)
696
694
  }
697
695
  }
@@ -716,8 +714,7 @@ class Component extends BaseComponent {
716
714
  * @param {Object[]} data.path
717
715
  */
718
716
  onFocusChange(data) {
719
- let oldPath = data.oldPath,
720
- path = data.path;
717
+ let {oldPath, path} = data;
721
718
 
722
719
  oldPath?.[0]?.cls.includes('neo-event') && Neo.applyDeltas(this.appName, {id: oldPath[0].id, cls: {remove: ['neo-focus']}});
723
720
  path ?.[0]?.cls.includes('neo-event') && Neo.applyDeltas(this.appName, {id: path[0] .id, cls: {add: ['neo-focus']}})
@@ -742,15 +739,13 @@ class Component extends BaseComponent {
742
739
  */
743
740
  onWheel(data) {
744
741
  if (!this.isUpdating && Math.abs(data.deltaX) > Math.abs(data.deltaY)) {
745
- let me = this,
746
- columns = me.getColumnContainer(),
747
- columnsBuffer = me.columnsBuffer,
748
- columnsVisible = me.columnsVisible,
749
- firstColumnDate = me.firstColumnDate,
750
- header = me.getHeaderContainer(),
751
- i = 0,
752
- timeAxisWidth = 50,
753
- width = data.clientWidth - timeAxisWidth,
742
+ let me = this,
743
+ columns = me.getColumnContainer(),
744
+ {columnsBuffer, columnsVisible, firstColumnDate} = me,
745
+ header = me.getHeaderContainer(),
746
+ i = 0,
747
+ timeAxisWidth = 50,
748
+ width = data.clientWidth - timeAxisWidth,
754
749
  config, date, scrollValue;
755
750
 
756
751
  // console.log(data.scrollLeft, Math.round(data.scrollLeft / (data.clientWidth - timeAxisWidth) * 7));
@@ -838,17 +833,13 @@ class Component extends BaseComponent {
838
833
  if (!me.mounted) {
839
834
  me.needsEventUpdate = true
840
835
  } else {
841
- let calendarStore = me.calendarStore,
842
- eventStore = me.eventStore,
843
- timeAxis = me.timeAxis,
844
- endTime = timeAxis.getTime(me.endTime),
845
- startTime = timeAxis.getTime(me.startTime),
846
- totalTime = endTime - startTime,
847
- date = DateUtil.clone(me.firstColumnDate),
848
- vdom = me.vdom,
849
- content = me.getColumnContainer(),
850
- j = startIndex,
851
- showEventEndTime = me.showEventEndTime,
836
+ let {calendarStore, eventStore, showEventEndTime, timeAxis, vdom} = me,
837
+ endTime = timeAxis.getTime(me.endTime),
838
+ startTime = timeAxis.getTime(me.startTime),
839
+ totalTime = endTime - startTime,
840
+ date = DateUtil.clone(me.firstColumnDate),
841
+ content = me.getColumnContainer(),
842
+ j = startIndex,
852
843
  calendarRecord, column, dayRecords, duration, endDate, eventCls, eventIntervals, hasOverflow, height, i,
853
844
  len, record, recordKey, startDate, startHours, top;
854
845
 
@@ -940,7 +931,7 @@ class Component extends BaseComponent {
940
931
  date.setDate(date.getDate() + 1)
941
932
  }
942
933
 
943
- me[silent ? '_vdom' : 'vdom'] = vdom
934
+ !silent && me.update()
944
935
  }
945
936
  }
946
937
 
@@ -949,13 +940,12 @@ class Component extends BaseComponent {
949
940
  * @param {Boolean} [silent=false]
950
941
  */
951
942
  updateHeader(create=false, silent=false) {
952
- let me = this,
953
- date = me.currentDate, // cloned
954
- vdom = me.vdom,
955
- content = me.getColumnContainer(),
956
- header = me.getHeaderContainer(),
957
- i = 0,
958
- showWeekends = me.showWeekends,
943
+ let me = this,
944
+ {showWeekends} = me,
945
+ date = me.currentDate, // cloned
946
+ content = me.getColumnContainer(),
947
+ header = me.getHeaderContainer(),
948
+ i = 0,
959
949
  columnCls, currentDate, currentDay, dateCls, headerId, removeDom;
960
950
 
961
951
  me.setFirstColumnDate(date);
@@ -998,13 +988,13 @@ class Component extends BaseComponent {
998
988
 
999
989
  Object.assign(header.cn[i], {id: headerId, removeDom});
1000
990
  Object.assign(header.cn[i].cn[0], {html: me.intlFormat_day.format(date), id: `${headerId}_day`});
1001
- Object.assign(header.cn[i].cn[1], {cls: dateCls, html: currentDate, id: `${headerId}_date`});
991
+ Object.assign(header.cn[i].cn[1], {cls: dateCls, html: currentDate, id: `${headerId}_date`})
1002
992
  }
1003
993
 
1004
994
  date.setDate(date.getDate() + 1)
1005
995
  }
1006
996
 
1007
- me[silent ? '_vdom' : 'vdom'] = vdom
997
+ !silent && me.update()
1008
998
  }
1009
999
  }
1010
1000
 
@@ -112,7 +112,7 @@ class EventDragZone extends DragZone {
112
112
  *
113
113
  */
114
114
  addBodyCursorCls() {
115
- Neo.applyDeltas(this.appName, {id: 'document.body', cls: {add: ['neo-cursor-move']}});
115
+ Neo.applyDeltas(this.appName, {id: 'document.body', cls: {add: ['neo-cursor-move']}})
116
116
  }
117
117
 
118
118
  /**
@@ -123,13 +123,13 @@ class EventDragZone extends DragZone {
123
123
  adjustEndDate(date) {
124
124
  if (date.getHours() === 0 && date.getMinutes() === 0) {
125
125
  // if an event ends at 24:00, change it to 23:59 => otherwise the day increases by 1
126
- date.setMinutes(date.getMinutes() - 1);
126
+ date.setMinutes(date.getMinutes() - 1)
127
127
  } else if (!(date.getHours() === 23 && date.getMinutes() === 59) && date.getMinutes() % this.intervalSize !== 0) {
128
128
  // otherwise switch non interval based values back
129
- date.setMinutes(date.getMinutes() + 1);
129
+ date.setMinutes(date.getMinutes() + 1)
130
130
  }
131
131
 
132
- return date;
132
+ return date
133
133
  }
134
134
 
135
135
  /**
@@ -149,7 +149,7 @@ class EventDragZone extends DragZone {
149
149
  id : me.dragProxy.id,
150
150
  index : 0,
151
151
  parentId: value
152
- });
152
+ })
153
153
  }
154
154
  }
155
155
  }
@@ -181,15 +181,15 @@ class EventDragZone extends DragZone {
181
181
  config.cls.push('neo-focus');
182
182
 
183
183
  if (component) {
184
- config.cls.push(component.getTheme());
184
+ config.cls.push(component.getTheme())
185
185
  }
186
186
 
187
187
  if (clone.cls && !me.useProxyWrapper) {
188
- config.cls.push(...clone.cls);
188
+ config.cls.push(...clone.cls)
189
189
  }
190
190
 
191
191
  if (me.addDragProxyCls) {
192
- NeoArray.add(config.cls, me.dragProxyCls);
192
+ NeoArray.add(config.cls, me.dragProxyCls)
193
193
  }
194
194
 
195
195
  Object.assign(config.style, {
@@ -198,7 +198,7 @@ class EventDragZone extends DragZone {
198
198
  width : `${data.width}px`
199
199
  });
200
200
 
201
- me.dragProxy = Neo.create(config);
201
+ me.dragProxy = Neo.create(config)
202
202
  }
203
203
 
204
204
  /**
@@ -209,14 +209,14 @@ class EventDragZone extends DragZone {
209
209
  dragEnd(data) {
210
210
  super.dragEnd(data);
211
211
 
212
- let me = this,
213
- owner = me.owner,
214
- record = me.eventRecord,
212
+ let me = this,
213
+ {owner} = me,
214
+ record = me.eventRecord,
215
215
  endDate, startDate;
216
216
 
217
217
  if (me.keepStartDate) {
218
218
  endDate = me.newEndDate;
219
- startDate = me.newStartDate || record.startDate;
219
+ startDate = me.newStartDate || record.startDate
220
220
  } else {
221
221
  startDate = new Date(VDomUtil.findVdomChild(owner.vdom, me.proxyParentId).vdom.flag + 'T00:00:00.000Z');
222
222
  startDate.setHours(me.axisStartTime);
@@ -224,10 +224,10 @@ class EventDragZone extends DragZone {
224
224
 
225
225
  if (me.keepEndDate) {
226
226
  endDate = me.newEndDate || record.endDate;
227
- startDate = me.newStartDate || startDate;
227
+ startDate = me.newStartDate || startDate
228
228
  } else {
229
229
  endDate = DateUtil.clone(startDate);
230
- endDate.setMinutes(endDate.getMinutes() + me.eventDuration);
230
+ endDate.setMinutes(endDate.getMinutes() + me.eventDuration)
231
231
  }
232
232
  }
233
233
 
@@ -252,7 +252,7 @@ class EventDragZone extends DragZone {
252
252
  // see: https://github.com/neomjs/neo/issues/2392
253
253
 
254
254
  owner.getModel().getStore('events').doSort();
255
- owner.updateEvents();
255
+ owner.updateEvents()
256
256
  }
257
257
 
258
258
  /**
@@ -260,20 +260,13 @@ class EventDragZone extends DragZone {
260
260
  */
261
261
  dragMove(data) {
262
262
  let me = this,
263
- axisEndTime = me.axisEndTime,
264
- axisStartTime = me.axisStartTime,
265
- columnHeight = me.columnHeight,
266
- eventDuration = me.eventDuration,
263
+ {axisEndTime, axisStartTime, columnHeight, eventDuration, intervalSize, keepEndDate, keepStartDate, owner} = me,
267
264
  i = 0,
268
- intervalSize = me.intervalSize,
269
- keepEndDate = me.keepEndDate,
270
- keepStartDate = me.keepStartDate,
271
265
  path = data.targetPath,
272
266
  len = path.length,
273
- owner = me.owner,
274
267
  record = me.eventRecord,
275
268
  switchDirection = false,
276
- timeAxis = owner.timeAxis,
269
+ {timeAxis} = owner,
277
270
  axisStartDate, currentInterval, deltas, duration, endDate, eventIntervals, height, intervalHeight,
278
271
  intervals, limitInterval, minimumEventIntervals, position, startDate, startInterval;
279
272
 
@@ -282,7 +275,7 @@ class EventDragZone extends DragZone {
282
275
  for (; i < len; i++) {
283
276
  if (path[i].cls.includes('neo-c-w-column')) {
284
277
  me.proxyParentId = path[i].id;
285
- break;
278
+ break
286
279
  }
287
280
  }
288
281
  }
@@ -304,7 +297,7 @@ class EventDragZone extends DragZone {
304
297
  startDate.setHours(axisStartTime);
305
298
  startDate.setMinutes(0);
306
299
 
307
- eventDuration = (endDate - startDate) / 60 / 1000; // duration in minutes
300
+ eventDuration = (endDate - startDate) / 60 / 1000 // duration in minutes
308
301
  }
309
302
  }
310
303
 
@@ -315,13 +308,13 @@ class EventDragZone extends DragZone {
315
308
  endDate.setHours(axisEndTime);
316
309
  endDate.setMinutes(0);
317
310
 
318
- eventDuration = (endDate - startDate) / 60 / 1000; // duration in minutes
311
+ eventDuration = (endDate - startDate) / 60 / 1000 // duration in minutes
319
312
  }
320
313
  }
321
314
 
322
315
  if (!keepEndDate) {
323
316
  // events must not end after the last visible interval
324
- currentInterval = Math.min(currentInterval, intervals - (eventDuration / intervalSize));
317
+ currentInterval = Math.min(currentInterval, intervals - (eventDuration / intervalSize))
325
318
  }
326
319
 
327
320
  deltas = [{
@@ -343,7 +336,7 @@ class EventDragZone extends DragZone {
343
336
  if (me.enableResizingAcrossOppositeEdge) {
344
337
  if (me.forceUpdate && currentInterval > limitInterval -minimumEventIntervals && currentInterval < limitInterval + minimumEventIntervals) {
345
338
  // when we resize back to the original direction, keep the min interval until we snap back
346
- return;
339
+ return
347
340
  } else if (currentInterval >= limitInterval + minimumEventIntervals) {
348
341
  switchDirection = true;
349
342
  me.forceUpdate = true;
@@ -360,15 +353,15 @@ class EventDragZone extends DragZone {
360
353
  me.newStartDate = startDate;
361
354
 
362
355
  duration = (endDate - startDate) / 60 / 60 / 1000; // duration in hours
363
- deltas[0].style.top = `calc(${limitInterval * intervalHeight / columnHeight * 100}% + 1px)`;
356
+ deltas[0].style.top = `calc(${limitInterval * intervalHeight / columnHeight * 100}% + 1px)`
364
357
  } else {
365
358
  me.forceUpdate = false;
366
- me.newStartDate = null;
359
+ me.newStartDate = null
367
360
  }
368
361
  }
369
362
 
370
363
  if (!switchDirection) {
371
- currentInterval = Math.min(currentInterval, limitInterval - minimumEventIntervals);
364
+ currentInterval = Math.min(currentInterval, limitInterval - minimumEventIntervals)
372
365
  }
373
366
 
374
367
  } else if (keepStartDate) {
@@ -398,40 +391,40 @@ class EventDragZone extends DragZone {
398
391
  position = (eventDuration / intervalSize + currentInterval) * intervalHeight; // snap to valid intervals
399
392
  position = position / columnHeight * 100;
400
393
 
401
- deltas[0].style.top = `calc(${position}% + 1px)`;
394
+ deltas[0].style.top = `calc(${position}% + 1px)`
402
395
  } else if (me.forceUpdate && currentInterval < limitInterval + minimumEventIntervals) {
403
396
  // when we resize back to the original direction, keep the min interval until we snap back
404
- return;
397
+ return
405
398
  } else if (me.forceUpdate && currentInterval >= limitInterval + minimumEventIntervals) {
406
399
  if (me.currentInterval !== currentInterval) {
407
400
  me.forceUpdate = false;
408
401
  me.newStartDate = null;
409
- deltas[0].style.top = `calc(${startInterval * intervalHeight / columnHeight * 100}% + 1px)`;
402
+ deltas[0].style.top = `calc(${startInterval * intervalHeight / columnHeight * 100}% + 1px)`
410
403
  }
411
404
  }
412
405
  }
413
406
 
414
407
  if (!switchDirection) {
415
- currentInterval = Math.max(currentInterval, limitInterval + minimumEventIntervals);
408
+ currentInterval = Math.max(currentInterval, limitInterval + minimumEventIntervals)
416
409
  }
417
410
  }
418
411
  }
419
412
 
420
413
  if (!keepStartDate) {
421
414
  // events must not start before the first visible interval
422
- currentInterval = Math.max(0, currentInterval);
415
+ currentInterval = Math.max(0, currentInterval)
423
416
  }
424
417
 
425
418
  if (me.currentInterval !== currentInterval) {
426
419
  if (!switchDirection) {
427
420
  if (!keepEndDate) {
428
421
  endDate.setHours(axisStartTime);
429
- endDate.setMinutes(eventDuration + currentInterval * intervalSize);
422
+ endDate.setMinutes(eventDuration + currentInterval * intervalSize)
430
423
  }
431
424
 
432
425
  if (keepStartDate) {
433
426
  me.newEndDate = endDate;
434
- duration = (endDate - record.startDate) / 60 / 60 / 1000; // duration in hours
427
+ duration = (endDate - record.startDate) / 60 / 60 / 1000 // duration in hours
435
428
  } else {
436
429
  startDate.setHours(axisStartTime);
437
430
  startDate.setMinutes(currentInterval * intervalSize);
@@ -439,11 +432,11 @@ class EventDragZone extends DragZone {
439
432
  position = currentInterval * intervalHeight; // snap to valid intervals
440
433
  position = position / columnHeight * 100;
441
434
 
442
- deltas[0].style.top = `calc(${position}% + 1px)`;
435
+ deltas[0].style.top = `calc(${position}% + 1px)`
443
436
  }
444
437
 
445
438
  if (keepEndDate) {
446
- duration = (record.endDate - startDate) / 60 / 60 / 1000; // duration in hours
439
+ duration = (record.endDate - startDate) / 60 / 60 / 1000 // duration in hours
447
440
  }
448
441
  }
449
442
 
@@ -456,7 +449,7 @@ class EventDragZone extends DragZone {
456
449
 
457
450
  if (keepEndDate || keepStartDate) {
458
451
  height = Math.round(duration / (axisEndTime - axisStartTime) * 100 * 1000) / 1000;
459
- deltas[0].style.height = `calc(${height}% - 2px)`;
452
+ deltas[0].style.height = `calc(${height}% - 2px)`
460
453
  }
461
454
 
462
455
  deltas.push({
@@ -475,7 +468,7 @@ class EventDragZone extends DragZone {
475
468
  cls: {add: ['neo-overflow']}
476
469
  });
477
470
 
478
- me.hasOverflow = true;
471
+ me.hasOverflow = true
479
472
  }
480
473
  } else if (me.hasOverflow) {
481
474
  deltas.push({
@@ -483,14 +476,14 @@ class EventDragZone extends DragZone {
483
476
  cls: {remove: ['neo-overflow']}
484
477
  });
485
478
 
486
- me.hasOverflow = false;
479
+ me.hasOverflow = false
487
480
  }
488
481
 
489
- Neo.applyDeltas(me.appName, deltas);
482
+ Neo.applyDeltas(me.appName, deltas)
490
483
  }
491
484
  }
492
485
 
493
- me.currentInterval = currentInterval;
486
+ me.currentInterval = currentInterval
494
487
  }
495
488
  }
496
489
 
@@ -524,15 +517,15 @@ class EventDragZone extends DragZone {
524
517
  offsetY
525
518
  });
526
519
 
527
- me.dragMove(data);
528
- });
520
+ me.dragMove(data)
521
+ })
529
522
  }
530
523
 
531
524
  /**
532
525
  *
533
526
  */
534
527
  removeBodyCursorCls() {
535
- Neo.applyDeltas(this.appName, {id: 'document.body', cls: {remove: ['neo-cursor-move']}});
528
+ Neo.applyDeltas(this.appName, {id: 'document.body', cls: {remove: ['neo-cursor-move']}})
536
529
  }
537
530
  }
538
531
 
@@ -68,7 +68,7 @@ class TimeAxisComponent extends Component {
68
68
  let me = this;
69
69
 
70
70
  me.createItems();
71
- me.afterSetRowHeight(me.rowHeight, 0);
71
+ me.afterSetRowHeight(me.rowHeight, 0)
72
72
  }
73
73
 
74
74
  /**
@@ -83,10 +83,10 @@ class TimeAxisComponent extends Component {
83
83
 
84
84
  // todo: handle 24:00 as 23:59
85
85
  if (!value) {
86
- me._endTime = '24:00';
86
+ me._endTime = '24:00'
87
87
  }
88
88
 
89
- me.afterSetRowHeight(me.rowHeight, 0);
89
+ me.afterSetRowHeight(me.rowHeight, 0)
90
90
  }
91
91
  }
92
92
 
@@ -98,7 +98,7 @@ class TimeAxisComponent extends Component {
98
98
  */
99
99
  afterSetInterval(value, oldValue) {
100
100
  if (oldValue !== undefined) {
101
- this.afterSetRowHeight(this.rowHeight, 0);
101
+ this.afterSetRowHeight(this.rowHeight, 0)
102
102
  }
103
103
  }
104
104
 
@@ -110,14 +110,13 @@ class TimeAxisComponent extends Component {
110
110
  */
111
111
  afterSetRowHeight(value, oldValue) {
112
112
  if (oldValue !== undefined && this.vdom.cn) {
113
- let me = this,
114
- endTime = me.getTime(me.endTime),
115
- startTime = me.getTime(me.startTime),
116
- vdom = me.vdom,
117
- rowHeight = me.rowHeight,
118
- rowsPerItem = me.getRowsPerItem(),
119
- itemHeight = rowsPerItem * rowHeight + rowsPerItem, // rowsPerItem * 1px borders
120
- totalHeight = rowHeight + ((endTime - startTime) * itemHeight),
113
+ let me = this,
114
+ endTime = me.getTime(me.endTime),
115
+ startTime = me.getTime(me.startTime),
116
+ {rowHeight, vdom} = me,
117
+ rowsPerItem = me.getRowsPerItem(),
118
+ itemHeight = rowsPerItem * rowHeight + rowsPerItem, // rowsPerItem * 1px borders
119
+ totalHeight = rowHeight + ((endTime - startTime) * itemHeight),
121
120
  i, itemStyle;
122
121
 
123
122
  Object.assign(vdom.style, {
@@ -134,9 +133,9 @@ class TimeAxisComponent extends Component {
134
133
  };
135
134
 
136
135
  if (i === startTime) {
137
- itemStyle.marginTop = `${-2 - rowHeight * (rowsPerItem === 1 ? 0.5 : rowsPerItem === 2 ? 1 : 2)}px`;
136
+ itemStyle.marginTop = `${-2 - rowHeight * (rowsPerItem === 1 ? 0.5 : rowsPerItem === 2 ? 1 : 2)}px`
138
137
  } else {
139
- delete itemStyle.marginTop;
138
+ delete itemStyle.marginTop
140
139
  }
141
140
 
142
141
  vdom.cn[i].style = itemStyle;
@@ -149,7 +148,7 @@ class TimeAxisComponent extends Component {
149
148
  rowHeight,
150
149
  rowsPerItem,
151
150
  totalHeight
152
- });
151
+ })
153
152
  }
154
153
  }
155
154
 
@@ -161,7 +160,7 @@ class TimeAxisComponent extends Component {
161
160
  */
162
161
  afterSetStartTime(value, oldValue) {
163
162
  if (oldValue !== undefined) {
164
- this.afterSetRowHeight(this.rowHeight, 0);
163
+ this.afterSetRowHeight(this.rowHeight, 0)
165
164
  }
166
165
  }
167
166
 
@@ -172,14 +171,14 @@ class TimeAxisComponent extends Component {
172
171
  * @protected
173
172
  */
174
173
  beforeSetInterval(value, oldValue) {
175
- return this.beforeSetEnumValue(value, oldValue, 'interval');
174
+ return this.beforeSetEnumValue(value, oldValue, 'interval')
176
175
  }
177
176
 
178
177
  /**
179
178
  *
180
179
  */
181
180
  createItems() {
182
- let vdom = this.vdom,
181
+ let {vdom} = this,
183
182
  html, i;
184
183
 
185
184
  vdom.cn = [];
@@ -190,7 +189,7 @@ class TimeAxisComponent extends Component {
190
189
  vdom.cn.push({
191
190
  cls : ['neo-c-w-timeaxis-item'],
192
191
  cn : [{html: html}]
193
- });
192
+ })
194
193
  }
195
194
  }
196
195
 
@@ -199,7 +198,8 @@ class TimeAxisComponent extends Component {
199
198
  * @returns {Number}
200
199
  */
201
200
  getRowsPerItem() {
202
- return this.interval === 60 ? 1 : this.interval === 30 ? 2 : 4;
201
+ let {interval} = this;
202
+ return interval === 60 ? 1 : interval === 30 ? 2 : 4
203
203
  }
204
204
 
205
205
  /**
@@ -208,7 +208,7 @@ class TimeAxisComponent extends Component {
208
208
  * @returns {Number}
209
209
  */
210
210
  getTime(value) {
211
- return value.split(':').map(Number)[0];
211
+ return value.split(':').map(Number)[0]
212
212
  }
213
213
  }
214
214