ng-virtual-list 14.11.4 → 14.12.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 (473) hide show
  1. package/README.md +78 -40
  2. package/esm2022/lib/components/ng-list-item/base/base-virtual-list-item-component.mjs +315 -0
  3. package/{esm2020 → esm2022}/lib/components/ng-list-item/base/index.mjs +2 -2
  4. package/esm2022/lib/components/ng-list-item/const/index.mjs +41 -0
  5. package/{esm2020 → esm2022}/lib/components/ng-list-item/interfaces/index.mjs +1 -1
  6. package/{esm2020 → esm2022}/lib/components/ng-list-item/interfaces/template-context.mjs +1 -1
  7. package/esm2022/lib/components/ng-list-item/ng-virtual-list-item.component.mjs +200 -0
  8. package/esm2022/lib/components/ng-list-item/ng-virtual-list-item.module.mjs +20 -0
  9. package/esm2022/lib/components/ng-list-item/utils/create-display-id.mjs +10 -0
  10. package/esm2022/lib/components/ng-list-item/utils/get-element-by-index.mjs +20 -0
  11. package/esm2022/lib/components/ng-list-item/utils/index.mjs +5 -0
  12. package/esm2022/lib/components/ng-list-item/utils/matrix-3d.mjs +18 -0
  13. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.mjs +279 -0
  14. package/{esm2020 → esm2022}/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.module.mjs +21 -21
  15. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.mjs +94 -0
  16. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.module.mjs +20 -0
  17. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.mjs +142 -0
  18. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.module.mjs +20 -0
  19. package/{esm2020 → esm2022}/lib/components/ng-prerender-container/core/index.mjs +2 -2
  20. package/esm2022/lib/components/ng-prerender-container/core/prerender-track-box.mjs +198 -0
  21. package/{esm2020 → esm2022}/lib/components/ng-prerender-container/events/index.mjs +5 -5
  22. package/{esm2020 → esm2022}/lib/components/ng-prerender-container/interfaces/index.mjs +1 -1
  23. package/{esm2020 → esm2022}/lib/components/ng-prerender-container/interfaces/refresh-params.mjs +2 -2
  24. package/esm2022/lib/components/ng-prerender-container/ng-prerender-container.component.mjs +93 -0
  25. package/{esm2020 → esm2022}/lib/components/ng-prerender-container/ng-prerender-container.module.mjs +20 -20
  26. package/{esm2020 → esm2022}/lib/components/ng-prerender-container/types/cache.mjs +2 -2
  27. package/{esm2020 → esm2022}/lib/components/ng-prerender-container/types/index.mjs +1 -1
  28. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/const/index.mjs +8 -8
  29. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/enums/index.mjs +2 -2
  30. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/enums/scrollbar-states.mjs +6 -6
  31. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/interfaces/index.mjs +1 -1
  32. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/interfaces/scroll-bar-template-context.mjs +2 -2
  33. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/interfaces/scrollbar-drag-data.mjs +1 -1
  34. package/esm2022/lib/components/ng-scroll-bar/ng-scroll-bar-public.service.mjs +25 -0
  35. package/esm2022/lib/components/ng-scroll-bar/ng-scroll-bar.component.mjs +324 -0
  36. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/ng-scroll-bar.module.mjs +19 -19
  37. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/ng-scroll-bar.service.mjs +36 -38
  38. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/types/index.mjs +1 -1
  39. package/{esm2020 → esm2022}/lib/components/ng-scroll-bar/types/scrollbar-state.mjs +1 -1
  40. package/esm2022/lib/components/ng-scroll-view/base/base-scroll-view.component.mjs +262 -0
  41. package/esm2022/lib/components/ng-scroll-view/const/index.mjs +9 -0
  42. package/{esm2020 → esm2022}/lib/components/ng-scroll-view/enums/index.mjs +2 -2
  43. package/{esm2020 → esm2022}/lib/components/ng-scroll-view/enums/scroller-direction.mjs +11 -11
  44. package/{esm2020 → esm2022}/lib/components/ng-scroll-view/enums/scroller-directions.mjs +1 -1
  45. package/{esm2020 → esm2022}/lib/components/ng-scroll-view/index.mjs +3 -3
  46. package/{esm2020 → esm2022}/lib/components/ng-scroll-view/interfaces/index.mjs +1 -1
  47. package/{esm2020 → esm2022}/lib/components/ng-scroll-view/interfaces/scroll-to-params.mjs +2 -2
  48. package/esm2022/lib/components/ng-scroll-view/ng-scroll-view.component.mjs +859 -0
  49. package/esm2022/lib/components/ng-scroll-view/utils/calculate-direction.mjs +17 -0
  50. package/esm2022/lib/components/ng-scroll-view/utils/calculate-velocity.mjs +12 -0
  51. package/esm2022/lib/components/ng-scroll-view/utils/get-dir.mjs +10 -0
  52. package/esm2022/lib/components/ng-scroll-view/utils/index.mjs +6 -0
  53. package/esm2022/lib/components/ng-scroll-view/utils/matrix-3d.mjs +15 -0
  54. package/esm2022/lib/components/ng-scroll-view/utils/scroll-box.mjs +45 -0
  55. package/{esm2020 → esm2022}/lib/components/ng-scroller/enums/index.mjs +2 -2
  56. package/{esm2020 → esm2022}/lib/components/ng-scroller/enums/scroller-direction.mjs +5 -5
  57. package/{esm2020 → esm2022}/lib/components/ng-scroller/enums/scroller-directions.mjs +2 -2
  58. package/esm2022/lib/components/ng-scroller/ng-scroller.component.mjs +525 -0
  59. package/{esm2020 → esm2022}/lib/components/ng-scroller/ng-scroller.module.mjs +22 -22
  60. package/{esm2020 → esm2022}/lib/components/ng-scroller/utils/index.mjs +2 -2
  61. package/esm2022/lib/components/ng-scroller/utils/scroll-box.mjs +52 -0
  62. package/esm2022/lib/const/index.mjs +165 -0
  63. package/esm2022/lib/core/cache-map.mjs +101 -0
  64. package/esm2022/lib/core/const/index.mjs +3 -0
  65. package/esm2022/lib/core/enums/index.mjs +3 -0
  66. package/esm2022/lib/core/enums/item-display-methods.mjs +14 -0
  67. package/esm2022/lib/core/events/index.mjs +3 -0
  68. package/esm2022/lib/core/events/track-box-events.mjs +12 -0
  69. package/esm2022/lib/core/interfaces/get-item-position-options.mjs +2 -0
  70. package/esm2022/lib/core/interfaces/get-metrics-returns.mjs +2 -0
  71. package/esm2022/lib/core/interfaces/index.mjs +2 -0
  72. package/esm2022/lib/core/interfaces/item.mjs +2 -0
  73. package/esm2022/lib/core/interfaces/metrics.mjs +2 -0
  74. package/esm2022/lib/core/interfaces/recalculate-metrics-options.mjs +2 -0
  75. package/esm2022/lib/core/interfaces/update-collection-options.mjs +2 -0
  76. package/esm2022/lib/core/interfaces/update-collection-returns.mjs +2 -0
  77. package/esm2022/lib/core/track-box.mjs +1353 -0
  78. package/esm2022/lib/core/tracker.mjs +207 -0
  79. package/esm2022/lib/core/types/cache-map-events.mjs +2 -0
  80. package/esm2022/lib/core/types/cache-map-listeners.mjs +2 -0
  81. package/esm2022/lib/core/types/cache.mjs +2 -0
  82. package/esm2022/lib/core/types/index.mjs +2 -0
  83. package/esm2022/lib/core/types/on-change-event-listener.mjs +2 -0
  84. package/esm2022/lib/core/types/on-tick-event-listener.mjs +2 -0
  85. package/esm2022/lib/core/utils/get-service-id-prop.mjs +10 -0
  86. package/esm2022/lib/core/utils/index.mjs +3 -0
  87. package/esm2022/lib/directives/index.mjs +4 -0
  88. package/esm2022/lib/directives/locale-sensitive/locale-sensitive.directive.mjs +68 -0
  89. package/{esm2020 → esm2022}/lib/directives/locale-sensitive/locale-sensitive.module.mjs +19 -19
  90. package/esm2022/lib/directives/virtual-click/virtual-click.directive.mjs +67 -0
  91. package/esm2022/lib/directives/virtual-click/virtual-click.module.mjs +19 -0
  92. package/esm2022/lib/enums/alignments.mjs +12 -0
  93. package/esm2022/lib/enums/collapsing-modes.mjs +22 -0
  94. package/{esm2020 → esm2022}/lib/enums/collection-modes.mjs +17 -17
  95. package/{esm2020 → esm2022}/lib/enums/directions.mjs +17 -17
  96. package/{esm2020 → esm2022}/lib/enums/focus-alignments.mjs +13 -13
  97. package/esm2022/lib/enums/index.mjs +12 -0
  98. package/esm2022/lib/enums/selecting-modes-types.mjs +22 -0
  99. package/esm2022/lib/enums/selecting-modes.mjs +22 -0
  100. package/esm2022/lib/enums/snap-to-item-aligns.mjs +22 -0
  101. package/{esm2020 → esm2022}/lib/enums/snapping-methods.mjs +17 -17
  102. package/esm2022/lib/enums/spreading-modes.mjs +18 -0
  103. package/{esm2020 → esm2022}/lib/enums/text-directions.mjs +13 -13
  104. package/{esm2020 → esm2022}/lib/interfaces/animation-params.mjs +2 -2
  105. package/esm2022/lib/interfaces/base-virtual-list-item-component.mjs +2 -0
  106. package/esm2022/lib/interfaces/index.mjs +2 -0
  107. package/esm2022/lib/interfaces/item-transformation.mjs +2 -0
  108. package/esm2022/lib/interfaces/point.mjs +2 -0
  109. package/{esm2020 → esm2022}/lib/interfaces/rect.mjs +1 -1
  110. package/{esm2020 → esm2022}/lib/interfaces/render-stabilizer-options.mjs +1 -1
  111. package/{esm2020 → esm2022}/lib/interfaces/scroll-event.mjs +1 -1
  112. package/{esm2020 → esm2022}/lib/interfaces/scroll-options.mjs +2 -2
  113. package/esm2022/lib/interfaces/scroll-params.mjs +2 -0
  114. package/{esm2020 → esm2022}/lib/interfaces/scroll-to-params.mjs +1 -1
  115. package/{esm2020 → esm2022}/lib/interfaces/scrolling-settings.mjs +1 -1
  116. package/{esm2020 → esm2022}/lib/interfaces/size.mjs +1 -1
  117. package/{esm2020 → esm2022}/lib/models/collection.model.mjs +2 -2
  118. package/{esm2020 → esm2022}/lib/models/component.model.mjs +1 -1
  119. package/{esm2020 → esm2022}/lib/models/display-object-config.model.mjs +1 -1
  120. package/{esm2020 → esm2022}/lib/models/display-object-measures.model.mjs +1 -1
  121. package/{esm2020 → esm2022}/lib/models/index.mjs +1 -1
  122. package/{esm2020 → esm2022}/lib/models/item-config-map.model.mjs +2 -2
  123. package/{esm2020 → esm2022}/lib/models/item.model.mjs +2 -2
  124. package/{esm2020 → esm2022}/lib/models/render-collection.model.mjs +2 -2
  125. package/esm2022/lib/models/render-item-config.model.mjs +2 -0
  126. package/esm2022/lib/models/render-item-measures.model.mjs +3 -0
  127. package/{esm2020 → esm2022}/lib/models/render-item.model.mjs +2 -2
  128. package/esm2022/lib/ng-virtual-list-public.service.mjs +120 -0
  129. package/esm2022/lib/ng-virtual-list.component.mjs +3246 -0
  130. package/{esm2020 → esm2022}/lib/ng-virtual-list.module.mjs +23 -23
  131. package/esm2022/lib/ng-virtual-list.service.mjs +431 -0
  132. package/esm2022/lib/transformations/deck-of-cards-3d.mjs +57 -0
  133. package/esm2022/lib/transformations/deck-of-cards.mjs +54 -0
  134. package/esm2022/lib/transformations/event-horizon.mjs +47 -0
  135. package/esm2022/lib/transformations/index.mjs +13 -0
  136. package/esm2022/lib/transformations/linear.mjs +47 -0
  137. package/esm2022/lib/transformations/swipe-3d.mjs +51 -0
  138. package/esm2022/lib/types/alignment.mjs +2 -0
  139. package/esm2022/lib/types/arithmetic-expression.mjs +2 -0
  140. package/esm2022/lib/types/collapsing-mode.mjs +2 -0
  141. package/esm2022/lib/types/collection-mode.mjs +2 -0
  142. package/esm2022/lib/types/color.mjs +2 -0
  143. package/esm2022/lib/types/direction.mjs +2 -0
  144. package/esm2022/lib/types/float-or-persentage-value.mjs +2 -0
  145. package/{esm2020 → esm2022}/lib/types/focus-alignment.mjs +1 -1
  146. package/{esm2020 → esm2022}/lib/types/focus-item-params.mjs +2 -2
  147. package/{esm2020 → esm2022}/lib/types/gradient-color-position.mjs +2 -2
  148. package/{esm2020 → esm2022}/lib/types/gradient-color-positions.mjs +1 -1
  149. package/{esm2020 → esm2022}/lib/types/id.mjs +1 -1
  150. package/esm2022/lib/types/index.mjs +2 -0
  151. package/esm2022/lib/types/item-transform.mjs +2 -0
  152. package/{esm2020 → esm2022}/lib/types/scroll-direction.mjs +2 -2
  153. package/esm2022/lib/types/selecting-mode.mjs +2 -0
  154. package/esm2022/lib/types/snap-to-item-align.mjs +2 -0
  155. package/esm2022/lib/types/snapping-distance.mjs +2 -0
  156. package/esm2022/lib/types/snapping-method.mjs +2 -0
  157. package/esm2022/lib/types/spreading-mode.mjs +2 -0
  158. package/esm2022/lib/types/text-direction.mjs +2 -0
  159. package/esm2022/lib/utils/animator/animator.mjs +78 -0
  160. package/esm2022/lib/utils/animator/const/index.mjs +2 -0
  161. package/esm2022/lib/utils/animator/ease.mjs +7 -0
  162. package/esm2022/lib/utils/animator/index.mjs +5 -0
  163. package/esm2022/lib/utils/animator/interfaces/animator-params.mjs +2 -0
  164. package/esm2022/lib/utils/animator/interfaces/animator-update-data.mjs +2 -0
  165. package/esm2022/lib/utils/animator/interfaces/index.mjs +2 -0
  166. package/esm2022/lib/utils/animator/types/easing.mjs +2 -0
  167. package/{esm2020 → esm2022}/lib/utils/animator/types/index.mjs +1 -1
  168. package/esm2022/lib/utils/buffer-interpolation.mjs +29 -0
  169. package/esm2022/lib/utils/cmap.mjs +34 -0
  170. package/esm2022/lib/utils/debounce.mjs +61 -0
  171. package/esm2022/lib/utils/disposable-component.mjs +27 -0
  172. package/esm2022/lib/utils/event-emitter/event-emitter.mjs +105 -0
  173. package/{esm2020 → esm2022}/lib/utils/event-emitter/index.mjs +2 -2
  174. package/{esm2020 → esm2022}/lib/utils/event-emitter/interfaces/event-emitter.mjs +1 -1
  175. package/{esm2020 → esm2022}/lib/utils/event-emitter/interfaces/index.mjs +1 -1
  176. package/esm2022/lib/utils/get-scroll-state-version.mjs +12 -0
  177. package/{esm2020 → esm2022}/lib/utils/get-selector-by-item-id.mjs +4 -4
  178. package/{esm2020 → esm2022}/lib/utils/index.mjs +4 -4
  179. package/esm2022/lib/utils/is-collapse-mode.mjs +18 -0
  180. package/esm2022/lib/utils/is-collection-mode.mjs +15 -0
  181. package/esm2022/lib/utils/is-direction.mjs +15 -0
  182. package/esm2022/lib/utils/is-persentage-value.mjs +14 -0
  183. package/esm2022/lib/utils/is-select-mode.mjs +18 -0
  184. package/esm2022/lib/utils/is-spreading-mode.mjs +15 -0
  185. package/esm2022/lib/utils/list-validators.mjs +27 -0
  186. package/esm2022/lib/utils/normalize-collection.mjs +42 -0
  187. package/esm2022/lib/utils/object.mjs +28 -0
  188. package/esm2022/lib/utils/parse-arithmetic-expression.mjs +53 -0
  189. package/esm2022/lib/utils/parse-float-or-persentage-value.mjs +17 -0
  190. package/esm2022/lib/utils/screen-reader-formatter.mjs +43 -0
  191. package/esm2022/lib/utils/scroll-event.mjs +48 -0
  192. package/esm2022/lib/utils/scrolling-direction.mjs +29 -0
  193. package/esm2022/lib/utils/snapping-method.mjs +9 -0
  194. package/esm2022/lib/utils/toggle-class-name.mjs +15 -0
  195. package/{esm2020 → esm2022}/lib/utils/validation.mjs +55 -55
  196. package/{esm2020 → esm2022}/ng-virtual-list.mjs +4 -4
  197. package/esm2022/public-api.mjs +20 -0
  198. package/fesm2022/ng-virtual-list.mjs +10669 -0
  199. package/fesm2022/ng-virtual-list.mjs.map +1 -0
  200. package/index.d.ts +5 -5
  201. package/lib/components/ng-list-item/base/base-virtual-list-item-component.d.ts +83 -68
  202. package/lib/components/ng-list-item/base/index.d.ts +2 -2
  203. package/lib/components/ng-list-item/const/index.d.ts +3 -3
  204. package/lib/components/ng-list-item/interfaces/index.d.ts +2 -2
  205. package/lib/components/ng-list-item/interfaces/template-context.d.ts +42 -42
  206. package/lib/components/ng-list-item/ng-virtual-list-item.component.d.ts +30 -30
  207. package/lib/components/ng-list-item/ng-virtual-list-item.module.d.ts +9 -9
  208. package/lib/components/ng-list-item/utils/create-display-id.d.ts +7 -1
  209. package/lib/components/ng-list-item/utils/get-element-by-index.d.ts +15 -1
  210. package/lib/components/ng-list-item/utils/index.d.ts +4 -3
  211. package/lib/components/ng-list-item/utils/matrix-3d.d.ts +7 -0
  212. package/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.d.ts +104 -100
  213. package/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.module.d.ts +10 -10
  214. package/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.d.ts +17 -17
  215. package/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.module.d.ts +9 -9
  216. package/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.d.ts +62 -62
  217. package/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.module.d.ts +9 -9
  218. package/lib/components/ng-prerender-container/core/index.d.ts +2 -2
  219. package/lib/components/ng-prerender-container/core/prerender-track-box.d.ts +35 -35
  220. package/lib/components/ng-prerender-container/events/index.d.ts +6 -6
  221. package/lib/components/ng-prerender-container/interfaces/index.d.ts +2 -2
  222. package/lib/components/ng-prerender-container/interfaces/refresh-params.d.ts +17 -16
  223. package/lib/components/ng-prerender-container/ng-prerender-container.component.d.ts +40 -39
  224. package/lib/components/ng-prerender-container/ng-prerender-container.module.d.ts +9 -9
  225. package/lib/components/ng-prerender-container/types/cache.d.ts +13 -13
  226. package/lib/components/ng-prerender-container/types/index.d.ts +2 -2
  227. package/lib/components/ng-scroll-bar/const/index.d.ts +3 -3
  228. package/lib/components/ng-scroll-bar/enums/index.d.ts +2 -2
  229. package/lib/components/ng-scroll-bar/enums/scrollbar-states.d.ts +5 -5
  230. package/lib/components/ng-scroll-bar/interfaces/index.d.ts +3 -3
  231. package/lib/components/ng-scroll-bar/interfaces/scroll-bar-template-context.d.ts +26 -26
  232. package/lib/components/ng-scroll-bar/interfaces/scrollbar-drag-data.d.ts +13 -13
  233. package/lib/components/ng-scroll-bar/ng-scroll-bar-public.service.d.ts +16 -16
  234. package/lib/components/ng-scroll-bar/ng-scroll-bar.component.d.ts +102 -97
  235. package/lib/components/ng-scroll-bar/ng-scroll-bar.module.d.ts +8 -8
  236. package/lib/components/ng-scroll-bar/ng-scroll-bar.service.d.ts +22 -22
  237. package/lib/components/ng-scroll-bar/types/index.d.ts +2 -2
  238. package/lib/components/ng-scroll-bar/types/scrollbar-state.d.ts +2 -2
  239. package/lib/components/ng-scroll-view/base/base-scroll-view.component.d.ts +89 -69
  240. package/lib/components/ng-scroll-view/const/index.d.ts +7 -5
  241. package/lib/components/ng-scroll-view/enums/index.d.ts +4 -4
  242. package/lib/components/ng-scroll-view/enums/scroller-direction.d.ts +10 -10
  243. package/lib/components/ng-scroll-view/enums/scroller-directions.d.ts +8 -8
  244. package/lib/components/ng-scroll-view/index.d.ts +5 -5
  245. package/lib/components/ng-scroll-view/interfaces/index.d.ts +2 -2
  246. package/lib/components/ng-scroll-view/interfaces/scroll-to-params.d.ts +22 -19
  247. package/lib/components/ng-scroll-view/ng-scroll-view.component.d.ts +124 -66
  248. package/lib/components/ng-scroll-view/utils/calculate-direction.d.ts +7 -4
  249. package/lib/components/ng-scroll-view/utils/calculate-velocity.d.ts +7 -0
  250. package/lib/components/ng-scroll-view/utils/get-dir.d.ts +7 -0
  251. package/lib/components/ng-scroll-view/utils/index.d.ts +5 -3
  252. package/lib/components/ng-scroll-view/utils/matrix-3d.d.ts +7 -0
  253. package/lib/components/ng-scroll-view/utils/scroll-box.d.ts +39 -39
  254. package/lib/components/ng-scroller/enums/index.d.ts +4 -4
  255. package/lib/components/ng-scroller/enums/scroller-direction.d.ts +4 -4
  256. package/lib/components/ng-scroller/enums/scroller-directions.d.ts +3 -2
  257. package/lib/components/ng-scroller/ng-scroller.component.d.ts +164 -150
  258. package/lib/components/ng-scroller/ng-scroller.module.d.ts +11 -11
  259. package/lib/components/ng-scroller/utils/index.d.ts +2 -2
  260. package/lib/components/ng-scroller/utils/scroll-box.d.ts +40 -40
  261. package/lib/const/index.d.ts +153 -112
  262. package/lib/core/cache-map.d.ts +46 -56
  263. package/lib/core/const/index.d.ts +1 -0
  264. package/lib/core/enums/index.d.ts +2 -0
  265. package/lib/core/enums/item-display-methods.d.ts +12 -0
  266. package/lib/core/events/index.d.ts +2 -0
  267. package/lib/core/events/track-box-events.d.ts +10 -0
  268. package/lib/core/interfaces/get-item-position-options.d.ts +10 -0
  269. package/lib/core/interfaces/get-metrics-returns.d.ts +11 -0
  270. package/lib/core/interfaces/index.d.ts +8 -0
  271. package/lib/core/interfaces/item.d.ts +9 -0
  272. package/lib/core/interfaces/metrics.d.ts +51 -0
  273. package/lib/core/interfaces/recalculate-metrics-options.d.ts +32 -0
  274. package/lib/core/interfaces/update-collection-options.d.ts +10 -0
  275. package/lib/core/interfaces/update-collection-returns.d.ts +14 -0
  276. package/lib/core/track-box.d.ts +153 -223
  277. package/lib/core/tracker.d.ts +55 -55
  278. package/lib/core/types/cache-map-events.d.ts +8 -0
  279. package/lib/core/types/cache-map-listeners.d.ts +9 -0
  280. package/lib/core/types/cache.d.ts +12 -0
  281. package/lib/core/types/index.d.ts +6 -0
  282. package/lib/core/types/on-change-event-listener.d.ts +7 -0
  283. package/lib/core/types/on-tick-event-listener.d.ts +7 -0
  284. package/lib/core/utils/get-service-id-prop.d.ts +7 -0
  285. package/lib/core/utils/index.d.ts +2 -0
  286. package/lib/directives/index.d.ts +3 -3
  287. package/lib/directives/locale-sensitive/locale-sensitive.directive.d.ts +29 -29
  288. package/lib/directives/locale-sensitive/locale-sensitive.module.d.ts +8 -8
  289. package/lib/directives/{item-click/item-click.directive.d.ts → virtual-click/virtual-click.directive.d.ts} +22 -22
  290. package/lib/directives/virtual-click/virtual-click.module.d.ts +8 -0
  291. package/lib/enums/alignments.d.ts +10 -0
  292. package/lib/enums/collapsing-modes.d.ts +20 -0
  293. package/lib/enums/collection-modes.d.ts +16 -16
  294. package/lib/enums/directions.d.ts +16 -16
  295. package/lib/enums/focus-alignments.d.ts +12 -12
  296. package/lib/enums/index.d.ts +11 -13
  297. package/lib/enums/{method-for-selecting-types.d.ts → selecting-modes-types.d.ts} +20 -20
  298. package/lib/enums/{methods-for-selecting.d.ts → selecting-modes.d.ts} +20 -20
  299. package/lib/enums/snap-to-item-aligns.d.ts +20 -0
  300. package/lib/enums/snapping-methods.d.ts +16 -16
  301. package/lib/enums/spreading-modes.d.ts +16 -0
  302. package/lib/enums/text-directions.d.ts +12 -12
  303. package/lib/interfaces/animation-params.d.ts +14 -13
  304. package/lib/interfaces/base-virtual-list-item-component.d.ts +23 -23
  305. package/lib/interfaces/index.d.ts +11 -10
  306. package/lib/interfaces/item-transformation.d.ts +22 -0
  307. package/lib/interfaces/point.d.ts +16 -0
  308. package/lib/interfaces/rect.d.ts +17 -17
  309. package/lib/interfaces/render-stabilizer-options.d.ts +12 -12
  310. package/lib/interfaces/scroll-event.d.ts +58 -58
  311. package/lib/interfaces/scroll-options.d.ts +28 -24
  312. package/lib/interfaces/scroll-params.d.ts +17 -16
  313. package/lib/interfaces/scroll-to-params.d.ts +7 -7
  314. package/lib/interfaces/scrolling-settings.d.ts +38 -38
  315. package/lib/interfaces/size.d.ts +16 -16
  316. package/lib/models/collection.model.d.ts +9 -9
  317. package/lib/models/component.model.d.ts +3 -3
  318. package/lib/models/display-object-config.model.d.ts +21 -21
  319. package/lib/models/display-object-measures.model.d.ts +45 -45
  320. package/lib/models/index.d.ts +9 -9
  321. package/lib/models/item-config-map.model.d.ts +35 -30
  322. package/lib/models/item.model.d.ts +17 -10
  323. package/lib/models/render-collection.model.d.ts +9 -9
  324. package/lib/models/render-item-config.model.d.ts +119 -69
  325. package/lib/models/render-item-measures.model.d.ts +116 -45
  326. package/lib/models/render-item.model.d.ts +40 -40
  327. package/lib/ng-virtual-list-public.service.d.ts +92 -93
  328. package/lib/ng-virtual-list.component.d.ts +770 -572
  329. package/lib/ng-virtual-list.module.d.ts +12 -12
  330. package/lib/ng-virtual-list.service.d.ts +153 -135
  331. package/lib/transformations/deck-of-cards-3d.d.ts +54 -0
  332. package/lib/transformations/deck-of-cards.d.ts +50 -0
  333. package/lib/transformations/event-horizon.d.ts +26 -0
  334. package/lib/transformations/index.d.ts +7 -0
  335. package/lib/transformations/linear.d.ts +26 -0
  336. package/lib/transformations/swipe-3d.d.ts +38 -0
  337. package/lib/types/alignment.d.ts +8 -0
  338. package/lib/types/arithmetic-expression.d.ts +10 -0
  339. package/lib/types/collapsing-mode.d.ts +8 -0
  340. package/lib/{enums → types}/collection-mode.d.ts +8 -8
  341. package/lib/types/color.d.ts +4 -0
  342. package/lib/{enums → types}/direction.d.ts +8 -8
  343. package/lib/types/float-or-persentage-value.d.ts +7 -0
  344. package/lib/types/focus-alignment.d.ts +8 -8
  345. package/lib/types/focus-item-params.d.ts +13 -7
  346. package/lib/types/gradient-color-position.d.ts +7 -7
  347. package/lib/types/gradient-color-positions.d.ts +8 -8
  348. package/lib/types/id.d.ts +7 -7
  349. package/lib/types/index.d.ts +20 -6
  350. package/lib/types/item-transform.d.ts +9 -0
  351. package/lib/types/scroll-direction.d.ts +8 -6
  352. package/lib/types/selecting-mode.d.ts +8 -0
  353. package/lib/types/snap-to-item-align.d.ts +8 -0
  354. package/lib/types/snapping-distance.d.ts +8 -0
  355. package/lib/{enums → types}/snapping-method.d.ts +10 -10
  356. package/lib/types/spreading-mode.d.ts +8 -0
  357. package/lib/{enums → types}/text-direction.d.ts +10 -10
  358. package/lib/utils/animator/animator.d.ts +16 -23
  359. package/lib/utils/animator/const/index.d.ts +1 -0
  360. package/lib/utils/animator/ease.d.ts +2 -14
  361. package/lib/utils/animator/index.d.ts +6 -5
  362. package/lib/utils/animator/interfaces/animator-params.d.ts +18 -0
  363. package/lib/utils/animator/interfaces/animator-update-data.d.ts +13 -0
  364. package/lib/utils/animator/interfaces/index.d.ts +3 -0
  365. package/lib/utils/animator/types/easing.d.ts +7 -7
  366. package/lib/utils/animator/types/index.d.ts +2 -2
  367. package/lib/utils/buffer-interpolation.d.ts +5 -5
  368. package/lib/utils/cmap.d.ts +16 -16
  369. package/lib/utils/debounce.d.ts +25 -25
  370. package/lib/utils/disposable-component.d.ts +15 -15
  371. package/lib/utils/event-emitter/event-emitter.d.ts +42 -42
  372. package/lib/utils/event-emitter/index.d.ts +4 -4
  373. package/lib/utils/event-emitter/interfaces/event-emitter.d.ts +37 -37
  374. package/lib/utils/event-emitter/interfaces/index.d.ts +2 -2
  375. package/lib/utils/get-scroll-state-version.d.ts +1 -0
  376. package/lib/utils/get-selector-by-item-id.d.ts +2 -2
  377. package/lib/utils/index.d.ts +6 -6
  378. package/lib/utils/is-collapse-mode.d.ts +8 -0
  379. package/lib/utils/is-collection-mode.d.ts +8 -8
  380. package/lib/utils/is-direction.d.ts +8 -8
  381. package/lib/utils/is-persentage-value.d.ts +7 -0
  382. package/lib/utils/is-select-mode.d.ts +8 -0
  383. package/lib/utils/is-spreading-mode.d.ts +8 -0
  384. package/lib/utils/list-validators.d.ts +2 -2
  385. package/lib/utils/normalize-collection.d.ts +8 -0
  386. package/lib/utils/object.d.ts +4 -4
  387. package/lib/utils/parse-arithmetic-expression.d.ts +8 -0
  388. package/lib/utils/parse-float-or-persentage-value.d.ts +7 -0
  389. package/lib/utils/screen-reader-formatter.d.ts +4 -7
  390. package/lib/utils/scroll-event.d.ts +48 -48
  391. package/lib/utils/scrolling-direction.d.ts +17 -0
  392. package/lib/utils/snapping-method.d.ts +3 -3
  393. package/lib/utils/toggle-class-name.d.ts +7 -7
  394. package/lib/utils/validation.d.ts +35 -35
  395. package/package.json +5 -11
  396. package/public-api.d.ts +16 -13
  397. package/esm2020/lib/components/ng-list-item/base/base-virtual-list-item-component.mjs +0 -209
  398. package/esm2020/lib/components/ng-list-item/const/index.mjs +0 -30
  399. package/esm2020/lib/components/ng-list-item/ng-virtual-list-item.component.mjs +0 -207
  400. package/esm2020/lib/components/ng-list-item/ng-virtual-list-item.module.mjs +0 -20
  401. package/esm2020/lib/components/ng-list-item/utils/create-display-id.mjs +0 -4
  402. package/esm2020/lib/components/ng-list-item/utils/get-element-by-index.mjs +0 -6
  403. package/esm2020/lib/components/ng-list-item/utils/index.mjs +0 -4
  404. package/esm2020/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.mjs +0 -268
  405. package/esm2020/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.mjs +0 -78
  406. package/esm2020/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.module.mjs +0 -20
  407. package/esm2020/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.mjs +0 -139
  408. package/esm2020/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.module.mjs +0 -20
  409. package/esm2020/lib/components/ng-prerender-container/core/prerender-track-box.mjs +0 -171
  410. package/esm2020/lib/components/ng-prerender-container/ng-prerender-container.component.mjs +0 -89
  411. package/esm2020/lib/components/ng-scroll-bar/ng-scroll-bar-public.service.mjs +0 -27
  412. package/esm2020/lib/components/ng-scroll-bar/ng-scroll-bar.component.mjs +0 -282
  413. package/esm2020/lib/components/ng-scroll-view/base/base-scroll-view.component.mjs +0 -173
  414. package/esm2020/lib/components/ng-scroll-view/const/index.mjs +0 -7
  415. package/esm2020/lib/components/ng-scroll-view/ng-scroll-view.component.mjs +0 -376
  416. package/esm2020/lib/components/ng-scroll-view/utils/calculate-direction.mjs +0 -11
  417. package/esm2020/lib/components/ng-scroll-view/utils/index.mjs +0 -4
  418. package/esm2020/lib/components/ng-scroll-view/utils/scroll-box.mjs +0 -45
  419. package/esm2020/lib/components/ng-scroller/const/index.mjs +0 -2
  420. package/esm2020/lib/components/ng-scroller/ng-scroller.component.mjs +0 -448
  421. package/esm2020/lib/components/ng-scroller/utils/scroll-box.mjs +0 -52
  422. package/esm2020/lib/const/index.mjs +0 -125
  423. package/esm2020/lib/core/cache-map.mjs +0 -153
  424. package/esm2020/lib/core/track-box.mjs +0 -937
  425. package/esm2020/lib/core/tracker.mjs +0 -200
  426. package/esm2020/lib/directives/index.mjs +0 -4
  427. package/esm2020/lib/directives/item-click/item-click.directive.mjs +0 -65
  428. package/esm2020/lib/directives/item-click/item-click.module.mjs +0 -19
  429. package/esm2020/lib/directives/locale-sensitive/locale-sensitive.directive.mjs +0 -66
  430. package/esm2020/lib/enums/collection-mode.mjs +0 -2
  431. package/esm2020/lib/enums/direction.mjs +0 -2
  432. package/esm2020/lib/enums/index.mjs +0 -8
  433. package/esm2020/lib/enums/method-for-selecting-types.mjs +0 -22
  434. package/esm2020/lib/enums/method-for-selecting.mjs +0 -2
  435. package/esm2020/lib/enums/methods-for-selecting.mjs +0 -22
  436. package/esm2020/lib/enums/snapping-method.mjs +0 -2
  437. package/esm2020/lib/enums/text-direction.mjs +0 -2
  438. package/esm2020/lib/interfaces/base-virtual-list-item-component.mjs +0 -9
  439. package/esm2020/lib/interfaces/index.mjs +0 -2
  440. package/esm2020/lib/interfaces/scroll-params.mjs +0 -2
  441. package/esm2020/lib/models/render-item-config.model.mjs +0 -2
  442. package/esm2020/lib/models/render-item-measures.model.mjs +0 -3
  443. package/esm2020/lib/ng-virtual-list-public.service.mjs +0 -123
  444. package/esm2020/lib/ng-virtual-list.component.mjs +0 -2535
  445. package/esm2020/lib/ng-virtual-list.service.mjs +0 -375
  446. package/esm2020/lib/types/index.mjs +0 -2
  447. package/esm2020/lib/utils/animator/animator.mjs +0 -60
  448. package/esm2020/lib/utils/animator/ease.mjs +0 -19
  449. package/esm2020/lib/utils/animator/index.mjs +0 -4
  450. package/esm2020/lib/utils/animator/types/easing.mjs +0 -2
  451. package/esm2020/lib/utils/buffer-interpolation.mjs +0 -29
  452. package/esm2020/lib/utils/cmap.mjs +0 -34
  453. package/esm2020/lib/utils/debounce.mjs +0 -61
  454. package/esm2020/lib/utils/disposable-component.mjs +0 -29
  455. package/esm2020/lib/utils/event-emitter/event-emitter.mjs +0 -106
  456. package/esm2020/lib/utils/is-collection-mode.mjs +0 -15
  457. package/esm2020/lib/utils/is-direction.mjs +0 -15
  458. package/esm2020/lib/utils/is-method-for-selecting.mjs +0 -18
  459. package/esm2020/lib/utils/list-validators.mjs +0 -27
  460. package/esm2020/lib/utils/object.mjs +0 -28
  461. package/esm2020/lib/utils/screen-reader-formatter.mjs +0 -43
  462. package/esm2020/lib/utils/scroll-event.mjs +0 -46
  463. package/esm2020/lib/utils/snapping-method.mjs +0 -9
  464. package/esm2020/lib/utils/toggle-class-name.mjs +0 -15
  465. package/esm2020/public-api.mjs +0 -17
  466. package/fesm2015/ng-virtual-list.mjs +0 -8048
  467. package/fesm2015/ng-virtual-list.mjs.map +0 -1
  468. package/fesm2020/ng-virtual-list.mjs +0 -8011
  469. package/fesm2020/ng-virtual-list.mjs.map +0 -1
  470. package/lib/components/ng-scroller/const/index.d.ts +0 -1
  471. package/lib/directives/item-click/item-click.module.d.ts +0 -8
  472. package/lib/enums/method-for-selecting.d.ts +0 -8
  473. package/lib/utils/is-method-for-selecting.d.ts +0 -8
