ng-virtual-list 18.11.2 → 18.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 (274) hide show
  1. package/README.md +115 -111
  2. package/esm2022/lib/components/ng-list-item/base/base-virtual-list-item-component.mjs +170 -61
  3. package/esm2022/lib/components/ng-list-item/const/index.mjs +41 -2
  4. package/esm2022/lib/components/ng-list-item/interfaces/template-context.mjs +1 -1
  5. package/esm2022/lib/components/ng-list-item/ng-virtual-list-item.component.mjs +55 -51
  6. package/esm2022/lib/components/ng-list-item/ng-virtual-list-item.module.mjs +5 -5
  7. package/esm2022/lib/components/ng-list-item/utils/create-display-id.mjs +7 -1
  8. package/esm2022/lib/components/ng-list-item/utils/get-element-by-index.mjs +17 -3
  9. package/esm2022/lib/components/ng-list-item/utils/index.mjs +3 -2
  10. package/esm2022/lib/components/ng-list-item/utils/matrix-3d.mjs +18 -0
  11. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.mjs +172 -47
  12. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.mjs +32 -16
  13. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.module.mjs +5 -5
  14. package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.mjs +58 -34
  15. package/esm2022/lib/components/ng-prerender-container/core/prerender-track-box.mjs +37 -7
  16. package/esm2022/lib/components/ng-prerender-container/interfaces/refresh-params.mjs +1 -1
  17. package/esm2022/lib/components/ng-prerender-container/ng-prerender-container.component.mjs +58 -28
  18. package/esm2022/lib/components/ng-scroll-bar/const/index.mjs +8 -1
  19. package/esm2022/lib/components/ng-scroll-bar/interfaces/scroll-bar-template-context.mjs +1 -1
  20. package/esm2022/lib/components/ng-scroll-bar/ng-scroll-bar.component.mjs +236 -88
  21. package/esm2022/lib/components/ng-scroll-view/base/base-scroll-view.component.mjs +170 -44
  22. package/esm2022/lib/components/ng-scroll-view/const/index.mjs +4 -2
  23. package/esm2022/lib/components/ng-scroll-view/interfaces/scroll-to-params.mjs +1 -1
  24. package/esm2022/lib/components/ng-scroll-view/ng-scroll-view.component.mjs +610 -99
  25. package/esm2022/lib/components/ng-scroll-view/utils/calculate-direction.mjs +7 -1
  26. package/esm2022/lib/components/ng-scroll-view/utils/calculate-velocity.mjs +12 -0
  27. package/esm2022/lib/components/ng-scroll-view/utils/get-dir.mjs +10 -0
  28. package/esm2022/lib/components/ng-scroll-view/utils/index.mjs +4 -2
  29. package/esm2022/lib/components/ng-scroll-view/utils/matrix-3d.mjs +15 -0
  30. package/esm2022/lib/components/ng-scroller/enums/scroller-directions.mjs +1 -1
  31. package/esm2022/lib/components/ng-scroller/ng-scroller.component.mjs +342 -160
  32. package/esm2022/lib/const/index.mjs +50 -10
  33. package/esm2022/lib/core/cache-map.mjs +1 -54
  34. package/esm2022/lib/core/const/index.mjs +3 -0
  35. package/esm2022/lib/core/enums/index.mjs +3 -0
  36. package/esm2022/lib/core/enums/item-display-methods.mjs +14 -0
  37. package/esm2022/lib/core/events/index.mjs +3 -0
  38. package/esm2022/lib/core/events/track-box-events.mjs +12 -0
  39. package/esm2022/lib/core/interfaces/get-item-position-options.mjs +2 -0
  40. package/esm2022/lib/core/interfaces/get-metrics-returns.mjs +2 -0
  41. package/esm2022/lib/core/interfaces/index.mjs +2 -0
  42. package/esm2022/lib/core/interfaces/item.mjs +2 -0
  43. package/esm2022/lib/core/interfaces/metrics.mjs +2 -0
  44. package/esm2022/lib/core/interfaces/recalculate-metrics-options.mjs +2 -0
  45. package/esm2022/lib/core/interfaces/update-collection-options.mjs +2 -0
  46. package/esm2022/lib/core/interfaces/update-collection-returns.mjs +2 -0
  47. package/esm2022/lib/core/track-box.mjs +601 -191
  48. package/esm2022/lib/core/tracker.mjs +14 -8
  49. package/esm2022/lib/core/types/cache-map-events.mjs +2 -0
  50. package/esm2022/lib/core/types/cache-map-listeners.mjs +2 -0
  51. package/esm2022/lib/core/types/cache.mjs +2 -0
  52. package/esm2022/lib/core/types/index.mjs +2 -0
  53. package/esm2022/lib/core/types/on-change-event-listener.mjs +2 -0
  54. package/esm2022/lib/core/types/on-tick-event-listener.mjs +2 -0
  55. package/esm2022/lib/core/utils/get-service-id-prop.mjs +10 -0
  56. package/esm2022/lib/core/utils/index.mjs +3 -0
  57. package/esm2022/lib/directives/index.mjs +3 -3
  58. package/esm2022/lib/directives/locale-sensitive/locale-sensitive.directive.mjs +34 -13
  59. package/esm2022/lib/directives/virtual-click/virtual-click.directive.mjs +67 -0
  60. package/esm2022/lib/directives/virtual-click/virtual-click.module.mjs +19 -0
  61. package/esm2022/lib/enums/alignments.mjs +12 -0
  62. package/esm2022/lib/enums/collapsing-modes.mjs +22 -0
  63. package/esm2022/lib/enums/index.mjs +8 -4
  64. package/esm2022/lib/enums/selecting-modes-types.mjs +22 -0
  65. package/esm2022/lib/enums/selecting-modes.mjs +22 -0
  66. package/esm2022/lib/enums/snap-to-item-aligns.mjs +22 -0
  67. package/esm2022/lib/enums/spreading-modes.mjs +18 -0
  68. package/esm2022/lib/interfaces/animation-params.mjs +1 -1
  69. package/esm2022/lib/interfaces/base-virtual-list-item-component.mjs +2 -9
  70. package/esm2022/lib/interfaces/index.mjs +1 -1
  71. package/esm2022/lib/interfaces/item-transformation.mjs +2 -0
  72. package/esm2022/lib/interfaces/point.mjs +2 -0
  73. package/esm2022/lib/interfaces/scroll-options.mjs +1 -1
  74. package/esm2022/lib/interfaces/scroll-params.mjs +1 -1
  75. package/esm2022/lib/models/item-config-map.model.mjs +1 -1
  76. package/esm2022/lib/models/item.model.mjs +1 -1
  77. package/esm2022/lib/models/render-item-config.model.mjs +1 -1
  78. package/esm2022/lib/models/render-item-measures.model.mjs +1 -1
  79. package/esm2022/lib/ng-virtual-list-public.service.mjs +6 -7
  80. package/esm2022/lib/ng-virtual-list.component.mjs +2033 -903
  81. package/esm2022/lib/ng-virtual-list.service.mjs +91 -30
  82. package/esm2022/lib/transformations/deck-of-cards-3d.mjs +57 -0
  83. package/esm2022/lib/transformations/deck-of-cards.mjs +54 -0
  84. package/esm2022/lib/transformations/event-horizon.mjs +47 -0
  85. package/esm2022/lib/transformations/index.mjs +13 -0
  86. package/esm2022/lib/transformations/linear.mjs +47 -0
  87. package/esm2022/lib/transformations/swipe-3d.mjs +51 -0
  88. package/esm2022/lib/types/alignment.mjs +2 -0
  89. package/esm2022/lib/types/arithmetic-expression.mjs +2 -0
  90. package/esm2022/lib/types/collapsing-mode.mjs +2 -0
  91. package/esm2022/lib/types/collection-mode.mjs +2 -0
  92. package/esm2022/lib/types/color.mjs +2 -0
  93. package/esm2022/lib/types/direction.mjs +2 -0
  94. package/esm2022/lib/types/float-or-persentage-value.mjs +2 -0
  95. package/esm2022/lib/types/focus-item-params.mjs +1 -1
  96. package/esm2022/lib/types/gradient-color-position.mjs +1 -1
  97. package/esm2022/lib/types/index.mjs +1 -1
  98. package/esm2022/lib/types/item-transform.mjs +2 -0
  99. package/esm2022/lib/types/scroll-direction.mjs +1 -1
  100. package/esm2022/lib/types/selecting-mode.mjs +2 -0
  101. package/esm2022/lib/types/snap-to-item-align.mjs +2 -0
  102. package/esm2022/lib/types/snapping-distance.mjs +2 -0
  103. package/esm2022/lib/types/snapping-method.mjs +2 -0
  104. package/esm2022/lib/types/spreading-mode.mjs +2 -0
  105. package/esm2022/lib/types/text-direction.mjs +2 -0
  106. package/esm2022/lib/utils/animator/animator.mjs +28 -8
  107. package/esm2022/lib/utils/animator/const/index.mjs +2 -0
  108. package/esm2022/lib/utils/animator/index.mjs +3 -2
  109. package/esm2022/lib/utils/animator/interfaces/animator-params.mjs +2 -0
  110. package/esm2022/lib/utils/animator/interfaces/animator-update-data.mjs +2 -0
  111. package/esm2022/lib/utils/animator/interfaces/index.mjs +2 -0
  112. package/esm2022/lib/utils/animator/types/easing.mjs +1 -1
  113. package/esm2022/lib/utils/disposable-component.mjs +27 -0
  114. package/esm2022/lib/utils/event-emitter/event-emitter.mjs +1 -1
  115. package/esm2022/lib/utils/get-scroll-state-version.mjs +12 -0
  116. package/esm2022/lib/utils/is-collapse-mode.mjs +18 -0
  117. package/esm2022/lib/utils/is-collection-mode.mjs +1 -1
  118. package/esm2022/lib/utils/is-direction.mjs +1 -1
  119. package/esm2022/lib/utils/is-persentage-value.mjs +14 -0
  120. package/esm2022/lib/utils/is-select-mode.mjs +18 -0
  121. package/esm2022/lib/utils/is-spreading-mode.mjs +15 -0
  122. package/esm2022/lib/utils/list-validators.mjs +1 -1
  123. package/esm2022/lib/utils/normalize-collection.mjs +42 -0
  124. package/esm2022/lib/utils/object.mjs +1 -1
  125. package/esm2022/lib/utils/parse-arithmetic-expression.mjs +53 -0
  126. package/esm2022/lib/utils/parse-float-or-persentage-value.mjs +17 -0
  127. package/esm2022/lib/utils/scrolling-direction.mjs +29 -0
  128. package/esm2022/lib/utils/snapping-method.mjs +1 -1
  129. package/esm2022/public-api.mjs +4 -1
  130. package/fesm2022/ng-virtual-list.mjs +7545 -3904
  131. package/fesm2022/ng-virtual-list.mjs.map +1 -1
  132. package/lib/components/ng-list-item/base/base-virtual-list-item-component.d.ts +40 -16
  133. package/lib/components/ng-list-item/const/index.d.ts +3 -1
  134. package/lib/components/ng-list-item/interfaces/template-context.d.ts +1 -1
  135. package/lib/components/ng-list-item/ng-virtual-list-item.component.d.ts +5 -2
  136. package/lib/components/ng-list-item/ng-virtual-list-item.module.d.ts +2 -2
  137. package/lib/components/ng-list-item/utils/create-display-id.d.ts +6 -0
  138. package/lib/components/ng-list-item/utils/get-element-by-index.d.ts +15 -1
  139. package/lib/components/ng-list-item/utils/index.d.ts +2 -1
  140. package/lib/components/ng-list-item/utils/matrix-3d.d.ts +7 -0
  141. package/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.d.ts +69 -26
  142. package/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.d.ts +2 -2
  143. package/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.module.d.ts +2 -2
  144. package/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.d.ts +33 -12
  145. package/lib/components/ng-prerender-container/interfaces/refresh-params.d.ts +1 -0
  146. package/lib/components/ng-prerender-container/ng-prerender-container.component.d.ts +20 -17
  147. package/lib/components/ng-scroll-bar/const/index.d.ts +2 -0
  148. package/lib/components/ng-scroll-bar/interfaces/scroll-bar-template-context.d.ts +2 -2
  149. package/lib/components/ng-scroll-bar/ng-scroll-bar.component.d.ts +75 -24
  150. package/lib/components/ng-scroll-view/base/base-scroll-view.component.d.ts +49 -16
  151. package/lib/components/ng-scroll-view/const/index.d.ts +3 -1
  152. package/lib/components/ng-scroll-view/interfaces/scroll-to-params.d.ts +4 -1
  153. package/lib/components/ng-scroll-view/ng-scroll-view.component.d.ts +79 -11
  154. package/lib/components/ng-scroll-view/utils/calculate-direction.d.ts +6 -0
  155. package/lib/components/ng-scroll-view/utils/calculate-velocity.d.ts +7 -0
  156. package/lib/components/ng-scroll-view/utils/get-dir.d.ts +7 -0
  157. package/lib/components/ng-scroll-view/utils/index.d.ts +3 -1
  158. package/lib/components/ng-scroll-view/utils/matrix-3d.d.ts +7 -0
  159. package/lib/components/ng-scroller/enums/scroller-directions.d.ts +2 -1
  160. package/lib/components/ng-scroller/ng-scroller.component.d.ts +111 -47
  161. package/lib/const/index.d.ts +46 -5
  162. package/lib/core/cache-map.d.ts +0 -10
  163. package/lib/core/const/index.d.ts +1 -0
  164. package/lib/core/enums/index.d.ts +2 -0
  165. package/lib/core/enums/item-display-methods.d.ts +12 -0
  166. package/lib/core/events/index.d.ts +2 -0
  167. package/lib/core/events/track-box-events.d.ts +10 -0
  168. package/lib/core/interfaces/get-item-position-options.d.ts +10 -0
  169. package/lib/core/interfaces/get-metrics-returns.d.ts +11 -0
  170. package/lib/core/interfaces/index.d.ts +8 -0
  171. package/lib/core/interfaces/item.d.ts +9 -0
  172. package/lib/core/interfaces/metrics.d.ts +51 -0
  173. package/lib/core/interfaces/recalculate-metrics-options.d.ts +32 -0
  174. package/lib/core/interfaces/update-collection-options.d.ts +10 -0
  175. package/lib/core/interfaces/update-collection-returns.d.ts +14 -0
  176. package/lib/core/track-box.d.ts +25 -95
  177. package/lib/core/tracker.d.ts +1 -1
  178. package/lib/core/types/cache-map-events.d.ts +8 -0
  179. package/lib/core/types/cache-map-listeners.d.ts +9 -0
  180. package/lib/core/types/cache.d.ts +12 -0
  181. package/lib/core/types/index.d.ts +6 -0
  182. package/lib/core/types/on-change-event-listener.d.ts +7 -0
  183. package/lib/core/types/on-tick-event-listener.d.ts +7 -0
  184. package/lib/core/utils/get-service-id-prop.d.ts +7 -0
  185. package/lib/core/utils/index.d.ts +2 -0
  186. package/lib/directives/index.d.ts +2 -2
  187. package/lib/directives/locale-sensitive/locale-sensitive.directive.d.ts +16 -6
  188. package/lib/directives/virtual-click/virtual-click.directive.d.ts +22 -0
  189. package/lib/directives/virtual-click/virtual-click.module.d.ts +8 -0
  190. package/lib/enums/alignments.d.ts +10 -0
  191. package/lib/enums/collapsing-modes.d.ts +20 -0
  192. package/lib/enums/index.d.ts +7 -9
  193. package/lib/enums/{method-for-selecting-types.d.ts → selecting-modes-types.d.ts} +3 -3
  194. package/lib/enums/{methods-for-selecting.d.ts → selecting-modes.d.ts} +3 -3
  195. package/lib/enums/snap-to-item-aligns.d.ts +20 -0
  196. package/lib/enums/spreading-modes.d.ts +16 -0
  197. package/lib/interfaces/animation-params.d.ts +1 -0
  198. package/lib/interfaces/base-virtual-list-item-component.d.ts +13 -13
  199. package/lib/interfaces/index.d.ts +3 -2
  200. package/lib/interfaces/item-transformation.d.ts +22 -0
  201. package/lib/interfaces/point.d.ts +16 -0
  202. package/lib/interfaces/scroll-options.d.ts +4 -0
  203. package/lib/interfaces/scroll-params.d.ts +3 -2
  204. package/lib/models/item-config-map.model.d.ts +5 -0
  205. package/lib/models/item.model.d.ts +7 -0
  206. package/lib/models/render-item-config.model.d.ts +50 -0
  207. package/lib/models/render-item-measures.model.d.ts +71 -0
  208. package/lib/ng-virtual-list-public.service.d.ts +4 -5
  209. package/lib/ng-virtual-list.component.d.ts +462 -135
  210. package/lib/ng-virtual-list.service.d.ts +33 -12
  211. package/lib/transformations/deck-of-cards-3d.d.ts +54 -0
  212. package/lib/transformations/deck-of-cards.d.ts +50 -0
  213. package/lib/transformations/event-horizon.d.ts +26 -0
  214. package/lib/transformations/index.d.ts +7 -0
  215. package/lib/transformations/linear.d.ts +26 -0
  216. package/lib/transformations/swipe-3d.d.ts +38 -0
  217. package/lib/types/alignment.d.ts +8 -0
  218. package/lib/types/arithmetic-expression.d.ts +10 -0
  219. package/lib/types/collapsing-mode.d.ts +8 -0
  220. package/lib/{enums → types}/collection-mode.d.ts +1 -1
  221. package/lib/types/color.d.ts +4 -0
  222. package/lib/{enums → types}/direction.d.ts +1 -1
  223. package/lib/types/float-or-persentage-value.d.ts +7 -0
  224. package/lib/types/focus-item-params.d.ts +6 -0
  225. package/lib/types/gradient-color-position.d.ts +1 -1
  226. package/lib/types/index.d.ts +15 -1
  227. package/lib/types/item-transform.d.ts +9 -0
  228. package/lib/types/scroll-direction.d.ts +2 -0
  229. package/lib/types/selecting-mode.d.ts +8 -0
  230. package/lib/types/snap-to-item-align.d.ts +8 -0
  231. package/lib/types/snapping-distance.d.ts +8 -0
  232. package/lib/{enums → types}/snapping-method.d.ts +1 -1
  233. package/lib/types/spreading-mode.d.ts +8 -0
  234. package/lib/{enums → types}/text-direction.d.ts +1 -1
  235. package/lib/utils/animator/animator.d.ts +10 -17
  236. package/lib/utils/animator/const/index.d.ts +1 -0
  237. package/lib/utils/animator/index.d.ts +2 -1
  238. package/lib/utils/animator/interfaces/animator-params.d.ts +18 -0
  239. package/lib/utils/animator/interfaces/animator-update-data.d.ts +13 -0
  240. package/lib/utils/animator/interfaces/index.d.ts +3 -0
  241. package/lib/utils/animator/types/easing.d.ts +6 -0
  242. package/lib/utils/disposable-component.d.ts +15 -0
  243. package/lib/utils/get-scroll-state-version.d.ts +1 -0
  244. package/lib/utils/is-collapse-mode.d.ts +8 -0
  245. package/lib/utils/is-collection-mode.d.ts +1 -1
  246. package/lib/utils/is-direction.d.ts +1 -1
  247. package/lib/utils/is-persentage-value.d.ts +7 -0
  248. package/lib/utils/is-select-mode.d.ts +8 -0
  249. package/lib/utils/is-spreading-mode.d.ts +8 -0
  250. package/lib/utils/list-validators.d.ts +1 -1
  251. package/lib/utils/normalize-collection.d.ts +8 -0
  252. package/lib/utils/object.d.ts +1 -1
  253. package/lib/utils/parse-arithmetic-expression.d.ts +8 -0
  254. package/lib/utils/parse-float-or-persentage-value.d.ts +7 -0
  255. package/lib/utils/scrolling-direction.d.ts +17 -0
  256. package/lib/utils/snapping-method.d.ts +1 -1
  257. package/package.json +1 -1
  258. package/public-api.d.ts +3 -0
  259. package/esm2022/lib/components/ng-scroller/const/index.mjs +0 -2
  260. package/esm2022/lib/directives/item-click/item-click.directive.mjs +0 -59
  261. package/esm2022/lib/directives/item-click/item-click.module.mjs +0 -19
  262. package/esm2022/lib/enums/collection-mode.mjs +0 -2
  263. package/esm2022/lib/enums/direction.mjs +0 -2
  264. package/esm2022/lib/enums/method-for-selecting-types.mjs +0 -22
  265. package/esm2022/lib/enums/method-for-selecting.mjs +0 -2
  266. package/esm2022/lib/enums/methods-for-selecting.mjs +0 -22
  267. package/esm2022/lib/enums/snapping-method.mjs +0 -2
  268. package/esm2022/lib/enums/text-direction.mjs +0 -2
  269. package/esm2022/lib/utils/is-method-for-selecting.mjs +0 -18
  270. package/lib/components/ng-scroller/const/index.d.ts +0 -1
  271. package/lib/directives/item-click/item-click.directive.d.ts +0 -19
  272. package/lib/directives/item-click/item-click.module.d.ts +0 -8
  273. package/lib/enums/method-for-selecting.d.ts +0 -8
  274. package/lib/utils/is-method-for-selecting.d.ts +0 -8
