@uxland/primary-shell 3.5.2 → 3.5.3

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 (210) hide show
  1. package/dist/index.js +1493 -1275
  2. package/dist/index.js.map +1 -1
  3. package/dist/index.umd.cjs +126 -115
  4. package/dist/index.umd.cjs.map +1 -1
  5. package/dist/primary/shell/src/UI/shared-components/primaria-text-editor/primaria-rich-text-editor.d.ts +1 -0
  6. package/dist/primary/shell/src/internal-plugins/activity-history/{features/inject-async-history-items → activity-history-item/add/add-async-history-items}/bootstrapper.d.ts +1 -1
  7. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/add/add-async-history-items/handler.d.ts +6 -0
  8. package/dist/primary/shell/src/internal-plugins/activity-history/{features/inject-async-history-items → activity-history-item/add/add-async-history-items}/request.d.ts +3 -1
  9. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/add/add-history-item/action.d.ts +5 -0
  10. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/add/add-history-item/add-item-to-collection.d.ts +10 -0
  11. package/dist/primary/shell/src/internal-plugins/activity-history/{features → activity-history-item/add}/add-history-item/bootstrapper.d.ts +1 -1
  12. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/add/add-history-item/handler.d.ts +6 -0
  13. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/add/add-history-item/reducer.d.ts +8 -0
  14. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/add/add-history-items/action.d.ts +6 -0
  15. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/add/add-history-items/add-items-to-collection.d.ts +10 -0
  16. package/dist/primary/shell/src/internal-plugins/activity-history/{features → activity-history-item/add}/add-history-items/bootstrapper.d.ts +1 -1
  17. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/add/add-history-items/handler.d.ts +6 -0
  18. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/add/add-history-items/reducer.d.ts +9 -0
  19. package/dist/primary/shell/src/internal-plugins/activity-history/{features → activity-history-item/add}/add-history-items/request.d.ts +2 -0
  20. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/bootstrapper.d.ts +4 -0
  21. package/dist/primary/shell/src/internal-plugins/activity-history/{domain → activity-history-item/domain}/model.d.ts +5 -3
  22. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/domain/specs/own-spec.d.ts +8 -0
  23. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/domain/specs/relevant-spec.d.ts +8 -0
  24. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/domain/specs/search-string-spec.d.ts +9 -0
  25. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/domain/specs/spec.d.ts +29 -0
  26. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/domain/specs/true-spec.d.ts +6 -0
  27. package/dist/primary/shell/src/internal-plugins/activity-history/{features → activity-history-item}/export-to-pdf/bootstrapper.d.ts +1 -1
  28. package/dist/primary/shell/src/internal-plugins/activity-history/{components → activity-history-item/export-to-pdf}/export-pdf-modal/export-pdf-modal.d.ts +1 -1
  29. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/export-to-pdf/handler.d.ts +6 -0
  30. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/UI/activity-history-filters/activity-history-filters.d.ts +13 -0
  31. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/UI/activity-history-filters/template.d.ts +3 -0
  32. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/actions.d.ts +1 -0
  33. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/bootstrapper.d.ts +4 -0
  34. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/common-filters.d.ts +3 -0
  35. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/constants.d.ts +7 -0
  36. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/model.d.ts +19 -0
  37. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/selectors.d.ts +157 -0
  38. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/set-common-filter/bootstrapper.d.ts +4 -0
  39. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/set-common-filter/handler.d.ts +6 -0
  40. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/filter/set-common-filter/request.d.ts +10 -0
  41. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/UI/main-view/activity-history-main.d.ts +23 -0
  42. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/UI/main-view/template.d.ts +4 -0
  43. package/dist/primary/shell/src/internal-plugins/activity-history/{components/activity-history/activity-history-timeline → activity-history-item/list/UI/timeline}/activity-history-timeline.d.ts +3 -3
  44. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/bootstrapper.d.ts +2 -0
  45. package/dist/primary/shell/src/internal-plugins/activity-history/{domain → activity-history-item/list}/group-history-items/group-history-items.d.ts +1 -1
  46. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/actions.d.ts +1 -0
  47. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/bootstrapper.d.ts +2 -0
  48. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/busy-component/component.d.ts +8 -0
  49. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/busy-component/template.d.ts +4 -0
  50. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/reducers.d.ts +4 -0
  51. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/selectors.d.ts +4 -0
  52. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/handle-error/actions.d.ts +1 -0
  53. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/handle-error/reducers.d.ts +2 -0
  54. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/selectors.d.ts +156 -0
  55. package/dist/primary/shell/src/internal-plugins/activity-history/{domain → activity-history-item/list}/sort-history-items-by-date/sort-history-items-by-date.d.ts +1 -1
  56. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/list/sort-history-items-by-date/sort-history-items-by-date.test.d.ts +1 -0
  57. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/remove/reducer.d.ts +1 -0
  58. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/search/actions.d.ts +1 -0
  59. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/search/activity-history-search-bar/activity-history-search-bar.d.ts +8 -0
  60. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/search/activity-history-search-bar/template.d.ts +3 -0
  61. package/dist/primary/shell/src/internal-plugins/activity-history/{components/activity-history/activity-history-search-header/activity-history-search-header.d.ts → activity-history-item/search/activity-history-search-results/activity-history-search-results.d.ts} +1 -1
  62. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/search/activity-history-search-results/template.d.ts +3 -0
  63. package/dist/primary/shell/src/internal-plugins/activity-history/{features/search-items → activity-history-item/search}/bootstrapper.d.ts +1 -1
  64. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/search/handler.d.ts +6 -0
  65. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/search/reducer.d.ts +3 -0
  66. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/search/selectors.d.ts +3 -0
  67. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/slice.d.ts +26 -0
  68. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/update/action.d.ts +4 -0
  69. package/dist/primary/shell/src/internal-plugins/activity-history/{features/update-history-item → activity-history-item/update}/bootstrapper.d.ts +1 -1
  70. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/update/handler.d.ts +6 -0
  71. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/update/reducer.d.ts +7 -0
  72. package/dist/primary/shell/src/internal-plugins/activity-history/{features/update-history-item → activity-history-item/update}/request.d.ts +1 -1
  73. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/update/update-item-in-collection.d.ts +3 -0
  74. package/dist/primary/shell/src/internal-plugins/activity-history/activity-history-item/update/update-item-in-collection.test.d.ts +1 -0
  75. package/dist/primary/shell/src/internal-plugins/activity-history/index.d.ts +1 -1
  76. package/dist/primary/shell/src/internal-plugins/activity-history/infrastructure/base-handlers.d.ts +16 -0
  77. package/dist/primary/shell/src/internal-plugins/activity-history/infrastructure/ioc/container.d.ts +2 -0
  78. package/dist/primary/shell/src/internal-plugins/activity-history/infrastructure/state/store.d.ts +16 -4
  79. package/package.json +1 -1
  80. package/src/UI/shared-components/primaria-text-editor/primaria-rich-text-editor.ts +23 -0
  81. package/src/internal-plugins/activity-history/{features/inject-async-history-items → activity-history-item/add/add-async-history-items}/bootstrapper.ts +2 -2
  82. package/src/internal-plugins/activity-history/activity-history-item/add/add-async-history-items/handler.ts +27 -0
  83. package/src/internal-plugins/activity-history/{features/inject-async-history-items → activity-history-item/add/add-async-history-items}/request.ts +3 -1
  84. package/src/internal-plugins/activity-history/activity-history-item/add/add-history-item/action.ts +3 -0
  85. package/src/internal-plugins/activity-history/activity-history-item/add/add-history-item/add-item-to-collection.ts +11 -0
  86. package/src/internal-plugins/activity-history/{features → activity-history-item/add}/add-history-item/bootstrapper.ts +2 -2
  87. package/src/internal-plugins/activity-history/{features → activity-history-item/add}/add-history-item/handler.ts +4 -7
  88. package/src/internal-plugins/activity-history/activity-history-item/add/add-history-item/reducer.ts +15 -0
  89. package/src/internal-plugins/activity-history/activity-history-item/add/add-history-items/action.ts +3 -0
  90. package/src/internal-plugins/activity-history/{domain/handle-collections/handle-collections.test.ts → activity-history-item/add/add-history-items/add-items-to-collection.test.ts} +2 -64
  91. package/src/internal-plugins/activity-history/activity-history-item/add/add-history-items/add-items-to-collection.ts +25 -0
  92. package/src/internal-plugins/activity-history/{features → activity-history-item/add}/add-history-items/bootstrapper.ts +2 -2
  93. package/src/internal-plugins/activity-history/activity-history-item/add/add-history-items/handler.ts +22 -0
  94. package/src/internal-plugins/activity-history/activity-history-item/add/add-history-items/reducer.ts +22 -0
  95. package/src/internal-plugins/activity-history/{features → activity-history-item/add}/add-history-items/request.ts +2 -0
  96. package/src/internal-plugins/activity-history/activity-history-item/bootstrapper.ts +46 -0
  97. package/src/internal-plugins/activity-history/{domain → activity-history-item/domain}/model.ts +9 -3
  98. package/src/internal-plugins/activity-history/activity-history-item/domain/specs/own-spec.ts +14 -0
  99. package/src/internal-plugins/activity-history/activity-history-item/domain/specs/relevant-spec.ts +11 -0
  100. package/src/internal-plugins/activity-history/activity-history-item/domain/specs/relevant.spec.ts +59 -0
  101. package/src/internal-plugins/activity-history/activity-history-item/domain/specs/search-string-spec.test.ts +105 -0
  102. package/src/internal-plugins/activity-history/activity-history-item/domain/specs/search-string-spec.ts +58 -0
  103. package/src/internal-plugins/activity-history/activity-history-item/domain/specs/spec.ts +54 -0
  104. package/src/internal-plugins/activity-history/activity-history-item/domain/specs/true-spec.ts +8 -0
  105. package/src/internal-plugins/activity-history/{features → activity-history-item}/export-to-pdf/bootstrapper.ts +2 -1
  106. package/src/internal-plugins/activity-history/{components → activity-history-item/export-to-pdf}/export-pdf-modal/export-pdf-modal.ts +2 -2
  107. package/src/internal-plugins/activity-history/{components → activity-history-item/export-to-pdf}/export-pdf-modal/template.ts +5 -5
  108. package/src/internal-plugins/activity-history/{features → activity-history-item}/export-to-pdf/handler.ts +3 -6
  109. package/src/internal-plugins/activity-history/activity-history-item/filter/UI/activity-history-filters/activity-history-filters.ts +40 -0
  110. package/src/internal-plugins/activity-history/activity-history-item/filter/UI/activity-history-filters/styles.css +39 -0
  111. package/src/internal-plugins/activity-history/activity-history-item/filter/UI/activity-history-filters/template.ts +30 -0
  112. package/src/internal-plugins/activity-history/activity-history-item/filter/actions.ts +3 -0
  113. package/src/internal-plugins/activity-history/activity-history-item/filter/bootstrapper.ts +14 -0
  114. package/src/internal-plugins/activity-history/activity-history-item/filter/common-filters.ts +29 -0
  115. package/src/internal-plugins/activity-history/activity-history-item/filter/constants.ts +8 -0
  116. package/src/internal-plugins/activity-history/activity-history-item/filter/model.ts +20 -0
  117. package/src/internal-plugins/activity-history/activity-history-item/filter/selectors.ts +28 -0
  118. package/src/internal-plugins/activity-history/activity-history-item/filter/set-common-filter/bootstrapper.ts +14 -0
  119. package/src/internal-plugins/activity-history/activity-history-item/filter/set-common-filter/handler.ts +13 -0
  120. package/src/internal-plugins/activity-history/activity-history-item/filter/set-common-filter/request.ts +3 -0
  121. package/src/internal-plugins/activity-history/activity-history-item/filter/slice.ts +27 -0
  122. package/src/internal-plugins/activity-history/activity-history-item/list/UI/main-view/activity-history-main.ts +91 -0
  123. package/src/internal-plugins/activity-history/{components/activity-history → activity-history-item/list/UI/main-view}/styles.css +2 -39
  124. package/src/internal-plugins/activity-history/{components/activity-history → activity-history-item/list/UI/main-view}/template.ts +11 -32
  125. package/src/internal-plugins/activity-history/{components/activity-history/activity-history-timeline → activity-history-item/list/UI/timeline}/activity-history-timeline.ts +24 -7
  126. package/src/internal-plugins/activity-history/{components/activity-history/activity-history-timeline → activity-history-item/list/UI/timeline}/styles.css +1 -1
  127. package/src/internal-plugins/activity-history/{components/activity-history/activity-history-timeline → activity-history-item/list/UI/timeline}/template.ts +8 -7
  128. package/src/internal-plugins/activity-history/activity-history-item/list/bootstrapper.ts +5 -0
  129. package/src/internal-plugins/activity-history/{domain → activity-history-item/list}/group-history-items/group-history-items.test.ts +1 -1
  130. package/src/internal-plugins/activity-history/{domain → activity-history-item/list}/group-history-items/group-history-items.ts +12 -8
  131. package/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/actions.ts +4 -0
  132. package/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/bootstrapper.ts +5 -0
  133. package/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/busy-component/component.ts +27 -0
  134. package/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/busy-component/styles.css +15 -0
  135. package/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/busy-component/template.ts +10 -0
  136. package/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/reducers.ts +8 -0
  137. package/src/internal-plugins/activity-history/activity-history-item/list/handle-busy/selectors.ts +13 -0
  138. package/src/internal-plugins/activity-history/activity-history-item/list/handle-error/actions.ts +4 -0
  139. package/src/internal-plugins/activity-history/activity-history-item/list/handle-error/reducers.ts +6 -0
  140. package/src/internal-plugins/activity-history/activity-history-item/list/selectors.ts +62 -0
  141. package/src/internal-plugins/activity-history/{domain → activity-history-item/list}/sort-history-items-by-date/sort-history-items-by-date.ts +7 -7
  142. package/src/internal-plugins/activity-history/activity-history-item/remove/reducer.ts +5 -0
  143. package/src/internal-plugins/activity-history/activity-history-item/search/actions.ts +3 -0
  144. package/src/internal-plugins/activity-history/activity-history-item/search/activity-history-search-bar/activity-history-search-bar.ts +26 -0
  145. package/src/internal-plugins/activity-history/activity-history-item/search/activity-history-search-bar/template.ts +8 -0
  146. package/src/internal-plugins/activity-history/{components/activity-history/activity-history-search-header/activity-history-search-header.ts → activity-history-item/search/activity-history-search-results/activity-history-search-results.ts} +2 -3
  147. package/src/internal-plugins/activity-history/activity-history-item/search/activity-history-search-results/styles.css +14 -0
  148. package/src/internal-plugins/activity-history/{components/activity-history/activity-history-search-header → activity-history-item/search/activity-history-search-results}/template.ts +2 -2
  149. package/src/internal-plugins/activity-history/{features/search-items → activity-history-item/search}/bootstrapper.ts +3 -1
  150. package/src/internal-plugins/activity-history/activity-history-item/search/handler.ts +17 -0
  151. package/src/internal-plugins/activity-history/activity-history-item/search/reducer.ts +5 -0
  152. package/src/internal-plugins/activity-history/activity-history-item/search/selectors.ts +4 -0
  153. package/src/internal-plugins/activity-history/activity-history-item/slice.ts +37 -0
  154. package/src/internal-plugins/activity-history/activity-history-item/update/action.ts +3 -0
  155. package/src/internal-plugins/activity-history/{features/update-history-item → activity-history-item/update}/bootstrapper.ts +1 -1
  156. package/src/internal-plugins/activity-history/activity-history-item/update/handler.ts +20 -0
  157. package/src/internal-plugins/activity-history/activity-history-item/update/reducer.ts +11 -0
  158. package/src/internal-plugins/activity-history/{features/update-history-item → activity-history-item/update}/request.ts +1 -1
  159. package/src/internal-plugins/activity-history/activity-history-item/update/update-item-in-collection.test.ts +65 -0
  160. package/src/internal-plugins/activity-history/activity-history-item/update/update-item-in-collection.ts +18 -0
  161. package/src/internal-plugins/activity-history/index.ts +1 -1
  162. package/src/internal-plugins/activity-history/infrastructure/base-handlers.ts +22 -0
  163. package/src/internal-plugins/activity-history/infrastructure/ioc/container.ts +9 -1
  164. package/src/internal-plugins/activity-history/infrastructure/state/store.ts +4 -2
  165. package/src/internal-plugins/activity-history/main.ts +15 -11
  166. package/dist/primary/shell/src/internal-plugins/activity-history/components/activity-history/activity-history-search-header/template.d.ts +0 -3
  167. package/dist/primary/shell/src/internal-plugins/activity-history/components/activity-history/activity-history.d.ts +0 -28
  168. package/dist/primary/shell/src/internal-plugins/activity-history/components/activity-history/template.d.ts +0 -4
  169. package/dist/primary/shell/src/internal-plugins/activity-history/domain/filter-by-search-string/filter-by-search-string.d.ts +0 -3
  170. package/dist/primary/shell/src/internal-plugins/activity-history/domain/handle-collections/handle-collections.d.ts +0 -19
  171. package/dist/primary/shell/src/internal-plugins/activity-history/features/add-history-item/handler.d.ts +0 -8
  172. package/dist/primary/shell/src/internal-plugins/activity-history/features/add-history-items/handler.d.ts +0 -8
  173. package/dist/primary/shell/src/internal-plugins/activity-history/features/bootstrapper.d.ts +0 -4
  174. package/dist/primary/shell/src/internal-plugins/activity-history/features/export-to-pdf/handler.d.ts +0 -8
  175. package/dist/primary/shell/src/internal-plugins/activity-history/features/inject-async-history-items/handler.d.ts +0 -8
  176. package/dist/primary/shell/src/internal-plugins/activity-history/features/search-items/handler.d.ts +0 -10
  177. package/dist/primary/shell/src/internal-plugins/activity-history/features/update-history-item/handler.d.ts +0 -8
  178. package/dist/primary/shell/src/internal-plugins/activity-history/infrastructure/state/actions.d.ts +0 -1
  179. package/dist/primary/shell/src/internal-plugins/activity-history/infrastructure/state/selectors.d.ts +0 -210
  180. package/src/internal-plugins/activity-history/components/activity-history/activity-history.ts +0 -125
  181. package/src/internal-plugins/activity-history/domain/filter-by-search-string/filter-by-search-string.test.ts +0 -68
  182. package/src/internal-plugins/activity-history/domain/filter-by-search-string/filter-by-search-string.ts +0 -44
  183. package/src/internal-plugins/activity-history/domain/handle-collections/handle-collections.ts +0 -47
  184. package/src/internal-plugins/activity-history/features/add-history-items/handler.ts +0 -23
  185. package/src/internal-plugins/activity-history/features/bootstrapper.ts +0 -39
  186. package/src/internal-plugins/activity-history/features/inject-async-history-items/handler.ts +0 -37
  187. package/src/internal-plugins/activity-history/features/search-items/handler.ts +0 -24
  188. package/src/internal-plugins/activity-history/features/update-history-item/handler.ts +0 -23
  189. package/src/internal-plugins/activity-history/infrastructure/state/actions.ts +0 -13
  190. package/src/internal-plugins/activity-history/infrastructure/state/selectors.ts +0 -67
  191. package/src/internal-plugins/activity-history/infrastructure/state/slices.ts +0 -61
  192. /package/dist/primary/shell/src/internal-plugins/activity-history/{features → activity-history-item/add}/add-history-item/request.d.ts +0 -0
  193. /package/dist/primary/shell/src/internal-plugins/activity-history/{domain/filter-by-search-string/filter-by-search-string.test.d.ts → activity-history-item/add/add-history-items/add-items-to-collection.test.d.ts} +0 -0
  194. /package/dist/primary/shell/src/internal-plugins/activity-history/{domain → activity-history-item/domain}/is-valid-history-item/is-valid-history-item.d.ts +0 -0
  195. /package/dist/primary/shell/src/internal-plugins/activity-history/{domain → activity-history-item/domain}/is-valid-history-item/is-valid-history-item.test.d.ts +0 -0
  196. /package/dist/primary/shell/src/internal-plugins/activity-history/{domain/group-history-items/group-history-items.test.d.ts → activity-history-item/domain/specs/relevant.spec.d.ts} +0 -0
  197. /package/dist/primary/shell/src/internal-plugins/activity-history/{domain/handle-collections/handle-collections.test.d.ts → activity-history-item/domain/specs/search-string-spec.test.d.ts} +0 -0
  198. /package/dist/primary/shell/src/internal-plugins/activity-history/{components → activity-history-item/export-to-pdf}/export-pdf-modal/template.d.ts +0 -0
  199. /package/dist/primary/shell/src/internal-plugins/activity-history/{features → activity-history-item}/export-to-pdf/request.d.ts +0 -0
  200. /package/dist/primary/shell/src/internal-plugins/activity-history/{components/activity-history/activity-history-timeline → activity-history-item/list/UI/timeline}/template.d.ts +0 -0
  201. /package/dist/primary/shell/src/internal-plugins/activity-history/{domain/sort-history-items-by-date/sort-history-items-by-date.test.d.ts → activity-history-item/list/group-history-items/group-history-items.test.d.ts} +0 -0
  202. /package/dist/primary/shell/src/internal-plugins/activity-history/{features/search-items → activity-history-item/search}/request.d.ts +0 -0
  203. /package/src/internal-plugins/activity-history/{features → activity-history-item/add}/add-history-item/request.ts +0 -0
  204. /package/src/internal-plugins/activity-history/{domain → activity-history-item/domain}/is-valid-history-item/is-valid-history-item.test.ts +0 -0
  205. /package/src/internal-plugins/activity-history/{domain → activity-history-item/domain}/is-valid-history-item/is-valid-history-item.ts +0 -0
  206. /package/src/internal-plugins/activity-history/{components → activity-history-item/export-to-pdf}/export-pdf-modal/export-pdf-modal.css +0 -0
  207. /package/src/internal-plugins/activity-history/{features → activity-history-item}/export-to-pdf/request.ts +0 -0
  208. /package/src/internal-plugins/activity-history/{domain → activity-history-item/list}/sort-history-items-by-date/sort-history-items-by-date.test.ts +0 -0
  209. /package/src/internal-plugins/activity-history/{components/activity-history/activity-history-search-header → activity-history-item/search/activity-history-search-bar}/styles.css +0 -0
  210. /package/src/internal-plugins/activity-history/{features/search-items → activity-history-item/search}/request.ts +0 -0
