@pepperi-addons/ngx-composite-lib 0.0.16-loader.2 → 0.4.0-angular14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/color-settings/color-settings.component.d.ts +25 -25
  2. package/color-settings/color-settings.model.d.ts +5 -5
  3. package/color-settings/color-settings.module.d.ts +12 -12
  4. package/color-settings/{pepperi-addons-ngx-composite-lib-color-settings.d.ts → index.d.ts} +5 -5
  5. package/color-settings/public-api.d.ts +3 -3
  6. package/core/common/directives/index.d.ts +1 -1
  7. package/core/common/directives/public-api.d.ts +1 -1
  8. package/core/common/directives/reset-configuration-field.directive.d.ts +39 -39
  9. package/core/common/index.d.ts +1 -1
  10. package/core/common/public-api.d.ts +2 -2
  11. package/core/common/services/dimx.service.d.ts +32 -32
  12. package/core/common/services/index.d.ts +1 -1
  13. package/core/common/services/public-api.d.ts +2 -2
  14. package/core/common/services/utilities.service.d.ts +6 -6
  15. package/core/index.d.ts +1 -1
  16. package/core/public-api.d.ts +1 -1
  17. package/data-view-builder/data-view-builder.component.d.ts +35 -35
  18. package/data-view-builder/data-view-builder.model.d.ts +1 -1
  19. package/data-view-builder/data-view-builder.module.d.ts +23 -23
  20. package/data-view-builder/data-view-builder.service.d.ts +14 -14
  21. package/data-view-builder/{pepperi-addons-ngx-composite-lib-data-view-builder.d.ts → index.d.ts} +5 -5
  22. package/data-view-builder/menu-data-view/menu-data-view.component.d.ts +36 -36
  23. package/data-view-builder/public-api.d.ts +3 -3
  24. package/{esm2015/color-settings/color-settings.component.js → esm2020/color-settings/color-settings.component.mjs} +87 -91
  25. package/{esm2015/color-settings/color-settings.model.js → esm2020/color-settings/color-settings.model.mjs} +8 -8
  26. package/{esm2015/color-settings/color-settings.module.js → esm2020/color-settings/color-settings.module.mjs} +38 -40
  27. package/{esm2015/color-settings/pepperi-addons-ngx-composite-lib-color-settings.js → esm2020/color-settings/pepperi-addons-ngx-composite-lib-color-settings.mjs} +4 -4
  28. package/{esm2015/color-settings/public-api.js → esm2020/color-settings/public-api.mjs} +6 -6
  29. package/{esm2015/core/common/directives/index.js → esm2020/core/common/directives/index.mjs} +4 -4
  30. package/{esm2015/core/common/directives/public-api.js → esm2020/core/common/directives/public-api.mjs} +4 -4
  31. package/esm2020/core/common/directives/reset-configuration-field.directive.mjs +153 -0
  32. package/{esm2015/core/common/index.js → esm2020/core/common/index.mjs} +4 -4
  33. package/{esm2015/core/common/public-api.js → esm2020/core/common/public-api.mjs} +5 -5
  34. package/esm2020/core/common/services/dimx.service.mjs +48 -0
  35. package/{esm2015/core/common/services/index.js → esm2020/core/common/services/index.mjs} +4 -4
  36. package/{esm2015/core/common/services/public-api.js → esm2020/core/common/services/public-api.mjs} +5 -5
  37. package/{esm2015/core/common/services/utilities.service.js → esm2020/core/common/services/utilities.service.mjs} +18 -18
  38. package/{esm2015/core/index.js → esm2020/core/index.mjs} +4 -4
  39. package/{esm2015/core/public-api.js → esm2020/core/public-api.mjs} +4 -4
  40. package/esm2020/data-view-builder/data-view-builder.component.mjs +117 -0
  41. package/{esm2015/data-view-builder/data-view-builder.model.js → esm2020/data-view-builder/data-view-builder.model.mjs} +1 -1
  42. package/{esm2015/data-view-builder/data-view-builder.module.js → esm2020/data-view-builder/data-view-builder.module.mjs} +80 -82
  43. package/{esm2015/data-view-builder/data-view-builder.service.js → esm2020/data-view-builder/data-view-builder.service.mjs} +38 -38
  44. package/esm2020/data-view-builder/menu-data-view/menu-data-view.component.mjs +117 -0
  45. package/{esm2015/data-view-builder/pepperi-addons-ngx-composite-lib-data-view-builder.js → esm2020/data-view-builder/pepperi-addons-ngx-composite-lib-data-view-builder.mjs} +4 -4
  46. package/{esm2015/data-view-builder/public-api.js → esm2020/data-view-builder/public-api.mjs} +6 -6
  47. package/esm2020/file-status-panel/file-status-panel.component.mjs +35 -0
  48. package/{esm2015/file-status-panel/file-status-panel.model.js → esm2020/file-status-panel/file-status-panel.model.mjs} +8 -8
  49. package/{esm2015/file-status-panel/file-status-panel.module.js → esm2020/file-status-panel/file-status-panel.module.mjs} +54 -56
  50. package/{esm2015/file-status-panel/pepperi-addons-ngx-composite-lib-file-status-panel.js → esm2020/file-status-panel/pepperi-addons-ngx-composite-lib-file-status-panel.mjs} +4 -4
  51. package/{esm2015/file-status-panel/public-api.js → esm2020/file-status-panel/public-api.mjs} +6 -6
  52. package/esm2020/generic-form/generic-form.component.mjs +184 -0
  53. package/{esm2015/generic-form/generic-form.model.js → esm2020/generic-form/generic-form.model.mjs} +1 -1
  54. package/{esm2015/generic-form/generic-form.module.js → esm2020/generic-form/generic-form.module.mjs} +68 -74
  55. package/{esm2015/generic-form/generic-form.service.js → esm2020/generic-form/generic-form.service.mjs} +67 -67
  56. package/{esm2015/generic-form/pepperi-addons-ngx-composite-lib-generic-form.js → esm2020/generic-form/pepperi-addons-ngx-composite-lib-generic-form.mjs} +4 -4
  57. package/{esm2015/generic-form/public-api.js → esm2020/generic-form/public-api.mjs} +7 -7
  58. package/esm2020/generic-list/generic-list.component.mjs +425 -0
  59. package/{esm2015/generic-list/generic-list.model.js → esm2020/generic-list/generic-list.model.mjs} +1 -1
  60. package/{esm2015/generic-list/generic-list.module.js → esm2020/generic-list/generic-list.module.mjs} +70 -72
  61. package/esm2020/generic-list/generic-list.service.mjs +125 -0
  62. package/{esm2015/generic-list/pepperi-addons-ngx-composite-lib-generic-list.js → esm2020/generic-list/pepperi-addons-ngx-composite-lib-generic-list.mjs} +4 -4
  63. package/{esm2015/generic-list/public-api.js → esm2020/generic-list/public-api.mjs} +7 -7
  64. package/esm2020/group-buttons-settings/group-buttons-settings.component.mjs +130 -0
  65. package/{esm2015/group-buttons-settings/group-buttons-settings.model.js → esm2020/group-buttons-settings/group-buttons-settings.model.mjs} +1 -1
  66. package/{esm2015/group-buttons-settings/group-buttons-settings.module.js → esm2020/group-buttons-settings/group-buttons-settings.module.mjs} +48 -50
  67. package/{esm2015/group-buttons-settings/pepperi-addons-ngx-composite-lib-group-buttons-settings.js → esm2020/group-buttons-settings/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs} +4 -4
  68. package/{esm2015/group-buttons-settings/public-api.js → esm2020/group-buttons-settings/public-api.mjs} +6 -6
  69. package/{esm2015/ngx-composite-lib.module.js → esm2020/ngx-composite-lib.module.mjs} +54 -56
  70. package/{esm2015/pepperi-addons-ngx-composite-lib.js → esm2020/pepperi-addons-ngx-composite-lib.mjs} +4 -4
  71. package/{esm2015/public-api.js → esm2020/public-api.mjs} +5 -5
  72. package/{esm2015/shadow-settings/pepperi-addons-ngx-composite-lib-shadow-settings.js → esm2020/shadow-settings/pepperi-addons-ngx-composite-lib-shadow-settings.mjs} +4 -4
  73. package/{esm2015/shadow-settings/public-api.js → esm2020/shadow-settings/public-api.mjs} +6 -6
  74. package/{esm2015/shadow-settings/shadow-settings.component.js → esm2020/shadow-settings/shadow-settings.component.mjs} +69 -73
  75. package/{esm2015/shadow-settings/shadow-settings.model.js → esm2020/shadow-settings/shadow-settings.model.mjs} +7 -7
  76. package/{esm2015/shadow-settings/shadow-settings.module.js → esm2020/shadow-settings/shadow-settings.module.mjs} +42 -44
  77. package/fesm2015/{pepperi-addons-ngx-composite-lib-color-settings.js → pepperi-addons-ngx-composite-lib-color-settings.mjs} +117 -123
  78. package/fesm2015/pepperi-addons-ngx-composite-lib-color-settings.mjs.map +1 -0
  79. package/fesm2015/pepperi-addons-ngx-composite-lib-data-view-builder.mjs +350 -0
  80. package/fesm2015/pepperi-addons-ngx-composite-lib-data-view-builder.mjs.map +1 -0
  81. package/fesm2015/pepperi-addons-ngx-composite-lib-file-status-panel.mjs +107 -0
  82. package/fesm2015/pepperi-addons-ngx-composite-lib-file-status-panel.mjs.map +1 -0
  83. package/fesm2015/{pepperi-addons-ngx-composite-lib-generic-form.js → pepperi-addons-ngx-composite-lib-generic-form.mjs} +295 -305
  84. package/fesm2015/pepperi-addons-ngx-composite-lib-generic-form.mjs.map +1 -0
  85. package/fesm2015/{pepperi-addons-ngx-composite-lib-generic-list.js → pepperi-addons-ngx-composite-lib-generic-list.mjs} +605 -604
  86. package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.mjs.map +1 -0
  87. package/fesm2015/{pepperi-addons-ngx-composite-lib-group-buttons-settings.js → pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs} +168 -174
  88. package/fesm2015/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs.map +1 -0
  89. package/fesm2015/{pepperi-addons-ngx-composite-lib-shadow-settings.js → pepperi-addons-ngx-composite-lib-shadow-settings.mjs} +102 -108
  90. package/fesm2015/pepperi-addons-ngx-composite-lib-shadow-settings.mjs.map +1 -0
  91. package/fesm2015/{pepperi-addons-ngx-composite-lib.js → pepperi-addons-ngx-composite-lib.mjs} +254 -256
  92. package/fesm2015/pepperi-addons-ngx-composite-lib.mjs.map +1 -0
  93. package/fesm2020/pepperi-addons-ngx-composite-lib-color-settings.mjs +141 -0
  94. package/fesm2020/pepperi-addons-ngx-composite-lib-color-settings.mjs.map +1 -0
  95. package/fesm2020/pepperi-addons-ngx-composite-lib-data-view-builder.mjs +348 -0
  96. package/fesm2020/pepperi-addons-ngx-composite-lib-data-view-builder.mjs.map +1 -0
  97. package/{fesm2015/pepperi-addons-ngx-composite-lib-file-status-panel.js → fesm2020/pepperi-addons-ngx-composite-lib-file-status-panel.mjs} +82 -88
  98. package/fesm2020/pepperi-addons-ngx-composite-lib-file-status-panel.mjs.map +1 -0
  99. package/fesm2020/pepperi-addons-ngx-composite-lib-generic-form.mjs +315 -0
  100. package/fesm2020/pepperi-addons-ngx-composite-lib-generic-form.mjs.map +1 -0
  101. package/fesm2020/pepperi-addons-ngx-composite-lib-generic-list.mjs +619 -0
  102. package/fesm2020/pepperi-addons-ngx-composite-lib-generic-list.mjs.map +1 -0
  103. package/fesm2020/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs +186 -0
  104. package/fesm2020/pepperi-addons-ngx-composite-lib-group-buttons-settings.mjs.map +1 -0
  105. package/fesm2020/pepperi-addons-ngx-composite-lib-shadow-settings.mjs +126 -0
  106. package/fesm2020/pepperi-addons-ngx-composite-lib-shadow-settings.mjs.map +1 -0
  107. package/fesm2020/pepperi-addons-ngx-composite-lib.mjs +304 -0
  108. package/fesm2020/pepperi-addons-ngx-composite-lib.mjs.map +1 -0
  109. package/file-status-panel/file-status-panel.component.d.ts +14 -14
  110. package/file-status-panel/file-status-panel.model.d.ts +7 -7
  111. package/file-status-panel/file-status-panel.module.d.ts +17 -17
  112. package/file-status-panel/{pepperi-addons-ngx-composite-lib-file-status-panel.d.ts → index.d.ts} +5 -5
  113. package/file-status-panel/public-api.d.ts +3 -3
  114. package/generic-form/generic-form.component.d.ts +46 -46
  115. package/generic-form/generic-form.model.d.ts +34 -34
  116. package/generic-form/generic-form.module.d.ts +13 -13
  117. package/generic-form/generic-form.service.d.ts +16 -16
  118. package/generic-form/index.d.ts +5 -1
  119. package/generic-form/public-api.d.ts +4 -4
  120. package/generic-list/generic-list.component.d.ts +101 -101
  121. package/generic-list/generic-list.model.d.ts +54 -54
  122. package/generic-list/generic-list.module.d.ts +18 -18
  123. package/generic-list/generic-list.service.d.ts +43 -43
  124. package/generic-list/{pepperi-addons-ngx-composite-lib-generic-list.d.ts → index.d.ts} +5 -5
  125. package/generic-list/public-api.d.ts +4 -4
  126. package/group-buttons-settings/group-buttons-settings.component.d.ts +33 -33
  127. package/group-buttons-settings/group-buttons-settings.model.d.ts +1 -1
  128. package/group-buttons-settings/group-buttons-settings.module.d.ts +15 -15
  129. package/group-buttons-settings/{pepperi-addons-ngx-composite-lib-group-buttons-settings.d.ts → index.d.ts} +5 -5
  130. package/group-buttons-settings/public-api.d.ts +3 -3
  131. package/{pepperi-addons-ngx-composite-lib.d.ts → index.d.ts} +5 -5
  132. package/ngx-composite-lib.module.d.ts +13 -13
  133. package/package.json +88 -18
  134. package/public-api.d.ts +2 -2
  135. package/shadow-settings/{pepperi-addons-ngx-composite-lib-shadow-settings.d.ts → index.d.ts} +5 -5
  136. package/shadow-settings/public-api.d.ts +3 -3
  137. package/shadow-settings/shadow-settings.component.d.ts +23 -23
  138. package/shadow-settings/shadow-settings.model.d.ts +7 -7
  139. package/shadow-settings/shadow-settings.module.d.ts +13 -13
  140. package/bundles/pepperi-addons-ngx-composite-lib-color-settings.umd.js +0 -181
  141. package/bundles/pepperi-addons-ngx-composite-lib-color-settings.umd.js.map +0 -1
  142. package/bundles/pepperi-addons-ngx-composite-lib-data-view-builder.umd.js +0 -393
  143. package/bundles/pepperi-addons-ngx-composite-lib-data-view-builder.umd.js.map +0 -1
  144. package/bundles/pepperi-addons-ngx-composite-lib-file-status-panel.umd.js +0 -137
  145. package/bundles/pepperi-addons-ngx-composite-lib-file-status-panel.umd.js.map +0 -1
  146. package/bundles/pepperi-addons-ngx-composite-lib-generic-form.umd.js +0 -697
  147. package/bundles/pepperi-addons-ngx-composite-lib-generic-form.umd.js.map +0 -1
  148. package/bundles/pepperi-addons-ngx-composite-lib-generic-list.umd.js +0 -1055
  149. package/bundles/pepperi-addons-ngx-composite-lib-generic-list.umd.js.map +0 -1
  150. package/bundles/pepperi-addons-ngx-composite-lib-group-buttons-settings.umd.js +0 -225
  151. package/bundles/pepperi-addons-ngx-composite-lib-group-buttons-settings.umd.js.map +0 -1
  152. package/bundles/pepperi-addons-ngx-composite-lib-shadow-settings.umd.js +0 -165
  153. package/bundles/pepperi-addons-ngx-composite-lib-shadow-settings.umd.js.map +0 -1
  154. package/bundles/pepperi-addons-ngx-composite-lib.umd.js +0 -666
  155. package/bundles/pepperi-addons-ngx-composite-lib.umd.js.map +0 -1
  156. package/color-settings/package.json +0 -10
  157. package/data-view-builder/package.json +0 -10
  158. package/esm2015/core/common/directives/reset-configuration-field.directive.js +0 -157
  159. package/esm2015/core/common/services/dimx.service.js +0 -50
  160. package/esm2015/data-view-builder/data-view-builder.component.js +0 -122
  161. package/esm2015/data-view-builder/menu-data-view/menu-data-view.component.js +0 -122
  162. package/esm2015/file-status-panel/file-status-panel.component.js +0 -39
  163. package/esm2015/generic-form/generic-form.component.js +0 -190
  164. package/esm2015/generic-form/index.js +0 -5
  165. package/esm2015/generic-list/generic-list.component.js +0 -438
  166. package/esm2015/generic-list/generic-list.service.js +0 -127
  167. package/esm2015/group-buttons-settings/group-buttons-settings.component.js +0 -135
  168. package/fesm2015/pepperi-addons-ngx-composite-lib-color-settings.js.map +0 -1
  169. package/fesm2015/pepperi-addons-ngx-composite-lib-data-view-builder.js +0 -360
  170. package/fesm2015/pepperi-addons-ngx-composite-lib-data-view-builder.js.map +0 -1
  171. package/fesm2015/pepperi-addons-ngx-composite-lib-file-status-panel.js.map +0 -1
  172. package/fesm2015/pepperi-addons-ngx-composite-lib-generic-form.js.map +0 -1
  173. package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.js.map +0 -1
  174. package/fesm2015/pepperi-addons-ngx-composite-lib-group-buttons-settings.js.map +0 -1
  175. package/fesm2015/pepperi-addons-ngx-composite-lib-shadow-settings.js.map +0 -1
  176. package/fesm2015/pepperi-addons-ngx-composite-lib.js.map +0 -1
  177. package/file-status-panel/package.json +0 -10
  178. package/generic-form/package.json +0 -10
  179. package/generic-form/pepperi-addons-ngx-composite-lib-generic-form.d.ts +0 -5
  180. package/generic-list/package.json +0 -13
  181. package/group-buttons-settings/package.json +0 -10
  182. package/shadow-settings/package.json +0 -10