@@ -1,20 +1,27 @@
1
- import { DestroyRef, ElementRef, Signal, TemplateRef } from '@angular/core';
1
+ import { ChangeDetectorRef, ElementRef, TemplateRef } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
2
3
  import { ISize } from '../../../interfaces';
3
4
  import { IRenderVirtualListItem } from '../../../models/render-item.model';
4
5
  import { IDisplayObjectConfig, IDisplayObjectMeasures } from '../../../models';
5
6
  import { ITemplateContext } from '../interfaces';
6
- import { TextDirection } from '../../../enums';
7
+ import { TextDirection } from '../../../types';
8
+ import { DisposableComponent } from '../../../utils/disposable-component';
7
9
  import { NgVirtualListService } from '../../../ng-virtual-list.service';
10
+ import { IBaseVirtualListItemComponent } from '../../../interfaces/base-virtual-list-item-component';
11
+ import { Color } from '../../../types';
12
+ import * as i0 from "@angular/core";
8
13
  /**
9
14
  * BaseVirtualListItemComponent
10
15
  * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/list-item/base/base-virtual-list-item-component.ts
11
16
  * @author Evgenii Alexandrovich Grebennikov
12
17
  * @email djonnyx@gmail.com
13
18
  */
14
- export declare class BaseVirtualListItemComponent {
15
- private _cdr;
19
+ export declare class BaseVirtualListItemComponent extends DisposableComponent implements IBaseVirtualListItemComponent {
20
+ protected _item: ElementRef<HTMLDivElement> | undefined;
21
+ protected _container: ElementRef<HTMLDivElement> | undefined;
16
22
  private _apiService;
17
23
  protected readonly _service: NgVirtualListService;
24
+ protected _cdr: ChangeDetectorRef;
18
25
  protected _id: number;
19
26
  get id(): number;
20
27
  protected _listId: number;
@@ -22,38 +29,55 @@ export declare class BaseVirtualListItemComponent {
22
29
  protected _displayId: string;
23
30
  get displayId(): string;
24
31
  protected _isSelected: boolean;
32
+ set isSelected(v: boolean);
33
+ get isSelected(): boolean;
25
34
  protected _isCollapsed: boolean;
26
- protected readonly config: import("@angular/core").WritableSignal<IDisplayObjectConfig>;
27
- protected readonly measures: import("@angular/core").WritableSignal<IDisplayObjectMeasures | null>;
28
- protected readonly focused: import("@angular/core").WritableSignal<boolean>;
29
- protected readonly part: import("@angular/core").WritableSignal<string>;
30
- protected readonly data: import("@angular/core").WritableSignal<IRenderVirtualListItem<any> | null>;
35
+ protected _$config: BehaviorSubject<IDisplayObjectConfig>;
36
+ $config: import("rxjs").Observable<IDisplayObjectConfig>;
37
+ protected _$measures: BehaviorSubject<IDisplayObjectMeasures | null>;
38
+ $measures: import("rxjs").Observable<IDisplayObjectMeasures | null>;
39
+ protected _$focused: BehaviorSubject<boolean>;
40
+ $focused: import("rxjs").Observable<boolean>;
41
+ protected _$part: BehaviorSubject<string>;
42
+ $part: import("rxjs").Observable<string>;
43
+ protected _$fxPart: BehaviorSubject<string>;
44
+ $fxPart: import("rxjs").Observable<string>;
31
45
  protected _data: IRenderVirtualListItem | null;
46
+ get data(): IRenderVirtualListItem<any> | null;
47
+ protected readonly _$data: BehaviorSubject<IRenderVirtualListItem<any> | null>;
48
+ protected readonly $data: import("rxjs").Observable<IRenderVirtualListItem<any> | null>;
32
49
  set item(v: IRenderVirtualListItem | null);
33
- protected readonly classes: Signal<{
50
+ private _$classes;
51
+ $classes: import("rxjs").Observable<{
34
52
  [cName: string]: boolean;
35
53
  }>;
36
- protected readonly index: Signal<number>;
37
- protected readonly templateContext: Signal<ITemplateContext>;
54
+ private _$index;
55
+ $index: import("rxjs").Observable<number>;
56
+ private _$templateContext;
57
+ $templateContext: import("rxjs").Observable<ITemplateContext<any>>;
38
58
  regular: boolean;
59
+ protected _blendColor: Color | null;
39
60
  protected _scrollBarSize: number;
40
61
  protected _langTextDir: TextDirection;
41
62
  protected _regularLength: string;
42
63
  set regularLength(v: string);
43
64
  get item(): IRenderVirtualListItem | null;
44
- get itemId(): import("ng-virtual-list").Id | undefined;
45
- protected readonly itemRenderer: import("@angular/core").WritableSignal<TemplateRef<any> | undefined>;
46
- protected _renderer: TemplateRef<any> | undefined;
65
+ get itemId(): import("../../../types").Id | undefined;
66
+ get zIndex(): string;
67
+ get visibility(): string;
68
+ protected itemRenderer: TemplateRef<any> | undefined;
47
69
  set renderer(v: TemplateRef<any> | undefined);
48
70
  protected _elementRef: ElementRef<HTMLElement>;
49
71
  get element(): HTMLElement;
50
- protected _destroyRef: DestroyRef;
51
72
  constructor();
52
73
  protected updateMeasures(v: IRenderVirtualListItem<any> | null): void;
53
74
  protected updateConfig(v: IRenderVirtualListItem<any> | null): void;
54
75
  protected update(): void;
55
76
  protected updatePartStr(v: IRenderVirtualListItem | null, isSelected: boolean, isCollapsed: boolean): void;
77
+ protected hasFocus(): boolean;
56
78
  getBounds(): ISize;
57
79
  show(): void;
58
80
  hide(): void;
81
+ static ɵfac: i0.ɵɵFactoryDeclaration<BaseVirtualListItemComponent, never>;
82
+ static ɵcmp: i0.ɵɵComponentDeclaration<BaseVirtualListItemComponent, "ng-base-virtual-list-item", never, {}, {}, never, never, false, never>;
59
83
  }
@@ -1 +1,3 @@
1
- export declare const ID = "id", TRANSLATE_3D_HIDDEN = "translate3d(-1000px,-1000px,0)", ATTR_AREA_SELECTED = "area-selected", POSITION = "position", POSITION_ZERO = "0", ITEM_ID = "item-id", KEY_SPACE = " ", KEY_ARR_LEFT = "ArrowLeft", KEY_ARR_UP = "ArrowUp", KEY_ARR_RIGHT = "ArrowRight", KEY_ARR_DOWN = "ArrowDown", EVENT_FOCUS_IN = "focusin", EVENT_FOCUS_OUT = "focusout", EVENT_KEY_DOWN = "keydown", CLASS_NAME_SNAPPED = "snapped", CLASS_NAME_SNAPPED_OUT = "snapped-out", CLASS_NAME_FOCUS = "focus";
1
+ import { ITemplateContext } from "../interfaces";
2
+ export declare const ID = "id", NGVL_VISIBILITY = "ngvl-visibility", MATRIX_3D_HIDDEN: string, ATTR_AREA_SELECTED = "area-selected", POSITION = "position", POSITION_ZERO = "0", ITEM_ID = "item-id", KEY_SPACE = " ", KEY_ARR_LEFT = "ArrowLeft", KEY_ARR_UP = "ArrowUp", KEY_ARR_RIGHT = "ArrowRight", KEY_ARR_DOWN = "ArrowDown", EVENT_FOCUS_IN = "focusin", EVENT_FOCUS_OUT = "focusout", EVENT_KEY_DOWN = "keydown", CLASS_NAME_SNAPPED = "snapped", CLASS_NAME_SNAPPED_OUT = "snapped-out", CLASS_NAME_FOCUS = "focus";
3
+ export declare const DEFAULT_TEMPLATE_CONTEXT: ITemplateContext;
@@ -10,7 +10,7 @@ export interface ITemplateContext<D = any> {
10
10
  /**
11
11
  * API provider.
12
12
  */
13
- api: NgVirtualListPublicService;
13
+ api: NgVirtualListPublicService | null;
14
14
  /**
15
15
  * List item data.
16
16
  */
@@ -1,4 +1,5 @@
1
1
  import { Injector, OnInit } from '@angular/core';
2
+ import { Observable } from 'rxjs';
2
3
  import { IRenderVirtualListItem } from '../../models/render-item.model';
3
4
  import { BaseVirtualListItemComponent } from './base';
4
5
  import * as i0 from "@angular/core";
@@ -6,16 +7,18 @@ import * as i0 from "@angular/core";
6
7
  * Virtual list component.
7
8
  * Maximum performance for extremely large lists.
8
9
  * It is based on algorithms for virtualization of screen objects.
9
- * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/list-item/ng-virtual-list-item.component.ts
10
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-list-item/ng-virtual-list-item.component.ts
10
11
  * @author Evgenii Alexandrovich Grebennikov
11
12
  * @email djonnyx@gmail.com
12
13
  */
13
14
  export declare class NgVirtualListItemComponent extends BaseVirtualListItemComponent implements OnInit {
14
- protected readonly maxClickDistance: import("@angular/core").WritableSignal<number>;
15
+ private _$maxClickDistance;
16
+ $maxClickDistance: Observable<number>;
15
17
  protected _injector: Injector;
16
18
  constructor();
17
19
  ngOnInit(): void;
18
20
  private keyKode;
21
+ private getNavigationTimeout;
19
22
  private toNextItem;
20
23
  private toPrevItem;
21
24
  private focusNext;
@@ -1,9 +1,9 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./ng-virtual-list-item.component";
3
3
  import * as i2 from "@angular/common";
4
- import * as i3 from "../../directives/item-click/item-click.module";
4
+ import * as i3 from "../../directives/virtual-click/virtual-click.module";
5
5
  export declare class NgVirtualListItemModule {
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<NgVirtualListItemModule, never>;
7
- static ɵmod: i0.ɵɵNgModuleDeclaration<NgVirtualListItemModule, [typeof i1.NgVirtualListItemComponent], [typeof i2.CommonModule, typeof i3.ItemClickModule], [typeof i1.NgVirtualListItemComponent]>;
7
+ static ɵmod: i0.ɵɵNgModuleDeclaration<NgVirtualListItemModule, [typeof i1.NgVirtualListItemComponent], [typeof i2.CommonModule, typeof i3.VirtualClickModule], [typeof i1.NgVirtualListItemComponent]>;
8
8
  static ɵinj: i0.ɵɵInjectorDeclaration<NgVirtualListItemModule>;
9
9
  }
@@ -1 +1,7 @@
1
+ /**
2
+ * createDisplayId
3
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-list-item/utils/create-display-id.ts
4
+ * @author Evgenii Alexandrovich Grebennikov
5
+ * @email djonnyx@gmail.com
6
+ */
1
7
  export declare const createDisplayId: (listId: number, id: number) => string;
@@ -1 +1,15 @@
1
- export declare const NGVL_INDEX = "ngvl-index", getListElementByIndex: (index: number) => string, getListElements: () => string;
1
+ export declare const NGVL_INDEX = "ngvl-index",
2
+ /**
3
+ * getListElementByIndex
4
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-list-item/utils/get-element-by-index.ts
5
+ * @author Evgenii Alexandrovich Grebennikov
6
+ * @email djonnyx@gmail.com
7
+ */
8
+ getListElementByIndex: (index: number) => string,
9
+ /**
10
+ * getListElements
11
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-list-item/utils/get-element-by-index.ts
12
+ * @author Evgenii Alexandrovich Grebennikov
13
+ * @email djonnyx@gmail.com
14
+ */
15
+ getListElements: () => string;
@@ -1,3 +1,4 @@
1
1
  import { getListElementByIndex, getListElements, NGVL_INDEX } from './get-element-by-index';
2
2
  import { createDisplayId } from './create-display-id';
3
- export { createDisplayId, getListElementByIndex, getListElements, NGVL_INDEX, };
3
+ import { matrix3d } from './matrix-3d';
4
+ export { createDisplayId, getListElementByIndex, getListElements, matrix3d, NGVL_INDEX, };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * matrix3d
3
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-list-item/utils/matrix-3d.ts
4
+ * @author Evgenii Alexandrovich Grebennikov
5
+ * @email djonnyx@gmail.com
6
+ */
7
+ export declare const matrix3d: (x: number, y: number, z: number, scaleX: number, scaleY: number, scaleZ: number, rotationX: number, rotationY: number, rotationZ: number) => string;
@@ -1,52 +1,95 @@
1
1
  import { OnDestroy, TemplateRef } from "@angular/core";
2
- import { Observable } from "rxjs";
2
+ import { BehaviorSubject } from "rxjs";
3
3
  import { ISize } from '../../../../interfaces';
4
4
  import { IVirtualListCollection } from "../../../../models";
5
5
  import { PrerenderCache } from "../../types/cache";
6
6
  import { BaseVirtualListItemComponent } from "../../../ng-list-item/base";
7
7
  import { Component$1 } from "../../../../models/component.model";
8
- import { Direction } from "../../../../enums";
8
+ import { Direction } from "../../../../types";
9
+ import { DisposableComponent } from "../../../../utils/disposable-component";
9
10
  import * as i0 from "@angular/core";
10
11
  /**
11
- * PrerenderList.
12
+ * NgPrerenderList
12
13
  * Maximum performance for extremely large lists.
13
14
  * It is based on algorithms for virtualization of screen objects.
14
- * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/prerender-container/components/prerender-list/prerender-list.component.ts
15
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-prerender-container/components/ng-prerender-list/ng-prerender-list.component.ts
15
16
  * @author Evgenii Alexandrovich Grebennikov
16
17
  * @email djonnyx@gmail.com
17
18
  */
18
- export declare class NgPrerenderList implements OnDestroy {
19
+ export declare class NgPrerenderList extends DisposableComponent implements OnDestroy {
19
20
  private _listContainerRef;
20
- enabled: import("@angular/core").InputSignal<boolean>;
21
- direction: import("@angular/core").InputSignal<Direction>;
22
- isVertical: import("@angular/core").InputSignal<boolean>;
23
- scrollbarEnabled: import("@angular/core").InputSignal<boolean>;
24
- startOffset: import("@angular/core").InputSignal<number>;
25
- endOffset: import("@angular/core").InputSignal<number>;
26
- bounds: import("@angular/core").InputSignal<ISize>;
27
- dynamic: import("@angular/core").InputSignal<boolean>;
28
- itemSize: import("@angular/core").InputSignal<number>;
29
- trackBy: import("@angular/core").InputSignal<string>;
30
- itemRenderer: import("@angular/core").InputSignal<TemplateRef<any> | undefined>;
31
- itemComponentClass: import("@angular/core").InputSignal<Component$1<BaseVirtualListItemComponent>>;
32
- protected _items: import("@angular/core").WritableSignal<IVirtualListCollection<Object> | null>;
33
- protected readonly classes: import("@angular/core").WritableSignal<{
21
+ protected _$enabled: BehaviorSubject<boolean>;
22
+ readonly $enabled: import("rxjs").Observable<boolean>;
23
+ set enabled(v: boolean);
24
+ get enabled(): boolean;
25
+ protected _$direction: BehaviorSubject<Direction>;
26
+ readonly $direction: import("rxjs").Observable<Direction>;
27
+ set direction(v: Direction);
28
+ get direction(): Direction;
29
+ protected _$isVertical: BehaviorSubject<boolean>;
30
+ readonly $isVertical: import("rxjs").Observable<boolean>;
31
+ set isVertical(v: boolean);
32
+ get isVertical(): boolean;
33
+ protected _$scrollbarEnabled: BehaviorSubject<boolean>;
34
+ readonly $scrollbarEnabled: import("rxjs").Observable<boolean>;
35
+ set scrollbarEnabled(v: boolean);
36
+ get scrollbarEnabled(): boolean;
37
+ protected _$startOffset: BehaviorSubject<number>;
38
+ readonly $startOffset: import("rxjs").Observable<number>;
39
+ set startOffset(v: number);
40
+ get startOffset(): number;
41
+ protected _$endOffset: BehaviorSubject<number>;
42
+ readonly $endOffset: import("rxjs").Observable<number>;
43
+ set endOffset(v: number);
44
+ get endOffset(): number;
45
+ protected _$bounds: BehaviorSubject<ISize | null>;
46
+ readonly $bounds: import("rxjs").Observable<ISize | null>;
47
+ set bounds(v: ISize | null);
48
+ get bounds(): ISize | null;
49
+ protected _$dynamic: BehaviorSubject<boolean>;
50
+ readonly $dynamic: import("rxjs").Observable<boolean>;
51
+ set dynamic(v: boolean);
52
+ get dynamic(): boolean;
53
+ protected _$itemSize: BehaviorSubject<number>;
54
+ readonly $itemSize: import("rxjs").Observable<number>;
55
+ set itemSize(v: number);
56
+ get itemSize(): number;
57
+ protected _$trackBy: BehaviorSubject<string>;
58
+ readonly $trackBy: import("rxjs").Observable<string>;
59
+ set trackBy(v: string);
60
+ get trackBy(): string;
61
+ protected _$divides: BehaviorSubject<number>;
62
+ readonly $divides: import("rxjs").Observable<number>;
63
+ set divides(v: number);
64
+ get divides(): number;
65
+ protected _$items: BehaviorSubject<IVirtualListCollection<Object>>;
66
+ readonly $items: import("rxjs").Observable<IVirtualListCollection<Object>>;
67
+ set items(v: IVirtualListCollection);
68
+ get items(): IVirtualListCollection;
69
+ protected _$itemRenderer: BehaviorSubject<TemplateRef<any> | null>;
70
+ readonly $itemRenderer: import("rxjs").Observable<TemplateRef<any> | null>;
71
+ set itemRenderer(v: TemplateRef<any> | null);
72
+ get itemRenderer(): TemplateRef<any> | null;
73
+ protected _$itemComponentClass: BehaviorSubject<Component$1<BaseVirtualListItemComponent>>;
74
+ readonly $itemComponentClass: import("rxjs").Observable<Component$1<BaseVirtualListItemComponent>>;
75
+ set itemComponentClass(v: Component$1<BaseVirtualListItemComponent>);
76
+ get itemComponentClass(): Component$1<BaseVirtualListItemComponent>;
77
+ protected _$classes: BehaviorSubject<{
78
+ [cName: string]: boolean;
79
+ }>;
80
+ readonly $classes: import("rxjs").Observable<{
34
81
  [cName: string]: boolean;
35
82
  }>;
36
83
  private _$render;
37
- $render: Observable<PrerenderCache>;
84
+ $render: import("rxjs").Observable<PrerenderCache>;
38
85
  private _$componentResize;
39
- protected $componentResize: Observable<PrerenderCache>;
86
+ protected $componentResize: import("rxjs").Observable<PrerenderCache>;
40
87
  private _trackBox;
41
88
  private _onTrackBoxResizeHandler;
42
89
  private _elementRef;
43
- protected $isVertical: Observable<boolean>;
44
- protected $items: Observable<IVirtualListCollection | null>;
45
- protected $bounds: Observable<ISize>;
46
90
  get active(): boolean;
47
91
  private _activated;
48
92
  private _subscriptions;
49
- private _destroyRef;
50
93
  constructor();
51
94
  activate(): void;
52
95
  deactivate(): void;
@@ -57,5 +100,5 @@ export declare class NgPrerenderList implements OnDestroy {
57
100
  ngOnDestroy(): void;
58
101
  dispose(): void;
59
102
  static ɵfac: i0.ɵɵFactoryDeclaration<NgPrerenderList, never>;
60
- static ɵcmp: i0.ɵɵComponentDeclaration<NgPrerenderList, "ng-prerender-list", never, { "enabled": { "alias": "enabled"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "isVertical": { "alias": "isVertical"; "required": false; "isSignal": true; }; "scrollbarEnabled": { "alias": "scrollbarEnabled"; "required": false; "isSignal": true; }; "startOffset": { "alias": "startOffset"; "required": false; "isSignal": true; }; "endOffset": { "alias": "endOffset"; "required": false; "isSignal": true; }; "bounds": { "alias": "bounds"; "required": true; "isSignal": true; }; "dynamic": { "alias": "dynamic"; "required": false; "isSignal": true; }; "itemSize": { "alias": "itemSize"; "required": false; "isSignal": true; }; "trackBy": { "alias": "trackBy"; "required": false; "isSignal": true; }; "itemRenderer": { "alias": "itemRenderer"; "required": false; "isSignal": true; }; "itemComponentClass": { "alias": "itemComponentClass"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
103
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgPrerenderList, "ng-prerender-list", never, { "enabled": { "alias": "enabled"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "isVertical": { "alias": "isVertical"; "required": false; }; "scrollbarEnabled": { "alias": "scrollbarEnabled"; "required": false; }; "startOffset": { "alias": "startOffset"; "required": false; }; "endOffset": { "alias": "endOffset"; "required": false; }; "bounds": { "alias": "bounds"; "required": false; }; "dynamic": { "alias": "dynamic"; "required": false; }; "itemSize": { "alias": "itemSize"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "divides": { "alias": "divides"; "required": false; }; "items": { "alias": "items"; "required": false; }; "itemRenderer": { "alias": "itemRenderer"; "required": false; }; "itemComponentClass": { "alias": "itemComponentClass"; "required": false; }; }, {}, never, never, false, never>;
61
104
  }
@@ -1,10 +1,10 @@
1
1
  import { NgVirtualListItemComponent } from '../../../ng-list-item/ng-virtual-list-item.component';
2
2
  import * as i0 from "@angular/core";
3
3
  /**
4
- * Virtual list component.
4
+ * NgPrerenderVirtualListItemComponent
5
5
  * Maximum performance for extremely large lists.
6
6
  * It is based on algorithms for virtualization of screen objects.
7
- * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-prerender-container/components/ng-prerender-list-item.component.ts
7
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.ts
8
8
  * @author Evgenii Alexandrovich Grebennikov
9
9
  * @email djonnyx@gmail.com
10
10
  */
@@ -1,9 +1,9 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./ng-prerender-list-item.component";
3
3
  import * as i2 from "@angular/common";
4
- import * as i3 from "../../../../directives/item-click/item-click.module";
4
+ import * as i3 from "../../../../directives/virtual-click/virtual-click.module";
5
5
  export declare class NgPrerenderVirtualListItemModule {
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<NgPrerenderVirtualListItemModule, never>;
7
- static ɵmod: i0.ɵɵNgModuleDeclaration<NgPrerenderVirtualListItemModule, [typeof i1.NgPrerenderVirtualListItemComponent], [typeof i2.CommonModule, typeof i3.ItemClickModule], [typeof i1.NgPrerenderVirtualListItemComponent]>;
7
+ static ɵmod: i0.ɵɵNgModuleDeclaration<NgPrerenderVirtualListItemModule, [typeof i1.NgPrerenderVirtualListItemComponent], [typeof i2.CommonModule, typeof i3.VirtualClickModule], [typeof i1.NgPrerenderVirtualListItemComponent]>;
8
8
  static ɵinj: i0.ɵɵInjectorDeclaration<NgPrerenderVirtualListItemModule>;
9
9
  }
@@ -1,31 +1,52 @@
1
- import { Signal } from '@angular/core';
2
- import { TextDirection } from '../../../../enums';
1
+ import { BehaviorSubject } from 'rxjs';
2
+ import { TextDirection } from '../../../../types';
3
3
  import { BaseScrollView } from '../../../ng-scroll-view/base/base-scroll-view.component';
4
4
  import { NgScrollBarComponent } from '../../../ng-scroll-bar/ng-scroll-bar.component';
5
5
  import * as i0 from "@angular/core";
6
6
  /**
7
- * PrerenderScrollerComponent.
7
+ * NgPrerenderScrollerComponent
8
8
  * Maximum performance for extremely large lists.
9
9
  * It is based on algorithms for virtualization of screen objects.
10
- * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/prerender-container/prerender-scroller/prerender-scroller.component.ts
10
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-prerender-container/components/ng-prerender-scroller/ng-prerender-scroller.component.ts
11
11
  * @author Evgenii Alexandrovich Grebennikov
12
12
  * @email djonnyx@gmail.com
13
13
  */
14
14
  export declare class NgPrerenderScrollerComponent extends BaseScrollView {
15
15
  scrollBar: NgScrollBarComponent | undefined;
16
- langTextDir: import("@angular/core").WritableSignal<TextDirection>;
17
- scrollbarEnabled: import("@angular/core").InputSignal<boolean>;
18
- classes: import("@angular/core").InputSignal<{
16
+ protected _$langTextDir: BehaviorSubject<TextDirection>;
17
+ readonly $langTextDir: import("rxjs").Observable<TextDirection>;
18
+ protected _$scrollbarEnabled: BehaviorSubject<boolean>;
19
+ readonly $scrollbarEnabled: import("rxjs").Observable<boolean>;
20
+ set scrollbarEnabled(v: boolean);
21
+ get scrollbarEnabled(): boolean;
22
+ protected _$classes: BehaviorSubject<{
19
23
  [cName: string]: boolean;
20
24
  }>;
21
- actualClasses: Signal<{
25
+ readonly $classes: import("rxjs").Observable<{
22
26
  [cName: string]: boolean;
23
27
  }>;
24
- containerClasses: import("@angular/core").WritableSignal<{
28
+ set classes(v: {
29
+ [cName: string]: boolean;
30
+ });
31
+ get classes(): {
32
+ [cName: string]: boolean;
33
+ };
34
+ protected _$actualClasses: BehaviorSubject<{
35
+ [cName: string]: boolean;
36
+ }>;
37
+ readonly $actualClasses: import("rxjs").Observable<{
38
+ [cName: string]: boolean;
39
+ }>;
40
+ protected _$containerClasses: BehaviorSubject<{
41
+ [cName: string]: boolean;
42
+ }>;
43
+ readonly $containerClasses: import("rxjs").Observable<{
25
44
  [cName: string]: boolean;
26
45
  }>;
27
- thumbSize: import("@angular/core").WritableSignal<number>;
28
- scrollbarShow: import("@angular/core").WritableSignal<boolean>;
46
+ protected _$thumbSize: BehaviorSubject<number>;
47
+ readonly $thumbSize: import("rxjs").Observable<number>;
48
+ protected _$scrollbarShow: BehaviorSubject<boolean>;
49
+ readonly $scrollbarShow: import("rxjs").Observable<boolean>;
29
50
  set x(v: number);
30
51
  get x(): number;
31
52
  set y(v: number);
@@ -37,5 +58,5 @@ export declare class NgPrerenderScrollerComponent extends BaseScrollView {
37
58
  private updateScrollBarHandler;
38
59
  protected updateScrollBar(): void;
39
60
  static ɵfac: i0.ɵɵFactoryDeclaration<NgPrerenderScrollerComponent, never>;
40
- static ɵcmp: i0.ɵɵComponentDeclaration<NgPrerenderScrollerComponent, "ng-prerender-scroller", never, { "scrollbarEnabled": { "alias": "scrollbarEnabled"; "required": false; "isSignal": true; }; "classes": { "alias": "classes"; "required": false; "isSignal": true; }; }, {}, never, ["*"], false, never>;
61
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgPrerenderScrollerComponent, "ng-prerender-scroller", never, { "scrollbarEnabled": { "alias": "scrollbarEnabled"; "required": false; }; "classes": { "alias": "classes"; "required": false; }; }, {}, never, ["*"], false, never>;
41
62
  }
@@ -10,6 +10,7 @@ import { TemplateRef } from "@angular/core";
10
10
  export interface IPrerenderTrackBoxRefreshParams {
11
11
  itemRenderer: TemplateRef<any> | undefined;
12
12
  dynamic: boolean;
13
+ divides: number;
13
14
  itemSize: number;
14
15
  isVertical: boolean;
15
16
  trackBy: string;
@@ -1,37 +1,40 @@
1
1
  import { TemplateRef } from "@angular/core";
2
+ import { Observable } from "rxjs";
2
3
  import { ISize } from '../../interfaces';
3
4
  import { IVirtualListCollection } from "../../models";
4
- import { Direction } from "../../enums";
5
- import { Observable } from "rxjs";
5
+ import { Direction } from "../../types";
6
6
  import { PrerenderCache } from "./types";
7
+ import { DisposableComponent } from "../../utils/disposable-component";
7
8
  import * as i0 from "@angular/core";
8
9
  /**
9
10
  * Prerender container.
10
11
  * Maximum performance for extremely large lists.
11
12
  * It is based on algorithms for virtualization of screen objects.
12
- * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/ng-prerender-container/ng-prerender-container.component.ts
13
+ * @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/components/ng-prerender-container/ng-prerender-container.component.ts
13
14
  * @author Evgenii Alexandrovich Grebennikov
14
15
  * @email djonnyx@gmail.com
15
16
  */
16
- export declare class NgPrerenderContainer {
17
+ export declare class NgPrerenderContainer extends DisposableComponent {
17
18
  private _list;
18
- enabled: import("@angular/core").InputSignal<boolean>;
19
- direction: import("@angular/core").InputSignal<Direction>;
20
- isVertical: import("@angular/core").InputSignal<boolean>;
21
- scrollbarEnabled: import("@angular/core").InputSignal<boolean>;
22
- startOffset: import("@angular/core").InputSignal<number>;
23
- endOffset: import("@angular/core").InputSignal<number>;
24
- bounds: import("@angular/core").InputSignal<ISize>;
25
- dynamic: import("@angular/core").InputSignal<boolean>;
26
- itemSize: import("@angular/core").InputSignal<number>;
27
- trackBy: import("@angular/core").InputSignal<string>;
28
- itemRenderer: import("@angular/core").InputSignal<TemplateRef<any> | undefined>;
29
- readonly $render: Observable<PrerenderCache>;
19
+ enabled: boolean;
20
+ direction: Direction | any;
21
+ isVertical: boolean;
22
+ scrollbarEnabled: boolean;
23
+ startOffset: number;
24
+ endOffset: number;
25
+ bounds: ISize;
26
+ dynamic: boolean;
27
+ itemSize: number;
28
+ trackBy: string;
29
+ divides: number;
30
+ itemRenderer: TemplateRef<any>;
31
+ $render: Observable<PrerenderCache>;
30
32
  get active(): boolean;
31
33
  constructor();
34
+ ngAfterViewInit(): void;
32
35
  clear(): void;
33
36
  on(items?: IVirtualListCollection | null): void;
34
37
  off(): void;
35
38
  static ɵfac: i0.ɵɵFactoryDeclaration<NgPrerenderContainer, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<NgPrerenderContainer, "ng-prerender-container", never, { "enabled": { "alias": "enabled"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "isVertical": { "alias": "isVertical"; "required": false; "isSignal": true; }; "scrollbarEnabled": { "alias": "scrollbarEnabled"; "required": false; "isSignal": true; }; "startOffset": { "alias": "startOffset"; "required": false; "isSignal": true; }; "endOffset": { "alias": "endOffset"; "required": false; "isSignal": true; }; "bounds": { "alias": "bounds"; "required": true; "isSignal": true; }; "dynamic": { "alias": "dynamic"; "required": false; "isSignal": true; }; "itemSize": { "alias": "itemSize"; "required": false; "isSignal": true; }; "trackBy": { "alias": "trackBy"; "required": false; "isSignal": true; }; "itemRenderer": { "alias": "itemRenderer"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
39
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgPrerenderContainer, "ng-prerender-container", never, { "enabled": { "alias": "enabled"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "isVertical": { "alias": "isVertical"; "required": false; }; "scrollbarEnabled": { "alias": "scrollbarEnabled"; "required": false; }; "startOffset": { "alias": "startOffset"; "required": false; }; "endOffset": { "alias": "endOffset"; "required": false; }; "bounds": { "alias": "bounds"; "required": false; }; "dynamic": { "alias": "dynamic"; "required": false; }; "itemSize": { "alias": "itemSize"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "divides": { "alias": "divides"; "required": false; }; }, {}, never, never, false, never>;
37
40
  }
@@ -1 +1,3 @@
1
+ import { IScrollBarTemplateContext } from "../interfaces";
1
2
  export declare const DEFAULT_THICKNESS = 6, DEFAULT_SIZE = 6, PX = "px", WIDTH = "width", HEIGHT = "height", OPACITY = "opacity", OPACITY_0 = "0", OPACITY_1 = "1", TRANSITION = "transition", NONE = "none", TRANSITION_FADE_IN = "opacity 500ms ease-out";
3
+ export declare const DEFAULT_SCROLLBAR_TEMPLATE_CONTEXT: IScrollBarTemplateContext;
@@ -4,7 +4,7 @@ export interface IScrollBarTemplateContext {
4
4
  /**
5
5
  * API provider
6
6
  */
7
- api: NgScrollBarPublicService;
7
+ api: NgScrollBarPublicService | null;
8
8
  /**
9
9
  * Scrollbar thumb width.
10
10
  */
@@ -22,5 +22,5 @@ export interface IScrollBarTemplateContext {
22
22
  */
23
23
  params: {
24
24
  [propName: string]: any;
25
- };
25
+ } | null;
26
26
  }