@@ -0,0 +1,40 @@
1
+ import { LitElement, css, html, unsafeCSS } from "lit";
2
+ import { customElement, state } from "lit/decorators.js";
3
+ import { PrimariaApi } from "../../../../../../api/api";
4
+ import { IActivityHistoryFilter } from "../../model";
5
+ import { lazyInject } from "../../../../infrastructure/ioc/container";
6
+ import { TYPES } from "../../../../infrastructure/ioc/types";
7
+ import { connectedProperty } from "../../../../infrastructure/state/connected-property";
8
+ import styles from "./styles.css?inline";
9
+ import { template } from "./template";
10
+ import { activityHistoryCommonFiltersSelector } from "../../selectors";
11
+ import { SetCommonFilter } from "../../set-common-filter/request";
12
+
13
+ //@ts-ignore
14
+ @customElement("activity-history-filters")
15
+ export class ActivityHistoryFilters extends LitElement {
16
+ render() {
17
+ return html`${template(this)}`;
18
+ }
19
+
20
+ static styles = css`
21
+ ${unsafeCSS(styles)}
22
+ `;
23
+
24
+ @connectedProperty(activityHistoryCommonFiltersSelector)
25
+ filters: IActivityHistoryFilter[];
26
+
27
+ @lazyInject(TYPES.primaryApi)
28
+ api: PrimariaApi;
29
+
30
+ @state()
31
+ filtersExpanded = false;
32
+
33
+ _toggleFilters() {
34
+ this.filtersExpanded = !this.filtersExpanded;
35
+ }
36
+
37
+ _onChangeCommonFilterValue(filterId: string, value: boolean) {
38
+ this.api.broker.send(new SetCommonFilter({ id: filterId, enabled: value }));
39
+ }
40
+ }
@@ -0,0 +1,39 @@
1
+ .filters-sidebar {
2
+ padding: 8px 4px;
3
+ border-right: 1px solid rgb(189, 189, 189);
4
+ width: 56px;
5
+ height: 100%;
6
+ box-sizing: border-box;
7
+ display: flex;
8
+ flex-direction: column;
9
+ dss-icon-button{
10
+ align-self: center;
11
+ }
12
+ &[expanded] {
13
+ width: 296px;
14
+ .filters-sidebar-opened {
15
+ display: flex;
16
+ align-items: center;
17
+ justify-content: space-between;
18
+ padding-inline: 8px;
19
+ color: var(--color-neutral-900);
20
+ font-weight: 700;
21
+ font-size: 16px;
22
+ line-height: 24px;
23
+ }
24
+ }
25
+ }
26
+
27
+
28
+ .filter-container{
29
+ display: flex;
30
+ flex-direction: column;
31
+ padding: 16px 8px 8px 8px;
32
+
33
+
34
+ }
35
+
36
+ .filter-container .filter{
37
+ padding: 8px 0;
38
+ border-bottom: 1px solid var(--color-neutral-200);
39
+ }
@@ -0,0 +1,30 @@
1
+ import { html } from "lit";
2
+ import { ActivityHistoryFilters } from "./activity-history-filters";
3
+ import { repeat } from "lit/directives/repeat.js";
4
+ import { IActivityHistoryFilter } from "../../model";
5
+ import { ActivityHistoryFilterType } from "../../constants";
6
+ import { translate } from "../../../../localization";
7
+
8
+ const getFilterTemplate = (props: ActivityHistoryFilters, filter: IActivityHistoryFilter) => {
9
+ switch (filter.type) {
10
+ case ActivityHistoryFilterType.Switch:
11
+ return html`
12
+ <dss-input-switch size="sm" @onChangeValue=${(e) => props._onChangeCommonFilterValue(filter.id, e.detail)}>
13
+ <input slot="input" id="switch-${filter.id}" aria-label=${filter.title} type="checkbox">
14
+ <label slot="label" for="switch-${filter.id}">${filter.title}</label>
15
+ </dss-input-switch>`;
16
+ }
17
+ };
18
+
19
+ export const template = (props: ActivityHistoryFilters) =>
20
+ html`
21
+ <div class="filters-sidebar" ?expanded=${props.filtersExpanded} >
22
+ ${
23
+ props.filtersExpanded
24
+ ? html`<div class="filters-sidebar-opened">${translate("filters.filters")}<dss-icon-button @click=${() => props._toggleFilters()} size="md" variant="primary" icon="keyboard_double_arrow_left"></dss-icon-button></div><div class="filter-container">
25
+ ${repeat(props.filters, (filter: IActivityHistoryFilter) => html`<div class="filter">${getFilterTemplate(props, filter)}</div> `)}
26
+ </div> `
27
+ : html`<dss-icon-button @click=${() => props._toggleFilters()} size="md" variant="primary" icon="keyboard_double_arrow_right"></dss-icon-button>`
28
+ }
29
+ </div>
30
+ `;
@@ -0,0 +1,3 @@
1
+ import { activityHistoryFiltersSlice } from "./slice";
2
+
3
+ export const { setCommonFilterValue } = activityHistoryFiltersSlice.actions;
@@ -0,0 +1,14 @@
1
+ import { BrokerExtensions } from "@primaria/plugins-core";
2
+ import "../../activity-history-item/filter/UI/activity-history-filters/activity-history-filters";
3
+ import {
4
+ bootstrapSetCommonFilter,
5
+ teardownSetCommonFilter,
6
+ } from "./set-common-filter/bootstrapper";
7
+
8
+ export const bootstrapFilters = (broker: BrokerExtensions) => {
9
+ bootstrapSetCommonFilter(broker);
10
+ };
11
+
12
+ export const teardownFilters = () => {
13
+ teardownSetCommonFilter();
14
+ };
@@ -0,0 +1,29 @@
1
+ import { OwnSpec } from "../domain/specs/own-spec";
2
+ import { RelevantSpec } from "../domain/specs/relevant-spec";
3
+ import { ActivityHistoryFilterOperation, ActivityHistoryFilterType } from "./constants";
4
+ import { IActivityHistoryFilterGroup } from "./model";
5
+
6
+ export const commonFilters: IActivityHistoryFilterGroup[] = [
7
+ {
8
+ id: "common",
9
+ title: "Comuns",
10
+ filters: [
11
+ {
12
+ id: "relevant",
13
+ title: "Veure rellevants",
14
+ spec: RelevantSpec,
15
+ enabled: false,
16
+ type: ActivityHistoryFilterType.Switch,
17
+ operation: ActivityHistoryFilterOperation.And,
18
+ },
19
+ {
20
+ id: "own",
21
+ title: "Veure meus",
22
+ spec: OwnSpec,
23
+ enabled: false,
24
+ type: ActivityHistoryFilterType.Switch,
25
+ operation: ActivityHistoryFilterOperation.And,
26
+ },
27
+ ],
28
+ },
29
+ ];
@@ -0,0 +1,8 @@
1
+ export enum ActivityHistoryFilterType {
2
+ Switch = "switch",
3
+ }
4
+
5
+ export enum ActivityHistoryFilterOperation {
6
+ And = "and",
7
+ Or = "or",
8
+ }
@@ -0,0 +1,20 @@
1
+ import { IActivityHistoryItem } from "../domain/model";
2
+ import { Spec } from "../domain/specs/spec";
3
+ import { ActivityHistoryFilterOperation, ActivityHistoryFilterType } from "./constants";
4
+
5
+ type Constructor<T> = new (...args: any[]) => T;
6
+
7
+ export interface IActivityHistoryFilterGroup {
8
+ id: string;
9
+ title: string;
10
+ filters: IActivityHistoryFilter[];
11
+ }
12
+
13
+ export interface IActivityHistoryFilter {
14
+ id: string;
15
+ title: string;
16
+ spec: Constructor<Spec<IActivityHistoryItem>>;
17
+ enabled: boolean;
18
+ type: ActivityHistoryFilterType;
19
+ operation: ActivityHistoryFilterOperation;
20
+ }
@@ -0,0 +1,28 @@
1
+ import { createSelector } from "@reduxjs/toolkit";
2
+ import { RootState } from "../../infrastructure/state/store";
3
+ import { TrueSpec } from "../domain/specs/true-spec";
4
+ import { IActivityHistoryFilter } from "./model";
5
+
6
+ export const activityHistoryFiltersSelector = (state: RootState) =>
7
+ state.activityHistoryFilters.filters;
8
+
9
+ export const activityHistoryCommonFiltersSelector = createSelector(
10
+ activityHistoryFiltersSelector,
11
+ (filters) => filters.find((f) => f.id === "common")?.filters,
12
+ );
13
+ export const isEnabledCommonFilterSelector = (filterId: string) =>
14
+ createSelector(
15
+ activityHistoryCommonFiltersSelector,
16
+ (filterSpecs) => filterSpecs?.find((s) => s.id === filterId)?.enabled,
17
+ );
18
+
19
+ export const commonSpecSelector = createSelector(
20
+ activityHistoryCommonFiltersSelector,
21
+ (commonFilters: IActivityHistoryFilter[]) => {
22
+ const enabledCommonFilters = commonFilters.filter((f) => f.enabled);
23
+ const finalCommonSpec = enabledCommonFilters.reduce((acc, filter) => {
24
+ return acc.and(new filter.spec());
25
+ }, new TrueSpec());
26
+ return finalCommonSpec;
27
+ },
28
+ );
@@ -0,0 +1,14 @@
1
+ import { BrokerExtensions } from "@primaria/plugins-core";
2
+ import { BrokerDisposableHandler } from "../../../../../api/broker/primaria-broker";
3
+ import { SetCommonFilter } from "./request";
4
+ import { SetCommonFilterHandler } from "./handler";
5
+
6
+ let request: BrokerDisposableHandler;
7
+
8
+ export const bootstrapSetCommonFilter = (broker: BrokerExtensions) => {
9
+ request = broker.registerRequest(SetCommonFilter, SetCommonFilterHandler);
10
+ };
11
+
12
+ export const teardownSetCommonFilter = () => {
13
+ request?.dispose();
14
+ };
@@ -0,0 +1,13 @@
1
+ import { StoreBaseHandler } from "../../../infrastructure/base-handlers";
2
+ import { setCommonFilterValue } from "../actions";
3
+ import { SetCommonFilter } from "./request";
4
+
5
+ export class SetCommonFilterHandler extends StoreBaseHandler {
6
+ async handle(request: SetCommonFilter) {
7
+ try {
8
+ this.store.dispatch(setCommonFilterValue(request.payload));
9
+ } catch (e) {
10
+ console.log(e.message);
11
+ }
12
+ }
13
+ }
@@ -0,0 +1,3 @@
1
+ export class SetCommonFilter {
2
+ constructor(public payload: { id: string; enabled: boolean }) {}
3
+ }
@@ -0,0 +1,27 @@
1
+ import { createSlice } from "@reduxjs/toolkit";
2
+ import { commonFilters } from "./common-filters";
3
+ import { setSearchStringReducer } from "../search/reducer";
4
+
5
+ export const activityHistoryFiltersSlice = createSlice({
6
+ name: "activity-history-filters",
7
+ initialState: {
8
+ searchString: "",
9
+ filters: [...commonFilters],
10
+ },
11
+ reducers: {
12
+ setSearchString: setSearchStringReducer,
13
+ setCommonFilterValue(state, action) {
14
+ state.filters = state.filters.map((f) => {
15
+ if (f.id === "common") {
16
+ return {
17
+ ...f,
18
+ filters: f.filters.map((ff) =>
19
+ ff.id === action.payload.id ? { ...ff, enabled: action.payload.enabled } : ff,
20
+ ),
21
+ };
22
+ }
23
+ return f;
24
+ });
25
+ },
26
+ },
27
+ });
@@ -0,0 +1,91 @@
1
+ import { parse } from "date-fns";
2
+ import { LitElement, css, html, unsafeCSS } from "lit";
3
+ import { customElement, property } from "lit/decorators.js";
4
+ import { PrimariaApi, PrimariaRegionHost } from "../../../../../../api/api";
5
+ import { BrokerDisposableHandler } from "../../../../../../api/broker/primaria-broker";
6
+ import { shellEvents } from "../../../../../../events";
7
+ import { lazyInject } from "../../../../infrastructure/ioc/container";
8
+ import { TYPES } from "../../../../infrastructure/ioc/types";
9
+ import { connectedProperty } from "../../../../infrastructure/state/connected-property";
10
+ import { SearchActivityHistoryItems } from "../../../search/request";
11
+ import { activityHistoryCollectionsSelector } from "../../selectors";
12
+ import { ActivityHistoryTimeline } from "../timeline/activity-history-timeline";
13
+ import styles from "./styles.css?inline";
14
+ import { template } from "./template";
15
+
16
+ //@ts-ignore
17
+ @customElement("activity-history-main")
18
+ export class ActivityHistoryMain extends PrimariaRegionHost(LitElement) {
19
+ render() {
20
+ return html`${template(this)}`;
21
+ }
22
+
23
+ static styles = css`
24
+ ${unsafeCSS(styles)}
25
+ `;
26
+
27
+ subscriptions: BrokerDisposableHandler[] = [];
28
+
29
+ connectedCallback() {
30
+ super.connectedCallback();
31
+ this._subscribeEvents();
32
+ }
33
+
34
+ disconnectedCallback() {
35
+ super.disconnectedCallback();
36
+ this._unsubscribeEvents();
37
+ }
38
+
39
+ @property({ type: Boolean })
40
+ maximized = false;
41
+
42
+ @lazyInject(TYPES.primaryApi)
43
+ api: PrimariaApi;
44
+
45
+ @connectedProperty(activityHistoryCollectionsSelector)
46
+ historyItems: any[];
47
+
48
+ _maximize() {
49
+ this.maximized = true;
50
+ }
51
+
52
+ _minimize() {
53
+ this.maximized = false;
54
+ }
55
+
56
+ _subscribeEvents() {
57
+ const subscription = this.api.broker.subscribe(
58
+ shellEvents.openClinicalMonitoringRequested,
59
+ () => {
60
+ this.maximized = false;
61
+ },
62
+ );
63
+ this.subscriptions.push(subscription);
64
+ }
65
+
66
+ _unsubscribeEvents() {
67
+ this.subscriptions.forEach((s) => s.dispose());
68
+ }
69
+
70
+ @property()
71
+ searchQuery = "";
72
+
73
+ _handleSelectDate(date: string) {
74
+ const selectedDate = parse(date, "dd/MM/yyyy", new Date());
75
+ this.scrollToClosestDate(selectedDate);
76
+ }
77
+
78
+ _handleSearchChange(event: CustomEvent) {
79
+ if (typeof event.detail !== "string") return;
80
+ this.searchQuery = event.detail;
81
+ this.api.broker.send(new SearchActivityHistoryItems(this.searchQuery));
82
+ }
83
+
84
+ scrollToClosestDate(date: Date) {
85
+ const selectedDate = date.getTime();
86
+ const timeline = this.shadowRoot.querySelector(
87
+ "activity-history-timeline",
88
+ ) as ActivityHistoryTimeline;
89
+ timeline._scrollIntoDate(selectedDate);
90
+ }
91
+ }
@@ -100,13 +100,6 @@
100
100
  white-space: nowrap;