@@ -1,69 +1,119 @@
1
- /**
2
- * Object with configuration parameters for IRenderVirtualListItem
3
- * @link https://github.com/DjonnyX/ng-virtual-list/blob/14.x/projects/ng-virtual-list/src/lib/models/render-item-config.model.ts
4
- * @author Evgenii Alexandrovich Grebennikov
5
- * @email djonnyx@gmail.com
6
- */
7
- export interface IRenderVirtualListItemConfig {
8
- /**
9
- * Determines whether an element is new in the collection.
10
- */
11
- new: boolean;
12
- /**
13
- * Indicates that the element is odd.
14
- */
15
- odd: boolean;
16
- /**
17
- * Indicates that the element is even.
18
- */
19
- even: boolean;
20
- /**
21
- * Determines whether an element with a `sticky` property greater than zero can collapse and collapse elements in front that do not have a `sticky` property.
22
- * Default value is `false`.
23
- */
24
- collapsable: boolean;
25
- /**
26
- * If greater than 0, the element will have a sticky position with the given zIndex.
27
- */
28
- sticky: 0 | 1 | 2;
29
- /**
30
- * Determines whether an element can be selected or not. Default value is `true`.
31
- */
32
- selectable: boolean;
33
- /**
34
- * Specifies whether the element will snap.
35
- */
36
- snap: boolean;
37
- /**
38
- * Indicates that the element is snapped.
39
- */
40
- snapped: boolean;
41
- /**
42
- * Indicates that the element is being shifted by another snap element.
43
- */
44
- snappedOut: boolean;
45
- /**
46
- * Indicates that the element is a vertical list item.
47
- */
48
- isVertical: boolean;
49
- /**
50
- * Specifies that the element adapts to the size of its content.
51
- */
52
- dynamic: boolean;
53
- /**
54
- * Returns true if the snapping method is advanced
55
- */
56
- isSnappingMethodAdvanced: boolean;
57
- /**
58
- * Tab index.
59
- */
60
- tabIndex: number;
61
- /**
62
- * z-index
63
- */
64
- zIndex: string;
65
- /**
66
- * Determines whether an element is a stub.
67
- */
68
- isStub?: boolean;
69
- }
1
+ import { SnapToItemAlign } from "../types";
2
+ import { Color } from "../types";
3
+ /**
4
+ * Object with configuration parameters for IRenderVirtualListItem
5
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/14.x/projects/ng-virtual-list/src/lib/models/render-item-config.model.ts
6
+ * @author Evgenii Alexandrovich Grebennikov
7
+ * @email djonnyx@gmail.com
8
+ */
9
+ export interface IRenderVirtualListItemConfig {
10
+ /**
11
+ * Determines whether an element is new in the collection.
12
+ */
13
+ new: boolean;
14
+ /**
15
+ * Indicates that the element is odd.
16
+ */
17
+ odd: boolean;
18
+ /**
19
+ * Indicates that the element is even.
20
+ */
21
+ even: boolean;
22
+ /**
23
+ * Determines whether an element with a `sticky` property greater than zero can collapse and collapse elements in front that do not have a `sticky` property.
24
+ * Default value is `false`.
25
+ */
26
+ collapsable: boolean;
27
+ /**
28
+ * If greater than 0, the element will have a sticky position with the given zIndex.
29
+ */
30
+ sticky: 0 | 1 | 2;
31
+ /**
32
+ * Determines whether an element can be selected or not. Default value is `true`.
33
+ */
34
+ selectable: boolean;
35
+ /**
36
+ * Specifies whether the element will snap.
37
+ */
38
+ snap: boolean;
39
+ /**
40
+ * Indicates that the element is snapped.
41
+ */
42
+ snapped: boolean;
43
+ /**
44
+ * Indicates that the element is being shifted by another snap element.
45
+ */
46
+ snappedOut: boolean;
47
+ /**
48
+ * Indicates that the element is a vertical list item.
49
+ */
50
+ isVertical: boolean;
51
+ /**
52
+ * Specifies that the element adapts to the size of its content.
53
+ */
54
+ dynamic: boolean;
55
+ /**
56
+ * Returns true if the snapping method is advanced
57
+ */
58
+ isSnappingMethodAdvanced: boolean;
59
+ /**
60
+ * layout offset;
61
+ */
62
+ layoutOffset: number;
63
+ /**
64
+ * layout index offset;
65
+ */
66
+ layoutIndexOffset: number;
67
+ /**
68
+ * Tab index.
69
+ */
70
+ tabIndex: number;
71
+ /**
72
+ * z-index
73
+ */
74
+ zIndex: string;
75
+ /**
76
+ * Opacity.
77
+ */
78
+ opacity: number;
79
+ /**
80
+ * Filter.
81
+ */
82
+ filter?: string;
83
+ /**
84
+ * Blend color.
85
+ */
86
+ blendColor?: Color | null;
87
+ /**
88
+ * Determines whether an element is a stub.
89
+ */
90
+ isStub?: boolean;
91
+ /**
92
+ * Division number.
93
+ */
94
+ divides: number;
95
+ /**
96
+ * Snap to an item. The default value is `false`.
97
+ */
98
+ snapToItem: boolean;
99
+ /**
100
+ * Alignment for snapToItem. Available values ​​are `start`, `center`, and `end`. The default value is `center`.
101
+ */
102
+ snapToItemAlign: SnapToItemAlign;
103
+ /**
104
+ * Indicates whether the element is the first in the collection.
105
+ */
106
+ isFirst: boolean;
107
+ /**
108
+ * Indicates whether the element is the last one in the collection.
109
+ */
110
+ isLast: boolean;
111
+ /**
112
+ * Determines the size of an element when rendering lists with cell divisions. If sticky is 1 or 2, fullSize automatically becomes true.
113
+ */
114
+ fullSize: boolean;
115
+ /**
116
+ * Number of elements in the collection to be visualized.
117
+ */
118
+ totalItems: number;
119
+ }
@@ -1,45 +1,116 @@
1
- import { IRect } from "../interfaces";
2
- /**
3
- * Measures for IRenderVirtualListItem
4
- * @link https://github.com/DjonnyX/ng-virtual-list/blob/14.x/projects/ng-virtual-list/src/lib/models/render-item-measures.model.ts
5
- * @author Evgenii Alexandrovich Grebennikov
6
- * @email djonnyx@gmail.com
7
- */
8
- export interface IRenderVirtualListItemMeasures extends IRect {
9
- /**
10
- * Item position
11
- */
12
- position: number;
13
- /**
14
- * Scroll size
15
- */
16
- scrollSize: number;
17
- /**
18
- * Item size
19
- */
20
- size: number;
21
- /**
22
- * Bounds size
23
- */
24
- boundsSize: number;
25
- /**
26
- * Start position in viewport
27
- */
28
- absoluteStartPosition: number;
29
- /**
30
- * Start position in viewport (percent)
31
- */
32
- absoluteStartPositionPercent: number;
33
- /**
34
- * End position in viewport
35
- */
36
- absoluteEndPosition: number;
37
- /**
38
- * End position in viewport (percent)
39
- */
40
- absoluteEndPositionPercent: number;
41
- /**
42
- * Delta is calculated for Snapping Method.ADVANCED
43
- */
44
- delta: number;
45
- }
1
+ import { IRect } from "../interfaces";
2
+ import { ScrollDirection } from "../types";
3
+ /**
4
+ * Measures for IRenderVirtualListItem
5
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/14.x/projects/ng-virtual-list/src/lib/models/render-item-measures.model.ts
6
+ * @author Evgenii Alexandrovich Grebennikov
7
+ * @email djonnyx@gmail.com
8
+ */
9
+ export interface IRenderVirtualListItemMeasures extends IRect {
10
+ /**
11
+ * The X coordinate after transformation.
12
+ */
13
+ transformedX: number;
14
+ /**
15
+ * The Y coordinate after transformation.
16
+ */
17
+ transformedY: number;
18
+ /**
19
+ * The Z coordinate.
20
+ */
21
+ z: number;
22
+ /**
23
+ * Rotation X
24
+ */
25
+ rotationX: number;
26
+ /**
27
+ * Rotation Y
28
+ */
29
+ rotationY: number;
30
+ /**
31
+ * Rotation Z
32
+ */
33
+ rotationZ: number;
34
+ /**
35
+ * Scale X
36
+ */
37
+ scaleX: number;
38
+ /**
39
+ * Scale Y
40
+ */
41
+ scaleY: number;
42
+ /**
43
+ * Scale Z
44
+ */
45
+ scaleZ: number;
46
+ /**
47
+ * Minimal width.
48
+ */
49
+ minWidth: number;
50
+ /**
51
+ * Minimal height.
52
+ */
53
+ minHeight: number;
54
+ /**
55
+ * Maximum width.
56
+ */
57
+ maxWidth: number;
58
+ /**
59
+ * Maximum height.
60
+ */
61
+ maxHeight: number;
62
+ /**
63
+ * Item position
64
+ */
65
+ position: number;
66
+ /**
67
+ * Scroll size
68
+ */
69
+ scrollSize: number;
70
+ /**
71
+ * Item size
72
+ */
73
+ size: number;
74
+ /**
75
+ * Row
76
+ */
77
+ row: {
78
+ size: number;
79
+ /**
80
+ * Indicates that the element is odd.
81
+ */
82
+ odd: boolean;
83
+ /**
84
+ * Indicates that the element is even.
85
+ */
86
+ even: boolean;
87
+ };
88
+ /**
89
+ * Bounds size
90
+ */
91
+ boundsSize: number;
92
+ /**
93
+ * Start position in viewport
94
+ */
95
+ absoluteStartPosition: number;
96
+ /**
97
+ * Start position in viewport (percent)
98
+ */
99
+ absoluteStartPositionPercent: number;
100
+ /**
101
+ * End position in viewport
102
+ */
103
+ absoluteEndPosition: number;
104
+ /**
105
+ * End position in viewport (percent)
106
+ */
107
+ absoluteEndPositionPercent: number;
108
+ /**
109
+ * Scroll direction.
110
+ */
111
+ scrollDirection: ScrollDirection;
112
+ /**
113
+ * Delta is calculated for Snapping Method.ADVANCED
114
+ */
115
+ delta: number;
116
+ }
@@ -1,40 +1,40 @@
1
- import { Id } from "../types/id";
2
- import { IVirtualListItem } from "./item.model";
3
- import { IRenderVirtualListItemConfig } from "./render-item-config.model";
4
- import { IRenderVirtualListItemMeasures } from "./render-item-measures.model";
5
- /**
6
- * List screen element model
7
- * @link https://github.com/DjonnyX/ng-virtual-list/blob/14.x/projects/ng-virtual-list/src/lib/models/render-item.model.ts
8
- * @author Evgenii Alexandrovich Grebennikov
9
- * @email djonnyx@gmail.com
10
- */
11
- export interface IRenderVirtualListItem<E = any> {
12
- /**
13
- * Element index.
14
- */
15
- index: number;
16
- /**
17
- * Unique identifier of the element.
18
- */
19
- id: Id;
20
- /**
21
- * Element metrics.
22
- */
23
- measures: IRenderVirtualListItemMeasures;
24
- /**
25
- * Element data.
26
- */
27
- data: IVirtualListItem<E>;
28
- /**
29
- * Previous element data.
30
- */
31
- previouseData: IVirtualListItem<E>;
32
- /**
33
- * Next element data.
34
- */
35
- nextData: IVirtualListItem<E>;
36
- /**
37
- * Object with configuration parameters for IRenderVirtualListItem.
38
- */
39
- config: IRenderVirtualListItemConfig;
40
- }
1
+ import { Id } from "../types/id";
2
+ import { IVirtualListItem } from "./item.model";
3
+ import { IRenderVirtualListItemConfig } from "./render-item-config.model";
4
+ import { IRenderVirtualListItemMeasures } from "./render-item-measures.model";
5
+ /**
6
+ * List screen element model
7
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/14.x/projects/ng-virtual-list/src/lib/models/render-item.model.ts
8
+ * @author Evgenii Alexandrovich Grebennikov
9
+ * @email djonnyx@gmail.com
10
+ */
11
+ export interface IRenderVirtualListItem<E = any> {
12
+ /**
13
+ * Element index.
14
+ */
15
+ index: number;
16
+ /**
17
+ * Unique identifier of the element.
18
+ */
19
+ id: Id;
20
+ /**
21
+ * Element metrics.
22
+ */
23
+ measures: IRenderVirtualListItemMeasures;
24
+ /**
25
+ * Element data.
26
+ */
27
+ data: IVirtualListItem<E>;
28
+ /**
29
+ * Previous element data.
30
+ */
31
+ previouseData: IVirtualListItem<E>;
32
+ /**
33
+ * Next element data.
34
+ */
35
+ nextData: IVirtualListItem<E>;
36
+ /**
37
+ * Object with configuration parameters for IRenderVirtualListItem.
38
+ */
39
+ config: IRenderVirtualListItemConfig;
40
+ }
@@ -1,93 +1,92 @@
1
- import { Observable } from 'rxjs';
2
- import { IRenderVirtualListItem } from './models';
3
- import { IScrollOptions } from './interfaces';
4
- import { FocusAlignment, Id } from './types';
5
- import { FocusItemParams } from './types/focus-item-params';
6
- import * as i0 from "@angular/core";
7
- /**
8
- * NgVirtualListPublicService
9
- * Maximum performance for extremely large lists.
10
- * It is based on algorithms for virtualization of screen objects.
11
- * @link https://github.com/DjonnyX/ng-virtual-list/blob/14.x/projects/ng-virtual-list/src/lib/ng-virtual-list-publick.service.ts
12
- * @author Evgenii Alexandrovich Grebennikov
13
- * @email djonnyx@gmail.com
14
- */
15
- export declare class NgVirtualListPublicService {
16
- private _internalService;
17
- /**
18
- * Unique list identifier.
19
- */
20
- get id(): number;
21
- /**
22
- * Informs about a click on a list item.
23
- */
24
- get $itemClick(): Observable<IRenderVirtualListItem<any> | null>;
25
- /**
26
- * Informs about the selection of a list item(s).
27
- */
28
- get $selectedIds(): Observable<Array<Id> | Id | null>;
29
- /**
30
- * Informs about the collapse (expanding) of a list element(s).
31
- */
32
- get $collapsedIds(): Observable<Array<Id>>;
33
- /**
34
- * Informs the focus on the specified list item.
35
- */
36
- get $focusItem(): Observable<FocusItemParams>;
37
- /**
38
- * Notifies about the next change detection tick. Works similarly to `setTimeout` with a timeout of 0.
39
- */
40
- get $tick(): Observable<void>;
41
- /**
42
- * Specifies a list of selected items.
43
- */
44
- set selectedIds(ids: Array<Id> | Id | null);
45
- /**
46
- * Returns a list of selected items.
47
- */
48
- get selectedIds(): Array<Id> | Id | null;
49
- /**
50
- * Specifies a list of collapsed elements.
51
- */
52
- set сollapsedIds(ids: Array<Id>);
53
- /**
54
- * Returns a list of collapsed elements.
55
- */
56
- get сollapsedIds(): Array<Id>;
57
- /**
58
- * Updates the list
59
- * @param immediately - Indicates that the list is updated instantly.
60
- * @param force - Forced update.
61
- */
62
- update(immediately?: boolean, force?: boolean): void;
63
- /**
64
- * Selects a list item
65
- * @param id
66
- * @param selected - If the value is undefined, then the toggle method is executed, if false or true, then the selection/deselection is performed.
67
- */
68
- select(id: Id, selected?: boolean | undefined): void;
69
- /**
70
- * Collapse list items
71
- * @param id
72
- * @param collapsed - If the value is undefined, then the toggle method is executed, if false or true, then the collapse/expand is performed.
73
- */
74
- collapse(id: Id, collapsed?: boolean | undefined): void;
75
- /**
76
- * Focus an list item by a given id.
77
- */
78
- focus(id: Id, align?: FocusAlignment, scrollBehavior?: ScrollBehavior): void;
79
- /**
80
- * The method scrolls the list to the element with the given `id` and returns the value of the scrolled area.
81
- */
82
- scrollTo(id: Id, cb?: (() => void) | null, options?: IScrollOptions | null): void;
83
- /**
84
- * Scrolls the scroll area to the first item in the collection.
85
- */
86
- scrollToStart(options?: IScrollOptions): void;
87
- /**
88
- * Scrolls the list to the end of the content size.
89
- */
90
- scrollToEnd(options?: IScrollOptions): void;
91
- static ɵfac: i0.ɵɵFactoryDeclaration<NgVirtualListPublicService, never>;
92
- static ɵprov: i0.ɵɵInjectableDeclaration<NgVirtualListPublicService>;
93
- }
1
+ import { Observable } from 'rxjs';
2
+ import { IRenderVirtualListItem } from './models';
3
+ import { IScrollOptions } from './interfaces';
4
+ import { FocusAlignment, Id } from './types';
5
+ import { FocusItemParams } from './types/focus-item-params';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * NgVirtualListPublicService
9
+ * Maximum performance for extremely large lists.
10
+ * It is based on algorithms for virtualization of screen objects.
11
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/14.x/projects/ng-virtual-list/src/lib/ng-virtual-list-publick.service.ts
12
+ * @author Evgenii Alexandrovich Grebennikov
13
+ * @email djonnyx@gmail.com
14
+ */
15
+ export declare class NgVirtualListPublicService {
16
+ private _internalService;
17
+ /**
18
+ * Unique list identifier.
19
+ */
20
+ get id(): number;
21
+ /**
22
+ * Informs about a click on a list item.
23
+ */
24
+ get $virtualClick(): Observable<IRenderVirtualListItem<any> | null>;
25
+ /**
26
+ * Informs about the selection of a list item(s).
27
+ */
28
+ get $selectedIds(): Observable<Array<Id> | Id | null>;
29
+ /**
30
+ * Informs about the collapse (expanding) of a list element(s).
31
+ */
32
+ get $collapsedIds(): Observable<Array<Id>>;
33
+ /**
34
+ * Informs the focus on the specified list item.
35
+ */
36
+ get $focusItem(): Observable<FocusItemParams>;
37
+ /**
38
+ * Notifies about the next change detection tick. Works similarly to `setTimeout` with a timeout of 0.
39
+ */
40
+ get $tick(): Observable<void>;
41
+ /**
42
+ * Specifies a list of selected items.
43
+ */
44
+ set selectedIds(ids: Array<Id> | Id | null);
45
+ /**
46
+ * Returns a list of selected items.
47
+ */
48
+ get selectedIds(): Array<Id> | Id | null;
49
+ /**
50
+ * Specifies a list of collapsed elements.
51
+ */
52
+ set collapsedIds(ids: Array<Id>);
53
+ /**
54
+ * Returns a list of collapsed elements.
55
+ */
56
+ get collapsedIds(): Array<Id>;
57
+ /**
58
+ * Updates the list
59
+ * @param immediately - Indicates that the list is updated instantly.
60
+ */
61
+ update(immediately?: boolean): void;
62
+ /**
63
+ * Selects a list item
64
+ * @param id
65
+ * @param selected - If the value is undefined, then the toggle method is executed, if false or true, then the selection/deselection is performed.
66
+ */
67
+ select(id: Id, selected?: boolean | undefined): void;
68
+ /**
69
+ * Collapse list items
70
+ * @param id
71
+ * @param collapsed - If the value is undefined, then the toggle method is executed, if false or true, then the collapse/expand is performed.
72
+ */
73
+ collapse(id: Id, collapsed?: boolean | undefined): void;
74
+ /**
75
+ * Focus an list item by a given id.
76
+ */
77
+ focus(id: Id, align?: FocusAlignment, scrollBehavior?: ScrollBehavior): void;
78
+ /**
79
+ * The method scrolls the list to the element with the given `id` and returns the value of the scrolled area.
80
+ */
81
+ scrollTo(id: Id, cb?: (() => void) | null, options?: IScrollOptions | null): void;
82
+ /**
83
+ * Scrolls the scroll area to the first item in the collection.
84
+ */
85
+ scrollToStart(options?: IScrollOptions): void;
86
+ /**
87
+ * Scrolls the list to the end of the content size.
88
+ */
89
+ scrollToEnd(options?: IScrollOptions): void;
90
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgVirtualListPublicService, never>;
91
+ static ɵprov: i0.ɵɵInjectableDeclaration<NgVirtualListPublicService>;
92
+ }