nuxeo-development-framework 5.2.2 → 5.2.4

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 (373) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +7114 -714
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/dynamic-search/dynamic-search/dynamic-search.component.js +48 -34
  4. package/esm2015/lib/components/dynamic-search/dynamic-search.module.js +5 -5
  5. package/esm2015/lib/components/ndf-datepicker/adapters/hijri-adapter.js +203 -0
  6. package/esm2015/lib/components/ndf-datepicker/adapters/index.js +3 -0
  7. package/esm2015/lib/components/ndf-datepicker/adapters/moment-adapter.js +186 -0
  8. package/esm2015/lib/components/ndf-datepicker/base/base-value-accessor.js +92 -0
  9. package/esm2015/lib/components/ndf-datepicker/base/index.js +2 -0
  10. package/esm2015/lib/components/ndf-datepicker/components/base-datepicker.js +37 -0
  11. package/esm2015/lib/components/ndf-datepicker/components/index.js +4 -0
  12. package/esm2015/lib/components/ndf-datepicker/components/input-date.component.js +110 -0
  13. package/esm2015/lib/components/ndf-datepicker/components/input-range-date.component.js +124 -0
  14. package/esm2015/lib/components/ndf-datepicker/constants/date-locale-keys.js +7 -0
  15. package/esm2015/lib/components/ndf-datepicker/constants/date-picker.js +2 -0
  16. package/esm2015/lib/components/ndf-datepicker/constants/date-type.js +5 -0
  17. package/esm2015/lib/components/ndf-datepicker/constants/formats.js +24 -0
  18. package/esm2015/lib/components/ndf-datepicker/constants/hijri-dates-names.js +117 -0
  19. package/esm2015/lib/components/ndf-datepicker/constants/index.js +6 -0
  20. package/esm2015/lib/components/ndf-datepicker/containers/datepicker-container.js +37 -0
  21. package/esm2015/lib/components/ndf-datepicker/containers/index.js +3 -0
  22. package/esm2015/lib/components/ndf-datepicker/containers/ndf-gregorian-datepicker.component.js +105 -0
  23. package/esm2015/lib/components/ndf-datepicker/containers/ndf-hijri-datepicker.component.js +112 -0
  24. package/esm2015/lib/components/ndf-datepicker/index.js +10 -0
  25. package/esm2015/lib/components/ndf-datepicker/models/data-types.js +2 -0
  26. package/esm2015/lib/components/ndf-datepicker/models/index.js +3 -0
  27. package/esm2015/lib/components/ndf-datepicker/models/value-object.js +2 -0
  28. package/esm2015/lib/components/ndf-datepicker/ndf-datepicker.component.js +198 -0
  29. package/esm2015/lib/components/ndf-datepicker/ndf-datepicker.module.js +66 -0
  30. package/esm2015/lib/components/ndf-datepicker/services/calendar.service.js +130 -0
  31. package/esm2015/lib/components/ndf-datepicker/services/index.js +3 -0
  32. package/esm2015/lib/components/ndf-datepicker/services/localize-state.service.js +41 -0
  33. package/esm2015/lib/components/no-data-found/index.js +3 -0
  34. package/esm2015/lib/components/no-data-found/no-data-found.component.js +33 -0
  35. package/esm2015/lib/components/no-data-found/no-data.module.js +19 -0
  36. package/esm2015/lib/components/notifications/models/common.js +1 -1
  37. package/esm2015/lib/components/{dynamic-table → tables/dynamic-table}/directives/empty-state.directive.js +1 -1
  38. package/esm2015/lib/components/tables/dynamic-table/dynamic-table/dynamic-table.component.js +353 -0
  39. package/esm2015/lib/components/tables/dynamic-table/dynamic-table.module.js +51 -0
  40. package/esm2015/lib/components/tables/dynamic-table/index.js +2 -0
  41. package/esm2015/lib/components/tables/dynamic-table/public-api.js +5 -0
  42. package/esm2015/lib/components/tables/dynamic-table/services/dynamic-table.service.js +16 -0
  43. package/esm2015/lib/components/{dynamic-table → tables}/index.js +1 -1
  44. package/esm2015/lib/components/tables/ndf-table/components/index.js +6 -0
  45. package/esm2015/lib/components/tables/ndf-table/components/mode-toggler/mode-toggler.component.js +45 -0
  46. package/esm2015/lib/components/tables/ndf-table/components/sorting-list/sorting-list.component.js +42 -0
  47. package/esm2015/lib/components/tables/ndf-table/components/table-columns-toggler/table-columns-toggler.component.js +123 -0
  48. package/esm2015/lib/components/tables/ndf-table/components/table-export/table-export.component.js +41 -0
  49. package/esm2015/lib/components/tables/ndf-table/components/text-search/text-search.component.js +74 -0
  50. package/esm2015/lib/components/tables/ndf-table/constants/index.js +2 -0
  51. package/esm2015/lib/components/tables/ndf-table/constants/sizes.js +19 -0
  52. package/esm2015/lib/components/tables/ndf-table/containers/index.js +2 -0
  53. package/esm2015/lib/components/tables/ndf-table/containers/ndf-table/ndf-table.component.js +404 -0
  54. package/esm2015/lib/components/tables/ndf-table/directives/actions.directive.js +28 -0
  55. package/esm2015/lib/components/tables/ndf-table/directives/filter-custom.directive.js +28 -0
  56. package/esm2015/lib/components/tables/ndf-table/directives/fluid-height.directive.js +112 -0
  57. package/esm2015/lib/components/tables/ndf-table/directives/index.js +5 -0
  58. package/esm2015/lib/components/tables/ndf-table/directives/search.directive.js +28 -0
  59. package/esm2015/lib/components/tables/ndf-table/filters-panel/base/base-aggregation-field.component.js +91 -0
  60. package/esm2015/lib/components/tables/ndf-table/filters-panel/base/base-checkbox-radio.component.js +66 -0
  61. package/esm2015/lib/components/tables/ndf-table/filters-panel/base/base-custom-field.component.js +46 -0
  62. package/esm2015/lib/components/tables/ndf-table/filters-panel/base/base-predicate-field.component.js +43 -0
  63. package/esm2015/lib/components/tables/ndf-table/filters-panel/base/base-value-accessor.component.js +34 -0
  64. package/esm2015/lib/components/tables/ndf-table/filters-panel/base/index.js +6 -0
  65. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/field-header.component.js +36 -0
  66. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-autocomplete-input/filter-autocomplete-input.component.js +97 -0
  67. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-autocomplete-input/filter-autocomplete.service.js +43 -0
  68. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-collapse-control/filter-collapse-control.component.js +44 -0
  69. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-date-range/filter-date-range.component.js +89 -0
  70. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-empty-message.component.js +30 -0
  71. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-option-text/filter-option-text.component.js +33 -0
  72. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-options-sort/filter-options-sort.component.js +34 -0
  73. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-search-input/filter-search-input.component.js +36 -0
  74. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/html-dialog/html-dialog.component.js +34 -0
  75. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/__parts/index.js +10 -0
  76. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/aggregation-autocomplete/aggregation-autocomplete.component.js +109 -0
  77. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/aggregation-checkbox/aggregation-checkbox.component.js +65 -0
  78. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/aggregation-custom/aggregation-custom.component.js +66 -0
  79. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/aggregation-date-list/aggregation-date-list.component.js +219 -0
  80. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/aggregation-radio/aggregation-radio.component.js +68 -0
  81. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/aggregation-select/aggregation-select.component.js +83 -0
  82. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/aggregation-switch/aggregation-switch.component.js +71 -0
  83. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/index.js +11 -0
  84. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/predicate-date-input/predicate-date-input.component.js +146 -0
  85. package/esm2015/lib/components/tables/ndf-table/filters-panel/components/predicate-text-input/predicate-text-input.component.js +144 -0
  86. package/esm2015/lib/components/tables/ndf-table/filters-panel/constants/common.js +4 -0
  87. package/esm2015/lib/components/tables/ndf-table/filters-panel/constants/field.js +6 -0
  88. package/esm2015/lib/components/tables/ndf-table/filters-panel/constants/index.js +5 -0
  89. package/esm2015/lib/components/tables/ndf-table/filters-panel/constants/operators.js +18 -0
  90. package/esm2015/lib/components/tables/ndf-table/filters-panel/constants/sort.js +23 -0
  91. package/esm2015/lib/components/tables/ndf-table/filters-panel/constants/type.js +26 -0
  92. package/esm2015/lib/components/tables/ndf-table/filters-panel/containers/aggregation-field/aggregation-field.component.js +78 -0
  93. package/esm2015/lib/components/tables/ndf-table/filters-panel/containers/base-field.js +62 -0
  94. package/esm2015/lib/components/tables/ndf-table/filters-panel/containers/custom-field/custom-field.component.js +73 -0
  95. package/esm2015/lib/components/tables/ndf-table/filters-panel/containers/filters-panel/base-filters-panel.js +55 -0
  96. package/esm2015/lib/components/tables/ndf-table/filters-panel/containers/filters-panel/filters-panel.component.js +122 -0
  97. package/esm2015/lib/components/tables/ndf-table/filters-panel/containers/index.js +5 -0
  98. package/esm2015/lib/components/tables/ndf-table/filters-panel/containers/predicate-field/predicate-field.component.js +71 -0
  99. package/esm2015/lib/components/tables/ndf-table/filters-panel/custom-components/active-user-switch/active-user-switch.component.js +55 -0
  100. package/esm2015/lib/components/tables/ndf-table/filters-panel/custom-components/active-user-switch/active-user.service.js +17 -0
  101. package/esm2015/lib/components/tables/ndf-table/filters-panel/custom-components/active-user-switch/user-types.js +2 -0
  102. package/esm2015/lib/components/tables/ndf-table/filters-panel/custom-components/index.js +2 -0
  103. package/esm2015/lib/components/tables/ndf-table/filters-panel/directives/autocomplete-template.directive.js +28 -0
  104. package/esm2015/lib/components/tables/ndf-table/filters-panel/directives/checkbox-template.directive.js +28 -0
  105. package/esm2015/lib/components/tables/ndf-table/filters-panel/directives/custom-template.directive.js +28 -0
  106. package/esm2015/lib/components/tables/ndf-table/filters-panel/directives/date-template.directive.js +28 -0
  107. package/esm2015/lib/components/tables/ndf-table/filters-panel/directives/dropdown-label-template.directive.js +53 -0
  108. package/esm2015/lib/components/tables/ndf-table/filters-panel/directives/dropdown-template.directive.js +28 -0
  109. package/esm2015/lib/components/tables/ndf-table/filters-panel/directives/index.js +9 -0
  110. package/esm2015/lib/components/tables/ndf-table/filters-panel/directives/radio-template.directive.js +28 -0
  111. package/esm2015/lib/components/tables/ndf-table/filters-panel/directives/switch-template.directive.js +28 -0
  112. package/esm2015/lib/components/tables/ndf-table/filters-panel/filters-panel.module.js +205 -0
  113. package/esm2015/lib/components/tables/ndf-table/filters-panel/index.js +12 -0
  114. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/aggregation-field-config.js +2 -0
  115. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/aggregation-response.model.js +2 -0
  116. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/base-field-config.js +2 -0
  117. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/common.js +2 -0
  118. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/custom-field-config.js +2 -0
  119. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-config.model.js +2 -0
  120. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/autocomplete-options.js +2 -0
  121. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/checkbox-options.js +2 -0
  122. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/common-utils.js +2 -0
  123. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/custom-fields-options.js +2 -0
  124. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/custom-options.js +2 -0
  125. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/date-list-options.js +2 -0
  126. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/date-options.js +2 -0
  127. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/dropdown-options.js +2 -0
  128. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/index.js +12 -0
  129. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/input-options.js +2 -0
  130. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/radio-options.js +2 -0
  131. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/field-options/switch-options.js +2 -0
  132. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/filter-option.model.js +2 -0
  133. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/form-query-request.js +2 -0
  134. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/index.js +13 -0
  135. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/predicate-field-config.js +2 -0
  136. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/types-helper.js +2 -0
  137. package/esm2015/lib/components/tables/ndf-table/filters-panel/models/value-object.model.js +12 -0
  138. package/esm2015/lib/components/tables/ndf-table/filters-panel/pipes/autocomplete-filter.pipe.js +27 -0
  139. package/esm2015/lib/components/tables/ndf-table/filters-panel/pipes/filter.pipe.js +27 -0
  140. package/esm2015/lib/components/tables/ndf-table/filters-panel/pipes/hash-translate.pipe.js +52 -0
  141. package/esm2015/lib/components/tables/ndf-table/filters-panel/pipes/index.js +9 -0
  142. package/esm2015/lib/components/tables/ndf-table/filters-panel/pipes/localized-label.pipe.js +28 -0
  143. package/esm2015/lib/components/tables/ndf-table/filters-panel/pipes/roles-filters.pipe.js +31 -0
  144. package/esm2015/lib/components/tables/ndf-table/filters-panel/pipes/sanitizer.pipe.js +34 -0
  145. package/esm2015/lib/components/tables/ndf-table/filters-panel/pipes/sort.pipe.js +40 -0
  146. package/esm2015/lib/components/tables/ndf-table/filters-panel/pipes/tooltip.pipe.js +69 -0
  147. package/esm2015/lib/components/tables/ndf-table/filters-panel/services/aggregation-field.service.js +105 -0
  148. package/esm2015/lib/components/tables/ndf-table/filters-panel/services/dynamic-component-loader.service.js +59 -0
  149. package/esm2015/lib/components/tables/ndf-table/filters-panel/services/filters-query.service.js +117 -0
  150. package/esm2015/lib/components/tables/ndf-table/filters-panel/services/index.js +5 -0
  151. package/esm2015/lib/components/tables/ndf-table/filters-panel/services/ndf-transform.service.js +80 -0
  152. package/esm2015/lib/components/tables/ndf-table/filters-panel/utility/index.js +3 -0
  153. package/esm2015/lib/components/tables/ndf-table/filters-panel/utility/nxql.js +47 -0
  154. package/esm2015/lib/components/tables/ndf-table/filters-panel/utility/object.js +42 -0
  155. package/esm2015/lib/components/tables/ndf-table/index.js +2 -0
  156. package/esm2015/lib/components/tables/ndf-table/models/index.js +8 -0
  157. package/esm2015/lib/components/tables/ndf-table/models/payload-types.js +2 -0
  158. package/esm2015/lib/components/tables/ndf-table/models/search.config.js +2 -0
  159. package/esm2015/lib/components/tables/ndf-table/models/table-column.js +2 -0
  160. package/esm2015/lib/components/tables/ndf-table/models/table-config.js +2 -0
  161. package/esm2015/lib/components/tables/ndf-table/models/table-mode.js +2 -0
  162. package/esm2015/lib/components/tables/ndf-table/models/table-options.js +2 -0
  163. package/esm2015/lib/components/tables/ndf-table/models/types.js +2 -0
  164. package/esm2015/lib/components/tables/ndf-table/ndf-table.module.js +104 -0
  165. package/esm2015/lib/components/tables/ndf-table/public-api.js +8 -0
  166. package/esm2015/lib/components/tables/ndf-table/services/filters-mapper.service.js +60 -0
  167. package/esm2015/lib/components/tables/ndf-table/services/index.js +3 -0
  168. package/esm2015/lib/components/tables/ndf-table/services/ndf-table.service.js +27 -0
  169. package/esm2015/lib/components/tables/ndf-table/utils/index.js +2 -0
  170. package/esm2015/lib/components/tables/ndf-table/utils/nxql-query.js +52 -0
  171. package/esm2015/lib/components/tables/public-api.js +4 -0
  172. package/esm2015/lib/components/tables/table/dynamic-column/dynamic-column.component.js +68 -0
  173. package/esm2015/lib/components/tables/table/dynamic-component.js +59 -0
  174. package/esm2015/lib/components/tables/table/index.js +2 -0
  175. package/esm2015/lib/components/{table → tables/table}/page-sizes-list/page-sizes-list.component.js +1 -1
  176. package/esm2015/lib/components/tables/table/public-api.js +6 -0
  177. package/esm2015/lib/components/tables/table/table/table.component.js +302 -0
  178. package/esm2015/lib/components/tables/table/table.module.js +69 -0
  179. package/esm2015/lib/core/services/index.js +3 -0
  180. package/esm2015/lib/shared/models/index.js +2 -1
  181. package/esm2015/lib/shared/models/types-helper.js +2 -0
  182. package/esm2015/public-api.js +4 -7
  183. package/fesm2015/nuxeo-development-framework.js +6335 -554
  184. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  185. package/lib/components/dynamic-search/dynamic-search/dynamic-search.component.d.ts +1 -1
  186. package/lib/components/dynamic-search/dynamic-search.module.d.ts +1 -1
  187. package/lib/components/ndf-datepicker/adapters/hijri-adapter.d.ts +35 -0
  188. package/lib/components/ndf-datepicker/adapters/index.d.ts +2 -0
  189. package/lib/components/ndf-datepicker/adapters/moment-adapter.d.ts +50 -0
  190. package/lib/components/ndf-datepicker/base/base-value-accessor.d.ts +38 -0
  191. package/lib/components/ndf-datepicker/base/index.d.ts +1 -0
  192. package/lib/components/ndf-datepicker/components/base-datepicker.d.ts +13 -0
  193. package/lib/components/ndf-datepicker/components/index.d.ts +3 -0
  194. package/lib/components/ndf-datepicker/components/input-date.component.d.ts +19 -0
  195. package/lib/components/ndf-datepicker/components/input-range-date.component.d.ts +19 -0
  196. package/lib/components/ndf-datepicker/constants/date-locale-keys.d.ts +6 -0
  197. package/lib/components/ndf-datepicker/constants/date-picker.d.ts +1 -0
  198. package/lib/components/ndf-datepicker/constants/date-type.d.ts +4 -0
  199. package/lib/components/ndf-datepicker/constants/formats.d.ts +5 -0
  200. package/lib/components/ndf-datepicker/constants/hijri-dates-names.d.ts +12 -0
  201. package/lib/components/ndf-datepicker/constants/index.d.ts +5 -0
  202. package/lib/components/ndf-datepicker/containers/datepicker-container.d.ts +15 -0
  203. package/lib/components/ndf-datepicker/containers/index.d.ts +2 -0
  204. package/lib/components/ndf-datepicker/containers/ndf-gregorian-datepicker.component.d.ts +10 -0
  205. package/lib/components/ndf-datepicker/containers/ndf-hijri-datepicker.component.d.ts +10 -0
  206. package/lib/components/ndf-datepicker/index.d.ts +9 -0
  207. package/lib/components/ndf-datepicker/models/data-types.d.ts +11 -0
  208. package/lib/components/ndf-datepicker/models/index.d.ts +2 -0
  209. package/lib/components/ndf-datepicker/models/value-object.d.ts +8 -0
  210. package/lib/components/ndf-datepicker/ndf-datepicker.component.d.ts +42 -0
  211. package/lib/components/ndf-datepicker/ndf-datepicker.module.d.ts +20 -0
  212. package/lib/components/ndf-datepicker/services/calendar.service.d.ts +33 -0
  213. package/lib/components/ndf-datepicker/services/index.d.ts +2 -0
  214. package/lib/components/ndf-datepicker/services/localize-state.service.d.ts +34 -0
  215. package/lib/components/no-data-found/index.d.ts +2 -0
  216. package/lib/components/no-data-found/no-data-found.component.d.ts +8 -0
  217. package/lib/components/no-data-found/no-data.module.d.ts +9 -0
  218. package/lib/components/notifications/models/common.d.ts +0 -1
  219. package/lib/components/{dynamic-table → tables/dynamic-table}/dynamic-table/dynamic-table.component.d.ts +7 -3
  220. package/lib/components/{dynamic-table → tables/dynamic-table}/dynamic-table.module.d.ts +3 -3
  221. package/lib/components/tables/index.d.ts +1 -0
  222. package/lib/components/tables/ndf-table/components/index.d.ts +5 -0
  223. package/lib/components/tables/ndf-table/components/mode-toggler/mode-toggler.component.d.ts +13 -0
  224. package/lib/components/tables/ndf-table/components/sorting-list/sorting-list.component.d.ts +12 -0
  225. package/lib/components/tables/ndf-table/components/table-columns-toggler/table-columns-toggler.component.d.ts +35 -0
  226. package/lib/components/tables/ndf-table/components/table-export/table-export.component.d.ts +13 -0
  227. package/lib/components/tables/ndf-table/components/text-search/text-search.component.d.ts +21 -0
  228. package/lib/components/tables/ndf-table/constants/index.d.ts +1 -0
  229. package/lib/components/tables/ndf-table/constants/sizes.d.ts +4 -0
  230. package/lib/components/tables/ndf-table/containers/index.d.ts +1 -0
  231. package/lib/components/tables/ndf-table/containers/ndf-table/ndf-table.component.d.ts +119 -0
  232. package/lib/components/tables/ndf-table/directives/actions.directive.d.ts +9 -0
  233. package/lib/components/tables/ndf-table/directives/filter-custom.directive.d.ts +9 -0
  234. package/lib/components/tables/ndf-table/directives/fluid-height.directive.d.ts +36 -0
  235. package/lib/components/tables/ndf-table/directives/index.d.ts +4 -0
  236. package/lib/components/tables/ndf-table/directives/search.directive.d.ts +9 -0
  237. package/lib/components/tables/ndf-table/filters-panel/base/base-aggregation-field.component.d.ts +35 -0
  238. package/lib/components/tables/ndf-table/filters-panel/base/base-checkbox-radio.component.d.ts +22 -0
  239. package/lib/components/tables/ndf-table/filters-panel/base/base-custom-field.component.d.ts +19 -0
  240. package/lib/components/tables/ndf-table/filters-panel/base/base-predicate-field.component.d.ts +15 -0
  241. package/lib/components/tables/ndf-table/filters-panel/base/base-value-accessor.component.d.ts +20 -0
  242. package/lib/components/tables/ndf-table/filters-panel/base/index.d.ts +5 -0
  243. package/lib/components/tables/ndf-table/filters-panel/components/__parts/field-header.component.d.ts +5 -0
  244. package/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-autocomplete-input/filter-autocomplete-input.component.d.ts +35 -0
  245. package/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-autocomplete-input/filter-autocomplete.service.d.ts +13 -0
  246. package/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-collapse-control/filter-collapse-control.component.d.ts +12 -0
  247. package/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-date-range/filter-date-range.component.d.ts +16 -0
  248. package/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-empty-message.component.d.ts +6 -0
  249. package/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-option-text/filter-option-text.component.d.ts +9 -0
  250. package/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-options-sort/filter-options-sort.component.d.ts +11 -0
  251. package/lib/components/tables/ndf-table/filters-panel/components/__parts/filter-search-input/filter-search-input.component.d.ts +10 -0
  252. package/lib/components/tables/ndf-table/filters-panel/components/__parts/html-dialog/html-dialog.component.d.ts +10 -0
  253. package/lib/components/tables/ndf-table/filters-panel/components/__parts/index.d.ts +9 -0
  254. package/lib/components/tables/ndf-table/filters-panel/components/aggregation-autocomplete/aggregation-autocomplete.component.d.ts +20 -0
  255. package/lib/components/tables/ndf-table/filters-panel/components/aggregation-checkbox/aggregation-checkbox.component.d.ts +10 -0
  256. package/lib/components/tables/ndf-table/filters-panel/components/aggregation-custom/aggregation-custom.component.d.ts +9 -0
  257. package/lib/components/tables/ndf-table/filters-panel/components/aggregation-date-list/aggregation-date-list.component.d.ts +41 -0
  258. package/lib/components/tables/ndf-table/filters-panel/components/aggregation-radio/aggregation-radio.component.d.ts +11 -0
  259. package/lib/components/tables/ndf-table/filters-panel/components/aggregation-select/aggregation-select.component.d.ts +14 -0
  260. package/lib/components/tables/ndf-table/filters-panel/components/aggregation-switch/aggregation-switch.component.d.ts +11 -0
  261. package/lib/components/tables/ndf-table/filters-panel/components/index.d.ts +10 -0
  262. package/lib/components/tables/ndf-table/filters-panel/components/predicate-date-input/predicate-date-input.component.d.ts +25 -0
  263. package/lib/components/tables/ndf-table/filters-panel/components/predicate-text-input/predicate-text-input.component.d.ts +40 -0
  264. package/lib/components/tables/ndf-table/filters-panel/constants/common.d.ts +3 -0
  265. package/lib/components/tables/ndf-table/filters-panel/constants/field.d.ts +5 -0
  266. package/lib/components/tables/ndf-table/filters-panel/constants/index.d.ts +4 -0
  267. package/lib/components/tables/ndf-table/filters-panel/constants/operators.d.ts +17 -0
  268. package/lib/components/tables/ndf-table/filters-panel/constants/sort.d.ts +2 -0
  269. package/lib/components/tables/ndf-table/filters-panel/constants/type.d.ts +25 -0
  270. package/lib/components/tables/ndf-table/filters-panel/containers/aggregation-field/aggregation-field.component.d.ts +13 -0
  271. package/lib/components/tables/ndf-table/filters-panel/containers/base-field.d.ts +21 -0
  272. package/lib/components/tables/ndf-table/filters-panel/containers/custom-field/custom-field.component.d.ts +13 -0
  273. package/lib/components/tables/ndf-table/filters-panel/containers/filters-panel/base-filters-panel.d.ts +19 -0
  274. package/lib/components/tables/ndf-table/filters-panel/containers/filters-panel/filters-panel.component.d.ts +48 -0
  275. package/lib/components/tables/ndf-table/filters-panel/containers/index.d.ts +4 -0
  276. package/lib/components/tables/ndf-table/filters-panel/containers/predicate-field/predicate-field.component.d.ts +12 -0
  277. package/lib/components/tables/ndf-table/filters-panel/custom-components/active-user-switch/active-user-switch.component.d.ts +14 -0
  278. package/lib/components/tables/ndf-table/filters-panel/custom-components/active-user-switch/active-user.service.d.ts +8 -0
  279. package/lib/components/tables/ndf-table/filters-panel/custom-components/active-user-switch/user-types.d.ts +29 -0
  280. package/lib/components/tables/ndf-table/filters-panel/custom-components/index.d.ts +1 -0
  281. package/lib/components/tables/ndf-table/filters-panel/directives/autocomplete-template.directive.d.ts +9 -0
  282. package/lib/components/tables/ndf-table/filters-panel/directives/checkbox-template.directive.d.ts +9 -0
  283. package/lib/components/tables/ndf-table/filters-panel/directives/custom-template.directive.d.ts +9 -0
  284. package/lib/components/tables/ndf-table/filters-panel/directives/date-template.directive.d.ts +9 -0
  285. package/lib/components/tables/ndf-table/filters-panel/directives/dropdown-label-template.directive.d.ts +16 -0
  286. package/lib/components/tables/ndf-table/filters-panel/directives/dropdown-template.directive.d.ts +9 -0
  287. package/lib/components/tables/ndf-table/filters-panel/directives/index.d.ts +8 -0
  288. package/lib/components/tables/ndf-table/filters-panel/directives/radio-template.directive.d.ts +9 -0
  289. package/lib/components/tables/ndf-table/filters-panel/directives/switch-template.directive.d.ts +9 -0
  290. package/lib/components/tables/ndf-table/filters-panel/filters-panel.module.d.ts +65 -0
  291. package/lib/components/tables/ndf-table/filters-panel/index.d.ts +11 -0
  292. package/lib/components/tables/ndf-table/filters-panel/models/aggregation-field-config.d.ts +42 -0
  293. package/lib/components/tables/ndf-table/filters-panel/models/aggregation-response.model.d.ts +20 -0
  294. package/lib/components/tables/ndf-table/filters-panel/models/base-field-config.d.ts +13 -0
  295. package/lib/components/tables/ndf-table/filters-panel/models/common.d.ts +5 -0
  296. package/lib/components/tables/ndf-table/filters-panel/models/custom-field-config.d.ts +7 -0
  297. package/lib/components/tables/ndf-table/filters-panel/models/field-config.model.d.ts +14 -0
  298. package/lib/components/tables/ndf-table/filters-panel/models/field-options/autocomplete-options.d.ts +6 -0
  299. package/lib/components/tables/ndf-table/filters-panel/models/field-options/checkbox-options.d.ts +6 -0
  300. package/lib/components/tables/ndf-table/filters-panel/models/field-options/common-utils.d.ts +35 -0
  301. package/lib/components/tables/ndf-table/filters-panel/models/field-options/custom-fields-options.d.ts +9 -0
  302. package/lib/components/tables/ndf-table/filters-panel/models/field-options/custom-options.d.ts +5 -0
  303. package/lib/components/tables/ndf-table/filters-panel/models/field-options/date-list-options.d.ts +10 -0
  304. package/lib/components/tables/ndf-table/filters-panel/models/field-options/date-options.d.ts +22 -0
  305. package/lib/components/tables/ndf-table/filters-panel/models/field-options/dropdown-options.d.ts +6 -0
  306. package/lib/components/tables/ndf-table/filters-panel/models/field-options/index.d.ts +11 -0
  307. package/lib/components/tables/ndf-table/filters-panel/models/field-options/input-options.d.ts +40 -0
  308. package/lib/components/tables/ndf-table/filters-panel/models/field-options/radio-options.d.ts +6 -0
  309. package/lib/components/tables/ndf-table/filters-panel/models/field-options/switch-options.d.ts +6 -0
  310. package/lib/components/tables/ndf-table/filters-panel/models/filter-option.model.d.ts +13 -0
  311. package/lib/components/tables/ndf-table/filters-panel/models/form-query-request.d.ts +5 -0
  312. package/lib/components/tables/ndf-table/filters-panel/models/index.d.ts +12 -0
  313. package/lib/components/tables/ndf-table/filters-panel/models/predicate-field-config.d.ts +7 -0
  314. package/lib/components/tables/ndf-table/filters-panel/models/types-helper.d.ts +47 -0
  315. package/lib/components/tables/ndf-table/filters-panel/models/value-object.model.d.ts +18 -0
  316. package/lib/components/tables/ndf-table/filters-panel/pipes/autocomplete-filter.pipe.d.ts +11 -0
  317. package/lib/components/tables/ndf-table/filters-panel/pipes/filter.pipe.d.ts +11 -0
  318. package/lib/components/tables/ndf-table/filters-panel/pipes/hash-translate.pipe.d.ts +18 -0
  319. package/lib/components/tables/ndf-table/filters-panel/pipes/index.d.ts +8 -0
  320. package/lib/components/tables/ndf-table/filters-panel/pipes/localized-label.pipe.d.ts +14 -0
  321. package/lib/components/tables/ndf-table/filters-panel/pipes/roles-filters.pipe.d.ts +12 -0
  322. package/lib/components/tables/ndf-table/filters-panel/pipes/sanitizer.pipe.d.ts +10 -0
  323. package/lib/components/tables/ndf-table/filters-panel/pipes/sort.pipe.d.ts +11 -0
  324. package/lib/components/tables/ndf-table/filters-panel/pipes/tooltip.pipe.d.ts +21 -0
  325. package/lib/components/tables/ndf-table/filters-panel/services/aggregation-field.service.d.ts +16 -0
  326. package/lib/components/tables/ndf-table/filters-panel/services/dynamic-component-loader.service.d.ts +18 -0
  327. package/lib/components/tables/ndf-table/filters-panel/services/filters-query.service.d.ts +58 -0
  328. package/lib/components/tables/ndf-table/filters-panel/services/index.d.ts +4 -0
  329. package/lib/components/tables/ndf-table/filters-panel/services/ndf-transform.service.d.ts +55 -0
  330. package/lib/components/tables/ndf-table/filters-panel/utility/index.d.ts +2 -0
  331. package/lib/components/tables/ndf-table/filters-panel/utility/nxql.d.ts +19 -0
  332. package/lib/components/tables/ndf-table/filters-panel/utility/object.d.ts +7 -0
  333. package/lib/components/tables/ndf-table/index.d.ts +1 -0
  334. package/lib/components/tables/ndf-table/models/index.d.ts +7 -0
  335. package/lib/components/tables/ndf-table/models/payload-types.d.ts +28 -0
  336. package/lib/components/tables/ndf-table/models/search.config.d.ts +13 -0
  337. package/lib/components/tables/ndf-table/models/table-column.d.ts +34 -0
  338. package/lib/components/tables/ndf-table/models/table-config.d.ts +45 -0
  339. package/lib/components/tables/ndf-table/models/table-mode.d.ts +25 -0
  340. package/lib/components/tables/ndf-table/models/table-options.d.ts +54 -0
  341. package/lib/components/tables/ndf-table/models/types.d.ts +38 -0
  342. package/lib/components/tables/ndf-table/ndf-table.module.d.ts +32 -0
  343. package/lib/components/tables/ndf-table/public-api.d.ts +7 -0
  344. package/lib/components/tables/ndf-table/services/filters-mapper.service.d.ts +17 -0
  345. package/lib/components/tables/ndf-table/services/index.d.ts +2 -0
  346. package/lib/components/tables/ndf-table/services/ndf-table.service.d.ts +10 -0
  347. package/lib/components/tables/ndf-table/utils/index.d.ts +1 -0
  348. package/lib/components/tables/ndf-table/utils/nxql-query.d.ts +10 -0
  349. package/lib/components/tables/public-api.d.ts +3 -0
  350. package/lib/components/{table → tables/table}/dynamic-column/dynamic-column.component.d.ts +1 -1
  351. package/lib/components/{table → tables/table}/dynamic-component.d.ts +1 -1
  352. package/lib/components/tables/table/index.d.ts +1 -0
  353. package/lib/components/tables/table/public-api.d.ts +5 -0
  354. package/lib/components/{table → tables/table}/table/table.component.d.ts +6 -5
  355. package/lib/components/{table → tables/table}/table.module.d.ts +3 -3
  356. package/lib/core/services/index.d.ts +2 -0
  357. package/lib/shared/models/index.d.ts +1 -0
  358. package/lib/shared/models/types-helper.d.ts +1 -0
  359. package/package.json +3 -2
  360. package/public-api.d.ts +3 -6
  361. package/esm2015/lib/components/dynamic-table/dynamic-table/dynamic-table.component.js +0 -349
  362. package/esm2015/lib/components/dynamic-table/dynamic-table.module.js +0 -51
  363. package/esm2015/lib/components/dynamic-table/public-api.js +0 -5
  364. package/esm2015/lib/components/dynamic-table/services/dynamic-table.service.js +0 -16
  365. package/esm2015/lib/components/table/dynamic-column/dynamic-column.component.js +0 -68
  366. package/esm2015/lib/components/table/dynamic-component.js +0 -59
  367. package/esm2015/lib/components/table/table/table.component.js +0 -300
  368. package/esm2015/lib/components/table/table.module.js +0 -69
  369. /package/lib/components/{dynamic-table → tables/dynamic-table}/directives/empty-state.directive.d.ts +0 -0
  370. /package/lib/components/{dynamic-table → tables/dynamic-table}/index.d.ts +0 -0
  371. /package/lib/components/{dynamic-table → tables/dynamic-table}/public-api.d.ts +0 -0
  372. /package/lib/components/{dynamic-table → tables/dynamic-table}/services/dynamic-table.service.d.ts +0 -0
  373. /package/lib/components/{table → tables/table}/page-sizes-list/page-sizes-list.component.d.ts +0 -0