101
101
  }
102
102
  }
103
- .header__search {
104
- flex: 1;
105
- border-radius: 8px;
106
- border: 1px solid rgb(189, 189, 189);
107
- padding: 8px;
108
- width: 300px;
109
- }
110
103
  .header__right {
111
104
  display: flex;
112
105
  flex-direction: row;
@@ -131,43 +124,13 @@
131
124
  border-top-right-radius: var(--dss-radius-sm);
132
125
  }
133
126
  }
134
- .filters-sidebar {
135
- padding: 8px 4px;
136
- border-right: 1px solid rgb(189, 189, 189);
137
- width: 30px;
138
- &[expanded] {
139
- width: 296px;
140
- .filters-sidebar-opened {
141
- display: flex;
142
- align-items: center;
143
- justify-content: space-between;
144
- padding-inline: 8px;
145
- color: var(--color-neutral-900);
146
- font-weight: 700;
147
- font-size: 16px;
148
- line-height: 24px;
149
- }
150
- }
151
- }
127
+
152
128
  .content {
153
129
  width: 100%;
154
130
  background: var(--color-neutral-50);
155
131
  border-bottom-right-radius: var(--dss-radius-sm);
156
132
  overflow: hidden;
157
- .spinner-container {
158
- display: flex;
159
- flex-direction: row;
160
- align-items: center;
161
- gap: 24px;
162
- justify-content: center;
163
- }
164
- .spinner-full-container {
165
- width: 100%;
166
- height: 100%;
167
- display: flex;
168
- align-items: center;
169
- justify-content: center;
170
- }
133
+
171
134
  }
