@yuuvis/client-framework 2.20.1 → 3.0.0-beta.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/actions/index.d.ts +230 -9
  2. package/app-bar/index.d.ts +50 -1
  3. package/autocomplete/index.d.ts +89 -3
  4. package/breadcrumb/index.d.ts +112 -2
  5. package/clipboard/index.d.ts +19 -1
  6. package/common/index.d.ts +536 -7
  7. package/datepicker/index.d.ts +380 -6
  8. package/fesm2022/yuuvis-client-framework-actions.mjs +31 -32
  9. package/fesm2022/yuuvis-client-framework-actions.mjs.map +1 -1
  10. package/fesm2022/yuuvis-client-framework-app-bar.mjs +14 -17
  11. package/fesm2022/yuuvis-client-framework-app-bar.mjs.map +1 -1
  12. package/fesm2022/yuuvis-client-framework-autocomplete.mjs +23 -23
  13. package/fesm2022/yuuvis-client-framework-autocomplete.mjs.map +1 -1
  14. package/fesm2022/yuuvis-client-framework-breadcrumb.mjs +7 -8
  15. package/fesm2022/yuuvis-client-framework-breadcrumb.mjs.map +1 -1
  16. package/fesm2022/yuuvis-client-framework-clipboard.mjs +8 -10
  17. package/fesm2022/yuuvis-client-framework-clipboard.mjs.map +1 -1
  18. package/fesm2022/yuuvis-client-framework-common.mjs +191 -234
  19. package/fesm2022/yuuvis-client-framework-common.mjs.map +1 -1
  20. package/fesm2022/yuuvis-client-framework-datepicker.mjs +110 -145
  21. package/fesm2022/yuuvis-client-framework-datepicker.mjs.map +1 -1
  22. package/fesm2022/yuuvis-client-framework-forms.mjs +283 -250
  23. package/fesm2022/yuuvis-client-framework-forms.mjs.map +1 -1
  24. package/fesm2022/yuuvis-client-framework-icons.mjs +18 -19
  25. package/fesm2022/yuuvis-client-framework-icons.mjs.map +1 -1
  26. package/fesm2022/yuuvis-client-framework-list.mjs +59 -57
  27. package/fesm2022/yuuvis-client-framework-list.mjs.map +1 -1
  28. package/fesm2022/yuuvis-client-framework-master-details.mjs +23 -18
  29. package/fesm2022/yuuvis-client-framework-master-details.mjs.map +1 -1
  30. package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs +7 -9
  31. package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs.map +1 -1
  32. package/fesm2022/yuuvis-client-framework-metadata-form.mjs +32 -32
  33. package/fesm2022/yuuvis-client-framework-metadata-form.mjs.map +1 -1
  34. package/fesm2022/yuuvis-client-framework-object-details.mjs +129 -120
  35. package/fesm2022/yuuvis-client-framework-object-details.mjs.map +1 -1
  36. package/fesm2022/yuuvis-client-framework-object-flavor.mjs +67 -59
  37. package/fesm2022/yuuvis-client-framework-object-flavor.mjs.map +1 -1
  38. package/fesm2022/yuuvis-client-framework-object-form.mjs +58 -60
  39. package/fesm2022/yuuvis-client-framework-object-form.mjs.map +1 -1
  40. package/fesm2022/yuuvis-client-framework-object-preview.mjs +64 -47
  41. package/fesm2022/yuuvis-client-framework-object-preview.mjs.map +1 -1
  42. package/fesm2022/yuuvis-client-framework-object-relationship.mjs +206 -183
  43. package/fesm2022/yuuvis-client-framework-object-relationship.mjs.map +1 -1
  44. package/fesm2022/yuuvis-client-framework-object-summary.mjs +42 -42
  45. package/fesm2022/yuuvis-client-framework-object-summary.mjs.map +1 -1
  46. package/fesm2022/yuuvis-client-framework-object-versions.mjs +28 -29
  47. package/fesm2022/yuuvis-client-framework-object-versions.mjs.map +1 -1
  48. package/fesm2022/yuuvis-client-framework-overflow-hidden.mjs +10 -10
  49. package/fesm2022/yuuvis-client-framework-overflow-hidden.mjs.map +1 -1
  50. package/fesm2022/yuuvis-client-framework-overflow-menu.mjs +16 -16
  51. package/fesm2022/yuuvis-client-framework-overflow-menu.mjs.map +1 -1
  52. package/fesm2022/yuuvis-client-framework-pagination.mjs +7 -8
  53. package/fesm2022/yuuvis-client-framework-pagination.mjs.map +1 -1
  54. package/fesm2022/yuuvis-client-framework-popout.mjs +55 -57
  55. package/fesm2022/yuuvis-client-framework-popout.mjs.map +1 -1
  56. package/fesm2022/yuuvis-client-framework-query-list.mjs +29 -29
  57. package/fesm2022/yuuvis-client-framework-query-list.mjs.map +1 -1
  58. package/fesm2022/yuuvis-client-framework-renderer.mjs +71 -68
  59. package/fesm2022/yuuvis-client-framework-renderer.mjs.map +1 -1
  60. package/fesm2022/yuuvis-client-framework-sequence-list.mjs +20 -25
  61. package/fesm2022/yuuvis-client-framework-sequence-list.mjs.map +1 -1
  62. package/fesm2022/yuuvis-client-framework-simple-search.mjs +31 -33
  63. package/fesm2022/yuuvis-client-framework-simple-search.mjs.map +1 -1
  64. package/fesm2022/yuuvis-client-framework-sort.mjs +57 -37
  65. package/fesm2022/yuuvis-client-framework-sort.mjs.map +1 -1
  66. package/fesm2022/yuuvis-client-framework-split-view.mjs +39 -38
  67. package/fesm2022/yuuvis-client-framework-split-view.mjs.map +1 -1
  68. package/fesm2022/yuuvis-client-framework-tile-list.mjs +119 -121
  69. package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -1
  70. package/fesm2022/yuuvis-client-framework-token-search.mjs +22 -22
  71. package/fesm2022/yuuvis-client-framework-token-search.mjs.map +1 -1
  72. package/fesm2022/yuuvis-client-framework-tree.mjs +32 -44
  73. package/fesm2022/yuuvis-client-framework-tree.mjs.map +1 -1
  74. package/fesm2022/yuuvis-client-framework-upload-progress.mjs +22 -26
  75. package/fesm2022/yuuvis-client-framework-upload-progress.mjs.map +1 -1
  76. package/fesm2022/yuuvis-client-framework-widget-grid.mjs +80 -77
  77. package/fesm2022/yuuvis-client-framework-widget-grid.mjs.map +1 -1
  78. package/fesm2022/yuuvis-client-framework.mjs +23 -23
  79. package/fesm2022/yuuvis-client-framework.mjs.map +1 -1
  80. package/forms/index.d.ts +633 -13
  81. package/icons/index.d.ts +79 -4
  82. package/index.d.ts +909 -6
  83. package/list/index.d.ts +380 -4
  84. package/master-details/index.d.ts +69 -3
  85. package/metadata-form/index.d.ts +189 -6
  86. package/metadata-form-defaults/index.d.ts +14 -2
  87. package/object-details/index.d.ts +321 -9
  88. package/object-flavor/index.d.ts +86 -6
  89. package/object-form/index.d.ts +288 -4
  90. package/object-preview/index.d.ts +82 -2
  91. package/object-relationship/index.d.ts +120 -5
  92. package/object-summary/index.d.ts +105 -4
  93. package/object-versions/index.d.ts +43 -2
  94. package/overflow-hidden/index.d.ts +28 -2
  95. package/overflow-menu/index.d.ts +52 -3
  96. package/package.json +12 -12
  97. package/pagination/index.d.ts +31 -2
  98. package/popout/index.d.ts +106 -5
  99. package/query-list/index.d.ts +497 -2
  100. package/renderer/index.d.ts +117 -10
  101. package/sequence-list/index.d.ts +60 -2
  102. package/simple-search/index.d.ts +57 -1
  103. package/sort/index.d.ts +36 -2
  104. package/split-view/index.d.ts +197 -4
  105. package/tile-list/index.d.ts +789 -10
  106. package/token-search/index.d.ts +72 -3
  107. package/tree/index.d.ts +68 -2
  108. package/upload-progress/index.d.ts +44 -2
  109. package/widget-grid/index.d.ts +299 -7
  110. package/actions/lib/actions/copy-action/copy-action.d.ts +0 -17
  111. package/actions/lib/actions/cut-action/cut-action.d.ts +0 -17
  112. package/actions/lib/actions/delete-action/delete/delete.component.d.ts +0 -22
  113. package/actions/lib/actions/delete-action/delete-action.d.ts +0 -18
  114. package/actions/lib/actions/download-action/download-action.d.ts +0 -17
  115. package/actions/lib/actions.icon.d.ts +0 -7
  116. package/actions/lib/actions.interface.d.ts +0 -86
  117. package/actions/lib/actions.module.d.ts +0 -11
  118. package/actions/lib/actions.service.d.ts +0 -58
  119. package/actions/lib/components/contextmenu/contextmenu.component.d.ts +0 -16
  120. package/actions/lib/components/contextmenu/contextmenu.model.d.ts +0 -9
  121. package/actions/lib/components/contextmenu/contextmenuTrigger.directive.d.ts +0 -12
  122. package/app-bar/lib/app-bar.component.d.ts +0 -47
  123. package/autocomplete/lib/autocomplete.component.d.ts +0 -74
  124. package/autocomplete/lib/autocomplete.interface.d.ts +0 -4
  125. package/autocomplete/lib/autocomplete.module.d.ts +0 -7
  126. package/breadcrumb/lib/breadcrumb/breadcrumb.component.d.ts +0 -94
  127. package/breadcrumb/lib/models/breadcrumb-item.model.d.ts +0 -14
  128. package/breadcrumb/lib/models/index.d.ts +0 -1
  129. package/clipboard/lib/clipboard.component.d.ts +0 -16
  130. package/common/lib/common.module.d.ts +0 -21
  131. package/common/lib/common.utils.d.ts +0 -2
  132. package/common/lib/components/busy-overlay/busy-overlay.component.d.ts +0 -9
  133. package/common/lib/components/busy-overlay/busy-overlay.interface.d.ts +0 -4
  134. package/common/lib/components/confirm/confirm.component.d.ts +0 -8
  135. package/common/lib/components/confirm/confirm.interface.d.ts +0 -9
  136. package/common/lib/components/confirm/confirm.service.d.ts +0 -9
  137. package/common/lib/components/dialog/dialog.component.d.ts +0 -10
  138. package/common/lib/components/dialog/dialog.options.d.ts +0 -7
  139. package/common/lib/components/halo-focus/halo-focus.component.d.ts +0 -5
  140. package/common/lib/components/index.d.ts +0 -8
  141. package/common/lib/components/retention-badge/retention-badge.component.d.ts +0 -9
  142. package/common/lib/components/scroll-buttons/scroll-buttons.component.d.ts +0 -25
  143. package/common/lib/directives/autofocus-child.directive.d.ts +0 -13
  144. package/common/lib/directives/autofocus-delayed.directive.d.ts +0 -18
  145. package/common/lib/directives/busy-overlay.directive.d.ts +0 -68
  146. package/common/lib/directives/click-double.directive.d.ts +0 -17
  147. package/common/lib/directives/container-size.directive.d.ts +0 -30
  148. package/common/lib/directives/drag-scroll.directive.d.ts +0 -20
  149. package/common/lib/directives/drag-select.directive.d.ts +0 -21
  150. package/common/lib/directives/file-drop-zone/file-drop-zone.directive.d.ts +0 -17
  151. package/common/lib/directives/file-drop-zone/file-drop-zone.interface.d.ts +0 -5
  152. package/common/lib/directives/focus-within.directive.d.ts +0 -36
  153. package/common/lib/directives/index.d.ts +0 -13
  154. package/common/lib/directives/light-dismiss.directive.d.ts +0 -19
  155. package/common/lib/directives/longpress.directive.d.ts +0 -13
  156. package/common/lib/directives/noop-value-accessor.directive.d.ts +0 -10
  157. package/common/lib/directives/scroll-buttons.directive.d.ts +0 -20
  158. package/common/lib/mat-form-field.abstract.d.ts +0 -41
  159. package/common/lib/services/file-drop/file-drop.service.d.ts +0 -7
  160. package/common/lib/services/form-translate/form-translate.service.d.ts +0 -15
  161. package/common/lib/services/index.d.ts +0 -4
  162. package/common/lib/services/layout-settings/layout-settings.interface.d.ts +0 -1
  163. package/common/lib/services/layout-settings/layout-settings.service.d.ts +0 -40
  164. package/common/lib/services/theme/index.d.ts +0 -3
  165. package/common/lib/services/theme/theme.models.d.ts +0 -16
  166. package/common/lib/services/theme/theme.provider.d.ts +0 -4
  167. package/common/lib/services/theme/theme.service.d.ts +0 -16
  168. package/datepicker/lib/calendar/calendar.component.d.ts +0 -70
  169. package/datepicker/lib/date-input/date-input-element/date-input-element.component.d.ts +0 -44
  170. package/datepicker/lib/date-input/date-input-hour-element/date-input-hour-element.component.d.ts +0 -11
  171. package/datepicker/lib/date-input/date-input.component.d.ts +0 -60
  172. package/datepicker/lib/datepicker-calendar/datepicker-calendar-trigger.component.d.ts +0 -7
  173. package/datepicker/lib/datepicker-calendar/datepicker-calendar.component.d.ts +0 -12
  174. package/datepicker/lib/datepicker.component.d.ts +0 -80
  175. package/datepicker/lib/datepicker.interface.d.ts +0 -34
  176. package/datepicker/lib/datepicker.module.d.ts +0 -9
  177. package/datepicker/lib/datepicker.service.d.ts +0 -46
  178. package/datepicker/lib/datepicker.utils.d.ts +0 -23
  179. package/datepicker/lib/time-input/time-input.component.d.ts +0 -32
  180. package/datepicker/lib/time-input/time-input.interface.d.ts +0 -6
  181. package/forms/lib/elements/catalog/catalog.component.d.ts +0 -34
  182. package/forms/lib/elements/data-grid/data-grid/data-grid.component.d.ts +0 -46
  183. package/forms/lib/elements/data-grid/edit-table-data/edit-data.component.d.ts +0 -22
  184. package/forms/lib/elements/data-grid/model/data-grid.interface.d.ts +0 -20
  185. package/forms/lib/elements/datetime/datetime.component.d.ts +0 -41
  186. package/forms/lib/elements/datetime-range/datetime-range.component.d.ts +0 -38
  187. package/forms/lib/elements/i18n-catalog/i18n-catalog.component.d.ts +0 -43
  188. package/forms/lib/elements/index.d.ts +0 -12
  189. package/forms/lib/elements/number/number.component.d.ts +0 -69
  190. package/forms/lib/elements/number-range/number-range.component.d.ts +0 -73
  191. package/forms/lib/elements/organization/organization.component.d.ts +0 -66
  192. package/forms/lib/elements/organization-set/organization-set.component.d.ts +0 -61
  193. package/forms/lib/elements/range-select-date/date-range-picker/date-range-picker.component.d.ts +0 -13
  194. package/forms/lib/elements/range-select-date/range-select-date.component.d.ts +0 -38
  195. package/forms/lib/elements/range-select-date/range-select-date.interface.d.ts +0 -5
  196. package/forms/lib/elements/range-select-filesize/range-select-filesize.component.d.ts +0 -33
  197. package/forms/lib/elements/range-select-filesize/range-select-filesize.interface.d.ts +0 -5
  198. package/forms/lib/elements/string/string.component.d.ts +0 -100
  199. package/forms/lib/forms.module.d.ts +0 -17
  200. package/forms/lib/forms.utils.d.ts +0 -4
  201. package/icons/lib/icon.component.d.ts +0 -24
  202. package/icons/lib/icon.service.d.ts +0 -39
  203. package/icons/lib/icons.d.ts +0 -1
  204. package/icons/lib/object-type-icon/object-type-icon.component.d.ts +0 -11
  205. package/lib/config/halo-focus-defaults/halo-excluded-elements.const.d.ts +0 -26
  206. package/lib/config/halo-focus-defaults/halo-focus-navigation-keys.const.d.ts +0 -25
  207. package/lib/config/halo-focus-defaults/halo-focus-offset.const.d.ts +0 -25
  208. package/lib/config/halo-focus-defaults/halo-focus-styles.const.d.ts +0 -26
  209. package/lib/config/halo-focus-defaults/index.d.ts +0 -4
  210. package/lib/config/index.d.ts +0 -2
  211. package/lib/config/session/index.d.ts +0 -3
  212. package/lib/config/session/session-activity-window-before-end.const.d.ts +0 -43
  213. package/lib/config/session/session-default-duration.const.d.ts +0 -47
  214. package/lib/config/session/session-popup-before-end.const.d.ts +0 -47
  215. package/lib/enums/channel-message.enum.d.ts +0 -4
  216. package/lib/enums/index.d.ts +0 -1
  217. package/lib/models/halo-focus-config/halo-focus-config.model.d.ts +0 -48
  218. package/lib/models/halo-focus-config/index.d.ts +0 -1
  219. package/lib/models/index.d.ts +0 -3
  220. package/lib/models/session/channel-payload.model.d.ts +0 -5
  221. package/lib/models/session/index.d.ts +0 -1
  222. package/lib/models/snack-bar/index.d.ts +0 -3
  223. package/lib/models/snack-bar/snack-bar-data.model.d.ts +0 -6
  224. package/lib/models/snack-bar/snack-bar-level.model.d.ts +0 -1
  225. package/lib/models/snack-bar/snack-bar-options.model.d.ts +0 -9
  226. package/lib/providers/halo-focus/index.d.ts +0 -1
  227. package/lib/providers/halo-focus/provide-halo-focus.d.ts +0 -62
  228. package/lib/providers/index.d.ts +0 -2
  229. package/lib/providers/session/index.d.ts +0 -1
  230. package/lib/providers/session/provide-session.provider.d.ts +0 -43
  231. package/lib/services/halo-focus/halo-focus.service.d.ts +0 -95
  232. package/lib/services/halo-utility/halo-utility.service.d.ts +0 -245
  233. package/lib/services/index.d.ts +0 -4
  234. package/lib/services/session/session.service.d.ts +0 -113
  235. package/lib/services/snack-bar/snack-bar.service.d.ts +0 -22
  236. package/lib/yuuvis-client-framework.module.d.ts +0 -7
  237. package/list/lib/list-item.directive.d.ts +0 -40
  238. package/list/lib/list-tile/list-tile.component.d.ts +0 -14
  239. package/list/lib/list.component.d.ts +0 -320
  240. package/list/lib/list.module.d.ts +0 -9
  241. package/master-details/lib/master-details.component.d.ts +0 -52
  242. package/master-details/lib/master-details.interface.d.ts +0 -7
  243. package/master-details/lib/master-details.module.d.ts +0 -7
  244. package/metadata-form/lib/metadata-form-element-registry.service.d.ts +0 -60
  245. package/metadata-form/lib/metadata-form-field/metadata-form-field.component.d.ts +0 -25
  246. package/metadata-form/lib/metadata-form-field/metadata-form-field.interface.d.ts +0 -19
  247. package/metadata-form/lib/object-metadata-element-error.directive.d.ts +0 -17
  248. package/metadata-form/lib/object-metadata-element-label.directive.d.ts +0 -29
  249. package/metadata-form/lib/object-metadata-element-template.directive.d.ts +0 -45
  250. package/metadata-form-defaults/lib/metadata-default-templates/metadata-default-templates.component.d.ts +0 -5
  251. package/metadata-form-defaults/lib/metadata-form-defaults.module.d.ts +0 -7
  252. package/object-details/lib/object-audit/object-audit.component.d.ts +0 -49
  253. package/object-details/lib/object-details-header/object-details-header.component.d.ts +0 -43
  254. package/object-details/lib/object-details-shell/object-details-shell.component.d.ts +0 -34
  255. package/object-details/lib/object-details-shell/object-details-shell.service.d.ts +0 -14
  256. package/object-details/lib/object-details.component.d.ts +0 -47
  257. package/object-details/lib/object-details.module.d.ts +0 -12
  258. package/object-details/lib/object-metadata/form-section-group.pipe.d.ts +0 -8
  259. package/object-details/lib/object-metadata/object-metadata-section/object-metadata-section.component.d.ts +0 -19
  260. package/object-details/lib/object-metadata/object-metadata-section/object-metadata-section.interface.d.ts +0 -9
  261. package/object-details/lib/object-metadata/object-metadata.component.d.ts +0 -75
  262. package/object-details/lib/object-metadata/object-metadata.interface.d.ts +0 -26
  263. package/object-flavor/lib/abstract-apply-create-flavor/abstract-apply-create-flavor.component.d.ts +0 -11
  264. package/object-flavor/lib/abstract-apply-object-flavor/abstract-apply-object-flavor.component.d.ts +0 -13
  265. package/object-flavor/lib/default-apply-flavor/default-apply-flavor.component.d.ts +0 -19
  266. package/object-flavor/lib/flavor-chip/flavor-chip.component.d.ts +0 -13
  267. package/object-flavor/lib/object-flavor/object-flavor.component.d.ts +0 -23
  268. package/object-flavor/lib/object-flavor-picker/object-flavor-picker.component.d.ts +0 -10
  269. package/object-form/lib/form-scripting.api.interface.d.ts +0 -131
  270. package/object-form/lib/form-scripting.service.d.ts +0 -30
  271. package/object-form/lib/object-form-element/object-form-element.component.d.ts +0 -23
  272. package/object-form/lib/object-form-extension.interface.d.ts +0 -22
  273. package/object-form/lib/object-form-group/object-form-group.component.d.ts +0 -20
  274. package/object-form/lib/object-form-script/form-scripting-element-extension/form-scripting-element-extension.component.d.ts +0 -10
  275. package/object-form/lib/object-form-script/object-form-script.service.d.ts +0 -45
  276. package/object-form/lib/object-form-script/object-form-scripting-scope.d.ts +0 -50
  277. package/object-form/lib/object-form.component.d.ts +0 -61
  278. package/object-form/lib/object-form.interface.d.ts +0 -69
  279. package/object-form/lib/object-form.module.d.ts +0 -7
  280. package/object-form/lib/object-form.service.d.ts +0 -41
  281. package/object-form/lib/object-form.utils.d.ts +0 -20
  282. package/object-form/lib/object-form.validation.d.ts +0 -21
  283. package/object-preview/lib/components/index.d.ts +0 -2
  284. package/object-preview/lib/components/object-email-preview/object-email-preview.component.d.ts +0 -16
  285. package/object-preview/lib/components/object-preview/object-preview.component.d.ts +0 -24
  286. package/object-preview/lib/services/object-preview.service.d.ts +0 -40
  287. package/object-relationship/lib/actions/add-relationship/add-relationship.component.d.ts +0 -37
  288. package/object-relationship/lib/actions/relationship-target-search/relationship-target-search.component.d.ts +0 -36
  289. package/object-relationship/lib/node-summary/node-summary.component.d.ts +0 -26
  290. package/object-relationship/lib/object-relationship-graph/object-relationship-graph.component.d.ts +0 -30
  291. package/object-relationship/lib/object-relationship-list/object-relationship-list-item/object-relationship-list-item.component.d.ts +0 -14
  292. package/object-relationship/lib/object-relationship-list/object-relationship-list.component.d.ts +0 -13
  293. package/object-relationship/lib/object-relationship.component.d.ts +0 -28
  294. package/object-relationship/lib/object-relationship.const.d.ts +0 -10
  295. package/object-relationship/lib/object-relationship.interface.d.ts +0 -38
  296. package/object-relationship/lib/object-relationship.module.d.ts +0 -7
  297. package/object-relationship/lib/object-relationship.service.d.ts +0 -26
  298. package/object-summary/lib/multi-object-summary/multi-object-summary.component.d.ts +0 -7
  299. package/object-summary/lib/object-summary/object-summary.component.d.ts +0 -64
  300. package/object-summary/lib/object-summary-data/object-summary-data.component.d.ts +0 -28
  301. package/object-summary/lib/object-summary.module.d.ts +0 -9
  302. package/object-versions/lib/object-versions.component.d.ts +0 -34
  303. package/object-versions/lib/object-versions.module.d.ts +0 -7
  304. package/overflow-hidden/lib/overflow-hidden.component.d.ts +0 -19
  305. package/overflow-hidden/lib/overflow-hidden.module.d.ts +0 -7
  306. package/overflow-menu/lib/overflow-menu.component.d.ts +0 -33
  307. package/overflow-menu/lib/overflow-menu.interface.d.ts +0 -10
  308. package/overflow-menu/lib/overflow-menu.module.d.ts +0 -7
  309. package/pagination/lib/pagination.component.d.ts +0 -21
  310. package/pagination/lib/pagination.interface.d.ts +0 -5
  311. package/popout/lib/fullscreen.directive.d.ts +0 -4
  312. package/popout/lib/popout-trigger/popout-trigger.component.d.ts +0 -13
  313. package/popout/lib/popout.component.d.ts +0 -59
  314. package/popout/lib/popout.interface.d.ts +0 -24
  315. package/popout/lib/popout.module.d.ts +0 -9
  316. package/query-list/lib/query-list.component.d.ts +0 -488
  317. package/query-list/lib/query-list.module.d.ts +0 -7
  318. package/renderer/lib/property-renderer/abstract.renderer.d.ts +0 -14
  319. package/renderer/lib/property-renderer/boolean.renderer.component.d.ts +0 -6
  320. package/renderer/lib/property-renderer/datetime.renderer.d.ts +0 -6
  321. package/renderer/lib/property-renderer/decimal.renderer.component.d.ts +0 -6
  322. package/renderer/lib/property-renderer/filesize.renderer.component.d.ts +0 -7
  323. package/renderer/lib/property-renderer/icon.renderer.component.d.ts +0 -8
  324. package/renderer/lib/property-renderer/index.d.ts +0 -11
  325. package/renderer/lib/property-renderer/integer.renderer.component.d.ts +0 -6
  326. package/renderer/lib/property-renderer/organization.renderer.d.ts +0 -13
  327. package/renderer/lib/property-renderer/string.renderer.component.d.ts +0 -6
  328. package/renderer/lib/property-renderer/table.renderer.component.d.ts +0 -17
  329. package/renderer/lib/property-renderer/unknown.renderer.d.ts +0 -6
  330. package/renderer/lib/renderer.directive.d.ts +0 -13
  331. package/renderer/lib/services/renderer/renderer.interface.d.ts +0 -4
  332. package/renderer/lib/services/renderer/renderer.service.d.ts +0 -35
  333. package/sequence-list/lib/sequence-list.component.d.ts +0 -40
  334. package/sequence-list/lib/sequence-list.interface.d.ts +0 -17
  335. package/simple-search/lib/models/index.d.ts +0 -1
  336. package/simple-search/lib/models/object-type-aggregation.model.d.ts +0 -14
  337. package/simple-search/lib/simple-search/simple-search.component.d.ts +0 -40
  338. package/sort/lib/sort/models/index.d.ts +0 -1
  339. package/sort/lib/sort/models/sort.interface.d.ts +0 -7
  340. package/sort/lib/sort/sort.component.d.ts +0 -25
  341. package/split-view/lib/split-area-cover.directive.d.ts +0 -15
  342. package/split-view/lib/split-area.directive.d.ts +0 -21
  343. package/split-view/lib/split-view.component.d.ts +0 -159
  344. package/split-view/lib/split-view.interface.d.ts +0 -11
  345. package/split-view/lib/split-view.module.d.ts +0 -8
  346. package/tile-list/lib/tile-actions-menu/tile-actions-menu.component.d.ts +0 -11
  347. package/tile-list/lib/tile-config/action-select/action-select.component.d.ts +0 -13
  348. package/tile-list/lib/tile-config/icon-select/icon-select.component.d.ts +0 -11
  349. package/tile-list/lib/tile-config/property-select/property-select.component.d.ts +0 -26
  350. package/tile-list/lib/tile-config/tile-config-tile/tile-config-tile.component.d.ts +0 -20
  351. package/tile-list/lib/tile-config/tile-config-trigger/tile-config-trigger.component.d.ts +0 -17
  352. package/tile-list/lib/tile-config/tile-config.component.d.ts +0 -48
  353. package/tile-list/lib/tile-extension/directive/tile-extension.directive.d.ts +0 -11
  354. package/tile-list/lib/tile-extension/extensions/email.extension.d.ts +0 -10
  355. package/tile-list/lib/tile-extension/tile-extension.service.d.ts +0 -16
  356. package/tile-list/lib/tile-list/tile-list.component.d.ts +0 -637
  357. package/tile-list/lib/tile-list/tile-list.interface.d.ts +0 -18
  358. package/token-search/lib/token-search.component.d.ts +0 -35
  359. package/token-search/lib/token-search.interface.d.ts +0 -27
  360. package/token-search/lib/token-search.module.d.ts +0 -7
  361. package/tree/lib/tree-node/tree-node.component.d.ts +0 -21
  362. package/tree/lib/tree.component.d.ts +0 -53
  363. package/tree/lib/tree.interface.d.ts +0 -11
  364. package/tree/lib/tree.service.d.ts +0 -35
  365. package/upload-progress/lib/upload-progress/upload-progress-overlay/upload-progress-overlay.component.d.ts +0 -12
  366. package/upload-progress/lib/upload-progress/upload-progress.component.d.ts +0 -33
  367. package/upload-progress/lib/upload-progress/upload-progress.module.d.ts +0 -7
  368. package/widget-grid/lib/widget-grid-event.service.d.ts +0 -10
  369. package/widget-grid/lib/widget-grid-registry.service.d.ts +0 -81
  370. package/widget-grid/lib/widget-grid-workspaces/widget-grid-workspaces.component.d.ts +0 -53
  371. package/widget-grid/lib/widget-grid-workspaces/widget-grid-workspaces.interface.d.ts +0 -17
  372. package/widget-grid/lib/widget-grid-workspaces/workspace-edit/workspace-edit.component.d.ts +0 -10
  373. package/widget-grid/lib/widget-grid.component.d.ts +0 -52
  374. package/widget-grid/lib/widget-grid.interface.d.ts +0 -51
  375. package/widget-grid/lib/widget-grid.module.d.ts +0 -8
  376. package/widget-grid/lib/widget-grid.service.d.ts +0 -45
  377. package/widget-grid/lib/widget-grid.utils.d.ts +0 -18
  378. package/widget-grid/lib/widget-picker/widget-picker.component.d.ts +0 -38
  379. package/widget-grid/lib/widgets/noop/noop.component.d.ts +0 -7