@@ -1,349 +0,0 @@
1
- import { Component, ContentChild, EventEmitter, Input, Output, TemplateRef, ViewEncapsulation } from '@angular/core';
2
- import _ from 'lodash';
3
- import { catchError, map, startWith } from 'rxjs/operators';
4
- import { EMPTY_TEMPLATE } from '../directives/empty-state.directive';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../../../core/adapters/adapter.service";
7
- import * as i2 from "../../../core/services/callApi/call-api.service";
8
- import * as i3 from "../services/dynamic-table.service";
9
- import * as i4 from "../../../shared/components/spinner/spinner.component";
10
- import * as i5 from "../../pagination/pagination/pagination.component";
11
- import * as i6 from "../../table/page-sizes-list/page-sizes-list.component";
12
- import * as i7 from "../../table/table/table.component";
13
- import * as i8 from "@angular/material/progress-spinner";
14
- import * as i9 from "../../skeleton/skeleton.component";
15
- import * as i10 from "@angular/common";
16
- import * as i11 from "@ngx-translate/core";
17
- /**
18
- * this component is an additional layer that uses [Table Component]{@link TableComponent} internally,
19
- * you can use this component to configure a page provider listing out of the box easily,
20
- * and it will handle all of the basic features such as getting data from API, Listing, Pagination, sorting and filtering
21
- * ![Screenshot-1](../screenshots/dynamicTable.png)
22
- * @title
23
- * Dynamic Table
24
- * @example
25
- *
26
- * <cts-dynamic-table
27
- * [columns]="columns"
28
- * [responsiveColumns]="responsiveColumns"
29
- * [fullWidth]="fullWidth"
30
- * [pageSize]="PageSize"
31
- * [pageProvider]="pageProvider"
32
- * [quickFilter]="filter"
33
- * [sortingBy]="sortingBy"
34
- * [entityType]="'all'"
35
- * [fields]="fields"
36
- * [prefix]="prefix"
37
- * [rowCursor]="true"
38
- * [queryParam]="queryParam"
39
- * [headers]="headers"
40
- * (onRowSelected)="openViewer($event)"
41
- * (actionOnRow)="performAction($event)">
42
- * </cts-dynamic-table>
43
- */
44
- export class DynamicTableComponent {
45
- constructor(adapter, callApi, dynamicTableService, cdr) {
46
- this.adapter = adapter;
47
- this.callApi = callApi;
48
- this.dynamicTableService = dynamicTableService;
49
- this.cdr = cdr;
50
- /** event to emit when selecting single row */
51
- this.onRowSelected = new EventEmitter();
52
- /** event to emit when selecting single row to catch index*/
53
- this.onRowIndexSelected = new EventEmitter();
54
- /** event to emit when perform action on row (delte, edit, ... ) */
55
- this.actionOnRow = new EventEmitter();
56
- /** event to emit to the higher level when getting data from api is finished */
57
- this.onGettingData = new EventEmitter();
58
- /** event t emit when selecting multiple row */
59
- this.onMultiRowSelected = new EventEmitter();
60
- /** event t emit when start getting data and when finish */
61
- this.onLoading = new EventEmitter();
62
- /**
63
- * @deprecated Use `onPage` instead.
64
- * @see onPage
65
- */
66
- this.onPageChange = new EventEmitter();
67
- this.onPage = new EventEmitter();
68
- this.onLoad = new EventEmitter();
69
- this.onInitialize = new EventEmitter();
70
- /** Translations prefix */
71
- this.prefix = '';
72
- /** Controls number of items per page in table */
73
- this.pageSize = 10;
74
- this.isLegacyMode = true;
75
- this.showTotalRecord = false;
76
- this._pageNumber = 1;
77
- /** Sorting column */
78
- this.sortingBy = {};
79
- this.queryParam = {};
80
- this.customFilters = {};
81
- this.fullWidth = 'auto';
82
- /** 'list' for noraml table 'card' for cards mode like in memos */
83
- this.tableMode = 'list';
84
- this.defultSort = [{ prop: 'properties.createdAt', dir: 'desc' }];
85
- this.isSearchPage = false;
86
- /** allow multiselect rows with checkbox */
87
- this.multiSelectRows = false;
88
- /** to show 1st row with custom template in the table*/
89
- this.customFirstRow = false;
90
- this.highlightSelectedCard = false;
91
- this.showActionsAsMenu = false; // flage to show action in menu or side by side
92
- this.filterParams = {};
93
- this.skipAggregation = 'onPageChange';
94
- this.format = 'MMMM d, y';
95
- this.rows = [];
96
- this.totalRecords = 0;
97
- this.sorting = false;
98
- this.pageSizes = [];
99
- this.initialized = false;
100
- }
101
- set pageNumber(value) {
102
- this._pageNumber = isNaN(+value) ? 1 : +value;
103
- }
104
- get pageNum() {
105
- return this._pageNumber;
106
- }
107
- ngOnInit() {
108
- this.myDataSubscription = this.dynamicTableService.refreshData.pipe(startWith(null)).subscribe((filterData) => {
109
- if (filterData) {
110
- this.filterParams = Object.assign({}, filterData);
111
- // reset page number when start new filtering
112
- this._resetPageNumber();
113
- }
114
- this.getData();
115
- });
116
- }
117
- ngOnDestroy() {
118
- this.myDataSubscription ? this.myDataSubscription.unsubscribe() : '';
119
- }
120
- ngOnChanges(changes) {
121
- const isFirstChange = Object.values(changes).some((c) => c.isFirstChange());
122
- if (isFirstChange) {
123
- return;
124
- }
125
- const hasChanged = (items) => items.some((key) => {
126
- var _a, _b;
127
- const isEqual = _.isEqual(((_a = changes[key]) === null || _a === void 0 ? void 0 : _a.previousValue) || null, ((_b = changes[key]) === null || _b === void 0 ? void 0 : _b.currentValue) || null);
128
- return !isEqual;
129
- });
130
- if (hasChanged(['queryParam', 'quickFilter', 'customFilters'])) {
131
- if (this.initialized) {
132
- this._resetPageNumber(); // Reset page number before recalling API with filters
133
- }
134
- this.getData();
135
- }
136
- if (hasChanged(['sortingBy'])) {
137
- this.getData();
138
- }
139
- }
140
- _resetPageNumber() {
141
- this._pageNumber = 1;
142
- this.onPageChange.emit(this._pageNumber);
143
- this.onPage.emit({
144
- pageIndex: this._pageNumber,
145
- pageSize: this.pageSize,
146
- length: this.totalRecords
147
- });
148
- }
149
- getData(payload = {}, headers = {}) {
150
- var _a, _b, _c, _d;
151
- this.loading = true; // internal loading
152
- this.onLoading.emit(true); // external loading
153
- let params = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (this.range ? { dublincore_created_agg: this.range } : {})), this.filterParams), this.queryParam), this.quickFilter), (Object.keys(this.sortingBy || {}).length
154
- ? {
155
- sortBy: (_a = this.sortingBy) === null || _a === void 0 ? void 0 : _a.sortBy,
156
- sortOrder: (_b = this.sortingBy) === null || _b === void 0 ? void 0 : _b.sortOrder
157
- }
158
- : {})), { currentPageIndex: +this.pageNum - 1 }), (this.pageSize ? { pageSize: this.pageSize } : {})), { offset: 0 }), payload);
159
- // don't refresh all table in case of sorting only
160
- if (!this.sorting && this.isLegacyMode) {
161
- // used to not refreshing all table in case of sorting since table lose sorting state when refresh all table
162
- this.rows = []; // used to refresh table to feel changes in actions when perform action and need to refresh actions
163
- }
164
- this.sorting = false; // reset sorting status to false and for next sorting func sorting set it to true again
165
- const _query = Object.assign({ pageProvider: this.pageProvider }, params);
166
- const _options = {
167
- headers: Object.assign(Object.assign({}, this.headers), headers)
168
- };
169
- const query$ = this.customUrl
170
- ? this.callApi.customQuery(this.customUrl, Object.assign(Object.assign({}, params), (((_c = this.customFilters) === null || _c === void 0 ? void 0 : _c.params) || {})), _options.headers, ((_d = this.customFilters) === null || _d === void 0 ? void 0 : _d.payload) || {})
171
- : this.callApi.query(_query, _options);
172
- query$
173
- .pipe(map((data) => {
174
- data.entries.map((item) => this.adapter.adaptIn(item, this.fields));
175
- return data;
176
- }), catchError((err) => {
177
- throw err;
178
- }))
179
- .subscribe((res) => {
180
- this.loading = false;
181
- this.onLoading.emit(false);
182
- this.onLoad.emit(res);
183
- if (!this.initialized) {
184
- this.onInitialize.emit(res);
185
- this.initialized = true;
186
- }
187
- res.entries.forEach((element) => {
188
- var _a, _b, _c, _d, _e, _f, _g, _h;
189
- if (element.properties && ((_a = element.properties) === null || _a === void 0 ? void 0 : _a.creator) && ((_b = element.properties.creator) === null || _b === void 0 ? void 0 : _b.properties)) {
190
- element.properties['creatorFullObject'] = Object.assign({}, element.properties.creator);
191
- element.properties.creator =
192
- ((_d = (_c = element.properties.creator) === null || _c === void 0 ? void 0 : _c.properties) === null || _d === void 0 ? void 0 : _d.firstName) +
193
- ' ' +
194
- ((_f = (_e = element.properties.creator) === null || _e === void 0 ? void 0 : _e.properties) === null || _f === void 0 ? void 0 : _f.lastName);
195
- }
196
- if (element.properties && ((_g = element.properties) === null || _g === void 0 ? void 0 : _g.assignee)) {
197
- element.properties.assignee = (_h = element.properties) === null || _h === void 0 ? void 0 : _h.assignee.fullName;
198
- }
199
- });
200
- this.totalRecords = res.resultsCount;
201
- this.rows = res.entries;
202
- this.cdr.detectChanges();
203
- // emit data to outside in case of search page for the first time only to prevent refreshing aggregation with every page change
204
- // and for any other page type emit data directly in all page numbers
205
- if ((this.isSearchPage && this.pageNum === 1) || !this.isSearchPage)
206
- this.onGettingData.emit(res);
207
- });
208
- }
209
- // function to be executed when clicking on single row
210
- rowDetails(event) {
211
- this.onRowSelected.emit(event);
212
- }
213
- indexDetails(event) {
214
- this.onRowIndexSelected.emit(event);
215
- }
216
- //function to handle all operations on single row (delete , edit , ...)
217
- performAction(action) {
218
- this.actionOnRow.emit(action);
219
- }
220
- // handle sorting functionality of the table
221
- onSort(sortObject) {
222
- this.sortingBy = sortObject;
223
- this.sorting = true;
224
- this.getData({}, this.skipAggregation === 'onPageChange' ? { skipAggregates: 'true' } : {});
225
- }
226
- onMultiRowSelectValue(event) {
227
- this.onMultiRowSelected.emit(event);
228
- }
229
- paginationChange(event) {
230
- this._pageNumber = event;
231
- this.onPageChange.emit(event);
232
- this.onPage.emit({
233
- pageIndex: this._pageNumber,
234
- pageSize: this.pageSize,
235
- length: this.totalRecords
236
- });
237
- this.getData({}, this.skipAggregation === 'onPageChange' ? { skipAggregates: 'true' } : {});
238
- }
239
- onChangePageSize(pageSize) {
240
- this.pageSize = pageSize;
241
- this._resetPageNumber();
242
- this.getData({}, this.skipAggregation === 'onPageChange' ? { skipAggregates: 'true' } : {});
243
- }
244
- }
245
- DynamicTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicTableComponent, deps: [{ token: i1.AdapterService }, { token: i2.CallApiService }, { token: i3.DynamicTableService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
246
- DynamicTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicTableComponent, selector: "cts-dynamic-table", inputs: { columns: "columns", responsiveColumns: "responsiveColumns", entityType: "entityType", prefix: "prefix", headers: "headers", fields: "fields", pageProvider: "pageProvider", pageSize: "pageSize", isLegacyMode: "isLegacyMode", showTotalRecord: "showTotalRecord", pageNumber: "pageNumber", sortingBy: "sortingBy", queryParam: "queryParam", customFilters: "customFilters", quickFilter: "quickFilter", report: "report", rowCursor: "rowCursor", fullWidth: "fullWidth", tableMode: "tableMode", componentName: "componentName", tableActions: "tableActions", defultSort: "defultSort", range: "range", isSearchPage: "isSearchPage", multiSelectRows: "multiSelectRows", customFirstRow: "customFirstRow", highlightSelectedCard: "highlightSelectedCard", showActionsAsMenu: "showActionsAsMenu", filterParams: "filterParams", skipAggregation: "skipAggregation", customUrl: "customUrl", format: "format", pageSizes: "pageSizes" }, outputs: { onRowSelected: "onRowSelected", onRowIndexSelected: "onRowIndexSelected", actionOnRow: "actionOnRow", onGettingData: "onGettingData", onMultiRowSelected: "onMultiRowSelected", onLoading: "onLoading", onPageChange: "onPageChange", onPage: "onPage", onLoad: "onLoad", onInitialize: "onInitialize" }, host: { properties: { "class.loading-results": "loading", "class.no-data": "rows.length <= 0" } }, queries: [{ propertyName: "emptyTemplate", first: true, predicate: EMPTY_TEMPLATE, descendants: true, read: TemplateRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"wrapping table-wrapping\">\r\n\t<ng-container *ngIf=\"isLegacyMode\">\r\n\t\t<div class=\"table-reposition\">\r\n\t\t\t<ng-container *ngIf=\"rows.length\" [ngTemplateOutlet]=\"table\"></ng-container>\r\n\t\t</div>\r\n\t\t<ng-container *ngIf=\"loading\">\r\n\t\t\t<cts-spinner></cts-spinner>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n\r\n\t<div class=\"table-reposition\" *ngIf=\"!isLegacyMode && rows.length\">\r\n\t\t<ng-container [ngTemplateOutlet]=\"table\"></ng-container>\r\n\t\t<ng-container\r\n\t\t\t*ngIf=\"!initialized\"\r\n\t\t\t[ngTemplateOutlet]=\"skeleton\"\r\n\t\t\t[ngTemplateOutletContext]=\"{ $implicit: 10 }\"\r\n\t\t></ng-container>\r\n\t</div>\r\n\r\n\t<div\r\n\t\tclass=\"pagination-iner-wraper d-flex justify-content-center align-items-center my-3\"\r\n\t\t[ngClass]=\"{ relative: pageSizes?.length }\"\r\n\t\t*ngIf=\"rows.length && totalRecords > pageSize\"\r\n\t>\r\n\t\t<cts-pagination\r\n\t\t\t[page]=\"pageNum\"\r\n\t\t\t(change)=\"paginationChange($event)\"\r\n\t\t\t[size]=\"pageSize\"\r\n\t\t\t[count]=\"totalRecords\"\r\n\t\t></cts-pagination>\r\n\t\t<div class=\"absolute ndfPageSizes flex gap-x-3 items-center mt-2\">\r\n\t\t\t<ndf-page-sizes-list\r\n\t\t\t\t*ngIf=\"pageSizes?.length\"\r\n\t\t\t\t[pageSizes]=\"pageSizes\"\r\n\t\t\t\t[selectedPageSize]=\"pageSize\"\r\n\t\t\t\t(onChangePageSize)=\"onChangePageSize($event)\"\r\n\t\t\t>\r\n\t\t\t</ndf-page-sizes-list>\r\n\r\n\t\t\t<span *ngIf=\"showTotalRecord\">{{ 'TABLE.totalRecords' | translate: { count: totalRecords } }}</span>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<ng-container\r\n\t\t*ngIf=\"isLegacyMode\"\r\n\t\t[ngTemplateOutlet]=\"emptyTemplate || legacyDefaultEmptyState\"\r\n\t\t[ngTemplateOutletContext]=\"{ $implicit: loading, rows: rows, initialized: initialized }\"\r\n\t></ng-container>\r\n\r\n\t<ng-container\r\n\t\t*ngIf=\"!isLegacyMode\"\r\n\t\t[ngTemplateOutlet]=\"emptyTemplate || defaultEmptyState\"\r\n\t\t[ngTemplateOutletContext]=\"{ $implicit: loading, rows: rows, initialized: initialized }\"\r\n\t></ng-container>\r\n</div>\r\n\r\n<ng-template #table>\r\n\t<cts-table\r\n\t\t[rows]=\"rows\"\r\n\t\t[columns]=\"columns\"\r\n\t\t[responsiveColumns]=\"responsiveColumns\"\r\n\t\t[rowCursor]=\"rowCursor\"\r\n\t\t[fullWidth]=\"fullWidth\"\r\n\t\t[entityType]=\"entityType\"\r\n\t\t[prefix]=\"prefix\"\r\n\t\t[totalRecords]=\"totalRecords\"\r\n\t\t[tableMode]=\"tableMode\"\r\n\t\t[componentName]=\"componentName\"\r\n\t\t[multiSelectRows]=\"multiSelectRows\"\r\n\t\t[tableActions]=\"tableActions\"\r\n\t\t[showActionsAsMenu]=\"showActionsAsMenu\"\r\n\t\t[defultSort]=\"defultSort\"\r\n\t\t[format]=\"format\"\r\n\t\t[highlightSelectedCard]=\"highlightSelectedCard\"\r\n\t\t[customFirstRow]=\"customFirstRow\"\r\n\t\t(onRowSelected)=\"rowDetails($event)\"\r\n\t\t(onRowIndexSelected)=\"indexDetails($event)\"\r\n\t\t(onMultiRowSelected)=\"onMultiRowSelectValue($event)\"\r\n\t\t(actionOnRow)=\"performAction($event)\"\r\n\t\t(onSorting)=\"onSort($event)\"\r\n\t></cts-table>\r\n</ng-template>\r\n\r\n<ng-template #legacyDefaultEmptyState>\r\n\t<div class=\"empty-state\" *ngIf=\"!loading && rows.length === 0\">\r\n\t\t<div class=\"text\">\r\n\t\t\t{{ (prefix ? prefix + 'noData' : 'noData') | translate }}\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"empty-state\" *ngIf=\"loading && rows.length === 0\">\r\n\t\t<div class=\"text\">\r\n\t\t\t{{ (prefix ? prefix + 'gettingData' : 'gettingData') | translate }}\r\n\t\t</div>\r\n\t</div>\r\n</ng-template>\r\n\r\n<ng-template #defaultEmptyState>\r\n\t<div class=\"empty-state\" *ngIf=\"!loading && rows.length === 0\">\r\n\t\t<div class=\"text\">\r\n\t\t\t{{ (prefix ? prefix + 'noData' : 'noData') | translate }}\r\n\t\t</div>\r\n\t</div>\r\n\t<div *ngIf=\"loading && initialized\" class=\"loading-content\">\r\n\t\t<mat-spinner [diameter]=\"100\"></mat-spinner>\r\n\t</div>\r\n</ng-template>\r\n\r\n<ng-template #skeleton let-rows>\r\n\t<table class=\"w-full\">\r\n\t\t<thead *ngIf=\"false\">\r\n\t\t\t<tr class=\"border-b border-green-900\">\r\n\t\t\t\t<th *ngIf=\"multiSelectRows\" class=\"p-3 py-4\" style=\"width: 60px\">\r\n\t\t\t\t\t<app-skeleton width=\"60px\" height=\"1.3rem\"></app-skeleton>\r\n\t\t\t\t</th>\r\n\t\t\t\t<th *ngFor=\"let num of [].constructor(columns?.length || 4); let i = index\" class=\"px-3 py-4\">\r\n\t\t\t\t\t<app-skeleton [randomWidth]=\"true\" height=\"1.7rem\"></app-skeleton>\r\n\t\t\t\t</th>\r\n\t\t\t</tr>\r\n\t\t</thead>\r\n\t\t<tbody>\r\n\t\t\t<tr *ngFor=\"let row of [].constructor(rows || 10); let index = index\" class=\"border-b border-gray-200\">\r\n\t\t\t\t<td *ngIf=\"multiSelectRows\" class=\"p-3 py-4\" style=\"width: 50px\">\r\n\t\t\t\t\t<app-skeleton width=\"50px\" height=\"1.3rem\"></app-skeleton>\r\n\t\t\t\t</td>\r\n\t\t\t\t<td *ngFor=\"let col of [].constructor(columns?.length || 4); let i = index\" class=\"p-3 py-4\">\r\n\t\t\t\t\t<app-skeleton [randomWidth]=\"true\" height=\"1.3rem\"></app-skeleton>\r\n\t\t\t\t</td>\r\n\t\t\t</tr>\r\n\t\t</tbody>\r\n\t</table>\r\n</ng-template>\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.wrapping{position:relative}.wrapping .table-reposition{overflow-y:var(--table-reposition-overflow-y, hidden);scrollbar-color:#b4bac6 transparent!important;scrollbar-width:thin!important;overflow-x:hidden}.empty-state{padding:200px;display:flex;justify-content:center;align-items:center;font-size:20px;font-weight:bold}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#b4bac6}.dark-scroll::-webkit-scrollbar-thumb{background:#8f98aa}.ndfPageSizes{right:0;left:unset}.rtl .ndfPageSizes{right:unset;left:0}.loading-content{position:absolute;inset:0;display:grid;place-items:center;background:var(--loading-content-background, rgba(255, 255, 255, .2));-webkit-backdrop-filter:var(--loading-content-backdrop-filter, blur(3px));backdrop-filter:var(--loading-content-backdrop-filter, blur(3px))}\n"], components: [{ type: i4.SpinnerComponent, selector: "cts-spinner" }, { type: i5.PaginationComponent, selector: "cts-pagination", inputs: ["size", "count", "page"], outputs: ["change"] }, { type: i6.PageSizesListComponent, selector: "ndf-page-sizes-list", inputs: ["pageSizes", "selectedPageSize"], outputs: ["onChangePageSize"] }, { type: i7.TableComponent, selector: "cts-table", inputs: ["rows", "columns", "responsiveColumns", "entityType", "prefix", "pageCount", "totalRecords", "rowCursor", "fullWidth", "vocItemTranslationPrefix", "tableMode", "componentName", "tableActions", "format", "defultSort", "highlightSelectedCard", "multiSelectRows", "customFirstRow", "showActionsAsMenu", "messages", "defaultColumnSize"], outputs: ["onRowSelected", "onRowIndexSelected", "onIconSelected", "actionOnRow", "onSorting", "onMultiRowSelected"] }, { type: i8.MatSpinner, selector: "mat-spinner", inputs: ["color"] }, { type: i9.SkeletonComponent, selector: "app-skeleton", inputs: ["styleClass", "style", "shape", "animation", "radius", "size", "width", "height", "randomWidth"] }], directives: [{ type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i10.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i10.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i10.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i11.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
247
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicTableComponent, decorators: [{
248
- type: Component,
249
- args: [{
250
- selector: 'cts-dynamic-table',
251
- templateUrl: './dynamic-table.component.html',
252
- styleUrls: ['./dynamic-table.component.scss'],
253
- encapsulation: ViewEncapsulation.None,
254
- host: {
255
- '[class.loading-results]': 'loading',
256
- '[class.no-data]': 'rows.length <= 0'
257
- }
258
- }]
259
- }], ctorParameters: function () { return [{ type: i1.AdapterService }, { type: i2.CallApiService }, { type: i3.DynamicTableService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { onRowSelected: [{
260
- type: Output
261
- }], onRowIndexSelected: [{
262
- type: Output
263
- }], actionOnRow: [{
264
- type: Output
265
- }], onGettingData: [{
266
- type: Output
267
- }], onMultiRowSelected: [{
268
- type: Output
269
- }], onLoading: [{
270
- type: Output
271
- }], onPageChange: [{
272
- type: Output
273
- }], onPage: [{
274
- type: Output
275
- }], onLoad: [{
276
- type: Output
277
- }], onInitialize: [{
278
- type: Output
279
- }], columns: [{
280
- type: Input
281
- }], responsiveColumns: [{
282
- type: Input
283
- }], entityType: [{
284
- type: Input
285
- }], prefix: [{
286
- type: Input
287
- }], headers: [{
288
- type: Input
289
- }], fields: [{
290
- type: Input
291
- }], pageProvider: [{
292
- type: Input
293
- }], pageSize: [{
294
- type: Input
295
- }], isLegacyMode: [{
296
- type: Input
297
- }], showTotalRecord: [{
298
- type: Input
299
- }], emptyTemplate: [{
300
- type: ContentChild,
301
- args: [EMPTY_TEMPLATE, { read: TemplateRef, static: true }]
302
- }], pageNumber: [{
303
- type: Input
304
- }], sortingBy: [{
305
- type: Input
306
- }], queryParam: [{
307
- type: Input
308
- }], customFilters: [{
309
- type: Input
310
- }], quickFilter: [{
311
- type: Input
312
- }], report: [{
313
- type: Input
314
- }], rowCursor: [{
315
- type: Input
316
- }], fullWidth: [{
317
- type: Input
318
- }], tableMode: [{
319
- type: Input
320
- }], componentName: [{
321
- type: Input
322
- }], tableActions: [{
323
- type: Input
324
- }], defultSort: [{
325
- type: Input
326
- }], range: [{
327
- type: Input
328
- }], isSearchPage: [{
329
- type: Input
330
- }], multiSelectRows: [{
331
- type: Input
332
- }], customFirstRow: [{
333
- type: Input
334
- }], highlightSelectedCard: [{
335
- type: Input
336
- }], showActionsAsMenu: [{
337
- type: Input
338
- }], filterParams: [{
339
- type: Input
340
- }], skipAggregation: [{
341
- type: Input
342
- }], customUrl: [{
343
- type: Input
344
- }], format: [{
345
- type: Input
346
- }], pageSizes: [{
347
- type: Input
348
- }] } });
349
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtdGFibGUvZHluYW1pYy10YWJsZS9keW5hbWljLXRhYmxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy10YWJsZS9keW5hbWljLXRhYmxlL2R5bmFtaWMtdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVOLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRU4sV0FBVyxFQUNYLGlCQUFpQixFQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7Ozs7Ozs7O0FBSXJFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBCRztBQVdILE1BQU0sT0FBTyxxQkFBcUI7SUF3R2pDLFlBQ1MsT0FBdUIsRUFDdkIsT0FBdUIsRUFDdkIsbUJBQXdDLEVBQ3hDLEdBQXNCO1FBSHRCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUEzRy9CLCtDQUErQztRQUNyQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7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c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFFTixZQUFZO3NCQURYLEtBQUs7Z0JBR0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFPRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuXHRDaGFuZ2VEZXRlY3RvclJlZixcclxuXHRDb21wb25lbnQsXHJcblx0Q29udGVudENoaWxkLFxyXG5cdEV2ZW50RW1pdHRlcixcclxuXHRJbnB1dCxcclxuXHRPbkRlc3Ryb3ksXHJcblx0T25Jbml0LFxyXG5cdE91dHB1dCxcclxuXHRTaW1wbGVDaGFuZ2VzLFxyXG5cdFRlbXBsYXRlUmVmLFxyXG5cdFZpZXdFbmNhcHN1bGF0aW9uXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2FkYXB0ZXJzL2FkYXB0ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IENhbGxBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9jYWxsQXBpL2NhbGwtYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBFTVBUWV9URU1QTEFURSB9IGZyb20gJy4uL2RpcmVjdGl2ZXMvZW1wdHktc3RhdGUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRHluYW1pY1RhYmxlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2R5bmFtaWMtdGFibGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFBhZ2VFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvci9wYWdpbmF0b3InO1xyXG5cclxuLyoqXHJcbiAqIHRoaXMgY29tcG9uZW50IGlzIGFuIGFkZGl0aW9uYWwgbGF5ZXIgdGhhdCB1c2VzIFtUYWJsZSBDb21wb25lbnRde0BsaW5rIFRhYmxlQ29tcG9uZW50fSBpbnRlcm5hbGx5LFxyXG4gKiB5b3UgY2FuIHVzZSB0aGlzIGNvbXBvbmVudCB0byBjb25maWd1cmUgYSBwYWdlIHByb3ZpZGVyIGxpc3Rpbmcgb3V0IG9mIHRoZSBib3ggZWFzaWx5LFxyXG4gKiBhbmQgaXQgd2lsbCBoYW5kbGUgYWxsIG9mIHRoZSBiYXNpYyBmZWF0dXJlcyBzdWNoIGFzIGdldHRpbmcgZGF0YSBmcm9tIEFQSSwgTGlzdGluZywgUGFnaW5hdGlvbiwgc29ydGluZyBhbmQgZmlsdGVyaW5nXHJcbiAqICFbU2NyZWVuc2hvdC0xXSguLi9zY3JlZW5zaG90cy9keW5hbWljVGFibGUucG5nKVxyXG4gKiBAdGl0bGVcclxuICogRHluYW1pYyBUYWJsZVxyXG4gKiBAZXhhbXBsZVxyXG4gKlxyXG4gKiA8Y3RzLWR5bmFtaWMtdGFibGVcclxuICogICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXHJcbiAqICAgIFtyZXNwb25zaXZlQ29sdW1uc109XCJyZXNwb25zaXZlQ29sdW1uc1wiXHJcbiAqICAgIFtmdWxsV2lkdGhdPVwiZnVsbFdpZHRoXCJcclxuICogICAgW3BhZ2VTaXplXT1cIlBhZ2VTaXplXCJcclxuICogICAgW3BhZ2VQcm92aWRlcl09XCJwYWdlUHJvdmlkZXJcIlxyXG4gKiAgICBbcXVpY2tGaWx0ZXJdPVwiZmlsdGVyXCJcclxuICogICAgW3NvcnRpbmdCeV09XCJzb3J0aW5nQnlcIlxyXG4gKiAgICBbZW50aXR5VHlwZV09XCInYWxsJ1wiXHJcbiAqICAgIFtmaWVsZHNdPVwiZmllbGRzXCJcclxuICogICAgW3ByZWZpeF09XCJwcmVmaXhcIlxyXG4gKiAgICBbcm93Q3Vyc29yXT1cInRydWVcIlxyXG4gKiAgICBbcXVlcnlQYXJhbV09XCJxdWVyeVBhcmFtXCJcclxuICogICAgW2hlYWRlcnNdPVwiaGVhZGVyc1wiXHJcbiAqICAgIChvblJvd1NlbGVjdGVkKT1cIm9wZW5WaWV3ZXIoJGV2ZW50KVwiXHJcbiAqICAgIChhY3Rpb25PblJvdyk9XCJwZXJmb3JtQWN0aW9uKCRldmVudClcIj5cclxuICogPC9jdHMtZHluYW1pYy10YWJsZT5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnY3RzLWR5bmFtaWMtdGFibGUnLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9keW5hbWljLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0ZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuXHRob3N0OiB7XHJcblx0XHQnW2NsYXNzLmxvYWRpbmctcmVzdWx0c10nOiAnbG9hZGluZycsXHJcblx0XHQnW2NsYXNzLm5vLWRhdGFdJzogJ3Jvd3MubGVuZ3RoIDw9IDAnXHJcblx0fVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY1RhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cdC8qKiBldmVudCB0byBlbWl0IHdoZW4gc2VsZWN0aW5nIHNpbmdsZSByb3cgICovXHJcblx0QE91dHB1dCgpIG9uUm93U2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblx0LyoqIGV2ZW50IHRvIGVtaXQgd2hlbiBzZWxlY3Rpbmcgc2luZ2xlIHJvdyB0byBjYXRjaCBpbmRleCovXHJcblx0QE91dHB1dCgpIG9uUm93SW5kZXhTZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHQvKiogZXZlbnQgdG8gZW1pdCB3aGVuIHBlcmZvcm0gYWN0aW9uIG9uIHJvdyAoZGVsdGUsIGVkaXQsIC4uLiApICovXHJcblx0QE91dHB1dCgpIGFjdGlvbk9uUm93ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cdC8qKiBldmVudCB0byBlbWl0IHRvIHRoZSBoaWdoZXIgbGV2ZWwgIHdoZW4gZ2V0dGluZyBkYXRhIGZyb20gYXBpIGlzIGZpbmlzaGVkICovXHJcblx0QE91dHB1dCgpIG9uR2V0dGluZ0RhdGEgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblx0LyoqIGV2ZW50IHQgZW1pdCB3aGVuIHNlbGVjdGluZyBtdWx0aXBsZSByb3cgKi9cclxuXHRAT3V0cHV0KCkgb25NdWx0aVJvd1NlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cdC8qKiBldmVudCB0IGVtaXQgd2hlbiBzdGFydCBnZXR0aW5nIGRhdGEgYW5kIHdoZW4gZmluaXNoICovXHJcblx0QE91dHB1dCgpIG9uTG9hZGluZyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHQvKipcclxuXHQgKiBAZGVwcmVjYXRlZCBVc2UgYG9uUGFnZWAgaW5zdGVhZC5cclxuXHQgKiBAc2VlIG9uUGFnZVxyXG5cdCAqL1xyXG5cdEBPdXRwdXQoKSBvblBhZ2VDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG5cdEBPdXRwdXQoKSBvblBhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFBhZ2VFdmVudD4oKTtcclxuXHJcblx0QE91dHB1dCgpIG9uTG9hZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHRAT3V0cHV0KCkgb25Jbml0aWFsaXplID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cdC8qKiBBcnJheSBvZiBjb2x1bW5zICovXHJcblx0QElucHV0KCkgY29sdW1ucztcclxuXHQvKiogQXJyYXkgb2YgY29sdW1ucyBvbiBzbWFsbGVyIHNjcmVlbnMgKi9cclxuXHRASW5wdXQoKSByZXNwb25zaXZlQ29sdW1ucz87XHJcblx0LyoqIERlZmluZXMgdGhlIHBhZ2UgaW4gd2hpY2ggdGFibGUgaXMgYmVpbmcgdXNlZCAqL1xyXG5cdEBJbnB1dCgpIGVudGl0eVR5cGU6IHN0cmluZztcclxuXHQvKiogVHJhbnNsYXRpb25zIHByZWZpeCAqL1xyXG5cdEBJbnB1dCgpIHByZWZpeCA9ICcnO1xyXG5cdC8qKiBIZWFkZXJzIHRvIGJlIHNlbnQgd2l0aCBBUEkgUmVxdWVzdCAqL1xyXG5cdEBJbnB1dCgpIGhlYWRlcnM7XHJcblx0LyoqIEZpZWxkcyBrZXltYXAgdG8gYmUgbWFwcGVkIGluIHRoZSBhZGFwdGVyICovXHJcblx0QElucHV0KCkgZmllbGRzO1xyXG5cdC8qKiBQYWdlIFByb3ZpZGVyIG5hbWUgdGhhdCB3aWxsIGJlIHVzZWQgdG8gcmV0cmlldmUgZGF0YSAqL1xyXG5cdEBJbnB1dCgpIHBhZ2VQcm92aWRlcjtcclxuXHQvKiogQ29udHJvbHMgbnVtYmVyIG9mIGl0ZW1zIHBlciBwYWdlIGluIHRhYmxlICovXHJcblx0QElucHV0KCkgcGFnZVNpemUgPSAxMDtcclxuXHJcblx0QElucHV0KCkgaXNMZWdhY3lNb2RlID0gdHJ1ZTtcclxuXHRASW5wdXQoKSBzaG93VG90YWxSZWNvcmQgPSBmYWxzZTtcclxuXHJcblx0QENvbnRlbnRDaGlsZChFTVBUWV9URU1QTEFURSwgeyByZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiB0cnVlIH0pXHJcblx0ZW1wdHlUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZDtcclxuXHJcblx0cHJpdmF0ZSBfcGFnZU51bWJlciA9IDE7XHJcblx0QElucHV0KCkgc2V0IHBhZ2VOdW1iZXIodmFsdWU6IHN0cmluZyB8IG51bWJlcikge1xyXG5cdFx0dGhpcy5fcGFnZU51bWJlciA9IGlzTmFOKCt2YWx1ZSkgPyAxIDogK3ZhbHVlO1xyXG5cdH1cclxuXHJcblx0Z2V0IHBhZ2VOdW0oKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5fcGFnZU51bWJlcjtcclxuXHR9XHJcblxyXG5cdC8qKiBTb3J0aW5nIGNvbHVtbiAqL1xyXG5cdEBJbnB1dCgpIHNvcnRpbmdCeToge1xyXG5cdFx0c29ydEJ5Pzogc3RyaW5nO1xyXG5cdFx0c29ydE9yZGVyPzogc3RyaW5nO1xyXG5cdH0gPSB7fTtcclxuXHRASW5wdXQoKSBxdWVyeVBhcmFtPyA9IHt9O1xyXG5cclxuXHRASW5wdXQoKSBjdXN0b21GaWx0ZXJzOiB7XHJcblx0XHRwYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xyXG5cdFx0cGF5bG9hZD86IFJlY29yZDxzdHJpbmcsIGFueT47XHJcblx0fSA9IHt9O1xyXG5cclxuXHRASW5wdXQoKSBxdWlja0ZpbHRlcj87XHJcblx0LyoqIENvbnRyb2xzIGlmIGl0IHJlcG9ydCBwYWdlICovXHJcblx0QElucHV0KCkgcmVwb3J0O1xyXG5cdC8qKiB0byBtYWtlIGN1cnNvciB3aGVuIGhvdmVyIG9uIHJvdyBvciBub3QgKi9cclxuXHRASW5wdXQoKSByb3dDdXJzb3I/O1xyXG5cdEBJbnB1dCgpIGZ1bGxXaWR0aD8gPSAnYXV0byc7XHJcblx0LyoqICdsaXN0JyBmb3Igbm9yYW1sIHRhYmxlICdjYXJkJyBmb3IgY2FyZHMgbW9kZSBsaWtlIGluIG1lbW9zICovXHJcblx0QElucHV0KCkgdGFibGVNb2RlID0gJ2xpc3QnO1xyXG5cclxuXHRASW5wdXQoKSBjb21wb25lbnROYW1lOiBzdHJpbmc7XHJcblx0LyoqIGFjdGlvbiB0byBiZSB1c2VkIGluIGNhc2Ugb2YgY2FyZCBtb2RlICovXHJcblx0QElucHV0KCkgdGFibGVBY3Rpb25zO1xyXG5cdEBJbnB1dCgpIGRlZnVsdFNvcnQ6IGFueSA9IFt7IHByb3A6ICdwcm9wZXJ0aWVzLmNyZWF0ZWRBdCcsIGRpcjogJ2Rlc2MnIH1dO1xyXG5cdEBJbnB1dCgpIHJhbmdlO1xyXG5cdEBJbnB1dCgpIGlzU2VhcmNoUGFnZSA9IGZhbHNlO1xyXG5cdC8qKiBhbGxvdyBtdWx0aXNlbGVjdCByb3dzIHdpdGggY2hlY2tib3ggKi9cclxuXHRASW5wdXQoKSBtdWx0aVNlbGVjdFJvd3MgPSBmYWxzZTtcclxuXHQvKiogdG8gc2hvdyAxc3Qgcm93IHdpdGggY3VzdG9tIHRlbXBsYXRlIGluIHRoZSB0YWJsZSovXHJcblx0QElucHV0KCkgY3VzdG9tRmlyc3RSb3cgPSBmYWxzZTtcclxuXHRASW5wdXQoKSBoaWdobGlnaHRTZWxlY3RlZENhcmQgPSBmYWxzZTtcclxuXHRASW5wdXQoKSBzaG93QWN0aW9uc0FzTWVudSA9IGZhbHNlOyAvLyBmbGFnZSB0byBzaG93IGFjdGlvbiBpbiBtZW51IG9yIHNpZGUgYnkgc2lkZVxyXG5cdEBJbnB1dCgpXHJcblx0ZmlsdGVyUGFyYW1zID0ge307XHJcblxyXG5cdEBJbnB1dCgpIHNraXBBZ2dyZWdhdGlvbjogJ25ldmVyJyB8ICdvblBhZ2VDaGFuZ2UnID0gJ29uUGFnZUNoYW5nZSc7XHJcblx0QElucHV0KCkgY3VzdG9tVXJsOiB7IHVybDogc3RyaW5nOyBtZXRob2Q6ICdQT1NUJyB8ICdHRVQnIH07XHJcblx0QElucHV0KCkgZm9ybWF0ID0gJ01NTU0gZCwgeSc7XHJcblxyXG5cdHJvd3MgPSBbXTtcclxuXHR0b3RhbFJlY29yZHMgPSAwO1xyXG5cdG15RGF0YVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cdGxvYWRpbmc7XHJcblx0c29ydGluZyA9IGZhbHNlO1xyXG5cdEBJbnB1dCgpIHBhZ2VTaXplczogQXJyYXk8eyBsYWJlbDogc3RyaW5nOyBzaXplOiBudW1iZXIgfT4gPSBbXTtcclxuXHJcblx0aW5pdGlhbGl6ZWQgPSBmYWxzZTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIGFkYXB0ZXI6IEFkYXB0ZXJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBjYWxsQXBpOiBDYWxsQXBpU2VydmljZSxcclxuXHRcdHByaXZhdGUgZHluYW1pY1RhYmxlU2VydmljZTogRHluYW1pY1RhYmxlU2VydmljZSxcclxuXHRcdHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG5cdCkge31cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLm15RGF0YVN1YnNjcmlwdGlvbiA9IHRoaXMuZHluYW1pY1RhYmxlU2VydmljZS5yZWZyZXNoRGF0YS5waXBlKHN0YXJ0V2l0aChudWxsKSkuc3Vic2NyaWJlKChmaWx0ZXJEYXRhKSA9PiB7XHJcblx0XHRcdGlmIChmaWx0ZXJEYXRhKSB7XHJcblx0XHRcdFx0dGhpcy5maWx0ZXJQYXJhbXMgPSB7IC4uLmZpbHRlckRhdGEgfTtcclxuXHRcdFx0XHQvLyByZXNldCBwYWdlIG51bWJlciB3aGVuIHN0YXJ0IG5ldyBmaWx0ZXJpbmdcclxuXHRcdFx0XHR0aGlzLl9yZXNldFBhZ2VOdW1iZXIoKTtcclxuXHRcdFx0fVxyXG5cdFx0XHR0aGlzLmdldERhdGEoKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKSB7XHJcblx0XHR0aGlzLm15RGF0YVN1YnNjcmlwdGlvbiA/IHRoaXMubXlEYXRhU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkgOiAnJztcclxuXHR9XHJcblxyXG5cdG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuXHRcdGNvbnN0IGlzRmlyc3RDaGFuZ2UgPSBPYmplY3QudmFsdWVzKGNoYW5nZXMpLnNvbWUoKGMpID0+IGMuaXNGaXJzdENoYW5nZSgpKTtcclxuXHRcdGlmIChpc0ZpcnN0Q2hhbmdlKSB7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCBoYXNDaGFuZ2VkID0gKGl0ZW1zOiBzdHJpbmdbXSkgPT5cclxuXHRcdFx0aXRlbXMuc29tZSgoa2V5KSA9PiB7XHJcblx0XHRcdFx0Y29uc3QgaXNFcXVhbCA9IF8uaXNFcXVhbChjaGFuZ2VzW2tleV0/LnByZXZpb3VzVmFsdWUgfHwgbnVsbCwgY2hhbmdlc1trZXldPy5jdXJyZW50VmFsdWUgfHwgbnVsbCk7XHJcblx0XHRcdFx0cmV0dXJuICFpc0VxdWFsO1xyXG5cdFx0XHR9KTtcclxuXHJcblx0XHRpZiAoaGFzQ2hhbmdlZChbJ3F1ZXJ5UGFyYW0nLCAncXVpY2tGaWx0ZXInLCAnY3VzdG9tRmlsdGVycyddKSkge1xyXG5cdFx0XHRpZiAodGhpcy5pbml0aWFsaXplZCkge1xyXG5cdFx0XHRcdHRoaXMuX3Jlc2V0UGFnZU51bWJlcigpOyAvLyBSZXNldCBwYWdlIG51bWJlciBiZWZvcmUgcmVjYWxsaW5nIEFQSSB3aXRoIGZpbHRlcnNcclxuXHRcdFx0fVxyXG5cdFx0XHR0aGlzLmdldERhdGEoKTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAoaGFzQ2hhbmdlZChbJ3NvcnRpbmdCeSddKSkge1xyXG5cdFx0XHR0aGlzLmdldERhdGEoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX3Jlc2V0UGFnZU51bWJlcigpIHtcclxuXHRcdHRoaXMuX3BhZ2VOdW1iZXIgPSAxO1xyXG5cdFx0dGhpcy5vblBhZ2VDaGFuZ2UuZW1pdCh0aGlzLl9wYWdlTnVtYmVyKTtcclxuXHRcdHRoaXMub25QYWdlLmVtaXQoe1xyXG5cdFx0XHRwYWdlSW5kZXg6IHRoaXMuX3BhZ2VOdW1iZXIsXHJcblx0XHRcdHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplLFxyXG5cdFx0XHRsZW5ndGg6IHRoaXMudG90YWxSZWNvcmRzXHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGdldERhdGEocGF5bG9hZDogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9LCBoZWFkZXJzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge30pIHtcclxuXHRcdHRoaXMubG9hZGluZyA9IHRydWU7IC8vIGludGVybmFsIGxvYWRpbmdcclxuXHRcdHRoaXMub25Mb2FkaW5nLmVtaXQodHJ1ZSk7IC8vIGV4dGVybmFsIGxvYWRpbmdcclxuXHRcdGxldCBwYXJhbXMgPSB7XHJcblx0XHRcdC4uLih0aGlzLnJhbmdlID8geyBkdWJsaW5jb3JlX2NyZWF0ZWRfYWdnOiB0aGlzLnJhbmdlIH0gOiB7fSksXHJcblx0XHRcdC4uLnRoaXMuZmlsdGVyUGFyYW1zLCAvLyB1c2VkIHRvIGdldCBmaWx0ZXIgZGF0YSBhbmQgc2V0IGl0IGluIG91ciBwYXJhbXNcclxuXHRcdFx0Li4udGhpcy5xdWVyeVBhcmFtLCAvLyB1c2VkIHRvIGdldCBwYXJhbXMgZnJvbSBvdXIgY29uZmlnXHJcblx0XHRcdC4uLnRoaXMucXVpY2tGaWx0ZXIsXHJcblx0XHRcdC4uLihPYmplY3Qua2V5cyh0aGlzLnNvcnRpbmdCeSB8fCB7fSkubGVuZ3RoXHJcblx0XHRcdFx0PyB7XHJcblx0XHRcdFx0XHRcdHNvcnRCeTogdGhpcy5zb3J0aW5nQnk/LnNvcnRCeSxcclxuXHRcdFx0XHRcdFx0c29ydE9yZGVyOiB0aGlzLnNvcnRpbmdCeT8uc29ydE9yZGVyXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0OiB7fSksXHJcblx0XHRcdGN1cnJlbnRQYWdlSW5kZXg6ICt0aGlzLnBhZ2VOdW0gLSAxLFxyXG5cdFx0XHQuLi4odGhpcy5wYWdlU2l6ZSA/IHsgcGFnZVNpemU6IHRoaXMucGFnZVNpemUgfSA6IHt9KSxcclxuXHRcdFx0b2Zmc2V0OiAwLFxyXG5cdFx0XHQuLi5wYXlsb2FkXHJcblx0XHR9O1xyXG5cclxuXHRcdC8vIGRvbid0IHJlZnJlc2ggYWxsIHRhYmxlIGluIGNhc2Ugb2Ygc29ydGluZyBvbmx5XHJcblx0XHRpZiAoIXRoaXMuc29ydGluZyAmJiB0aGlzLmlzTGVnYWN5TW9kZSkge1xyXG5cdFx0XHQvLyB1c2VkIHRvIG5vdCByZWZyZXNoaW5nIGFsbCB0YWJsZSBpbiBjYXNlIG9mIHNvcnRpbmcgc2luY2UgdGFibGUgbG9zZSBzb3J0aW5nIHN0YXRlIHdoZW4gcmVmcmVzaCBhbGwgdGFibGVcclxuXHRcdFx0dGhpcy5yb3dzID0gW107IC8vIHVzZWQgdG8gcmVmcmVzaCB0YWJsZSB0byBmZWVsIGNoYW5nZXMgaW4gYWN0aW9ucyB3aGVuIHBlcmZvcm0gYWN0aW9uIGFuZCBuZWVkIHRvIHJlZnJlc2ggYWN0aW9uc1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5zb3J0aW5nID0gZmFsc2U7IC8vIHJlc2V0IHNvcnRpbmcgc3RhdHVzIHRvIGZhbHNlIGFuZCBmb3IgbmV4dCBzb3J0aW5nIGZ1bmMgc29ydGluZyBzZXQgaXQgdG8gdHJ1ZSBhZ2FpblxyXG5cclxuXHRcdGNvbnN0IF9xdWVyeSA9IHtcclxuXHRcdFx0cGFnZVByb3ZpZGVyOiB0aGlzLnBhZ2VQcm92aWRlcixcclxuXHRcdFx0Li4ucGFyYW1zXHJcblx0XHR9O1xyXG5cdFx0Y29uc3QgX29wdGlvbnMgPSB7XHJcblx0XHRcdGhlYWRlcnM6IHtcclxuXHRcdFx0XHQuLi50aGlzLmhlYWRlcnMsXHJcblx0XHRcdFx0Li4uaGVhZGVyc1xyXG5cdFx0XHR9XHJcblx0XHR9O1xyXG5cclxuXHRcdGNvbnN0IHF1ZXJ5JCA9IHRoaXMuY3VzdG9tVXJsXHJcblx0XHRcdD8gdGhpcy5jYWxsQXBpLmN1c3RvbVF1ZXJ5KFxyXG5cdFx0XHRcdFx0dGhpcy5jdXN0b21VcmwsXHJcblx0XHRcdFx0XHR7XHJcblx0XHRcdFx0XHRcdC4uLnBhcmFtcyxcclxuXHRcdFx0XHRcdFx0Li4uKHRoaXMuY3VzdG9tRmlsdGVycz8ucGFyYW1zIHx8IHt9KVxyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdF9vcHRpb25zLmhlYWRlcnMsXHJcblx0XHRcdFx0XHR0aGlzLmN1c3RvbUZpbHRlcnM/LnBheWxvYWQgfHwge31cclxuXHRcdFx0XHQpXHJcblx0XHRcdDogdGhpcy5jYWxsQXBpLnF1ZXJ5KF9xdWVyeSwgX29wdGlvbnMpO1xyXG5cclxuXHRcdHF1ZXJ5JFxyXG5cdFx0XHQucGlwZShcclxuXHRcdFx0XHRtYXAoKGRhdGE6IGFueSkgPT4ge1xyXG5cdFx0XHRcdFx0ZGF0YS5lbnRyaWVzLm1hcCgoaXRlbSkgPT4gdGhpcy5hZGFwdGVyLmFkYXB0SW4oaXRlbSwgdGhpcy5maWVsZHMpKTtcclxuXHRcdFx0XHRcdHJldHVybiBkYXRhO1xyXG5cdFx0XHRcdH0pLFxyXG5cdFx0XHRcdGNhdGNoRXJyb3IoKGVycikgPT4ge1xyXG5cdFx0XHRcdFx0dGhyb3cgZXJyO1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdClcclxuXHRcdFx0LnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcblx0XHRcdFx0dGhpcy5vbkxvYWRpbmcuZW1pdChmYWxzZSk7XHJcblx0XHRcdFx0dGhpcy5vbkxvYWQuZW1pdChyZXMpO1xyXG5cdFx0XHRcdGlmICghdGhpcy5pbml0aWFsaXplZCkge1xyXG5cdFx0XHRcdFx0dGhpcy5vbkluaXRpYWxpemUuZW1pdChyZXMpO1xyXG5cdFx0XHRcdFx0dGhpcy5pbml0aWFsaXplZCA9IHRydWU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHJlcy5lbnRyaWVzLmZvckVhY2goKGVsZW1lbnQpID0+IHtcclxuXHRcdFx0XHRcdGlmIChlbGVtZW50LnByb3BlcnRpZXMgJiYgZWxlbWVudC5wcm9wZXJ0aWVzPy5jcmVhdG9yICYmIGVsZW1lbnQucHJvcGVydGllcy5jcmVhdG9yPy5wcm9wZXJ0aWVzKSB7XHJcblx0XHRcdFx0XHRcdGVsZW1lbnQucHJvcGVydGllc1snY3JlYXRvckZ1bGxPYmplY3QnXSA9IHsgLi4uZWxlbWVudC5wcm9wZXJ0aWVzLmNyZWF0b3IgfTtcclxuXHRcdFx0XHRcdFx0ZWxlbWVudC5wcm9wZXJ0aWVzLmNyZWF0b3IgPVxyXG5cdFx0XHRcdFx0XHRcdGVsZW1lbnQucHJvcGVydGllcy5jcmVhdG9yPy5wcm9wZXJ0aWVzPy5maXJzdE5hbWUgK1xyXG5cdFx0XHRcdFx0XHRcdCcgJyArXHJcblx0XHRcdFx0XHRcdFx0ZWxlbWVudC5wcm9wZXJ0aWVzLmNyZWF0b3I/LnByb3BlcnRpZXM/Lmxhc3ROYW1lO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0aWYgKGVsZW1lbnQucHJvcGVydGllcyAmJiBlbGVtZW50LnByb3BlcnRpZXM/LmFzc2lnbmVlKSB7XHJcblx0XHRcdFx0XHRcdGVsZW1lbnQucHJvcGVydGllcy5hc3NpZ25lZSA9IGVsZW1lbnQucHJvcGVydGllcz8uYXNzaWduZWUuZnVsbE5hbWU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy50b3RhbFJlY29yZHMgPSByZXMucmVzdWx0c0NvdW50O1xyXG5cdFx0XHRcdHRoaXMucm93cyA9IHJlcy5lbnRyaWVzO1xyXG5cdFx0XHRcdHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuXHRcdFx0XHQvLyBlbWl0IGRhdGEgdG8gb3V0c2lkZSBpbiBjYXNlIG9mIHNlYXJjaCBwYWdlIGZvciB0aGUgZmlyc3QgdGltZSBvbmx5IHRvIHByZXZlbnQgcmVmcmVzaGluZyBhZ2dyZWdhdGlvbiB3aXRoIGV2ZXJ5IHBhZ2UgY2hhbmdlXHJcblx0XHRcdFx0Ly8gYW5kIGZvciBhbnkgb3RoZXIgcGFnZSB0eXBlIGVtaXQgZGF0YSBkaXJlY3RseSBpbiBhbGwgcGFnZSBudW1iZXJzXHJcblx0XHRcdFx0aWYgKCh0aGlzLmlzU2VhcmNoUGFnZSAmJiB0aGlzLnBhZ2VOdW0gPT09IDEpIHx8ICF0aGlzLmlzU2VhcmNoUGFnZSkgdGhpcy5vbkdldHRpbmdEYXRhLmVtaXQocmVzKTtcclxuXHRcdFx0fSk7XHJcblx0fVxyXG5cclxuXHQvLyBmdW5jdGlvbiB0byBiZSBleGVjdXRlZCB3aGVuIGNsaWNraW5nIG9uIHNpbmdsZSByb3dcclxuXHRyb3dEZXRhaWxzKGV2ZW50KSB7XHJcblx0XHR0aGlzLm9uUm93U2VsZWN0ZWQuZW1pdChldmVudCk7XHJcblx0fVxyXG5cclxuXHRpbmRleERldGFpbHMoZXZlbnQpIHtcclxuXHRcdHRoaXMub25Sb3dJbmRleFNlbGVjdGVkLmVtaXQoZXZlbnQpO1xyXG5cdH1cclxuXHJcblx0Ly9mdW5jdGlvbiB0byBoYW5kbGUgYWxsIG9wZXJhdGlvbnMgb24gc2luZ2xlIHJvdyAoZGVsZXRlICwgZWRpdCAsIC4uLilcclxuXHRwZXJmb3JtQWN0aW9uKGFjdGlvbikge1xyXG5cdFx0dGhpcy5hY3Rpb25PblJvdy5lbWl0KGFjdGlvbik7XHJcblx0fVxyXG5cclxuXHQvLyBoYW5kbGUgc29ydGluZyBmdW5jdGlvbmFsaXR5IG9mIHRoZSB0YWJsZVxyXG5cdG9uU29ydChzb3J0T2JqZWN0KSB7XHJcblx0XHR0aGlzLnNvcnRpbmdCeSA9IHNvcnRPYmplY3Q7XHJcblx0XHR0aGlzLnNvcnRpbmcgPSB0cnVlO1xyXG5cdFx0dGhpcy5nZXREYXRhKHt9LCB0aGlzLnNraXBBZ2dyZWdhdGlvbiA9PT0gJ29uUGFnZUNoYW5nZScgPyB7IHNraXBBZ2dyZWdhdGVzOiAndHJ1ZScgfSA6IHt9KTtcclxuXHR9XHJcblxyXG5cdG9uTXVsdGlSb3dTZWxlY3RWYWx1ZShldmVudCkge1xyXG5cdFx0dGhpcy5vbk11bHRpUm93U2VsZWN0ZWQuZW1pdChldmVudCk7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgcGFnaW5hdGlvbkNoYW5nZShldmVudCkge1xyXG5cdFx0dGhpcy5fcGFnZU51bWJlciA9IGV2ZW50O1xyXG5cdFx0dGhpcy5vblBhZ2VDaGFuZ2UuZW1pdChldmVudCk7XHJcblx0XHR0aGlzLm9uUGFnZS5lbWl0KHtcclxuXHRcdFx0cGFnZUluZGV4OiB0aGlzLl9wYWdlTnVtYmVyLFxyXG5cdFx0XHRwYWdlU2l6ZTogdGhpcy5wYWdlU2l6ZSxcclxuXHRcdFx0bGVuZ3RoOiB0aGlzLnRvdGFsUmVjb3Jkc1xyXG5cdFx0fSk7XHJcblx0XHR0aGlzLmdldERhdGEoe30sIHRoaXMuc2tpcEFnZ3JlZ2F0aW9uID09PSAnb25QYWdlQ2hhbmdlJyA/IHsgc2tpcEFnZ3JlZ2F0ZXM6ICd0cnVlJyB9IDoge30pO1xyXG5cdH1cclxuXHJcblx0b25DaGFuZ2VQYWdlU2l6ZShwYWdlU2l6ZTogbnVtYmVyKSB7XHJcblx0XHR0aGlzLnBhZ2VTaXplID0gcGFnZVNpemU7XHJcblx0XHR0aGlzLl9yZXNldFBhZ2VOdW1iZXIoKTtcclxuXHRcdHRoaXMuZ2V0RGF0YSh7fSwgdGhpcy5za2lwQWdncmVnYXRpb24gPT09ICdvblBhZ2VDaGFuZ2UnID8geyBza2lwQWdncmVnYXRlczogJ3RydWUnIH0gOiB7fSk7XHJcblx0fVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ3cmFwcGluZyB0YWJsZS13cmFwcGluZ1wiPlxyXG5cdDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0xlZ2FjeU1vZGVcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJ0YWJsZS1yZXBvc2l0aW9uXCI+XHJcblx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJyb3dzLmxlbmd0aFwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRhYmxlXCI+PC9uZy1jb250YWluZXI+XHJcblx0XHQ8L2Rpdj5cclxuXHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkaW5nXCI+XHJcblx0XHRcdDxjdHMtc3Bpbm5lcj48L2N0cy1zcGlubmVyPlxyXG5cdFx0PC9uZy1jb250YWluZXI+XHJcblx0PC9uZy1jb250YWluZXI+XHJcblxyXG5cdDxkaXYgY2xhc3M9XCJ0YWJsZS1yZXBvc2l0aW9uXCIgKm5nSWY9XCIhaXNMZWdhY3lNb2RlICYmIHJvd3MubGVuZ3RoXCI+XHJcblx0XHQ8bmctY29udGFpbmVyICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0YWJsZVwiPjwvbmctY29udGFpbmVyPlxyXG5cdFx0PG5nLWNvbnRhaW5lclxyXG5cdFx0XHQqbmdJZj1cIiFpbml0aWFsaXplZFwiXHJcblx0XHRcdFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNrZWxldG9uXCJcclxuXHRcdFx0W25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiAxMCB9XCJcclxuXHRcdD48L25nLWNvbnRhaW5lcj5cclxuXHQ8L2Rpdj5cclxuXHJcblx0PGRpdlxyXG5cdFx0Y2xhc3M9XCJwYWdpbmF0aW9uLWluZXItd3JhcGVyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBteS0zXCJcclxuXHRcdFtuZ0NsYXNzXT1cInsgcmVsYXRpdmU6IHBhZ2VTaXplcz8ubGVuZ3RoIH1cIlxyXG5cdFx0Km5nSWY9XCJyb3dzLmxlbmd0aCAmJiB0b3RhbFJlY29yZHMgPiBwYWdlU2l6ZVwiXHJcblx0PlxyXG5cdFx0PGN0cy1wYWdpbmF0aW9uXHJcblx0XHRcdFtwYWdlXT1cInBhZ2VOdW1cIlxyXG5cdFx0XHQoY2hhbmdlKT1cInBhZ2luYXRpb25DaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFtzaXplXT1cInBhZ2VTaXplXCJcclxuXHRcdFx0W2NvdW50XT1cInRvdGFsUmVjb3Jkc1wiXHJcblx0XHQ+PC9jdHMtcGFnaW5hdGlvbj5cclxuXHRcdDxkaXYgY2xhc3M9XCJhYnNvbHV0ZSBuZGZQYWdlU2l6ZXMgZmxleCBnYXAteC0zIGl0ZW1zLWNlbnRlciBtdC0yXCI+XHJcblx0XHRcdDxuZGYtcGFnZS1zaXplcy1saXN0XHJcblx0XHRcdFx0Km5nSWY9XCJwYWdlU2l6ZXM/Lmxlbmd0aFwiXHJcblx0XHRcdFx0W3BhZ2VTaXplc109XCJwYWdlU2l6ZXNcIlxyXG5cdFx0XHRcdFtzZWxlY3RlZFBhZ2VTaXplXT1cInBhZ2VTaXplXCJcclxuXHRcdFx0XHQob25DaGFuZ2VQYWdlU2l6ZSk9XCJvbkNoYW5nZVBhZ2VTaXplKCRldmVudClcIlxyXG5cdFx0XHQ+XHJcblx0XHRcdDwvbmRmLXBhZ2Utc2l6ZXMtbGlzdD5cclxuXHJcblx0XHRcdDxzcGFuICpuZ0lmPVwic2hvd1RvdGFsUmVjb3JkXCI+e3sgJ1RBQkxFLnRvdGFsUmVjb3JkcycgfCB0cmFuc2xhdGU6IHsgY291bnQ6IHRvdGFsUmVjb3JkcyB9IH19PC9zcGFuPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9kaXY+XHJcblxyXG5cdDxuZy1jb250YWluZXJcclxuXHRcdCpuZ0lmPVwiaXNMZWdhY3lNb2RlXCJcclxuXHRcdFtuZ1RlbXBsYXRlT3V0bGV0XT1cImVtcHR5VGVtcGxhdGUgfHwgbGVnYWN5RGVmYXVsdEVtcHR5U3RhdGVcIlxyXG5cdFx0W25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBsb2FkaW5nLCByb3dzOiByb3dzLCBpbml0aWFsaXplZDogaW5pdGlhbGl6ZWQgfVwiXHJcblx0PjwvbmctY29udGFpbmVyPlxyXG5cclxuXHQ8bmctY29udGFpbmVyXHJcblx0XHQqbmdJZj1cIiFpc0xlZ2FjeU1vZGVcIlxyXG5cdFx0W25nVGVtcGxhdGVPdXRsZXRdPVwiZW1wdHlUZW1wbGF0ZSB8fCBkZWZhdWx0RW1wdHlTdGF0ZVwiXHJcblx0XHRbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGxvYWRpbmcsIHJvd3M6IHJvd3MsIGluaXRpYWxpemVkOiBpbml0aWFsaXplZCB9XCJcclxuXHQ+PC9uZy1jb250YWluZXI+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICN0YWJsZT5cclxuXHQ8Y3RzLXRhYmxlXHJcblx0XHRbcm93c109XCJyb3dzXCJcclxuXHRcdFtjb2x1bW5zXT1cImNvbHVtbnNcIlxyXG5cdFx0W3Jlc3BvbnNpdmVDb2x1bW5zXT1cInJlc3BvbnNpdmVDb2x1bW5zXCJcclxuXHRcdFtyb3dDdXJzb3JdPVwicm93Q3Vyc29yXCJcclxuXHRcdFtmdWxsV2lkdGhdPVwiZnVsbFdpZHRoXCJcclxuXHRcdFtlbnRpdHlUeXBlXT1cImVudGl0eVR5cGVcIlxyXG5cdFx0W3ByZWZpeF09XCJwcmVmaXhcIlxyXG5cdFx0W3RvdGFsUmVjb3Jkc109XCJ0b3RhbFJlY29yZHNcIlxyXG5cdFx0W3RhYmxlTW9kZV09XCJ0YWJsZU1vZGVcIlxyXG5cdFx0W2NvbXBvbmVudE5hbWVdPVwiY29tcG9uZW50TmFtZVwiXHJcblx0XHRbbXVsdGlTZWxlY3RSb3dzXT1cIm11bHRpU2VsZWN0Um93c1wiXHJcblx0XHRbdGFibGVBY3Rpb25zXT1cInRhYmxlQWN0aW9uc1wiXHJcblx0XHRbc2hvd0FjdGlvbnNBc01lbnVdPVwic2hvd0FjdGlvbnNBc01lbnVcIlxyXG5cdFx0W2RlZnVsdFNvcnRdPVwiZGVmdWx0U29ydFwiXHJcblx0XHRbZm9ybWF0XT1cImZvcm1hdFwiXHJcblx0XHRbaGlnaGxpZ2h0U2VsZWN0ZWRDYXJkXT1cImhpZ2hsaWdodFNlbGVjdGVkQ2FyZFwiXHJcblx0XHRbY3VzdG9tRmlyc3RSb3ddPVwiY3VzdG9tRmlyc3RSb3dcIlxyXG5cdFx0KG9uUm93U2VsZWN0ZWQpPVwicm93RGV0YWlscygkZXZlbnQpXCJcclxuXHRcdChvblJvd0luZGV4U2VsZWN0ZWQpPVwiaW5kZXhEZXRhaWxzKCRldmVudClcIlxyXG5cdFx0KG9uTXVsdGlSb3dTZWxlY3RlZCk9XCJvbk11bHRpUm93U2VsZWN0VmFsdWUoJGV2ZW50KVwiXHJcblx0XHQoYWN0aW9uT25Sb3cpPVwicGVyZm9ybUFjdGlvbigkZXZlbnQpXCJcclxuXHRcdChvblNvcnRpbmcpPVwib25Tb3J0KCRldmVudClcIlxyXG5cdD48L2N0cy10YWJsZT5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbGVnYWN5RGVmYXVsdEVtcHR5U3RhdGU+XHJcblx0PGRpdiBjbGFzcz1cImVtcHR5LXN0YXRlXCIgKm5nSWY9XCIhbG9hZGluZyAmJiByb3dzLmxlbmd0aCA9PT0gMFwiPlxyXG5cdFx0PGRpdiBjbGFzcz1cInRleHRcIj5cclxuXHRcdFx0e3sgKHByZWZpeCA/IHByZWZpeCArICdub0RhdGEnIDogJ25vRGF0YScpIHwgdHJhbnNsYXRlIH19XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L2Rpdj5cclxuXHQ8ZGl2IGNsYXNzPVwiZW1wdHktc3RhdGVcIiAqbmdJZj1cImxvYWRpbmcgJiYgcm93cy5sZW5ndGggPT09IDBcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJ0ZXh0XCI+XHJcblx0XHRcdHt7IChwcmVmaXggPyBwcmVmaXggKyAnZ2V0dGluZ0RhdGEnIDogJ2dldHRpbmdEYXRhJykgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvZGl2PlxyXG5cdDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNkZWZhdWx0RW1wdHlTdGF0ZT5cclxuXHQ8ZGl2IGNsYXNzPVwiZW1wdHktc3RhdGVcIiAqbmdJZj1cIiFsb2FkaW5nICYmIHJvd3MubGVuZ3RoID09PSAwXCI+XHJcblx0XHQ8ZGl2IGNsYXNzPVwidGV4dFwiPlxyXG5cdFx0XHR7eyAocHJlZml4ID8gcHJlZml4ICsgJ25vRGF0YScgOiAnbm9EYXRhJykgfCB0cmFuc2xhdGUgfX1cclxuXHRcdDwvZGl2PlxyXG5cdDwvZGl2PlxyXG5cdDxkaXYgKm5nSWY9XCJsb2FkaW5nICYmIGluaXRpYWxpemVkXCIgY2xhc3M9XCJsb2FkaW5nLWNvbnRlbnRcIj5cclxuXHRcdDxtYXQtc3Bpbm5lciBbZGlhbWV0ZXJdPVwiMTAwXCI+PC9tYXQtc3Bpbm5lcj5cclxuXHQ8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjc2tlbGV0b24gbGV0LXJvd3M+XHJcblx0PHRhYmxlIGNsYXNzPVwidy1mdWxsXCI+XHJcblx0XHQ8dGhlYWQgKm5nSWY9XCJmYWxzZVwiPlxyXG5cdFx0XHQ8dHIgY2xhc3M9XCJib3JkZXItYiBib3JkZXItZ3JlZW4tOTAwXCI+XHJcblx0XHRcdFx0PHRoICpuZ0lmPVwibXVsdGlTZWxlY3RSb3dzXCIgY2xhc3M9XCJwLTMgcHktNFwiIHN0eWxlPVwid2lkdGg6IDYwcHhcIj5cclxuXHRcdFx0XHRcdDxhcHAtc2tlbGV0b24gd2lkdGg9XCI2MHB4XCIgaGVpZ2h0PVwiMS4zcmVtXCI+PC9hcHAtc2tlbGV0b24+XHJcblx0XHRcdFx0PC90aD5cclxuXHRcdFx0XHQ8dGggKm5nRm9yPVwibGV0IG51bSBvZiBbXS5jb25zdHJ1Y3Rvcihjb2x1bW5zPy5sZW5ndGggfHwgNCk7IGxldCBpID0gaW5kZXhcIiBjbGFzcz1cInB4LTMgcHktNFwiPlxyXG5cdFx0XHRcdFx0PGFwcC1za2VsZXRvbiBbcmFuZG9tV2lkdGhdPVwidHJ1ZVwiIGhlaWdodD1cIjEuN3JlbVwiPjwvYXBwLXNrZWxldG9uPlxyXG5cdFx0XHRcdDwvdGg+XHJcblx0XHRcdDwvdHI+XHJcblx0XHQ8L3RoZWFkPlxyXG5cdFx0PHRib2R5PlxyXG5cdFx0XHQ8dHIgKm5nRm9yPVwibGV0IHJvdyBvZiBbXS5jb25zdHJ1Y3Rvcihyb3dzIHx8IDEwKTsgbGV0IGluZGV4ID0gaW5kZXhcIiBjbGFzcz1cImJvcmRlci1iIGJvcmRlci1ncmF5LTIwMFwiPlxyXG5cdFx0XHRcdDx0ZCAqbmdJZj1cIm11bHRpU2VsZWN0Um93c1wiIGNsYXNzPVwicC0zIHB5LTRcIiBzdHlsZT1cIndpZHRoOiA1MHB4XCI+XHJcblx0XHRcdFx0XHQ8YXBwLXNrZWxldG9uIHdpZHRoPVwiNTBweFwiIGhlaWdodD1cIjEuM3JlbVwiPjwvYXBwLXNrZWxldG9uPlxyXG5cdFx0XHRcdDwvdGQ+XHJcblx0XHRcdFx0PHRkICpuZ0Zvcj1cImxldCBjb2wgb2YgW10uY29uc3RydWN0b3IoY29sdW1ucz8ubGVuZ3RoIHx8IDQpOyBsZXQgaSA9IGluZGV4XCIgY2xhc3M9XCJwLTMgcHktNFwiPlxyXG5cdFx0XHRcdFx0PGFwcC1za2VsZXRvbiBbcmFuZG9tV2lkdGhdPVwidHJ1ZVwiIGhlaWdodD1cIjEuM3JlbVwiPjwvYXBwLXNrZWxldG9uPlxyXG5cdFx0XHRcdDwvdGQ+XHJcblx0XHRcdDwvdHI+XHJcblx0XHQ8L3Rib2R5PlxyXG5cdDwvdGFibGU+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -1,51 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { DynamicTableComponent } from './dynamic-table/dynamic-table.component';
4
- import { TableModule } from '../table/table.module';
5
- import { PaginationModule } from '../../components/pagination/pagination.module';
6
- import { LibrarySharedModule } from '../../shared/libraryShared.module';
7
- import { TranslateModule } from '@ngx-translate/core';
8
- import { EmptyTemplateDirective } from './directives/empty-state.directive';
9
- import { SkeletonModule } from '../skeleton';
10
- import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
11
- import * as i0 from "@angular/core";
12
- /**
13
- * @title
14
- * Dynamic Table API
15
- */
16
- export class DynamicTableModule {
17
- }
18
- DynamicTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
19
- DynamicTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicTableModule, declarations: [DynamicTableComponent, EmptyTemplateDirective], imports: [CommonModule,
20
- TableModule,
21
- PaginationModule,
22
- LibrarySharedModule,
23
- TranslateModule,
24
- SkeletonModule,
25
- MatProgressSpinnerModule], exports: [DynamicTableComponent, EmptyTemplateDirective] });
26
- DynamicTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicTableModule, imports: [[
27
- CommonModule,
28
- TableModule,
29
- PaginationModule,
30
- LibrarySharedModule,
31
- TranslateModule,
32
- SkeletonModule,
33
- MatProgressSpinnerModule
34
- ]] });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicTableModule, decorators: [{
36
- type: NgModule,
37
- args: [{
38
- declarations: [DynamicTableComponent, EmptyTemplateDirective],
39
- imports: [
40
- CommonModule,
41
- TableModule,
42
- PaginationModule,
43
- LibrarySharedModule,
44
- TranslateModule,
45
- SkeletonModule,
46
- MatProgressSpinnerModule
47
- ],
48
- exports: [DynamicTableComponent, EmptyTemplateDirective]
49
- }]
50
- }] });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy10YWJsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtdGFibGUvZHluYW1pYy10YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOztBQUU5RTs7O0dBR0c7QUFjSCxNQUFNLE9BQU8sa0JBQWtCOztnSEFBbEIsa0JBQWtCO2lIQUFsQixrQkFBa0IsaUJBWmYscUJBQXFCLEVBQUUsc0JBQXNCLGFBRTNELFlBQVk7UUFDWixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLG1CQUFtQjtRQUNuQixlQUFlO1FBQ2YsY0FBYztRQUNkLHdCQUF3QixhQUVmLHFCQUFxQixFQUFFLHNCQUFzQjtpSEFFM0Msa0JBQWtCLFlBWHJCO1lBQ1IsWUFBWTtZQUNaLFdBQVc7WUFDWCxnQkFBZ0I7WUFDaEIsbUJBQW1CO1lBQ25CLGVBQWU7WUFDZixjQUFjO1lBQ2Qsd0JBQXdCO1NBQ3hCOzRGQUdXLGtCQUFrQjtrQkFiOUIsUUFBUTttQkFBQztvQkFDVCxZQUFZLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxzQkFBc0IsQ0FBQztvQkFDN0QsT0FBTyxFQUFFO3dCQUNSLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLHdCQUF3QjtxQkFDeEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUUsc0JBQXNCLENBQUM7aUJBQ3hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRHluYW1pY1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9keW5hbWljLXRhYmxlL2R5bmFtaWMtdGFibGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFibGVNb2R1bGUgfSBmcm9tICcuLi90YWJsZS90YWJsZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBQYWdpbmF0aW9uTW9kdWxlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24ubW9kdWxlJztcclxuaW1wb3J0IHsgTGlicmFyeVNoYXJlZE1vZHVsZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9saWJyYXJ5U2hhcmVkLm1vZHVsZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBFbXB0eVRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2VtcHR5LXN0YXRlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNrZWxldG9uTW9kdWxlIH0gZnJvbSAnLi4vc2tlbGV0b24nO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcclxuXHJcbi8qKlxyXG4gKiBAdGl0bGVcclxuICogRHluYW1pYyBUYWJsZSBBUElcclxuICovXHJcbkBOZ01vZHVsZSh7XHJcblx0ZGVjbGFyYXRpb25zOiBbRHluYW1pY1RhYmxlQ29tcG9uZW50LCBFbXB0eVRlbXBsYXRlRGlyZWN0aXZlXSxcclxuXHRpbXBvcnRzOiBbXHJcblx0XHRDb21tb25Nb2R1bGUsXHJcblx0XHRUYWJsZU1vZHVsZSxcclxuXHRcdFBhZ2luYXRpb25Nb2R1bGUsXHJcblx0XHRMaWJyYXJ5U2hhcmVkTW9kdWxlLFxyXG5cdFx0VHJhbnNsYXRlTW9kdWxlLFxyXG5cdFx0U2tlbGV0b25Nb2R1bGUsXHJcblx0XHRNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGVcclxuXHRdLFxyXG5cdGV4cG9ydHM6IFtEeW5hbWljVGFibGVDb21wb25lbnQsIEVtcHR5VGVtcGxhdGVEaXJlY3RpdmVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljVGFibGVNb2R1bGUge31cclxuIl19
@@ -1,5 +0,0 @@
1
- export * from './services/dynamic-table.service';
2
- export * from './directives/empty-state.directive';
3
- export * from './dynamic-table.module';
4
- export * from './dynamic-table/dynamic-table.component';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy10YWJsZS9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMseUNBQXlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2R5bmFtaWMtdGFibGUuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9lbXB0eS1zdGF0ZS5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtdGFibGUubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9keW5hbWljLXRhYmxlL2R5bmFtaWMtdGFibGUuY29tcG9uZW50JztcclxuIl19
@@ -1,16 +0,0 @@
1
- import { Injectable, EventEmitter } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class DynamicTableService {
4
- constructor() {
5
- this.refreshData = new EventEmitter();
6
- }
7
- }
8
- DynamicTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicTableService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
9
- DynamicTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicTableService, providedIn: 'root' });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicTableService, decorators: [{
11
- type: Injectable,
12
- args: [{
13
- providedIn: 'root'
14
- }]
15
- }], ctorParameters: function () { return []; } });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy10YWJsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLXRhYmxlL3NlcnZpY2VzL2R5bmFtaWMtdGFibGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFHLFlBQVksRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFNekQsTUFBTSxPQUFPLG1CQUFtQjtJQUU5QjtRQURBLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUNqQixDQUFDOztpSEFGTixtQkFBbUI7cUhBQW5CLG1CQUFtQixjQUZsQixNQUFNOzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlICwgRXZlbnRFbWl0dGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY1RhYmxlU2VydmljZSB7XHJcbiAgcmVmcmVzaERhdGEgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxufVxyXG4iXX0=
@@ -1,68 +0,0 @@
1
- import { Component, Input, ViewChild, ViewContainerRef, ViewEncapsulation } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "../../../core/services/extension/extension.service";
4
- export class DynamicColumnComponent {
5
- constructor(extensions, componentFactoryResolver, cdr) {
6
- this.extensions = extensions;
7
- this.componentFactoryResolver = componentFactoryResolver;
8
- this.cdr = cdr;
9
- }
10
- ngOnInit() {
11
- const componentType = this.extensions.getComponentById(this.id);
12
- if (componentType) {
13
- const factory = this.componentFactoryResolver.resolveComponentFactory(componentType);
14
- if (factory) {
15
- this.content.clear();
16
- this.componentRef = this.content.createComponent(factory, 0);
17
- this.updateInstance();
18
- }
19
- }
20
- }
21
- ngOnChanges(changes) {
22
- this.updateInstance();
23
- }
24
- ngOnDestroy() {
25
- if (this.componentRef) {
26
- this.componentRef.destroy();
27
- this.componentRef = null;
28
- }
29
- }
30
- updateInstance() {
31
- if (this.componentRef && this.componentRef.instance) {
32
- this.componentRef.instance.context = this.context;
33
- this.componentRef.instance.column = this.column;
34
- if (this.componentRef.instance.update) {
35
- this.componentRef.instance.update();
36
- }
37
- }
38
- }
39
- }
40
- DynamicColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicColumnComponent, deps: [{ token: i1.ExtensionService }, { token: i0.ComponentFactoryResolver }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
41
- DynamicColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicColumnComponent, selector: "cts-dynamic-column", inputs: { id: "id", context: "context", column: "column" }, host: { classAttribute: "cts-dynamic-column" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: ` <ng-container #content></ng-container> `, isInline: true, styles: ["\n\t\t\t.cts-dynamic-column {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t}\n\t\t"], encapsulation: i0.ViewEncapsulation.None });
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicColumnComponent, decorators: [{
43
- type: Component,
44
- args: [{
45
- selector: 'cts-dynamic-column',
46
- template: ` <ng-container #content></ng-container> `,
47
- encapsulation: ViewEncapsulation.None,
48
- host: { class: 'cts-dynamic-column' },
49
- styles: [
50
- `
51
- .cts-dynamic-column {
52
- display: flex;
53
- align-items: center;
54
- }
55
- `
56
- ]
57
- }]
58
- }], ctorParameters: function () { return [{ type: i1.ExtensionService }, { type: i0.ComponentFactoryResolver }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { content: [{
59
- type: ViewChild,
60
- args: ['content', { read: ViewContainerRef, static: true }]
61
- }], id: [{
62
- type: Input
63
- }], context: [{
64
- type: Input
65
- }], column: [{
66
- type: Input
67
- }] } });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9keW5hbWljLWNvbHVtbi9keW5hbWljLWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVOLFNBQVMsRUFHVCxLQUFLLEVBS0wsU0FBUyxFQUNULGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsTUFBTSxlQUFlLENBQUM7OztBQWlCdkIsTUFBTSxPQUFPLHNCQUFzQjtJQWNsQyxZQUNTLFVBQTRCLEVBQzVCLHdCQUFrRCxFQUNsRCxHQUFzQjtRQUZ0QixlQUFVLEdBQVYsVUFBVSxDQUFrQjtRQUM1Qiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELFFBQUcsR0FBSCxHQUFHLENBQW1CO0lBQzVCLENBQUM7SUFFSixRQUFRO1FBQ1AsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEUsSUFBSSxhQUFhLEVBQUU7WUFDbEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLHVCQUF1QixDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3JGLElBQUksT0FBTyxFQUFFO2dCQUNaLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM3RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7YUFDdEI7U0FDRDtJQUNGLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDakMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXO1FBQ1YsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7U0FDekI7SUFDRixDQUFDO0lBRU8sY0FBYztRQUNyQixJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUU7WUFDcEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDbEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDaEQsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7Z0JBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ3BDO1NBQ0Q7SUFDRixDQUFDOztvSEFuRFcsc0JBQXNCO3dHQUF0QixzQkFBc0IscVBBQ0osZ0JBQWdCLGdFQWJwQywwQ0FBMEM7NEZBWXhDLHNCQUFzQjtrQkFkbEMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsMENBQTBDO29CQUNwRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixFQUFFO29CQUNyQyxNQUFNLEVBQUU7d0JBQ1A7Ozs7O0dBS0M7cUJBQ0Q7aUJBQ0Q7OEtBR0EsT0FBTztzQkFETixTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUk5RCxFQUFFO3NCQURELEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQUdOLE1BQU07c0JBREwsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXHJcblx0Q29tcG9uZW50LFxyXG5cdENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuXHRDb21wb25lbnRSZWYsXHJcblx0SW5wdXQsXHJcblx0T25DaGFuZ2VzLFxyXG5cdE9uRGVzdHJveSxcclxuXHRPbkluaXQsXHJcblx0U2ltcGxlQ2hhbmdlcyxcclxuXHRWaWV3Q2hpbGQsXHJcblx0Vmlld0NvbnRhaW5lclJlZixcclxuXHRWaWV3RW5jYXBzdWxhdGlvblxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBFeHRlbnNpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy9leHRlbnNpb24vZXh0ZW5zaW9uLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdjdHMtZHluYW1pYy1jb2x1bW4nLFxyXG5cdHRlbXBsYXRlOiBgIDxuZy1jb250YWluZXIgI2NvbnRlbnQ+PC9uZy1jb250YWluZXI+IGAsXHJcblx0ZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuXHRob3N0OiB7IGNsYXNzOiAnY3RzLWR5bmFtaWMtY29sdW1uJyB9LFxyXG5cdHN0eWxlczogW1xyXG5cdFx0YFxyXG5cdFx0XHQuY3RzLWR5bmFtaWMtY29sdW1uIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdH1cclxuXHRcdGBcclxuXHRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljQ29sdW1uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcblx0QFZpZXdDaGlsZCgnY29udGVudCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pXHJcblx0Y29udGVudDogVmlld0NvbnRhaW5lclJlZjtcclxuXHJcblx0QElucHV0KClcclxuXHRpZDogc3RyaW5nO1xyXG5cclxuXHRASW5wdXQoKVxyXG5cdGNvbnRleHQ6IGFueTtcclxuXHRASW5wdXQoKVxyXG5cdGNvbHVtbjogYW55O1xyXG5cclxuXHRwcml2YXRlIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT47XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHJpdmF0ZSBleHRlbnNpb25zOiBFeHRlbnNpb25TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuXHRcdHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG5cdCkge31cclxuXHJcblx0bmdPbkluaXQoKSB7XHJcblx0XHRjb25zdCBjb21wb25lbnRUeXBlID0gdGhpcy5leHRlbnNpb25zLmdldENvbXBvbmVudEJ5SWQodGhpcy5pZCk7XHJcblx0XHRpZiAoY29tcG9uZW50VHlwZSkge1xyXG5cdFx0XHRjb25zdCBmYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoY29tcG9uZW50VHlwZSk7XHJcblx0XHRcdGlmIChmYWN0b3J5KSB7XHJcblx0XHRcdFx0dGhpcy5jb250ZW50LmNsZWFyKCk7XHJcblx0XHRcdFx0dGhpcy5jb21wb25lbnRSZWYgPSB0aGlzLmNvbnRlbnQuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnksIDApO1xyXG5cdFx0XHRcdHRoaXMudXBkYXRlSW5zdGFuY2UoKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0bmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG5cdFx0dGhpcy51cGRhdGVJbnN0YW5jZSgpO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKSB7XHJcblx0XHRpZiAodGhpcy5jb21wb25lbnRSZWYpIHtcclxuXHRcdFx0dGhpcy5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xyXG5cdFx0XHR0aGlzLmNvbXBvbmVudFJlZiA9IG51bGw7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIHVwZGF0ZUluc3RhbmNlKCkge1xyXG5cdFx0aWYgKHRoaXMuY29tcG9uZW50UmVmICYmIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlKSB7XHJcblx0XHRcdHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLmNvbnRleHQgPSB0aGlzLmNvbnRleHQ7XHJcblx0XHRcdHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLmNvbHVtbiA9IHRoaXMuY29sdW1uO1xyXG5cdFx0XHRpZiAodGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UudXBkYXRlKSB7XHJcblx0XHRcdFx0dGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UudXBkYXRlKCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIl19