@igo2/common 19.0.3 → 20.0.0-next.2

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 (325) hide show
  1. package/action/index.d.ts +194 -3
  2. package/backdrop/index.d.ts +20 -3
  3. package/badge/index.d.ts +44 -3
  4. package/clickout/index.d.ts +20 -3
  5. package/clone/index.d.ts +18 -3
  6. package/collapsible/index.d.ts +43 -3
  7. package/color/index.d.ts +38 -3
  8. package/confirm-dialog/index.d.ts +39 -5
  9. package/context-menu/index.d.ts +50 -3
  10. package/custom-html/index.d.ts +30 -3
  11. package/dom/index.d.ts +34 -3
  12. package/drag-drop/index.d.ts +124 -3
  13. package/dynamic-component/index.d.ts +186 -3
  14. package/entity/index.d.ts +1532 -3
  15. package/environment/index.d.ts +15 -5
  16. package/fesm2022/igo2-common-action.mjs +28 -38
  17. package/fesm2022/igo2-common-action.mjs.map +1 -1
  18. package/fesm2022/igo2-common-backdrop.mjs +7 -7
  19. package/fesm2022/igo2-common-backdrop.mjs.map +1 -1
  20. package/fesm2022/igo2-common-badge.mjs +10 -13
  21. package/fesm2022/igo2-common-badge.mjs.map +1 -1
  22. package/fesm2022/igo2-common-clickout.mjs +10 -13
  23. package/fesm2022/igo2-common-clickout.mjs.map +1 -1
  24. package/fesm2022/igo2-common-clone.mjs +7 -7
  25. package/fesm2022/igo2-common-clone.mjs.map +1 -1
  26. package/fesm2022/igo2-common-collapsible.mjs +14 -18
  27. package/fesm2022/igo2-common-collapsible.mjs.map +1 -1
  28. package/fesm2022/igo2-common-color.mjs +9 -9
  29. package/fesm2022/igo2-common-color.mjs.map +1 -1
  30. package/fesm2022/igo2-common-confirm-dialog.mjs +19 -26
  31. package/fesm2022/igo2-common-confirm-dialog.mjs.map +1 -1
  32. package/fesm2022/igo2-common-context-menu.mjs +16 -21
  33. package/fesm2022/igo2-common-context-menu.mjs.map +1 -1
  34. package/fesm2022/igo2-common-custom-html.mjs +14 -17
  35. package/fesm2022/igo2-common-custom-html.mjs.map +1 -1
  36. package/fesm2022/igo2-common-dom.mjs +11 -14
  37. package/fesm2022/igo2-common-dom.mjs.map +1 -1
  38. package/fesm2022/igo2-common-drag-drop.mjs +15 -17
  39. package/fesm2022/igo2-common-drag-drop.mjs.map +1 -1
  40. package/fesm2022/igo2-common-dynamic-component.mjs +20 -27
  41. package/fesm2022/igo2-common-dynamic-component.mjs.map +1 -1
  42. package/fesm2022/igo2-common-entity.mjs +69 -108
  43. package/fesm2022/igo2-common-entity.mjs.map +1 -1
  44. package/fesm2022/igo2-common-flexible.mjs +13 -18
  45. package/fesm2022/igo2-common-flexible.mjs.map +1 -1
  46. package/fesm2022/igo2-common-form.mjs +77 -112
  47. package/fesm2022/igo2-common-form.mjs.map +1 -1
  48. package/fesm2022/igo2-common-home-button.mjs +7 -7
  49. package/fesm2022/igo2-common-home-button.mjs.map +1 -1
  50. package/fesm2022/igo2-common-icon.mjs +14 -21
  51. package/fesm2022/igo2-common-icon.mjs.map +1 -1
  52. package/fesm2022/igo2-common-image.mjs +53 -57
  53. package/fesm2022/igo2-common-image.mjs.map +1 -1
  54. package/fesm2022/igo2-common-interactive-tour.mjs +43 -56
  55. package/fesm2022/igo2-common-interactive-tour.mjs.map +1 -1
  56. package/fesm2022/igo2-common-json-dialog.mjs +19 -28
  57. package/fesm2022/igo2-common-json-dialog.mjs.map +1 -1
  58. package/fesm2022/igo2-common-keyvalue.mjs +7 -7
  59. package/fesm2022/igo2-common-keyvalue.mjs.map +1 -1
  60. package/fesm2022/igo2-common-list.mjs +16 -23
  61. package/fesm2022/igo2-common-list.mjs.map +1 -1
  62. package/fesm2022/igo2-common-panel.mjs +9 -9
  63. package/fesm2022/igo2-common-panel.mjs.map +1 -1
  64. package/fesm2022/igo2-common-resizable-bar.mjs +6 -6
  65. package/fesm2022/igo2-common-resizable-bar.mjs.map +1 -1
  66. package/fesm2022/igo2-common-select-value-dialog.mjs +28 -44
  67. package/fesm2022/igo2-common-select-value-dialog.mjs.map +1 -1
  68. package/fesm2022/igo2-common-sidenav.mjs +10 -16
  69. package/fesm2022/igo2-common-sidenav.mjs.map +1 -1
  70. package/fesm2022/igo2-common-spinner.mjs +15 -21
  71. package/fesm2022/igo2-common-spinner.mjs.map +1 -1
  72. package/fesm2022/igo2-common-stop-propagation.mjs +10 -10
  73. package/fesm2022/igo2-common-stop-propagation.mjs.map +1 -1
  74. package/fesm2022/igo2-common-table.mjs +9 -11
  75. package/fesm2022/igo2-common-table.mjs.map +1 -1
  76. package/fesm2022/igo2-common-tool.mjs +16 -22
  77. package/fesm2022/igo2-common-tool.mjs.map +1 -1
  78. package/fesm2022/igo2-common-widget.mjs +19 -24
  79. package/fesm2022/igo2-common-widget.mjs.map +1 -1
  80. package/fesm2022/igo2-common-workspace.mjs +20 -20
  81. package/fesm2022/igo2-common-workspace.mjs.map +1 -1
  82. package/flexible/index.d.ts +54 -3
  83. package/form/index.d.ts +429 -3
  84. package/home-button/index.d.ts +18 -3
  85. package/icon/index.d.ts +42 -3
  86. package/image/index.d.ts +35 -3
  87. package/index.d.ts +16 -5
  88. package/interactive-tour/index.d.ts +116 -5
  89. package/json-dialog/index.d.ts +34 -5
  90. package/keyvalue/index.d.ts +18 -3
  91. package/list/index.d.ts +102 -3
  92. package/package.json +10 -13
  93. package/panel/index.d.ts +20 -3
  94. package/resizable-bar/index.d.ts +37 -5
  95. package/select-value-dialog/index.d.ts +65 -5
  96. package/sidenav/index.d.ts +29 -3
  97. package/spinner/index.d.ts +51 -3
  98. package/src/style/partial/common-utils.scss +1 -1
  99. package/stop-propagation/index.d.ts +26 -3
  100. package/table/index.d.ts +105 -3
  101. package/tool/index.d.ts +289 -3
  102. package/widget/index.d.ts +105 -3
  103. package/workspace/index.d.ts +237 -3
  104. package/action/action.module.d.ts +0 -10
  105. package/action/actionbar/actionbar-item.component.d.ts +0 -73
  106. package/action/actionbar/actionbar.component.d.ts +0 -148
  107. package/action/actionbar/actionbar.module.d.ts +0 -10
  108. package/action/public_api.d.ts +0 -4
  109. package/action/shared/action.enums.d.ts +0 -5
  110. package/action/shared/action.interfaces.d.ts +0 -16
  111. package/action/shared/index.d.ts +0 -3
  112. package/action/shared/store.d.ts +0 -8
  113. package/action/src/action.theming.scss +0 -9
  114. package/action/src/actionbar/actionbar-item.theming.scss +0 -20
  115. package/backdrop/backdrop.component.d.ts +0 -8
  116. package/backdrop/backdrop.module.d.ts +0 -12
  117. package/backdrop/public_api.d.ts +0 -2
  118. package/badge/badge-icon.directive.d.ts +0 -34
  119. package/badge/badge-icon.module.d.ts +0 -12
  120. package/badge/public_api.d.ts +0 -2
  121. package/clickout/clickout.directive.d.ts +0 -10
  122. package/clickout/clickout.module.d.ts +0 -12
  123. package/clickout/public_api.d.ts +0 -2
  124. package/clone/clone.module.d.ts +0 -12
  125. package/clone/clone.pipe.d.ts +0 -7
  126. package/clone/public_api.d.ts +0 -2
  127. package/collapsible/collapse.directive.d.ts +0 -19
  128. package/collapsible/collapsible.component.d.ts +0 -13
  129. package/collapsible/collapsible.module.d.ts +0 -13
  130. package/collapsible/public_api.d.ts +0 -6
  131. package/color/color-picker-form-field/color-picker-form-field.component.d.ts +0 -29
  132. package/color/color-picker-form-field/color-picker-form-field.module.d.ts +0 -10
  133. package/color/color-picker-form-field/index.d.ts +0 -2
  134. package/color/public_api.d.ts +0 -1
  135. package/confirm-dialog/confirm-dialog.component.d.ts +0 -12
  136. package/confirm-dialog/confirm-dialog.interface.d.ts +0 -4
  137. package/confirm-dialog/confirm-dialog.module.d.ts +0 -12
  138. package/confirm-dialog/confirm-dialog.service.d.ts +0 -11
  139. package/confirm-dialog/public_api.d.ts +0 -4
  140. package/context-menu/context-menu.directive.d.ts +0 -21
  141. package/context-menu/context-menu.module.d.ts +0 -13
  142. package/context-menu/long-press.directive.d.ts +0 -19
  143. package/context-menu/public_api.d.ts +0 -6
  144. package/custom-html/custom-html.component.d.ts +0 -8
  145. package/custom-html/custom-html.module.d.ts +0 -13
  146. package/custom-html/custom-html.pipe.d.ts +0 -10
  147. package/custom-html/public_api.d.ts +0 -6
  148. package/dom/dom.interfaces.d.ts +0 -10
  149. package/dom/dom.module.d.ts +0 -14
  150. package/dom/dom.service.d.ts +0 -10
  151. package/dom/public_api.d.ts +0 -3
  152. package/drag-drop/drag-drop.directive.d.ts +0 -14
  153. package/drag-drop/drag-drop.module.d.ts +0 -13
  154. package/drag-drop/public_api.d.ts +0 -3
  155. package/drag-drop/tree-drag-drop/index.d.ts +0 -2
  156. package/drag-drop/tree-drag-drop/tree-drag-drop.directive.d.ts +0 -85
  157. package/drag-drop/tree-drag-drop/tree-drag-drop.interface.d.ts +0 -15
  158. package/dynamic-component/dynamic-component.module.d.ts +0 -10
  159. package/dynamic-component/dynamic-outlet/dynamic-outlet.component.d.ts +0 -66
  160. package/dynamic-component/dynamic-outlet/dynamic-outlet.module.d.ts +0 -10
  161. package/dynamic-component/public_api.d.ts +0 -4
  162. package/dynamic-component/shared/dynamic-component.d.ts +0 -84
  163. package/dynamic-component/shared/dynamic-component.interfaces.d.ts +0 -3
  164. package/dynamic-component/shared/dynamic-component.service.d.ts +0 -18
  165. package/dynamic-component/shared/index.d.ts +0 -3
  166. package/entity/entity-selector/entity-selector.component.d.ts +0 -93
  167. package/entity/entity-selector/entity-selector.module.d.ts +0 -10
  168. package/entity/entity-selector/index.d.ts +0 -2
  169. package/entity/entity-table/entity-table-row.directive.d.ts +0 -69
  170. package/entity/entity-table/entity-table.component.d.ts +0 -330
  171. package/entity/entity-table/entity-table.module.d.ts +0 -10
  172. package/entity/entity-table/index.d.ts +0 -2
  173. package/entity/entity-table-paginator/entity-table-paginator.component.d.ts +0 -50
  174. package/entity/entity-table-paginator/entity-table-paginator.interface.d.ts +0 -8
  175. package/entity/entity-table-paginator/entity-table-paginator.module.d.ts +0 -10
  176. package/entity/entity-table-paginator/index.d.ts +0 -3
  177. package/entity/entity.module.d.ts +0 -16
  178. package/entity/public_api.d.ts +0 -5
  179. package/entity/shared/entity.enums.d.ts +0 -23
  180. package/entity/shared/entity.interfaces.d.ts +0 -92
  181. package/entity/shared/entity.utils.d.ts +0 -49
  182. package/entity/shared/index.d.ts +0 -9
  183. package/entity/shared/state.d.ts +0 -108
  184. package/entity/shared/store.d.ts +0 -180
  185. package/entity/shared/strategies/filter-custom-function.d.ts +0 -51
  186. package/entity/shared/strategies/filter-selection.d.ts +0 -48
  187. package/entity/shared/strategies/index.d.ts +0 -3
  188. package/entity/shared/strategies/strategy.d.ts +0 -56
  189. package/entity/shared/transaction.d.ts +0 -171
  190. package/entity/shared/view.d.ts +0 -193
  191. package/entity/shared/watcher.d.ts +0 -72
  192. package/entity/src/entity-selector/entity-selector.theming.scss +0 -21
  193. package/entity/src/entity-table/entity-table.theming.scss +0 -21
  194. package/entity/src/entity.theming.scss +0 -12
  195. package/environment/environment.interface.d.ts +0 -13
  196. package/environment/public_api.d.ts +0 -1
  197. package/flexible/flexible.component.d.ts +0 -42
  198. package/flexible/flexible.module.d.ts +0 -12
  199. package/flexible/flexible.type.d.ts +0 -2
  200. package/flexible/public_api.d.ts +0 -3
  201. package/form/form/form.component.d.ts +0 -46
  202. package/form/form/form.module.d.ts +0 -10
  203. package/form/form/index.d.ts +0 -2
  204. package/form/form-dialog/form-dialog.component.d.ts +0 -19
  205. package/form/form-dialog/form-dialog.interface.d.ts +0 -16
  206. package/form/form-dialog/form-dialog.module.d.ts +0 -16
  207. package/form/form-dialog/form-dialog.service.d.ts +0 -11
  208. package/form/form-dialog/index.d.ts +0 -4
  209. package/form/form-field/form-field-select.component.d.ts +0 -50
  210. package/form/form-field/form-field-text.component.d.ts +0 -49
  211. package/form/form-field/form-field-textarea.component.d.ts +0 -39
  212. package/form/form-field/form-field.component.d.ts +0 -29
  213. package/form/form-field/form-field.directive.d.ts +0 -5
  214. package/form/form-field/form-field.module.d.ts +0 -13
  215. package/form/form-field/index.d.ts +0 -6
  216. package/form/form-group/form-group.component.d.ts +0 -44
  217. package/form/form-group/form-group.module.d.ts +0 -10
  218. package/form/form-group/index.d.ts +0 -2
  219. package/form/form.module.d.ts +0 -18
  220. package/form/public_api.d.ts +0 -6
  221. package/form/shared/form-field-component.d.ts +0 -1
  222. package/form/shared/form-field.service.d.ts +0 -16
  223. package/form/shared/form.interfaces.d.ts +0 -60
  224. package/form/shared/form.service.d.ts +0 -15
  225. package/form/shared/form.utils.d.ts +0 -7
  226. package/form/shared/index.d.ts +0 -5
  227. package/home-button/home-button.component.d.ts +0 -8
  228. package/home-button/home-button.module.d.ts +0 -10
  229. package/home-button/public_api.d.ts +0 -2
  230. package/icon/icon/icon.component.d.ts +0 -15
  231. package/icon/icon.provider.d.ts +0 -4
  232. package/icon/public_api.d.ts +0 -3
  233. package/icon/shared/icon.interface.d.ts +0 -4
  234. package/icon/shared/icon.service.d.ts +0 -12
  235. package/icon/shared/icons.d.ts +0 -11
  236. package/icon/shared/index.d.ts +0 -3
  237. package/image/image-error.directive.d.ts +0 -11
  238. package/image/image.module.d.ts +0 -13
  239. package/image/public_api.d.ts +0 -6
  240. package/image/secure-image.pipe.d.ts +0 -13
  241. package/interactive-tour/interactive-tour.component.d.ts +0 -33
  242. package/interactive-tour/interactive-tour.interface.d.ts +0 -35
  243. package/interactive-tour/interactive-tour.loader.d.ts +0 -18
  244. package/interactive-tour/interactive-tour.module.d.ts +0 -7
  245. package/interactive-tour/interactive-tour.service.d.ts +0 -30
  246. package/interactive-tour/public_api.d.ts +0 -5
  247. package/json-dialog/json-dialog.component.d.ts +0 -13
  248. package/json-dialog/json-dialog.module.d.ts +0 -12
  249. package/json-dialog/json-dialog.service.d.ts +0 -10
  250. package/json-dialog/public_api.d.ts +0 -3
  251. package/keyvalue/keyvalue.module.d.ts +0 -12
  252. package/keyvalue/keyvalue.pipe.d.ts +0 -7
  253. package/keyvalue/public_api.d.ts +0 -2
  254. package/list/list-item.directive.d.ts +0 -43
  255. package/list/list.component.d.ts +0 -51
  256. package/list/list.module.d.ts +0 -13
  257. package/list/public_api.d.ts +0 -6
  258. package/panel/panel.component.d.ts +0 -10
  259. package/panel/panel.module.d.ts +0 -10
  260. package/panel/public_api.d.ts +0 -2
  261. package/panel/src/panel.theming.scss +0 -20
  262. package/public_api.d.ts +0 -16
  263. package/resizable-bar/public_api.d.ts +0 -2
  264. package/resizable-bar/resizable-bar.component.d.ts +0 -23
  265. package/resizable-bar/shared/resize.directive.d.ts +0 -12
  266. package/select-value-dialog/public_api.d.ts +0 -5
  267. package/select-value-dialog/select-value-check-radio-dialog.component.d.ts +0 -25
  268. package/select-value-dialog/select-value-dialog.enums.d.ts +0 -4
  269. package/select-value-dialog/select-value-dialog.interface.d.ts +0 -16
  270. package/select-value-dialog/select-value-dialog.module.d.ts +0 -12
  271. package/select-value-dialog/select-value-dialog.service.d.ts +0 -11
  272. package/sidenav/public_api.d.ts +0 -2
  273. package/sidenav/sidenav-shim.directive.d.ts +0 -20
  274. package/sidenav/sidenav.module.d.ts +0 -12
  275. package/spinner/public_api.d.ts +0 -3
  276. package/spinner/spinner-activity.directive.d.ts +0 -32
  277. package/spinner/spinner.component.d.ts +0 -11
  278. package/spinner/spinner.module.d.ts +0 -14
  279. package/src/common.theme.scss +0 -18
  280. package/stop-propagation/public_api.d.ts +0 -6
  281. package/stop-propagation/stop-drop-propagation.directive.d.ts +0 -6
  282. package/stop-propagation/stop-propagation.directive.d.ts +0 -6
  283. package/stop-propagation/stop-propagation.module.d.ts +0 -13
  284. package/table/public_api.d.ts +0 -6
  285. package/table/table-action-color.enum.d.ts +0 -5
  286. package/table/table-database.d.ts +0 -10
  287. package/table/table-datasource.d.ts +0 -18
  288. package/table/table-model.interface.d.ts +0 -24
  289. package/table/table.component.d.ts +0 -40
  290. package/table/table.module.d.ts +0 -12
  291. package/tool/public_api.d.ts +0 -3
  292. package/tool/shared/index.d.ts +0 -5
  293. package/tool/shared/tool-component.d.ts +0 -2
  294. package/tool/shared/tool.interface.d.ts +0 -16
  295. package/tool/shared/tool.service.d.ts +0 -28
  296. package/tool/shared/toolbox.d.ts +0 -96
  297. package/tool/shared/toolbox.enums.d.ts +0 -1
  298. package/tool/src/tool.theming.scss +0 -5
  299. package/tool/src/toolbox/toolbox.theming.scss +0 -22
  300. package/tool/tool.module.d.ts +0 -15
  301. package/tool/toolbox/index.d.ts +0 -2
  302. package/tool/toolbox/toolbox.animation.d.ts +0 -2
  303. package/tool/toolbox/toolbox.component.d.ts +0 -126
  304. package/tool/toolbox/toolbox.module.d.ts +0 -10
  305. package/widget/public_api.d.ts +0 -3
  306. package/widget/shared/index.d.ts +0 -3
  307. package/widget/shared/widget.d.ts +0 -4
  308. package/widget/shared/widget.interfaces.d.ts +0 -12
  309. package/widget/shared/widget.service.d.ts +0 -10
  310. package/widget/widget-outlet/index.d.ts +0 -2
  311. package/widget/widget-outlet/widget-outlet.component.d.ts +0 -64
  312. package/widget/widget-outlet/widget-outlet.module.d.ts +0 -10
  313. package/widget/widget.module.d.ts +0 -10
  314. package/workspace/public_api.d.ts +0 -4
  315. package/workspace/shared/index.d.ts +0 -3
  316. package/workspace/shared/store.d.ts +0 -20
  317. package/workspace/shared/workspace.d.ts +0 -98
  318. package/workspace/shared/workspace.interfaces.d.ts +0 -9
  319. package/workspace/workspace-selector/index.d.ts +0 -2
  320. package/workspace/workspace-selector/workspace-selector.component.d.ts +0 -38
  321. package/workspace/workspace-selector/workspace-selector.module.d.ts +0 -10
  322. package/workspace/workspace-widget-outlet/index.d.ts +0 -2
  323. package/workspace/workspace-widget-outlet/workspace-widget-outlet.component.d.ts +0 -52
  324. package/workspace/workspace-widget-outlet/workspace-widget-outlet.module.d.ts +0 -10
  325. package/workspace/workspace.module.d.ts +0 -14