package/index.d.ts CHANGED
@@ -1,6 +1,909 @@
1
- export * from './lib/config';
2
- export * from './lib/enums';
3
- export * from './lib/models';
4
- export * from './lib/providers';
5
- export * from './lib/services';
6
- export * from './lib/yuuvis-client-framework.module';
1
+ import { MatSnackBarHorizontalPosition, MatSnackBarVerticalPosition, MatSnackBarRef } from '@angular/material/snack-bar';
2
+ import * as i0 from '@angular/core';
3
+ import { EnvironmentProviders } from '@angular/core';
4
+ import * as i1 from '@angular/common';
5
+
6
+ /**
7
+ * List of element selectors that should be excluded from halo focus
8
+ * when they are inside a Material form field component (mat-form-field).
9
+ *
10
+ * These elements typically have their own built-in focus indicators provided
11
+ * by Angular Material, making the halo focus redundant or visually conflicting.
12
+ *
13
+ * **Included Selectors:**
14
+ * - `input` - Text inputs, number inputs, etc. inside mat-form-field
15
+ * - `textarea` - Multi-line text inputs inside mat-form-field
16
+ * - `mat-select` - Material select dropdowns inside mat-form-field
17
+ *
18
+ * **Why Exclude These:**
19
+ * Angular Material form fields provide their own focus styling with floating labels,
20
+ * underlines, and color changes. Adding a halo around these elements would:
21
+ * - Create visual clutter and redundancy
22
+ * - Potentially conflict with Material's focus styling
23
+ * - Reduce the clarity of Material Design's established patterns
24
+ *
25
+ * **Note:** These elements will still receive halo focus if they appear OUTSIDE
26
+ * of mat-form-field containers. The exclusion only applies when they're wrapped
27
+ * in a mat-form-field.
28
+ *
29
+ * @see {@link HaloUtilityService.shouldSkipElementInMatFormField} for implementation
30
+ */
31
+ declare const haloExcludedElementsInMatFormField: string[];
32
+
33
+ /**
34
+ * List of keyboard navigation keys that trigger halo position updates.
35
+ *
36
+ * When any of these keys are pressed while an element is focused, the halo service
37
+ * schedules an immediate position update to ensure the halo follows the focused element
38
+ * if it moves within the page (e.g., scrolling a list, moving through a table).
39
+ *
40
+ * **Included Keys:**
41
+ * - `ArrowLeft`, `ArrowRight`, `ArrowUp`, `ArrowDown` - Directional navigation
42
+ * - `Home`, `End` - Jump to start/end of content
43
+ * - `PageUp`, `PageDown` - Page-level scrolling
44
+ *
45
+ * **Why This Matters:**
46
+ * Arrow keys and navigation keys can cause the focused element to scroll or move within
47
+ * its container (e.g., scrolling a select dropdown, moving focus in a grid). By tracking
48
+ * these keys, the halo can immediately update its position to follow the element, preventing
49
+ * visual misalignment.
50
+ *
51
+ * **Performance Note:**
52
+ * Updates are scheduled using requestAnimationFrame, so even rapid key presses won't
53
+ * cause performance issues.
54
+ *
55
+ * @see {@link HaloFocusService} for the implementation of keydown handling
56
+ */
57
+ declare const haloFocusNavigationKeys: string[];
58
+
59
+ /**
60
+ * Default offset (in pixels) between the halo border and the focused element's edges.
61
+ *
62
+ * This value determines how far the halo appears from the focused element:
63
+ * - **Positive value** (default: 3): Halo appears outside the element
64
+ * - **Zero (0)**: Halo aligns exactly with element edges (neutral offset)
65
+ * - **Negative value**: Halo appears inside the element (inset)
66
+ *
67
+ * **Override Methods:**
68
+ * - **Per-element**: Use `halo-offset="value"` attribute
69
+ * - **Per-container**: Use `halo-container-offset="value"` or preset attributes
70
+ *
71
+ * @example
72
+ * ```html
73
+ * <!-- Uses default 3px offset (outside) -->
74
+ * <button>Default</button>
75
+ *
76
+ * <!-- Custom 5px offset -->
77
+ * <input halo-offset="5" />
78
+ *
79
+ * ```
80
+ *
81
+ * @default 3
82
+ */
83
+ declare const defaultHaloFocusOffset = 3;
84
+
85
+ /**
86
+ * Default CSS styles for the halo focus element.
87
+ *
88
+ * These styles define the visual appearance and behavior of the halo border that
89
+ * highlights keyboard-focused elements. The halo is a fixed-position overlay that
90
+ * follows the focused element across the page.
91
+ *
92
+ * **Style Properties:**
93
+ * - `position: 'fixed'` - Keeps halo in viewport regardless of scroll position
94
+ * - `pointerEvents: 'none'` - Allows click-through; halo doesn't block interactions
95
+ * - `zIndex: '9999'` - Ensures halo appears above most other elements
96
+ * - `border` - Primary border using CSS variable `--ymt-primary` (2px solid)
97
+ * - `boxShadow` - Soft shadow with 20% opacity for subtle depth effect
98
+ * - `borderRadius` - Default 8px rounded corners for modern appearance
99
+ * - `opacity: '0'` - Initially hidden; visibility controlled by service
100
+ * - `transform: 'translateZ(0)'` - Creates GPU layer for smoother animations
101
+ *
102
+ * **CSS Variable Dependencies:**
103
+ * - `--ymt-primary` - Primary theme color for border and shadow
104
+ *
105
+ * **Note:** These are base styles that can be overridden globally via HaloFocusConfig
106
+ * or per-element using halo-* attributes.
107
+ *
108
+ * @see {@link HaloFocusConfig} for global style customization
109
+ */
110
+ declare const haloFocusStyles: Partial<CSSStyleDeclaration>;
111
+
112
+ /**
113
+ * Default session duration (in milliseconds) when no explicit duration is provided.
114
+ *
115
+ * This value is used as the fallback session lifetime when:
116
+ * - `provideSession()` is called without a duration parameter
117
+ * - Before `startSession(duration)` is called with a backend-provided value
118
+ *
119
+ * **Timeline:**
120
+ * ```
121
+ * [Session Start] ──────────────────────────────► [Session Expires]
122
+ * ← sessionDefaultDuration →
123
+ * ```
124
+ *
125
+ * **Override Methods:**
126
+ * - **At startup (known duration)**: `provideSession(customDuration)`
127
+ * - **After login (dynamic duration)**: `sessionService.startSession(backendDuration)`
128
+ *
129
+ * **Usage Scenarios:**
130
+ *
131
+ * Scenario 1 - Fixed duration:
132
+ * ```ts
133
+ * // app.config.ts
134
+ * providers: [
135
+ * provideSession(45 * 60 * 1000) // Override to 45 minutes
136
+ * ]
137
+ * ```
138
+ *
139
+ * Scenario 2 - Backend-provided duration:
140
+ * ```ts
141
+ * // app.config.ts
142
+ * providers: [
143
+ * provideSession() // Uses default 30 minutes initially
144
+ * ]
145
+ *
146
+ * // auth.service.ts (after login)
147
+ * login().subscribe(response => {
148
+ * sessionService.startSession(response.sessionExpiresIn); // Update to backend value
149
+ * });
150
+ * ```
151
+ *
152
+ * **Related Constants:**
153
+ * - {@link sessionActivityWindowBeforeEnd} - When to start tracking user activity
154
+ * - {@link sessionPopupBeforeEnd} - When to show the expiry warning popup
155
+ *
156
+ * @default 30 minutes (1800000 milliseconds)
157
+ */
158
+ declare const sessionDefaultDuration: number;
159
+
160
+ /**
161
+ * Time window (in milliseconds) before session expiry when user activity triggers auto-extension.
162
+ *
163
+ * During this window, the service tracks user interactions (mouse, keyboard, scroll) and HTTP activity.
164
+ * If any activity is detected, the session is automatically extended, preventing the expiry warning popup.
165
+ *
166
+ * **Session Timeline:**
167
+ * ```
168
+ * [Session Start] ──────────────────────────────► [Session Expires]
169
+ * ▲ ▲
170
+ * │ └─ sessionPopupBeforeEnd (1 min)
171
+ * └─ Activity window starts (2 min)
172
+ *
173
+ * ┌─────────────────────────────────────────────┐
174
+ * │ Activity Window (2 minutes) │
175
+ * │ • Tracks: mousemove, keydown, click, scroll │
176
+ * │ • Tracks: HTTP requests (debounced) │
177
+ * │ • If activity detected → auto-extend │
178
+ * │ • If no activity → show warning popup │
179
+ * └─────────────────────────────────────────────┘
180
+ * ```
181
+ *
182
+ * **Why This Matters:**
183
+ * - Prevents unnecessary interruptions for active users
184
+ * - Reduces server-side session renewal traffic by batching extensions
185
+ * - Provides a grace period before showing the expiry warning
186
+ *
187
+ * **Tracked Activities:**
188
+ * - **User interactions**: `mousemove`, `keydown`, `click`, `scroll` on `window`
189
+ * - **HTTP traffic**: Any request via `BackendService.httpCommunicationOccurred$` (debounced 500ms)
190
+ *
191
+ * **Interaction with Other Constants:**
192
+ * - Must be **greater than** {@link sessionPopupBeforeEnd} to allow the activity window before the popup
193
+ * - Typical relationship: `activityWindow > popupWarning` (e.g., 2 min > 1 min)
194
+ *
195
+ * **Performance Note:**
196
+ * Activity tracking is only active during this window, not throughout the entire session,
197
+ * minimizing performance impact of event listeners.
198
+ *
199
+ * @default 2 minutes (120000 milliseconds)
200
+ * @see {@link SessionService.setupUserActivityTracking} for implementation details
201
+ */
202
+ declare const sessionActivityWindowBeforeEnd: number;
203
+
204
+ /**
205
+ * Time (in milliseconds) before session expiry when the warning popup is displayed.
206
+ *
207
+ * When this threshold is reached without detected user activity during the activity window,
208
+ * a snackbar notification appears, warning the user that their session will expire soon
209
+ * and providing an "Extend session" action button.
210
+ *
211
+ * **Session Timeline:**
212
+ * ```
213
+ * [Session Start] ──────────────────────────────► [Session Expires]
214
+ * ▲ ▲
215
+ * │ └─ Popup appears (1 min before expiry)
216
+ * └─ Activity window starts (2 min before expiry)
217
+ *
218
+ * User has no activity during the 2-minute window:
219
+ * ├─ 2 min before: Activity tracking starts
220
+ * ├─ 1 min before: ⚠️ Popup shows "Session expires in one minute"
221
+ * └─ 0 min: Auto-logout if no action taken
222
+ * ```
223
+ *
224
+ * **Popup Behavior:**
225
+ * - Displays a warning message: "Session expires in one minute"
226
+ * - Provides an action button: "Extend session"
227
+ * - Clicking "Extend session" → extends session by the full session duration
228
+ * - Ignoring the popup → automatic logout when timer reaches zero
229
+ * - Only one popup is shown at a time (subsequent extensions dismiss the existing popup)
230
+ *
231
+ * **Cross-Tab Synchronization:**
232
+ * If the user extends the session in one browser tab, all other tabs:
233
+ * - Automatically dismiss their popups (if shown)
234
+ * - Reset their timers to the new expiry time
235
+ * - Avoid showing redundant warnings
236
+ *
237
+ * **Interaction with Other Constants:**
238
+ * - Must be **less than** {@link sessionActivityWindowBeforeEnd}
239
+ * - Typical relationship: `activityWindow > popupWarning` (e.g., 2 min > 1 min)
240
+ * - The gap between them determines how long the activity window runs before the popup
241
+ *
242
+ * **UX Considerations:**
243
+ * - **1 minute** gives users enough time to react without being too intrusive
244
+ * - Too short (e.g., 10 seconds): Users may not have time to respond
245
+ * - Too long (e.g., 5 minutes): Users may be unnecessarily interrupted if they return
246
+ *
247
+ * @default 1 minute (60000 milliseconds)
248
+ * @see {@link SessionService.showPopup} for popup implementation
249
+ */
250
+ declare const sessionPopupBeforeEnd: number;
251
+
252
+ declare enum ChannelMessage {
253
+ SessionExtended = "SessionExtended",
254
+ SessionLogout = "SessionLogout"
255
+ }
256
+
257
+ /**
258
+ * Configuration options for the Halo Focus service.
259
+ *
260
+ * These settings define the default visual appearance of the focus halo.
261
+ * Individual elements can override these defaults using halo-* attributes,
262
+ * and containers can set defaults for their children using halo-container-* attributes.
263
+ *
264
+ * @example
265
+ * const config: HaloFocusConfig = {
266
+ * innerColor: '#007bff',
267
+ * outerColor: 'rgba(0, 123, 255, 0.25)'
268
+ * };
269
+ */
270
+ interface HaloFocusConfig {
271
+ /**
272
+ * Inner color for the halo element.
273
+ *
274
+ * Accepts any valid CSS color value:
275
+ * - Named colors: 'blue', 'red'
276
+ * - Hex: '#007bff', '#f00'
277
+ * - RGB: 'rgb(0, 123, 255)'
278
+ * - RGBA: 'rgba(0, 123, 255, 0.5)'
279
+ * - CSS variables: 'var(--primary-color)'
280
+ * - Modern CSS: 'rgba(from var(--color) r g b / 0.5)'
281
+ *
282
+ * @default 'var(--ymt-primary)'
283
+ *
284
+ * @example
285
+ * innerColor: '#007bff'
286
+ * innerColor: 'var(--accent-color)'
287
+ */
288
+ innerColor?: string;
289
+ /**
290
+ * Outer color that appears around the halo element.
291
+ *
292
+ * Creates a subtle glow effect around the focused element.
293
+ * The outer color is 4px wide and surrounds the inner color.
294
+ *
295
+ * Accepts any valid CSS color value with alpha transparency recommended.
296
+ *
297
+ * @default 'rgba(from var(--ymt-primary) r g b / 0.2)'
298
+ *
299
+ * @example
300
+ * outerColor: 'rgba(0, 123, 255, 0.25)'
301
+ * outerColor: 'rgba(from var(--accent) r g b / 0.3)'
302
+ */
303
+ outerColor?: string;
304
+ }
305
+
306
+ type ChannelPayload = {
307
+ type: ChannelMessage;
308
+ expiresAt?: number;
309
+ };
310
+
311
+ type SnackBarLevel = 'info' | 'success' | 'warning' | 'danger';
312
+
313
+ interface SnackBarData {
314
+ level: SnackBarLevel;
315
+ message: string;
316
+ action?: string;
317
+ }
318
+
319
+ interface SnackBarOptions {
320
+ duration?: number;
321
+ horizontalPosition?: MatSnackBarHorizontalPosition;
322
+ verticalPosition?: MatSnackBarVerticalPosition;
323
+ action?: string;
324
+ level?: SnackBarLevel;
325
+ }
326
+
327
+ /**
328
+ * Provides and initializes the Halo Focus feature for the Angular application.
329
+ *
330
+ * This function sets up a global visual accessibility enhancement that creates a
331
+ * "halo" border around keyboard-focused elements, making navigation more visible
332
+ * and improving the user experience for keyboard users.
333
+ *
334
+ * **What It Does:**
335
+ * - Registers HaloFocusService and HaloUtility as application-wide providers
336
+ * - Automatically initializes the service during app startup via APP_INITIALIZER
337
+ * - Runs initialization outside Angular zone for optimal performance
338
+ * - Creates a persistent halo element that tracks focus throughout the application
339
+ *
340
+ * **Key Features:**
341
+ * - Keyboard-only focus indication (respects CSS :focus-visible)
342
+ * - Performance-optimized with requestAnimationFrame and zone-free execution
343
+ * - Fully customizable via global config or per-element attributes
344
+ * - Supports container-level defaults for consistent styling
345
+ * - Automatic visibility detection and responsive to DOM changes
346
+ *
347
+ * **Configuration Options:**
348
+ * @param config - Optional global configuration object
349
+ * @param config.innerColor - Inner color of the halo (default: 'var(--ymt-primary)')
350
+ * @param config.outerColor - Outer color around the halo (default: 'rgba(from var(--ymt-primary) r g b / 0.2)')
351
+ *
352
+ * @returns EnvironmentProviders for the Halo Focus feature
353
+ *
354
+ * @example
355
+ * // Basic usage in app.config.ts
356
+ * export const appConfig: ApplicationConfig = {
357
+ * providers: [
358
+ * provideHaloFocus()
359
+ * ]
360
+ * };
361
+ *
362
+ * @example
363
+ * // With custom configuration
364
+ * export const appConfig: ApplicationConfig = {
365
+ * providers: [
366
+ * provideHaloFocus({
367
+ * innerColor: '#007bff',
368
+ * outerColor: 'rgba(0, 123, 255, 0.25)'
369
+ * })
370
+ * ]
371
+ * };
372
+ *
373
+ * @example
374
+ * // Using element-level attributes in your template
375
+ * <button halo-color="red">Custom Red Halo</button>
376
+ * <input halo-offset="5" />
377
+ * <select halo-skip>No Halo</select>
378
+ *
379
+ * @example
380
+ * // Using container-level attributes
381
+ * <form halo-container halo-container-color="blue" halo-container-offset="5">
382
+ * <input /> <!-- Will use blue color and 5px offset -->
383
+ * <button halo-color="red">Submit</button> <!-- Overrides with red -->
384
+ * </form>
385
+ */
386
+ declare function provideHaloFocus(config?: HaloFocusConfig): EnvironmentProviders;
387
+
388
+ /**
389
+ * Provides and initializes the SessionService at application startup.
390
+ *
391
+ * What it does
392
+ * - Registers SessionService as a singleton to manage session expiry across the app
393
+ * - Runs `session.init()` via APP_INITIALIZER when the app boots
394
+ * - Initializes cross-tab BroadcastChannel sync, HTTP debounce hooks, and user-activity listeners
395
+ * - Automatically tracks HTTP activity and user interactions to extend sessions
396
+ *
397
+ * Usage scenarios
398
+ *
399
+ * Scenario 1: Known session duration at startup
400
+ * When the session duration is predetermined and constant, provide it here.
401
+ * ```ts
402
+ * // app.config.ts
403
+ * export const appConfig: ApplicationConfig = {
404
+ * providers: [
405
+ * provideSession(30 * 60 * 1000), // 30 minutes
406
+ * ]
407
+ * };
408
+ * ```
409
+ *
410
+ * Scenario 2: Dynamic session duration from backend
411
+ * When the session duration is determined after login (e.g., from backend response),
412
+ * omit the parameter here and call `startSession()` after receiving the duration.
413
+ * ```ts
414
+ * // app.config.ts
415
+ * export const appConfig: ApplicationConfig = {
416
+ * providers: [
417
+ * provideSession(), // Defaults to 30 minutes until startSession() is called
418
+ * ]
419
+ * };
420
+ *
421
+ * // After login in AuthService:
422
+ * login().subscribe(response => {
423
+ * sessionService.startSession(response.sessionExpiresIn); // Set actual duration
424
+ * });
425
+ * ```
426
+ *
427
+ * @param sessionDuration Optional session duration in milliseconds. If omitted, defaults to 30 minutes (1800000ms).
428
+ */
429
+ declare function provideSession(sessionDuration?: number): EnvironmentProviders;
430
+
431
+ /**
432
+ * Service that creates and manages a visual "halo" border around keyboard-focused elements
433
+ * to enhance navigation visibility and improve accessibility.
434
+ *
435
+ * This service operates globally across the application, automatically tracking focus events
436
+ * and dynamically positioning a halo element around the currently focused element. The halo
437
+ * responds to window scrolls, resizes, and DOM mutations to maintain accurate positioning.
438
+ *
439
+ * **Key Features:**
440
+ * - Keyboard-only focus indication (respects :focus-visible)
441
+ * - Performance-optimized with requestAnimationFrame and runs outside Angular zone
442
+ * - Element-level and container-level customization support
443
+ * - Automatic visibility detection (handles clipping, hidden elements, etc.)
444
+ * - Responsive to dynamic DOM changes via ResizeObserver and MutationObserver
445
+ * - Smart exclusion for Angular Material form fields (prevents redundant styling)
446
+ *
447
+ * **Usage:**
448
+ * 1. Add `provideHaloFocus()` to your providers array in app.config.ts
449
+ * 2. The service initializes automatically and appends a halo element to the DOM
450
+ * 3. Optionally customize appearance globally or per-element using attributes
451
+ *
452
+ * **Element-Level Attributes:**
453
+ * - `halo-skip` - Excludes element from halo highlighting
454
+ * - `halo-color="color"` - Custom halo color (e.g., "blue", "#00ff00", "rgb(255,0,0)")
455
+ * - `halo-offset="value"` - Custom numeric offset in pixels (default: 3)
456
+ *
457
+ * **Container-Level Attributes:**
458
+ * Define default halo styles for all focused children. Child elements can override
459
+ * container settings with their own halo-* attributes.
460
+ *
461
+ * - `halo-container` - Marks element as a halo container (required for other attributes)
462
+ * - `halo-container-skip` - Excludes all focused children from halo highlighting
463
+ * - `halo-container-color="color"` - Default halo color for focused children
464
+ * - `halo-container-offset="value"` - Default offset for focused children
465
+ *
466
+ * **Material Form Field Integration:**
467
+ * Elements inside Angular Material form fields (mat-form-field) are automatically excluded
468
+ * from halo focus to prevent visual conflicts with Material's built-in focus styling.
469
+ * Excluded elements: input, mat-select (configurable via haloExcludedElementsInMatFormField)
470
+ *
471
+ * @example
472
+ * ```html
473
+ * <!-- Element-level customization -->
474
+ * <button halo-color="red">Custom Red Halo</button>
475
+ * <input halo-offset="5" />
476
+ * <select halo-skip>No Halo</select>
477
+ *
478
+ * <!-- Container-level defaults -->
479
+ * <form halo-container halo-container-color="blue" halo-container-offset="5">
480
+ * <input /> <!-- Inherits blue color and 5px offset -->
481
+ * <button halo-color="red">Submit</button> <!-- Overrides with red, keeps 5px offset -->
482
+ * </form>
483
+ * ```
484
+ *
485
+ * **Performance Notes:**
486
+ * - Service runs outside Angular's zone to prevent unnecessary change detection
487
+ * - Uses requestAnimationFrame for smooth rendering
488
+ * - Only shows halo for keyboard interactions (respects :focus-visible)
489
+ *
490
+ * @see {@link provideHaloFocus} for initialization and configuration
491
+ * @see {@link HaloFocusConfig} for global configuration options
492
+ */
493
+ declare class HaloFocusService {
494
+ #private;
495
+ /**
496
+ * Initializes the Halo Focus service and sets up the global halo tracking system.
497
+ *
498
+ * This method performs the following initialization steps:
499
+ * 1. Applies optional configuration for halo appearance (inner and outer colors)
500
+ * 2. Creates and appends the halo DIV element to the document body
501
+ * 3. Attaches global event listeners for focus, blur, keyboard, mouse, scroll, and resize events
502
+ * 4. Sets up ResizeObserver and MutationObserver for tracking dynamic DOM changes
503
+ *
504
+ * **Lifecycle:**
505
+ * - Called automatically by `provideHaloFocus()` during app initialization
506
+ * - Runs outside Angular's zone to prevent triggering change detection
507
+ * - Initializes only once per application lifecycle
508
+ *
509
+ * **Performance:**
510
+ * - Uses passive event listeners where applicable
511
+ * - Leverages requestAnimationFrame for efficient rendering
512
+ * - Observers are conditionally created only if browser supports them
513
+ *
514
+ * @param config - Optional configuration object for customizing halo appearance
515
+ * @param config.innerColor - Custom inner color (overrides default primary color)
516
+ * @param config.outerColor - Custom outer color (overrides default shadow)
517
+ *
518
+ * @internal This method should not be called manually; use `provideHaloFocus()` instead
519
+ */
520
+ init(config?: HaloFocusConfig): void;
521
+ static ɵfac: i0.ɵɵFactoryDeclaration<HaloFocusService, never>;
522
+ static ɵprov: i0.ɵɵInjectableDeclaration<HaloFocusService>;
523
+ }
524
+
525
+ /**
526
+ * Utility service providing helper methods for the Halo Focus feature.
527
+ *
528
+ * This service contains pure utility functions for:
529
+ * - Element validation (focusability, visibility, focus-visible state)
530
+ * - Material form field detection and exclusion logic
531
+ * - Style calculations (colors, offsets, positioning)
532
+ * - DOM traversal (finding halo containers, checking parent visibility)
533
+ * - Halo element manipulation (size, color, position)
534
+ *
535
+ * **Scope & Performance:**
536
+ * This service is intentionally NOT provided in root (`providedIn: 'root'` is omitted).
537
+ * Instead, it's provided locally via `provideHaloFocus()`, ensuring it's only instantiated
538
+ * when the Halo Focus feature is actually used. This optimization prevents unnecessary
539
+ * service creation in applications that don't use halo focus.
540
+ *
541
+ * **Note:** This service is used exclusively by `HaloFocusService` and should not be
542
+ * injected or used elsewhere in the application.
543
+ *
544
+ * @internal
545
+ */
546
+ declare class HaloUtilityService {
547
+ /**
548
+ * Checks if an element is focusable (can receive keyboard focus).
549
+ *
550
+ * An element is considered focusable if:
551
+ * - It has a non-negative tabIndex (>= 0), OR
552
+ * - It's a natively focusable element (A, BUTTON, INPUT, SELECT, TEXTAREA), OR
553
+ * - It has contentEditable enabled
554
+ *
555
+ * @param element - Element to check
556
+ * @returns true if element can receive focus, false otherwise
557
+ */
558
+ isFocusable(element: Element | null): element is HTMLElement;
559
+ /**
560
+ * Checks if an element is inside a Material form field (mat-form-field).
561
+ *
562
+ * Traverses up the DOM tree from the element to check if any parent
563
+ * has the `mat-form-field` tag name. This is used to determine if
564
+ * certain elements should skip halo focus because they're already
565
+ * styled by Angular Material.
566
+ *
567
+ * **Search Scope:**
568
+ * - Starts from element itself
569
+ * - Stops at document.body
570
+ * - Returns true on first mat-form-field match
571
+ *
572
+ * @param element - The element to check
573
+ * @returns true if element is inside a mat-form-field, false otherwise
574
+ */
575
+ isElementInsideMatFormField(element: HTMLElement): boolean;
576
+ /**
577
+ * Determines if an element should be excluded from halo focus when inside mat-form-field.
578
+ *
579
+ * Checks two conditions:
580
+ * 1. Element tag name matches one of the excluded selectors (input, mat-select, etc.)
581
+ * 2. Element is inside a mat-form-field component
582
+ *
583
+ * If both conditions are true, the element should skip halo focus because
584
+ * Angular Material already provides adequate focus styling.
585
+ *
586
+ * **Excluded Elements (configurable via haloExcludedElementsInMatFormField):**
587
+ * - `input` elements inside mat-form-field
588
+ * - `textarea` elements inside mat-form-field
589
+ * - `mat-select` elements inside mat-form-field
590
+ *
591
+ * **Note:** Elements outside mat-form-field will NOT be skipped, even if
592
+ * their tag matches the exclusion list.
593
+ *
594
+ * @param element - The focused element to check
595
+ * @returns true if element should be skipped (no halo), false if halo should be shown
596
+ */
597
+ shouldSkipElementInMatFormField(element: HTMLElement): boolean;
598
+ /**
599
+ * Determines if an element should display the halo based on :focus-visible state.
600
+ *
601
+ * This method respects the CSS :focus-visible pseudo-class, which indicates that
602
+ * focus was triggered by keyboard navigation (not mouse clicks). The halo only appears
603
+ * when both conditions are met:
604
+ * 1. Element matches :focus-visible (browser determines this)
605
+ * 2. Last user interaction was via keyboard (tracked by service)
606
+ *
607
+ * **Fallback:** If browser doesn't support :focus-visible, falls back to checking
608
+ * lastInteractionWasKeyboard only.
609
+ *
610
+ * @param element - The currently focused element
611
+ * @param lastInteractionWasKeyboard - Whether the last interaction was a keyboard event
612
+ * @returns true if halo should be visible, false otherwise
613
+ */
614
+ matchesFocusVisible(element: HTMLElement, lastInteractionWasKeyboard: boolean): boolean;
615
+ /**
616
+ * Checks if an element is actually visible on the page.
617
+ *
618
+ * Performs comprehensive visibility checks including:
619
+ * - Element has non-zero dimensions (width and height > 0)
620
+ * - Element is not hidden via CSS (display: none, visibility: hidden, opacity: 0)
621
+ * - Element is not clipped by parent containers with overflow: hidden/clip
622
+ * - All parent elements in the hierarchy are visible
623
+ *
624
+ * This prevents the halo from appearing around technically focused but visually
625
+ * hidden elements (e.g., elements in collapsed sections, off-screen elements).
626
+ *
627
+ * @param element - Element to check for visibility
628
+ * @returns true if element is visible to the user, false otherwise
629
+ */
630
+ isElementVisible(element: HTMLElement): boolean;
631
+ /**
632
+ * Calculates the visible portion of an element considering overflow clipping from parent containers.
633
+ *
634
+ * Traverses up the DOM tree checking for parents with overflow clipping (hidden/clip/auto/scroll).
635
+ * For each clipping parent, calculates the intersection between the element's current visible area
636
+ * and the parent's boundaries, progressively clipping the visible rectangle.
637
+ *
638
+ * This is essential for showing halo focus only around the visible portion of elements that are
639
+ * partially scrolled out of view.
640
+ *
641
+ * @param element - The element to calculate visible rectangle for
642
+ * @returns The visible rectangle, or null if element is completely hidden
643
+ */
644
+ getVisibleRect(element: HTMLElement): DOMRect | null;
645
+ /**
646
+ * Recursively checks if all parent elements are visible and not clipping the target element.
647
+ *
648
+ * Traverses up the DOM tree from the element to document.body, checking each parent for:
649
+ * - Hidden state (display: none, visibility: hidden, opacity: 0)
650
+ * - Overflow clipping (overflow: hidden/clip) that completely hides the element
651
+ *
652
+ * If any parent has overflow clipping, calculates the visible intersection area.
653
+ * Returns false if element is completely clipped (no visible area).
654
+ *
655
+ * @param element - The element whose parents should be checked
656
+ * @param rect - The bounding rectangle of the element
657
+ * @returns true if element has visible area within all parent containers, false otherwise
658
+ */
659
+ isParentVisible(element: HTMLElement, rect: DOMRect): boolean;
660
+ /**
661
+ * Generates the complete CSS styles for the halo element, merging defaults with custom config.
662
+ *
663
+ * Takes the base styles from `haloFocusStyles` constant and overrides specific properties
664
+ * if custom configuration is provided. This allows global style customization while
665
+ * maintaining all required base styles.
666
+ *
667
+ * **Configurable Properties:**
668
+ * - Inner color (via config.innerColor)
669
+ * - Outer color (via config.outerColor)
670
+ *
671
+ * **Non-configurable Properties:**
672
+ * - position, pointerEvents, zIndex, opacity, transform (always use defaults)
673
+ *
674
+ * @param config - Optional global configuration object
675
+ * @returns Complete CSS style declaration object for the halo element
676
+ */
677
+ getHaloFocusStyles(config?: HaloFocusConfig): Partial<CSSStyleDeclaration>;
678
+ /**
679
+ * Finds the nearest parent element marked as a halo container.
680
+ *
681
+ * Traverses up the DOM tree looking for an element with the `halo-container` attribute.
682
+ * Container elements can define default halo styles (color, offset) that apply to all
683
+ * their focused children, unless overridden by child-specific halo-* attributes.
684
+ *
685
+ * **Search Scope:**
686
+ * - Starts from element's immediate parent
687
+ * - Stops at document.body (does not check body itself)
688
+ * - Returns first matching ancestor
689
+ *
690
+ * @param element - The focused element to search from
691
+ * @returns The nearest halo container element, or null if none found
692
+ */
693
+ getHaloContainer(element: HTMLElement): HTMLElement | null;
694
+ /**
695
+ * Converts any CSS color format to rgba with specified alpha transparency.
696
+ *
697
+ * Handles multiple color formats:
698
+ * - **rgba**: Replaces existing alpha value
699
+ * - **rgb**: Converts to rgba by appending alpha
700
+ * - **Hex** (#RRGGBB): Converts to rgba format
701
+ * - **Named colors**: Uses modern CSS `color-mix` function with alpha
702
+ *
703
+ * Used internally to create outer colors with reduced opacity from inner colors.
704
+ *
705
+ * @param color - CSS color in any valid format (rgba, rgb, hex, named)
706
+ * @param alpha - Alpha transparency value (0-1)
707
+ * @returns Color in rgba format with specified alpha
708
+ */
709
+ getColorWithAlpha(color: string, alpha: number): string;
710
+ /**
711
+ * Calculates the offset (distance) between the halo border and element edges.
712
+ *
713
+ * Determines offset using the following priority order:
714
+ * 1. **Element's own attributes** (highest priority):
715
+ * - `halo-offset="value"` - Custom numeric value
716
+ * 2. **Parent container attributes** (if element has no offset):
717
+ * - `halo-container-offset="value"`
718
+ * 3. **Default offset** (if nothing specified): 3px
719
+ *
720
+ * @param element - The focused element to calculate offset for
721
+ * @returns Offset value in pixels
722
+ */
723
+ getTargetOffset(element: HTMLElement | null): number;
724
+ /**
725
+ * Applies custom color styling to the halo element based on element or container attributes.
726
+ *
727
+ * Color resolution priority:
728
+ * 1. **Element's own color**: `halo-color="color"` attribute (highest priority)
729
+ * 2. **Container's color**: `halo-container-color="color"` from nearest halo container
730
+ * 3. **Default color**: From global config or base styles (if no custom color found)
731
+ *
732
+ * When custom color is found:
733
+ * - Sets inner color (2px solid border) with the custom color
734
+ * - Sets outer color (shadow) to match, with 20% alpha transparency for subtle depth
735
+ *
736
+ * When no custom color:
737
+ * - Resets to default styles from config or haloFocusStyles constant
738
+ *
739
+ * @param element - The focused element (checked for halo-color attribute)
740
+ * @param haloElement - The halo DIV element to apply styles to
741
+ * @param config - Optional global config for default colors
742
+ */
743
+ setCustomColor(element: HTMLElement, haloElement: HTMLDivElement, config?: HaloFocusConfig): void;
744
+ /**
745
+ * Positions and sizes the halo element to surround the focused element.
746
+ *
747
+ * Calculates halo dimensions and position based on:
748
+ * - Element's visible bounding rectangle (considering overflow clipping)
749
+ * - Calculated offset from getTargetOffset() (custom or default)
750
+ * - Element's border-radius for matching rounded corners
751
+ *
752
+ * **Calculation Details:**
753
+ * - Uses getVisibleRect to get only the visible portion of the element
754
+ * - Position: Visible rect's top/left minus offset (for outside positioning)
755
+ * - Size: Visible rect's width/height plus 2× offset (to extend on all sides)
756
+ * - Border radius: Inherited from focused element's computed style
757
+ *
758
+ * Uses Math.floor for position and Math.ceil for dimensions to prevent
759
+ * subpixel rendering issues and ensure full element coverage.
760
+ *
761
+ * @param currentElement - The currently focused element to surround
762
+ * @param haloElement - The halo DIV element to position and size
763
+ */
764
+ setHaloElementSize(currentElement: HTMLElement, haloElement: HTMLDivElement): void;
765
+ static ɵfac: i0.ɵɵFactoryDeclaration<HaloUtilityService, never>;
766
+ static ɵprov: i0.ɵɵInjectableDeclaration<HaloUtilityService>;
767
+ }
768
+
769
+ /**
770
+ * Manages client-side session expiry: persists expiration, tracks user and HTTP activity,
771
+ * shows a pre-expiry popup with an extend CTA, and syncs state across tabs via BroadcastChannel.
772
+ *
773
+ * Key behaviors
774
+ * - Persists `expiresAt` in AppCacheService so multiple tabs share the same deadline
775
+ * - Automatically listens to BackendService HTTP activity (debounced) to extend sessions
776
+ * - Extends backend session by calling `/api-web/api/idm/whoami` endpoint` (skipped when triggered by HTTP activity)
777
+ * - User activity (mouse, keyboard, scroll) inside a defined window will auto-extend the session
778
+ * - Displays a snack popup shortly before expiry; user can extend from the popup
779
+ * - Broadcasts `SessionExtended` / `SessionLogout` to keep tabs in sync
780
+ *
781
+ * Setup options
782
+ *
783
+ * Option 1: Known session duration at startup
784
+ * Use when the session duration is known in advance and remains constant.
785
+ * ```ts
786
+ * // app.config.ts
787
+ * export const appConfig: ApplicationConfig = {
788
+ * providers: [
789
+ * provideSession(30 * 60 * 1000), // 30 minutes - set at app startup
790
+ * ]
791
+ * };
792
+ * ```
793
+ *
794
+ * Option 2: Dynamic session duration from backend
795
+ * Use when the session duration is determined after login (e.g., from backend response).
796
+ * ```ts
797
+ * // app.config.ts
798
+ * export const appConfig: ApplicationConfig = {
799
+ * providers: [
800
+ * provideSession(), // Initialize without duration (defaults to 30 minutes)
801
+ * ]
802
+ * };
803
+ *
804
+ * // After login in AuthService:
805
+ * login().subscribe(response => {
806
+ * const sessionDuration = response.sessionExpiresIn; // from backend
807
+ * sessionService.startSession(sessionDuration);
808
+ * });
809
+ * ```
810
+ * Note: If no duration is provided to provideSession(), a default of 30 minutes is used until startSession() is called.
811
+ *
812
+ * Lifecycle notes
813
+ * - HTTP activity is automatically tracked via BackendService.httpCommunicationOccurred$
814
+ * - Backend session is extended via whoami endpoint, except when triggered by HTTP activity or cross-tab sync
815
+ * - Internal flag prevents recursive whoami calls when the endpoint itself triggers httpCommunicationOccurred$
816
+ * - Warning and logout timers are reset on every extend
817
+ * - All timers and the popup are cleared on logout
818
+ * - Broadcast messages are listened for and mirrored across tabs
819
+ * - For UI activity, this service listens to DOM events (mousemove, keydown, click, scroll)
820
+ */
821
+ declare class SessionService {
822
+ #private;
823
+ private translate;
824
+ /**
825
+ * Initializes cross-tab listeners and activity hooks.
826
+ *
827
+ * IMPORTANT: This is automatically called by `provideSession()` via APP_INITIALIZER.
828
+ * You should NOT call this manually - just add `provideSession()` to your app providers.
829
+ *
830
+ * What it does:
831
+ * - Initializes session with provided or default duration value
832
+ * - Wires BroadcastChannel subscriptions for cross-tab sync
833
+ * - Subscribes to BackendService.httpCommunicationOccurred$ for automatic HTTP activity tracking
834
+ * - Attaches DOM event listeners (mousemove, keydown, click, scroll) for the activity window
835
+ */
836
+ init(sessionDuration?: number): void;
837
+ /**
838
+ * Sets the session duration and starts the session lifecycle.
839
+ *
840
+ * Use this method when you need to set or update the session duration dynamically,
841
+ * typically after receiving authentication/session information from the backend.
842
+ *
843
+ * This is the correct approach when:
844
+ * - Session duration is not known at application startup
845
+ * - Duration comes from a backend API response after login
846
+ * - You need to manually override the duration set via provideSession()
847
+ *
848
+ * Example:
849
+ * ```ts
850
+ * // After login in AuthService
851
+ * login().subscribe(response => {
852
+ * this.sessionService.startSession(response.sessionExpiresIn);
853
+ * });
854
+ * ```
855
+ *
856
+ * @param duration Total session length in milliseconds
857
+ */
858
+ startSession(duration: number): void;
859
+ /**
860
+ * Extends the session expiry, resets all timers, and optionally broadcasts to other tabs.
861
+ *
862
+ * @param broadcast When true (default), posts a BroadcastChannel message so other tabs sync
863
+ * @param expiresAt Optional custom expiry timestamp; if not provided, calculates based on session duration
864
+ * @param skipBackendCall When true, skips the whoami backend call (used when already triggered by HTTP activity)
865
+ */
866
+ extendSession(broadcast?: boolean, expiresAt?: number, skipBackendCall?: boolean): void;
867
+ private listenToChannel;
868
+ private scheduleActivityWindow;
869
+ private showPopup;
870
+ private scheduleLogout;
871
+ private performLogout;
872
+ private setupHttpDebounce;
873
+ private setupUserActivityTracking;
874
+ private resetAllTimers;
875
+ private getExpiresAt;
876
+ private setExpiresAt;
877
+ private clearTimers;
878
+ static ɵfac: i0.ɵɵFactoryDeclaration<SessionService, never>;
879
+ static ɵprov: i0.ɵɵInjectableDeclaration<SessionService>;
880
+ }
881
+
882
+ declare class SnackBarService {
883
+ #private;
884
+ info(message: string, action?: string, duration?: number): MatSnackBarRef<SnackBarComponent>;
885
+ success(message: string, action?: string, duration?: number): MatSnackBarRef<SnackBarComponent>;
886
+ warning(message: string, action?: string, duration?: number): MatSnackBarRef<SnackBarComponent>;
887
+ danger(message: string, action?: string, duration?: number): MatSnackBarRef<SnackBarComponent>;
888
+ snack(message: string, options: SnackBarOptions): MatSnackBarRef<SnackBarComponent>;
889
+ static ɵfac: i0.ɵɵFactoryDeclaration<SnackBarService, never>;
890
+ static ɵprov: i0.ɵɵInjectableDeclaration<SnackBarService>;
891
+ }
892
+ declare class SnackBarComponent {
893
+ #private;
894
+ level: i0.WritableSignal<SnackBarLevel>;
895
+ message: i0.WritableSignal<string>;
896
+ action: i0.WritableSignal<string | undefined>;
897
+ dismiss(withAction?: boolean): void;
898
+ static ɵfac: i0.ɵɵFactoryDeclaration<SnackBarComponent, never>;
899
+ static ɵcmp: i0.ɵɵComponentDeclaration<SnackBarComponent, "yuv-snack-bar-component", never, {}, {}, never, never, true, never>;
900
+ }
901
+
902
+ declare class YuuvisClientFrameworkModule {
903
+ static ɵfac: i0.ɵɵFactoryDeclaration<YuuvisClientFrameworkModule, never>;
904
+ static ɵmod: i0.ɵɵNgModuleDeclaration<YuuvisClientFrameworkModule, never, [typeof i1.CommonModule], never>;
905
+ static ɵinj: i0.ɵɵInjectorDeclaration<YuuvisClientFrameworkModule>;
906
+ }
907
+
908
+ export { ChannelMessage, HaloFocusService, HaloUtilityService, SessionService, SnackBarComponent, SnackBarService, YuuvisClientFrameworkModule, defaultHaloFocusOffset, haloExcludedElementsInMatFormField, haloFocusNavigationKeys, haloFocusStyles, provideHaloFocus, provideSession, sessionActivityWindowBeforeEnd, sessionDefaultDuration, sessionPopupBeforeEnd };
909
+ export type { ChannelPayload, HaloFocusConfig, SnackBarData, SnackBarLevel, SnackBarOptions };