172
135
  }
173
136
  }
@@ -1,12 +1,9 @@
1
- import { html, nothing } from "lit";
2
- import { ActivityHistory } from "./activity-history";
3
- import "./activity-history-search-header/activity-history-search-header"
4
- import "./activity-history-timeline/activity-history-timeline";
5
- import "../export-pdf-modal/export-pdf-modal";
6
- import { ExportPdf } from "../../features/export-to-pdf/request";
7
- import { translate } from "../../localization";
1
+ import { html } from "lit";
2
+ import { ActivityHistoryMain } from "./activity-history-main";
3
+ import { ExportPdf } from "../../../export-to-pdf/request";
4
+ import { translate } from "../../../../localization";
8
5
  import { when } from "lit/directives/when.js";
9
- export const template = (props: ActivityHistory) =>
6
+ export const template = (props: ActivityHistoryMain) =>
10
7
  html`<div class="container" ?maximized=${props.maximized}>
11
8
  ${
12
9
  props.maximized
@@ -14,10 +11,7 @@ export const template = (props: ActivityHistory) =>
14
11
  : html`<div class="header">
15
12
  <div class="header__left">
16
13
  <div class="title">${translate("activityHistory")}</div>
17
- <dss-search-bar dropdownStyle=${"display: none"} @onSearchChange=${props._handleSearchChange} icon="search" inputsize="md" threshold="2" recentsearchestext="" emptydropdowntext="">
18
- <label slot="label" for="searchbar1" aria-hidden="false"></label>
19
- <input slot="input" id="searchbar1" type="text" value=${props.searchQuery} @input=${(e) => props._handleSearchChange({ detail: [e.target.value] })}>
20
- </dss-search-bar>
14
+ <activity-history-search-bar @onSearchChange=${props._handleSearchChange} .searchQuery=${props.searchQuery}></activity-history-search-bar>
21
15
  <dss-datepicker dropdownFixed inputsize="md" class="date-picker" @onValueChange=${(event) => props._handleSelectDate(event.detail)}>
