neo.mjs 6.17.1 → 6.18.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 (329) 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 +44 -27
  25. package/apps/portal/view/Viewport.mjs +12 -1
  26. package/apps/portal/view/ViewportController.mjs +89 -1
  27. package/apps/portal/view/home/MainContainer.mjs +27 -60
  28. package/apps/portal/view/home/parts/AfterMath.mjs +58 -0
  29. package/apps/portal/view/home/parts/Colors.mjs +74 -0
  30. package/apps/portal/view/home/parts/Features.mjs +52 -0
  31. package/apps/portal/view/home/parts/Helix.mjs +75 -0
  32. package/apps/portal/view/home/parts/HelloWorld.mjs +82 -0
  33. package/apps/portal/view/home/parts/MainNeo.mjs +55 -0
  34. package/apps/portal/view/home/preview/PageCodeContainer.mjs +55 -0
  35. package/apps/portal/view/learn/LivePreview.mjs +72 -29
  36. package/apps/portal/view/learn/MainContainerController.mjs +10 -90
  37. package/apps/realworld/api/Article.mjs +1 -3
  38. package/apps/realworld/api/Favorite.mjs +1 -3
  39. package/apps/realworld/api/Profile.mjs +1 -3
  40. package/apps/realworld/api/Tag.mjs +1 -3
  41. package/apps/realworld/api/User.mjs +1 -3
  42. package/apps/realworld2/api/Article.mjs +1 -3
  43. package/apps/realworld2/api/Favorite.mjs +1 -3
  44. package/apps/realworld2/api/Profile.mjs +1 -3
  45. package/apps/realworld2/api/Tag.mjs +1 -3
  46. package/apps/realworld2/api/User.mjs +1 -3
  47. package/apps/realworld2/view/article/HelixContainer.mjs +5 -5
  48. package/buildScripts/webpack/json/myApps.template.json +1 -0
  49. package/buildScripts/webpack/webpack.server.config.mjs +4 -1
  50. package/docs/app/view/MainContainer.mjs +5 -0
  51. package/docs/app/view/classdetails/MembersList.mjs +1 -1
  52. package/examples/ServiceWorker.mjs +3 -5
  53. package/examples/component/helix/Viewport.mjs +309 -0
  54. package/examples/component/helix/ViewportController.mjs +122 -0
  55. package/examples/component/helix/app.mjs +2 -2
  56. package/examples/component/helix/neo-config.json +0 -1
  57. package/examples/component/multiWindowHelix/Viewport.mjs +11 -3
  58. package/examples/component/multiWindowHelix/ViewportController.mjs +21 -9
  59. package/examples/component/multiWindowHelix/neo-config.json +0 -1
  60. package/examples/fieldWithPrefix/MainContainer.mjs +1 -6
  61. package/examples/list/animate/MainContainerController.mjs +1 -1
  62. package/examples/worker/task/MyTasks.mjs +1 -3
  63. package/package.json +5 -5
  64. package/resources/data/deck/learnneo/pages/GuideEvents.md +131 -0
  65. package/resources/data/deck/learnneo/pages/WhyNeo-Speed.md +1 -1
  66. package/resources/images/logo/neo_logo_primary.svg +6 -0
  67. package/resources/images/logo/neo_logo_secondary.svg +6 -0
  68. package/resources/images/logo/neo_logo_text_primary.svg +5 -0
  69. package/resources/images/logo/neo_logo_text_secondary.svg +5 -0
  70. package/resources/images/logo/neo_logo_white.svg +6 -0
  71. package/resources/scss/src/apps/colors/BarChartComponent.scss +3 -0
  72. package/resources/scss/src/apps/colors/HeaderToolbar.scss +11 -0
  73. package/resources/scss/src/apps/colors/PieChartComponent.scss +3 -0
  74. package/resources/scss/src/apps/colors/TableContainer.scss +64 -0
  75. package/resources/scss/src/apps/colors/Viewport.scss +9 -0
  76. package/resources/scss/src/apps/portal/HeaderToolbar.scss +189 -17
  77. package/resources/scss/src/apps/portal/home/MainContainer.scss +46 -20
  78. package/resources/scss/src/apps/portal/home/parts/Features.scss +3 -0
  79. package/resources/scss/src/apps/portal/home/preview/PageCodeContainer.scss +115 -0
  80. package/resources/scss/src/component/Base.scss +2 -0
  81. package/resources/scss/src/examples/component/multiWindowHelix/Viewport.scss +3 -0
  82. package/resources/scss/src/form/field/CheckBox.scss +1 -0
  83. package/resources/scss/src/tab/header/Button.scss +2 -1
  84. package/resources/scss/theme-dark/Global.scss +8 -0
  85. package/resources/scss/theme-dark/button/Base.scss +1 -1
  86. package/resources/scss/theme-dark/tab/header/Button.scss +1 -0
  87. package/resources/scss/theme-light/Global.scss +8 -0
  88. package/resources/scss/theme-light/button/Base.scss +1 -1
  89. package/resources/scss/theme-light/tab/header/Button.scss +1 -0
  90. package/resources/scss/theme-neo-light/Global.scss +53 -53
  91. package/resources/scss/theme-neo-light/button/Base.scss +3 -4
  92. package/resources/scss/theme-neo-light/tab/header/Button.scss +6 -8
  93. package/src/DefaultConfig.mjs +2 -2
  94. package/src/Fetch.mjs +1 -3
  95. package/src/Main.mjs +13 -11
  96. package/src/MicroLoader.mjs +2 -2
  97. package/src/Neo.mjs +27 -26
  98. package/src/Xhr.mjs +1 -3
  99. package/src/button/Base.mjs +6 -4
  100. package/src/button/Split.mjs +10 -9
  101. package/src/calendar/view/EditEventContainer.mjs +13 -12
  102. package/src/calendar/view/MainContainer.mjs +40 -40
  103. package/src/calendar/view/MainContainerModel.mjs +5 -5
  104. package/src/calendar/view/SettingsContainer.mjs +11 -11
  105. package/src/calendar/view/YearComponent.mjs +73 -75
  106. package/src/calendar/view/calendars/ColorsList.mjs +2 -2
  107. package/src/calendar/view/calendars/EditContainer.mjs +2 -2
  108. package/src/calendar/view/calendars/List.mjs +12 -13
  109. package/src/calendar/view/month/Component.mjs +72 -73
  110. package/src/calendar/view/settings/GeneralContainer.mjs +5 -5
  111. package/src/calendar/view/settings/MonthContainer.mjs +5 -5
  112. package/src/calendar/view/settings/WeekContainer.mjs +6 -6
  113. package/src/calendar/view/settings/YearContainer.mjs +4 -4
  114. package/src/calendar/view/week/Component.mjs +47 -57
  115. package/src/calendar/view/week/EventDragZone.mjs +43 -50
  116. package/src/calendar/view/week/TimeAxisComponent.mjs +21 -21
  117. package/src/calendar/view/week/plugin/DragDrop.mjs +53 -45
  118. package/src/calendar/view/week/plugin/EventResizable.mjs +8 -3
  119. package/src/collection/Base.mjs +15 -22
  120. package/src/collection/Filter.mjs +4 -9
  121. package/src/collection/Sorter.mjs +6 -7
  122. package/src/component/Base.mjs +149 -87
  123. package/src/component/Canvas.mjs +9 -9
  124. package/src/component/Carousel.mjs +31 -33
  125. package/src/component/Chip.mjs +9 -9
  126. package/src/component/Circle.mjs +84 -91
  127. package/src/component/Clock.mjs +8 -8
  128. package/src/component/DateSelector.mjs +14 -15
  129. package/src/component/Gallery.mjs +82 -80
  130. package/src/component/Helix.mjs +131 -126
  131. package/src/component/Iframe.mjs +1 -1
  132. package/src/component/Label.mjs +1 -1
  133. package/src/component/Legend.mjs +3 -3
  134. package/src/component/Process.mjs +39 -37
  135. package/src/component/Splitter.mjs +9 -11
  136. package/src/component/StatusBadge.mjs +2 -3
  137. package/src/component/Timer.mjs +62 -68
  138. package/src/component/Toast.mjs +11 -11
  139. package/src/component/Video.mjs +7 -8
  140. package/src/component/mwc/Button.mjs +10 -10
  141. package/src/component/mwc/TextField.mjs +17 -17
  142. package/src/component/wrapper/AmChart.mjs +5 -5
  143. package/src/component/wrapper/CesiumJS.mjs +11 -17
  144. package/src/component/wrapper/GoogleMaps.mjs +58 -35
  145. package/src/component/wrapper/MapboxGL.mjs +112 -79
  146. package/src/component/wrapper/MonacoEditor.mjs +1 -6
  147. package/src/container/Accordion.mjs +18 -20
  148. package/src/container/AccordionItem.mjs +12 -11
  149. package/src/container/Base.mjs +29 -28
  150. package/src/container/Panel.mjs +9 -9
  151. package/src/container/Viewport.mjs +30 -1
  152. package/src/controller/Base.mjs +12 -14
  153. package/src/controller/Component.mjs +60 -66
  154. package/src/core/Base.mjs +5 -8
  155. package/src/core/IdGenerator.mjs +1 -3
  156. package/src/core/Observable.mjs +17 -17
  157. package/src/core/Util.mjs +5 -5
  158. package/src/data/Model.mjs +3 -3
  159. package/src/data/RecordFactory.mjs +3 -6
  160. package/src/data/Store.mjs +34 -34
  161. package/src/data/connection/Fetch.mjs +3 -3
  162. package/src/data/connection/WebSocket.mjs +21 -25
  163. package/src/data/connection/Xhr.mjs +31 -28
  164. package/src/date/DayViewComponent.mjs +1 -1
  165. package/src/date/SelectorContainer.mjs +2 -2
  166. package/src/dialog/Base.mjs +27 -25
  167. package/src/dialog/header/Toolbar.mjs +5 -4
  168. package/src/draggable/DragProxyComponent.mjs +7 -4
  169. package/src/draggable/DragZone.mjs +30 -30
  170. package/src/draggable/DropZone.mjs +7 -7
  171. package/src/draggable/list/DragZone.mjs +18 -18
  172. package/src/draggable/tab/header/toolbar/SortZone.mjs +7 -7
  173. package/src/draggable/toolbar/DragZone.mjs +15 -15
  174. package/src/draggable/toolbar/SortZone.mjs +30 -31
  175. package/src/draggable/tree/DragZone.mjs +9 -9
  176. package/src/filter/BooleanContainer.mjs +3 -3
  177. package/src/filter/NumberContainer.mjs +5 -5
  178. package/src/filter/ToggleOperatorsButton.mjs +5 -5
  179. package/src/form/Fieldset.mjs +26 -26
  180. package/src/form/field/Base.mjs +1 -1
  181. package/src/form/field/CheckBox.mjs +15 -16
  182. package/src/form/field/Color.mjs +13 -15
  183. package/src/form/field/ComboBox.mjs +16 -24
  184. package/src/form/field/Country.mjs +1 -1
  185. package/src/form/field/Date.mjs +3 -4
  186. package/src/form/field/Display.mjs +1 -1
  187. package/src/form/field/Email.mjs +2 -2
  188. package/src/form/field/Number.mjs +51 -56
  189. package/src/form/field/Picker.mjs +2 -2
  190. package/src/form/field/Radio.mjs +1 -1
  191. package/src/form/field/Range.mjs +7 -6
  192. package/src/form/field/Text.mjs +29 -36
  193. package/src/form/field/TextArea.mjs +9 -9
  194. package/src/form/field/Time.mjs +30 -30
  195. package/src/form/field/trigger/Base.mjs +19 -13
  196. package/src/form/field/trigger/Clear.mjs +13 -13
  197. package/src/form/field/trigger/CopyToClipboard.mjs +7 -7
  198. package/src/form/field/trigger/Picker.mjs +2 -2
  199. package/src/form/field/trigger/SpinDown.mjs +1 -1
  200. package/src/form/field/trigger/SpinUp.mjs +1 -1
  201. package/src/form/field/trigger/SpinUpDown.mjs +3 -3
  202. package/src/form/field/trigger/Time.mjs +3 -3
  203. package/src/grid/Container.mjs +33 -33
  204. package/src/grid/View.mjs +20 -22
  205. package/src/grid/header/Button.mjs +12 -12
  206. package/src/grid/header/Toolbar.mjs +4 -4
  207. package/src/layout/Base.mjs +5 -4
  208. package/src/layout/Card.mjs +15 -16
  209. package/src/layout/Fit.mjs +22 -8
  210. package/src/layout/Flexbox.mjs +30 -29
  211. package/src/layout/Form.mjs +15 -15
  212. package/src/layout/Grid.mjs +2 -2
  213. package/src/layout/HBox.mjs +3 -2
  214. package/src/layout/VBox.mjs +3 -2
  215. package/src/list/Base.mjs +45 -47
  216. package/src/list/Chip.mjs +4 -4
  217. package/src/list/Circle.mjs +3 -3
  218. package/src/list/Color.mjs +4 -4
  219. package/src/list/Component.mjs +10 -10
  220. package/src/list/plugin/Animate.mjs +18 -13
  221. package/src/main/DomAccess.mjs +92 -56
  222. package/src/main/DomEvents.mjs +38 -39
  223. package/src/main/addon/AmCharts.mjs +37 -37
  224. package/src/main/addon/AnalyticsByGoogle.mjs +4 -4
  225. package/src/main/addon/CesiumJS.mjs +8 -8
  226. package/src/main/addon/CloneNode.mjs +5 -5
  227. package/src/main/addon/Cookie.mjs +4 -4
  228. package/src/main/addon/DragDrop.mjs +35 -34
  229. package/src/main/addon/GoogleMaps.mjs +19 -19
  230. package/src/main/addon/LocalStorage.mjs +3 -3
  231. package/src/main/addon/MapboxGL.mjs +40 -41
  232. package/src/main/addon/MonacoEditor.mjs +5 -5
  233. package/src/main/addon/Mwc.mjs +6 -6
  234. package/src/main/addon/Navigator.mjs +35 -39
  235. package/src/main/addon/Popover.mjs +5 -6
  236. package/src/main/addon/PrefixField.mjs +1 -2
  237. package/src/main/addon/ServiceWorker.mjs +9 -9
  238. package/src/main/addon/Siesta.mjs +3 -2
  239. package/src/main/addon/Stylesheet.mjs +37 -37
  240. package/src/main/addon/WebComponent.mjs +2 -3
  241. package/src/main/addon/WindowPosition.mjs +18 -18
  242. package/src/main/draggable/sensor/Base.mjs +2 -2
  243. package/src/main/draggable/sensor/Mouse.mjs +15 -15
  244. package/src/main/draggable/sensor/Touch.mjs +24 -23
  245. package/src/main/mixin/DeltaUpdates.mjs +10 -12
  246. package/src/main/mixin/TouchDomEvents.mjs +6 -6
  247. package/src/manager/Base.mjs +4 -4
  248. package/src/manager/Component.mjs +41 -41
  249. package/src/manager/DomEvent.mjs +52 -50
  250. package/src/manager/Focus.mjs +14 -16
  251. package/src/manager/Instance.mjs +2 -4
  252. package/src/manager/Store.mjs +4 -8
  253. package/src/manager/Task.mjs +20 -22
  254. package/src/manager/Toast.mjs +14 -16
  255. package/src/manager/rpc/Api.mjs +1 -3
  256. package/src/manager/rpc/Message.mjs +16 -18
  257. package/src/menu/List.mjs +16 -16
  258. package/src/menu/Panel.mjs +4 -4
  259. package/src/model/Component.mjs +5 -5
  260. package/src/plugin/Base.mjs +2 -0
  261. package/src/plugin/Popover.mjs +1 -1
  262. package/src/plugin/PrefixField.mjs +35 -45
  263. package/src/plugin/Resizable.mjs +86 -101
  264. package/src/plugin/Responsive.mjs +175 -0
  265. package/src/remotes/Api.mjs +4 -6
  266. package/src/selection/CircleModel.mjs +12 -16
  267. package/src/selection/DateSelectorModel.mjs +21 -23
  268. package/src/selection/GalleryModel.mjs +49 -63
  269. package/src/selection/HelixModel.mjs +35 -41
  270. package/src/selection/ListModel.mjs +9 -14
  271. package/src/selection/Model.mjs +31 -31
  272. package/src/selection/TreeAccordionModel.mjs +74 -80
  273. package/src/selection/grid/CellColumnModel.mjs +10 -10
  274. package/src/selection/grid/CellColumnRowModel.mjs +10 -10
  275. package/src/selection/grid/CellModel.mjs +26 -28
  276. package/src/selection/grid/CellRowModel.mjs +24 -24
  277. package/src/selection/grid/ColumnModel.mjs +16 -20
  278. package/src/selection/grid/RowModel.mjs +27 -29
  279. package/src/selection/menu/ListModel.mjs +2 -2
  280. package/src/selection/table/CellColumnModel.mjs +12 -12
  281. package/src/selection/table/CellColumnRowModel.mjs +12 -12
  282. package/src/selection/table/CellModel.mjs +26 -29
  283. package/src/selection/table/CellRowModel.mjs +19 -19
  284. package/src/selection/table/ColumnModel.mjs +18 -22
  285. package/src/selection/table/RowModel.mjs +27 -29
  286. package/src/sitemap/Component.mjs +20 -20
  287. package/src/sitemap/Store.mjs +1 -1
  288. package/src/tab/Container.mjs +15 -15
  289. package/src/tab/Strip.mjs +1 -1
  290. package/src/tab/header/Toolbar.mjs +4 -4
  291. package/src/table/Container.mjs +8 -10
  292. package/src/table/View.mjs +29 -34
  293. package/src/table/header/Button.mjs +18 -18
  294. package/src/table/header/Toolbar.mjs +2 -2
  295. package/src/toolbar/Base.mjs +14 -14
  296. package/src/toolbar/Breadcrumb.mjs +11 -11
  297. package/src/toolbar/Paging.mjs +18 -18
  298. package/src/tooltip/Base.mjs +20 -22
  299. package/src/tree/Accordion.mjs +69 -75
  300. package/src/tree/List.mjs +22 -25
  301. package/src/util/Array.mjs +19 -18
  302. package/src/util/ClassSystem.mjs +9 -9
  303. package/src/util/Css.mjs +2 -2
  304. package/src/util/Date.mjs +9 -9
  305. package/src/util/Function.mjs +2 -2
  306. package/src/util/HashHistory.mjs +3 -5
  307. package/src/util/KeyNavigation.mjs +17 -17
  308. package/src/util/Logger.mjs +9 -9
  309. package/src/util/Matrix.mjs +19 -19
  310. package/src/util/String.mjs +9 -9
  311. package/src/util/Style.mjs +11 -11
  312. package/src/util/VDom.mjs +12 -14
  313. package/src/util/VNode.mjs +29 -29
  314. package/src/vdom/Helper.mjs +84 -93
  315. package/src/vdom/VNode.mjs +1 -1
  316. package/src/worker/App.mjs +19 -16
  317. package/src/worker/Base.mjs +14 -15
  318. package/src/worker/Canvas.mjs +1 -3
  319. package/src/worker/Data.mjs +4 -8
  320. package/src/worker/Manager.mjs +27 -32
  321. package/src/worker/Message.mjs +1 -1
  322. package/src/worker/ServiceBase.mjs +38 -42
  323. package/src/worker/Task.mjs +1 -3
  324. package/src/worker/VDom.mjs +2 -4
  325. package/src/worker/mixin/RemoteMethodAccess.mjs +5 -6
  326. package/examples/component/helix/MainContainer.mjs +0 -340
  327. package/resources/images/Neo_Vector.svg +0 -3
  328. package/resources/images/logos/Github-logo-black.svg +0 -1
  329. package/resources/images/logos/Slack-logo-black.svg +0 -17