@@ -0,0 +1,619 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable, EventEmitter, ViewContainerRef, Component, ViewChild, Input, Output, NgModule } from '@angular/core';
3
+ import * as i3 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i1$1 from '@pepperi-addons/ngx-lib';
6
+ import { PepRowData, UIControl, PepGuid, PepNgxLibModule } from '@pepperi-addons/ngx-lib';
7
+ import { Subscription } from 'rxjs';
8
+ import * as i4 from '@pepperi-addons/ngx-lib/list';
9
+ import { PepListComponent, DEFAULT_PAGE_SIZE, PepSelectionData, PepListModule } from '@pepperi-addons/ngx-lib/list';
10
+ import { DataViewFieldTypes } from '@pepperi-addons/papi-sdk/dist/entities/data-view';
11
+ import * as i1 from '@ngx-translate/core';
12
+ import * as i2 from '@pepperi-addons/ngx-lib/query-builder';
13
+ import { DataViewConverter } from '@pepperi-addons/data-views';
14
+ import * as i5 from '@pepperi-addons/ngx-lib/page-layout';
15
+ import { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';
16
+ import * as i6 from '@pepperi-addons/ngx-lib/top-bar';
17
+ import { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';
18
+ import * as i7 from '@pepperi-addons/ngx-lib/side-bar';
19
+ import { PepSideBarModule } from '@pepperi-addons/ngx-lib/side-bar';
20
+ import * as i8 from '@pepperi-addons/ngx-lib/search';
21
+ import { PepSearchModule } from '@pepperi-addons/ngx-lib/search';
22
+ import * as i9 from '@pepperi-addons/ngx-lib/bread-crumbs';
23
+ import { PepBreadCrumbsModule } from '@pepperi-addons/ngx-lib/bread-crumbs';
24
+ import * as i10 from '@pepperi-addons/ngx-lib/smart-filters';
25
+ import { PepSmartFiltersModule } from '@pepperi-addons/ngx-lib/smart-filters';
26
+ import { PepFormModule } from '@pepperi-addons/ngx-lib/form';
27
+ import { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';
28
+
29
+ class PepGenericListService {
30
+ constructor(_translate, _queryBuilderService) {
31
+ this._translate = _translate;
32
+ this._queryBuilderService = _queryBuilderService;
33
+ //
34
+ }
35
+ /**
36
+ * checks if the object contains property
37
+ * @param obj object
38
+ * @param prop property name
39
+ * @returns true if contains, false otherwise
40
+ */
41
+ hasProperty(obj, prop) {
42
+ return Object.prototype.hasOwnProperty.call(obj, prop);
43
+ }
44
+ getListViewType(dataViewType) {
45
+ switch (dataViewType) {
46
+ case 'Grid':
47
+ return 'table';
48
+ case 'Card':
49
+ return 'cards';
50
+ case 'Line':
51
+ return 'lines';
52
+ default:
53
+ return 'table';
54
+ }
55
+ }
56
+ convertToPepRowData(item, dataView, uuidMapping) {
57
+ const row = new PepRowData();
58
+ let itemFields;
59
+ if (this.hasProperty(item, 'fields') && typeof item.fields === 'object') {
60
+ itemFields = item.fields;
61
+ if (item.isEditable === false) {
62
+ row.IsEditable = false;
63
+ }
64
+ if (item.isSelectableForActions === false) {
65
+ row.IsSelectableForActions = false;
66
+ }
67
+ }
68
+ else {
69
+ itemFields = item;
70
+ }
71
+ row.UUID = itemFields[uuidMapping] || undefined;
72
+ row.Fields = [];
73
+ if (dataView?.Fields && dataView.Columns) {
74
+ for (let index = 0; index < dataView.Fields.length; index++) {
75
+ const field = dataView.Fields[index];
76
+ row.Fields.push({
77
+ ApiName: field.FieldID,
78
+ Title: field.Title ? this._translate.instant(field.Title) : '',
79
+ XAlignment: 1,
80
+ FormattedValue: (itemFields[field.FieldID] || '').toString(),
81
+ Value: (itemFields[field.FieldID] || '').toString(),
82
+ ColumnWidth: dataView.Columns[index]?.Width || undefined,
83
+ AdditionalValue: '',
84
+ OptionalValues: field.OptionalValues || [],
85
+ FieldType: DataViewFieldTypes[field.Type],
86
+ ReadOnly: field.ReadOnly,
87
+ Enabled: !field.ReadOnly
88
+ });
89
+ }
90
+ }
91
+ return row;
92
+ }
93
+ convertToUiControlField(field) {
94
+ return {
95
+ ApiName: field.ApiName,
96
+ FieldType: field.FieldType,
97
+ Title: field.Title,
98
+ ReadOnly: field.ReadOnlyField,
99
+ ColumnWidth: field.ColumnWidth,
100
+ ColumnWidthType: 1,
101
+ Layout: {
102
+ X: field.Layout.X,
103
+ Y: field.Layout.Y,
104
+ Width: field.Layout.Width,
105
+ Height: field.Layout.Field_Height,
106
+ XAlignment: field.Layout.xAlignment,
107
+ YAlignment: field.Layout.yAlignment,
108
+ }
109
+ };
110
+ }
111
+ convertToSmartFilter(smartFilter) {
112
+ let convertedFields = [];
113
+ let filterData = [];
114
+ if (smartFilter?.dataView) {
115
+ convertedFields = this.createSmartFilterFields(smartFilter.dataView);
116
+ if (smartFilter.data?.length) {
117
+ filterData = smartFilter.data;
118
+ }
119
+ }
120
+ return {
121
+ fields: convertedFields,
122
+ data: filterData
123
+ };
124
+ }
125
+ createSmartFilterFields(dataView) {
126
+ let smartFields = [];
127
+ const fields = dataView.Fields.map((field) => {
128
+ return {
129
+ FieldID: field.FieldID,
130
+ FieldType: field.Type,
131
+ Title: field.Title,
132
+ OptionalValues: field.OptionalValues
133
+ };
134
+ });
135
+ const smartFilterfields = this._queryBuilderService.convertToSmartFilterFields(fields);
136
+ if (smartFilterfields?.length) {
137
+ smartFields = smartFilterfields.map((field => field.smart));
138
+ }
139
+ return smartFields;
140
+ }
141
+ }
142
+ PepGenericListService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepGenericListService, deps: [{ token: i1.TranslateService }, { token: i2.PepQueryBuilderService }], target: i0.ɵɵFactoryTarget.Injectable });
143
+ PepGenericListService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepGenericListService });
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepGenericListService, decorators: [{
145
+ type: Injectable
146
+ }], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: i2.PepQueryBuilderService }]; } });
147
+
148
+ class GenericListComponent {
149
+ constructor(_resolver, _dataConvertorService, _layoutService, _loaderService,
150
+ // private _translate: TranslateService,
151
+ _genericListService) {
152
+ this._resolver = _resolver;
153
+ this._dataConvertorService = _dataConvertorService;
154
+ this._layoutService = _layoutService;
155
+ this._loaderService = _loaderService;
156
+ this._genericListService = _genericListService;
157
+ this._dataSource = {
158
+ init: async (params) => {
159
+ return {
160
+ dataView: {
161
+ Type: 'Grid'
162
+ },
163
+ totalCount: -1,
164
+ items: []
165
+ };
166
+ }
167
+ };
168
+ this.actions = {
169
+ get: async (data) => {
170
+ return [];
171
+ }
172
+ };
173
+ this.uuidMapping = 'key';
174
+ this.disabled = false;
175
+ this.addPadding = false;
176
+ this.title = '';
177
+ this.description = '';
178
+ this.inline = false;
179
+ this.showSearch = false;
180
+ this.noDataFoundMsg = '';
181
+ this.selectionType = 'multi';
182
+ this.supportSorting = false;
183
+ this.pager = {
184
+ type: 'scroll'
185
+ };
186
+ this.tableViewType = 'regular';
187
+ this.zebraStripes = false;
188
+ this.showTopBar = false;
189
+ this.breadCrumbsItems = new Array();
190
+ this.fieldClick = new EventEmitter();
191
+ this.valueChange = new EventEmitter();
192
+ this.breadCrumbItemClick = new EventEmitter();
193
+ this._resize$ = new Subscription();
194
+ this._loader$ = new Subscription();
195
+ this._dataView = {
196
+ Type: 'Grid'
197
+ };
198
+ this.totalRowCount = -1;
199
+ this.searchString = '';
200
+ this.showSmartFilter = false;
201
+ this.internalSmartFilter = {
202
+ fields: [],
203
+ data: []
204
+ };
205
+ this._appliedFilters = [];
206
+ this._sorting = undefined;
207
+ this.menuHandlers = {};
208
+ this.menuActions = [];
209
+ this._resize$ = this._layoutService.onResize$.pipe().subscribe((size) => {
210
+ //
211
+ });
212
+ this._loader$ = this._loaderService.onChanged$.subscribe((status) => {
213
+ //
214
+ });
215
+ }
216
+ set pepListContainer(val) {
217
+ this._pepListContainer = val;
218
+ }
219
+ set dataSource(val) {
220
+ this._dataSource = val;
221
+ this._sorting = undefined;
222
+ this.initSearch();
223
+ this.initTable();
224
+ }
225
+ set smartFilter(val) {
226
+ this.internalSmartFilter = this._genericListService.convertToSmartFilter(val);
227
+ this.showSmartFilter = this.internalSmartFilter.fields.length > 0;
228
+ }
229
+ set pepList(val) {
230
+ this._pepList = val;
231
+ }
232
+ get pepList() {
233
+ return this._pepList;
234
+ }
235
+ ngOnInit() {
236
+ //
237
+ }
238
+ async initTable() {
239
+ setTimeout(async () => {
240
+ if (this._dataSource &&
241
+ this._pepListContainer) {
242
+ if (this._pepListContainer.length > 0) {
243
+ this._pepListContainer.remove();
244
+ }
245
+ const factory = this._resolver.resolveComponentFactory(PepListComponent);
246
+ const componentRef = this._pepListContainer.createComponent(factory);
247
+ this.pepList = componentRef.instance;
248
+ //merge selector inputs with callback inputs
249
+ this.loadTableInputs();
250
+ let fromIndex = 0;
251
+ let toIndex = 0;
252
+ if (this._listInputs.pager.type === 'pages') {
253
+ fromIndex = this._listInputs.pager.size * this._listInputs.pager.index;
254
+ toIndex = fromIndex + (this._listInputs.pager.size || DEFAULT_PAGE_SIZE) - 1;
255
+ }
256
+ else {
257
+ toIndex = 100; //TO DO - get value from - this.customList.getTopItems()
258
+ }
259
+ const data = await this.loadData(fromIndex, toIndex);
260
+ this.totalRowCount = data?.totalCount || 0;
261
+ componentRef.instance.viewType = this._genericListService.getListViewType(this._dataView.Type);
262
+ componentRef.instance.tableViewType = this._listInputs.tableViewType;
263
+ componentRef.instance.zebraStripes = this._listInputs.zebraStripes;
264
+ if (this.disabled) {
265
+ componentRef.instance.disabled = true;
266
+ componentRef.instance.lockItemInnerEvents = true;
267
+ }
268
+ componentRef.instance.supportSorting = this._listInputs.supportSorting;
269
+ componentRef.instance.selectionTypeForActions = this._listInputs.selectionType;
270
+ componentRef.instance.showCardSelection = this._listInputs.selectionType !== 'none';
271
+ componentRef.instance.pagerType = this._listInputs.pager.type;
272
+ if (this._listInputs.pager.type === 'pages') {
273
+ componentRef.instance.pageSize = this._listInputs.pager?.size || DEFAULT_PAGE_SIZE;
274
+ componentRef.instance.pageIndex = this._listInputs.pager?.index || 0;
275
+ }
276
+ componentRef.instance.noDataFoundMsg = this._listInputs.noDataFoundMsg;
277
+ componentRef.instance.fieldClick.subscribe(($event) => {
278
+ this.onCustomizeFieldClick($event);
279
+ });
280
+ componentRef.instance.selectedItemsChange.subscribe(($event) => {
281
+ this.onSelectedItemsChanged($event);
282
+ });
283
+ componentRef.instance.loadItems.subscribe(($event) => {
284
+ this.onLoadItems($event);
285
+ });
286
+ componentRef.instance.loadPage.subscribe(($event) => {
287
+ this.onLoadPage($event);
288
+ });
289
+ componentRef.instance.valueChange.subscribe(($event) => {
290
+ this.onValueChanged($event);
291
+ });
292
+ componentRef.instance.sortingChange.subscribe(($event) => {
293
+ this.onSortingChange($event);
294
+ });
295
+ let convertedList = [];
296
+ if (data) {
297
+ if (data.items?.length) {
298
+ convertedList = this._dataConvertorService.convertListData(data.items);
299
+ }
300
+ const uiControl = this.getUiControl(DataViewConverter.toUIControlData(data.dataView));
301
+ componentRef.instance.initListData(uiControl, data.totalCount, convertedList);
302
+ }
303
+ }
304
+ }, 0);
305
+ }
306
+ /**
307
+ * loads inputs in case they are provided and merge with selector inputs
308
+ * @returns merged pep-list inputs
309
+ */
310
+ loadTableInputs() {
311
+ this._listInputs = {
312
+ supportSorting: this.supportSorting,
313
+ selectionType: this.selectionType,
314
+ pager: this.pager,
315
+ noDataFoundMsg: this.noDataFoundMsg,
316
+ tableViewType: this.tableViewType,
317
+ zebraStripes: this.zebraStripes
318
+ };
319
+ if (this._dataSource.inputs) {
320
+ Object.entries(this._dataSource.inputs).forEach((item) => {
321
+ if (this._genericListService.hasProperty(this._listInputs, item[0])) {
322
+ this._listInputs[item[0]] = item[1];
323
+ }
324
+ });
325
+ }
326
+ }
327
+ getUiControl(data) {
328
+ const uiControl = new UIControl();
329
+ uiControl.ControlFields = [];
330
+ if (data?.ControlFields) {
331
+ uiControl.ControlFields = data.ControlFields.map((field) => this._genericListService.convertToUiControlField(field));
332
+ }
333
+ return uiControl;
334
+ }
335
+ loadMenuItems() {
336
+ if (this._listInputs.selectionType !== 'none') {
337
+ this.getMenuActions().then(x => this.menuActions = x);
338
+ }
339
+ }
340
+ async getMenuActions() {
341
+ const res = [];
342
+ const result = this.getMenuObjects();
343
+ if (result.success) {
344
+ const actions = await this.actions.get(result.data);
345
+ this.menuHandlers = {};
346
+ actions?.forEach(item => {
347
+ const uuid = PepGuid.newGuid();
348
+ this.menuHandlers[uuid] = item.handler;
349
+ res.push({
350
+ key: uuid,
351
+ text: item.title
352
+ });
353
+ });
354
+ }
355
+ return res;
356
+ }
357
+ getMenuObjects() {
358
+ const menuObjects = {
359
+ success: false,
360
+ data: new PepSelectionData()
361
+ };
362
+ if (this.pepList) {
363
+ menuObjects.success = true;
364
+ menuObjects.data = this.pepList.getSelectedItemsData();
365
+ }
366
+ return menuObjects;
367
+ }
368
+ initSearch() {
369
+ this.searchString = '';
370
+ this.search?.initSearch();
371
+ }
372
+ async loadData(fromIndex, toIndex) {
373
+ setTimeout(() => {
374
+ this._loaderService.show();
375
+ }, 150);
376
+ const data = await this._dataSource.init({
377
+ searchString: this.searchString || undefined,
378
+ filters: this._appliedFilters.length ? this._appliedFilters : undefined,
379
+ sorting: this._sorting || undefined,
380
+ fromIndex: fromIndex,
381
+ toIndex: toIndex
382
+ });
383
+ setTimeout(() => {
384
+ this._loaderService.hide();
385
+ }, 150);
386
+ if (data) {
387
+ this._dataView = data.dataView;
388
+ if (data.items?.length > 0 && !data.isPepRowData) {
389
+ data.items = data.items.map(item => this._genericListService.convertToPepRowData(item, data.dataView, this.uuidMapping));
390
+ }
391
+ }
392
+ return data;
393
+ }
394
+ async updateDataList(fromIndex, toIndex, pageIndex = undefined) {
395
+ if (this._dataSource.update) {
396
+ setTimeout(() => {
397
+ this._loaderService.show();
398
+ }, 150);
399
+ const dataList = await this._dataSource.update({
400
+ searchString: this.searchString || undefined,
401
+ filters: this._appliedFilters.length ? this._appliedFilters : undefined,
402
+ sorting: this._sorting || undefined,
403
+ fromIndex: fromIndex,
404
+ toIndex: toIndex,
405
+ pageIndex: pageIndex
406
+ });
407
+ setTimeout(() => {
408
+ this._loaderService.hide();
409
+ }, 150);
410
+ if (dataList?.length > 0) {
411
+ return dataList.map(item => this._genericListService.convertToPepRowData(item, this._dataView, this.uuidMapping));
412
+ }
413
+ else {
414
+ return [];
415
+ }
416
+ }
417
+ else {
418
+ return [];
419
+ }
420
+ }
421
+ /**
422
+ * loads virtual scroll items from api
423
+ */
424
+ async onLoadItems(event) {
425
+ const list = await this.updateDataList(event.fromIndex, event.toIndex);
426
+ const convertedList = this._dataConvertorService.convertListData(list);
427
+ this.pepList.updateItems(convertedList, event);
428
+ }
429
+ /**
430
+ * loads paging bulk from api
431
+ */
432
+ async onLoadPage(event) {
433
+ const fromIndex = event.pageIndex * event.pageSize;
434
+ const toIndex = Math.min(fromIndex + event.pageSize - 1, this.totalRowCount - 1);
435
+ const list = await this.updateDataList(fromIndex, toIndex, event.pageIndex);
436
+ const convertedList = this._dataConvertorService.convertListData(list);
437
+ this.pepList.updatePage(convertedList, event);
438
+ }
439
+ getItemById(id) {
440
+ if (this.pepList) {
441
+ return this._pepList.getItemDataByID(id);
442
+ }
443
+ else {
444
+ return null;
445
+ }
446
+ }
447
+ getSelectedItems() {
448
+ if (this.pepList) {
449
+ return this._pepList.getSelectedItemsData();
450
+ }
451
+ else {
452
+ return null;
453
+ }
454
+ }
455
+ getPageIndex() {
456
+ return this.pepList.pageIndex;
457
+ }
458
+ onActionItemClicked(action) {
459
+ const result = this.getMenuObjects();
460
+ if (result.success) {
461
+ this.menuHandlers[action.source.key](result.data);
462
+ }
463
+ }
464
+ onSearchChanged(event) {
465
+ this.searchString = event.value;
466
+ this.initTable();
467
+ }
468
+ onSelectedItemsChanged(selectedRowsCount) {
469
+ //loading menu items after pep-list selected items are updated
470
+ setTimeout(() => {
471
+ this.loadMenuItems();
472
+ }, 0);
473
+ }
474
+ onCustomizeFieldClick(fieldClickEvent) {
475
+ this.fieldClick.emit(fieldClickEvent);
476
+ }
477
+ onBreadCrumbItemClick(event) {
478
+ this.breadCrumbItemClick.emit(event);
479
+ }
480
+ onValueChanged(event) {
481
+ this.valueChange.emit(event);
482
+ }
483
+ onSortingChange(event) {
484
+ this._sorting = event;
485
+ this.initTable();
486
+ }
487
+ onFiltersChange(filters) {
488
+ this._appliedFilters = filters;
489
+ this.initTable();
490
+ }
491
+ ngOnDestroy() {
492
+ if (this._resize$) {
493
+ this._resize$.unsubscribe();
494
+ }
495
+ if (this._loader$) {
496
+ this._loader$.unsubscribe();
497
+ }
498
+ }
499
+ }
500
+ GenericListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericListComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i1$1.PepDataConvertorService }, { token: i1$1.PepLayoutService }, { token: i1$1.PepLoaderService }, { token: PepGenericListService }], target: i0.ɵɵFactoryTarget.Component });
501
+ GenericListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: GenericListComponent, selector: "pep-generic-list", inputs: { dataSource: "dataSource", actions: "actions", uuidMapping: "uuidMapping", disabled: "disabled", addPadding: "addPadding", title: "title", description: "description", inline: "inline", showSearch: "showSearch", noDataFoundMsg: "noDataFoundMsg", selectionType: "selectionType", supportSorting: "supportSorting", pager: "pager", tableViewType: "tableViewType", zebraStripes: "zebraStripes", smartFilter: "smartFilter", showTopBar: "showTopBar", breadCrumbsItems: "breadCrumbsItems" }, outputs: { fieldClick: "fieldClick", valueChange: "valueChange", breadCrumbItemClick: "breadCrumbItemClick" }, providers: [PepGenericListService], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true }, { propertyName: "pepListContainer", first: true, predicate: ["pepListContainer"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div *ngIf=\"inline\" class=\"inline-container\" [ngClass]=\"{ 'add-padding': addPadding }\">\n <div class=\"header-area\" >\n <div *ngIf=\"showTopBar\" class=\"inline-top-bar-container\">\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </div>\n <ng-container *ngIf=\"description\">\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\">\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n </div>\n <ng-container *ngIf=\"showSmartFilter\">\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n</div>\n<pep-page-layout *ngIf=\"!inline\" class=\"none-inline\" [addPadding]=\"addPadding\" [showShadow]=\"showSmartFilter\">\n <ng-container *ngIf=\"showSmartFilter\" pep-side-area>\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"showTopBar\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"description\" pep-top-area>\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n <div pep-main-area class=\"main-area-container\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </div>\n</pep-page-layout>\n\n<ng-template #topBarTemplate>\n <pep-top-bar [title]=\"title\" [inline]=\"inline\">\n <div header-start-content>\n <ng-content select=\"[left-buttons]\"></ng-content>\n </div>\n <div header-end-content>\n <ng-content select=\"[right-buttons]\"></ng-content>\n </div>\n <!-- <div footer-start-content>\n <ng-content select=\"[left-bottom-area]\"></ng-content> \n </div>\n <div footer-end-content>\n <ng-content select=\"[right-bottom-area]\"></ng-content> \n </div> -->\n <pep-list-actions *ngIf=\"menuActions.length > 0\" [sizeType]=\"inline ? 'sm' : 'md'\" [actions]=\"menuActions\"\n (actionClick)=\"onActionItemClicked($event)\"></pep-list-actions>\n <pep-list-total [sizeType]=\"inline ? 'sm' : 'md'\" [totalRows]=\"totalRowCount\">\n </pep-list-total>\n <pep-search #search *ngIf=\"showSearch\" [value]=\"searchString\" [sizeType]=\"inline ? 'sm' : 'md'\"\n (search)=\"onSearchChanged($event)\">\n </pep-search>\n </pep-top-bar>\n</ng-template>\n\n<ng-template #smartFilterTemplate>\n <pep-side-bar #sideNav [ngClass]=\"{'smart-filter-area': inline}\">\n <pep-smart-filters title=\"Test filters\" [fields]=\"internalSmartFilter.fields\"\n [filters]=\"internalSmartFilter.data\" (filtersChange)=\"onFiltersChange($event)\">\n </pep-smart-filters>\n </pep-side-bar>\n</ng-template>\n\n<ng-template #breadCrumbsTemplate>\n <pep-bread-crumbs class=\"bread-crumbs\" [items]=\"breadCrumbsItems\" [addSpacing]=\"true\" [displayType]=\"'items'\"\n (itemClick)=\"onBreadCrumbItemClick($event)\"></pep-bread-crumbs>\n</ng-template>\n\n<ng-template #listTemplate>\n <div class=\"list-container\">\n <ng-container #pepListContainer></ng-container>\n </div>\n</ng-template>", styles: [":host{height:inherit;display:block}.main-area-container{display:grid;height:inherit}.list-container{height:100%}.inline-container{height:inherit;display:grid;grid-template-rows:auto 1fr;grid-template-columns:auto 1fr}.inline-container.add-padding{padding-inline:var(--pep-spacing-lg, 1rem)}.inline-container .header-area{grid-column:2/3;grid-row:1/2}.inline-container .smart-filter-area{grid-column:1/2;grid-row:1/3}.inline-container .list-container{grid-column:2/3;grid-row:2/3}.inline-container .list-description{font-size:var(--pep-font-size-xs, .75rem);max-width:640px;padding:var(--pep-spacing-sm, .5rem) 0}.inline-container .bread-crumbs{padding:var(--pep-spacing-md, .75rem) 0 var(--pep-spacing-sm, .5rem) 0}.none-inline .list-description{font-size:var(--pep-font-size-sm, .875rem);max-width:720px;padding:var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}.none-inline .bread-crumbs{padding:var(--pep-spacing-md, .75rem) var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}::ng-deep .pep-top-bar-container:not(.inline){margin-inline:var(--pep-spacing-xs, .25rem)}::ng-deep .pep-top-bar-container.inline{height:var(--pep-top-bar-field-height, 2.5rem)!important}.noDataFoundMsg{margin:1rem 0;height:calc(100% - 2rem);width:100%;background:hsla(0deg,0%,10%,.12);display:flex;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.PepListActionsComponent, selector: "pep-list-actions", inputs: ["actions", "sizeType", "xPosition", "hidden"], outputs: ["actionClick", "stateChange", "menuClick"] }, { kind: "component", type: i4.PepListTotalComponent, selector: "pep-list-total", inputs: ["totalRows", "totalAmount", "isMapView", "sizeType"] }, { kind: "component", type: i5.PepPageLayoutComponent, selector: "pep-page-layout", inputs: ["addPadding", "showShadow"] }, { kind: "component", type: i6.PepTopBarComponent, selector: "pep-top-bar", inputs: ["inline", "title"], outputs: ["footerStateChange"] }, { kind: "component", type: i7.PepSideBarComponent, selector: "pep-side-bar", inputs: ["ignoreResize", "showHeader", "showFooter", "useAsWebComponent"], outputs: ["stateChange"] }, { kind: "component", type: i8.PepSearchComponent, selector: "pep-search", inputs: ["triggerOn", "autoCompleteTop", "autoCompleteValues", "shrink", "value", "searchControl", "useAsWebComponent", "sizeType"], outputs: ["search", "autocompleteChange", "stateChange"] }, { kind: "component", type: i9.PepBreadCrumbsComponent, selector: "pep-bread-crumbs", inputs: ["items", "displayType", "addSpacing"], outputs: ["itemClick"] }, { kind: "component", type: i10.PepSmartFiltersComponent, selector: "pep-smart-filters", inputs: ["title", "filters", "fields", "useAsWebComponent"], outputs: ["filtersChange", "fieldToggleChange"] }] });
502
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericListComponent, decorators: [{
503
+ type: Component,
504
+ args: [{ selector: 'pep-generic-list', providers: [PepGenericListService], template: "<div *ngIf=\"inline\" class=\"inline-container\" [ngClass]=\"{ 'add-padding': addPadding }\">\n <div class=\"header-area\" >\n <div *ngIf=\"showTopBar\" class=\"inline-top-bar-container\">\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </div>\n <ng-container *ngIf=\"description\">\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\">\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n </div>\n <ng-container *ngIf=\"showSmartFilter\">\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n</div>\n<pep-page-layout *ngIf=\"!inline\" class=\"none-inline\" [addPadding]=\"addPadding\" [showShadow]=\"showSmartFilter\">\n <ng-container *ngIf=\"showSmartFilter\" pep-side-area>\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"showTopBar\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"description\" pep-top-area>\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n <div pep-main-area class=\"main-area-container\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </div>\n</pep-page-layout>\n\n<ng-template #topBarTemplate>\n <pep-top-bar [title]=\"title\" [inline]=\"inline\">\n <div header-start-content>\n <ng-content select=\"[left-buttons]\"></ng-content>\n </div>\n <div header-end-content>\n <ng-content select=\"[right-buttons]\"></ng-content>\n </div>\n <!-- <div footer-start-content>\n <ng-content select=\"[left-bottom-area]\"></ng-content> \n </div>\n <div footer-end-content>\n <ng-content select=\"[right-bottom-area]\"></ng-content> \n </div> -->\n <pep-list-actions *ngIf=\"menuActions.length > 0\" [sizeType]=\"inline ? 'sm' : 'md'\" [actions]=\"menuActions\"\n (actionClick)=\"onActionItemClicked($event)\"></pep-list-actions>\n <pep-list-total [sizeType]=\"inline ? 'sm' : 'md'\" [totalRows]=\"totalRowCount\">\n </pep-list-total>\n <pep-search #search *ngIf=\"showSearch\" [value]=\"searchString\" [sizeType]=\"inline ? 'sm' : 'md'\"\n (search)=\"onSearchChanged($event)\">\n </pep-search>\n </pep-top-bar>\n</ng-template>\n\n<ng-template #smartFilterTemplate>\n <pep-side-bar #sideNav [ngClass]=\"{'smart-filter-area': inline}\">\n <pep-smart-filters title=\"Test filters\" [fields]=\"internalSmartFilter.fields\"\n [filters]=\"internalSmartFilter.data\" (filtersChange)=\"onFiltersChange($event)\">\n </pep-smart-filters>\n </pep-side-bar>\n</ng-template>\n\n<ng-template #breadCrumbsTemplate>\n <pep-bread-crumbs class=\"bread-crumbs\" [items]=\"breadCrumbsItems\" [addSpacing]=\"true\" [displayType]=\"'items'\"\n (itemClick)=\"onBreadCrumbItemClick($event)\"></pep-bread-crumbs>\n</ng-template>\n\n<ng-template #listTemplate>\n <div class=\"list-container\">\n <ng-container #pepListContainer></ng-container>\n </div>\n</ng-template>", styles: [":host{height:inherit;display:block}.main-area-container{display:grid;height:inherit}.list-container{height:100%}.inline-container{height:inherit;display:grid;grid-template-rows:auto 1fr;grid-template-columns:auto 1fr}.inline-container.add-padding{padding-inline:var(--pep-spacing-lg, 1rem)}.inline-container .header-area{grid-column:2/3;grid-row:1/2}.inline-container .smart-filter-area{grid-column:1/2;grid-row:1/3}.inline-container .list-container{grid-column:2/3;grid-row:2/3}.inline-container .list-description{font-size:var(--pep-font-size-xs, .75rem);max-width:640px;padding:var(--pep-spacing-sm, .5rem) 0}.inline-container .bread-crumbs{padding:var(--pep-spacing-md, .75rem) 0 var(--pep-spacing-sm, .5rem) 0}.none-inline .list-description{font-size:var(--pep-font-size-sm, .875rem);max-width:720px;padding:var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}.none-inline .bread-crumbs{padding:var(--pep-spacing-md, .75rem) var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}::ng-deep .pep-top-bar-container:not(.inline){margin-inline:var(--pep-spacing-xs, .25rem)}::ng-deep .pep-top-bar-container.inline{height:var(--pep-top-bar-field-height, 2.5rem)!important}.noDataFoundMsg{margin:1rem 0;height:calc(100% - 2rem);width:100%;background:hsla(0deg,0%,10%,.12);display:flex;justify-content:center;align-items:center}\n"] }]
505
+ }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i1$1.PepDataConvertorService }, { type: i1$1.PepLayoutService }, { type: i1$1.PepLoaderService }, { type: PepGenericListService }]; }, propDecorators: { search: [{
506
+ type: ViewChild,
507
+ args: ['search']
508
+ }], pepListContainer: [{
509
+ type: ViewChild,
510
+ args: ['pepListContainer', { read: ViewContainerRef }]
511
+ }], dataSource: [{
512
+ type: Input
513
+ }], actions: [{
514
+ type: Input
515
+ }], uuidMapping: [{
516
+ type: Input
517
+ }], disabled: [{
518
+ type: Input
519
+ }], addPadding: [{
520
+ type: Input
521
+ }], title: [{
522
+ type: Input
523
+ }], description: [{
524
+ type: Input
525
+ }], inline: [{
526
+ type: Input
527
+ }], showSearch: [{
528
+ type: Input
529
+ }], noDataFoundMsg: [{
530
+ type: Input
531
+ }], selectionType: [{
532
+ type: Input
533
+ }], supportSorting: [{
534
+ type: Input
535
+ }], pager: [{
536
+ type: Input
537
+ }], tableViewType: [{
538
+ type: Input
539
+ }], zebraStripes: [{
540
+ type: Input
541
+ }], smartFilter: [{
542
+ type: Input
543
+ }], showTopBar: [{
544
+ type: Input
545
+ }], breadCrumbsItems: [{
546
+ type: Input
547
+ }], fieldClick: [{
548
+ type: Output
549
+ }], valueChange: [{
550
+ type: Output
551
+ }], breadCrumbItemClick: [{
552
+ type: Output
553
+ }] } });
554
+
555
+ class PepGenericListModule {
556
+ }
557
+ PepGenericListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepGenericListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
558
+ PepGenericListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: PepGenericListModule, declarations: [GenericListComponent], imports: [CommonModule,
559
+ PepNgxLibModule,
560
+ PepListModule,
561
+ PepFormModule,
562
+ PepMenuModule,
563
+ PepPageLayoutModule,
564
+ PepTopBarModule,
565
+ PepSideBarModule,
566
+ PepSearchModule,
567
+ PepBreadCrumbsModule,
568
+ PepSmartFiltersModule], exports: [GenericListComponent] });
569
+ PepGenericListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepGenericListModule, providers: [
570
+ PepGenericListService
571
+ ], imports: [CommonModule,
572
+ PepNgxLibModule,
573
+ PepListModule,
574
+ PepFormModule,
575
+ PepMenuModule,
576
+ PepPageLayoutModule,
577
+ PepTopBarModule,
578
+ PepSideBarModule,
579
+ PepSearchModule,
580
+ PepBreadCrumbsModule,
581
+ PepSmartFiltersModule] });
582
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepGenericListModule, decorators: [{
583
+ type: NgModule,
584
+ args: [{
585
+ declarations: [
586
+ GenericListComponent
587
+ ],
588
+ imports: [
589
+ CommonModule,
590
+ PepNgxLibModule,
591
+ PepListModule,
592
+ PepFormModule,
593
+ PepMenuModule,
594
+ PepPageLayoutModule,
595
+ PepTopBarModule,
596
+ PepSideBarModule,
597
+ PepSearchModule,
598
+ PepBreadCrumbsModule,
599
+ PepSmartFiltersModule
600
+ ],
601
+ exports: [
602
+ GenericListComponent
603
+ ],
604
+ providers: [
605
+ PepGenericListService
606
+ ]
607
+ }]
608
+ }] });
609
+
610
+ /*
611
+ * Public API Surface of ngx-composite-lib/generic-list
612
+ */
613
+
614
+ /**
615
+ * Generated bundle index. Do not edit.
616
+ */
617
+
618
+ export { GenericListComponent, PepGenericListModule, PepGenericListService };
619
+ //# sourceMappingURL=pepperi-addons-ngx-composite-lib-generic-list.mjs.map