22
16
  <label slot="label" for="myDatepicker">${translate("goToDate")}</label>
23
17
  <input slot="input" id="myDatepicker" type="text" class="dss-input">
@@ -37,36 +31,21 @@ export const template = (props: ActivityHistory) =>
37
31
  </div>`
38
32
  }
39
33
  <div class="wrapper" ?maximized=${props.maximized}>
40
- <div class="filters-sidebar" ?expanded=${props.filtersExpanded} >
41
- ${
42
- props.filtersExpanded
43
- ? html`<div class="filters-sidebar-opened">${translate("filters.filters")}<dss-icon-button @click=${() => props._toggleFilters()} size="md" variant="primary" icon="keyboard_double_arrow_left"></dss-icon-button></div>`
44
- : html`<dss-icon-button @click=${() => props._toggleFilters()} size="md" variant="primary" icon="keyboard_double_arrow_right"></dss-icon-button>`
45
- }
46
- </div>
34
+ <activity-history-filters></activity-history-filters>
47
35
  <div class="content">
48
- ${when(props.searchQuery.length > 1,() => html`<activity-history-search-header searchQuery="${props.searchQuery}"></activity-history-search-header>`)}
49
- ${
50
- props.isAnyCollectionLoadingWithoutAnyLoaded
51
- ? html`<div class="spinner-full-container"><dss-spinner></dss-spinner></div>`
52
- : props.isSomeCollectionLoadedAndOtherLoading
53
- ? html`<div class="spinner-container"><dss-spinner size="sm"></dss-spinner><div class="busy-description">${translate("busyEntriesLoading")}</div></div>`
54
- : nothing
55
- }
36
+ ${when(props.searchQuery.length > 1, () => html`<activity-history-search-header searchQuery="${props.searchQuery}"></activity-history-search-header>`)}
37
+ <activity-history-busy></activity-history-busy>
56
38
  <activity-history-timeline></activity-history-timeline>
57
39
  </div>
58
40
  </div>
59
41
  </div>`;