@@ -184,7 +184,7 @@ class Gallery extends Component {
184
184
  click: me.onClick,
185
185
  wheel: me.onMouseWheel,
186
186
  scope: me
187
- });
187
+ })
188
188
  }
189
189
 
190
190
  /**
@@ -197,7 +197,7 @@ class Gallery extends Component {
197
197
  if (Neo.isNumber(oldValue)) {
198
198
  let me = this;
199
199
 
200
- me.afterSetOrderByRow(me.orderByRow, !me.orderByRow);
200
+ me.afterSetOrderByRow(me.orderByRow, !me.orderByRow)
201
201
  }
202
202
  }
203
203
 
@@ -222,7 +222,7 @@ class Gallery extends Component {
222
222
  origin.id = prefix + 'origin';
223
223
  view .id = prefix + 'view';
224
224
 
225
- me.update();
225
+ me.update()
226
226
  }
227
227
 
228
228
  /**
@@ -236,9 +236,9 @@ class Gallery extends Component {
236
236
 
237
237
  if (value && me.rendered) {
238
238
  if (oldValue > value) {
239
- me.destroyItems(value, oldValue - value);
239
+ me.destroyItems(value, oldValue - value)
240
240
  } else {
241
- me.createItems(oldValue);
241
+ me.createItems(oldValue)
242
242
  }
243
243
  }
244
244
  }
@@ -250,8 +250,8 @@ class Gallery extends Component {
250
250
  * @protected
251
251
  */