package/entity/index.d.ts CHANGED
@@ -1,5 +1,1534 @@
1
+ import { Observable, ReplaySubject, BehaviorSubject } from 'rxjs';
2
+ import * as i0 from '@angular/core';
3
+ import { ChangeDetectorRef, OnInit, OnDestroy, EventEmitter, OnChanges, ElementRef, SimpleChanges, TrackByFunction } from '@angular/core';
4
+ import { FocusMonitor } from '@angular/cdk/a11y';
5
+ import { NgControl, NgForm, FormControlName, UntypedFormGroup } from '@angular/forms';
6
+ import { ErrorStateMatcher } from '@angular/material/core';
7
+ import { MatPaginator, PageEvent } from '@angular/material/paginator';
8
+ import { MatTableDataSource } from '@angular/material/table';
9
+
10
+ declare enum EntityOperationType {
11
+ Insert = "Insert",
12
+ Update = "Update",
13
+ Delete = "Delete"
14
+ }
15
+ declare enum EntityTableColumnRenderer {
16
+ Default = "Default",
17
+ HTML = "HTML",
18
+ UnsanitizedHTML = "UnsanitizedHTML",
19
+ Editable = "Editable",
20
+ Icon = "Icon",
21
+ ButtonGroup = "ButtonGroup"
22
+ }
23
+ declare enum EntityTableScrollBehavior {
24
+ Auto = "auto",
25
+ Instant = "instant",
26
+ Smooth = "smooth"
27
+ }
28
+ declare enum EntityTableSelectionState {
29
+ None = "None",
30
+ All = "All",
31
+ Some = "Some"
32
+ }
33
+
34
+ type EntityKey = string | number;
35
+ type EntityState = Record<string, any>;
36
+ interface EntityRecord<E extends object, S extends EntityState = EntityState> {
37
+ entity: E;
38
+ state: S;
39
+ revision: number;
40
+ ref: string;
41
+ edition?: boolean;
42
+ }
43
+ interface EntityStoreStrategyOptions {
44
+ }
45
+ interface EntityStoreStrategyFuncOptions extends EntityStoreStrategyOptions {
46
+ filterClauseFunc: EntityFilterClause;
47
+ }
48
+ interface EntityTransactionOptions {
49
+ getKey?: (entity: object) => EntityKey;
50
+ }
51
+ type EntityFilterClause<E = object> = (entity: E) => boolean;
52
+ interface EntitySortClause<E = object> {
53
+ valueAccessor: (entity: E) => string | number;
54
+ direction: string;
55
+ nullsFirst?: boolean;
56
+ }
57
+ interface EntityJoinClause {
58
+ source: Observable<any | void>;
59
+ reduce: (param1: object, param2: any) => object;
60
+ }
61
+ interface EntityOperationState {
62
+ added: boolean;
63
+ canceled: boolean;
64
+ }
65
+ interface EntityTableTemplate {
66
+ columns: EntityTableColumn[];
67
+ selection?: boolean;
68
+ selectionCheckbox?: boolean;
69
+ selectMany?: boolean;
70
+ sort?: boolean;
71
+ fixedHeader?: boolean;
72
+ tableHeight?: string;
73
+ valueAccessor?: (entity: object, property: string, record: EntityRecord<object>) => any;
74
+ headerClassFunc?: () => Record<string, boolean>;
75
+ rowClassFunc?: (entity: object, record: EntityRecord<object>) => Record<string, boolean>;
76
+ cellClassFunc?: (entity: object, column: EntityTableColumn, record: EntityRecord<object>) => Record<string, boolean>;
77
+ }
78
+ interface EntityTableColumnValidation {
79
+ readonly?: boolean;
80
+ mandatory?: boolean;
81
+ maxlength?: number;
82
+ minlength?: number;
83
+ minValue?: number;
84
+ maxValue?: number;
85
+ }
86
+ interface TableRelation {
87
+ table: string;
88
+ }
89
+ interface EntityTableColumn {
90
+ validation?: EntityTableColumnValidation;
91
+ name: string;
92
+ title: string;
93
+ renderer?: EntityTableColumnRenderer;
94
+ valueAccessor?: (entity: object, record: EntityRecord<object>) => any;
95
+ visible?: boolean;
96
+ linkColumnForce?: string;
97
+ sort?: boolean;
98
+ type?: string;
99
+ multiple?: boolean;
100
+ domainValues?: SelectOption[];
101
+ relation?: TableRelation;
102
+ tooltip?: string;
103
+ cellClassFunc?: (entity: object, record: EntityRecord<object>) => Record<string, boolean>;
104
+ step?: number;
105
+ icon?: string;
106
+ onBlur?: (event: Event) => void;
107
+ onChange?: (event: Event) => void;
108
+ onClick?: (event: Event) => void;
109
+ onFocus?: (event: Event) => void;
110
+ }
111
+ interface SelectOption {
112
+ id: number;
113
+ value: string;
114
+ disabled?: boolean;
115
+ }
116
+ interface EntityTableButton {
117
+ icon: string;
118
+ click: (entity: object, record: EntityRecord<object>) => void;
119
+ color?: 'primary' | 'accent' | 'warn';
120
+ disabled?: boolean;
121
+ style?: 'mat-mini-fab' | 'mat-icon-button';
122
+ editMode?: boolean;
123
+ }
124
+
1
125
  /**
2
- * Generated bundle index. Do not edit.
126
+ * Get an entity's named property. Nested properties are supported
127
+ * with the dotted notation. (i.e 'author.name')
128
+ *
129
+ * Note: this method is a 'best attempt' at getting an entity's property.
130
+ * It fits the most common cases but you might need to explicitely define
131
+ * a property getter when using an EntityStore, for example.
132
+ * @param entity Entity
133
+ * @param property Property name
134
+ * @returns Property value
3
135
  */