60
42
 
61
- export const headerMaximizedTemplate = (props: ActivityHistory) => html`
43
+ export const headerMaximizedTemplate = (props: ActivityHistoryMain) => html`
62
44
  <div class="header-maximized-container">
63
45
  <div class="header__maximized">
64
46
  <div class="header__maximized__left">
65
47
  <div class="title">${translate("activityHistory")}</div>
66
- <dss-search-bar dropdownStyle=${"display: none"} @onSearchChange=${props._handleSearchChange} icon="search" inputsize="md" threshold="3" recentsearchestext="" emptydropdowntext="Sense resultats per">
67
- <label slot="label" for="searchbar1" aria-hidden="false"></label>
68
- <input slot="input" id="searchbar1" type="text" value=${props.searchQuery} @input=${(e) => props._handleSearchChange({ detail: [e.target.value] })}>
69
- </dss-search-bar>
48
+ <activity-history-search-bar @onSearchChange=${props._handleSearchChange} .searchQuery=${props.searchQuery}></activity-history-search-bar>
70
49
  <dss-datepicker dropdownFixed inputsize="md" class="date-picker" @onValueChange=${(event) => props._handleSelectDate(event.detail)}>
71
50
  <label slot="label" for="myDatepicker">${translate("goToDate")}</label>