252
252
  afterSetMounted(value, oldValue) {
253
- let me = this,
254
- selectionModel = me.selectionModel;
253
+ let me = this,
254
+ {selectionModel} = me;
255
255
 
256
256
  if (value) {
257
257
  me.focusOnMount && me.focus(me.id);
@@ -261,7 +261,8 @@ class Gallery extends Component {
261
261
  action : 'readDom',
262
262
  appName : me.appName,
263
263
  attributes: ['offsetHeight', 'offsetWidth'],
264
- vnodeId : me.id
264
+ vnodeId : me.id,
265
+ windowId : me.windowId
265
266
  }).then(data => {
266
267
  me.offsetHeight = data.attributes.offsetHeight;
267
268
  me.offsetWidth = data.attributes.offsetWidth;
@@ -273,15 +274,15 @@ class Gallery extends Component {
273
274
  if (!key) {
274
275
  let index = parseInt(Math.min(me.maxItems, me.store.getCount()) / me.amountRows);
275
276
 
276
- key = me.store.getKeyAt(index);
277
+ key = me.store.getKeyAt(index)
277
278
  }
278
279
 
279
- selectionModel.select(key);
280
+ selectionModel.select(key)
280
281
  }
281
- });
282
- }, 300);
282
+ })
283
+ }, 300)
283
284
  } else {
284
- selectionModel.items = [];
285
+ selectionModel.items = []
285
286
  }
