@theseam/ui-common 0.4.28 → 0.4.30

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 (616) hide show
  1. package/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +1 -1
  2. package/datatable/datatable/datatable.component.d.ts +61 -9
  3. package/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.d.ts +25 -0
  4. package/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.d.ts +18 -0
  5. package/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.d.ts +16 -0
  6. package/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.d.ts +15 -0
  7. package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -2
  8. package/datatable/datatable.module.d.ts +29 -20
  9. package/datatable/directives/datatable-column-filter-tpl.directive.d.ts +8 -0
  10. package/datatable/directives/datatable-column-filter.directive.d.ts +10 -0
  11. package/datatable/models/action-item-column-position.d.ts +13 -0
  12. package/datatable/models/columns-data-filter.d.ts +57 -0
  13. package/datatable/models/columns-data-filters/models.d.ts +65 -0
  14. package/datatable/models/columns-data-filters/search-date.columns-data-filter.d.ts +23 -0
  15. package/datatable/models/columns-data-filters/search-numeric.columns-data-filter.d.ts +22 -0
  16. package/datatable/models/columns-data-filters/search-text.columns-data-filter.d.ts +21 -0
  17. package/datatable/models/columns-data-filters/utils.d.ts +15 -0
  18. package/datatable/models/datatable-config.d.ts +97 -0
  19. package/datatable/models/table-column.d.ts +22 -1
  20. package/datatable/public-api.d.ts +14 -0
  21. package/datatable/services/columns-filters.service.d.ts +29 -0
  22. package/datatable/services/columns-manager.service.d.ts +7 -0
  23. package/datatable/utils/create-action-menu-column.d.ts +1 -1
  24. package/esm2020/asset-reader/asset-reader-helper.service.mjs +4 -4
  25. package/esm2020/asset-reader/asset-reader.module.mjs +5 -5
  26. package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +4 -4
  27. package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +5 -5
  28. package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
  29. package/esm2020/breadcrumbs/breadcrumbs.service.mjs +4 -4
  30. package/esm2020/buttons/badge-button/badge-button.component.mjs +7 -7
  31. package/esm2020/buttons/button/button.component.mjs +10 -10
  32. package/esm2020/buttons/buttons.module.mjs +5 -5
  33. package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
  34. package/esm2020/buttons/toggle-button/toggle-button.component.mjs +4 -4
  35. package/esm2020/card/card-action/card-action.component.mjs +4 -4
  36. package/esm2020/card/card-body/card-body.component.mjs +4 -4
  37. package/esm2020/card/card-footer/card-footer.component.mjs +4 -4
  38. package/esm2020/card/card-header/card-header.component.mjs +4 -4
  39. package/esm2020/card/card.component.mjs +4 -4
  40. package/esm2020/card/card.module.mjs +5 -5
  41. package/esm2020/carousel/carousel-slide.directive.mjs +4 -4
  42. package/esm2020/carousel/carousel.component.mjs +4 -4
  43. package/esm2020/carousel/carousel.module.mjs +5 -5
  44. package/esm2020/checkbox/checkbox.component.mjs +4 -4
  45. package/esm2020/checkbox/checkbox.module.mjs +5 -5
  46. package/esm2020/confirm-dialog/confirm-click.directive.mjs +4 -4
  47. package/esm2020/confirm-dialog/confirm-dialog.component.mjs +4 -4
  48. package/esm2020/confirm-dialog/confirm-dialog.module.mjs +5 -5
  49. package/esm2020/confirm-dialog/confirm-dialog.service.mjs +4 -4
  50. package/esm2020/data-exporter/data-exporter.module.mjs +5 -5
  51. package/esm2020/data-exporter/exporters/csv-exporter.mjs +4 -4
  52. package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +4 -4
  53. package/esm2020/data-filters/data-filters.module.mjs +5 -5
  54. package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +4 -4
  55. package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +4 -4
  56. package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +4 -4
  57. package/esm2020/datatable/datatable/datatable.component.mjs +241 -32
  58. package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +5 -5
  59. package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +4 -4
  60. package/esm2020/datatable/datatable-column/datatable-column.component.mjs +4 -4
  61. package/esm2020/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.mjs +55 -0
  62. package/esm2020/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.mjs +54 -0
  63. package/esm2020/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.mjs +48 -0
  64. package/esm2020/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.mjs +44 -0
  65. package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +4 -4
  66. package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -4
  67. package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +4 -4
  68. package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +4 -4
  69. package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +4 -4
  70. package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +4 -4
  71. package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +4 -4
  72. package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +4 -4
  73. package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +4 -4
  74. package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +4 -4
  75. package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -4
  76. package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +4 -4
  77. package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +4 -4
  78. package/esm2020/datatable/datatable.module.mjs +53 -11
  79. package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +4 -4
  80. package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +4 -4
  81. package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +4 -4
  82. package/esm2020/datatable/directives/datatable-column-filter-tpl.directive.mjs +16 -0
  83. package/esm2020/datatable/directives/datatable-column-filter.directive.mjs +26 -0
  84. package/esm2020/datatable/directives/datatable-filter.directive.mjs +4 -4
  85. package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +4 -4
  86. package/esm2020/datatable/models/action-item-column-position.mjs +5 -0
  87. package/esm2020/datatable/models/columns-data-filter.mjs +10 -0
  88. package/esm2020/datatable/models/columns-data-filters/models.mjs +74 -0
  89. package/esm2020/datatable/models/columns-data-filters/search-date.columns-data-filter.mjs +113 -0
  90. package/esm2020/datatable/models/columns-data-filters/search-numeric.columns-data-filter.mjs +104 -0
  91. package/esm2020/datatable/models/columns-data-filters/search-text.columns-data-filter.mjs +86 -0
  92. package/esm2020/datatable/models/columns-data-filters/utils.mjs +28 -0
  93. package/esm2020/datatable/models/datatable-config.mjs +3 -0
  94. package/esm2020/datatable/models/table-column.mjs +1 -1
  95. package/esm2020/datatable/public-api.mjs +15 -1
  96. package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
  97. package/esm2020/datatable/services/columns-filters.service.mjs +109 -0
  98. package/esm2020/datatable/services/columns-manager.service.mjs +30 -5
  99. package/esm2020/datatable/services/datatable-column-changes.service.mjs +4 -4
  100. package/esm2020/datatable/services/datatable-preferences.service.mjs +4 -4
  101. package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +4 -4
  102. package/esm2020/datatable/utils/create-action-menu-column.mjs +4 -3
  103. package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +4 -4
  104. package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +4 -4
  105. package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +4 -4
  106. package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +5 -5
  107. package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +5 -5
  108. package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +4 -4
  109. package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +4 -4
  110. package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +4 -4
  111. package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +4 -4
  112. package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +4 -4
  113. package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
  114. package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
  115. package/esm2020/dynamic/dynamic-value-helper.service.mjs +4 -4
  116. package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
  117. package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +4 -4
  118. package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +5 -5
  119. package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +4 -4
  120. package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +4 -4
  121. package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
  122. package/esm2020/form-field/form-field-error.directive.mjs +4 -4
  123. package/esm2020/form-field/form-field-help-text.directive.mjs +4 -4
  124. package/esm2020/form-field/form-field-label-tpl.directive.mjs +4 -4
  125. package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
  126. package/esm2020/form-field/form-field.component.mjs +4 -4
  127. package/esm2020/form-field/form-field.module.mjs +5 -5
  128. package/esm2020/form-field/input.directive.mjs +4 -4
  129. package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +4 -4
  130. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
  131. package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +4 -4
  132. package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +4 -4
  133. package/esm2020/form-field-error/form-field-error.module.mjs +5 -5
  134. package/esm2020/framework/base-layout/base-layout.component.mjs +16 -6
  135. package/esm2020/framework/base-layout/base-layout.module.mjs +10 -5
  136. package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +4 -4
  137. package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +4 -4
  138. package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +4 -4
  139. package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +22 -6
  140. package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +4 -4
  141. package/esm2020/framework/base-layout/directives/base-layout-side-bar-header.directive.mjs +16 -0
  142. package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +4 -4
  143. package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +4 -4
  144. package/esm2020/framework/base-layout/index.mjs +2 -1
  145. package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +4 -4
  146. package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -4
  147. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +4 -4
  148. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +4 -4
  149. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +4 -4
  150. package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +4 -4
  151. package/esm2020/framework/dashboard/dashboard.component.mjs +4 -4
  152. package/esm2020/framework/dashboard/dashboard.module.mjs +5 -5
  153. package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
  154. package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +4 -4
  155. package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +4 -4
  156. package/esm2020/framework/nav/horizontal-nav/horizontal-nav.component.mjs +55 -0
  157. package/esm2020/framework/nav/index.mjs +6 -0
  158. package/esm2020/framework/nav/nav-item/nav-item.component.mjs +227 -0
  159. package/esm2020/framework/nav/nav-utils.mjs +107 -0
  160. package/esm2020/framework/nav/nav.models.mjs +2 -0
  161. package/esm2020/framework/nav/nav.module.mjs +67 -0
  162. package/esm2020/framework/nav/nav.service.mjs +204 -0
  163. package/esm2020/framework/public-api.mjs +2 -1
  164. package/esm2020/framework/schema-form/schema-form-framework.component.mjs +4 -4
  165. package/esm2020/framework/schema-form/schema-form-framework.mjs +4 -4
  166. package/esm2020/framework/schema-form/schema-form.module.mjs +5 -5
  167. package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +4 -4
  168. package/esm2020/framework/schema-form-controls/schema-form-divider/schema-form-divider.component.mjs +4 -4
  169. package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +4 -4
  170. package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +4 -4
  171. package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +4 -4
  172. package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +4 -4
  173. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +4 -4
  174. package/esm2020/framework/schema-form-controls/schema-form-tel/schema-form-tel.component.mjs +4 -4
  175. package/esm2020/framework/schema-form-controls/schema-form-tiled-select/schema-form-tiled-select.component.mjs +4 -4
  176. package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +29 -68
  177. package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +14 -7
  178. package/esm2020/framework/side-nav/side-nav.component.mjs +117 -39
  179. package/esm2020/framework/side-nav/side-nav.models.mjs +1 -1
  180. package/esm2020/framework/side-nav/side-nav.module.mjs +11 -41
  181. package/esm2020/framework/side-nav/side-nav.service.mjs +4 -4
  182. package/esm2020/framework/top-bar/index.mjs +3 -1
  183. package/esm2020/framework/top-bar/top-bar-compact-menu-btn-detail.directive.mjs +16 -0
  184. package/esm2020/framework/top-bar/top-bar-item.directive.mjs +12 -6
  185. package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +4 -4
  186. package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +8 -6
  187. package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +4 -4
  188. package/esm2020/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.mjs +16 -0
  189. package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +4 -4
  190. package/esm2020/framework/top-bar/top-bar.component.mjs +57 -13
  191. package/esm2020/framework/top-bar/top-bar.module.mjs +19 -9
  192. package/esm2020/google-maps/google-maps/google-maps.component.mjs +4 -4
  193. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +4 -4
  194. package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +4 -4
  195. package/esm2020/google-maps/google-maps-controls.service.mjs +4 -4
  196. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +5 -5
  197. package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +4 -4
  198. package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +4 -4
  199. package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +4 -4
  200. package/esm2020/google-maps/google-maps.module.mjs +5 -5
  201. package/esm2020/google-maps/google-maps.service.mjs +4 -4
  202. package/esm2020/google-maps/map-control.component.mjs +4 -4
  203. package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
  204. package/esm2020/google-maps/map-value-manager.service.mjs +4 -4
  205. package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
  206. package/esm2020/graphql/datatable/index.mjs +4 -1
  207. package/esm2020/graphql/datatable/map-filter-states.mjs +1 -1
  208. package/esm2020/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.mjs +139 -0
  209. package/esm2020/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.mjs +75 -0
  210. package/esm2020/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.mjs +44 -0
  211. package/esm2020/icon/icon/icon.component.mjs +4 -4
  212. package/esm2020/icon/icon-btn/icon-btn.component.mjs +4 -4
  213. package/esm2020/icon/icon-notification/icon-notification.component.mjs +4 -4
  214. package/esm2020/icon/icon.module.mjs +5 -5
  215. package/esm2020/layout/layout.module.mjs +5 -5
  216. package/esm2020/layout/layout.service.mjs +15 -5
  217. package/esm2020/loading/loading/loading.component.mjs +4 -4
  218. package/esm2020/loading/loading-overlay.service.mjs +4 -4
  219. package/esm2020/loading/loading.module.mjs +5 -5
  220. package/esm2020/menu/menu-divider.component.mjs +4 -4
  221. package/esm2020/menu/menu-footer/menu-footer.component.mjs +4 -4
  222. package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +4 -4
  223. package/esm2020/menu/menu-header/menu-header.component.mjs +4 -4
  224. package/esm2020/menu/menu-item.component.mjs +4 -4
  225. package/esm2020/menu/menu-toggle.directive.mjs +9 -4
  226. package/esm2020/menu/menu.component.mjs +4 -4
  227. package/esm2020/menu/menu.module.mjs +5 -5
  228. package/esm2020/modal/directives/modal-close.directive.mjs +4 -4
  229. package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +4 -4
  230. package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +4 -4
  231. package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +4 -4
  232. package/esm2020/modal/directives/modal-title.directive.mjs +4 -4
  233. package/esm2020/modal/directives/modal.directive.mjs +4 -4
  234. package/esm2020/modal/modal/modal.component.mjs +4 -4
  235. package/esm2020/modal/modal-body/modal-body.component.mjs +4 -4
  236. package/esm2020/modal/modal-container/modal-container.component.mjs +4 -4
  237. package/esm2020/modal/modal-footer/modal-footer.component.mjs +4 -4
  238. package/esm2020/modal/modal-header/modal-header.component.mjs +4 -4
  239. package/esm2020/modal/modal.module.mjs +5 -5
  240. package/esm2020/modal/modal.service.mjs +4 -4
  241. package/esm2020/modal/route-modal/route-modal.component.mjs +4 -4
  242. package/esm2020/navigation-reload/navigation-reload.service.mjs +5 -5
  243. package/esm2020/popover/popover/popover.component.mjs +9 -5
  244. package/esm2020/popover/popover.directive.mjs +8 -4
  245. package/esm2020/popover/popover.module.mjs +5 -5
  246. package/esm2020/progress/progress-circle/progress-circle.component.mjs +4 -4
  247. package/esm2020/progress/progress.module.mjs +5 -5
  248. package/esm2020/rich-text/rich-text/rich-text.component.mjs +4 -4
  249. package/esm2020/rich-text/rich-text.module.mjs +5 -5
  250. package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +4 -4
  251. package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
  252. package/esm2020/scrollbar/scrollbar.module.mjs +5 -5
  253. package/esm2020/services/asset-loader.service.mjs +4 -4
  254. package/esm2020/services/font-loader.service.mjs +4 -4
  255. package/esm2020/services/preferences/preferences-manager.service.mjs +4 -4
  256. package/esm2020/services/router-helpers.service.mjs +4 -4
  257. package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +4 -4
  258. package/esm2020/shared/directives/auto-focus.directive.mjs +4 -4
  259. package/esm2020/shared/directives/click-outside.directive.mjs +4 -4
  260. package/esm2020/shared/directives/disable-control.directive.mjs +4 -4
  261. package/esm2020/shared/directives/elem-resized.directive.mjs +4 -4
  262. package/esm2020/shared/directives/hover-class-toggle.directive.mjs +4 -4
  263. package/esm2020/shared/directives/hover-class.directive.mjs +4 -4
  264. package/esm2020/shared/directives/ng-select-extra.directive.mjs +4 -4
  265. package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +4 -4
  266. package/esm2020/shared/pipes/mask-chars.pipe.mjs +4 -4
  267. package/esm2020/shared/pipes/truncate.pipe.mjs +4 -4
  268. package/esm2020/shared/shared.module.mjs +5 -5
  269. package/esm2020/storage/local-storage.service.mjs +4 -4
  270. package/esm2020/story-helpers/initial-route.service.mjs +4 -4
  271. package/esm2020/story-helpers/story-empty-with-route.component.mjs +4 -4
  272. package/esm2020/story-helpers/story-empty.component.mjs +4 -4
  273. package/esm2020/story-helpers/story-helper-components.module.mjs +5 -5
  274. package/esm2020/story-helpers/story-initial-route.mjs +5 -5
  275. package/esm2020/story-helpers/story-modal-container.component.mjs +4 -4
  276. package/esm2020/story-helpers/story-preferences-accessor.service.mjs +4 -4
  277. package/esm2020/story-helpers/story-toastr.service.mjs +4 -4
  278. package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +4 -4
  279. package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +4 -4
  280. package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +4 -4
  281. package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +4 -4
  282. package/esm2020/tabbed/tabbed.component.mjs +4 -4
  283. package/esm2020/tabbed/tabbed.module.mjs +5 -5
  284. package/esm2020/tabbed/tabbed.service.mjs +4 -4
  285. package/esm2020/table/public-api.mjs +4 -1
  286. package/esm2020/table/table/table.component.mjs +92 -7
  287. package/esm2020/table/table-cell-tpl.directive.mjs +17 -0
  288. package/esm2020/table/table-column-header-tpl.directive.mjs +17 -0
  289. package/esm2020/table/table-column.component.mjs +68 -0
  290. package/esm2020/table/table.module.mjs +25 -9
  291. package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +4 -4
  292. package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +4 -4
  293. package/esm2020/table-cell-type/table-cell-type.module.mjs +5 -5
  294. package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +4 -4
  295. package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +4 -4
  296. package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +4 -4
  297. package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +4 -4
  298. package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +4 -4
  299. package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +4 -4
  300. package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +4 -4
  301. package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +4 -4
  302. package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +7 -5
  303. package/esm2020/table-cell-types/table-cell-types.module.mjs +5 -5
  304. package/esm2020/tel-input/phone-number.pipe.mjs +4 -4
  305. package/esm2020/tel-input/tel-input/tel-input.component.mjs +4 -4
  306. package/esm2020/tel-input/tel-input.directive.mjs +4 -4
  307. package/esm2020/tel-input/tel-input.module.mjs +5 -5
  308. package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +4 -4
  309. package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +4 -4
  310. package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +4 -4
  311. package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +4 -4
  312. package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +4 -4
  313. package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +4 -4
  314. package/esm2020/tiled-select/tiled-select.module.mjs +5 -5
  315. package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +4 -4
  316. package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +4 -4
  317. package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +4 -4
  318. package/esm2020/toggle-edit/toggle-edit.component.mjs +4 -4
  319. package/esm2020/toggle-edit/toggle-edit.module.mjs +5 -5
  320. package/esm2020/toggle-group/toggle-group-option.directive.mjs +4 -4
  321. package/esm2020/toggle-group/toggle-group.directive.mjs +4 -4
  322. package/esm2020/toggle-group/toggle-group.module.mjs +5 -5
  323. package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +4 -4
  324. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +4 -4
  325. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +4 -4
  326. package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +5 -5
  327. package/esm2020/utils/geo-json/coerce-feature-collection.mjs +1 -1
  328. package/esm2020/utils/geo-json/is-feature-collection.validator.mjs +1 -1
  329. package/esm2020/utils/geo-json/is-only-geometry-types.mjs +1 -1
  330. package/esm2020/utils/geo-json/merge-polygons.mjs +1 -1
  331. package/esm2020/utils/geo-json/no-inner-rings.validator.mjs +1 -1
  332. package/esm2020/utils/geo-json/split-multi-polygons.mjs +1 -1
  333. package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +4 -4
  334. package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +4 -4
  335. package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +5 -5
  336. package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +4 -4
  337. package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
  338. package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +4 -4
  339. package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +5 -5
  340. package/esm2020/widget/directives/widget-drag-handle.directive.mjs +4 -4
  341. package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +4 -4
  342. package/esm2020/widget/directives/widget-title-tpl.directive.mjs +4 -4
  343. package/esm2020/widget/preferences/widget-preferences.service.mjs +4 -4
  344. package/esm2020/widget/widget/widget.component.mjs +4 -4
  345. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +4 -4
  346. package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +5 -5
  347. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +4 -4
  348. package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +5 -5
  349. package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +4 -4
  350. package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +5 -5
  351. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +4 -4
  352. package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +5 -5
  353. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +4 -4
  354. package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +5 -5
  355. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +4 -4
  356. package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +5 -5
  357. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +4 -4
  358. package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +5 -5
  359. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +4 -4
  360. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -16
  361. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +4 -4
  362. package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +5 -5
  363. package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +4 -4
  364. package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +5 -5
  365. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +4 -4
  366. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +4 -4
  367. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +4 -4
  368. package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +4 -4
  369. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +7 -7
  370. package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +5 -5
  371. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +4 -4
  372. package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +5 -5
  373. package/esm2020/widget/widget-footer/widget-footer.component.mjs +4 -4
  374. package/esm2020/widget/widget-registry.service.mjs +4 -4
  375. package/esm2020/widget/widget.module.mjs +5 -5
  376. package/fesm2015/theseam-ui-common-asset-reader.mjs +10 -10
  377. package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
  378. package/fesm2015/theseam-ui-common-breadcrumbs.mjs +11 -11
  379. package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  380. package/fesm2015/theseam-ui-common-buttons.mjs +25 -25
  381. package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
  382. package/fesm2015/theseam-ui-common-card.mjs +19 -19
  383. package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
  384. package/fesm2015/theseam-ui-common-carousel.mjs +10 -10
  385. package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -1
  386. package/fesm2015/theseam-ui-common-checkbox.mjs +7 -7
  387. package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
  388. package/fesm2015/theseam-ui-common-confirm-dialog.mjs +13 -13
  389. package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  390. package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
  391. package/fesm2015/theseam-ui-common-data-exporter.mjs.map +1 -1
  392. package/fesm2015/theseam-ui-common-data-filters.mjs +13 -13
  393. package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
  394. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +26 -26
  395. package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  396. package/fesm2015/theseam-ui-common-datatable.mjs +1112 -139
  397. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  398. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +7 -7
  399. package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  400. package/fesm2015/theseam-ui-common-dynamic.mjs +21 -21
  401. package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
  402. package/fesm2015/theseam-ui-common-footer-bar.mjs +7 -7
  403. package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
  404. package/fesm2015/theseam-ui-common-form-field-error.mjs +16 -16
  405. package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
  406. package/fesm2015/theseam-ui-common-form-field.mjs +22 -22
  407. package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
  408. package/fesm2015/theseam-ui-common-framework.mjs +1026 -277
  409. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  410. package/fesm2015/theseam-ui-common-google-maps.mjs +41 -41
  411. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  412. package/fesm2015/theseam-ui-common-graphql.mjs +257 -4
  413. package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
  414. package/fesm2015/theseam-ui-common-icon.mjs +13 -13
  415. package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
  416. package/fesm2015/theseam-ui-common-layout.mjs +18 -9
  417. package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
  418. package/fesm2015/theseam-ui-common-loading.mjs +10 -10
  419. package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
  420. package/fesm2015/theseam-ui-common-menu.mjs +30 -25
  421. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  422. package/fesm2015/theseam-ui-common-modal.mjs +43 -43
  423. package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
  424. package/fesm2015/theseam-ui-common-navigation-reload.mjs +4 -4
  425. package/fesm2015/theseam-ui-common-navigation-reload.mjs.map +1 -1
  426. package/fesm2015/theseam-ui-common-popover.mjs +19 -11
  427. package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
  428. package/fesm2015/theseam-ui-common-progress.mjs +7 -7
  429. package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
  430. package/fesm2015/theseam-ui-common-rich-text.mjs +7 -7
  431. package/fesm2015/theseam-ui-common-rich-text.mjs.map +1 -1
  432. package/fesm2015/theseam-ui-common-scrollbar.mjs +10 -10
  433. package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
  434. package/fesm2015/theseam-ui-common-services.mjs +12 -12
  435. package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
  436. package/fesm2015/theseam-ui-common-shared.mjs +37 -37
  437. package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
  438. package/fesm2015/theseam-ui-common-storage.mjs +3 -3
  439. package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
  440. package/fesm2015/theseam-ui-common-story-helpers.mjs +26 -26
  441. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  442. package/fesm2015/theseam-ui-common-tabbed.mjs +22 -22
  443. package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
  444. package/fesm2015/theseam-ui-common-table-cell-type.mjs +10 -10
  445. package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
  446. package/fesm2015/theseam-ui-common-table-cell-types.mjs +34 -32
  447. package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
  448. package/fesm2015/theseam-ui-common-table.mjs +207 -15
  449. package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
  450. package/fesm2015/theseam-ui-common-tel-input.mjs +13 -13
  451. package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
  452. package/fesm2015/theseam-ui-common-tiled-select.mjs +22 -22
  453. package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
  454. package/fesm2015/theseam-ui-common-toggle-edit.mjs +16 -16
  455. package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
  456. package/fesm2015/theseam-ui-common-toggle-group.mjs +10 -10
  457. package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
  458. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
  459. package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  460. package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
  461. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +3 -3
  462. package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
  463. package/fesm2015/theseam-ui-common-viewers.mjs +20 -20
  464. package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
  465. package/fesm2015/theseam-ui-common-widget.mjs +135 -135
  466. package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
  467. package/fesm2020/theseam-ui-common-asset-reader.mjs +10 -10
  468. package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
  469. package/fesm2020/theseam-ui-common-breadcrumbs.mjs +11 -11
  470. package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
  471. package/fesm2020/theseam-ui-common-buttons.mjs +25 -25
  472. package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
  473. package/fesm2020/theseam-ui-common-card.mjs +19 -19
  474. package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
  475. package/fesm2020/theseam-ui-common-carousel.mjs +10 -10
  476. package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -1
  477. package/fesm2020/theseam-ui-common-checkbox.mjs +7 -7
  478. package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
  479. package/fesm2020/theseam-ui-common-confirm-dialog.mjs +13 -13
  480. package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
  481. package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
  482. package/fesm2020/theseam-ui-common-data-exporter.mjs.map +1 -1
  483. package/fesm2020/theseam-ui-common-data-filters.mjs +13 -13
  484. package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
  485. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +26 -26
  486. package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
  487. package/fesm2020/theseam-ui-common-datatable.mjs +1096 -139
  488. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  489. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +7 -7
  490. package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
  491. package/fesm2020/theseam-ui-common-dynamic.mjs +21 -21
  492. package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
  493. package/fesm2020/theseam-ui-common-footer-bar.mjs +7 -7
  494. package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
  495. package/fesm2020/theseam-ui-common-form-field-error.mjs +16 -16
  496. package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
  497. package/fesm2020/theseam-ui-common-form-field.mjs +22 -22
  498. package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
  499. package/fesm2020/theseam-ui-common-framework.mjs +1028 -277
  500. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  501. package/fesm2020/theseam-ui-common-google-maps.mjs +41 -41
  502. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  503. package/fesm2020/theseam-ui-common-graphql.mjs +257 -4
  504. package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
  505. package/fesm2020/theseam-ui-common-icon.mjs +13 -13
  506. package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
  507. package/fesm2020/theseam-ui-common-layout.mjs +18 -9
  508. package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
  509. package/fesm2020/theseam-ui-common-loading.mjs +10 -10
  510. package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
  511. package/fesm2020/theseam-ui-common-menu.mjs +30 -25
  512. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  513. package/fesm2020/theseam-ui-common-modal.mjs +43 -43
  514. package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
  515. package/fesm2020/theseam-ui-common-navigation-reload.mjs +4 -4
  516. package/fesm2020/theseam-ui-common-navigation-reload.mjs.map +1 -1
  517. package/fesm2020/theseam-ui-common-popover.mjs +19 -11
  518. package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
  519. package/fesm2020/theseam-ui-common-progress.mjs +7 -7
  520. package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
  521. package/fesm2020/theseam-ui-common-rich-text.mjs +7 -7
  522. package/fesm2020/theseam-ui-common-rich-text.mjs.map +1 -1
  523. package/fesm2020/theseam-ui-common-scrollbar.mjs +10 -10
  524. package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
  525. package/fesm2020/theseam-ui-common-services.mjs +12 -12
  526. package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
  527. package/fesm2020/theseam-ui-common-shared.mjs +37 -37
  528. package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
  529. package/fesm2020/theseam-ui-common-storage.mjs +3 -3
  530. package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
  531. package/fesm2020/theseam-ui-common-story-helpers.mjs +26 -26
  532. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  533. package/fesm2020/theseam-ui-common-tabbed.mjs +22 -22
  534. package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
  535. package/fesm2020/theseam-ui-common-table-cell-type.mjs +10 -10
  536. package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
  537. package/fesm2020/theseam-ui-common-table-cell-types.mjs +34 -32
  538. package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
  539. package/fesm2020/theseam-ui-common-table.mjs +205 -15
  540. package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
  541. package/fesm2020/theseam-ui-common-tel-input.mjs +13 -13
  542. package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
  543. package/fesm2020/theseam-ui-common-tiled-select.mjs +22 -22
  544. package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
  545. package/fesm2020/theseam-ui-common-toggle-edit.mjs +16 -16
  546. package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
  547. package/fesm2020/theseam-ui-common-toggle-group.mjs +10 -10
  548. package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
  549. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
  550. package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
  551. package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
  552. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +3 -3
  553. package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
  554. package/fesm2020/theseam-ui-common-viewers.mjs +20 -20
  555. package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
  556. package/fesm2020/theseam-ui-common-widget.mjs +135 -135
  557. package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
  558. package/framework/base-layout/base-layout.component.d.ts +4 -2
  559. package/framework/base-layout/base-layout.component.scss +18 -10
  560. package/framework/base-layout/base-layout.module.d.ts +11 -10
  561. package/framework/base-layout/directives/base-layout-nav-toggle.directive.d.ts +8 -3
  562. package/framework/base-layout/directives/base-layout-side-bar-header.directive.d.ts +9 -0
  563. package/framework/base-layout/index.d.ts +1 -0
  564. package/framework/base-layout/styles/_variables.scss +21 -0
  565. package/framework/nav/_nav-theme.scss +4 -0
  566. package/framework/nav/horizontal-nav/horizontal-nav.component.d.ts +25 -0
  567. package/framework/nav/horizontal-nav/horizontal-nav.component.scss +50 -0
  568. package/framework/nav/index.d.ts +5 -0
  569. package/framework/nav/nav-item/nav-item.component.d.ts +74 -0
  570. package/framework/nav/nav-item/nav-item.component.scss +203 -0
  571. package/framework/nav/nav-utils.d.ts +20 -0
  572. package/framework/nav/nav.models.d.ts +77 -0
  573. package/framework/nav/nav.module.d.ts +17 -0
  574. package/framework/nav/nav.service.d.ts +27 -0
  575. package/framework/nav/styles/_themes/light/_variables.scss +56 -0
  576. package/framework/nav/styles/_themes/primary/_variables.scss +56 -0
  577. package/framework/nav/styles/_utilities.scss +3 -0
  578. package/framework/nav/styles/_variables.scss +2 -0
  579. package/framework/public-api.d.ts +1 -0
  580. package/framework/side-nav/side-nav-item/side-nav-item.component.d.ts +7 -14
  581. package/framework/side-nav/side-nav-item/side-nav-item.component.scss +7 -5
  582. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +5 -3
  583. package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.scss +3 -6
  584. package/framework/side-nav/side-nav.component.d.ts +13 -1
  585. package/framework/side-nav/side-nav.component.scss +0 -1
  586. package/framework/side-nav/side-nav.models.d.ts +7 -1
  587. package/framework/side-nav/side-nav.module.d.ts +1 -9
  588. package/framework/side-nav/styles/_themes/light/_variables.scss +24 -14
  589. package/framework/side-nav/styles/_themes/primary/_variables.scss +8 -0
  590. package/framework/top-bar/index.d.ts +2 -0
  591. package/framework/top-bar/top-bar-compact-menu-btn-detail.directive.d.ts +8 -0
  592. package/framework/top-bar/top-bar-item.directive.d.ts +4 -1
  593. package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +5 -2
  594. package/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.d.ts +8 -0
  595. package/framework/top-bar/top-bar.component.d.ts +25 -3
  596. package/framework/top-bar/top-bar.component.scss +7 -2
  597. package/framework/top-bar/top-bar.module.d.ts +10 -8
  598. package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
  599. package/graphql/datatable/index.d.ts +3 -0
  600. package/graphql/datatable/map-filter-states.d.ts +2 -2
  601. package/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.d.ts +4 -0
  602. package/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.d.ts +4 -0
  603. package/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.d.ts +4 -0
  604. package/layout/layout.service.d.ts +9 -1
  605. package/menu/menu-toggle.directive.d.ts +2 -1
  606. package/package.json +3 -3
  607. package/popover/popover/popover.component.d.ts +4 -1
  608. package/popover/popover.directive.d.ts +2 -1
  609. package/styles/vendor/ngx-datatable/_ngx-datatable.scss +83 -14
  610. package/styles/vendor/ngx-datatable/_themes/bootstrap/_variables.scss +38 -3
  611. package/table/public-api.d.ts +3 -0
  612. package/table/table/table.component.d.ts +21 -3
  613. package/table/table-cell-tpl.directive.d.ts +7 -0
  614. package/table/table-column-header-tpl.directive.d.ts +7 -0
  615. package/table/table-column.component.d.ts +24 -0
  616. package/table/table.module.d.ts +4 -1
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-table-cell-types.mjs","sources":["../../../projects/ui-common/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-date/table-cell-type-date.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-date/table-cell-type-date.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-string/table-cell-type-string.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-string/table-cell-type-string.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-manifests.ts","../../../projects/ui-common/table-cell-types/table-cell-types.module.ts","../../../projects/ui-common/table-cell-types/theseam-ui-common-table-cell-types.ts"],"sourcesContent":["import { formatCurrency } from '@angular/common'\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\nimport { isNumeric, notNullOrUndefined } from '@theseam/ui-common/utils'\n\nimport { coerceBooleanProperty } from '@angular/cdk/coercion'\n\nimport { TableCellTypeConfigCurrency } from './table-cell-type-currency-config'\n\n@Component({\n selector: 'seam-table-cell-type-currency',\n templateUrl: './table-cell-type-currency.component.html',\n styleUrls: ['./table-cell-type-currency.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeCurrencyComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: string | null | undefined\n\n row?: any\n rowIndex?: number\n colData?: TheSeamTableColumn<'currency', TableCellTypeConfigCurrency>\n textAlign?: 'left' | 'center' | 'right'\n // TODO: implement\n // titleAttr?: string\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'currency', TableCellTypeConfigCurrency>\n ) {\n const tableData = _tableData\n this.value = tableData && this._formatCurrency(tableData.value, tableData)\n this.row = tableData && tableData.row\n this.rowIndex = tableData && tableData.rowIndex\n this.colData = tableData && tableData.colData\n this.textAlign = this._parseConfigValue(tableData?.colData?.cellTypeConfig?.textAlign, tableData) || 'right'\n // this.titleAttr = this._parseConfigValue(tableData?.colData?.cellTypeConfig?.titleAttr, tableData) || this.value\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = this._formatCurrency(v.changes.value.currentValue, tableData)\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n private _formatCurrency(currentValue?: any, tableData?: TableCellData<'currency', TableCellTypeConfigCurrency>): string {\n const config = tableData?.colData?.cellTypeConfig\n const defaultToEmpty = notNullOrUndefined(config?.defaultToEmpty)\n ? this._parseConfigValue(coerceBooleanProperty(config?.defaultToEmpty), tableData) : true\n let _currentValue = currentValue\n const valueIsNumeric = isNumeric(_currentValue)\n\n if (!valueIsNumeric) {\n if (defaultToEmpty) {\n // return empty string instead of $0 when currentValue is empty or unparseable\n return ''\n } else {\n // set non-numeric value to 0 so it can be formatted the same as other numbers\n _currentValue = 0\n }\n }\n\n const locale = this._parseConfigValue(config?.locale, tableData) || 'en-US'\n const currency = this._parseConfigValue(config?.currency, tableData) || '$'\n const currencyCode = this._parseConfigValue(config?.currencyCode, tableData) || 'USD'\n\n const minIntegerDigits = this._parseConfigValue(config?.minIntegerDigits, tableData) || 1\n const minFractionDigits = this._parseConfigValue(config?.minFractionDigits, tableData) || 2\n const maxFractionDigits = this._parseConfigValue(config?.maxFractionDigits, tableData) || 2\n const format = `${minIntegerDigits}.${minFractionDigits}-${maxFractionDigits}`\n\n return formatCurrency(_currentValue, locale, currency, currencyCode, format)\n }\n\n private _parseConfigValue(val?: any, tableData?: TableCellData<'currency', TableCellTypeConfigCurrency>) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, tableData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n}\n","<div [class]=\"'text-' + textAlign\">\n <seam-table-cell-type-selector\n type=\"string\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n</div>\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeConfigDate } from './table-cell-type-date-config'\n\n@Component({\n selector: 'seam-table-cell-type-date',\n templateUrl: './table-cell-type-date.component.html',\n styleUrls: ['./table-cell-type-date.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeDateComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: string | undefined | null\n @Input() format: string | undefined | null\n\n constructor(\n private _cdf: ChangeDetectorRef,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'date', TableCellTypeConfigDate>\n ) {\n const _data = _tableData\n\n this.value = _data && _data.value\n this.format = _data && _data.colData && _data.colData.cellTypeConfig && _data.colData.cellTypeConfig.format\n\n if (_data) {\n _data.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n const colData = v.changes.colData.currentValue\n if (colData && colData.cellTypeConfig && colData.cellTypeConfig.format !== this.format) {\n this.format = colData.cellTypeConfig.format\n }\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n}\n","<div class=\"td-text-truncate\" [title]=\"value | date: format || 'yyyy-MM-dd h:mm aaa'\">\n {{ value | date: format || 'yyyy-MM-dd h:mm aaa' }}\n</div>\n","import { formatNumber } from '@angular/common'\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\nimport { isNumeric, notNullOrUndefined } from '@theseam/ui-common/utils'\n\nimport { coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { TableCellTypeConfigDecimal } from './table-cell-type-decimal-config'\n\n@Component({\n selector: 'seam-table-cell-type-decimal',\n templateUrl: './table-cell-type-decimal.component.html',\n styleUrls: ['./table-cell-type-decimal.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeDecimalComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: string | undefined | null\n\n row?: any\n rowIndex?: number\n colData?: TheSeamTableColumn<'decimal', TableCellTypeConfigDecimal>\n textAlign?: 'left' | 'center' | 'right'\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'decimal', TableCellTypeConfigDecimal>\n ) {\n const tableData = _tableData\n this.value = tableData && this._formatDecimal(tableData.value, tableData)\n this.row = tableData && tableData.row\n this.rowIndex = tableData && tableData.rowIndex\n this.colData = tableData && tableData.colData\n this.textAlign = this._parseConfigValue(tableData?.colData?.cellTypeConfig?.textAlign, tableData) || 'right'\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = this._formatDecimal(v.changes.value.currentValue, tableData)\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n private _formatDecimal(currentValue?: any, tableData?: TableCellData<'decimal', TableCellTypeConfigDecimal> | undefined): string {\n const config = tableData?.colData?.cellTypeConfig\n const defaultToEmpty = notNullOrUndefined(config?.defaultToEmpty)\n ? this._parseConfigValue(coerceBooleanProperty(config?.defaultToEmpty), tableData) : true\n const formatDecimal = notNullOrUndefined(config?.formatNumber)\n ? this._parseConfigValue(coerceBooleanProperty(config?.formatNumber), tableData) : true\n let _currentValue = currentValue\n const valueIsNumeric = isNumeric(_currentValue)\n\n // unparseable values are OK to return as long as we're not trying to format them\n if (!valueIsNumeric && formatDecimal) {\n if (defaultToEmpty) {\n // return empty string instead of 0 when currentValue is empty or unparseable\n return ''\n } else {\n // set non-numeric value to 0 so it can be formatted the same as other numbers\n _currentValue = 0\n }\n }\n\n const locale = this._parseConfigValue(config?.locale, tableData) || 'en-US'\n const minIntegerDigits = this._parseConfigValue(config?.minIntegerDigits, tableData) || 1\n const minFractionDigits = this._parseConfigValue(config?.minFractionDigits, tableData) || 0\n const maxFractionDigits = this._parseConfigValue(config?.maxFractionDigits, tableData) || 3\n const format = `${minIntegerDigits}.${minFractionDigits}-${maxFractionDigits}`\n\n return formatDecimal ? formatNumber(_currentValue, locale, format) : _currentValue\n }\n\n private _parseConfigValue(val?: any, tableData?: TableCellData<'decimal', TableCellTypeConfigDecimal>) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, tableData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n}\n","<div [class]=\"'text-' + textAlign\">\n <seam-table-cell-type-selector\n type=\"string\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n Optional\n} from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { DatatableComponent } from '@theseam/ui-common/datatable'\nimport { getKnownIcon, SeamIcon, TheSeamIconType } from '@theseam/ui-common/icon'\nimport { TableComponent } from '@theseam/ui-common/table'\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeConfigIcon, TableCellTypeIconConfigAction } from './table-cell-type-icon-config'\n\nexport type IconTemplateType = 'default' | 'link' | 'link-external' | 'link-encrypted' | 'button'\n\n@Component({\n selector: 'seam-table-cell-type-icon',\n templateUrl: './table-cell-type-icon.component.html',\n styleUrls: ['./table-cell-type-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeIconComponent<R = any, V = any> implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input()\n get value() { return this._value }\n set value(value: string | undefined | null) {\n this._value = value\n this._icon = value ? getKnownIcon(value) || value : value\n }\n private _value: string | undefined | null\n\n @Input()\n get config() { return this._config }\n set config(value: TableCellTypeConfigIcon | undefined | null) {\n this._config = value\n if (value) {\n this.setAction(value.action)\n this._linkClass = this._parseConfigValue(value.linkClass)\n this._iconClass = this._parseConfigValue(value.iconClass)\n this._iconType = value.iconType\n this._title = this._parseConfigValue(value.titleAttr)\n this._srOnly = this._parseConfigValue(value.srOnly)\n this._tooltip = this._parseConfigValue(value.tooltip)\n if (this._tooltip) {\n this._tooltipClass = this._parseConfigValue(value.tooltipClass)\n this._tooltipPlacement = this._parseConfigValue(value.tooltipPlacement) || 'auto'\n this._tooltipContainer = this._parseConfigValue(value.tooltipContainer)\n this._tooltipDisabled = false\n } else {\n this._tooltipDisabled = true\n }\n }\n }\n private _config: TableCellTypeConfigIcon | undefined | null\n\n _icon: SeamIcon | undefined | null\n _link?: string\n _queryParams?: { [k: string]: any }\n _tplType: IconTemplateType = 'default'\n _title?: string\n _srOnly?: string\n _linkClass?: string\n _iconClass?: string\n _iconType?: TheSeamIconType\n _target?: string\n _tooltip?: string\n _tooltipClass?: string\n _tooltipPlacement?: string\n _tooltipContainer?: string\n _tooltipDisabled = true\n\n _buttonAction?: TableCellTypeIconConfigAction\n\n _tableCellData?: TableCellData<'icon', TableCellTypeConfigIcon>\n _row?: any\n _rowIndex?: number\n _colData?: TheSeamTableColumn<'icon', TableCellTypeConfigIcon>\n\n _download?: boolean\n _detectMimeContent?: boolean\n\n @HostBinding('class.datatable-cell-type') _isDatatable = false\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() private _datatable?: DatatableComponent,\n @Optional() private _table?: TableComponent,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'icon', TableCellTypeConfigIcon>\n ) {\n if (_datatable) {\n this._isDatatable = true\n // console.log('isDataTable')\n }\n // if (_table) {\n // console.log('isTable')\n // }\n\n const _data = _tableData\n this._tableCellData = _tableData\n\n this._row = _data && _data.row\n this._rowIndex = _data && _data.rowIndex\n\n this.value = _data && _data.value\n this._colData = _data && _data.colData\n if (_data && _data.colData && (_data.colData as any).cellTypeConfig) {\n this.config = (_data.colData as any).cellTypeConfig\n }\n\n if (_data) {\n _data.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this.config = this._config\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n const colData = v.changes.colData.currentValue\n if (colData && colData.cellTypeConfig !== this.config) {\n this.config = colData.cellTypeConfig\n } else {\n this.config = undefined\n }\n this._cdf.markForCheck()\n } else {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'row')) {\n this._cdf.markForCheck()\n }\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n public setAction(configAction?: TableCellTypeIconConfigAction) {\n let newTplType: IconTemplateType = 'default'\n let link: string | undefined\n let download = false\n let detectMimeContent = false\n let target: string | undefined\n let queryParams: { [l: string]: any } | undefined\n\n if (configAction) {\n if (configAction.type === 'link') {\n link = this._parseConfigValue(configAction.link)\n if (link !== undefined && link !== null) {\n newTplType = this._parseConfigValue(configAction.asset)\n ? 'link-encrypted'\n : this._parseConfigValue(configAction.external) ? 'link-external' : 'link'\n download = !!this._parseConfigValue(configAction.download)\n detectMimeContent = !!this._parseConfigValue(configAction.detectMimeContent)\n target = this._parseConfigValue(configAction.target)\n queryParams = this._parseConfigValue(configAction.queryParams)\n }\n } else if (configAction.type === 'modal') {\n newTplType = 'button'\n this._buttonAction = configAction\n }\n }\n\n this._tplType = newTplType\n this._link = link\n this._download = download\n this._detectMimeContent = detectMimeContent\n this._target = target\n this._queryParams = queryParams\n }\n\n private _parseConfigValue(val: any) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, this._tableCellData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n _doButtonAction() {\n if (this._buttonAction && this._buttonAction.type === 'modal') {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(this.value, this._tableCellData)\n this._tableCellTypeHelpers.handleModalAction(this._buttonAction, contextFn)\n .subscribe(\n r => {},\n // eslint-disable-next-line no-console\n err => console.error(err),\n () => this._actionRefreshRequest()\n )\n }\n }\n\n private _actionRefreshRequest() {\n if (this._datatable) {\n this._datatable.triggerActionRefreshRequest()\n } else if (this._table) {\n this._table.triggerActionRefreshRequest()\n }\n }\n\n}\n","<ng-container *ngIf=\"_icon\">\n <div *ngIf=\"!_tplType || _tplType === 'default'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass || ''\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </a>\n </div>\n\n <div *ngIf=\"_tplType === 'link'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [routerLink]=\"_link\"\n [queryParams]=\"_queryParams\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon *ngIf=\"_icon\" [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </a>\n </div>\n\n <div *ngIf=\"_tplType === 'link-external'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [attr.href]=\"_link\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon *ngIf=\"_icon\" [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </a>\n </div>\n\n <div *ngIf=\"_tplType === 'link-encrypted'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <button\n class=\"btn btn-link p-0 m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n type=\"button\"\n [seamEncryptedAssetLink]=\"_link\"\n [seamDetectMimeFromContent]=\"_detectMimeContent\"\n [seamDownloadAsset]=\"_download\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon *ngIf=\"_icon\" iconType=\"styled-square\" [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </button>\n </div>\n\n <div *ngIf=\"_tplType === 'button'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\"\n (click)=\"_doButtonAction()\">\n <button\n class=\"btn btn-link p-0 m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n type=\"button\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon *ngIf=\"_icon\" iconType=\"styled-square\" [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </button>\n </div>\n</ng-container>\n","import { formatNumber } from '@angular/common'\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, OnInit, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\nimport { isNumeric, notNullOrUndefined } from '@theseam/ui-common/utils'\n\nimport { coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { TableCellTypeConfigInteger } from './table-cell-type-integer-config'\n\n@Component({\n selector: 'seam-table-cell-type-integer',\n templateUrl: './table-cell-type-integer.component.html',\n styleUrls: ['./table-cell-type-integer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeIntegerComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: string | null | undefined\n\n row?: any\n rowIndex?: number\n colData?: TheSeamTableColumn<'integer', TableCellTypeConfigInteger>\n textAlign?: 'left' | 'center' | 'right'\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'integer', TableCellTypeConfigInteger>\n ) {\n const tableData = _tableData\n this.value = tableData && this._formatInteger(tableData.value, tableData)\n this.row = tableData && tableData.row\n this.rowIndex = tableData && tableData.rowIndex\n this.colData = tableData && tableData.colData\n this.textAlign = this._parseConfigValue(tableData?.colData?.cellTypeConfig?.textAlign, tableData) || 'right'\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = this._formatInteger(v.changes.value.currentValue, tableData)\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n private _formatInteger(currentValue?: any, tableData?: TableCellData<'integer', TableCellTypeConfigInteger> | undefined): string {\n const config = tableData?.colData?.cellTypeConfig\n const defaultToEmpty = notNullOrUndefined(config?.defaultToEmpty)\n ? this._parseConfigValue(coerceBooleanProperty(config?.defaultToEmpty), tableData) : true\n const formatInteger = notNullOrUndefined(config?.formatNumber)\n ? this._parseConfigValue(coerceBooleanProperty(config?.formatNumber), tableData) : true\n let _currentValue = currentValue\n const valueIsNumeric = isNumeric(_currentValue)\n\n // unparseable values are OK to return as long as we're not trying to format them\n if (!valueIsNumeric && formatInteger) {\n if (defaultToEmpty) {\n // return empty string instead of 0 when currentValue is empty or unparseable\n return ''\n } else {\n // set non-numeric value to 0 so it can be formatted the same as other numbers\n _currentValue = 0\n }\n }\n\n const locale = this._parseConfigValue(config?.locale, tableData) || 'en-US'\n const minIntegerDigits = this._parseConfigValue(config?.minIntegerDigits, tableData) || 1\n const format = `${minIntegerDigits}.0-0`\n\n return formatInteger ? formatNumber(_currentValue, locale, format) : _currentValue\n }\n\n private _parseConfigValue(val?: any, tableData?: TableCellData<'integer', TableCellTypeConfigInteger>) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, tableData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n}\n","<div [class]=\"'text-' + textAlign\">\n <seam-table-cell-type-selector\n type=\"string\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n</div>\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\nimport { coercePhoneNumberFormat, THESEAM_DEFAULT_PHONE_NUMBER_FORMAT } from '@theseam/ui-common/tel-input'\nimport type { intlTelInputUtils } from '@theseam/ui-common/tel-input'\nimport { hasProperty } from '@theseam/ui-common/utils'\n\nimport { TableCellTypeConfigPhone } from './table-cell-type-phone-config'\n\n@Component({\n selector: 'seam-table-cell-type-phone',\n templateUrl: './table-cell-type-phone.component.html',\n styleUrls: ['./table-cell-type-phone.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypePhoneComponent implements OnDestroy {\n\n /** @ignore */\n private readonly _ngUnsubscribe = new Subject<void>()\n\n /** @ignore */\n _format: intlTelInputUtils.numberFormat = THESEAM_DEFAULT_PHONE_NUMBER_FORMAT\n\n @Input() value?: string | null\n @Input()\n set format(value: intlTelInputUtils.numberFormat) { this._format = coercePhoneNumberFormat(value) }\n get format() { return this._format }\n\n constructor(\n private _cdf: ChangeDetectorRef,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'phone', TableCellTypeConfigPhone>\n ) {\n const _data = _tableData\n\n this.value = _data && _data.value\n if (_data && _data.colData && _data.colData.cellTypeConfig && hasProperty(_data.colData.cellTypeConfig, 'format')) {\n this.format = _data.colData.cellTypeConfig.format as intlTelInputUtils.numberFormat\n }\n\n if (_data) {\n _data.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n const colData = v.changes.colData.currentValue\n if (colData && hasProperty(colData, 'cellTypeConfig') &&\n hasProperty(colData.cellTypeConfig, 'format') &&\n colData.cellTypeConfig.format !== this.format\n ) {\n this.format = colData.cellTypeConfig.format\n } else {\n this.format = THESEAM_DEFAULT_PHONE_NUMBER_FORMAT\n }\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n}\n","<ng-container *ngIf=\"((value || '') | phoneNumber: _format) as num\">\n <div class=\"td-text-truncate\" [title]=\"num\">\n {{ num }}\n </div>\n</ng-container>\n<!-- <div class=\"td-text-truncate\" [title]=\"value | phoneNumber: _format\">\n {{ value | date: format || 'yyyy-MM-dd h:mm aaa' }}\n</div> -->\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { SeamIcon } from '@theseam/ui-common/icon'\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeConfigProgressCircleIcon } from './table-cell-type-progress-circle-icon-config'\n\n@Component({\n selector: 'seam-table-cell-type-progress-circle-icon',\n templateUrl: './table-cell-type-progress-circle-icon.component.html',\n styleUrls: ['./table-cell-type-progress-circle-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeProgressCircleIconComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: number | null | undefined\n\n row?: any\n rowIndex?: number\n colData?: TheSeamTableColumn<'progress-circle-icon', TableCellTypeConfigProgressCircleIcon>\n\n displayIcon = false\n icon?: SeamIcon\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'progress-circle-icon', TableCellTypeConfigProgressCircleIcon>\n ) {\n const tableData = _tableData\n this.value = tableData && tableData.value\n this.row = tableData && tableData.row\n this.rowIndex = tableData && tableData.rowIndex\n this.colData = tableData && tableData.colData\n\n this._setIcon(tableData)\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this._setIcon(tableData)\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n this._setIcon(tableData)\n this._cdf.markForCheck()\n } else {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'row')) {\n this._setIcon(tableData)\n this._cdf.markForCheck()\n }\n }\n })\n }\n }\n\n private _setIcon(tableData?: TableCellData<'progress-circle-icon', TableCellTypeConfigProgressCircleIcon>) {\n if (tableData &&\n tableData.colData &&\n tableData.colData.cellTypeConfig &&\n tableData.colData.cellTypeConfig.displayIcon &&\n tableData.colData.cellTypeConfig.icon &&\n this._parseConfigValue(tableData.colData.cellTypeConfig.displayIcon, tableData) &&\n this._parseConfigValue(tableData.colData.cellTypeConfig.icon, tableData)) {\n this.icon = this._parseConfigValue(tableData.colData.cellTypeConfig.icon, tableData)\n this.displayIcon = this._parseConfigValue(tableData.colData.cellTypeConfig.displayIcon, tableData)\n }\n }\n\n private _parseConfigValue(val: any, tableData?: TableCellData<'progress-circle-icon', TableCellTypeConfigProgressCircleIcon>) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, tableData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n}\n","<seam-table-cell-type-selector\n *ngIf=\"displayIcon; else progressCircle\"\n type=\"icon\"\n [value]=\"icon\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n<ng-template #progressCircle>\n <seam-table-cell-type-selector\n type=\"progress-circle\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n</ng-template>\n","import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion'\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n Optional,\n} from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { DatatableComponent } from '@theseam/ui-common/datatable'\nimport { TableComponent } from '@theseam/ui-common/table'\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\n\nimport { IconTemplateType } from './../table-cell-type-icon/table-cell-type-icon.component'\nimport { TableCellTypeConfigProgressCircle, TableCellTypeProgressCircleConfigAction } from './table-cell-type-progress-circle-config'\n\n@Component({\n selector: 'seam-table-cell-type-progress-circle',\n templateUrl: './table-cell-type-progress-circle.component.html',\n styleUrls: ['./table-cell-type-progress-circle.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeProgressCircleComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: number | null | undefined\n\n _tableCellData?: TableCellData<'progress-circle', TableCellTypeConfigProgressCircle>\n colData?: TheSeamTableColumn<'progress-circle', TableCellTypeConfigProgressCircle>\n\n fillBackground = false\n showText = false\n hiddenOnEmpty = true\n pending = false\n tooltip?: string\n tooltipClass?: string\n tooltipPlacement?: string\n tooltipContainer?: string\n _tooltipDisabled = false\n\n _title?: string\n _srOnly?: string\n\n _link?: string\n _linkClass = '' // TODO: Decide if this makes sense\n _tplType: IconTemplateType = 'default'\n _target?: string\n _queryParams?: { [k: string]: any }\n\n _buttonAction?: TableCellTypeProgressCircleConfigAction\n\n _download?: boolean\n _detectMimeContent?: boolean\n\n private _config: TableCellTypeConfigProgressCircle | undefined | null\n\n @HostBinding('class.datatable-cell-type') _isDatatable = false\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() private _datatable?: DatatableComponent,\n @Optional() private _table?: TableComponent,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'progress-circle', TableCellTypeConfigProgressCircle>\n ) {\n if (_datatable) {\n this._isDatatable = true\n }\n\n const tableData = _tableData\n this._tableCellData = _tableData\n\n this.value = tableData && coerceNumberProperty(tableData.value)\n this.colData = tableData && tableData.colData\n\n if (this.colData && this.colData.cellTypeConfig) {\n this._setCellTypeConfigProps(this.colData.cellTypeConfig)\n }\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = coerceNumberProperty(v.changes.value.currentValue)\n if (this._config) {\n this._setCellTypeConfigProps(this._config)\n }\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n if (this.colData && this.colData.cellTypeConfig) {\n this._setCellTypeConfigProps(this.colData.cellTypeConfig)\n }\n this._cdf.markForCheck()\n } else {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'row')) {\n if (this.colData?.cellTypeConfig) {\n this._setCellTypeConfigProps(this.colData.cellTypeConfig)\n this._cdf.markForCheck()\n }\n }\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n private _parseConfigValue(val: any) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, this._tableCellData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n public setAction(configAction?: TableCellTypeProgressCircleConfigAction) {\n let newTplType: IconTemplateType = 'default'\n let link: string | undefined\n let download = false\n let detectMimeContent = false\n let target: string | undefined\n let queryParams: { [k: string]: any } | undefined\n\n if (configAction) {\n if (configAction.type === 'link') {\n link = this._parseConfigValue(configAction.link)\n if (link !== undefined && link !== null) {\n newTplType = this._parseConfigValue(configAction.asset)\n ? 'link-encrypted'\n : this._parseConfigValue(configAction.external) ? 'link-external' : 'link'\n download = !!this._parseConfigValue(configAction.download)\n detectMimeContent = !!this._parseConfigValue(configAction.detectMimeContent)\n target = this._parseConfigValue(configAction.target)\n queryParams = this._parseConfigValue(configAction.queryParams)\n }\n } else if (configAction.type === 'modal') {\n newTplType = 'button'\n this._buttonAction = configAction\n }\n }\n\n this._tplType = newTplType\n this._link = link\n this._download = download\n this._detectMimeContent = detectMimeContent\n this._target = target\n this._queryParams = queryParams\n }\n\n private _setCellTypeConfigProps(config: TableCellTypeConfigProgressCircle): void {\n this._config = config\n this.setAction(config.action)\n this.fillBackground = coerceBooleanProperty(this._parseConfigValue(config.fillBackground))\n this.showText = coerceBooleanProperty(this._parseConfigValue(config.showText))\n this.hiddenOnEmpty = coerceBooleanProperty(this._parseConfigValue(config.hiddenOnEmpty))\n this.pending = coerceBooleanProperty(this._parseConfigValue(config.pending))\n this.tooltip = this._parseConfigValue(config.tooltip)\n\n this.tooltip = this._parseConfigValue(config.tooltip)\n if (this.tooltip) {\n this.tooltipClass = this._parseConfigValue(config.tooltipClass)\n this.tooltipPlacement = this._parseConfigValue(config.tooltipPlacement) || 'auto'\n this.tooltipContainer = this._parseConfigValue(config.tooltipContainer)\n this._tooltipDisabled = false\n } else {\n this._tooltipDisabled = true\n }\n\n this._title = this._parseConfigValue(config.titleAttr)\n this._srOnly = this._parseConfigValue(config.srOnly)\n }\n\n _doButtonAction() {\n if (this._buttonAction && this._buttonAction.type === 'modal') {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(this.value, this._tableCellData)\n this._tableCellTypeHelpers.handleModalAction(this._buttonAction, contextFn)\n .subscribe(\n r => {},\n // eslint-disable-next-line no-console\n err => console.error(err),\n () => this._actionRefreshRequest()\n )\n }\n }\n\n private _actionRefreshRequest() {\n if (this._datatable) {\n this._datatable.triggerActionRefreshRequest()\n } else if (this._table) {\n this._table.triggerActionRefreshRequest()\n }\n }\n\n}\n","<ng-container *ngIf=\"!_tplType || _tplType === 'default'\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link'\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [routerLink]=\"_link\"\n [queryParams]=\"_queryParams\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-external'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [attr.href]=\"_link\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-encrypted'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <button\n class=\"btn btn-link p-0 m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n type=\"button\"\n [seamEncryptedAssetLink]=\"_link\"\n [seamDetectMimeFromContent]=\"_detectMimeContent\"\n [seamDownloadAsset]=\"_download\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n </button>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'button'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\"\n (click)=\"_doButtonAction()\">\n <button\n class=\"btn btn-link p-0 m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n type=\"button\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n </button>\n</ng-container>\n\n<ng-template #progressCircleTpl>\n <div class=\"progress-circle-wrapper\">\n <seam-progress-circle\n class=\"progress-circle\"\n [fillBackground]=\"fillBackground\"\n [showText]=\"showText\"\n [hiddenOnEmpty]=\"hiddenOnEmpty\"\n [percentage]=\"$any(value)\"\n [pending]=\"pending\"\n [ngbTooltip]=\"tooltip\"\n [tooltipClass]=\"$any(tooltipClass)\"\n [placement]=\"$any(tooltipPlacement)\"\n [container]=\"$any(tooltipContainer)\">\n </seam-progress-circle>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </div>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional\n} from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { DatatableComponent } from '@theseam/ui-common/datatable'\nimport { TableComponent } from '@theseam/ui-common/table'\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeConfigString, TableCellTypeStringConfigAction } from './table-cell-type-string-config'\n\nexport type StringTemplateType = 'default' | 'link' | 'link-external' | 'link-encrypted' | 'button'\n\n@Component({\n selector: 'seam-table-cell-type-string',\n templateUrl: './table-cell-type-string.component.html',\n styleUrls: ['./table-cell-type-string.component.scss'],\n host: { },\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeStringComponent implements OnInit, OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input()\n get value() { return this._value }\n set value(val: string | null | undefined) {\n this._value = val\n // TODO: This is temporary to test the feature and will be fixed when the\n // dynamic column data is fixed. The plan is to add a config toggle to\n // always enable and depending on performance it could try to decide on its\n // own based on content size.\n if (this.value && this.value.length > 30) {\n this.canPopover = true\n }\n }\n _value: string | null | undefined\n\n @Input()\n get config() { return this._config }\n set config(value: TableCellTypeConfigString | undefined | null) {\n this._config = value\n if (value) {\n this.setConfig(value)\n }\n }\n private _config: TableCellTypeConfigString | undefined | null\n\n _tplType: StringTemplateType = 'default'\n _link?: string\n _title?: string\n _queryParams?: { [k: string]: any }\n\n _style?: string\n _class?: string\n\n _buttonAction?: TableCellTypeStringConfigAction\n\n _tableCellData?: TableCellData<'string', TableCellTypeConfigString>\n _row?: any\n _rowIndex?: number\n _colData?: TheSeamTableColumn<'string', TableCellTypeConfigString>\n\n _download?: boolean\n _detectMimeContent?: boolean\n\n @Input()\n set title(value: string | undefined) { this._title = value }\n get title(): string | undefined { return this._title }\n\n @HostBinding('attr.title') get _titleAttr() { return this.title || this.value }\n\n @Input()\n set style(value: string | undefined) { this._style = value }\n get style(): string | undefined { return this._style }\n\n @HostBinding('attr.style') get _styleAttr() { return this.style }\n\n @Input()\n set classAttr(value: string | undefined) { this._class = value }\n get classAttr(): string | undefined { return this._class }\n\n @HostBinding('class') get _classAttr() { return this.classAttr }\n\n canPopover = false\n\n constructor(\n private readonly _cdf: ChangeDetectorRef,\n private readonly _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() private _datatable?: DatatableComponent,\n @Optional() private _table?: TableComponent,\n @Optional() @Inject(TABLE_CELL_DATA) readonly _tableData?: TableCellData<'string', TableCellTypeConfigString>\n ) {\n const _data = _tableData\n this._tableCellData = _tableData\n\n this._row = _data && _data.row\n this._rowIndex = _data && _data.rowIndex\n\n this.value = _data && _data.value\n this._colData = _data && _data.colData\n if (_data && _data.colData && (_data.colData as any).cellTypeConfig) {\n this.config = (_data.colData as any).cellTypeConfig\n }\n }\n\n ngOnInit() {\n const _data = this._tableData\n if (_data) {\n _data.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n const colData = v.changes.colData.currentValue\n if (colData && colData.cellTypeConfig !== this.config) {\n this.config = colData.cellTypeConfig\n } else {\n this.config = undefined\n }\n this._cdf.markForCheck()\n } else {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'row')) {\n // eslint-disable-next-line no-self-assign\n this.config = this.config\n this._cdf.markForCheck()\n }\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n public setAction(configAction?: TableCellTypeStringConfigAction) {\n let newTplType: StringTemplateType = 'default'\n let link: string | undefined\n let download = false\n let detectMimeContent = false\n let queryParams: { [k: string]: any } | undefined\n\n if (configAction) {\n if (configAction.type === 'link') {\n link = this._parseConfigValue(configAction.link)\n if (link !== undefined && link !== null) {\n newTplType = this._parseConfigValue(configAction.asset) ? 'link-encrypted' : 'link'\n download = !!this._parseConfigValue(configAction.download)\n detectMimeContent = !!this._parseConfigValue(configAction.detectMimeContent)\n queryParams = this._parseConfigValue(configAction.queryParams)\n }\n } else if (configAction.type === 'modal') {\n newTplType = 'button'\n this._buttonAction = configAction\n }\n }\n\n this._tplType = newTplType\n this._link = link\n this._download = download\n this._detectMimeContent = detectMimeContent\n this._queryParams = queryParams\n }\n\n public setConfig(config?: TableCellTypeConfigString): void {\n if (!config) { return }\n\n const title = this._parseConfigValue(config.titleAttr)\n if (title) {\n this.title = title\n }\n\n const style = this._parseConfigValue(config.styleAttr)\n if (style) {\n this.style = style\n }\n\n const classAttr = this._parseConfigValue(config.classAttr)\n if (classAttr) {\n this.classAttr = classAttr\n }\n\n this.setAction(config.action)\n }\n\n private _parseConfigValue(val: any) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, this._tableCellData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n _doButtonAction() {\n if (this._buttonAction && this._buttonAction.type === 'modal') {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(this.value, this._tableCellData)\n this._tableCellTypeHelpers.handleModalAction(this._buttonAction, contextFn)\n .subscribe(\n r => {},\n // eslint-disable-next-line no-console\n err => console.error(err),\n () => this._actionRefreshRequest()\n )\n }\n }\n\n private _actionRefreshRequest() {\n if (this._datatable) {\n this._datatable.triggerActionRefreshRequest()\n } else if (this._table) {\n this._table.triggerActionRefreshRequest()\n }\n }\n\n}\n","<ng-template #popoverTpl>\n {{ value }}\n</ng-template>\n\n<ng-template #noPopover>\n <div class=\"text-truncate\">\n {{ value }}\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"!_tplType || _tplType === 'default'\">\n <div *ngIf=\"canPopover; else noPopover\" [seamPopover]=\"popoverTpl\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </div>\n</ng-container>\n\n\n\n<ng-container *ngIf=\"_tplType === 'link'\">\n <a class=\"d-block text-body text-decoration-none\"\n [routerLink]=\"_link\"\n [queryParams]=\"_queryParams\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-external'\">\n <a class=\"d-block text-body text-decoration-none\"\n [attr.href]=\"_link\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-encrypted'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [seamEncryptedAssetLink]=\"_link\"\n [seamDetectMimeFromContent]=\"_detectMimeContent\"\n [seamDownloadAsset]=\"_download\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'button'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [attr.title]=\"_title\"\n (click)=\"_doButtonAction()\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n","import { ITableCellTypeManifestProvider, TABLE_CELL_TYPE_MANIFEST } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeCurrencyComponent } from './table-cell-type-currency/table-cell-type-currency.component'\nimport { TableCellTypeDateComponent } from './table-cell-type-date/table-cell-type-date.component'\nimport { TableCellTypeDecimalComponent } from './table-cell-type-decimal/table-cell-type-decimal.component'\nimport { TableCellTypeIconComponent } from './table-cell-type-icon/table-cell-type-icon.component'\nimport { TableCellTypeIntegerComponent } from './table-cell-type-integer/table-cell-type-integer.component'\nimport { TableCellTypePhoneComponent } from './table-cell-type-phone/table-cell-type-phone.component'\n// tslint:disable-next-line: max-line-length\nimport { TableCellTypeProgressCircleIconComponent } from './table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component'\nimport { TableCellTypeProgressCircleComponent } from './table-cell-type-progress-circle/table-cell-type-progress-circle.component'\nimport { TableCellTypeStringComponent } from './table-cell-type-string/table-cell-type-string.component'\n\nexport const TABLE_CELL_TYPE_MANIFEST_STRING: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'string',\n component: TableCellTypeStringComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_CURRENCY: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'currency',\n component: TableCellTypeCurrencyComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_DECIMAL: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'decimal',\n component: TableCellTypeDecimalComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_INTEGER: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'integer',\n component: TableCellTypeIntegerComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_DATE: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'date',\n component: TableCellTypeDateComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_ICON: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'icon',\n component: TableCellTypeIconComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_IMAGE: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'image',\n component: TableCellTypeIconComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'progress-circle',\n component: TableCellTypeProgressCircleComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE_ICON: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'progress-circle-icon',\n component: TableCellTypeProgressCircleIconComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_PHONE: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'phone',\n component: TableCellTypePhoneComponent\n },\n multi: true\n}\n","import { PortalModule } from '@angular/cdk/portal'\nimport { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { RouterModule } from '@angular/router'\n\nimport { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap'\n\nimport { TheSeamAssetReaderModule } from '@theseam/ui-common/asset-reader'\nimport { TheSeamIconModule } from '@theseam/ui-common/icon'\nimport { TheSeamPopoverModule } from '@theseam/ui-common/popover'\nimport { TheSeamProgressModule } from '@theseam/ui-common/progress'\nimport { TheSeamSharedModule } from '@theseam/ui-common/shared'\nimport { TheSeamTableCellTypeModule } from '@theseam/ui-common/table-cell-type'\nimport { TheSeamTelInputModule } from '@theseam/ui-common/tel-input'\n\nimport { TableCellTypeCurrencyComponent } from './table-cell-type-currency/table-cell-type-currency.component'\nimport { TableCellTypeDateComponent } from './table-cell-type-date/table-cell-type-date.component'\nimport { TableCellTypeDecimalComponent } from './table-cell-type-decimal/table-cell-type-decimal.component'\nimport { TableCellTypeIconComponent } from './table-cell-type-icon/table-cell-type-icon.component'\nimport { TableCellTypeIntegerComponent } from './table-cell-type-integer/table-cell-type-integer.component'\nimport { TableCellTypePhoneComponent } from './table-cell-type-phone/table-cell-type-phone.component'\n// tslint:disable-next-line: max-line-length\nimport { TableCellTypeProgressCircleIconComponent } from './table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component'\nimport { TableCellTypeProgressCircleComponent } from './table-cell-type-progress-circle/table-cell-type-progress-circle.component'\nimport { TableCellTypeStringComponent } from './table-cell-type-string/table-cell-type-string.component'\n\nimport {\n TABLE_CELL_TYPE_MANIFEST_CURRENCY,\n TABLE_CELL_TYPE_MANIFEST_DATE,\n TABLE_CELL_TYPE_MANIFEST_DECIMAL,\n TABLE_CELL_TYPE_MANIFEST_ICON,\n TABLE_CELL_TYPE_MANIFEST_IMAGE,\n TABLE_CELL_TYPE_MANIFEST_INTEGER,\n TABLE_CELL_TYPE_MANIFEST_PHONE,\n TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE,\n TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE_ICON,\n TABLE_CELL_TYPE_MANIFEST_STRING\n} from './table-cell-type-manifests'\n\nconst cellTypeComponents = [\n TableCellTypeStringComponent,\n TableCellTypeCurrencyComponent,\n TableCellTypeDateComponent,\n TableCellTypeDecimalComponent,\n TableCellTypeIconComponent,\n TableCellTypeIntegerComponent,\n TableCellTypeProgressCircleComponent,\n TableCellTypeProgressCircleIconComponent,\n TableCellTypePhoneComponent\n]\n\nconst cellTypeProviders = [\n TABLE_CELL_TYPE_MANIFEST_STRING,\n TABLE_CELL_TYPE_MANIFEST_INTEGER,\n TABLE_CELL_TYPE_MANIFEST_CURRENCY,\n TABLE_CELL_TYPE_MANIFEST_DECIMAL,\n TABLE_CELL_TYPE_MANIFEST_DATE,\n TABLE_CELL_TYPE_MANIFEST_ICON,\n TABLE_CELL_TYPE_MANIFEST_IMAGE,\n TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE,\n TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE_ICON,\n TABLE_CELL_TYPE_MANIFEST_PHONE\n]\n\n@NgModule({\n declarations: [\n ...cellTypeComponents\n ],\n imports: [\n CommonModule,\n NgbTooltipModule,\n RouterModule,\n TheSeamSharedModule,\n TheSeamIconModule,\n PortalModule,\n TheSeamPopoverModule,\n TheSeamProgressModule,\n TheSeamTelInputModule,\n TheSeamAssetReaderModule,\n TheSeamTableCellTypeModule\n ],\n providers: [\n ...cellTypeProviders\n ],\n exports: [\n ...cellTypeComponents\n ]\n})\nexport class TheSeamTableCellTypesModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i7","i5","i6"],"mappings":"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"}
1
+ {"version":3,"file":"theseam-ui-common-table-cell-types.mjs","sources":["../../../projects/ui-common/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-date/table-cell-type-date.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-date/table-cell-type-date.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-string/table-cell-type-string.component.ts","../../../projects/ui-common/table-cell-types/table-cell-type-string/table-cell-type-string.component.html","../../../projects/ui-common/table-cell-types/table-cell-type-manifests.ts","../../../projects/ui-common/table-cell-types/table-cell-types.module.ts","../../../projects/ui-common/table-cell-types/theseam-ui-common-table-cell-types.ts"],"sourcesContent":["import { formatCurrency } from '@angular/common'\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\nimport { isNumeric, notNullOrUndefined } from '@theseam/ui-common/utils'\n\nimport { coerceBooleanProperty } from '@angular/cdk/coercion'\n\nimport { TableCellTypeConfigCurrency } from './table-cell-type-currency-config'\n\n@Component({\n selector: 'seam-table-cell-type-currency',\n templateUrl: './table-cell-type-currency.component.html',\n styleUrls: ['./table-cell-type-currency.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeCurrencyComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: string | null | undefined\n\n row?: any\n rowIndex?: number\n colData?: TheSeamTableColumn<'currency', TableCellTypeConfigCurrency>\n textAlign?: 'left' | 'center' | 'right'\n // TODO: implement\n // titleAttr?: string\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'currency', TableCellTypeConfigCurrency>\n ) {\n const tableData = _tableData\n this.value = tableData && this._formatCurrency(tableData.value, tableData)\n this.row = tableData && tableData.row\n this.rowIndex = tableData && tableData.rowIndex\n this.colData = tableData && tableData.colData\n this.textAlign = this._parseConfigValue(tableData?.colData?.cellTypeConfig?.textAlign, tableData) || 'right'\n // this.titleAttr = this._parseConfigValue(tableData?.colData?.cellTypeConfig?.titleAttr, tableData) || this.value\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = this._formatCurrency(v.changes.value.currentValue, tableData)\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n private _formatCurrency(currentValue?: any, tableData?: TableCellData<'currency', TableCellTypeConfigCurrency>): string {\n const config = tableData?.colData?.cellTypeConfig\n const defaultToEmpty = notNullOrUndefined(config?.defaultToEmpty)\n ? this._parseConfigValue(coerceBooleanProperty(config?.defaultToEmpty), tableData) : true\n let _currentValue = currentValue\n const valueIsNumeric = isNumeric(_currentValue)\n\n if (!valueIsNumeric) {\n if (defaultToEmpty) {\n // return empty string instead of $0 when currentValue is empty or unparseable\n return ''\n } else {\n // set non-numeric value to 0 so it can be formatted the same as other numbers\n _currentValue = 0\n }\n }\n\n const locale = this._parseConfigValue(config?.locale, tableData) || 'en-US'\n const currency = this._parseConfigValue(config?.currency, tableData) || '$'\n const currencyCode = this._parseConfigValue(config?.currencyCode, tableData) || 'USD'\n\n const minIntegerDigits = this._parseConfigValue(config?.minIntegerDigits, tableData) || 1\n const minFractionDigits = this._parseConfigValue(config?.minFractionDigits, tableData) || 2\n const maxFractionDigits = this._parseConfigValue(config?.maxFractionDigits, tableData) || 2\n const format = `${minIntegerDigits}.${minFractionDigits}-${maxFractionDigits}`\n\n return formatCurrency(_currentValue, locale, currency, currencyCode, format)\n }\n\n private _parseConfigValue(val?: any, tableData?: TableCellData<'currency', TableCellTypeConfigCurrency>) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, tableData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n}\n","<div [class]=\"'text-' + textAlign\">\n <seam-table-cell-type-selector\n type=\"string\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n</div>\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeConfigDate } from './table-cell-type-date-config'\n\n@Component({\n selector: 'seam-table-cell-type-date',\n templateUrl: './table-cell-type-date.component.html',\n styleUrls: ['./table-cell-type-date.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeDateComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: string | undefined | null\n @Input() format: string | undefined | null\n\n constructor(\n private _cdf: ChangeDetectorRef,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'date', TableCellTypeConfigDate>\n ) {\n const _data = _tableData\n\n this.value = _data && _data.value\n this.format = _data && _data.colData && _data.colData.cellTypeConfig && _data.colData.cellTypeConfig.format\n\n if (_data) {\n _data.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n const colData = v.changes.colData.currentValue\n if (colData && colData.cellTypeConfig && colData.cellTypeConfig.format !== this.format) {\n this.format = colData.cellTypeConfig.format\n }\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n}\n","<div class=\"td-text-truncate\" [title]=\"value | date: format || 'yyyy-MM-dd h:mm aaa'\">\n {{ value | date: format || 'yyyy-MM-dd h:mm aaa' }}\n</div>\n","import { formatNumber } from '@angular/common'\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\nimport { isNumeric, notNullOrUndefined } from '@theseam/ui-common/utils'\n\nimport { coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { TableCellTypeConfigDecimal } from './table-cell-type-decimal-config'\n\n@Component({\n selector: 'seam-table-cell-type-decimal',\n templateUrl: './table-cell-type-decimal.component.html',\n styleUrls: ['./table-cell-type-decimal.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeDecimalComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: string | undefined | null\n\n row?: any\n rowIndex?: number\n colData?: TheSeamTableColumn<'decimal', TableCellTypeConfigDecimal>\n textAlign?: 'left' | 'center' | 'right'\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'decimal', TableCellTypeConfigDecimal>\n ) {\n const tableData = _tableData\n this.value = tableData && this._formatDecimal(tableData.value, tableData)\n this.row = tableData && tableData.row\n this.rowIndex = tableData && tableData.rowIndex\n this.colData = tableData && tableData.colData\n this.textAlign = this._parseConfigValue(tableData?.colData?.cellTypeConfig?.textAlign, tableData) || 'right'\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = this._formatDecimal(v.changes.value.currentValue, tableData)\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n private _formatDecimal(currentValue?: any, tableData?: TableCellData<'decimal', TableCellTypeConfigDecimal> | undefined): string {\n const config = tableData?.colData?.cellTypeConfig\n const defaultToEmpty = notNullOrUndefined(config?.defaultToEmpty)\n ? this._parseConfigValue(coerceBooleanProperty(config?.defaultToEmpty), tableData) : true\n const formatDecimal = notNullOrUndefined(config?.formatNumber)\n ? this._parseConfigValue(coerceBooleanProperty(config?.formatNumber), tableData) : true\n let _currentValue = currentValue\n const valueIsNumeric = isNumeric(_currentValue)\n\n // unparseable values are OK to return as long as we're not trying to format them\n if (!valueIsNumeric && formatDecimal) {\n if (defaultToEmpty) {\n // return empty string instead of 0 when currentValue is empty or unparseable\n return ''\n } else {\n // set non-numeric value to 0 so it can be formatted the same as other numbers\n _currentValue = 0\n }\n }\n\n const locale = this._parseConfigValue(config?.locale, tableData) || 'en-US'\n const minIntegerDigits = this._parseConfigValue(config?.minIntegerDigits, tableData) || 1\n const minFractionDigits = this._parseConfigValue(config?.minFractionDigits, tableData) || 0\n const maxFractionDigits = this._parseConfigValue(config?.maxFractionDigits, tableData) || 3\n const format = `${minIntegerDigits}.${minFractionDigits}-${maxFractionDigits}`\n\n return formatDecimal ? formatNumber(_currentValue, locale, format) : _currentValue\n }\n\n private _parseConfigValue(val?: any, tableData?: TableCellData<'decimal', TableCellTypeConfigDecimal>) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, tableData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n}\n","<div [class]=\"'text-' + textAlign\">\n <seam-table-cell-type-selector\n type=\"string\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n Optional\n} from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { DatatableComponent } from '@theseam/ui-common/datatable'\nimport { getKnownIcon, SeamIcon, TheSeamIconType } from '@theseam/ui-common/icon'\nimport { TableComponent } from '@theseam/ui-common/table'\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeConfigIcon, TableCellTypeIconConfigAction } from './table-cell-type-icon-config'\n\nexport type IconTemplateType = 'default' | 'link' | 'link-external' | 'link-encrypted' | 'button'\n\n@Component({\n selector: 'seam-table-cell-type-icon',\n templateUrl: './table-cell-type-icon.component.html',\n styleUrls: ['./table-cell-type-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeIconComponent<R = any, V = any> implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input()\n get value() { return this._value }\n set value(value: string | undefined | null) {\n this._value = value\n this._icon = value ? getKnownIcon(value) || value : value\n }\n private _value: string | undefined | null\n\n @Input()\n get config() { return this._config }\n set config(value: TableCellTypeConfigIcon | undefined | null) {\n this._config = value\n if (value) {\n this.setAction(value.action)\n this._linkClass = this._parseConfigValue(value.linkClass)\n this._iconClass = this._parseConfigValue(value.iconClass)\n this._iconType = value.iconType\n this._title = this._parseConfigValue(value.titleAttr)\n this._srOnly = this._parseConfigValue(value.srOnly)\n this._tooltip = this._parseConfigValue(value.tooltip)\n if (this._tooltip) {\n this._tooltipClass = this._parseConfigValue(value.tooltipClass)\n this._tooltipPlacement = this._parseConfigValue(value.tooltipPlacement) || 'auto'\n this._tooltipContainer = this._parseConfigValue(value.tooltipContainer)\n this._tooltipDisabled = false\n } else {\n this._tooltipDisabled = true\n }\n }\n }\n private _config: TableCellTypeConfigIcon | undefined | null\n\n _icon: SeamIcon | undefined | null\n _link?: string\n _queryParams?: { [k: string]: any }\n _tplType: IconTemplateType = 'default'\n _title?: string\n _srOnly?: string\n _linkClass?: string\n _iconClass?: string\n _iconType?: TheSeamIconType\n _target?: string\n _tooltip?: string\n _tooltipClass?: string\n _tooltipPlacement?: string\n _tooltipContainer?: string\n _tooltipDisabled = true\n\n _buttonAction?: TableCellTypeIconConfigAction\n\n _tableCellData?: TableCellData<'icon', TableCellTypeConfigIcon>\n _row?: any\n _rowIndex?: number\n _colData?: TheSeamTableColumn<'icon', TableCellTypeConfigIcon>\n\n _download?: boolean\n _detectMimeContent?: boolean\n\n @HostBinding('class.datatable-cell-type') _isDatatable = false\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() private _datatable?: DatatableComponent,\n @Optional() private _table?: TableComponent,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'icon', TableCellTypeConfigIcon>\n ) {\n if (_datatable) {\n this._isDatatable = true\n // console.log('isDataTable')\n }\n // if (_table) {\n // console.log('isTable')\n // }\n\n const _data = _tableData\n this._tableCellData = _tableData\n\n this._row = _data && _data.row\n this._rowIndex = _data && _data.rowIndex\n\n this.value = _data && _data.value\n this._colData = _data && _data.colData\n if (_data && _data.colData && (_data.colData as any).cellTypeConfig) {\n this.config = (_data.colData as any).cellTypeConfig\n }\n\n if (_data) {\n _data.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this.config = this._config\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n const colData = v.changes.colData.currentValue\n if (colData && colData.cellTypeConfig !== this.config) {\n this.config = colData.cellTypeConfig\n } else {\n this.config = undefined\n }\n this._cdf.markForCheck()\n } else {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'row')) {\n this._cdf.markForCheck()\n }\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n public setAction(configAction?: TableCellTypeIconConfigAction) {\n let newTplType: IconTemplateType = 'default'\n let link: string | undefined\n let download = false\n let detectMimeContent = false\n let target: string | undefined\n let queryParams: { [l: string]: any } | undefined\n\n if (configAction) {\n if (configAction.type === 'link') {\n link = this._parseConfigValue(configAction.link)\n if (link !== undefined && link !== null) {\n newTplType = this._parseConfigValue(configAction.asset)\n ? 'link-encrypted'\n : this._parseConfigValue(configAction.external) ? 'link-external' : 'link'\n download = !!this._parseConfigValue(configAction.download)\n detectMimeContent = !!this._parseConfigValue(configAction.detectMimeContent)\n target = this._parseConfigValue(configAction.target)\n queryParams = this._parseConfigValue(configAction.queryParams)\n }\n } else if (configAction.type === 'modal') {\n newTplType = 'button'\n this._buttonAction = configAction\n }\n }\n\n this._tplType = newTplType\n this._link = link\n this._download = download\n this._detectMimeContent = detectMimeContent\n this._target = target\n this._queryParams = queryParams\n }\n\n private _parseConfigValue(val: any) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, this._tableCellData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n _doButtonAction() {\n if (this._buttonAction && this._buttonAction.type === 'modal') {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(this.value, this._tableCellData)\n this._tableCellTypeHelpers.handleModalAction(this._buttonAction, contextFn)\n .subscribe(\n r => {},\n // eslint-disable-next-line no-console\n err => console.error(err),\n () => this._actionRefreshRequest()\n )\n }\n }\n\n private _actionRefreshRequest() {\n if (this._datatable) {\n this._datatable.triggerActionRefreshRequest()\n } else if (this._table) {\n this._table.triggerActionRefreshRequest()\n }\n }\n\n}\n","<ng-container *ngIf=\"_icon\">\n <div *ngIf=\"!_tplType || _tplType === 'default'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass || ''\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </a>\n </div>\n\n <div *ngIf=\"_tplType === 'link'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [routerLink]=\"_link\"\n [queryParams]=\"_queryParams\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon *ngIf=\"_icon\" [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </a>\n </div>\n\n <div *ngIf=\"_tplType === 'link-external'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [attr.href]=\"_link\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon *ngIf=\"_icon\" [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </a>\n </div>\n\n <div *ngIf=\"_tplType === 'link-encrypted'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <button\n class=\"btn btn-link p-0 m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n type=\"button\"\n [seamEncryptedAssetLink]=\"_link\"\n [seamDetectMimeFromContent]=\"_detectMimeContent\"\n [seamDownloadAsset]=\"_download\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon *ngIf=\"_icon\" iconType=\"styled-square\" [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </button>\n </div>\n\n <div *ngIf=\"_tplType === 'button'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\"\n (click)=\"_doButtonAction()\">\n <button\n class=\"btn btn-link p-0 m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n type=\"button\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [ngbTooltip]=\"_tooltip\"\n [tooltipClass]=\"$any(_tooltipClass)\"\n [placement]=\"$any(_tooltipPlacement)\"\n [container]=\"$any(_tooltipContainer)\"\n [disableTooltip]=\"_tooltipDisabled\">\n <seam-icon *ngIf=\"_icon\" iconType=\"styled-square\" [icon]=\"_icon\" size=\"lg\" [iconType]=\"_iconType\" [iconClass]=\"_iconClass\"></seam-icon>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </button>\n </div>\n</ng-container>\n","import { formatNumber } from '@angular/common'\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, OnInit, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\nimport { isNumeric, notNullOrUndefined } from '@theseam/ui-common/utils'\n\nimport { coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { TableCellTypeConfigInteger } from './table-cell-type-integer-config'\n\n@Component({\n selector: 'seam-table-cell-type-integer',\n templateUrl: './table-cell-type-integer.component.html',\n styleUrls: ['./table-cell-type-integer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeIntegerComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: string | null | undefined\n\n row?: any\n rowIndex?: number\n colData?: TheSeamTableColumn<'integer', TableCellTypeConfigInteger>\n textAlign?: 'left' | 'center' | 'right'\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'integer', TableCellTypeConfigInteger>\n ) {\n const tableData = _tableData\n this.value = tableData && this._formatInteger(tableData.value, tableData)\n this.row = tableData && tableData.row\n this.rowIndex = tableData && tableData.rowIndex\n this.colData = tableData && tableData.colData\n this.textAlign = this._parseConfigValue(tableData?.colData?.cellTypeConfig?.textAlign, tableData) || 'right'\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = this._formatInteger(v.changes.value.currentValue, tableData)\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n private _formatInteger(currentValue?: any, tableData?: TableCellData<'integer', TableCellTypeConfigInteger> | undefined): string {\n const config = tableData?.colData?.cellTypeConfig\n const defaultToEmpty = notNullOrUndefined(config?.defaultToEmpty)\n ? this._parseConfigValue(coerceBooleanProperty(config?.defaultToEmpty), tableData) : true\n const formatInteger = notNullOrUndefined(config?.formatNumber)\n ? this._parseConfigValue(coerceBooleanProperty(config?.formatNumber), tableData) : true\n let _currentValue = currentValue\n const valueIsNumeric = isNumeric(_currentValue)\n\n // unparseable values are OK to return as long as we're not trying to format them\n if (!valueIsNumeric && formatInteger) {\n if (defaultToEmpty) {\n // return empty string instead of 0 when currentValue is empty or unparseable\n return ''\n } else {\n // set non-numeric value to 0 so it can be formatted the same as other numbers\n _currentValue = 0\n }\n }\n\n const locale = this._parseConfigValue(config?.locale, tableData) || 'en-US'\n const minIntegerDigits = this._parseConfigValue(config?.minIntegerDigits, tableData) || 1\n const format = `${minIntegerDigits}.0-0`\n\n return formatInteger ? formatNumber(_currentValue, locale, format) : _currentValue\n }\n\n private _parseConfigValue(val?: any, tableData?: TableCellData<'integer', TableCellTypeConfigInteger>) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, tableData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n}\n","<div [class]=\"'text-' + textAlign\">\n <seam-table-cell-type-selector\n type=\"string\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n</div>\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData } from '@theseam/ui-common/table-cell-type'\nimport { coercePhoneNumberFormat, THESEAM_DEFAULT_PHONE_NUMBER_FORMAT } from '@theseam/ui-common/tel-input'\nimport type { intlTelInputUtils } from '@theseam/ui-common/tel-input'\nimport { hasProperty } from '@theseam/ui-common/utils'\n\nimport { TableCellTypeConfigPhone } from './table-cell-type-phone-config'\n\n@Component({\n selector: 'seam-table-cell-type-phone',\n templateUrl: './table-cell-type-phone.component.html',\n styleUrls: ['./table-cell-type-phone.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypePhoneComponent implements OnDestroy {\n\n /** @ignore */\n private readonly _ngUnsubscribe = new Subject<void>()\n\n /** @ignore */\n _format: intlTelInputUtils.numberFormat = THESEAM_DEFAULT_PHONE_NUMBER_FORMAT\n\n @Input() value?: string | null\n @Input()\n set format(value: intlTelInputUtils.numberFormat) { this._format = coercePhoneNumberFormat(value) }\n get format() { return this._format }\n\n constructor(\n private _cdf: ChangeDetectorRef,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'phone', TableCellTypeConfigPhone>\n ) {\n const _data = _tableData\n\n this.value = _data && _data.value\n if (_data && _data.colData && _data.colData.cellTypeConfig && hasProperty(_data.colData.cellTypeConfig, 'format')) {\n this.format = _data.colData.cellTypeConfig.format as intlTelInputUtils.numberFormat\n }\n\n if (_data) {\n _data.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n const colData = v.changes.colData.currentValue\n if (colData && hasProperty(colData, 'cellTypeConfig') &&\n hasProperty(colData.cellTypeConfig, 'format') &&\n colData.cellTypeConfig.format !== this.format\n ) {\n this.format = colData.cellTypeConfig.format\n } else {\n this.format = THESEAM_DEFAULT_PHONE_NUMBER_FORMAT\n }\n this._cdf.markForCheck()\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n}\n","<ng-container *ngIf=\"((value || '') | phoneNumber: _format) as num\">\n <div class=\"td-text-truncate\" [title]=\"num\">\n {{ num }}\n </div>\n</ng-container>\n<!-- <div class=\"td-text-truncate\" [title]=\"value | phoneNumber: _format\">\n {{ value | date: format || 'yyyy-MM-dd h:mm aaa' }}\n</div> -->\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, OnDestroy, Optional } from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { SeamIcon } from '@theseam/ui-common/icon'\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeConfigProgressCircleIcon } from './table-cell-type-progress-circle-icon-config'\n\n@Component({\n selector: 'seam-table-cell-type-progress-circle-icon',\n templateUrl: './table-cell-type-progress-circle-icon.component.html',\n styleUrls: ['./table-cell-type-progress-circle-icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeProgressCircleIconComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: number | null | undefined\n\n row?: any\n rowIndex?: number\n colData?: TheSeamTableColumn<'progress-circle-icon', TableCellTypeConfigProgressCircleIcon>\n\n displayIcon = false\n icon?: SeamIcon\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'progress-circle-icon', TableCellTypeConfigProgressCircleIcon>\n ) {\n const tableData = _tableData\n this.value = tableData && tableData.value\n this.row = tableData && tableData.row\n this.rowIndex = tableData && tableData.rowIndex\n this.colData = tableData && tableData.colData\n\n this._setIcon(tableData)\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this._setIcon(tableData)\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n this._setIcon(tableData)\n this._cdf.markForCheck()\n } else {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'row')) {\n this._setIcon(tableData)\n this._cdf.markForCheck()\n }\n }\n })\n }\n }\n\n private _setIcon(tableData?: TableCellData<'progress-circle-icon', TableCellTypeConfigProgressCircleIcon>) {\n if (tableData &&\n tableData.colData &&\n tableData.colData.cellTypeConfig &&\n tableData.colData.cellTypeConfig.displayIcon &&\n tableData.colData.cellTypeConfig.icon &&\n this._parseConfigValue(tableData.colData.cellTypeConfig.displayIcon, tableData) &&\n this._parseConfigValue(tableData.colData.cellTypeConfig.icon, tableData)) {\n this.icon = this._parseConfigValue(tableData.colData.cellTypeConfig.icon, tableData)\n this.displayIcon = this._parseConfigValue(tableData.colData.cellTypeConfig.displayIcon, tableData)\n }\n }\n\n private _parseConfigValue(val: any, tableData?: TableCellData<'progress-circle-icon', TableCellTypeConfigProgressCircleIcon>) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, tableData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n}\n","<seam-table-cell-type-selector\n *ngIf=\"displayIcon; else progressCircle\"\n type=\"icon\"\n [value]=\"icon\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n<ng-template #progressCircle>\n <seam-table-cell-type-selector\n type=\"progress-circle\"\n [value]=\"value\"\n [rowIndex]=\"rowIndex\"\n [row]=\"row\"\n [colData]=\"colData\"></seam-table-cell-type-selector>\n</ng-template>\n","import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion'\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n Optional,\n} from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { DatatableComponent } from '@theseam/ui-common/datatable'\nimport { TableComponent } from '@theseam/ui-common/table'\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\n\nimport { IconTemplateType } from './../table-cell-type-icon/table-cell-type-icon.component'\nimport { TableCellTypeConfigProgressCircle, TableCellTypeProgressCircleConfigAction } from './table-cell-type-progress-circle-config'\n\n@Component({\n selector: 'seam-table-cell-type-progress-circle',\n templateUrl: './table-cell-type-progress-circle.component.html',\n styleUrls: ['./table-cell-type-progress-circle.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeProgressCircleComponent implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input() value: number | null | undefined\n\n _tableCellData?: TableCellData<'progress-circle', TableCellTypeConfigProgressCircle>\n colData?: TheSeamTableColumn<'progress-circle', TableCellTypeConfigProgressCircle>\n\n fillBackground = false\n showText = false\n hiddenOnEmpty = true\n pending = false\n tooltip?: string\n tooltipClass?: string\n tooltipPlacement?: string\n tooltipContainer?: string\n _tooltipDisabled = false\n\n _title?: string\n _srOnly?: string\n\n _link?: string\n _linkClass = '' // TODO: Decide if this makes sense\n _tplType: IconTemplateType = 'default'\n _target?: string\n _queryParams?: { [k: string]: any }\n\n _buttonAction?: TableCellTypeProgressCircleConfigAction\n\n _download?: boolean\n _detectMimeContent?: boolean\n\n private _config: TableCellTypeConfigProgressCircle | undefined | null\n\n @HostBinding('class.datatable-cell-type') _isDatatable = false\n\n constructor(\n private _cdf: ChangeDetectorRef,\n private _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() private _datatable?: DatatableComponent,\n @Optional() private _table?: TableComponent,\n @Optional() @Inject(TABLE_CELL_DATA) _tableData?: TableCellData<'progress-circle', TableCellTypeConfigProgressCircle>\n ) {\n if (_datatable) {\n this._isDatatable = true\n }\n\n const tableData = _tableData\n this._tableCellData = _tableData\n\n this.value = tableData && coerceNumberProperty(tableData.value)\n this.colData = tableData && tableData.colData\n\n if (this.colData && this.colData.cellTypeConfig) {\n this._setCellTypeConfigProps(this.colData.cellTypeConfig)\n }\n\n if (tableData) {\n tableData.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = coerceNumberProperty(v.changes.value.currentValue)\n if (this._config) {\n this._setCellTypeConfigProps(this._config)\n }\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n this.colData = v.changes.colData.currentValue\n if (this.colData && this.colData.cellTypeConfig) {\n this._setCellTypeConfigProps(this.colData.cellTypeConfig)\n }\n this._cdf.markForCheck()\n } else {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'row')) {\n if (this.colData?.cellTypeConfig) {\n this._setCellTypeConfigProps(this.colData.cellTypeConfig)\n this._cdf.markForCheck()\n }\n }\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n private _parseConfigValue(val: any) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, this._tableCellData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n public setAction(configAction?: TableCellTypeProgressCircleConfigAction) {\n let newTplType: IconTemplateType = 'default'\n let link: string | undefined\n let download = false\n let detectMimeContent = false\n let target: string | undefined\n let queryParams: { [k: string]: any } | undefined\n\n if (configAction) {\n if (configAction.type === 'link') {\n link = this._parseConfigValue(configAction.link)\n if (link !== undefined && link !== null) {\n newTplType = this._parseConfigValue(configAction.asset)\n ? 'link-encrypted'\n : this._parseConfigValue(configAction.external) ? 'link-external' : 'link'\n download = !!this._parseConfigValue(configAction.download)\n detectMimeContent = !!this._parseConfigValue(configAction.detectMimeContent)\n target = this._parseConfigValue(configAction.target)\n queryParams = this._parseConfigValue(configAction.queryParams)\n }\n } else if (configAction.type === 'modal') {\n newTplType = 'button'\n this._buttonAction = configAction\n }\n }\n\n this._tplType = newTplType\n this._link = link\n this._download = download\n this._detectMimeContent = detectMimeContent\n this._target = target\n this._queryParams = queryParams\n }\n\n private _setCellTypeConfigProps(config: TableCellTypeConfigProgressCircle): void {\n this._config = config\n this.setAction(config.action)\n this.fillBackground = coerceBooleanProperty(this._parseConfigValue(config.fillBackground))\n this.showText = coerceBooleanProperty(this._parseConfigValue(config.showText))\n this.hiddenOnEmpty = coerceBooleanProperty(this._parseConfigValue(config.hiddenOnEmpty))\n this.pending = coerceBooleanProperty(this._parseConfigValue(config.pending))\n this.tooltip = this._parseConfigValue(config.tooltip)\n\n this.tooltip = this._parseConfigValue(config.tooltip)\n if (this.tooltip) {\n this.tooltipClass = this._parseConfigValue(config.tooltipClass)\n this.tooltipPlacement = this._parseConfigValue(config.tooltipPlacement) || 'auto'\n this.tooltipContainer = this._parseConfigValue(config.tooltipContainer)\n this._tooltipDisabled = false\n } else {\n this._tooltipDisabled = true\n }\n\n this._title = this._parseConfigValue(config.titleAttr)\n this._srOnly = this._parseConfigValue(config.srOnly)\n }\n\n _doButtonAction() {\n if (this._buttonAction && this._buttonAction.type === 'modal') {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(this.value, this._tableCellData)\n this._tableCellTypeHelpers.handleModalAction(this._buttonAction, contextFn)\n .subscribe(\n r => {},\n // eslint-disable-next-line no-console\n err => console.error(err),\n () => this._actionRefreshRequest()\n )\n }\n }\n\n private _actionRefreshRequest() {\n if (this._datatable) {\n this._datatable.triggerActionRefreshRequest()\n } else if (this._table) {\n this._table.triggerActionRefreshRequest()\n }\n }\n\n}\n","<ng-container *ngIf=\"!_tplType || _tplType === 'default'\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link'\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [routerLink]=\"_link\"\n [queryParams]=\"_queryParams\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-external'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <a class=\"d-block m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n [attr.href]=\"_link\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\"\n [attr.target]=\"_target\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-encrypted'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\">\n <button\n class=\"btn btn-link p-0 m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n type=\"button\"\n [seamEncryptedAssetLink]=\"_link\"\n [seamDetectMimeFromContent]=\"_detectMimeContent\"\n [seamDownloadAsset]=\"_download\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n </button>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'button'\"\n class=\"d-flex align-items-center justify-center\"\n [class.datatable-icon-fix]=\"_isDatatable\"\n (click)=\"_doButtonAction()\">\n <button\n class=\"btn btn-link p-0 m-auto{{ _linkClass ? ' ' + _linkClass : '' }}\"\n type=\"button\"\n [attr.title]=\"_tooltipDisabled ? _title : undefined\">\n <ng-template [ngTemplateOutlet]=\"progressCircleTpl\"></ng-template>\n </button>\n</ng-container>\n\n<ng-template #progressCircleTpl>\n <div class=\"progress-circle-wrapper\">\n <seam-progress-circle\n class=\"progress-circle\"\n [fillBackground]=\"fillBackground\"\n [showText]=\"showText\"\n [hiddenOnEmpty]=\"hiddenOnEmpty\"\n [percentage]=\"$any(value)\"\n [pending]=\"pending\"\n [ngbTooltip]=\"tooltip\"\n [tooltipClass]=\"$any(tooltipClass)\"\n [placement]=\"$any(tooltipPlacement)\"\n [container]=\"$any(tooltipContainer)\">\n </seam-progress-circle>\n <span *ngIf=\"_srOnly\" class=\"sr-only\">{{ _srOnly }}</span>\n </div>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional\n} from '@angular/core'\nimport { Subject } from 'rxjs'\nimport { takeUntil } from 'rxjs/operators'\n\nimport { DatatableComponent } from '@theseam/ui-common/datatable'\nimport { TableComponent } from '@theseam/ui-common/table'\nimport { TableCellTypesHelpersService, TABLE_CELL_DATA } from '@theseam/ui-common/table-cell-type'\nimport type { TableCellData, TheSeamTableColumn } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeConfigString, TableCellTypeStringConfigAction } from './table-cell-type-string-config'\n\nexport type StringTemplateType = 'default' | 'link' | 'link-external' | 'link-encrypted' | 'button'\n\n@Component({\n selector: 'seam-table-cell-type-string',\n templateUrl: './table-cell-type-string.component.html',\n styleUrls: ['./table-cell-type-string.component.scss'],\n host: { },\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TableCellTypeStringComponent implements OnInit, OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input()\n get value() { return this._value }\n set value(val: string | null | undefined) {\n this._value = val\n // TODO: This is temporary to test the feature and will be fixed when the\n // dynamic column data is fixed. The plan is to add a config toggle to\n // always enable and depending on performance it could try to decide on its\n // own based on content size.\n if (this.value && this.value.length > 30) {\n this.canPopover = true\n }\n }\n _value: string | null | undefined\n\n @Input()\n get config() { return this._config }\n set config(value: TableCellTypeConfigString | undefined | null) {\n this._config = value\n if (value) {\n this.setConfig(value)\n }\n }\n private _config: TableCellTypeConfigString | undefined | null\n\n _tplType: StringTemplateType = 'default'\n _link?: string\n _title?: string\n _queryParams?: { [k: string]: any }\n\n _style?: string\n _class?: string\n\n _buttonAction?: TableCellTypeStringConfigAction\n\n _tableCellData?: TableCellData<'string', TableCellTypeConfigString>\n _row?: any\n _rowIndex?: number\n _colData?: TheSeamTableColumn<'string', TableCellTypeConfigString>\n\n _download?: boolean\n _detectMimeContent?: boolean\n\n @Input()\n set title(value: string | undefined) { this._title = value }\n get title(): string | undefined { return this._title }\n\n @HostBinding('attr.title') get _titleAttr() { return this.title || this.value }\n\n @Input()\n set style(value: string | undefined) { this._style = value }\n get style(): string | undefined { return this._style }\n\n @HostBinding('attr.style') get _styleAttr() { return this.style }\n\n @Input()\n set classAttr(value: string | undefined) { this._class = value }\n get classAttr(): string | undefined { return this._class }\n\n @HostBinding('class') get _classAttr() { return this.classAttr }\n\n canPopover = false\n\n constructor(\n private readonly _cdf: ChangeDetectorRef,\n private readonly _tableCellTypeHelpers: TableCellTypesHelpersService,\n @Optional() private _datatable?: DatatableComponent,\n @Optional() private _table?: TableComponent,\n @Optional() @Inject(TABLE_CELL_DATA) readonly _tableData?: TableCellData<'string', TableCellTypeConfigString>\n ) {\n const _data = _tableData\n this._tableCellData = _tableData\n\n this._row = _data && _data.row\n this._rowIndex = _data && _data.rowIndex\n\n this.value = _data && _data.value\n this._colData = _data && _data.colData\n if (_data && _data.colData && (_data.colData as any).cellTypeConfig) {\n this.config = (_data.colData as any).cellTypeConfig\n }\n }\n\n ngOnInit() {\n const _data = this._tableData\n if (_data) {\n _data.changed\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(v => {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'value')) {\n this.value = v.changes.value.currentValue\n this._cdf.markForCheck()\n }\n\n if (Object.prototype.hasOwnProperty.call(v.changes, 'colData')) {\n const colData = v.changes.colData.currentValue\n if (colData && colData.cellTypeConfig !== this.config) {\n this.config = colData.cellTypeConfig\n } else {\n this.config = undefined\n }\n this._cdf.markForCheck()\n } else {\n if (Object.prototype.hasOwnProperty.call(v.changes, 'row')) {\n // eslint-disable-next-line no-self-assign\n this.config = this.config\n this._cdf.markForCheck()\n }\n }\n })\n }\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n public setAction(configAction?: TableCellTypeStringConfigAction) {\n let newTplType: StringTemplateType = 'default'\n let link: string | undefined\n let download = false\n let detectMimeContent = false\n let queryParams: { [k: string]: any } | undefined\n\n if (configAction) {\n if (configAction.type === 'link') {\n link = this._parseConfigValue(configAction.link)\n if (link !== undefined && link !== null) {\n newTplType = this._parseConfigValue(configAction.asset)\n ? 'link-encrypted'\n : this._parseConfigValue(configAction.external) ? 'link-external' : 'link'\n download = !!this._parseConfigValue(configAction.download)\n detectMimeContent = !!this._parseConfigValue(configAction.detectMimeContent)\n queryParams = this._parseConfigValue(configAction.queryParams)\n }\n } else if (configAction.type === 'modal') {\n newTplType = 'button'\n this._buttonAction = configAction\n }\n }\n\n this._tplType = newTplType\n this._link = link\n this._download = download\n this._detectMimeContent = detectMimeContent\n this._queryParams = queryParams\n }\n\n public setConfig(config?: TableCellTypeConfigString): void {\n if (!config) { return }\n\n const title = this._parseConfigValue(config.titleAttr)\n if (title) {\n this.title = title\n }\n\n const style = this._parseConfigValue(config.styleAttr)\n if (style) {\n this.style = style\n }\n\n const classAttr = this._parseConfigValue(config.classAttr)\n if (classAttr) {\n this.classAttr = classAttr\n }\n\n this.setAction(config.action)\n }\n\n private _parseConfigValue(val: any) {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(val, this._tableCellData)\n return this._tableCellTypeHelpers.parseValueProp(val, contextFn)\n }\n\n _doButtonAction() {\n if (this._buttonAction && this._buttonAction.type === 'modal') {\n const contextFn = () => this._tableCellTypeHelpers.getValueContext(this.value, this._tableCellData)\n this._tableCellTypeHelpers.handleModalAction(this._buttonAction, contextFn)\n .subscribe(\n r => {},\n // eslint-disable-next-line no-console\n err => console.error(err),\n () => this._actionRefreshRequest()\n )\n }\n }\n\n private _actionRefreshRequest() {\n if (this._datatable) {\n this._datatable.triggerActionRefreshRequest()\n } else if (this._table) {\n this._table.triggerActionRefreshRequest()\n }\n }\n\n}\n","<ng-template #popoverTpl>\n {{ value }}\n</ng-template>\n\n<ng-template #noPopover>\n <div class=\"text-truncate\">\n {{ value }}\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"!_tplType || _tplType === 'default'\">\n <div *ngIf=\"canPopover; else noPopover\" [seamPopover]=\"popoverTpl\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </div>\n</ng-container>\n\n\n\n<ng-container *ngIf=\"_tplType === 'link'\">\n <a class=\"d-block text-body text-decoration-none\"\n [routerLink]=\"_link\"\n [queryParams]=\"_queryParams\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-external'\">\n <a class=\"d-block text-body text-decoration-none\"\n [attr.href]=\"_link\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </a>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'link-encrypted'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [seamEncryptedAssetLink]=\"_link\"\n [seamDetectMimeFromContent]=\"_detectMimeContent\"\n [seamDownloadAsset]=\"_download\"\n [attr.title]=\"_title\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n<ng-container *ngIf=\"_tplType === 'button'\">\n <button\n class=\"btn btn-link p-0 d-block text-body text-decoration-none\"\n type=\"button\"\n [attr.title]=\"_title\"\n (click)=\"_doButtonAction()\">\n <ng-template [ngTemplateOutlet]=\"noPopover\"></ng-template>\n </button>\n</ng-container>\n\n","import { ITableCellTypeManifestProvider, TABLE_CELL_TYPE_MANIFEST } from '@theseam/ui-common/table-cell-type'\n\nimport { TableCellTypeCurrencyComponent } from './table-cell-type-currency/table-cell-type-currency.component'\nimport { TableCellTypeDateComponent } from './table-cell-type-date/table-cell-type-date.component'\nimport { TableCellTypeDecimalComponent } from './table-cell-type-decimal/table-cell-type-decimal.component'\nimport { TableCellTypeIconComponent } from './table-cell-type-icon/table-cell-type-icon.component'\nimport { TableCellTypeIntegerComponent } from './table-cell-type-integer/table-cell-type-integer.component'\nimport { TableCellTypePhoneComponent } from './table-cell-type-phone/table-cell-type-phone.component'\n// tslint:disable-next-line: max-line-length\nimport { TableCellTypeProgressCircleIconComponent } from './table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component'\nimport { TableCellTypeProgressCircleComponent } from './table-cell-type-progress-circle/table-cell-type-progress-circle.component'\nimport { TableCellTypeStringComponent } from './table-cell-type-string/table-cell-type-string.component'\n\nexport const TABLE_CELL_TYPE_MANIFEST_STRING: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'string',\n component: TableCellTypeStringComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_CURRENCY: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'currency',\n component: TableCellTypeCurrencyComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_DECIMAL: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'decimal',\n component: TableCellTypeDecimalComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_INTEGER: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'integer',\n component: TableCellTypeIntegerComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_DATE: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'date',\n component: TableCellTypeDateComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_ICON: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'icon',\n component: TableCellTypeIconComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_IMAGE: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'image',\n component: TableCellTypeIconComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'progress-circle',\n component: TableCellTypeProgressCircleComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE_ICON: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'progress-circle-icon',\n component: TableCellTypeProgressCircleIconComponent\n },\n multi: true\n}\n\nexport const TABLE_CELL_TYPE_MANIFEST_PHONE: ITableCellTypeManifestProvider = {\n provide: TABLE_CELL_TYPE_MANIFEST,\n useValue: {\n name: 'phone',\n component: TableCellTypePhoneComponent\n },\n multi: true\n}\n","import { PortalModule } from '@angular/cdk/portal'\nimport { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { RouterModule } from '@angular/router'\n\nimport { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap'\n\nimport { TheSeamAssetReaderModule } from '@theseam/ui-common/asset-reader'\nimport { TheSeamIconModule } from '@theseam/ui-common/icon'\nimport { TheSeamPopoverModule } from '@theseam/ui-common/popover'\nimport { TheSeamProgressModule } from '@theseam/ui-common/progress'\nimport { TheSeamSharedModule } from '@theseam/ui-common/shared'\nimport { TheSeamTableCellTypeModule } from '@theseam/ui-common/table-cell-type'\nimport { TheSeamTelInputModule } from '@theseam/ui-common/tel-input'\n\nimport { TableCellTypeCurrencyComponent } from './table-cell-type-currency/table-cell-type-currency.component'\nimport { TableCellTypeDateComponent } from './table-cell-type-date/table-cell-type-date.component'\nimport { TableCellTypeDecimalComponent } from './table-cell-type-decimal/table-cell-type-decimal.component'\nimport { TableCellTypeIconComponent } from './table-cell-type-icon/table-cell-type-icon.component'\nimport { TableCellTypeIntegerComponent } from './table-cell-type-integer/table-cell-type-integer.component'\nimport { TableCellTypePhoneComponent } from './table-cell-type-phone/table-cell-type-phone.component'\n// tslint:disable-next-line: max-line-length\nimport { TableCellTypeProgressCircleIconComponent } from './table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component'\nimport { TableCellTypeProgressCircleComponent } from './table-cell-type-progress-circle/table-cell-type-progress-circle.component'\nimport { TableCellTypeStringComponent } from './table-cell-type-string/table-cell-type-string.component'\n\nimport {\n TABLE_CELL_TYPE_MANIFEST_CURRENCY,\n TABLE_CELL_TYPE_MANIFEST_DATE,\n TABLE_CELL_TYPE_MANIFEST_DECIMAL,\n TABLE_CELL_TYPE_MANIFEST_ICON,\n TABLE_CELL_TYPE_MANIFEST_IMAGE,\n TABLE_CELL_TYPE_MANIFEST_INTEGER,\n TABLE_CELL_TYPE_MANIFEST_PHONE,\n TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE,\n TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE_ICON,\n TABLE_CELL_TYPE_MANIFEST_STRING\n} from './table-cell-type-manifests'\n\nconst cellTypeComponents = [\n TableCellTypeStringComponent,\n TableCellTypeCurrencyComponent,\n TableCellTypeDateComponent,\n TableCellTypeDecimalComponent,\n TableCellTypeIconComponent,\n TableCellTypeIntegerComponent,\n TableCellTypeProgressCircleComponent,\n TableCellTypeProgressCircleIconComponent,\n TableCellTypePhoneComponent\n]\n\nconst cellTypeProviders = [\n TABLE_CELL_TYPE_MANIFEST_STRING,\n TABLE_CELL_TYPE_MANIFEST_INTEGER,\n TABLE_CELL_TYPE_MANIFEST_CURRENCY,\n TABLE_CELL_TYPE_MANIFEST_DECIMAL,\n TABLE_CELL_TYPE_MANIFEST_DATE,\n TABLE_CELL_TYPE_MANIFEST_ICON,\n TABLE_CELL_TYPE_MANIFEST_IMAGE,\n TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE,\n TABLE_CELL_TYPE_MANIFEST_PROGRESS_CIRCLE_ICON,\n TABLE_CELL_TYPE_MANIFEST_PHONE\n]\n\n@NgModule({\n declarations: [\n ...cellTypeComponents\n ],\n imports: [\n CommonModule,\n NgbTooltipModule,\n RouterModule,\n TheSeamSharedModule,\n TheSeamIconModule,\n PortalModule,\n TheSeamPopoverModule,\n TheSeamProgressModule,\n TheSeamTelInputModule,\n TheSeamAssetReaderModule,\n TheSeamTableCellTypeModule\n ],\n providers: [\n ...cellTypeProviders\n ],\n exports: [\n ...cellTypeComponents\n ]\n})\nexport class TheSeamTableCellTypesModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i7","i5","i6"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAmBa,8BAA8B,CAAA;;;AAazC,IAAA,WAAA,CACU,IAAuB,EACvB,qBAAmD,EACtB,UAAmE,EAAA;;AAFhG,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAmB;AACvB,QAAA,IAAqB,CAAA,qBAAA,GAArB,qBAAqB,CAA8B;AAb5C,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAA;QAgBnD,MAAM,SAAS,GAAG,UAAU,CAAA;AAC5B,QAAA,IAAI,CAAC,KAAK,GAAG,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QAC1E,IAAI,CAAC,GAAG,GAAG,SAAS,IAAI,SAAS,CAAC,GAAG,CAAA;QACrC,IAAI,CAAC,QAAQ,GAAG,SAAS,IAAI,SAAS,CAAC,QAAQ,CAAA;QAC/C,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,SAAS,CAAC,OAAO,CAAA;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,SAAS,KAAT,IAAA,IAAA,SAAS,uBAAT,SAAS,CAAE,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,cAAc,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,SAAS,EAAE,SAAS,CAAC,IAAI,OAAO,CAAA;;AAG5G,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,SAAS,CAAC,OAAO;AACd,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpC,SAAS,CAAC,CAAC,IAAG;AACb,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;AAC5D,oBAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;AAC1E,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;oBAC9D,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAA;AAC7C,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AACH,aAAC,CAAC,CAAA;AACL,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACnC,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;KAC/B;IAEO,eAAe,CAAC,YAAkB,EAAE,SAAkE,EAAA;;AAC1G,QAAA,MAAM,MAAM,GAAG,CAAA,EAAA,GAAA,SAAS,KAAT,IAAA,IAAA,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,SAAS,CAAE,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,cAAc,CAAA;QACjD,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,cAAc,CAAC;cAC7D,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,cAAc,CAAC,EAAE,SAAS,CAAC,GAAG,IAAI,CAAA;QAC3F,IAAI,aAAa,GAAG,YAAY,CAAA;AAChC,QAAA,MAAM,cAAc,GAAG,SAAS,CAAC,aAAa,CAAC,CAAA;QAE/C,IAAI,CAAC,cAAc,EAAE;AACnB,YAAA,IAAI,cAAc,EAAE;;AAElB,gBAAA,OAAO,EAAE,CAAA;AACV,aAAA;AAAM,iBAAA;;gBAEL,aAAa,GAAG,CAAC,CAAA;AAClB,aAAA;AACF,SAAA;AAED,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,MAAM,EAAE,SAAS,CAAC,IAAI,OAAO,CAAA;AAC3E,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,GAAG,CAAA;AAC3E,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,YAAY,EAAE,SAAS,CAAC,IAAI,KAAK,CAAA;AAErF,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,gBAAgB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;AACzF,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,iBAAiB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;AAC3F,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,iBAAiB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QAC3F,MAAM,MAAM,GAAG,CAAG,EAAA,gBAAgB,IAAI,iBAAiB,CAAA,CAAA,EAAI,iBAAiB,CAAA,CAAE,CAAA;AAE9E,QAAA,OAAO,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAA;KAC/E;IAEO,iBAAiB,CAAC,GAAS,EAAE,SAAkE,EAAA;AACrG,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;QAClF,OAAO,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;KACjE;;AAhFU,8BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,8BAA8B,+FAgBnB,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAhB1B,8BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,8BAA8B,iGCnB3C,2OAQA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,KAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDWa,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAN1C,SAAS;+BACE,+BAA+B,EAAA,eAAA,EAGxB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2OAAA,EAAA,CAAA;;;8BAkB5C,QAAQ;;8BAAI,MAAM;+BAAC,eAAe,CAAA;;yBAZ5B,KAAK,EAAA,CAAA;sBAAb,KAAK;;;MERK,0BAA0B,CAAA;IAOrC,WACU,CAAA,IAAuB,EACM,UAA2D,EAAA;AADxF,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAmB;AANhB,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAA;QASnD,MAAM,KAAK,GAAG,UAAU,CAAA;QAExB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,KAAK,CAAC,KAAK,CAAA;QACjC,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAA;AAE3G,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,KAAK,CAAC,OAAO;AACV,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpC,SAAS,CAAC,CAAC,IAAG;AACb,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;oBAC5D,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAA;AACzC,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;oBAC9D,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAA;AAC9C,oBAAA,IAAI,OAAO,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE;wBACtF,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAA;AAC5C,qBAAA;AACD,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AACH,aAAC,CAAC,CAAA;AACL,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACnC,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;KAC/B;;AAvCU,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,mDASf,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAT1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,+GCfvC,6JAGA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDYa,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBANtC,SAAS;+BACE,2BAA2B,EAAA,eAAA,EAGpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,6JAAA,EAAA,CAAA;;;8BAW5C,QAAQ;;8BAAI,MAAM;+BAAC,eAAe,CAAA;;yBAL5B,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,MAAM,EAAA,CAAA;sBAAd,KAAK;;;MEFK,6BAA6B,CAAA;AAWxC,IAAA,WAAA,CACU,IAAuB,EACvB,qBAAmD,EACtB,UAAiE,EAAA;;AAF9F,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAmB;AACvB,QAAA,IAAqB,CAAA,qBAAA,GAArB,qBAAqB,CAA8B;AAX5C,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAA;QAcnD,MAAM,SAAS,GAAG,UAAU,CAAA;AAC5B,QAAA,IAAI,CAAC,KAAK,GAAG,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QACzE,IAAI,CAAC,GAAG,GAAG,SAAS,IAAI,SAAS,CAAC,GAAG,CAAA;QACrC,IAAI,CAAC,QAAQ,GAAG,SAAS,IAAI,SAAS,CAAC,QAAQ,CAAA;QAC/C,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,SAAS,CAAC,OAAO,CAAA;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,SAAS,KAAT,IAAA,IAAA,SAAS,uBAAT,SAAS,CAAE,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,cAAc,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,SAAS,EAAE,SAAS,CAAC,IAAI,OAAO,CAAA;AAE5G,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,SAAS,CAAC,OAAO;AACd,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpC,SAAS,CAAC,CAAC,IAAG;AACb,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;AAC5D,oBAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;AACzE,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;oBAC9D,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAA;AAC7C,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AACH,aAAC,CAAC,CAAA;AACL,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACnC,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;KAC/B;IAEO,cAAc,CAAC,YAAkB,EAAE,SAA4E,EAAA;;AACrH,QAAA,MAAM,MAAM,GAAG,CAAA,EAAA,GAAA,SAAS,KAAT,IAAA,IAAA,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,SAAS,CAAE,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,cAAc,CAAA;QACjD,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,cAAc,CAAC;cAC7D,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,cAAc,CAAC,EAAE,SAAS,CAAC,GAAG,IAAI,CAAA;QAC3F,MAAM,aAAa,GAAG,kBAAkB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,YAAY,CAAC;cAC1D,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,YAAY,CAAC,EAAE,SAAS,CAAC,GAAG,IAAI,CAAA;QACzF,IAAI,aAAa,GAAG,YAAY,CAAA;AAChC,QAAA,MAAM,cAAc,GAAG,SAAS,CAAC,aAAa,CAAC,CAAA;;AAG/C,QAAA,IAAI,CAAC,cAAc,IAAI,aAAa,EAAE;AACpC,YAAA,IAAI,cAAc,EAAE;;AAElB,gBAAA,OAAO,EAAE,CAAA;AACV,aAAA;AAAM,iBAAA;;gBAEL,aAAa,GAAG,CAAC,CAAA;AAClB,aAAA;AACF,SAAA;AAED,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,MAAM,EAAE,SAAS,CAAC,IAAI,OAAO,CAAA;AAC3E,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,gBAAgB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;AACzF,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,iBAAiB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;AAC3F,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,iBAAiB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QAC3F,MAAM,MAAM,GAAG,CAAG,EAAA,gBAAgB,IAAI,iBAAiB,CAAA,CAAA,EAAI,iBAAiB,CAAA,CAAE,CAAA;AAE9E,QAAA,OAAO,aAAa,GAAG,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,aAAa,CAAA;KACnF;IAEO,iBAAiB,CAAC,GAAS,EAAE,SAAgE,EAAA;AACnG,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;QAClF,OAAO,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;KACjE;;AA7EU,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,+FAclB,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAd1B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,6BAA6B,gGClB1C,2OAQA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,KAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDUa,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBANzC,SAAS;+BACE,8BAA8B,EAAA,eAAA,EAGvB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2OAAA,EAAA,CAAA;;;8BAgB5C,QAAQ;;8BAAI,MAAM;+BAAC,eAAe,CAAA;;yBAV5B,KAAK,EAAA,CAAA;sBAAb,KAAK;;;MEOK,0BAA0B,CAAA;IAIrC,IACI,KAAK,KAAK,OAAO,IAAI,CAAC,MAAM,CAAA,EAAE;IAClC,IAAI,KAAK,CAAC,KAAgC,EAAA;AACxC,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;AACnB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,KAAK,CAAA;KAC1D;IAGD,IACI,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAA,EAAE;IACpC,IAAI,MAAM,CAAC,KAAiD,EAAA;AAC1D,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;AACpB,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACzD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;AACzD,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAA;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACrD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACnD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACrD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;AAC/D,gBAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,MAAM,CAAA;gBACjF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;AACvE,gBAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAA;AAC9B,aAAA;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;AAC7B,aAAA;AACF,SAAA;KACF;IA+BD,WACU,CAAA,IAAuB,EACvB,qBAAmD,EACvC,UAA+B,EAC/B,MAAuB,EACN,UAA2D,EAAA;AAJxF,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAmB;AACvB,QAAA,IAAqB,CAAA,qBAAA,GAArB,qBAAqB,CAA8B;AACvC,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAqB;AAC/B,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAiB;AAlE5B,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAA;AAqCrD,QAAA,IAAQ,CAAA,QAAA,GAAqB,SAAS,CAAA;AAWtC,QAAA,IAAgB,CAAA,gBAAA,GAAG,IAAI,CAAA;AAYmB,QAAA,IAAY,CAAA,YAAA,GAAG,KAAK,CAAA;AAS5D,QAAA,IAAI,UAAU,EAAE;AACd,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;;AAEzB,SAAA;;;;QAKD,MAAM,KAAK,GAAG,UAAU,CAAA;AACxB,QAAA,IAAI,CAAC,cAAc,GAAG,UAAU,CAAA;QAEhC,IAAI,CAAC,IAAI,GAAG,KAAK,IAAI,KAAK,CAAC,GAAG,CAAA;QAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAA;QAExC,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,KAAK,CAAC,KAAK,CAAA;QACjC,IAAI,CAAC,QAAQ,GAAG,KAAK,IAAI,KAAK,CAAC,OAAO,CAAA;QACtC,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,IAAK,KAAK,CAAC,OAAe,CAAC,cAAc,EAAE;YACnE,IAAI,CAAC,MAAM,GAAI,KAAK,CAAC,OAAe,CAAC,cAAc,CAAA;AACpD,SAAA;AAED,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,KAAK,CAAC,OAAO;AACV,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpC,SAAS,CAAC,CAAC,IAAG;AACb,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;oBAC5D,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAA;AACzC,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAA;AAC1B,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;oBAC9D,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAA;oBAC9C,IAAI,OAAO,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI,CAAC,MAAM,EAAE;AACrD,wBAAA,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,cAAc,CAAA;AACrC,qBAAA;AAAM,yBAAA;AACL,wBAAA,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;AACxB,qBAAA;AACD,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAAM,qBAAA;AACL,oBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;AAC1D,wBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,qBAAA;AACF,iBAAA;AACH,aAAC,CAAC,CAAA;AACL,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACnC,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;KAC/B;AAEM,IAAA,SAAS,CAAC,YAA4C,EAAA;QAC3D,IAAI,UAAU,GAAqB,SAAS,CAAA;AAC5C,QAAA,IAAI,IAAwB,CAAA;QAC5B,IAAI,QAAQ,GAAG,KAAK,CAAA;QACpB,IAAI,iBAAiB,GAAG,KAAK,CAAA;AAC7B,QAAA,IAAI,MAA0B,CAAA;AAC9B,QAAA,IAAI,WAA6C,CAAA;AAEjD,QAAA,IAAI,YAAY,EAAE;AAChB,YAAA,IAAI,YAAY,CAAC,IAAI,KAAK,MAAM,EAAE;gBAChC,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;AAChD,gBAAA,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE;oBACvC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,CAAC;AACrD,0BAAE,gBAAgB;AAClB,0BAAE,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,eAAe,GAAG,MAAM,CAAA;oBAC5E,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;oBAC1D,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAA;oBAC5E,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;oBACpD,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;AAC/D,iBAAA;AACF,aAAA;AAAM,iBAAA,IAAI,YAAY,CAAC,IAAI,KAAK,OAAO,EAAE;gBACxC,UAAU,GAAG,QAAQ,CAAA;AACrB,gBAAA,IAAI,CAAC,aAAa,GAAG,YAAY,CAAA;AAClC,aAAA;AACF,SAAA;AAED,QAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAA;AAC1B,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;AACjB,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;AACzB,QAAA,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAA;AAC3C,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;AACrB,QAAA,IAAI,CAAC,YAAY,GAAG,WAAW,CAAA;KAChC;AAEO,IAAA,iBAAiB,CAAC,GAAQ,EAAA;AAChC,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QAC5F,OAAO,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;KACjE;IAED,eAAe,GAAA;QACb,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,OAAO,EAAE;AAC7D,YAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;YACnG,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC;AACxE,iBAAA,SAAS,CACR,CAAC,OAAM;;AAEP,YAAA,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EACzB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CACnC,CAAA;AACJ,SAAA;KACF;IAEO,qBAAqB,GAAA;QAC3B,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,IAAI,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAA;AAC9C,SAAA;aAAM,IAAI,IAAI,CAAC,MAAM,EAAE;AACtB,YAAA,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE,CAAA;AAC1C,SAAA;KACF;;AArLU,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,+LAqEf,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AArE1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,2LC7BvC,8lIA0FA,EAAA,MAAA,EAAA,CAAA,uZAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,WAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,OAAA,EAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,UAAA,EAAA,WAAA,EAAA,MAAA,EAAA,MAAA,EAAA,oBAAA,EAAA,aAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,EAAA,wBAAA,EAAA,2BAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FD7Da,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBANtC,SAAS;+BACE,2BAA2B,EAAA,eAAA,EAGpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,8lIAAA,EAAA,MAAA,EAAA,CAAA,uZAAA,CAAA,EAAA,CAAA;;;8BAqE5C,QAAQ;;8BACR,QAAQ;;8BACR,QAAQ;;8BAAI,MAAM;+BAAC,eAAe,CAAA;;yBAhEjC,KAAK,EAAA,CAAA;sBADR,KAAK;gBASF,MAAM,EAAA,CAAA;sBADT,KAAK;gBAkDoC,YAAY,EAAA,CAAA;sBAArD,WAAW;uBAAC,2BAA2B,CAAA;;;MEzE7B,6BAA6B,CAAA;AAWxC,IAAA,WAAA,CACU,IAAuB,EACvB,qBAAmD,EACtB,UAAiE,EAAA;;AAF9F,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAmB;AACvB,QAAA,IAAqB,CAAA,qBAAA,GAArB,qBAAqB,CAA8B;AAX5C,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAA;QAcnD,MAAM,SAAS,GAAG,UAAU,CAAA;AAC5B,QAAA,IAAI,CAAC,KAAK,GAAG,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QACzE,IAAI,CAAC,GAAG,GAAG,SAAS,IAAI,SAAS,CAAC,GAAG,CAAA;QACrC,IAAI,CAAC,QAAQ,GAAG,SAAS,IAAI,SAAS,CAAC,QAAQ,CAAA;QAC/C,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,SAAS,CAAC,OAAO,CAAA;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,SAAS,KAAT,IAAA,IAAA,SAAS,uBAAT,SAAS,CAAE,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,cAAc,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,SAAS,EAAE,SAAS,CAAC,IAAI,OAAO,CAAA;AAE5G,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,SAAS,CAAC,OAAO;AACd,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpC,SAAS,CAAC,CAAC,IAAG;AACb,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;AAC5D,oBAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;AACzE,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;oBAC9D,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAA;AAC7C,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AACH,aAAC,CAAC,CAAA;AACL,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACnC,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;KAC/B;IAEO,cAAc,CAAC,YAAkB,EAAE,SAA4E,EAAA;;AACrH,QAAA,MAAM,MAAM,GAAG,CAAA,EAAA,GAAA,SAAS,KAAT,IAAA,IAAA,SAAS,KAAT,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,SAAS,CAAE,OAAO,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,cAAc,CAAA;QACjD,MAAM,cAAc,GAAG,kBAAkB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,cAAc,CAAC;cAC7D,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,cAAc,CAAC,EAAE,SAAS,CAAC,GAAG,IAAI,CAAA;QAC3F,MAAM,aAAa,GAAG,kBAAkB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,YAAY,CAAC;cAC1D,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAN,MAAM,CAAE,YAAY,CAAC,EAAE,SAAS,CAAC,GAAG,IAAI,CAAA;QACzF,IAAI,aAAa,GAAG,YAAY,CAAA;AAChC,QAAA,MAAM,cAAc,GAAG,SAAS,CAAC,aAAa,CAAC,CAAA;;AAG/C,QAAA,IAAI,CAAC,cAAc,IAAI,aAAa,EAAE;AACpC,YAAA,IAAI,cAAc,EAAE;;AAElB,gBAAA,OAAO,EAAE,CAAA;AACV,aAAA;AAAM,iBAAA;;gBAEL,aAAa,GAAG,CAAC,CAAA;AAClB,aAAA;AACF,SAAA;AAED,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,MAAM,EAAE,SAAS,CAAC,IAAI,OAAO,CAAA;AAC3E,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,gBAAgB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;AACzF,QAAA,MAAM,MAAM,GAAG,CAAG,EAAA,gBAAgB,MAAM,CAAA;AAExC,QAAA,OAAO,aAAa,GAAG,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,aAAa,CAAA;KACnF;IAEO,iBAAiB,CAAC,GAAS,EAAE,SAAgE,EAAA;AACnG,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;QAClF,OAAO,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;KACjE;;AA3EU,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,+FAclB,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAd1B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,6BAA6B,gGClB1C,2OAQA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,KAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDUa,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBANzC,SAAS;+BACE,8BAA8B,EAAA,eAAA,EAGvB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2OAAA,EAAA,CAAA;;;8BAgB5C,QAAQ;;8BAAI,MAAM;+BAAC,eAAe,CAAA;;yBAV5B,KAAK,EAAA,CAAA;sBAAb,KAAK;;;MEJK,2BAA2B,CAAA;AAStC,IAAA,IACI,MAAM,CAAC,KAAqC,EAAA,EAAI,IAAI,CAAC,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA,EAAE;IACnG,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAA,EAAE;IAEpC,WACU,CAAA,IAAuB,EACM,UAA6D,EAAA;AAD1F,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAmB;;AAXhB,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAA;;AAGrD,QAAA,IAAO,CAAA,OAAA,GAAmC,mCAAmC,CAAA;QAW3E,MAAM,KAAK,GAAG,UAAU,CAAA;QAExB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,KAAK,CAAC,KAAK,CAAA;QACjC,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,IAAI,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE;YACjH,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,MAAwC,CAAA;AACpF,SAAA;AAED,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,KAAK,CAAC,OAAO;AACV,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpC,SAAS,CAAC,CAAC,IAAG;AACb,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;oBAC5D,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAA;AACzC,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;oBAC9D,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAA;AAC9C,oBAAA,IAAI,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,gBAAgB,CAAC;AACnD,wBAAA,WAAW,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC;wBAC7C,OAAO,CAAC,cAAc,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAC7C;wBACA,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAA;AAC5C,qBAAA;AAAM,yBAAA;AACL,wBAAA,IAAI,CAAC,MAAM,GAAG,mCAAmC,CAAA;AAClD,qBAAA;AACD,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AACH,aAAC,CAAC,CAAA;AACL,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACnC,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;KAC/B;;AApDU,2BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,2BAA2B,mDAehB,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAf1B,2BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,2BAA2B,gHClBxC,2TAQA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,sBAAA,EAAA,IAAA,EAAA,aAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDUa,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBANvC,SAAS;+BACE,4BAA4B,EAAA,eAAA,EAGrB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2TAAA,EAAA,CAAA;;;8BAiB5C,QAAQ;;8BAAI,MAAM;+BAAC,eAAe,CAAA;;yBAP5B,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEF,MAAM,EAAA,CAAA;sBADT,KAAK;;;MEXK,wCAAwC,CAAA;AAanD,IAAA,WAAA,CACU,IAAuB,EACvB,qBAAmD,EACtB,UAAyF,EAAA;AAFtH,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAmB;AACvB,QAAA,IAAqB,CAAA,qBAAA,GAArB,qBAAqB,CAA8B;AAb5C,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAA;AAQrD,QAAA,IAAW,CAAA,WAAA,GAAG,KAAK,CAAA;QAQjB,MAAM,SAAS,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,KAAK,GAAG,SAAS,IAAI,SAAS,CAAC,KAAK,CAAA;QACzC,IAAI,CAAC,GAAG,GAAG,SAAS,IAAI,SAAS,CAAC,GAAG,CAAA;QACrC,IAAI,CAAC,QAAQ,GAAG,SAAS,IAAI,SAAS,CAAC,QAAQ,CAAA;QAC/C,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,SAAS,CAAC,OAAO,CAAA;AAE7C,QAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AAExB,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,SAAS,CAAC,OAAO;AACd,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpC,SAAS,CAAC,CAAC,IAAG;AACb,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;oBAC5D,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAA;AACzC,oBAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AACxB,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;oBAC9D,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAA;AAC7C,oBAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AACxB,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAAM,qBAAA;AACL,oBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;AAC1D,wBAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;AACxB,wBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,qBAAA;AACF,iBAAA;AACH,aAAC,CAAC,CAAA;AACL,SAAA;KACF;AAEO,IAAA,QAAQ,CAAC,SAAwF,EAAA;AACvG,QAAA,IAAI,SAAS;AACX,YAAA,SAAS,CAAC,OAAO;YACjB,SAAS,CAAC,OAAO,CAAC,cAAc;AAChC,YAAA,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW;AAC5C,YAAA,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI;AACrC,YAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC;AAC/E,YAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE;AACxE,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;AACpF,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;AACnG,SAAA;KACJ;IAEO,iBAAiB,CAAC,GAAQ,EAAE,SAAwF,EAAA;AAC1H,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;QAClF,OAAO,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;KACjE;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACnC,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;KAC/B;;AAvEU,wCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wCAAwC,+FAgB7B,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAhB1B,wCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wCAAwC,6GChBrD,6cAeA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,KAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDCa,wCAAwC,EAAA,UAAA,EAAA,CAAA;kBANpD,SAAS;+BACE,2CAA2C,EAAA,eAAA,EAGpC,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,6cAAA,EAAA,CAAA;;;8BAkB5C,QAAQ;;8BAAI,MAAM;+BAAC,eAAe,CAAA;;yBAZ5B,KAAK,EAAA,CAAA;sBAAb,KAAK;;;MEQK,oCAAoC,CAAA;IAqC/C,WACU,CAAA,IAAuB,EACvB,qBAAmD,EACvC,UAA+B,EAC/B,MAAuB,EACN,UAAgF,EAAA;AAJ7G,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAmB;AACvB,QAAA,IAAqB,CAAA,qBAAA,GAArB,qBAAqB,CAA8B;AACvC,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAqB;AAC/B,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAiB;AAvC5B,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAA;AAOrD,QAAA,IAAc,CAAA,cAAA,GAAG,KAAK,CAAA;AACtB,QAAA,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAA;AAChB,QAAA,IAAa,CAAA,aAAA,GAAG,IAAI,CAAA;AACpB,QAAA,IAAO,CAAA,OAAA,GAAG,KAAK,CAAA;AAKf,QAAA,IAAgB,CAAA,gBAAA,GAAG,KAAK,CAAA;AAMxB,QAAA,IAAA,CAAA,UAAU,GAAG,EAAE,CAAA;AACf,QAAA,IAAQ,CAAA,QAAA,GAAqB,SAAS,CAAA;AAWI,QAAA,IAAY,CAAA,YAAA,GAAG,KAAK,CAAA;AAS5D,QAAA,IAAI,UAAU,EAAE;AACd,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;AACzB,SAAA;QAED,MAAM,SAAS,GAAG,UAAU,CAAA;AAC5B,QAAA,IAAI,CAAC,cAAc,GAAG,UAAU,CAAA;QAEhC,IAAI,CAAC,KAAK,GAAG,SAAS,IAAI,oBAAoB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAC/D,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,SAAS,CAAC,OAAO,CAAA;QAE7C,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;YAC/C,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;AAC1D,SAAA;AAED,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,SAAS,CAAC,OAAO;AACd,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpC,SAAS,CAAC,CAAC,IAAG;;AACb,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;AAC5D,oBAAA,IAAI,CAAC,KAAK,GAAG,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;oBAC/D,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,wBAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAC3C,qBAAA;AACD,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;oBAC9D,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAA;oBAC7C,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;wBAC/C,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;AAC1D,qBAAA;AACD,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAAM,qBAAA;AACL,oBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;AAC1D,wBAAA,IAAI,MAAA,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,cAAc,EAAE;4BAChC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;AACzD,4BAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,yBAAA;AACF,qBAAA;AACF,iBAAA;AACH,aAAC,CAAC,CAAA;AACL,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACnC,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;KAC/B;AAEO,IAAA,iBAAiB,CAAC,GAAQ,EAAA;AAChC,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QAC5F,OAAO,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;KACjE;AAEM,IAAA,SAAS,CAAC,YAAsD,EAAA;QACrE,IAAI,UAAU,GAAqB,SAAS,CAAA;AAC5C,QAAA,IAAI,IAAwB,CAAA;QAC5B,IAAI,QAAQ,GAAG,KAAK,CAAA;QACpB,IAAI,iBAAiB,GAAG,KAAK,CAAA;AAC7B,QAAA,IAAI,MAA0B,CAAA;AAC9B,QAAA,IAAI,WAA6C,CAAA;AAEjD,QAAA,IAAI,YAAY,EAAE;AAChB,YAAA,IAAI,YAAY,CAAC,IAAI,KAAK,MAAM,EAAE;gBAChC,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;AAChD,gBAAA,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE;oBACvC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,CAAC;AACrD,0BAAE,gBAAgB;AAClB,0BAAE,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,eAAe,GAAG,MAAM,CAAA;oBAC5E,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;oBAC1D,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAA;oBAC5E,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;oBACpD,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;AAC/D,iBAAA;AACF,aAAA;AAAM,iBAAA,IAAI,YAAY,CAAC,IAAI,KAAK,OAAO,EAAE;gBACxC,UAAU,GAAG,QAAQ,CAAA;AACrB,gBAAA,IAAI,CAAC,aAAa,GAAG,YAAY,CAAA;AAClC,aAAA;AACF,SAAA;AAED,QAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAA;AAC1B,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;AACjB,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;AACzB,QAAA,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAA;AAC3C,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;AACrB,QAAA,IAAI,CAAC,YAAY,GAAG,WAAW,CAAA;KAChC;AAEO,IAAA,uBAAuB,CAAC,MAAyC,EAAA;AACvE,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;AACrB,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;AAC7B,QAAA,IAAI,CAAC,cAAc,GAAG,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAA;AAC1F,QAAA,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;AAC9E,QAAA,IAAI,CAAC,aAAa,GAAG,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAA;AACxF,QAAA,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;QAC5E,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAErD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACrD,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;AAC/D,YAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,MAAM,CAAA;YACjF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;AACvE,YAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAA;AAC9B,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;AAC7B,SAAA;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACtD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;KACrD;IAED,eAAe,GAAA;QACb,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,OAAO,EAAE;AAC7D,YAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;YACnG,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC;AACxE,iBAAA,SAAS,CACR,CAAC,OAAM;;AAEP,YAAA,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EACzB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CACnC,CAAA;AACJ,SAAA;KACF;IAEO,qBAAqB,GAAA;QAC3B,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,IAAI,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAA;AAC9C,SAAA;aAAM,IAAI,IAAI,CAAC,MAAM,EAAE;AACtB,YAAA,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE,CAAA;AAC1C,SAAA;KACF;;AA9KU,oCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oCAAoC,+LA0CzB,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AA1C1B,oCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oCAAoC,oLC5BjD,0jFAqEA,EAAA,MAAA,EAAA,CAAA,yiBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,WAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,OAAA,EAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,UAAA,EAAA,eAAA,EAAA,SAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,EAAA,wBAAA,EAAA,2BAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDzCa,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBANhD,SAAS;+BACE,sCAAsC,EAAA,eAAA,EAG/B,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,0jFAAA,EAAA,MAAA,EAAA,CAAA,yiBAAA,CAAA,EAAA,CAAA;;;8BA0C5C,QAAQ;;8BACR,QAAQ;;8BACR,QAAQ;;8BAAI,MAAM;+BAAC,eAAe,CAAA;;yBAtC5B,KAAK,EAAA,CAAA;sBAAb,KAAK;gBA+BoC,YAAY,EAAA,CAAA;sBAArD,WAAW;uBAAC,2BAA2B,CAAA;;;MEjC7B,4BAA4B,CAAA;IAIvC,IACI,KAAK,KAAK,OAAO,IAAI,CAAC,MAAM,CAAA,EAAE;IAClC,IAAI,KAAK,CAAC,GAA8B,EAAA;AACtC,QAAA,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;;;;;QAKjB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE;AACxC,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;AACvB,SAAA;KACF;IAGD,IACI,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAA,EAAE;IACpC,IAAI,MAAM,CAAC,KAAmD,EAAA;AAC5D,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;AACpB,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;AACtB,SAAA;KACF;IAqBD,IACI,KAAK,CAAC,KAAyB,EAAI,EAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA,EAAE;IAC5D,IAAI,KAAK,KAAyB,OAAO,IAAI,CAAC,MAAM,CAAA,EAAE;AAEtD,IAAA,IAA+B,UAAU,GAAA,EAAK,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAA,EAAE;IAE/E,IACI,KAAK,CAAC,KAAyB,EAAI,EAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA,EAAE;IAC5D,IAAI,KAAK,KAAyB,OAAO,IAAI,CAAC,MAAM,CAAA,EAAE;IAEtD,IAA+B,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAA,EAAE;IAEjE,IACI,SAAS,CAAC,KAAyB,EAAI,EAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA,EAAE;IAChE,IAAI,SAAS,KAAyB,OAAO,IAAI,CAAC,MAAM,CAAA,EAAE;IAE1D,IAA0B,UAAU,KAAK,OAAO,IAAI,CAAC,SAAS,CAAA,EAAE;IAIhE,WACmB,CAAA,IAAuB,EACvB,qBAAmD,EAChD,UAA+B,EAC/B,MAAuB,EACG,UAA+D,EAAA;AAJ5F,QAAA,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAmB;AACvB,QAAA,IAAqB,CAAA,qBAAA,GAArB,qBAAqB,CAA8B;AAChD,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAqB;AAC/B,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAiB;AACG,QAAA,IAAU,CAAA,UAAA,GAAV,UAAU,CAAqD;AArE9F,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ,CAAA;AA0BrD,QAAA,IAAQ,CAAA,QAAA,GAAuB,SAAS,CAAA;AAoCxC,QAAA,IAAU,CAAA,UAAA,GAAG,KAAK,CAAA;QAShB,MAAM,KAAK,GAAG,UAAU,CAAA;AACxB,QAAA,IAAI,CAAC,cAAc,GAAG,UAAU,CAAA;QAEhC,IAAI,CAAC,IAAI,GAAG,KAAK,IAAI,KAAK,CAAC,GAAG,CAAA;QAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,IAAI,KAAK,CAAC,QAAQ,CAAA;QAExC,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,KAAK,CAAC,KAAK,CAAA;QACjC,IAAI,CAAC,QAAQ,GAAG,KAAK,IAAI,KAAK,CAAC,OAAO,CAAA;QACtC,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,IAAK,KAAK,CAAC,OAAe,CAAC,cAAc,EAAE;YACnE,IAAI,CAAC,MAAM,GAAI,KAAK,CAAC,OAAe,CAAC,cAAc,CAAA;AACpD,SAAA;KACF;IAED,QAAQ,GAAA;AACN,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAA;AAC7B,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,KAAK,CAAC,OAAO;AACV,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpC,SAAS,CAAC,CAAC,IAAG;AACb,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;oBAC5D,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAA;AACzC,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAED,gBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;oBAC9D,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAA;oBAC9C,IAAI,OAAO,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI,CAAC,MAAM,EAAE;AACrD,wBAAA,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,cAAc,CAAA;AACrC,qBAAA;AAAM,yBAAA;AACL,wBAAA,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;AACxB,qBAAA;AACD,oBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,iBAAA;AAAM,qBAAA;AACL,oBAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;;AAE1D,wBAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;AACzB,wBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;AACzB,qBAAA;AACF,iBAAA;AACH,aAAC,CAAC,CAAA;AACL,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACnC,QAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAA;KAC/B;AAEM,IAAA,SAAS,CAAC,YAA8C,EAAA;QAC7D,IAAI,UAAU,GAAuB,SAAS,CAAA;AAC9C,QAAA,IAAI,IAAwB,CAAA;QAC5B,IAAI,QAAQ,GAAG,KAAK,CAAA;QACpB,IAAI,iBAAiB,GAAG,KAAK,CAAA;AAC7B,QAAA,IAAI,WAA6C,CAAA;AAEjD,QAAA,IAAI,YAAY,EAAE;AAChB,YAAA,IAAI,YAAY,CAAC,IAAI,KAAK,MAAM,EAAE;gBAChC,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;AAChD,gBAAA,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE;oBACvC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,CAAC;AACrD,0BAAE,gBAAgB;AAClB,0BAAE,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,eAAe,GAAG,MAAM,CAAA;oBAC5E,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;oBAC1D,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAA;oBAC5E,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;AAC/D,iBAAA;AACF,aAAA;AAAM,iBAAA,IAAI,YAAY,CAAC,IAAI,KAAK,OAAO,EAAE;gBACxC,UAAU,GAAG,QAAQ,CAAA;AACrB,gBAAA,IAAI,CAAC,aAAa,GAAG,YAAY,CAAA;AAClC,aAAA;AACF,SAAA;AAED,QAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAA;AAC1B,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;AACjB,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;AACzB,QAAA,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAA;AAC3C,QAAA,IAAI,CAAC,YAAY,GAAG,WAAW,CAAA;KAChC;AAEM,IAAA,SAAS,CAAC,MAAkC,EAAA;QACjD,IAAI,CAAC,MAAM,EAAE;YAAE,OAAM;AAAE,SAAA;QAEvB,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;AACtD,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;AACnB,SAAA;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;AACtD,QAAA,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;AACnB,SAAA;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;AAC1D,QAAA,IAAI,SAAS,EAAE;AACb,YAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;AAC3B,SAAA;AAED,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;KAC9B;AAEO,IAAA,iBAAiB,CAAC,GAAQ,EAAA;AAChC,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QAC5F,OAAO,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;KACjE;IAED,eAAe,GAAA;QACb,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,OAAO,EAAE;AAC7D,YAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;YACnG,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC;AACxE,iBAAA,SAAS,CACR,CAAC,OAAM;;AAEP,YAAA,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EACzB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CACnC,CAAA;AACJ,SAAA;KACF;IAEO,qBAAqB,GAAA;QAC3B,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,IAAI,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAA;AAC9C,SAAA;aAAM,IAAI,IAAI,CAAC,MAAM,EAAE;AACtB,YAAA,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE,CAAA;AAC1C,SAAA;KACF;;AArMU,4BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,+LAuEjB,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAvE1B,4BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,4BAA4B,iSC9BzC,spDAyDA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAF,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,EAAA,wBAAA,EAAA,2BAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FD3Ba,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAPxC,SAAS;YACE,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,6BAA6B,EAGjC,IAAA,EAAA,EAAG,EACQ,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,spDAAA,EAAA,CAAA;;;8BAuE5C,QAAQ;;8BACR,QAAQ;;8BACR,QAAQ;;8BAAI,MAAM;+BAAC,eAAe,CAAA;;yBAlEjC,KAAK,EAAA,CAAA;sBADR,KAAK;gBAeF,MAAM,EAAA,CAAA;sBADT,KAAK;gBA6BF,KAAK,EAAA,CAAA;sBADR,KAAK;gBAIyB,UAAU,EAAA,CAAA;sBAAxC,WAAW;uBAAC,YAAY,CAAA;gBAGrB,KAAK,EAAA,CAAA;sBADR,KAAK;gBAIyB,UAAU,EAAA,CAAA;sBAAxC,WAAW;uBAAC,YAAY,CAAA;gBAGrB,SAAS,EAAA,CAAA;sBADZ,KAAK;gBAIoB,UAAU,EAAA,CAAA;sBAAnC,WAAW;uBAAC,OAAO,CAAA;;;AE/ET,MAAA,+BAA+B,GAAmC;AAC7E,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,QAAQ;AACd,QAAA,SAAS,EAAE,4BAA4B;AACxC,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;EACZ;AAEY,MAAA,iCAAiC,GAAmC;AAC/E,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,UAAU;AAChB,QAAA,SAAS,EAAE,8BAA8B;AAC1C,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;EACZ;AAEY,MAAA,gCAAgC,GAAmC;AAC9E,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,SAAS;AACf,QAAA,SAAS,EAAE,6BAA6B;AACzC,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;EACZ;AAEY,MAAA,gCAAgC,GAAmC;AAC9E,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,SAAS;AACf,QAAA,SAAS,EAAE,6BAA6B;AACzC,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;EACZ;AAEY,MAAA,6BAA6B,GAAmC;AAC3E,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,SAAS,EAAE,0BAA0B;AACtC,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;EACZ;AAEY,MAAA,6BAA6B,GAAmC;AAC3E,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,SAAS,EAAE,0BAA0B;AACtC,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;EACZ;AAEY,MAAA,8BAA8B,GAAmC;AAC5E,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,SAAS,EAAE,0BAA0B;AACtC,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;EACZ;AAEY,MAAA,wCAAwC,GAAmC;AACtF,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,iBAAiB;AACvB,QAAA,SAAS,EAAE,oCAAoC;AAChD,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;EACZ;AAEY,MAAA,6CAA6C,GAAmC;AAC3F,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,sBAAsB;AAC5B,QAAA,SAAS,EAAE,wCAAwC;AACpD,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;EACZ;AAEY,MAAA,8BAA8B,GAAmC;AAC5E,IAAA,OAAO,EAAE,wBAAwB;AACjC,IAAA,QAAQ,EAAE;AACR,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,SAAS,EAAE,2BAA2B;AACvC,KAAA;AACD,IAAA,KAAK,EAAE,IAAI;;;AC7Db,MAAM,kBAAkB,GAAG;IACzB,4BAA4B;IAC5B,8BAA8B;IAC9B,0BAA0B;IAC1B,6BAA6B;IAC7B,0BAA0B;IAC1B,6BAA6B;IAC7B,oCAAoC;IACpC,wCAAwC;IACxC,2BAA2B;CAC5B,CAAA;AAED,MAAM,iBAAiB,GAAG;IACxB,+BAA+B;IAC/B,gCAAgC;IAChC,iCAAiC;IACjC,gCAAgC;IAChC,6BAA6B;IAC7B,6BAA6B;IAC7B,8BAA8B;IAC9B,wCAAwC;IACxC,6CAA6C;IAC7C,8BAA8B;CAC/B,CAAA;MA0BY,2BAA2B,CAAA;;yHAA3B,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA3B,2BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,2BAA2B,iBAhDtC,4BAA4B;QAC5B,8BAA8B;QAC9B,0BAA0B;QAC1B,6BAA6B;QAC7B,0BAA0B;QAC1B,6BAA6B;QAC7B,oCAAoC;QACpC,wCAAwC;AACxC,QAAA,2BAA2B,aAqBrB,YAAY;QACZ,gBAAgB;QAChB,YAAY;QACZ,mBAAmB;QACnB,iBAAiB;QACjB,YAAY;QACZ,oBAAoB;QACpB,qBAAqB;QACrB,qBAAqB;QACrB,wBAAwB;AACxB,QAAA,0BAA0B,aAvChC,4BAA4B;QAC5B,8BAA8B;QAC9B,0BAA0B;QAC1B,6BAA6B;QAC7B,0BAA0B;QAC1B,6BAA6B;QAC7B,oCAAoC;QACpC,wCAAwC;QACxC,2BAA2B,CAAA,EAAA,CAAA,CAAA;AAwChB,2BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,2BAA2B,EAPzB,SAAA,EAAA;AACP,QAAA,GAAG,iBAAiB;KACvB,EAAA,OAAA,EAAA,CAdG,YAAY;QACZ,gBAAgB;QAChB,YAAY;QACZ,mBAAmB;QACnB,iBAAiB;QACjB,YAAY;QACZ,oBAAoB;QACpB,qBAAqB;QACrB,qBAAqB;QACrB,wBAAwB;QACxB,0BAA0B,CAAA,EAAA,CAAA,CAAA;4FASrB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAxBvC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,YAAY,EAAE;AACV,wBAAA,GAAG,kBAAkB;AACxB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,gBAAgB;wBAChB,YAAY;wBACZ,mBAAmB;wBACnB,iBAAiB;wBACjB,YAAY;wBACZ,oBAAoB;wBACpB,qBAAqB;wBACrB,qBAAqB;wBACrB,wBAAwB;wBACxB,0BAA0B;AAC7B,qBAAA;AACD,oBAAA,SAAS,EAAE;AACP,wBAAA,GAAG,iBAAiB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;AACL,wBAAA,GAAG,kBAAkB;AACxB,qBAAA;iBACJ,CAAA;;;ACvFD;;AAEG;;;;"}