72
51
  <input slot="input" id="myDatepicker" type="text" class="dss-input">
@@ -1,20 +1,19 @@
1
1
  import { LitElement, css, html, unsafeCSS } from "lit";
2
- import { PrimariaRegionHost } from "../../../../../api/api";
3
2
  import { customElement } from "lit/decorators.js";
3
+ import { connectedProperty } from "../../../../infrastructure/state/connected-property";
4
+ import { IActivityHistoryGroup } from "../../../domain/model";
5
+ import { activityHistorySearchStringSelector } from "../../../search/selectors";
4
6
  import {
5
- activityHistoryGroupedItems,
6
- activityHistorySearchStringSelector,
7
7
  isAnyCollectionLoadingWithoutAnyLoaded,
8
8
  isSomeCollectionLoadedAndOtherLoading,
9
- } from "../../../infrastructure/state/selectors";
10
- import { connectedProperty } from "../../../infrastructure/state/connected-property";
9
+ } from "../../handle-busy/selectors";
10
+ import { activityHistoryGroupedItems } from "../../selectors";
11
11
  import styles from "./styles.css?inline";
12
12
  import { template } from "./template";
13
- import { IActivityHistoryGroup } from "../../../domain/model";
14
13
 
15
14
  //@ts-ignore
16
15
  @customElement("activity-history-timeline")