286
287
  }
287
288
 
@@ -303,7 +304,7 @@ class Gallery extends Component {
303
304
 
304
305
  setTimeout(() => {
305
306
  for (; i < len; i++) {
306
- view.cn[i].style.transform = me.getItemTransform(i);
307
+ view.cn[i].style.transform = me.getItemTransform(i)
307
308
  }
308
309
 
309
310
  me.update();
@@ -311,9 +312,9 @@ class Gallery extends Component {
311
312
  setTimeout(() => {
312
313
  let sm = me.selectionModel;
313
314
 
314
- sm.hasSelection() && me.onSelectionChange(sm.items);
315
- }, 500);
316
- }, 50);
315
+ sm.hasSelection() && me.onSelectionChange(sm.items)
316
+ }, 500)
317
+ }, 50)
317
318
  }
318
319
  }
319
320
  }
@@ -326,7 +327,7 @@ class Gallery extends Component {
326
327
  */
327
328
  afterSetSelectionModel(value, oldValue) {
328
329
  oldValue?.destroy();
329
- this.rendered && value.register(this);
330
+ this.rendered && value.register(this)
330
331
  }
331
332
 
332
333
  afterSetTranslateX() {this.moveOrigin()}
@@ -351,14 +352,14 @@ class Gallery extends Component {
351
352
  sort : me.onSort,
352
353
  scope: me
353
354
  }
354
- });
355
+ })
355
356
  }