4
- /// <amd-module name="@igo2/common/entity" />
5
- export * from './public_api';
136
+ declare function getEntityProperty(entity: object, property: string): any;
137
+ /**
138
+ * Get an entity's id. An entity's id can be one of:
139
+ * 'entity.meta.id', 'entity.meta.idProperty' or 'entity.id'.
140
+ *
141
+ * Note: See the note in the 'getEntityProperty' documentation.
142
+ * @param entity Entity
143
+ * @returns Entity id
144
+ */
145
+ declare function getEntityId(entity: object): EntityKey;
146
+ /**
147
+ * Get an entity's title. An entity's title can be one of:
148
+ * 'entity.meta.title', 'entity.meta.titleProperty' or 'entity.title'.
149
+ * @param entity Entity
150
+ * @returns Entity title
151
+ */
152
+ declare function getEntityTitle(entity: object): string;
153
+ /**
154
+ * Get an entity's HTML title. An entity's HTML title can be one of:
155
+ * 'entity.meta.titleHtml', 'entity.meta.titleHtmlProperty' or 'entity.titleHtml'.
156
+ * @param entity Entity
157
+ * @returns Entity HTML title
158
+ */
159
+ declare function getEntityTitleHtml(entity: object): string;
160
+ /**
161
+ * Get an entity's icon. An entity's icon can be one of:
162
+ * 'entity.meta.icon', 'entity.meta.iconProperty' or 'entity.icon'.
163
+ * @param entity Entity
164
+ * @returns Entity icon
165
+ */
166
+ declare function getEntityIcon(entity: object): string;
167
+ /**
168
+ * Get an entity's revision.
169
+ * @param entity Entity
170
+ * @returns Entity revision
171
+ */
172
+ declare function getEntityRevision(entity: object): number;
173
+
174
+ interface EntityStateManagerOptions<E extends object> {
175
+ getKey?: (entity: object) => EntityKey;
176
+ index?: Map<EntityKey, E>;
177
+ }
178
+ /**
179
+ * This class is used to track a store's entities state
180
+ */
181
+ declare class EntityStateManager<E extends object, S extends EntityState = EntityState> {
182
+ private options;
183
+ /**
184
+ * State index
185
+ */
186
+ readonly index: Map<EntityKey, S>;
187
+ /**
188
+ * Change emitter
189
+ */
190
+ readonly change$: ReplaySubject<void>;
191
+ /**
192
+ * Method to get an entity's id
193
+ */
194
+ readonly getKey: (E: any) => EntityKey;
195
+ constructor(options?: EntityStateManagerOptions<E>);
196
+ /**
197
+ * Clear state
198
+ */
199
+ clear(): void;
200
+ /**
201
+ * Get an entity's state
202
+ * @param entity Entity
203
+ * @returns State
204
+ */
205
+ get(entity: E): S;
206
+ /**
207
+ * Set an entity's state
208
+ * @param entity Entity
209
+ * @param state State
210
+ */
211
+ set(entity: E, state: S): void;
212
+ /**
213
+ * Set many entitie's state
214
+ * @param entitie Entities
215
+ * @param state State
216
+ */
217
+ setMany(entities: E[], state: S): void;
218
+ /**
219
+ * Set state of all entities that already have a state. This is not
220
+ * the same as setting the state of all the store's entities.
221
+ * @param state State
222
+ */
223
+ setAll(state: S): void;
224
+ /**
225
+ * Update an entity's state
226
+ * @param entity Entity
227
+ * @param changes State changes
228
+ */
229
+ update(entity: E, changes: Partial<S>, exclusive?: boolean): void;
230
+ /**
231
+ * Update many entitie's state
232
+ * @param entitie Entities
233
+ * @param changes State changes
234
+ */
235
+ updateMany(entities: E[], changes: Partial<S>, exclusive?: boolean): void;
236
+ /**
237
+ * Reversee an entity's state
238
+ * @param entity Entity
239
+ * @param keys State keys to reverse
240
+ */
241
+ reverse(entity: E, keys: string[]): void;
242
+ /**
243
+ * Reverse many entitie's state
244
+ * @param entitie Entities
245
+ * @param keys State keys to reverse
246
+ */
247
+ reverseMany(entities: E[], keys: string[]): void;
248
+ /**
249
+ * Update state of all entities that already have a state. This is not
250
+ * the same as updating the state of all the store's entities.
251
+ * @param changes State
252
+ */
253
+ updateAll(changes: Partial<S>): void;
254
+ /**
255
+ * When some state changes are flagged as 'exclusive', reverse
256
+ * the state of all other entities. Changes are reversable when
257
+ * they are boolean.
258
+ * @param entitie Entities
259
+ * @param changes State changes
260
+ */
261
+ private updateManyExclusive;
262
+ /**
263
+ * Compute a 'reversed' version of some state changes.
264
+ * Changes are reversable when they are boolean.
265
+ * @param changes State changes
266
+ * @returns Reversed state changes
267
+ */
268
+ private reverseChanges;
269
+ /**
270
+ * Return all the keys in that state and in the store it's bound to, if any.
271
+ * @returns Set of keys
272
+ */
273
+ private getAllKeys;
274
+ /**
275
+ * Emit 'change' event
276
+ */
277
+ private next;
278
+ }
279
+
280
+ /**
281
+ * Entity store strategies. They can do pretty much anything during a store's
282
+ * lifetime. For example, they may act as triggers when something happens.
283
+ * Sharing a strategy is a good idea when multiple strategies would have
284
+ * on cancelling effect on each other.
285
+ *
286
+ * At creation, strategy is inactive and needs to be manually activated.
287
+ */
288
+ declare class EntityStoreStrategy {
289
+ protected options: EntityStoreStrategyOptions;
290
+ /**
291
+ * Feature store
292
+ * @internal
293
+ */
294
+ protected stores: EntityStore[];
295
+ /**
296
+ * Whether this strategy is active
297
+ * @internal
298
+ */
299
+ get active(): boolean;
300
+ readonly active$: BehaviorSubject<boolean>;
301
+ constructor(options?: EntityStoreStrategyOptions);
302
+ /**
303
+ * Activate the strategy. If it's already active, it'll be deactivated
304
+ * and activated again.
305
+ */
306
+ activate(): void;
307
+ /**
308
+ * Activate the strategy. If it's already active, it'll be deactivated
309
+ * and activated again.
310
+ */
311
+ deactivate(): void;
312
+ /**
313
+ * Bind this strategy to a store
314
+ * @param store Feature store
315
+ */
316
+ bindStore(store: EntityStore): void;
317
+ /**
318
+ * Unbind this strategy from store
319
+ * @param store Feature store
320
+ */
321
+ unbindStore(store: EntityStore): void;
322
+ /**
323
+ * Do the stataegy activation
324
+ * @internal
325
+ */
326
+ protected doActivate(): void;
327
+ /**
328
+ * Do the strategy deactivation
329
+ * @internal
330
+ */
331
+ protected doDeactivate(): void;
332
+ }
333
+
334
+ /**
335
+ * An entity view streams entities from an observable source. These entities
336
+ * can be filtered or sorted without affecting the source. A view can also
337
+ * combine data from multiple sources, joined together.
338
+ */
339
+ declare class EntityView<E extends object, V extends object = E> {
340
+ private source$;
341
+ /**
342
+ * Observable stream of values
343
+ */
344
+ readonly values$: BehaviorSubject<V[]>;
345
+ /**
346
+ * Subscription to the source (and joined sources) values
347
+ */
348
+ private values$$;
349
+ /**
350
+ * Whether this view has been lifted
351
+ */
352
+ private lifted;
353
+ /**
354
+ * Join clauses
355
+ */
356
+ private joins;
357
+ /**
358
+ * Observable of a filter clause
359
+ */
360
+ private filter$;
361
+ /**
362
+ * Observable of filter clauses
363
+ */
364
+ private filters$;
365
+ /**
366
+ * Filters index
367
+ */
368
+ private filterIndex;
369
+ /**
370
+ * Observable of a sort clause
371
+ */
372
+ private sort$;
373
+ /**
374
+ * Method for indexing
375
+ */
376
+ get getKey(): (V: any) => EntityKey;
377
+ private getKey$;
378
+ /**
379
+ * Number of entities
380
+ */
381
+ readonly count$: BehaviorSubject<number>;
382
+ get count(): number;
383
+ /**
384
+ * Whether the store is empty
385
+ */
386
+ readonly empty$: BehaviorSubject<boolean>;
387
+ get empty(): boolean;
388
+ /**
389
+ * Store index
390
+ */
391
+ get index(): Map<EntityKey, V>;
392
+ private _index;
393
+ constructor(source$: BehaviorSubject<E[]>);
394
+ /**
395
+ * Get a value from the view by key
396
+ * @param key Key
397
+ * @returns Value
398
+ */
399
+ get(key: EntityKey): V;
400
+ /**
401
+ * Get all the values
402
+ * @returns Array of values
403
+ */
404
+ all(): V[];
405
+ /**
406
+ * Observe all the values
407
+ * @returns Observable of values
408
+ */
409
+ all$(): BehaviorSubject<V[]>;
410
+ /**
411
+ * Get the first value that respects a criteria
412
+ * @returns A value
413
+ */
414
+ firstBy(clause: EntityFilterClause<V>): V;
415
+ /**
416
+ * Observe the first value that respects a criteria
417
+ * @returns Observable of a value
418
+ */
419
+ firstBy$(clause: EntityFilterClause<V>): Observable<V>;
420
+ /**
421
+ * Get all the values that respect a criteria
422
+ * @returns Array of values
423
+ */
424
+ manyBy(clause: EntityFilterClause<V>): V[];
425
+ /**
426
+ * Observe all the values that respect a criteria
427
+ * @returns Observable of values
428
+ */
429
+ manyBy$(clause: EntityFilterClause<V>): Observable<V[]>;
430
+ /**
431
+ * Clear the filter and sort and unsubscribe from the source
432
+ */
433
+ clear(): void;
434
+ destroy(): void;
435
+ /**
436
+ * Create an index
437
+ * @param getKey Method to get a value's id
438
+ * @returns The view
439
+ */
440
+ createIndex(getKey: (E: any) => EntityKey): EntityView<E, V>;
441
+ /**
442
+ * Join another source to the stream (chainable)
443
+ * @param clause Join clause
444
+ * @returns The view
445
+ */
446
+ join(clause: EntityJoinClause): EntityView<E, V>;
447
+ /**
448
+ * Filter values (chainable)
449
+ * @param clause Filter clause
450
+ * @returns The view
451
+ */
452
+ filter(clause: EntityFilterClause<V>): EntityView<E, V>;
453
+ /**
454
+ * @param clause Filter clause
455
+ * @returns The filter id
456
+ */
457
+ addFilter(clause: EntityFilterClause<V>): string;
458
+ /**
459
+ * Remove a filter by id
460
+ * @param clause Filter clause
461
+ */
462
+ removeFilter(id: string): void;
463
+ /**
464
+ * Sort values (chainable)
465
+ * @param clauseSort clause
466
+ * @returns The view
467
+ */
468
+ sort(clause: EntitySortClause<V>): EntityView<E, V>;
469
+ /**
470
+ * Create the final observable
471
+ * @returns Observable
472
+ */
473
+ lift(): void;
474
+ /**
475
+ * Create the source observable when no joins are defined
476
+ * @returns Observable
477
+ */
478
+ private liftSource;
479
+ /**
480
+ * Create the source observable when joins are defined
481
+ * @returns Observable
482
+ */
483
+ private liftJoinedSource;
484
+ /**
485
+ * Apply joins to a source's entity and return the final value
486
+ * @returns Final value
487
+ */
488
+ private computeJoinedValue;
489
+ /**
490
+ * Filter and sort values before streaming them
491
+ * @param values Values
492
+ * @param filters Filter clauses
493
+ * @param filter Filter clause
494
+ * @param sort Sort clause
495
+ * @returns Filtered and sorted values
496
+ */
497
+ private processValues;
498
+ /**
499
+ * Filter values
500
+ * @param values Values
501
+ * @param filters Filter clauses
502
+ * @returns Filtered values
503
+ */
504
+ private filterValues;
505
+ /**
506
+ * Sort values
507
+ * @param values Values
508
+ * @param sort Sort clause
509
+ * @returns Sorted values
510
+ */
511
+ private sortValues;
512
+ /**
513
+ * Set value and optionally generate an index
514
+ * @param values Values
515
+ * @param generateIndex boolean
516
+ */
517
+ private setValues;
518
+ /**
519
+ * Generate a complete index of all the values
520
+ * @param entities Entities
521
+ * @returns Index
522
+ */
523
+ private generateIndex;
524
+ }
525
+
526
+ interface EntityStoreOptions {
527
+ getKey?: (entity: object) => EntityKey;
528
+ getProperty?: (entity: object, property: string) => any;
529
+ }
530
+ /**
531
+ * An entity store class holds any number of entities
532
+ * as well as their state. It can be observed, filtered and sorted and
533
+ * provides methods to insert, update or delete entities.
534
+ */
535
+ declare class EntityStore<E extends object = object, S extends EntityState = EntityState> {
536
+ /**
537
+ * Observable of the raw entities
538
+ */
539
+ readonly entities$: BehaviorSubject<E[]>;
540
+ /**
541
+ * Number of entities
542
+ */
543
+ readonly count$: BehaviorSubject<number>;
544
+ get count(): number;
545
+ /**
546
+ * Whether the store is empty
547
+ */
548
+ readonly empty$: BehaviorSubject<boolean>;
549
+ get empty(): boolean;
550
+ /**
551
+ * Entity store state
552
+ */
553
+ readonly state: EntityStateManager<E, S>;
554
+ /**
555
+ * View of all the entities
556
+ */
557
+ readonly view: EntityView<E>;
558
+ /**
559
+ * View of all the entities and their state
560
+ */
561
+ readonly stateView: EntityView<E, EntityRecord<E, S>>;
562
+ /**
563
+ * Method to get an entity's id
564
+ */
565
+ readonly getKey: (E: any) => EntityKey;
566
+ /**
567
+ * Method to get an entity's named property
568
+ */
569
+ readonly getProperty: (E: any, prop: string) => any;
570
+ /**
571
+ * Store index
572
+ */
573
+ get index(): Map<EntityKey, E>;
574
+ private _index;
575
+ /**
576
+ * Store index
577
+ */
578
+ get pristine(): boolean;
579
+ private _pristine;
580
+ /**
581
+ * Strategies
582
+ */
583
+ private strategies;
584
+ constructor(entities: E[], options?: EntityStoreOptions);
585
+ /**
586
+ * Get an entity from the store by key
587
+ * @param key Key
588
+ * @returns Entity
589
+ */
590
+ get(key: EntityKey): E;
591
+ /**
592
+ * Get all entities in the store
593
+ * @returns Array of entities
594
+ */
595
+ all(): E[];
596
+ /**
597
+ * Set this store's entities
598
+ * @param entities Entities
599
+ */
600
+ load(entities: E[], pristine?: boolean): void;
601
+ /**
602
+ * Clear the store's entities but keep the state and views intact.
603
+ * Views won't return any data but future data will be subject to the
604
+ * current views filter and sort
605
+ */
606
+ softClear(): void;
607
+ /**
608
+ * Clear the store's entities, state and views
609
+ */
610
+ clear(): void;
611
+ destroy(): void;
612
+ /**
613
+ * Insert an entity into the store
614
+ * @param entity Entity
615
+ */
616
+ insert(entity: E): void;
617
+ /**
618
+ * Insert many entities into the store
619
+ * @param entities Entities
620
+ */
621
+ insertMany(entities: E[]): void;
622
+ /**
623
+ * Update or insert an entity into the store
624
+ * @param entity Entity
625
+ */
626
+ update(entity: E): void;
627
+ /**
628
+ * Update or insert many entities into the store
629
+ * @param entities Entities
630
+ */
631
+ updateMany(entities: E[]): void;
632
+ /**
633
+ * Add a strategy to this store
634
+ * @param strategy Entity store strategy
635
+ * @returns Entity store
636
+ */
637
+ addStrategy(strategy: EntityStoreStrategy, activate?: boolean): EntityStore;
638
+ /**
639
+ * Remove a strategy from this store
640
+ * @param strategy Entity store strategy
641
+ * @returns Entity store
642
+ */
643
+ removeStrategy(strategy: EntityStoreStrategy): EntityStore;
644
+ /**
645
+ * Return strategies of a given type
646
+ * @param type Entity store strategy class
647
+ * @returns Strategies
648
+ */
649
+ getStrategyOfType(type: typeof EntityStoreStrategy): EntityStoreStrategy;
650
+ /**
651
+ * Activate strategies of a given type
652
+ * @param type Entity store strategy class
653
+ */
654
+ activateStrategyOfType(type: typeof EntityStoreStrategy): void;
655
+ /**
656
+ * Deactivate strategies of a given type
657
+ * @param type Entity store strategy class
658
+ */
659
+ deactivateStrategyOfType(type: typeof EntityStoreStrategy): void;
660
+ /**
661
+ * Delete an entity from the store
662
+ * @param entity Entity
663
+ */
664
+ delete(entity: E): void;
665
+ /**
666
+ * Delete many entities from the store
667
+ * @param entities Entities
668
+ */
669
+ deleteMany(entities: E[]): void;
670
+ /**
671
+ * Generate a complete index of all the entities
672
+ * @param entities Entities
673
+ * @returns Index
674
+ */
675
+ private generateIndex;
676
+ /**
677
+ * Push the index's entities into the entities$ observable
678
+ */
679
+ private next;
680
+ /**
681
+ * Update the store's count and empty
682
+ */
683
+ private updateCount;
684
+ /**
685
+ * Create the entity state manager
686
+ * @returns EntityStateManager
687
+ */
688
+ private createStateManager;
689
+ /**
690
+ * Create the data view
691
+ * @returns EntityView<E>
692
+ */
693
+ private createDataView;
694
+ /**
695
+ * Create the state view
696
+ * @returns EntityView<EntityRecord<E>>
697
+ */
698
+ private createStateView;
699
+ private statesAreTheSame;
700
+ }
701
+
702
+ /**
703
+ * This class is used to synchronize a component's changes
704
+ * detection with an EntityStore changes. For example, it is frequent
705
+ * to have a component subscribe to a store's selected entity and, at the same time,
706
+ * this component provides a way to select an entity with, let's say, a click.
707
+ *
708
+ * This class automatically handles those case and triggers the compoent's
709
+ * change detection when needed.
710
+ *
711
+ * Note: If the component observes the store's stateView, a workspace is
712
+ * probably not required because the stateView catches any changes to the
713
+ * entities and their state.
714
+ */
715
+ declare class EntityStoreWatcher<E extends object> {
716
+ /**
717
+ * Component change detector
718
+ */
719
+ private cdRef;
720
+ /**
721
+ * Entity store
722
+ */
723
+ private store;
724
+ /**
725
+ * Component inner state
726
+ */
727
+ private innerStateIndex;
728
+ /**
729
+ * Subscription to the store's entities
730
+ */
731
+ private entities$$;
732
+ /**
733
+ * Subscription to the store's state
734
+ */
735
+ private state$$;
736
+ constructor(store?: EntityStore<E>, cdRef?: ChangeDetectorRef);
737
+ destroy(): void;
738
+ /**
739
+ * Bind this workspace to a store and start watching for changes
740
+ * @param store Entity store
741
+ */
742
+ setStore(store?: EntityStore<E>): void;
743
+ /**
744
+ * Bind this workspace to a component's change detector
745
+ * @param cdRef Change detector
746
+ */
747
+ setChangeDetector(cdRef?: ChangeDetectorRef): void;
748
+ /**
749
+ * Set up observers on a store's entities and their state
750
+ * @param store Entity store
751
+ */
752
+ private setupObservers;
753
+ /**
754
+ * Teardown store observers
755
+ */
756
+ private teardownObservers;
757
+ /**
758
+ * When the entities change, always trigger the changes detection
759
+ */
760
+ private onEntitiesChange;
761
+ /**
762
+ * When the entities state change, trigger the change detection
763
+ * only if the component has not handled these changes yet. For example,
764
+ * the component might have initiated thoses changes itself.
765
+ */
766
+ private onStateChange;
767
+ /**
768
+ * Trigger the change detection of the workspace is bound to a change detector
769
+ */
770
+ private detectChanges;
771
+ }
772
+
773
+ interface EntityOperation<E extends object = object> {
774
+ key: EntityKey;
775
+ type: EntityOperationType;
776
+ previous: E | undefined;
777
+ current: E | undefined;
778
+ store?: EntityStore<E>;
779
+ meta?: Record<string, any>;
780
+ }
781
+ type EntityTransactionCommitHandler = (transaction: EntityTransaction, operations: EntityOperation[]) => Observable<any>;
782
+ /**
783
+ * This class holds a reference to the insert, update and delete
784
+ * operations performed on a store. This is useful to commit
785
+ * these operations in a single pass or to cancel them.
786
+ */
787
+ declare class EntityTransaction {
788
+ /**
789
+ * Store holding the operations on another store
790
+ */
791
+ readonly operations: EntityStore<EntityOperation, EntityOperationState>;
792
+ /**
793
+ * Method to get an entity's id
794
+ */
795
+ readonly getKey: (E: any) => EntityKey;
796
+ /**
797
+ * Whether there are pending operations
798
+ */
799
+ get empty$(): BehaviorSubject<boolean>;
800
+ /**
801
+ * Whether there are pending operations
802
+ */
803
+ get empty(): boolean;
804
+ /**
805
+ * Whether thise store is in commit phase
806
+ */
807
+ get inCommitPhase(): boolean;
808
+ readonly inCommitPhase$: BehaviorSubject<boolean>;
809
+ constructor(options?: EntityTransactionOptions);
810
+ destroy(): void;
811
+ /**
812
+ * Insert an entity into a store. If no store is specified, an insert
813
+ * operation is still created but the transaction won't add the new
814
+ * entity to the store.
815
+ * @param current The entity to insert
816
+ * @param store Optional: The store to insert the entity into
817
+ * @param meta Optional: Any metadata on the operation
818
+ */
819
+ insert(current: object, store?: EntityStore<object>, meta?: Record<string, any>): void;
820
+ /**
821
+ * Update an entity in a store. If no store is specified, an update
822
+ * operation is still created but the transaction won't update the
823
+ * entity into the store.
824
+ * @param previous The entity before update
825
+ * @param current The entity after update
826
+ * @param store Optional: The store to update the entity into
827
+ * @param meta Optional: Any metadata on the operation
828
+ */
829
+ update(previous: object, current: object, store?: EntityStore<object>, meta?: Record<string, any>): void;
830
+ /**
831
+ * Delete an entity from a store. If no store is specified, a delete
832
+ * operation is still created but the transaction won't remove the
833
+ * entity from the store.
834
+ * @param previous The entity before delete
835
+ * @param store Optional: The store to delete the entity from
836
+ * @param meta Optional: Any metadata on the operation
837
+ */
838
+ delete(previous: object, store?: EntityStore<object>, meta?: Record<string, any>): void;
839
+ /**
840
+ * Commit operations the transaction. This method doesn't do much
841
+ * in itself. The handler it receives does the hard work and it's
842
+ * implementation is left to the caller. This method simply wraps
843
+ * the handler into an error catching mechanism to update
844
+ * the transaction afterward. The caller needs to subscribe to this
845
+ * method's output (observable) for the commit to be performed.
846
+ * @param operations Operations to commit
847
+ * @param handler Function that handles the commit operation
848
+ * @returns The handler output (observable)
849
+ */
850
+ commit(operations: EntityOperation[], handler: EntityTransactionCommitHandler): Observable<any>;
851
+ /**
852
+ * Commit all the operations of the transaction.
853
+ * @param handler Function that handles the commit operation
854
+ * @returns The handler output (observable)
855
+ */
856
+ commitAll(handler: EntityTransactionCommitHandler): Observable<any>;
857
+ /**
858
+ * Rollback this transaction
859
+ */
860
+ rollback(): void;
861
+ /**
862
+ * Rollback specific operations
863
+ */
864
+ rollbackOperations(operations: EntityOperation[]): void;
865
+ /**
866
+ * Clear this transaction
867
+ * @todo Raise event and synchronize stores?
868
+ */
869
+ clear(): void;
870
+ /**
871
+ * Get any existing operation on an entity
872
+ * @param entity Entity
873
+ * @returns Either an insert, update or delete operation
874
+ */
875
+ getOperationByEntity(entity: object): EntityOperation;
876
+ /**
877
+ * Merge another transaction in this one
878
+ * @param transaction Another transaction
879
+ */
880
+ mergeTransaction(transaction: EntityTransaction): void;
881
+ /**
882
+ * Create an insert operation and add an entity to the store
883
+ * @param current The entity to insert
884
+ * @param store Optional: The store to insert the entity into
885
+ * @param meta Optional: Any metadata on the operation
886
+ */
887
+ private doInsert;
888
+ /**
889
+ * Create an update operation and update an entity into the store
890
+ * @param previous The entity before update
891
+ * @param current The entity after update
892
+ * @param store Optional: The store to update the entity into
893
+ * @param meta Optional: Any metadata on the operation
894
+ */
895
+ private doUpdate;
896
+ /**
897
+ * Create a delete operation and delete an entity from the store
898
+ * @param previous The entity before delete
899
+ * @param store Optional: The store to delete the entity from
900
+ * @param meta Optional: Any metadata on the operation
901
+ */
902
+ private doDelete;
903
+ /**
904
+ * Remove committed operations from store
905
+ * @param operations Commited operations
906
+ * @todo Raise event and synchronize stores?
907
+ */
908
+ private resolveOperations;
909
+ /**
910
+ * On commit success, resolve commited operations and exit commit phase
911
+ * @param operations Commited operations
912
+ */
913
+ private onCommitSuccess;
914
+ /**
915
+ * On commit error, abort transaction
916
+ * @param operations Commited operations
917
+ */
918
+ private onCommitError;
919
+ /**
920
+ * Add an operation to the operations store
921
+ * @param operation Operation to add
922
+ */
923
+ private addOperation;
924
+ /**
925
+ * Remove an operation from the operations store
926
+ * @param operation Operation to remove
927
+ */
928
+ private removeOperation;
929
+ /**
930
+ * Get all the operations to commit
931
+ * @returns Operations to commit
932
+ */
933
+ private getOperationsInCommit;
934
+ /**
935
+ * Check if the transaction is in the commit phase and throw an error if it is
936
+ */
937
+ private checkInCommitPhase;
938
+ }
939
+
940
+ /**
941
+ * When active, this strategy filters a store's stateView to return
942
+ * selected entities only.
943
+ */
944
+ declare class EntityStoreFilterCustomFuncStrategy extends EntityStoreStrategy {
945
+ protected options: EntityStoreStrategyFuncOptions;
946
+ constructor(options: EntityStoreStrategyFuncOptions);
947
+ /**
948
+ * Store / filter ids map
949
+ */
950
+ private filters;
951
+ /**
952
+ * Bind this strategy to a store and start filtering it
953
+ * @param store Entity store
954
+ */
955
+ bindStore(store: EntityStore): void;
956
+ /**
957
+ * Unbind this strategy from a store and stop filtering it
958
+ * @param store Entity store
959
+ */
960
+ unbindStore(store: EntityStore): void;
961
+ /**
962
+ * Start filtering all stores
963
+ * @internal
964
+ */
965
+ protected doActivate(): void;
966
+ /**
967
+ * Stop filtering all stores
968
+ * @internal
969
+ */
970
+ protected doDeactivate(): void;
971
+ /**
972
+ * Filter all stores
973
+ */
974
+ private filterAll;
975
+ /**
976
+ * Unfilter all stores
977
+ */
978
+ private unfilterAll;
979
+ /**
980
+ * Filter a store and add it to the filters map
981
+ */
982
+ private filterStore;
983
+ /**
984
+ * Unfilter a store and delete it from the filters map
985
+ */
986
+ private unfilterStore;
987
+ }
988
+
989
+ /**
990
+ * When active, this strategy filters a store's stateView to return
991
+ * selected entities only.
992
+ */
993
+ declare class EntityStoreFilterSelectionStrategy extends EntityStoreStrategy {
994
+ /**
995
+ * Store / filter ids map
996
+ */
997
+ private filters;
998
+ /**
999
+ * Bind this strategy to a store and start filtering it
1000
+ * @param store Entity store
1001
+ */
1002
+ bindStore(store: EntityStore): void;
1003
+ /**
1004
+ * Unbind this strategy from a store and stop filtering it
1005
+ * @param store Entity store
1006
+ */
1007
+ unbindStore(store: EntityStore): void;
1008
+ /**
1009
+ * Start filtering all stores
1010
+ * @internal
1011
+ */
1012
+ protected doActivate(): void;
1013
+ /**
1014
+ * Stop filtering all stores
1015
+ * @internal
1016
+ */
1017
+ protected doDeactivate(): void;
1018
+ /**
1019
+ * Filter all stores
1020
+ */
1021
+ private filterAll;
1022
+ /**
1023
+ * Unfilter all stores
1024
+ */
1025
+ private unfilterAll;
1026
+ /**
1027
+ * Filter a store and add it to the filters map
1028
+ */
1029
+ private filterStore;
1030
+ /**
1031
+ * Unfilter a store and delete it from the filters map
1032
+ */
1033
+ private unfilterStore;
1034
+ }
1035
+
1036
+ interface EntitySelectorChange<T = any> {
1037
+ selected: boolean;
1038
+ value: T;
1039
+ }
1040
+ declare class EntitySelectorComponent implements OnInit, OnDestroy {
1041
+ private cdRef;
1042
+ /**
1043
+ * The selected entity
1044
+ * @internal
1045
+ */
1046
+ readonly selected$: BehaviorSubject<object>;
1047
+ /**
1048
+ * The current multi select option text
1049
+ * @internal
1050
+ */
1051
+ readonly multiText$: BehaviorSubject<string>;
1052
+ readonly multiSelectValue: {
1053
+ id: string;
1054
+ };
1055
+ readonly emptyValue: {
1056
+ id: string;
1057
+ };
1058
+ /**
1059
+ * Subscription to the selected entity
1060
+ */
1061
+ private selected$$;
1062
+ /**
1063
+ * Store watcher
1064
+ */
1065
+ private watcher;
1066
+ /**
1067
+ * Entity store
1068
+ */
1069
+ store: EntityStore<object>;
1070
+ /**
1071
+ * Title accessor
1072
+ */
1073
+ titleAccessor: (object: any) => string;
1074
+ /**
1075
+ * Text to display when nothing is selected
1076
+ */
1077
+ emptyText: string;
1078
+ /**
1079
+ * Wheter selecting many entities is allowed
1080
+ */
1081
+ multi: boolean;
1082
+ /**
1083
+ * Text to display for the select all option
1084
+ */
1085
+ multiAllText: string;
1086
+ /**
1087
+ * Text to display for the select none option
1088
+ */
1089
+ multiNoneText: string;
1090
+ /**
1091
+ * Field placeholder
1092
+ */
1093
+ placeholder: string;
1094
+ /**
1095
+ * Wheter the selector is disabled or not
1096
+ */
1097
+ disabled: boolean;
1098
+ /**
1099
+ * Event emitted when the selection changes
1100
+ */
1101
+ selectedChange: EventEmitter<EntitySelectorChange<any>>;
1102
+ /**
1103
+ * Create a store watcher and subscribe to the selected entity
1104
+ * @internal
1105
+ */
1106
+ ngOnInit(): void;
1107
+ /**
1108
+ * Unsubscribe to the selected entity and destroy the store watcher
1109
+ * @internal
1110
+ */
1111
+ ngOnDestroy(): void;
1112
+ /**
1113
+ * On selection change, update the store's state and emit an event
1114
+ * @internal
1115
+ */
1116
+ onSelectionChange(event: {
1117
+ value: object | undefined;
1118
+ }): void;
1119
+ private onSelectFromStore;
1120
+ private updateMultiToggleWithEntities;
1121
+ static ɵfac: i0.ɵɵFactoryDeclaration<EntitySelectorComponent, never>;
1122
+ static ɵcmp: i0.ɵɵComponentDeclaration<EntitySelectorComponent, "igo-entity-selector", never, { "store": { "alias": "store"; "required": false; }; "titleAccessor": { "alias": "titleAccessor"; "required": false; }; "emptyText": { "alias": "emptyText"; "required": false; }; "multi": { "alias": "multi"; "required": false; }; "multiAllText": { "alias": "multiAllText"; "required": false; }; "multiNoneText": { "alias": "multiNoneText"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "selectedChange": "selectedChange"; }, never, never, true, never>;
1123
+ }
1124
+
1125
+ /**
1126
+ * @deprecated import the EntitySelectorComponent directly
1127
+ */
1128
+ declare class IgoEntitySelectorModule {
1129
+ static ɵfac: i0.ɵɵFactoryDeclaration<IgoEntitySelectorModule, never>;
1130
+ static ɵmod: i0.ɵɵNgModuleDeclaration<IgoEntitySelectorModule, never, [typeof EntitySelectorComponent], [typeof EntitySelectorComponent]>;
1131
+ static ɵinj: i0.ɵɵInjectorDeclaration<IgoEntitySelectorModule>;
1132
+ }
1133
+
1134
+ interface EntityTablePaginatorOptions {
1135
+ disabled?: boolean;
1136
+ hidePageSize?: boolean;
1137
+ pageIndex?: number;
1138
+ pageSize?: number;
1139
+ pageSizeOptions?: number[];
1140
+ showFirstLastButtons?: boolean;
1141
+ }
1142
+
1143
+ type CellData = Record<string, {
1144
+ value: any;
1145
+ class: Record<string, boolean>;
1146
+ isUrl: boolean;
1147
+ isImg: boolean;
1148
+ }>;
1149
+ interface RowData {
1150
+ record: EntityRecord<object, EntityState>;
1151
+ cellData: CellData;
1152
+ }
1153
+ declare class EntityTableComponent implements OnInit, OnChanges, OnDestroy {
1154
+ private cdRef;
1155
+ private formBuilder;
1156
+ protected _focusMonitor: FocusMonitor;
1157
+ protected _elementRef: ElementRef<HTMLElement>;
1158
+ ngControl: NgControl;
1159
+ protected _parentForm: NgForm;
1160
+ protected _controlName: FormControlName;
1161
+ protected _defaultErrorStateMatcher: ErrorStateMatcher;
1162
+ private dateAdapter;
1163
+ entitySortChange$: BehaviorSubject<boolean>;
1164
+ formGroup: UntypedFormGroup;
1165
+ filteredOptions: {};
1166
+ /**
1167
+ * Reference to the column renderer types
1168
+ * @internal
1169
+ */
1170
+ entityTableColumnRenderer: typeof EntityTableColumnRenderer;
1171
+ /**
1172
+ * Reference to the selection's state
1173
+ * @internal
1174
+ */
1175
+ entityTableSelectionState: typeof EntityTableSelectionState;
1176
+ /**
1177
+ * Observable of the selection,s state
1178
+ * @internal
1179
+ */
1180
+ readonly selectionState$: BehaviorSubject<EntityTableSelectionState>;
1181
+ /**
1182
+ * Subscription to the store's selection
1183
+ */
1184
+ private selection$$;
1185
+ /**
1186
+ * Subscription to the dataSource
1187
+ */
1188
+ private dataSource$$;
1189
+ /**
1190
+ * The last record checked. Useful for selecting
1191
+ * multiple records by holding the shift key and checking
1192
+ * checkboxes.
1193
+ */
1194
+ private lastRecordCheckedKey;
1195
+ /**
1196
+ * Entity store
1197
+ */
1198
+ store: EntityStore<object>;
1199
+ /**
1200
+ * Table paginator
1201
+ */
1202
+ set paginator(value: MatPaginator);
1203
+ get paginator(): MatPaginator;
1204
+ private _paginator;
1205
+ /**
1206
+ * Table template
1207
+ */
1208
+ template: EntityTableTemplate;
1209
+ /**
1210
+ * Scroll behavior on selection
1211
+ */
1212
+ scrollBehavior: EntityTableScrollBehavior;
1213
+ /**
1214
+ * Whether nulls should be first when sorting
1215
+ */
1216
+ sortNullsFirst: boolean;
1217
+ /**
1218
+ * Show the table paginator or not. False by default.
1219
+ */
1220
+ withPaginator: boolean;
1221
+ /**
1222
+ * Paginator options
1223
+ */
1224
+ paginatorOptions: EntityTablePaginatorOptions;
1225
+ /**
1226
+ * Event emitted when an entity (row) is clicked
1227
+ */
1228
+ entityClick: EventEmitter<object>;
1229
+ /**
1230
+ * Event emitted when an entity (row) is selected
1231
+ */
1232
+ entitySelectChange: EventEmitter<{
1233
+ added: object[];
1234
+ }>;
1235
+ /**
1236
+ * Event emitted when the table sort is changed.
1237
+ */
1238
+ entitySortChange: EventEmitter<{
1239
+ column: EntityTableColumn;
1240
+ direction: string;
1241
+ }>;
1242
+ /**
1243
+ * Table headers
1244
+ * @internal
1245
+ */
1246
+ get headers(): string[];
1247
+ /**
1248
+ * Data source consumable by the underlying material table
1249
+ * @internal
1250
+ */
1251
+ dataSource: MatTableDataSource<RowData, MatPaginator>;
1252
+ /**
1253
+ * Whether selection is supported
1254
+ * @internal
1255
+ */
1256
+ get selection(): boolean;
1257
+ /**
1258
+ * Whether a selection checkbox should be displayed
1259
+ * @internal
1260
+ */
1261
+ get selectionCheckbox(): boolean;
1262
+ /**
1263
+ * Whether selection many entities should eb supported
1264
+ * @internal
1265
+ */
1266
+ get selectMany(): boolean;
1267
+ /**
1268
+ * Whether selection many entities should eb supported
1269
+ * @internal
1270
+ */
1271
+ get fixedHeader(): boolean;
1272
+ get tableHeight(): string;
1273
+ constructor();
1274
+ /**
1275
+ * Track the selection state to properly display the selection checkboxes
1276
+ * @internal
1277
+ */
1278
+ ngOnInit(): void;
1279
+ /**
1280
+ * @internal
1281
+ */
1282
+ ngOnChanges(changes: SimpleChanges): void;
1283
+ /**
1284
+ * Process text or number value change (edition)
1285
+ */
1286
+ onValueChange(column: string, record: EntityRecord<any>, event: any): void;
1287
+ /**
1288
+ * Process boolean value change (edition)
1289
+ */
1290
+ onBooleanValueChange(column: string, record: EntityRecord<any>, event: any): void;
1291
+ /**
1292
+ * Process select value change (edition)
1293
+ */
1294
+ onSelectValueChange(column: string, record: EntityRecord<any>, event: any): void;
1295
+ /**
1296
+ * Process autocomplete value change (edition)
1297
+ */
1298
+ onAutocompleteValueChange(column: EntityTableColumn, record: EntityRecord<any>, event: any): void;
1299
+ /**
1300
+ * Process date value change (edition)
1301
+ */
1302
+ onDateChange(column: string, record: EntityRecord<any>, event: any): void;
1303
+ /**
1304
+ * Enable edition mode for one row
1305
+ * More than one row can be edited at the same time
1306
+ */
1307
+ private enableEdit;
1308
+ private handleDatasource;
1309
+ /**
1310
+ * Unbind the store watcher
1311
+ * @internal
1312
+ */
1313
+ ngOnDestroy(): void;
1314
+ private unsubscribeStore;
1315
+ /**
1316
+ * Trackby function
1317
+ * @param record Record
1318
+ * @param index Record index
1319
+ * @internal
1320
+ */
1321
+ getTrackByFunction(): TrackByFunction<RowData>;
1322
+ /**
1323
+ * Trigger a refresh of the table. This can be useful when
1324
+ * the data source doesn't emit a new value but for some reason
1325
+ * the records need an update.
1326
+ * @internal
1327
+ */
1328
+ refresh(): void;
1329
+ paginatorChange(event: MatPaginator): void;
1330
+ /**
1331
+ * On sort, sort the store
1332
+ * @param event Sort event
1333
+ * @internal
1334
+ */
1335
+ onSort(event: {
1336
+ active: string;
1337
+ direction: string;
1338
+ }): void;
1339
+ /**
1340
+ * When an entity is clicked, emit an event
1341
+ * @param record Record
1342
+ * @internal
1343
+ */
1344
+ onRowClick(record: EntityRecord<object>): void;
1345
+ /**
1346
+ * When an entity is selected, select it in the store and emit an event. Even if
1347
+ * "many" is set to true, this method always select a single, exclusive row. Selecting
1348
+ * multiple rows should be achieved by using the checkboxes.
1349
+ * @param record Record
1350
+ * @internal
1351
+ */
1352
+ onRowSelect(record: EntityRecord<object>): void;
1353
+ /**
1354
+ * Select or unselect all rows at once. On select, emit an event.
1355
+ * @param toggle Select or unselect
1356
+ * @internal
1357
+ */
1358
+ onToggleRows(toggle: boolean): void;
1359
+ /**
1360
+ * When an entity is toggled, select or unselect it in the store. On select,
1361
+ * emit an event.
1362
+ * @param toggle Select or unselect
1363
+ * @param record Record
1364
+ * @internal
1365
+ */
1366
+ onToggleRow(toggle: boolean, record: EntityRecord<object>): void;
1367
+ /**
1368
+ * When an entity is toggled, select or unselect it in the store. On select,
1369
+ * emit an event.
1370
+ * @param toggle Select or unselect
1371
+ * @param record Record
1372
+ * @internal
1373
+ */
1374
+ onShiftToggleRow(toggle: boolean, record: EntityRecord<object>, event: MouseEvent): void;
1375
+ /**
1376
+ * Compute the selection state
1377
+ * @returns Whether all, some or no rows are selected
1378
+ * @internal
1379
+ */
1380
+ private computeSelectionState;
1381
+ /**
1382
+ * Whether a column is sortable
1383
+ * @param column Column
1384
+ * @returns True if a column is sortable
1385
+ * @internal
1386
+ */
1387
+ columnIsSortable(column: EntityTableColumn): boolean;
1388
+ /**
1389
+ * Whether a row is should be selected based on the underlying entity state
1390
+ * @param record Record
1391
+ * @returns True if a row should be selected
1392
+ * @internal
1393
+ */
1394
+ rowIsSelected(record: EntityRecord<object>): boolean;
1395
+ isImg(value: any): boolean;
1396
+ isUrl(value: any): boolean;
1397
+ /**
1398
+ * Method to access an entity's values
1399
+ * @param record Record
1400
+ * @param column Column
1401
+ * @returns Any value
1402
+ * @internal
1403
+ */
1404
+ getValue(record: EntityRecord<object>, column: EntityTableColumn): any;
1405
+ /**
1406
+ * Method to access an entity's validation values
1407
+ * @param column Column
1408
+ * @param validationType string
1409
+ * @returns Any value (false if no validation or not the one concerned)
1410
+ * @internal
1411
+ */
1412
+ getValidationAttributeValue(column: EntityTableColumn, validationType: string): any;
1413
+ isEdition(record: any): boolean;
1414
+ /**
1415
+ * Return the type of renderer of a column
1416
+ * @param column Column
1417
+ * @returns Renderer type
1418
+ * @internal
1419
+ */
1420
+ getColumnRenderer(column: EntityTableColumn): EntityTableColumnRenderer;
1421
+ /**
1422
+ * Return the table ngClass
1423
+ * @returns ngClass
1424
+ * @internal
1425
+ */
1426
+ getTableClass(): Record<string, boolean>;
1427
+ /**
1428
+ * Return a header ngClass
1429
+ * @returns ngClass
1430
+ * @internal
1431
+ */
1432
+ getHeaderClass(): Record<string, boolean>;
1433
+ /**
1434
+ * Return a row ngClass
1435
+ * @param record Record
1436
+ * @returns ngClass
1437
+ * @internal
1438
+ */
1439
+ getRowClass(record: EntityRecord<object>): Record<string, boolean>;
1440
+ /**
1441
+ * Return a row ngClass
1442
+ * @param record Record
1443
+ * @param column Column
1444
+ * @returns ngClass
1445
+ * @internal
1446
+ */
1447
+ getCellClass(record: EntityRecord<object>, column: EntityTableColumn): Record<string, boolean>;
1448
+ /**
1449
+ * When a button is clicked
1450
+ * @param func Function
1451
+ * @param record Record
1452
+ * @internal
1453
+ */
1454
+ onButtonClick(clickFunc: (entity: object, record?: EntityRecord<object>) => void, record: EntityRecord<object>): void;
1455
+ /**
1456
+ * Retrieve column name without his "properties" tag (useful for edition workspace properties)
1457
+ */
1458
+ getColumnKeyWithoutPropertiesTag(column: string): string;
1459
+ static ɵfac: i0.ɵɵFactoryDeclaration<EntityTableComponent, never>;
1460
+ static ɵcmp: i0.ɵɵComponentDeclaration<EntityTableComponent, "igo-entity-table", never, { "store": { "alias": "store"; "required": false; }; "paginator": { "alias": "paginator"; "required": false; }; "template": { "alias": "template"; "required": false; }; "scrollBehavior": { "alias": "scrollBehavior"; "required": false; }; "sortNullsFirst": { "alias": "sortNullsFirst"; "required": false; }; "withPaginator": { "alias": "withPaginator"; "required": false; }; "paginatorOptions": { "alias": "paginatorOptions"; "required": false; }; }, { "entityClick": "entityClick"; "entitySelectChange": "entitySelectChange"; "entitySortChange": "entitySortChange"; }, never, never, true, never>;
1461
+ }
1462
+
1463
+ /**
1464
+ * @deprecated import the EntityTableComponent directly
1465
+ */
1466
+ declare class IgoEntityTableModule {
1467
+ static ɵfac: i0.ɵɵFactoryDeclaration<IgoEntityTableModule, never>;
1468
+ static ɵmod: i0.ɵɵNgModuleDeclaration<IgoEntityTableModule, never, [typeof EntityTableComponent], [typeof EntityTableComponent]>;
1469
+ static ɵinj: i0.ɵɵInjectorDeclaration<IgoEntityTableModule>;
1470
+ }
1471
+
1472
+ declare class EntityTablePaginatorComponent implements OnChanges, OnDestroy {
1473
+ private languageService;
1474
+ private mediaService;
1475
+ disabled: boolean;
1476
+ hidePageSize: boolean;
1477
+ pageIndex: number;
1478
+ pageSize: number;
1479
+ pageSizeOptions: number[];
1480
+ showFirstLastButtons: boolean;
1481
+ private count$$;
1482
+ private entitySortChange$$;
1483
+ private paginationLabelTranslation$$;
1484
+ entitySortChange$: BehaviorSubject<boolean>;
1485
+ /**
1486
+ * Entity store
1487
+ */
1488
+ store: EntityStore<object>;
1489
+ /**
1490
+ * Paginator options
1491
+ */
1492
+ paginatorOptions: EntityTablePaginatorOptions;
1493
+ /**
1494
+ * Event emitted when the paginator changes the page size or page index.
1495
+ */
1496
+ page: EventEmitter<PageEvent>;
1497
+ length: number;
1498
+ /**
1499
+ * Paginator emitted.
1500
+ */
1501
+ paginatorChange: EventEmitter<MatPaginator>;
1502
+ paginator: MatPaginator;
1503
+ ngOnChanges(): void;
1504
+ initPaginatorOptions(): void;
1505
+ translateLabels(): void;
1506
+ rangeLabel: (page: number, pageSize: number, length: number) => string;
1507
+ private unsubscribeAll;
1508
+ ngOnDestroy(): void;
1509
+ emitPaginator(): void;
1510
+ static ɵfac: i0.ɵɵFactoryDeclaration<EntityTablePaginatorComponent, never>;
1511
+ static ɵcmp: i0.ɵɵComponentDeclaration<EntityTablePaginatorComponent, "igo-entity-table-paginator", never, { "entitySortChange$": { "alias": "entitySortChange$"; "required": false; }; "store": { "alias": "store"; "required": false; }; "paginatorOptions": { "alias": "paginatorOptions"; "required": false; }; }, { "page": "page"; "paginatorChange": "paginatorChange"; }, never, never, true, never>;
1512
+ }
1513
+
1514
+ /**
1515
+ * @deprecated import the EntityTablePaginatorComponent directly
1516
+ */
1517
+ declare class IgoEntityTablePaginatorModule {
1518
+ static ɵfac: i0.ɵɵFactoryDeclaration<IgoEntityTablePaginatorModule, never>;
1519
+ static ɵmod: i0.ɵɵNgModuleDeclaration<IgoEntityTablePaginatorModule, never, [typeof EntityTablePaginatorComponent], [typeof EntityTablePaginatorComponent]>;
1520
+ static ɵinj: i0.ɵɵInjectorDeclaration<IgoEntityTablePaginatorModule>;
1521
+ }
1522
+
1523
+ declare const ENTITY_DIRECTIVES: readonly [typeof EntitySelectorComponent, typeof EntityTableComponent, typeof EntityTablePaginatorComponent];
1524
+ /**
1525
+ * @deprecated import the components directly or ENTITY_DIRECTIVES for every components/directives
1526
+ */
1527
+ declare class IgoEntityModule {
1528
+ static ɵfac: i0.ɵɵFactoryDeclaration<IgoEntityModule, never>;
1529
+ static ɵmod: i0.ɵɵNgModuleDeclaration<IgoEntityModule, never, [typeof EntitySelectorComponent, typeof EntityTableComponent, typeof EntityTablePaginatorComponent], [typeof EntitySelectorComponent, typeof EntityTableComponent, typeof EntityTablePaginatorComponent]>;
1530
+ static ɵinj: i0.ɵɵInjectorDeclaration<IgoEntityModule>;
1531
+ }
1532
+
1533
+ export { ENTITY_DIRECTIVES, EntityOperationType, EntitySelectorComponent, EntityStateManager, EntityStore, EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy, EntityStoreStrategy, EntityStoreWatcher, EntityTableColumnRenderer, EntityTableComponent, EntityTablePaginatorComponent, EntityTableScrollBehavior, EntityTableSelectionState, EntityTransaction, EntityView, IgoEntityModule, IgoEntitySelectorModule, IgoEntityTableModule, IgoEntityTablePaginatorModule, getEntityIcon, getEntityId, getEntityProperty, getEntityRevision, getEntityTitle, getEntityTitleHtml };
1534
+ export type { EntityFilterClause, EntityJoinClause, EntityKey, EntityOperation, EntityOperationState, EntityRecord, EntitySelectorChange, EntitySortClause, EntityState, EntityStoreOptions, EntityStoreStrategyFuncOptions, EntityStoreStrategyOptions, EntityTableButton, EntityTableColumn, EntityTableColumnValidation, EntityTablePaginatorOptions, EntityTableTemplate, EntityTransactionCommitHandler, EntityTransactionOptions, SelectOption, TableRelation };