17
- export class ActivityHistoryTimeline extends PrimariaRegionHost(LitElement) {
16
+ export class ActivityHistoryTimeline extends LitElement {
18
17
  render() {
19
18
  return html`${template(this)}`;
20
19
  }
@@ -46,4 +45,22 @@ export class ActivityHistoryTimeline extends PrimariaRegionHost(LitElement) {
46
45
  const regex = new RegExp(`(${searchString})`, "gi");
47
46
  return text.replace(regex, `<span class="highlight">$1</span>`);
48
47
  }
48
+
49
+ _scrollIntoDate(selectedDate: number) {
50
+ let closestElement = null;
51
+ let closestDifference = Number.POSITIVE_INFINITY;
52
+ this.shadowRoot.querySelectorAll(".visit").forEach((element) => {
53
+ const itemDate = new Date(element.dataset.date).getTime();
54
+ const difference = Math.abs(itemDate - selectedDate);
55
+
56
+ if (difference < closestDifference) {
57
+ closestDifference = difference;
58
+ closestElement = element;
59
+ }
60
+ });
61
+
62
+ if (closestElement) {
63
+ closestElement.scrollIntoView({ behavior: "smooth", block: "start" });
64
+ }
65
+ }
49
66
  }
@@ -8,7 +8,7 @@
8
8
  flex-direction: column;
9
9
  gap: 16px;
10
10
  padding-inline: 16px;
11
- padding-top: 17px;
11
+ padding-top: 16px;
12
12
  min-height: 1px;
13
13
  height: 100%;
14
14
  overflow-y: auto;
@@ -1,16 +1,17 @@
1
1
  import { html, nothing } from "lit";
2
2
  import { ActivityHistoryTimeline } from "./activity-history-timeline";
3
3
  import { repeat } from "lit/directives/repeat.js";
4
+ import { IEntityDescription } from "@primaria/plugins-core";
5
+ import { format } from "date-fns";
6
+ import { unsafeHTML } from "lit/directives/unsafe-html.js";
7
+ import notFound from "../../../../../../UI/images/not-found.svg";
8
+ import { ifDefined } from "lit/directives/if-defined.js";
4
9
  import {
5
10
  IActivityHistoryGroup,
6
11
  IActivityHistoryItem,
7
12
  IActivityHistorySubGroup,
8
13
  } from "../../../domain/model";
9
- import { IEntityDescription } from "@primaria/plugins-core";
10
- import { format } from "date-fns";
11
- import { translate } from "../../../localization";
12
- import { unsafeHTML } from "lit/directives/unsafe-html.js";
13
- import notFound from "../../../../../UI/images/not-found.svg";
14
+ import { translate } from "../../../../localization";
14
15
 
15
16
  export const template = (props: ActivityHistoryTimeline) => {
16
17
  if (!props._hasUpdatedOnce) {
@@ -21,7 +22,7 @@ export const template = (props: ActivityHistoryTimeline) => {
21
22
  props.historyGroups && props.historyGroups.length > 0
22
23
  ? repeat(props.historyGroups, (itemGroup: IActivityHistoryGroup) => {
23
24
  return html`
24
- <div class="visit" data-date=${itemGroup.items[0]?.date || itemGroup.subGroups[0]?.items[0]?.date}>
25
+ <div class="visit" data-date=${ifDefined(itemGroup.items[0]?.date || itemGroup.subGroups[0]?.items[0]?.date)}>
25
26
  ${visitHeaderTemplate(props, itemGroup.items[0] || itemGroup.subGroups[0]?.items[0])}
26
27
  <div class="visit__items">
27
28
  ${repeat(
@@ -38,7 +39,7 @@ export const template = (props: ActivityHistoryTimeline) => {
38
39
  <div class="diagnostics__items">${repeat(
39
40
  subGroup.items,
40
41
  (item: IActivityHistoryItem) =>
41
- html`<div class="item">${item.componentFactory(item)}</div> `,
42
+ html`<div class="item">${item?.componentFactory(item)}</div> `,
42
43
  )}</div>
43
44
  </div>
44
45
  `,
@@ -0,0 +1,5 @@
1
+ import "./UI/timeline/activity-history-timeline";
2
+
3
+ export const bootstrapListActivityHistoryItems = () => {
4
+ () => null;
5
+ };
@@ -1,6 +1,6 @@
1
1
  import { describe, it, expect } from "vitest";
2
2
  import { groupActivityHistoryItems } from "./group-history-items";
3
- import { IActivityHistoryItem } from "../model";
3
+ import { IActivityHistoryItem } from "../../domain/model";
4
4
  describe("groupActivityHistoryItems", () => {
5
5
  it("should group items by visit and then by diagnostics", () => {
6
6
  const items: IActivityHistoryItem[] = [