356
357
 
357
358
  /**
358
359
  * @returns {Object}
359
360
  */
360
361
  beforeGetItemTpl() {
361
- return Neo.clone(this._itemTpl, true);
362
+ return Neo.clone(this._itemTpl, true)
362
363
  }
363
364
 
364
365
  /**
@@ -375,7 +376,7 @@ class Gallery extends Component {
375
376
  selectionChange: this.onSelectionChange,
376
377
  scope : this
377
378
  }
378
- });
379
+ })
379
380
  }
380
381
 
381
382
  /**
@@ -396,7 +397,7 @@ class Gallery extends Component {
396
397
  imageVdom.style.height = me.itemHeight + 'px';
397
398
  imageVdom.style.width = me.itemWidth + 'px';
398
399
 
399
- return vdomItem;
400
+ return vdomItem
400
401
  }
401
402
 
402
403
  /**
@@ -416,7 +417,7 @@ class Gallery extends Component {
416
417
  amountColumns, item, vdomItem;
417
418
 
418
419
  if (orderByRow) {
419
- amountColumns = Math.ceil(me.store.getCount() / amountRows);
420
+ amountColumns = Math.ceil(me.store.getCount() / amountRows)
420
421
  }
421
422
 
422
423
  for (; i < len; i++) {
@@ -429,20 +430,20 @@ class Gallery extends Component {
429
430
 
430
431
  if (orderByRow) {
431
432
  if (i >= secondLastColumn * amountColumns) {
432
- NeoArray.add(vdomItem.cls, 'neo-reflection');
433
+ NeoArray.add(vdomItem.cls, 'neo-reflection')
433
434
  }
434
435
  } else {
435
436
  if (i % amountRows === secondLastColumn) {
436
- NeoArray.add(vdomItem.cls, 'neo-reflection');
437
+ NeoArray.add(vdomItem.cls, 'neo-reflection')
437
438
  }
438
439
  }
439
440
 
440
- itemsRoot.cn.push(vdomItem);
441
+ itemsRoot.cn.push(vdomItem)
441
442
  }
442
443
 
443
444
  me.promiseUpdate(vdom).then(() => {
444
- me[itemsMounted] = true;
445
- });
445
+ me[itemsMounted] = true
446
+ })
446
447
  }
447
448
 
448
449
  /**
@@ -458,7 +459,7 @@ class Gallery extends Component {
458
459
  me.update();
459
460
 
460
461
  if (me.selectionModel.hasSelection() && selectedItem > startIndex && selectedItem < startIndex + countItems) {
461
- me.afterSetMounted(true, false);
462
+ me.afterSetMounted(true, false)
462
463
  }
463
464
  }
464
465
 
@@ -467,26 +468,25 @@ class Gallery extends Component {
467
468
  * @returns {Number[]}
468
469
  */
469
470
  getCameraTransformForCell(index) {
470
- let me = this,
471
- amountRows = me.amountRows,
472
- itemWidth = me.itemWidth,
473
- gap = 10,
474
- height = me.offsetHeight / (amountRows + 2),
475
- spacing = height + gap,
476
- x = Math.floor(index / amountRows),
477
- y = index - x * amountRows;
471
+ let me = this,
472
+ {amountRows, itemWidth} = me,
473
+ gap = 10,
474
+ height = me.offsetHeight / (amountRows + 2),
475
+ spacing = height + gap,
476
+ x = Math.floor(index / amountRows),
477
+ y = index - x * amountRows;
478
478
 
479
479
  if (me.orderByRow) {
480
480
  let amountColumns = Math.ceil(Math.min(me.maxItems, me.store.getCount()) / amountRows);
481
481
 
482
482
  x = index % amountColumns;
483
- y = Math.floor(index / amountColumns);
483
+ y = Math.floor(index / amountColumns)
484
484
  }
485
485
 
486
486
  let cx = x * (itemWidth + 10),
487
487
  cy = (y + 0.5) * spacing * 1.1 + 50;
488
488
 
489
- return [-cx, -cy, 0];
489
+ return [-cx, -cy, 0]
490
490
  }
491
491
 
492
492
  /**
@@ -494,7 +494,7 @@ class Gallery extends Component {
494
494
  * @returns {Number} itemId
495
495
  */
496
496
  getItemId(vnodeId) {
497
- return parseInt(vnodeId.split('__')[1]);
497
+ return parseInt(vnodeId.split('__')[1])
498
498
  }
499
499
 
500
500
  /**
@@ -502,7 +502,7 @@ class Gallery extends Component {
502
502
  * @returns {Object} vdom
503
503
  */
504
504
  getItemsRoot() {
505
- return this.vdom.cn[0].cn[0].cn[0].cn[0];
505
+ return this.vdom.cn[0].cn[0].cn[0].cn[0]
506
506
  }
507
507
 
508
508
  /**
@@ -510,25 +510,25 @@ class Gallery extends Component {
510
510
  * @returns {String}
511
511
  */
512
512
  getItemTransform(index) {
513
- let me = this,
514
- amountRows = me.amountRows,
513
+ let me = this,
514
+ {amountRows} = me,
515
515
  x, y;
516
516
 
517
517
  if (me.orderByRow) {
518
518
  amountRows = Math.ceil(Math.min(me.maxItems, me.store.getCount()) / amountRows);
519
519
 
520
520
  x = index % amountRows;
521
- y = Math.floor(index / amountRows);
521
+ y = Math.floor(index / amountRows)
522
522
  } else {
523
523
  x = Math.floor(index / amountRows);
524
- y = index % amountRows;
524
+ y = index % amountRows
525
525
  }
526
526
 
527
527
  return this.translate3d(
528
528
  x * (me.itemWidth + 10),
529
529
  y * (me.itemHeight + 10) + 100,
530
530
  0
531
- );
531
+ )
532
532
  }
533
533
 
534
534
  /**
@@ -536,7 +536,7 @@ class Gallery extends Component {
536
536
  * @returns {String}
537
537
  */
538
538
  getItemVnodeId(id) {
539
- return this.id + '__' + id;
539
+ return this.id + '__' + id
540
540
  }
541
541
 
542
542
  /**
@@ -546,14 +546,14 @@ class Gallery extends Component {
546
546
  let me = this;
547
547
 
548
548
  me.vdom.cn[0].style.transform = me.translate3d(me.translateX, me.translateY, me.translateZ);
549
- me.update();
549
+ me.update()
550
550
  }
551
551
 
552
552
  /**
553
553
  * @param {Object} data
554
554
  */
555
555
  onClick(data) {
556
- this.fire(data.id === this.id ? 'containerClick' : 'itemClick', data);
556
+ this.fire(data.id === this.id ? 'containerClick' : 'itemClick', data)
557
557
  }
558
558
 
559
559
  /**
@@ -577,7 +577,7 @@ class Gallery extends Component {
577
577
  me.moveOrigin();
578
578
 
579
579
  me.fire('changeTranslateX', me._translateX);
580
- me.fire('changeTranslateZ', me._translateZ);
580
+ me.fire('changeTranslateZ', me._translateZ)
581
581
  }
582
582
  }
583
583
 
@@ -587,8 +587,7 @@ class Gallery extends Component {
587
587
  onSelectionChange(value) {
588
588
  let me = this,
589
589
  index = me.store.indexOf(value?.[0] || 0),
590
- itemHeight = me.itemHeight,
591
- itemWidth = me.itemWidth,
590
+ {appName, id, itemHeight, itemWidth, windowId} = me,
592
591
  camera = me.vdom.cn[0].cn[0],
593
592
  cameraStyle = camera.style,
594
593
  dollyTransform = me.getCameraTransformForCell(index),
@@ -598,28 +597,32 @@ class Gallery extends Component {
598
597
  timeoutId;
599
598
 
600
599
  me.transitionTimeouts.forEach(item => {
601
- clearTimeout(item);
600
+ clearTimeout(item)
602
601
  });
603
602
 
604
603
  me.transitionTimeouts.splice(0, me.transitionTimeouts.length);
605
604
 
606
605
  Neo.currentWorker.promiseMessage('main', {
607
606
  action : 'updateDom',
608
- appName: me.appName,
609
- deltas : {
610
- id : me.id + '__dolly',
607
+ appName,
608
+ windowId,
609
+
610
+ deltas: {
611
+ id : id + '__dolly',
611
612
  style: {
612
613
  transform: me.translate3d(...dollyTransform)
613
614
  }
614
615
  }
615
616
  }).then(() => {
616
617
  Neo.currentWorker.promiseMessage('main', {
617
- action : 'readDom',
618
- appName : me.appName,
619
- vnodeId : me.id,
618
+ action : 'readDom',
619
+ appName,
620
+ vnodeId: id,
621
+ windowId,
622
+
620
623
  functions: [{
621
624
  fn : 'getComputedStyle',
622
- params : [me.id + '__dolly', null],
625
+ params : [id + '__dolly', null],
623
626
  paramIsDomNode: [true, false],
624
627
  scope : 'defaultView',
625
628
  returnFnName : 'transform',
@@ -632,11 +635,11 @@ class Gallery extends Component {
632
635
  if (transform.indexOf('matrix3d') === 0) {
633
636
  transform = transform.substring(9, transform.length - 1); // remove matrix3d( ... )
634
637
  transform = transform.split(',').map(e => parseFloat(e));
635
- translateX = transform[12]; // bottom left element of the 4x4 matrix
638
+ translateX = transform[12] // bottom left element of the 4x4 matrix
636
639
  } else {
637
640
  transform = transform.substring(7, transform.length - 1); // remove matrix( ... )
638
641
  transform = transform.split(',').map(e => parseFloat(e));
639
- translateX = transform[4]; // bottom left element of the 2x3 matrix
642
+ translateX = transform[4] // bottom left element of the 2x3 matrix
640
643
  }
641
644
 
642
645
  translateX = translateX - dollyTransform[0];
@@ -653,12 +656,12 @@ class Gallery extends Component {
653
656
  cameraStyle.transform = 'rotateY(0deg)';
654
657
  cameraStyle.transitionDuration = '5000ms';
655
658
 
656
- me.update();
659
+ me.update()
657
660
  }, 330);
658
661
 
659
- me.transitionTimeouts.push(timeoutId);
660
- });
661
- });
662
+ me.transitionTimeouts.push(timeoutId)
663
+ })
664
+ })
662
665
  }
663
666
 
664
667
  /**
@@ -684,7 +687,7 @@ class Gallery extends Component {
684
687
  newCn.push(view.cn[fromIndex]);
685
688
 
686
689
  if (index !== fromIndex) {
687
- hasChange = true;
690
+ hasChange = true
688
691
  }
689
692
  });
690
693
 
@@ -693,8 +696,8 @@ class Gallery extends Component {
693
696
  me.update();
694
697
 
695
698
  setTimeout(() => {
696
- me.afterSetOrderByRow(me.orderByRow, !me.orderByRow);
697
- }, 50);
699
+ me.afterSetOrderByRow(me.orderByRow, !me.orderByRow)
700
+ }, 50)
698
701
  }
699
702
  }
700
703
  }
@@ -705,33 +708,32 @@ class Gallery extends Component {
705
708
  */
706
709
  onStoreLoad(items) {
707
710
  this.getItemsRoot().cn = []; // silent update
708
- this.createItems();
711
+ this.createItems()
709
712
  }
710
713
 
711
714
  /**
712
715
  *
713
716
  */
714
717
  refreshImageReflection() {
715
- let me = this,
716
- amountRows = me.amountRows,
717
- orderByRow = me.orderByRow,
718
- secondLastColumn = amountRows - 1,
719
- view = me.getItemsRoot(),
718
+ let me = this,
719
+ {amountRows, orderByRow} = me,
720
+ secondLastColumn = amountRows - 1,
721
+ view = me.getItemsRoot(),
720
722
  amountColumns;
721
723
 
722
724
  if (orderByRow) {
723
- amountColumns = Math.ceil(Math.min(me.maxItems, me.store.getCount()) / amountRows);
725
+ amountColumns = Math.ceil(Math.min(me.maxItems, me.store.getCount()) / amountRows)
724
726
  }
725
727
 
726
728
  view.cn.forEach((item, index) => {
727
729
  if (orderByRow) {
728
- NeoArray[index >= secondLastColumn * amountColumns ? 'add' : 'remove'](item.cls, 'neo-reflection');
730
+ NeoArray[index >= secondLastColumn * amountColumns ? 'add' : 'remove'](item.cls, 'neo-reflection')
729
731
  } else {
730
- NeoArray[index % amountRows === secondLastColumn ? 'add' : 'remove'](item.cls, 'neo-reflection');
732
+ NeoArray[index % amountRows === secondLastColumn ? 'add' : 'remove'](item.cls, 'neo-reflection')
731
733
  }
732
734
  });
733
735
 
734
- me.update();
736
+ me.update()
735
737
  }
736
738
 
737
739
  /**
@@ -741,7 +743,7 @@ class Gallery extends Component {
741
743
  * @returns {String}
742
744
  */
743
745
  translate3d(x, y, z) {
744
- return `translate3d(${x}px, ${y}px, ${z}px)`;
746
+ return `translate3d(${x}px, ${y}px, ${z}px)`
745
747
  }
746
748
  }
747
749