@trudb/tru-common-lib 0.0.726 → 0.0.730

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 (404) hide show
  1. package/{esm2020 → esm2022}/lib/assets/tru-icon-module.mjs +32 -32
  2. package/{esm2020 → esm2022}/lib/assets/tru-search-icon-module.mjs +36 -36
  3. package/{esm2020 → esm2022}/lib/base-classes/tru-component-config-base.mjs +3 -3
  4. package/{esm2020 → esm2022}/lib/base-classes/tru-control-component-config-base.mjs +3 -3
  5. package/{esm2020 → esm2022}/lib/base-classes/tru-edit-control-base.mjs +17 -17
  6. package/esm2022/lib/base-classes/tru-edit-control-config-base.mjs +6 -0
  7. package/{esm2020 → esm2022}/lib/base-classes/tru-edit-parent-control-config-base.mjs +3 -3
  8. package/{esm2020 → esm2022}/lib/base-classes/tru-edit-pkey-control-config-base.mjs +3 -3
  9. package/esm2022/lib/base-classes/tru-entity-base.mjs +14 -0
  10. package/esm2022/lib/base-classes/tru-list-control-config-base.mjs +6 -0
  11. package/{esm2020 → esm2022}/lib/base-classes/tru-property-config-base.mjs +14 -15
  12. package/{esm2020 → esm2022}/lib/base-classes/tru-search-config-base.mjs +3 -3
  13. package/esm2022/lib/base-classes/tru-search-control-base.mjs +45 -0
  14. package/esm2022/lib/base-classes/tru-search-control-config-base.mjs +5 -0
  15. package/esm2022/lib/base-classes/tru-search-control-range-base.mjs +45 -0
  16. package/esm2022/lib/base-classes/tru-table-config-base.mjs +12 -0
  17. package/{esm2020 → esm2022}/lib/base-views/detail/tru-detail-view-base-module.mjs +19 -19
  18. package/esm2022/lib/base-views/detail/tru-detail-view-base.mjs +83 -0
  19. package/esm2022/lib/base-views/search/services/tru-search-view-control-event-handler.mjs +25 -0
  20. package/esm2022/lib/base-views/search/services/tru-search-view-event-handler.mjs +25 -0
  21. package/{esm2020 → esm2022}/lib/base-views/search/tru-search-view-base-module.mjs +19 -19
  22. package/esm2022/lib/base-views/search/tru-search-view-base.mjs +68 -0
  23. package/{esm2020 → esm2022}/lib/base-views/search-result/tru-search-result-view-base-module.mjs +19 -19
  24. package/esm2022/lib/base-views/search-result/tru-search-result-view-base.mjs +54 -0
  25. package/{esm2020 → esm2022}/lib/classes/tru-choice.mjs +2 -2
  26. package/esm2022/lib/classes/tru-context-filter-choice.mjs +11 -0
  27. package/esm2022/lib/classes/tru-context-filter.mjs +16 -0
  28. package/esm2022/lib/classes/tru-data-change-parser.mjs +287 -0
  29. package/esm2022/lib/classes/tru-data-change.mjs +5 -0
  30. package/{esm2020 → esm2022}/lib/classes/tru-formula-eval.mjs +156 -156
  31. package/esm2022/lib/classes/tru-merge-data-set.mjs +11 -0
  32. package/esm2022/lib/classes/tru-merge-data.mjs +20 -0
  33. package/{esm2020 → esm2022}/lib/classes/tru-name-value.mjs +2 -2
  34. package/esm2022/lib/classes/tru-predicate.mjs +47 -0
  35. package/{esm2020 → esm2022}/lib/classes/tru-property-config-cloud-file.mjs +4 -4
  36. package/esm2022/lib/classes/tru-property-config-date.mjs +7 -0
  37. package/esm2022/lib/classes/tru-property-config-decimal.mjs +9 -0
  38. package/{esm2020 → esm2022}/lib/classes/tru-property-config-file.mjs +6 -8
  39. package/esm2022/lib/classes/tru-property-config-foreign-key.mjs +8 -0
  40. package/esm2022/lib/classes/tru-property-config-integer.mjs +7 -0
  41. package/esm2022/lib/classes/tru-property-config-password.mjs +6 -0
  42. package/esm2022/lib/classes/tru-property-config-percentage.mjs +7 -0
  43. package/esm2022/lib/classes/tru-property-config-scientific.mjs +7 -0
  44. package/{esm2020 → esm2022}/lib/classes/tru-property-config-text-choices.mjs +6 -8
  45. package/{esm2020 → esm2022}/lib/classes/tru-property-config-text.mjs +8 -10
  46. package/{esm2020 → esm2022}/lib/classes/tru-property-config-usa-address.mjs +6 -8
  47. package/{esm2020 → esm2022}/lib/classes/tru-property-config-zip-code.mjs +6 -8
  48. package/esm2022/lib/classes/tru-query-predicate-manager.mjs +49 -0
  49. package/{esm2020 → esm2022}/lib/components/confirm-dialog/tru-confirm-dialog-module.mjs +20 -20
  50. package/esm2022/lib/components/confirm-dialog/tru-confirm-dialog.mjs +59 -0
  51. package/{esm2020 → esm2022}/lib/components/data-grid/classes/tru-data-grid-config.mjs +1 -1
  52. package/{esm2020 → esm2022}/lib/components/data-grid/enums/tru-data-grid-types.mjs +6 -6
  53. package/esm2022/lib/components/data-grid/overlays/tru-data-grid-loading-overlay/tru-data-grid-loading-overlay.mjs +40 -0
  54. package/esm2022/lib/components/data-grid/overlays/tru-data-grid-no-rows-overlay/tru-data-grid-no-rows-overlay.mjs +27 -0
  55. package/esm2022/lib/components/data-grid/tru-data-grid-module.mjs +67 -0
  56. package/esm2022/lib/components/data-grid/tru-data-grid.mjs +382 -0
  57. package/{esm2020 → esm2022}/lib/components/desktop/classes/tru-desktop-title.mjs +2 -2
  58. package/esm2022/lib/components/desktop/classes/tru-desktop-view-config.mjs +21 -0
  59. package/{esm2020 → esm2022}/lib/components/desktop/directives/resizable/tru-desktop-resizable-module.mjs +19 -19
  60. package/esm2022/lib/components/desktop/directives/resizable/tru-desktop-resizable.mjs +122 -0
  61. package/{esm2020 → esm2022}/lib/components/desktop/menubar/tru-desktop-menubar-module.mjs +56 -56
  62. package/esm2022/lib/components/desktop/menubar/tru-desktop-menubar.mjs +36 -0
  63. package/esm2022/lib/components/desktop/services/tru-desktop-manager.mjs +86 -0
  64. package/esm2022/lib/components/desktop/services/tru-desktop-service.mjs +108 -0
  65. package/esm2022/lib/components/desktop/services/tru-window-action-event-handler.mjs +25 -0
  66. package/esm2022/lib/components/desktop/services/tru-window-event-args.mjs +24 -0
  67. package/esm2022/lib/components/desktop/services/tru-window-event-handler.mjs +42 -0
  68. package/{esm2020 → esm2022}/lib/components/desktop/statusbar/tru-desktop-statusbar-module.mjs +19 -19
  69. package/esm2022/lib/components/desktop/statusbar/tru-desktop-statusbar.mjs +20 -0
  70. package/{esm2020 → esm2022}/lib/components/desktop/taskbar/tru-desktop-taskbar-module.mjs +21 -21
  71. package/esm2022/lib/components/desktop/taskbar/tru-desktop-taskbar.mjs +41 -0
  72. package/{esm2020 → esm2022}/lib/components/desktop/tru-desktop-module.mjs +72 -72
  73. package/esm2022/lib/components/desktop/tru-desktop.mjs +737 -0
  74. package/{esm2020 → esm2022}/lib/components/desktop/view/tru-desktop-view-module.mjs +19 -19
  75. package/esm2022/lib/components/desktop/view/tru-desktop-view.mjs +29 -0
  76. package/{esm2020 → esm2022}/lib/components/desktop/viewport/tru-desktop-viewport-module.mjs +20 -20
  77. package/esm2022/lib/components/desktop/viewport/tru-desktop-viewport.mjs +117 -0
  78. package/{esm2020 → esm2022}/lib/components/desktop/window/tru-desktop-window-module.mjs +58 -58
  79. package/esm2022/lib/components/desktop/window/tru-desktop-window.mjs +467 -0
  80. package/{esm2020 → esm2022}/lib/components/export-dialog/tru-export-dialog-module.mjs +20 -20
  81. package/esm2022/lib/components/export-dialog/tru-export-dialog.mjs +61 -0
  82. package/{esm2020 → esm2022}/lib/components/layout/column/tru-column-module.mjs +19 -19
  83. package/{esm2020 → esm2022}/lib/components/layout/column/tru-column.mjs +12 -12
  84. package/{esm2020 → esm2022}/lib/components/layout/form/tru-form-module.mjs +19 -19
  85. package/esm2022/lib/components/layout/form/tru-form.mjs +35 -0
  86. package/{esm2020 → esm2022}/lib/components/layout/group-box/tru-group-box-module.mjs +19 -19
  87. package/{esm2020 → esm2022}/lib/components/layout/group-box/tru-group-box.mjs +12 -12
  88. package/{esm2020 → esm2022}/lib/components/layout/row/tru-row-module.mjs +19 -19
  89. package/{esm2020 → esm2022}/lib/components/layout/row/tru-row.mjs +12 -12
  90. package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-config.mjs +7 -7
  91. package/esm2022/lib/components/login/classes/tru-auth-jwt-strategy.mjs +63 -0
  92. package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-login-request.mjs +5 -3
  93. package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-logout-request.mjs +4 -3
  94. package/esm2022/lib/components/login/classes/tru-auth-session-strategy.mjs +21 -0
  95. package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-strategy-provider.mjs +19 -19
  96. package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-token.mjs +11 -8
  97. package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-user-request.mjs +4 -3
  98. package/esm2022/lib/components/login/services/tru-auth-cache.mjs +20 -0
  99. package/esm2022/lib/components/login/services/tru-auth-interceptor.mjs +46 -0
  100. package/esm2022/lib/components/login/services/tru-auth.mjs +87 -0
  101. package/esm2022/lib/components/login/tru-login-module.mjs +46 -0
  102. package/esm2022/lib/components/login/tru-login.mjs +59 -0
  103. package/{esm2020 → esm2022}/lib/components/password-dialog/tru-password-dialog-module.mjs +20 -20
  104. package/esm2022/lib/components/password-dialog/tru-password-dialog.mjs +59 -0
  105. package/{esm2020 → esm2022}/lib/components/toolbar/button/tru-toolbar-button-module.mjs +32 -32
  106. package/esm2022/lib/components/toolbar/button/tru-toolbar-button.mjs +40 -0
  107. package/{esm2020 → esm2022}/lib/components/toolbar/classes/tru-toolbar-dropdown-option.mjs +1 -1
  108. package/{esm2020 → esm2022}/lib/components/toolbar/context-filter/tru-toolbar-context-filter-module.mjs +44 -44
  109. package/esm2022/lib/components/toolbar/context-filter/tru-toolbar-context-filter.mjs +26 -0
  110. package/{esm2020 → esm2022}/lib/components/toolbar/dropdown/tru-toolbar-dropdown-module.mjs +36 -36
  111. package/esm2022/lib/components/toolbar/dropdown/tru-toolbar-dropdown.mjs +45 -0
  112. package/{esm2020 → esm2022}/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button-module.mjs +19 -19
  113. package/esm2022/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.mjs +17 -0
  114. package/{esm2020 → esm2022}/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item-module.mjs +19 -19
  115. package/esm2022/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.mjs +26 -0
  116. package/{esm2020 → esm2022}/lib/components/toolbar/menu/tru-toolbar-menu-module.mjs +32 -32
  117. package/esm2022/lib/components/toolbar/menu/tru-toolbar-menu.mjs +33 -0
  118. package/{esm2020 → esm2022}/lib/components/toolbar/separator/tru-toolbar-separator-module.mjs +19 -19
  119. package/{esm2020 → esm2022}/lib/components/toolbar/separator/tru-toolbar-separator.mjs +12 -12
  120. package/{esm2020 → esm2022}/lib/components/toolbar/text/tru-toolbar-text-module.mjs +32 -32
  121. package/esm2022/lib/components/toolbar/text/tru-toolbar-text.mjs +27 -0
  122. package/{esm2020 → esm2022}/lib/components/toolbar/tru-toolbar-module.mjs +73 -73
  123. package/{esm2020 → esm2022}/lib/components/toolbar/tru-toolbar.mjs +20 -21
  124. package/{esm2020 → esm2022}/lib/components/toolbar/user-profile/tru-toolbar-user-profile-module.mjs +36 -36
  125. package/esm2022/lib/components/toolbar/user-profile/tru-toolbar-user-profile.mjs +38 -0
  126. package/esm2022/lib/components/validation-dialog/tru-validation-dialog-config.mjs +25 -0
  127. package/{esm2020 → esm2022}/lib/components/validation-dialog/tru-validation-dialog-module.mjs +19 -19
  128. package/esm2022/lib/components/validation-dialog/tru-validation-dialog.mjs +83 -0
  129. package/{esm2020 → esm2022}/lib/directives/breeze-validator/tru-breeze-validator-module.mjs +19 -19
  130. package/esm2022/lib/directives/breeze-validator/tru-breeze-validator.mjs +107 -0
  131. package/{esm2020 → esm2022}/lib/directives/search-panel-position-manager/tru-search-panel-position-manager-module.mjs +19 -19
  132. package/esm2022/lib/directives/search-panel-position-manager/tru-search-panel-position-manager.mjs +155 -0
  133. package/{esm2020 → esm2022}/lib/directives/select-panel/tru-mat-select-panel-module.mjs +19 -19
  134. package/esm2022/lib/directives/select-panel/tru-mat-select-panel.mjs +69 -0
  135. package/{esm2020 → esm2022}/lib/interfaces/tru-value.mjs +1 -1
  136. package/{esm2020 → esm2022}/lib/material.module.mjs +192 -192
  137. package/esm2022/lib/services/tru-app-environment.mjs +113 -0
  138. package/esm2022/lib/services/tru-breeze-context-factory.mjs +84 -0
  139. package/esm2022/lib/services/tru-breeze-metadata-provider.mjs +21 -0
  140. package/esm2022/lib/services/tru-component-lookup.mjs +23 -0
  141. package/esm2022/lib/services/tru-connection-hub.mjs +52 -0
  142. package/esm2022/lib/services/tru-context-filters.mjs +28 -0
  143. package/esm2022/lib/services/tru-data-context.mjs +263 -0
  144. package/esm2022/lib/services/tru-entity-accessor.mjs +292 -0
  145. package/esm2022/lib/services/tru-model-property-lookup.mjs +21 -0
  146. package/{esm2020 → esm2022}/lib/services/tru-predicate-map.mjs +11 -11
  147. package/esm2022/lib/services/tru-search-result-view-manager.mjs +18 -0
  148. package/esm2022/lib/services/tru-sort.mjs +113 -0
  149. package/esm2022/lib/services/tru-table-registry.mjs +15 -0
  150. package/esm2022/lib/services/tru-text-manager.mjs +148 -0
  151. package/esm2022/lib/services/tru-ui-notification.mjs +107 -0
  152. package/esm2022/lib/services/tru-user.mjs +62 -0
  153. package/esm2022/lib/services/tru-util.mjs +76 -0
  154. package/{esm2020 → esm2022}/lib/tru-common-module.mjs +16 -16
  155. package/{esm2020 → esm2022}/public-api.mjs +144 -144
  156. package/{esm2020 → esm2022}/trudb-tru-common-lib.mjs +4 -4
  157. package/fesm2022/trudb-tru-common-lib.mjs +6937 -0
  158. package/fesm2022/trudb-tru-common-lib.mjs.map +1 -0
  159. package/index.d.ts +5 -5
  160. package/lib/assets/tru-icon-module.d.ts +11 -11
  161. package/lib/assets/tru-search-icon-module.d.ts +11 -11
  162. package/lib/base-classes/tru-component-config-base.d.ts +3 -3
  163. package/lib/base-classes/tru-control-component-config-base.d.ts +20 -20
  164. package/lib/base-classes/tru-edit-control-base.d.ts +10 -10
  165. package/lib/base-classes/tru-edit-control-config-base.d.ts +21 -21
  166. package/lib/base-classes/tru-edit-parent-control-config-base.d.ts +9 -9
  167. package/lib/base-classes/tru-edit-pkey-control-config-base.d.ts +11 -11
  168. package/lib/base-classes/tru-entity-base.d.ts +14 -14
  169. package/lib/base-classes/tru-list-control-config-base.d.ts +21 -21
  170. package/lib/base-classes/tru-property-config-base.d.ts +13 -13
  171. package/lib/base-classes/tru-search-config-base.d.ts +9 -9
  172. package/lib/base-classes/tru-search-control-base.d.ts +21 -21
  173. package/lib/base-classes/tru-search-control-config-base.d.ts +13 -13
  174. package/lib/base-classes/tru-search-control-range-base.d.ts +25 -25
  175. package/lib/base-classes/tru-table-config-base.d.ts +11 -11
  176. package/lib/base-views/detail/tru-detail-view-base-module.d.ts +9 -9
  177. package/lib/base-views/detail/tru-detail-view-base.d.ts +32 -32
  178. package/lib/base-views/search/services/tru-search-view-control-event-handler.d.ts +12 -12
  179. package/lib/base-views/search/services/tru-search-view-event-handler.d.ts +11 -11
  180. package/lib/base-views/search/tru-search-view-base-module.d.ts +9 -9
  181. package/lib/base-views/search/tru-search-view-base.d.ts +36 -36
  182. package/lib/base-views/search-result/tru-search-result-view-base-module.d.ts +9 -9
  183. package/lib/base-views/search-result/tru-search-result-view-base.d.ts +25 -25
  184. package/lib/classes/tru-choice.d.ts +8 -8
  185. package/lib/classes/tru-context-filter-choice.d.ts +6 -6
  186. package/lib/classes/tru-context-filter.d.ts +10 -10
  187. package/lib/classes/tru-data-change-parser.d.ts +33 -33
  188. package/lib/classes/tru-data-change.d.ts +4 -4
  189. package/lib/classes/tru-formula-eval.d.ts +31 -31
  190. package/lib/classes/tru-merge-data-set.d.ts +7 -7
  191. package/lib/classes/tru-merge-data.d.ts +9 -9
  192. package/lib/classes/tru-name-value.d.ts +9 -9
  193. package/lib/classes/tru-predicate.d.ts +8 -8
  194. package/lib/classes/tru-property-config-cloud-file.d.ts +4 -4
  195. package/lib/classes/tru-property-config-date.d.ts +6 -6
  196. package/lib/classes/tru-property-config-decimal.d.ts +8 -8
  197. package/lib/classes/tru-property-config-file.d.ts +5 -5
  198. package/lib/classes/tru-property-config-foreign-key.d.ts +7 -7
  199. package/lib/classes/tru-property-config-integer.d.ts +6 -6
  200. package/lib/classes/tru-property-config-password.d.ts +5 -5
  201. package/lib/classes/tru-property-config-percentage.d.ts +6 -6
  202. package/lib/classes/tru-property-config-scientific.d.ts +6 -6
  203. package/lib/classes/tru-property-config-text-choices.d.ts +5 -5
  204. package/lib/classes/tru-property-config-text.d.ts +7 -7
  205. package/lib/classes/tru-property-config-usa-address.d.ts +5 -5
  206. package/lib/classes/tru-property-config-zip-code.d.ts +5 -5
  207. package/lib/classes/tru-query-predicate-manager.d.ts +26 -26
  208. package/lib/components/confirm-dialog/tru-confirm-dialog-module.d.ts +10 -10
  209. package/lib/components/confirm-dialog/tru-confirm-dialog.d.ts +28 -28
  210. package/lib/components/data-grid/classes/tru-data-grid-config.d.ts +7 -7
  211. package/lib/components/data-grid/enums/tru-data-grid-types.d.ts +5 -5
  212. package/lib/components/data-grid/overlays/tru-data-grid-loading-overlay/tru-data-grid-loading-overlay.d.ts +13 -13
  213. package/lib/components/data-grid/overlays/tru-data-grid-no-rows-overlay/tru-data-grid-no-rows-overlay.d.ts +13 -13
  214. package/lib/components/data-grid/tru-data-grid-module.d.ts +15 -15
  215. package/lib/components/data-grid/tru-data-grid.d.ts +67 -67
  216. package/lib/components/desktop/classes/tru-desktop-title.d.ts +4 -4
  217. package/lib/components/desktop/classes/tru-desktop-view-config.d.ts +16 -16
  218. package/lib/components/desktop/directives/resizable/tru-desktop-resizable-module.d.ts +9 -9
  219. package/lib/components/desktop/directives/resizable/tru-desktop-resizable.d.ts +32 -32
  220. package/lib/components/desktop/menubar/tru-desktop-menubar-module.d.ts +17 -17
  221. package/lib/components/desktop/menubar/tru-desktop-menubar.d.ts +15 -15
  222. package/lib/components/desktop/services/tru-desktop-manager.d.ts +33 -33
  223. package/lib/components/desktop/services/tru-desktop-service.d.ts +95 -95
  224. package/lib/components/desktop/services/tru-window-action-event-handler.d.ts +12 -12
  225. package/lib/components/desktop/services/tru-window-event-args.d.ts +17 -17
  226. package/lib/components/desktop/services/tru-window-event-handler.d.ts +20 -20
  227. package/lib/components/desktop/statusbar/tru-desktop-statusbar-module.d.ts +9 -9
  228. package/lib/components/desktop/statusbar/tru-desktop-statusbar.d.ts +10 -10
  229. package/lib/components/desktop/taskbar/tru-desktop-taskbar-module.d.ts +11 -11
  230. package/lib/components/desktop/taskbar/tru-desktop-taskbar.d.ts +15 -15
  231. package/lib/components/desktop/tru-desktop-module.d.ts +20 -20
  232. package/lib/components/desktop/tru-desktop.d.ts +337 -337
  233. package/lib/components/desktop/view/tru-desktop-view-module.d.ts +9 -9
  234. package/lib/components/desktop/view/tru-desktop-view.d.ts +14 -14
  235. package/lib/components/desktop/viewport/tru-desktop-viewport-module.d.ts +10 -10
  236. package/lib/components/desktop/viewport/tru-desktop-viewport.d.ts +48 -48
  237. package/lib/components/desktop/window/tru-desktop-window-module.d.ts +17 -17
  238. package/lib/components/desktop/window/tru-desktop-window.d.ts +189 -189
  239. package/lib/components/export-dialog/tru-export-dialog-module.d.ts +10 -10
  240. package/lib/components/export-dialog/tru-export-dialog.d.ts +26 -26
  241. package/lib/components/layout/column/tru-column-module.d.ts +9 -9
  242. package/lib/components/layout/column/tru-column.d.ts +6 -6
  243. package/lib/components/layout/form/tru-form-module.d.ts +9 -9
  244. package/lib/components/layout/form/tru-form.d.ts +10 -10
  245. package/lib/components/layout/group-box/tru-group-box-module.d.ts +9 -9
  246. package/lib/components/layout/group-box/tru-group-box.d.ts +6 -6
  247. package/lib/components/layout/row/tru-row-module.d.ts +9 -9
  248. package/lib/components/layout/row/tru-row.d.ts +6 -6
  249. package/lib/components/login/classes/tru-auth-config.d.ts +16 -16
  250. package/lib/components/login/classes/tru-auth-jwt-strategy.d.ts +15 -15
  251. package/lib/components/login/classes/tru-auth-login-request.d.ts +4 -4
  252. package/lib/components/login/classes/tru-auth-logout-request.d.ts +3 -3
  253. package/lib/components/login/classes/tru-auth-session-strategy.d.ts +13 -13
  254. package/lib/components/login/classes/tru-auth-strategy-provider.d.ts +9 -9
  255. package/lib/components/login/classes/tru-auth-token.d.ts +6 -6
  256. package/lib/components/login/classes/tru-auth-user-request.d.ts +3 -3
  257. package/lib/components/login/services/tru-auth-cache.d.ts +11 -11
  258. package/lib/components/login/services/tru-auth-interceptor.d.ts +16 -16
  259. package/lib/components/login/services/tru-auth.d.ts +29 -29
  260. package/lib/components/login/tru-login-module.d.ts +11 -11
  261. package/lib/components/login/tru-login.d.ts +21 -21
  262. package/lib/components/password-dialog/tru-password-dialog-module.d.ts +10 -10
  263. package/lib/components/password-dialog/tru-password-dialog.d.ts +27 -24
  264. package/lib/components/toolbar/button/tru-toolbar-button-module.d.ts +11 -11
  265. package/lib/components/toolbar/button/tru-toolbar-button.d.ts +16 -16
  266. package/lib/components/toolbar/classes/tru-toolbar-dropdown-option.d.ts +4 -4
  267. package/lib/components/toolbar/context-filter/tru-toolbar-context-filter-module.d.ts +14 -14
  268. package/lib/components/toolbar/context-filter/tru-toolbar-context-filter.d.ts +13 -13
  269. package/lib/components/toolbar/dropdown/tru-toolbar-dropdown-module.d.ts +12 -12
  270. package/lib/components/toolbar/dropdown/tru-toolbar-dropdown.d.ts +18 -18
  271. package/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button-module.d.ts +9 -9
  272. package/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.d.ts +7 -7
  273. package/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item-module.d.ts +9 -9
  274. package/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.d.ts +8 -8
  275. package/lib/components/toolbar/menu/tru-toolbar-menu-module.d.ts +11 -11
  276. package/lib/components/toolbar/menu/tru-toolbar-menu.d.ts +10 -10
  277. package/lib/components/toolbar/separator/tru-toolbar-separator-module.d.ts +9 -9
  278. package/lib/components/toolbar/separator/tru-toolbar-separator.d.ts +6 -6
  279. package/lib/components/toolbar/text/tru-toolbar-text-module.d.ts +11 -11
  280. package/lib/components/toolbar/text/tru-toolbar-text.d.ts +12 -12
  281. package/lib/components/toolbar/tru-toolbar-module.d.ts +16 -16
  282. package/lib/components/toolbar/tru-toolbar.d.ts +9 -9
  283. package/lib/components/toolbar/user-profile/tru-toolbar-user-profile-module.d.ts +12 -12
  284. package/lib/components/toolbar/user-profile/tru-toolbar-user-profile.d.ts +17 -17
  285. package/lib/components/validation-dialog/tru-validation-dialog-config.d.ts +13 -13
  286. package/lib/components/validation-dialog/tru-validation-dialog-module.d.ts +9 -9
  287. package/lib/components/validation-dialog/tru-validation-dialog.d.ts +20 -20
  288. package/lib/directives/breeze-validator/tru-breeze-validator-module.d.ts +9 -9
  289. package/lib/directives/breeze-validator/tru-breeze-validator.d.ts +27 -27
  290. package/lib/directives/search-panel-position-manager/tru-search-panel-position-manager-module.d.ts +9 -9
  291. package/lib/directives/search-panel-position-manager/tru-search-panel-position-manager.d.ts +40 -40
  292. package/lib/directives/select-panel/tru-mat-select-panel-module.d.ts +9 -9
  293. package/lib/directives/select-panel/tru-mat-select-panel.d.ts +17 -17
  294. package/lib/interfaces/tru-value.d.ts +6 -6
  295. package/lib/material.module.d.ts +50 -50
  296. package/lib/services/tru-app-environment.d.ts +57 -57
  297. package/lib/services/tru-breeze-context-factory.d.ts +32 -32
  298. package/lib/services/tru-breeze-metadata-provider.d.ts +9 -9
  299. package/lib/services/tru-component-lookup.d.ts +9 -9
  300. package/lib/services/tru-connection-hub.d.ts +18 -18
  301. package/lib/services/tru-context-filters.d.ts +10 -10
  302. package/lib/services/tru-data-context.d.ts +42 -42
  303. package/lib/services/tru-entity-accessor.d.ts +46 -46
  304. package/lib/services/tru-model-property-lookup.d.ts +10 -10
  305. package/lib/services/tru-predicate-map.d.ts +6 -6
  306. package/lib/services/tru-search-result-view-manager.d.ts +10 -10
  307. package/lib/services/tru-sort.d.ts +56 -56
  308. package/lib/services/tru-table-registry.d.ts +8 -8
  309. package/lib/services/tru-text-manager.d.ts +68 -68
  310. package/lib/services/tru-ui-notification.d.ts +36 -36
  311. package/lib/services/tru-user.d.ts +29 -29
  312. package/lib/services/tru-util.d.ts +14 -14
  313. package/lib/tru-common-module.d.ts +6 -6
  314. package/package.json +5 -11
  315. package/public-api.d.ts +117 -117
  316. package/esm2020/lib/base-classes/tru-edit-control-config-base.mjs +0 -4
  317. package/esm2020/lib/base-classes/tru-entity-base.mjs +0 -13
  318. package/esm2020/lib/base-classes/tru-list-control-config-base.mjs +0 -4
  319. package/esm2020/lib/base-classes/tru-search-control-base.mjs +0 -47
  320. package/esm2020/lib/base-classes/tru-search-control-config-base.mjs +0 -4
  321. package/esm2020/lib/base-classes/tru-search-control-range-base.mjs +0 -47
  322. package/esm2020/lib/base-classes/tru-table-config-base.mjs +0 -13
  323. package/esm2020/lib/base-views/detail/tru-detail-view-base.mjs +0 -76
  324. package/esm2020/lib/base-views/search/services/tru-search-view-control-event-handler.mjs +0 -27
  325. package/esm2020/lib/base-views/search/services/tru-search-view-event-handler.mjs +0 -27
  326. package/esm2020/lib/base-views/search/tru-search-view-base.mjs +0 -63
  327. package/esm2020/lib/base-views/search-result/tru-search-result-view-base.mjs +0 -51
  328. package/esm2020/lib/classes/tru-context-filter-choice.mjs +0 -8
  329. package/esm2020/lib/classes/tru-context-filter.mjs +0 -16
  330. package/esm2020/lib/classes/tru-data-change-parser.mjs +0 -277
  331. package/esm2020/lib/classes/tru-data-change.mjs +0 -7
  332. package/esm2020/lib/classes/tru-merge-data-set.mjs +0 -12
  333. package/esm2020/lib/classes/tru-merge-data.mjs +0 -17
  334. package/esm2020/lib/classes/tru-predicate.mjs +0 -47
  335. package/esm2020/lib/classes/tru-property-config-date.mjs +0 -9
  336. package/esm2020/lib/classes/tru-property-config-decimal.mjs +0 -11
  337. package/esm2020/lib/classes/tru-property-config-foreign-key.mjs +0 -10
  338. package/esm2020/lib/classes/tru-property-config-integer.mjs +0 -9
  339. package/esm2020/lib/classes/tru-property-config-password.mjs +0 -8
  340. package/esm2020/lib/classes/tru-property-config-percentage.mjs +0 -9
  341. package/esm2020/lib/classes/tru-property-config-scientific.mjs +0 -9
  342. package/esm2020/lib/classes/tru-query-predicate-manager.mjs +0 -49
  343. package/esm2020/lib/components/confirm-dialog/tru-confirm-dialog.mjs +0 -45
  344. package/esm2020/lib/components/data-grid/overlays/tru-data-grid-loading-overlay/tru-data-grid-loading-overlay.mjs +0 -39
  345. package/esm2020/lib/components/data-grid/overlays/tru-data-grid-no-rows-overlay/tru-data-grid-no-rows-overlay.mjs +0 -26
  346. package/esm2020/lib/components/data-grid/tru-data-grid-module.mjs +0 -67
  347. package/esm2020/lib/components/data-grid/tru-data-grid.mjs +0 -370
  348. package/esm2020/lib/components/desktop/classes/tru-desktop-view-config.mjs +0 -21
  349. package/esm2020/lib/components/desktop/directives/resizable/tru-desktop-resizable.mjs +0 -109
  350. package/esm2020/lib/components/desktop/menubar/tru-desktop-menubar.mjs +0 -34
  351. package/esm2020/lib/components/desktop/services/tru-desktop-manager.mjs +0 -84
  352. package/esm2020/lib/components/desktop/services/tru-desktop-service.mjs +0 -116
  353. package/esm2020/lib/components/desktop/services/tru-window-action-event-handler.mjs +0 -27
  354. package/esm2020/lib/components/desktop/services/tru-window-event-args.mjs +0 -26
  355. package/esm2020/lib/components/desktop/services/tru-window-event-handler.mjs +0 -44
  356. package/esm2020/lib/components/desktop/statusbar/tru-desktop-statusbar.mjs +0 -18
  357. package/esm2020/lib/components/desktop/taskbar/tru-desktop-taskbar.mjs +0 -40
  358. package/esm2020/lib/components/desktop/tru-desktop.mjs +0 -731
  359. package/esm2020/lib/components/desktop/view/tru-desktop-view.mjs +0 -25
  360. package/esm2020/lib/components/desktop/viewport/tru-desktop-viewport.mjs +0 -113
  361. package/esm2020/lib/components/desktop/window/tru-desktop-window.mjs +0 -457
  362. package/esm2020/lib/components/export-dialog/tru-export-dialog.mjs +0 -57
  363. package/esm2020/lib/components/layout/form/tru-form.mjs +0 -34
  364. package/esm2020/lib/components/login/classes/tru-auth-jwt-strategy.mjs +0 -65
  365. package/esm2020/lib/components/login/classes/tru-auth-session-strategy.mjs +0 -19
  366. package/esm2020/lib/components/login/services/tru-auth-cache.mjs +0 -22
  367. package/esm2020/lib/components/login/services/tru-auth-interceptor.mjs +0 -43
  368. package/esm2020/lib/components/login/services/tru-auth.mjs +0 -81
  369. package/esm2020/lib/components/login/tru-login-module.mjs +0 -46
  370. package/esm2020/lib/components/login/tru-login.mjs +0 -58
  371. package/esm2020/lib/components/password-dialog/tru-password-dialog.mjs +0 -48
  372. package/esm2020/lib/components/toolbar/button/tru-toolbar-button.mjs +0 -41
  373. package/esm2020/lib/components/toolbar/context-filter/tru-toolbar-context-filter.mjs +0 -24
  374. package/esm2020/lib/components/toolbar/dropdown/tru-toolbar-dropdown.mjs +0 -43
  375. package/esm2020/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.mjs +0 -16
  376. package/esm2020/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.mjs +0 -26
  377. package/esm2020/lib/components/toolbar/menu/tru-toolbar-menu.mjs +0 -33
  378. package/esm2020/lib/components/toolbar/text/tru-toolbar-text.mjs +0 -28
  379. package/esm2020/lib/components/toolbar/user-profile/tru-toolbar-user-profile.mjs +0 -35
  380. package/esm2020/lib/components/validation-dialog/tru-validation-dialog-config.mjs +0 -21
  381. package/esm2020/lib/components/validation-dialog/tru-validation-dialog.mjs +0 -79
  382. package/esm2020/lib/directives/breeze-validator/tru-breeze-validator.mjs +0 -100
  383. package/esm2020/lib/directives/search-panel-position-manager/tru-search-panel-position-manager.mjs +0 -151
  384. package/esm2020/lib/directives/select-panel/tru-mat-select-panel.mjs +0 -66
  385. package/esm2020/lib/services/tru-app-environment.mjs +0 -94
  386. package/esm2020/lib/services/tru-breeze-context-factory.mjs +0 -79
  387. package/esm2020/lib/services/tru-breeze-metadata-provider.mjs +0 -22
  388. package/esm2020/lib/services/tru-component-lookup.mjs +0 -25
  389. package/esm2020/lib/services/tru-connection-hub.mjs +0 -48
  390. package/esm2020/lib/services/tru-context-filters.mjs +0 -29
  391. package/esm2020/lib/services/tru-data-context.mjs +0 -258
  392. package/esm2020/lib/services/tru-entity-accessor.mjs +0 -287
  393. package/esm2020/lib/services/tru-model-property-lookup.mjs +0 -22
  394. package/esm2020/lib/services/tru-search-result-view-manager.mjs +0 -17
  395. package/esm2020/lib/services/tru-sort.mjs +0 -114
  396. package/esm2020/lib/services/tru-table-registry.mjs +0 -16
  397. package/esm2020/lib/services/tru-text-manager.mjs +0 -134
  398. package/esm2020/lib/services/tru-ui-notification.mjs +0 -103
  399. package/esm2020/lib/services/tru-user.mjs +0 -63
  400. package/esm2020/lib/services/tru-util.mjs +0 -77
  401. package/fesm2015/trudb-tru-common-lib.mjs +0 -6803
  402. package/fesm2015/trudb-tru-common-lib.mjs.map +0 -1
  403. package/fesm2020/trudb-tru-common-lib.mjs +0 -6780
  404. package/fesm2020/trudb-tru-common-lib.mjs.map +0 -1
@@ -0,0 +1,122 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class TruDesktopResizable {
4
+ elementRef;
5
+ window;
6
+ maximized;
7
+ direction;
8
+ constructor(elementRef) {
9
+ this.elementRef = elementRef;
10
+ }
11
+ currentHeight;
12
+ currentWidth;
13
+ currentTop;
14
+ currentLeft;
15
+ currentRight;
16
+ currentBottom;
17
+ currentMinHeight;
18
+ currentMinWidth;
19
+ mouseOffsetX = 0;
20
+ mouseOffsetY = 0;
21
+ lastMouseX = 0;
22
+ lastMouseY = 0;
23
+ originalHeight = 0;
24
+ originalWidth = 0;
25
+ viewport;
26
+ mouseDown = (event) => {
27
+ if (this.maximized)
28
+ return;
29
+ event.preventDefault();
30
+ this.mouseOffsetY = event.clientY;
31
+ this.mouseOffsetX = event.clientX;
32
+ this.originalHeight = parseInt(this.window.height, 10);
33
+ this.originalWidth = parseInt(this.window.width, 10);
34
+ this.viewport = this.getViewport();
35
+ document.addEventListener('mousemove', this.mouseMove);
36
+ document.addEventListener('mouseup', this.mouseUp);
37
+ };
38
+ mouseMove = (event) => {
39
+ var mouseY = event.pageY - this.mouseOffsetY;
40
+ var mouseX = event.pageX - this.mouseOffsetX;
41
+ var diffY = mouseY - this.lastMouseY;
42
+ var diffX = mouseX - this.lastMouseX;
43
+ this.lastMouseY = mouseY;
44
+ this.lastMouseX = mouseX;
45
+ this.currentHeight = parseInt(this.window.height, 10);
46
+ this.currentWidth = parseInt(this.window.width, 10);
47
+ this.currentTop = parseInt(this.window.top, 10);
48
+ this.currentLeft = parseInt(this.window.left, 10);
49
+ this.currentRight = parseInt(this.window.right, 10);
50
+ this.currentBottom = parseInt(this.window.bottom, 10);
51
+ this.currentMinHeight = parseInt(this.window.minHeight, 10);
52
+ this.currentMinWidth = parseInt(this.window.minWidth, 10);
53
+ if (this.direction.indexOf("w") > -1) {
54
+ if (this.currentWidth - diffX < this.currentMinWidth)
55
+ this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = this.currentWidth - this.currentMinWidth));
56
+ //Contain resizing to the west
57
+ if (this.currentLeft + diffX < 0)
58
+ this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = 0 - this.currentLeft));
59
+ this.window.left = (this.currentLeft + diffX) + 'px';
60
+ this.window.width = (this.currentWidth - diffX) + 'px';
61
+ }
62
+ if (this.direction.indexOf("n") > -1) {
63
+ if (this.currentHeight - diffY < this.currentMinHeight)
64
+ this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = this.currentHeight - this.currentMinHeight));
65
+ //Contain resizing to the north
66
+ if (this.currentTop + diffY < 0)
67
+ this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = 0 - this.currentTop));
68
+ this.window.top = (this.currentTop + diffY) + 'px';
69
+ this.window.height = (this.currentHeight - diffY) + 'px';
70
+ }
71
+ if (this.direction.indexOf("e") > -1) {
72
+ if (this.currentWidth + diffX < this.currentMinWidth)
73
+ this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = this.currentMinWidth - this.currentWidth));
74
+ //Contain resizing to the east
75
+ if ((this.currentLeft + this.currentWidth) + diffX > this.viewport.offsetWidth)
76
+ this.mouseOffsetX = this.mouseOffsetX - (diffX - (diffX = this.viewport.offsetWidth - (this.currentLeft + this.currentWidth)));
77
+ this.window.width = (this.currentWidth + diffX) + 'px';
78
+ }
79
+ if (this.direction.indexOf("s") > -1) {
80
+ if (this.currentHeight + diffY < this.currentMinHeight)
81
+ this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = this.currentMinHeight - this.currentHeight));
82
+ //Contain resizing to the south
83
+ if ((this.currentTop + this.currentHeight) + diffY > this.viewport.offsetHeight)
84
+ this.mouseOffsetY = this.mouseOffsetY - (diffY - (diffY = this.viewport.offsetHeight - (this.currentTop + this.currentHeight)));
85
+ this.window.height = (this.currentHeight + diffY) + 'px';
86
+ }
87
+ };
88
+ mouseUp = (event) => {
89
+ this.mouseOffsetX = 0;
90
+ this.mouseOffsetY = 0;
91
+ this.lastMouseX = 0;
92
+ this.lastMouseY = 0;
93
+ document.removeEventListener('mousemove', this.mouseMove);
94
+ document.removeEventListener('mouseup', this.mouseUp);
95
+ };
96
+ getViewport = function () {
97
+ return document.querySelectorAll('.desktop-viewport-container')[0];
98
+ };
99
+ ngOnInit() {
100
+ this.elementRef.nativeElement.addEventListener('mousedown', this.mouseDown);
101
+ }
102
+ ngOnDestroy() {
103
+ this.elementRef.nativeElement.removeEventListener('mousedown', this.mouseDown);
104
+ document.removeEventListener('mousemove', this.mouseMove);
105
+ document.removeEventListener('mouseup', this.mouseUp);
106
+ }
107
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopResizable, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
108
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: TruDesktopResizable, selector: "[tru-desktop-resizable]", inputs: { window: "window", maximized: "maximized", direction: "direction" }, ngImport: i0 });
109
+ }
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopResizable, decorators: [{
111
+ type: Directive,
112
+ args: [{
113
+ selector: '[tru-desktop-resizable]',
114
+ }]
115
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { window: [{
116
+ type: Input
117
+ }], maximized: [{
118
+ type: Input
119
+ }], direction: [{
120
+ type: Input
121
+ }] } });
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtcmVzaXphYmxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2Rlc2t0b3AvZGlyZWN0aXZlcy9yZXNpemFibGUvdHJ1LWRlc2t0b3AtcmVzaXphYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFjLE1BQU0sZUFBZSxDQUFDOztBQUtyRSxNQUFNLE9BQU8sbUJBQW1CO0lBS1Y7SUFKWCxNQUFNLENBQU07SUFDWixTQUFTLENBQU07SUFDZixTQUFTLENBQU07SUFFeEIsWUFBb0IsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUFJLENBQUM7SUFFL0MsYUFBYSxDQUFNO0lBQ25CLFlBQVksQ0FBTTtJQUNsQixVQUFVLENBQU07SUFDaEIsV0FBVyxDQUFNO0lBQ2pCLFlBQVksQ0FBTTtJQUNsQixhQUFhLENBQU07SUFDbkIsZ0JBQWdCLENBQU07SUFDdEIsZUFBZSxDQUFNO0lBQ3JCLFlBQVksR0FBRyxDQUFDLENBQUM7SUFDakIsWUFBWSxHQUFHLENBQUMsQ0FBQztJQUNqQixVQUFVLEdBQUcsQ0FBQyxDQUFDO0lBQ2YsVUFBVSxHQUFHLENBQUMsQ0FBQztJQUNmLGNBQWMsR0FBRyxDQUFDLENBQUM7SUFDbkIsYUFBYSxHQUFHLENBQUMsQ0FBQztJQUNsQixRQUFRLENBQU07SUFFZCxTQUFTLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtRQUN6QixJQUFJLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUMzQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUNsQyxJ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LENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RCxDQUFDO3VHQWpIVSxtQkFBbUI7MkZBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUseUJBQXlCO2lCQUNwQzsrRUFFVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIElucHV0LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t0cnUtZGVza3RvcC1yZXNpemFibGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgVHJ1RGVza3RvcFJlc2l6YWJsZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHdpbmRvdzogYW55O1xuICBASW5wdXQoKSBtYXhpbWl6ZWQ6IGFueTtcbiAgQElucHV0KCkgZGlyZWN0aW9uOiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7IH1cblxuICBjdXJyZW50SGVpZ2h0OiBhbnk7XG4gIGN1cnJlbnRXaWR0aDogYW55O1xuICBjdXJyZW50VG9wOiBhbnk7XG4gIGN1cnJlbnRMZWZ0OiBhbnk7XG4gIGN1cnJlbnRSaWdodDogYW55O1xuICBjdXJyZW50Qm90dG9tOiBhbnk7XG4gIGN1cnJlbnRNaW5IZWlnaHQ6IGFueTtcbiAgY3VycmVudE1pbldpZHRoOiBhbnk7XG4gIG1vdXNlT2Zmc2V0WCA9IDA7XG4gIG1vdXNlT2Zmc2V0WSA9IDA7XG4gIGxhc3RNb3VzZVggPSAwO1xuICBsYXN0TW91c2VZID0gMDtcbiAgb3JpZ2luYWxIZWlnaHQgPSAwO1xuICBvcmlnaW5hbFdpZHRoID0gMDtcbiAgdmlld3BvcnQ6IGFueTtcblxuICBtb3VzZURvd24gPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgIGlmICh0aGlzLm1heGltaXplZCkgcmV0dXJuO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5tb3VzZU9mZnNldFkgPSBldmVudC5jbGllbnRZO1xuICAgIHRoaXMubW91c2VPZmZzZXRYID0gZXZlbnQuY2xpZW50WDtcbiAgICB0aGlzLm9yaWdpbmFsSGVpZ2h0ID0gcGFyc2VJbnQodGhpcy53aW5kb3cuaGVpZ2h0LCAxMCk7XG4gICAgdGhpcy5vcmlnaW5hbFdpZHRoID0gcGFyc2VJbnQodGhpcy53aW5kb3cud2lkdGgsIDEwKTtcbiAgICB0aGlzLnZpZXdwb3J0ID0gdGhpcy5nZXRWaWV3cG9ydCgpO1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMubW91c2VNb3ZlKTtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5tb3VzZVVwKTtcbiAgfTtcblxuICBtb3VzZU1vdmUgPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgIHZhciBtb3VzZVkgPSBldmVudC5wYWdlWSAtIHRoaXMubW91c2VPZmZzZXRZO1xuICAgIHZhciBtb3VzZVggPSBldmVudC5wYWdlWCAtIHRoaXMubW91c2VPZmZzZXRYO1xuICAgIHZhciBkaWZmWSA9IG1vdXNlWSAtIHRoaXMubGFzdE1vdXNlWTtcbiAgICB2YXIgZGlmZlggPSBtb3VzZVggLSB0aGlzLmxhc3RNb3VzZVg7XG4gICAgdGhpcy5sYXN0TW91c2VZID0gbW91c2VZO1xuICAgIHRoaXMubGFzdE1vdXNlWCA9IG1vdXNlWDtcblxuICAgIHRoaXMuY3VycmVudEhlaWdodCA9IHBhcnNlSW50KHRoaXMud2luZG93LmhlaWdodCwgMTApO1xuICAgIHRoaXMuY3VycmVudFdpZHRoID0gcGFyc2VJbnQodGhpcy53aW5kb3cud2lkdGgsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRUb3AgPSBwYXJzZUludCh0aGlzLndpbmRvdy50b3AsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRMZWZ0ID0gcGFyc2VJbnQodGhpcy53aW5kb3cubGVmdCwgMTApO1xuICAgIHRoaXMuY3VycmVudFJpZ2h0ID0gcGFyc2VJbnQodGhpcy53aW5kb3cucmlnaHQsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRCb3R0b20gPSBwYXJzZUludCh0aGlzLndpbmRvdy5ib3R0b20sIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRNaW5IZWlnaHQgPSBwYXJzZUludCh0aGlzLndpbmRvdy5taW5IZWlnaHQsIDEwKTtcbiAgICB0aGlzLmN1cnJlbnRNaW5XaWR0aCA9IHBhcnNlSW50KHRoaXMud2luZG93Lm1pbldpZHRoLCAxMCk7XG5cbiAgICBpZiAodGhpcy5kaXJlY3Rpb24uaW5kZXhPZihcIndcIikgPiAtMSkge1xuICAgICAgaWYgKHRoaXMuY3VycmVudFdpZHRoIC0gZGlmZlggPCB0aGlzLmN1cnJlbnRNaW5XaWR0aCkgdGhpcy5tb3VzZU9mZnNldFggPSB0aGlzLm1vdXNlT2Zmc2V0WCAtIChkaWZmWCAtIChkaWZmWCA9IHRoaXMuY3VycmVudFdpZHRoIC0gdGhpcy5jdXJyZW50TWluV2lkdGgpKTtcblxuICAgICAgLy9Db250YWluIHJlc2l6aW5nIHRvIHRoZSB3ZXN0XG4gICAgICBpZiAodGhpcy5jdXJyZW50TGVmdCArIGRpZmZYIDwgMClcbiAgICAgICAgdGhpcy5tb3VzZU9mZnNldFggPSB0aGlzLm1vdXNlT2Zmc2V0WCAtIChkaWZmWCAtIChkaWZmWCA9IDAgLSB0aGlzLmN1cnJlbnRMZWZ0KSk7XG5cbiAgICAgIHRoaXMud2luZG93LmxlZnQgPSAodGhpcy5jdXJyZW50TGVmdCArIGRpZmZYKSArICdweCc7XG4gICAgICB0aGlzLndpbmRvdy53aWR0aCA9ICh0aGlzLmN1cnJlbnRXaWR0aCAtIGRpZmZYKSArICdweCc7XG4gICAgfVxuICAgIGlmICh0aGlzLmRpcmVjdGlvbi5pbmRleE9mKFwiblwiKSA+IC0xKSB7XG4gICAgICBpZiAodGhpcy5jdXJyZW50SGVpZ2h0IC0gZGlmZlkgPCB0aGlzLmN1cnJlbnRNaW5IZWlnaHQpIHRoaXMubW91c2VPZmZzZXRZID0gdGhpcy5tb3VzZU9mZnNldFkgLSAoZGlmZlkgLSAoZGlmZlkgPSB0aGlzLmN1cnJlbnRIZWlnaHQgLSB0aGlzLmN1cnJlbnRNaW5IZWlnaHQpKTtcblxuICAgICAgLy9Db250YWluIHJlc2l6aW5nIHRvIHRoZSBub3J0aFxuICAgICAgaWYgKHRoaXMuY3VycmVudFRvcCArIGRpZmZZIDwgMCkgdGhpcy5tb3VzZU9mZnNldFkgPSB0aGlzLm1vdXNlT2Zmc2V0WSAtIChkaWZmWSAtIChkaWZmWSA9IDAgLSB0aGlzLmN1cnJlbnRUb3ApKTtcblxuICAgICAgdGhpcy53aW5kb3cudG9wID0gKHRoaXMuY3VycmVudFRvcCArIGRpZmZZKSArICdweCc7XG4gICAgICB0aGlzLndpbmRvdy5oZWlnaHQgPSAodGhpcy5jdXJyZW50SGVpZ2h0IC0gZGlmZlkpICsgJ3B4JztcbiAgICB9XG4gICAgaWYgKHRoaXMuZGlyZWN0aW9uLmluZGV4T2YoXCJlXCIpID4gLTEpIHtcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRXaWR0aCArIGRpZmZYIDwgdGhpcy5jdXJyZW50TWluV2lkdGgpIHRoaXMubW91c2VPZmZzZXRYID0gdGhpcy5tb3VzZU9mZnNldFggLSAoZGlmZlggLSAoZGlmZlggPSB0aGlzLmN1cnJlbnRNaW5XaWR0aCAtIHRoaXMuY3VycmVudFdpZHRoKSk7XG5cbiAgICAgIC8vQ29udGFpbiByZXNpemluZyB0byB0aGUgZWFzdFxuICAgICAgaWYgKCh0aGlzLmN1cnJlbnRMZWZ0ICsgdGhpcy5jdXJyZW50V2lkdGgpICsgZGlmZlggPiB0aGlzLnZpZXdwb3J0Lm9mZnNldFdpZHRoKVxuICAgICAgICB0aGlzLm1vdXNlT2Zmc2V0WCA9IHRoaXMubW91c2VPZmZzZXRYIC0gKGRpZmZYIC0gKGRpZmZYID0gdGhpcy52aWV3cG9ydC5vZmZzZXRXaWR0aCAtICh0aGlzLmN1cnJlbnRMZWZ0ICsgdGhpcy5jdXJyZW50V2lkdGgpKSk7XG5cbiAgICAgIHRoaXMud2luZG93LndpZHRoID0gKHRoaXMuY3VycmVudFdpZHRoICsgZGlmZlgpICsgJ3B4JztcbiAgICB9XG4gICAgaWYgKHRoaXMuZGlyZWN0aW9uLmluZGV4T2YoXCJzXCIpID4gLTEpIHtcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRIZWlnaHQgKyBkaWZmWSA8IHRoaXMuY3VycmVudE1pbkhlaWdodCkgdGhpcy5tb3VzZU9mZnNldFkgPSB0aGlzLm1vdXNlT2Zmc2V0WSAtIChkaWZmWSAtIChkaWZmWSA9IHRoaXMuY3VycmVudE1pbkhlaWdodCAtIHRoaXMuY3VycmVudEhlaWdodCkpO1xuXG4gICAgICAvL0NvbnRhaW4gcmVzaXppbmcgdG8gdGhlIHNvdXRoXG4gICAgICBpZiAoKHRoaXMuY3VycmVudFRvcCArIHRoaXMuY3VycmVudEhlaWdodCkgKyBkaWZmWSA+IHRoaXMudmlld3BvcnQub2Zmc2V0SGVpZ2h0KVxuICAgICAgICB0aGlzLm1vdXNlT2Zmc2V0WSA9IHRoaXMubW91c2VPZmZzZXRZIC0gKGRpZmZZIC0gKGRpZmZZID0gdGhpcy52aWV3cG9ydC5vZmZzZXRIZWlnaHQgLSAodGhpcy5jdXJyZW50VG9wICsgdGhpcy5jdXJyZW50SGVpZ2h0KSkpO1xuXG4gICAgICB0aGlzLndpbmRvdy5oZWlnaHQgPSAodGhpcy5jdXJyZW50SGVpZ2h0ICsgZGlmZlkpICsgJ3B4JztcbiAgICB9XG4gIH1cblxuICBtb3VzZVVwID0gKGV2ZW50OiBhbnkpID0+IHtcbiAgICB0aGlzLm1vdXNlT2Zmc2V0WCA9IDA7XG4gICAgdGhpcy5tb3VzZU9mZnNldFkgPSAwO1xuICAgIHRoaXMubGFzdE1vdXNlWCA9IDA7XG4gICAgdGhpcy5sYXN0TW91c2VZID0gMDtcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCB0aGlzLm1vdXNlTW92ZSk7XG4gICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsIHRoaXMubW91c2VVcCk7XG4gIH07XG5cbiAgZ2V0Vmlld3BvcnQgPSBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5kZXNrdG9wLXZpZXdwb3J0LWNvbnRhaW5lcicpWzBdO1xuICB9O1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMubW91c2VEb3duKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIHRoaXMubW91c2VEb3duKTtcblxuICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIHRoaXMubW91c2VNb3ZlKTtcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgdGhpcy5tb3VzZVVwKTtcbiAgfVxufVxuIl19
@@ -1,56 +1,56 @@
1
- import { NgModule } from "@angular/core";
2
- import { CommonModule } from "@angular/common";
3
- import { FormsModule } from "@angular/forms";
4
- import { MatMenuModule } from "@angular/material/menu";
5
- import { MatButtonModule } from "@angular/material/button";
6
- import { MatIconModule } from "@angular/material/icon";
7
- import { TruDesktopMenubar } from "./tru-desktop-menubar";
8
- import { TruToolbarModule } from "../../toolbar/tru-toolbar-module";
9
- import { TruToolbarMenuModule } from "../../toolbar/menu/tru-toolbar-menu-module";
10
- import { TruToolbarDropdownModule } from "../../toolbar/dropdown/tru-toolbar-dropdown-module";
11
- import { TruToolbarSeparatorModule } from "../../toolbar/separator/tru-toolbar-separator-module";
12
- import { TruToolbarContextFilterModule } from "../../toolbar/context-filter/tru-toolbar-context-filter-module";
13
- import * as i0 from "@angular/core";
14
- export class TruDesktopMenubarModule {
15
- }
16
- TruDesktopMenubarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopMenubarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17
- TruDesktopMenubarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopMenubarModule, declarations: [TruDesktopMenubar], imports: [CommonModule,
18
- FormsModule,
19
- MatMenuModule,
20
- MatButtonModule,
21
- MatIconModule,
22
- TruToolbarModule,
23
- TruToolbarMenuModule,
24
- TruToolbarDropdownModule,
25
- TruToolbarSeparatorModule,
26
- TruToolbarContextFilterModule], exports: [TruDesktopMenubar] });
27
- TruDesktopMenubarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopMenubarModule, imports: [CommonModule,
28
- FormsModule,
29
- MatMenuModule,
30
- MatButtonModule,
31
- MatIconModule,
32
- TruToolbarModule,
33
- TruToolbarMenuModule,
34
- TruToolbarDropdownModule,
35
- TruToolbarSeparatorModule,
36
- TruToolbarContextFilterModule] });
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDesktopMenubarModule, decorators: [{
38
- type: NgModule,
39
- args: [{
40
- declarations: [TruDesktopMenubar],
41
- imports: [
42
- CommonModule,
43
- FormsModule,
44
- MatMenuModule,
45
- MatButtonModule,
46
- MatIconModule,
47
- TruToolbarModule,
48
- TruToolbarMenuModule,
49
- TruToolbarDropdownModule,
50
- TruToolbarSeparatorModule,
51
- TruToolbarContextFilterModule
52
- ],
53
- exports: [TruDesktopMenubar]
54
- }]
55
- }] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtbWVudWJhci1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZGVza3RvcC9tZW51YmFyL3RydS1kZXNrdG9wLW1lbnViYXItbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUM5RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7QUFrQi9HLE1BQU0sT0FBTyx1QkFBdUI7O29IQUF2Qix1QkFBdUI7cUhBQXZCLHVCQUF1QixpQkFmbkIsaUJBQWlCLGFBRTlCLFlBQVk7UUFDWixXQUFXO1FBQ1gsYUFBYTtRQUNiLGVBQWU7UUFDZixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLG9CQUFvQjtRQUNwQix3QkFBd0I7UUFDeEIseUJBQXlCO1FBQ3pCLDZCQUE2QixhQUVyQixpQkFBaUI7cUhBRWhCLHVCQUF1QixZQWJoQyxZQUFZO1FBQ1osV0FBVztRQUNYLGFBQWE7UUFDYixlQUFlO1FBQ2YsYUFBYTtRQUNiLGdCQUFnQjtRQUNoQixvQkFBb0I7UUFDcEIsd0JBQXdCO1FBQ3hCLHlCQUF5QjtRQUN6Qiw2QkFBNkI7MkZBSXBCLHVCQUF1QjtrQkFoQm5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQ2pDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLHdCQUF3Qjt3QkFDeEIseUJBQXlCO3dCQUN6Qiw2QkFBNkI7cUJBQzlCO29CQUNELE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL21lbnVcIjtcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2J1dHRvblwiO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2ljb25cIjtcclxuXHJcbmltcG9ydCB7IFRydURlc2t0b3BNZW51YmFyIH0gZnJvbSBcIi4vdHJ1LWRlc2t0b3AtbWVudWJhclwiO1xyXG5pbXBvcnQgeyBUcnVUb29sYmFyTW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvdHJ1LXRvb2xiYXItbW9kdWxlXCI7XHJcbmltcG9ydCB7IFRydVRvb2xiYXJNZW51TW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvbWVudS90cnUtdG9vbGJhci1tZW51LW1vZHVsZVwiO1xyXG5pbXBvcnQgeyBUcnVUb29sYmFyRHJvcGRvd25Nb2R1bGUgfSBmcm9tIFwiLi4vLi4vdG9vbGJhci9kcm9wZG93bi90cnUtdG9vbGJhci1kcm9wZG93bi1tb2R1bGVcIjtcclxuaW1wb3J0IHsgVHJ1VG9vbGJhclNlcGFyYXRvck1vZHVsZSB9IGZyb20gXCIuLi8uLi90b29sYmFyL3NlcGFyYXRvci90cnUtdG9vbGJhci1zZXBhcmF0b3ItbW9kdWxlXCI7XHJcbmltcG9ydCB7IFRydVRvb2xiYXJDb250ZXh0RmlsdGVyTW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvY29udGV4dC1maWx0ZXIvdHJ1LXRvb2xiYXItY29udGV4dC1maWx0ZXItbW9kdWxlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1RydURlc2t0b3BNZW51YmFyXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdE1lbnVNb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgVHJ1VG9vbGJhck1vZHVsZSxcclxuICAgIFRydVRvb2xiYXJNZW51TW9kdWxlLFxyXG4gICAgVHJ1VG9vbGJhckRyb3Bkb3duTW9kdWxlLFxyXG4gICAgVHJ1VG9vbGJhclNlcGFyYXRvck1vZHVsZSxcclxuICAgIFRydVRvb2xiYXJDb250ZXh0RmlsdGVyTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbVHJ1RGVza3RvcE1lbnViYXJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXNrdG9wTWVudWJhck1vZHVsZSB7IH1cclxuIl19
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { FormsModule } from "@angular/forms";
4
+ import { MatMenuModule } from "@angular/material/menu";
5
+ import { MatButtonModule } from "@angular/material/button";
6
+ import { MatIconModule } from "@angular/material/icon";
7
+ import { TruDesktopMenubar } from "./tru-desktop-menubar";
8
+ import { TruToolbarModule } from "../../toolbar/tru-toolbar-module";
9
+ import { TruToolbarMenuModule } from "../../toolbar/menu/tru-toolbar-menu-module";
10
+ import { TruToolbarDropdownModule } from "../../toolbar/dropdown/tru-toolbar-dropdown-module";
11
+ import { TruToolbarSeparatorModule } from "../../toolbar/separator/tru-toolbar-separator-module";
12
+ import { TruToolbarContextFilterModule } from "../../toolbar/context-filter/tru-toolbar-context-filter-module";
13
+ import * as i0 from "@angular/core";
14
+ export class TruDesktopMenubarModule {
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubarModule, declarations: [TruDesktopMenubar], imports: [CommonModule,
17
+ FormsModule,
18
+ MatMenuModule,
19
+ MatButtonModule,
20
+ MatIconModule,
21
+ TruToolbarModule,
22
+ TruToolbarMenuModule,
23
+ TruToolbarDropdownModule,
24
+ TruToolbarSeparatorModule,
25
+ TruToolbarContextFilterModule], exports: [TruDesktopMenubar] });
26
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubarModule, imports: [CommonModule,
27
+ FormsModule,
28
+ MatMenuModule,
29
+ MatButtonModule,
30
+ MatIconModule,
31
+ TruToolbarModule,
32
+ TruToolbarMenuModule,
33
+ TruToolbarDropdownModule,
34
+ TruToolbarSeparatorModule,
35
+ TruToolbarContextFilterModule] });
36
+ }
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubarModule, decorators: [{
38
+ type: NgModule,
39
+ args: [{
40
+ declarations: [TruDesktopMenubar],
41
+ imports: [
42
+ CommonModule,
43
+ FormsModule,
44
+ MatMenuModule,
45
+ MatButtonModule,
46
+ MatIconModule,
47
+ TruToolbarModule,
48
+ TruToolbarMenuModule,
49
+ TruToolbarDropdownModule,
50
+ TruToolbarSeparatorModule,
51
+ TruToolbarContextFilterModule
52
+ ],
53
+ exports: [TruDesktopMenubar]
54
+ }]
55
+ }] });
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtbWVudWJhci1tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZGVza3RvcC9tZW51YmFyL3RydS1kZXNrdG9wLW1lbnViYXItbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUM5RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQzs7QUFrQi9HLE1BQU0sT0FBTyx1QkFBdUI7dUdBQXZCLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLGlCQWZuQixpQkFBaUIsYUFFOUIsWUFBWTtZQUNaLFdBQVc7WUFDWCxhQUFhO1lBQ2IsZUFBZTtZQUNmLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsb0JBQW9CO1lBQ3BCLHdCQUF3QjtZQUN4Qix5QkFBeUI7WUFDekIsNkJBQTZCLGFBRXJCLGlCQUFpQjt3R0FFaEIsdUJBQXVCLFlBYmhDLFlBQVk7WUFDWixXQUFXO1lBQ1gsYUFBYTtZQUNiLGVBQWU7WUFDZixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQix3QkFBd0I7WUFDeEIseUJBQXlCO1lBQ3pCLDZCQUE2Qjs7MkZBSXBCLHVCQUF1QjtrQkFoQm5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQ2pDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLHdCQUF3Qjt3QkFDeEIseUJBQXlCO3dCQUN6Qiw2QkFBNkI7cUJBQzlCO29CQUNELE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL21lbnVcIjtcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2J1dHRvblwiO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2ljb25cIjtcclxuXHJcbmltcG9ydCB7IFRydURlc2t0b3BNZW51YmFyIH0gZnJvbSBcIi4vdHJ1LWRlc2t0b3AtbWVudWJhclwiO1xyXG5pbXBvcnQgeyBUcnVUb29sYmFyTW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvdHJ1LXRvb2xiYXItbW9kdWxlXCI7XHJcbmltcG9ydCB7IFRydVRvb2xiYXJNZW51TW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvbWVudS90cnUtdG9vbGJhci1tZW51LW1vZHVsZVwiO1xyXG5pbXBvcnQgeyBUcnVUb29sYmFyRHJvcGRvd25Nb2R1bGUgfSBmcm9tIFwiLi4vLi4vdG9vbGJhci9kcm9wZG93bi90cnUtdG9vbGJhci1kcm9wZG93bi1tb2R1bGVcIjtcclxuaW1wb3J0IHsgVHJ1VG9vbGJhclNlcGFyYXRvck1vZHVsZSB9IGZyb20gXCIuLi8uLi90b29sYmFyL3NlcGFyYXRvci90cnUtdG9vbGJhci1zZXBhcmF0b3ItbW9kdWxlXCI7XHJcbmltcG9ydCB7IFRydVRvb2xiYXJDb250ZXh0RmlsdGVyTW9kdWxlIH0gZnJvbSBcIi4uLy4uL3Rvb2xiYXIvY29udGV4dC1maWx0ZXIvdHJ1LXRvb2xiYXItY29udGV4dC1maWx0ZXItbW9kdWxlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1RydURlc2t0b3BNZW51YmFyXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdE1lbnVNb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgVHJ1VG9vbGJhck1vZHVsZSxcclxuICAgIFRydVRvb2xiYXJNZW51TW9kdWxlLFxyXG4gICAgVHJ1VG9vbGJhckRyb3Bkb3duTW9kdWxlLFxyXG4gICAgVHJ1VG9vbGJhclNlcGFyYXRvck1vZHVsZSxcclxuICAgIFRydVRvb2xiYXJDb250ZXh0RmlsdGVyTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbVHJ1RGVza3RvcE1lbnViYXJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXNrdG9wTWVudWJhck1vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,36 @@
1
+ import { Component, Input, ViewEncapsulation } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../../services/tru-context-filters";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "../../toolbar/tru-toolbar";
6
+ import * as i4 from "../../toolbar/menu/tru-toolbar-menu";
7
+ import * as i5 from "../../toolbar/separator/tru-toolbar-separator";
8
+ import * as i6 from "../../toolbar/context-filter/tru-toolbar-context-filter";
9
+ import * as i7 from "../../toolbar/user-profile/tru-toolbar-user-profile";
10
+ export class TruDesktopMenubar {
11
+ contextFilters;
12
+ desktopCtrl;
13
+ constructor(contextFilters) {
14
+ this.contextFilters = contextFilters;
15
+ }
16
+ options = null;
17
+ configs = null;
18
+ filters = [];
19
+ openWindow = (event, windowOverrides) => {
20
+ this.desktopCtrl.openWindow(windowOverrides);
21
+ };
22
+ ngOnInit() {
23
+ this.options = this.desktopCtrl.getOptions();
24
+ this.configs = this.options.menubarConfig;
25
+ this.filters = this.contextFilters.filters;
26
+ }
27
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubar, deps: [{ token: i1.TruContextFilters }], target: i0.ɵɵFactoryTarget.Component });
28
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: TruDesktopMenubar, selector: "tru-desktop-menubar", inputs: { desktopCtrl: "desktopCtrl" }, ngImport: i0, template: "<div class=\"desktop-main-menu\">\r\n <tru-toolbar>\r\n <tru-toolbar-menu *ngFor=\"let config of configs\" [config]=\"config\"></tru-toolbar-menu>\r\n <tru-toolbar-separator *ngIf=\"filters.length\"></tru-toolbar-separator>\r\n <tru-toolbar-context-filter></tru-toolbar-context-filter>\r\n </tru-toolbar>\r\n <tru-toolbar>\r\n <tru-toolbar-user-profile></tru-toolbar-user-profile>\r\n </tru-toolbar>\r\n</div>\r\n", styles: [".desktop-main-menu tru-toolbar{display:inline-block}tru-toolbar:nth-of-type(2){float:right}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TruToolbar, selector: "tru-toolbar", inputs: ["config"] }, { kind: "component", type: i4.TruToolbarMenu, selector: "tru-toolbar-menu", inputs: ["config"] }, { kind: "component", type: i5.TruToolbarSeparator, selector: "tru-toolbar-separator" }, { kind: "component", type: i6.TruToolbarContextFilter, selector: "tru-toolbar-context-filter" }, { kind: "component", type: i7.TruToolbarUserProfile, selector: "tru-toolbar-user-profile" }], encapsulation: i0.ViewEncapsulation.None });
29
+ }
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopMenubar, decorators: [{
31
+ type: Component,
32
+ args: [{ selector: 'tru-desktop-menubar', encapsulation: ViewEncapsulation.None, template: "<div class=\"desktop-main-menu\">\r\n <tru-toolbar>\r\n <tru-toolbar-menu *ngFor=\"let config of configs\" [config]=\"config\"></tru-toolbar-menu>\r\n <tru-toolbar-separator *ngIf=\"filters.length\"></tru-toolbar-separator>\r\n <tru-toolbar-context-filter></tru-toolbar-context-filter>\r\n </tru-toolbar>\r\n <tru-toolbar>\r\n <tru-toolbar-user-profile></tru-toolbar-user-profile>\r\n </tru-toolbar>\r\n</div>\r\n", styles: [".desktop-main-menu tru-toolbar{display:inline-block}tru-toolbar:nth-of-type(2){float:right}\n"] }]
33
+ }], ctorParameters: () => [{ type: i1.TruContextFilters }], propDecorators: { desktopCtrl: [{
34
+ type: Input
35
+ }] } });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtbWVudWJhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL21lbnViYXIvdHJ1LWRlc2t0b3AtbWVudWJhci50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL21lbnViYXIvdHJ1LWRlc2t0b3AtbWVudWJhci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFTNUUsTUFBTSxPQUFPLGlCQUFpQjtJQUdSO0lBRlgsV0FBVyxDQUFNO0lBRTFCLFlBQW9CLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtJQUFJLENBQUM7SUFFMUQsT0FBTyxHQUFlLElBQUksQ0FBQztJQUMzQixPQUFPLEdBQWUsSUFBSSxDQUFDO0lBQzNCLE9BQU8sR0FBZSxFQUFFLENBQUM7SUFFekIsVUFBVSxHQUFHLENBQUMsS0FBVSxFQUFFLGVBQW9CLEVBQUUsRUFBRTtRQUNoRCxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQyxDQUFDLENBQUM7SUFFRixRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzdDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQztJQUM3QyxDQUFDO3VHQWpCVSxpQkFBaUI7MkZBQWpCLGlCQUFpQixtR0NUOUIsK2FBVUE7OzJGRERhLGlCQUFpQjtrQkFON0IsU0FBUzsrQkFDRSxxQkFBcUIsaUJBR2hCLGlCQUFpQixDQUFDLElBQUk7c0ZBRzVCLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRydUNvbnRleHRGaWx0ZXJzIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdHJ1LWNvbnRleHQtZmlsdGVycyc7XHJcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndHJ1LWRlc2t0b3AtbWVudWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90cnUtZGVza3RvcC1tZW51YmFyLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90cnUtZGVza3RvcC1tZW51YmFyLmNzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFRydURlc2t0b3BNZW51YmFyIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZGVza3RvcEN0cmw6IGFueTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbnRleHRGaWx0ZXJzOiBUcnVDb250ZXh0RmlsdGVycykgeyB9XG5cbiAgb3B0aW9uczogYW55IHwgbnVsbCA9IG51bGw7XG4gIGNvbmZpZ3M6IGFueSB8IG51bGwgPSBudWxsO1xuICBmaWx0ZXJzOiBBcnJheTxhbnk+ID0gW107XG5cbiAgb3BlbldpbmRvdyA9IChldmVudDogYW55LCB3aW5kb3dPdmVycmlkZXM6IGFueSkgPT4ge1xuICAgIHRoaXMuZGVza3RvcEN0cmwub3BlbldpbmRvdyh3aW5kb3dPdmVycmlkZXMpO1xuICB9O1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMub3B0aW9ucyA9IHRoaXMuZGVza3RvcEN0cmwuZ2V0T3B0aW9ucygpO1xuICAgIHRoaXMuY29uZmlncyA9IHRoaXMub3B0aW9ucy5tZW51YmFyQ29uZmlnO1xuICAgIHRoaXMuZmlsdGVycyA9IHRoaXMuY29udGV4dEZpbHRlcnMuZmlsdGVycztcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImRlc2t0b3AtbWFpbi1tZW51XCI+XHJcbiAgPHRydS10b29sYmFyPlxyXG4gICAgPHRydS10b29sYmFyLW1lbnUgKm5nRm9yPVwibGV0IGNvbmZpZyBvZiBjb25maWdzXCIgW2NvbmZpZ109XCJjb25maWdcIj48L3RydS10b29sYmFyLW1lbnU+XHJcbiAgICA8dHJ1LXRvb2xiYXItc2VwYXJhdG9yICpuZ0lmPVwiZmlsdGVycy5sZW5ndGhcIj48L3RydS10b29sYmFyLXNlcGFyYXRvcj5cclxuICAgIDx0cnUtdG9vbGJhci1jb250ZXh0LWZpbHRlcj48L3RydS10b29sYmFyLWNvbnRleHQtZmlsdGVyPlxyXG4gIDwvdHJ1LXRvb2xiYXI+XHJcbiAgPHRydS10b29sYmFyPlxyXG4gICAgPHRydS10b29sYmFyLXVzZXItcHJvZmlsZT48L3RydS10b29sYmFyLXVzZXItcHJvZmlsZT5cclxuICA8L3RydS10b29sYmFyPlxyXG48L2Rpdj5cclxuIl19
@@ -0,0 +1,86 @@
1
+ import { Injectable } from "@angular/core";
2
+ import { TruWindowEventArgs } from './tru-window-event-args';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../../services/tru-context-filters";
5
+ import * as i2 from "./tru-window-event-handler";
6
+ export class TruDesktopManager {
7
+ contextFilters;
8
+ windowEventHandler;
9
+ constructor(contextFilters, windowEventHandler) {
10
+ this.contextFilters = contextFilters;
11
+ this.windowEventHandler = windowEventHandler;
12
+ }
13
+ getWindowEvent = (tableName, tablePluralName, tablePluralLabel, componentName, entities = [], openAsDetaiView = false) => {
14
+ var windowEvent = new TruWindowEventArgs();
15
+ windowEvent.tableName = tableName;
16
+ windowEvent.tablePluralName = tablePluralName;
17
+ windowEvent.tablePluralLabel = tablePluralLabel;
18
+ windowEvent.contextFilters = this.contextFilters.filters;
19
+ windowEvent.views = [
20
+ {
21
+ active: true,
22
+ entities: entities,
23
+ entityIndex: 0,
24
+ isDirty: false,
25
+ isEditing: false,
26
+ isInvalid: false,
27
+ openAsDetaiView: openAsDetaiView,
28
+ componentName: componentName
29
+ }
30
+ ];
31
+ return windowEvent;
32
+ };
33
+ /**
34
+ * Opens a window for a directive.
35
+ * @param {string} directiveName - name of the view directive.
36
+ * @param {object} data - values to pass to the view.
37
+ * @param {optional bool} showIfExists - if true and a view already exists for the
38
+ * directive, then shows its window instead of creating a new one.
39
+ */
40
+ addWindow = (tableName, tablePluralName, tablePluralLabel, componentName, entities = [], openAsDetaiView = false, showNavigation = true, showIfExists) => {
41
+ this.windowEventHandler.open(this.getWindowEvent(tableName, tablePluralName, tablePluralLabel, componentName, entities, openAsDetaiView));
42
+ };
43
+ windowTitlesByBaseText = {};
44
+ /**
45
+ * Returns a unique string for the base name of a window. At first, returns the input.
46
+ * For second call with same base name, returns the name plus ' - 2' and so on. When
47
+ * all of the titles for the base name are released, then the next title will have no
48
+ * suffix.
49
+ * @param {string} text - base name of a window.
50
+ * @returns {object} - text: the unique text and release(): releases the name for
51
+ * future windows.
52
+ */
53
+ getUniqueTitle = (text) => {
54
+ var baseText = text;
55
+ var titles = this.windowTitlesByBaseText[baseText];
56
+ if (!titles) {
57
+ this.windowTitlesByBaseText[baseText] = titles = {
58
+ dispensedCount: 1,
59
+ activeCount: 1
60
+ };
61
+ }
62
+ else {
63
+ ++titles.activeCount;
64
+ text += ' - ' + (++titles.dispensedCount);
65
+ }
66
+ return {
67
+ text: text,
68
+ release: () => {
69
+ if (titles.activeCount === 1)
70
+ delete this.windowTitlesByBaseText[baseText];
71
+ else {
72
+ --titles.activeCount;
73
+ }
74
+ }
75
+ };
76
+ };
77
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopManager, deps: [{ token: i1.TruContextFilters }, { token: i2.TruWindowEventHandler }], target: i0.ɵɵFactoryTarget.Injectable });
78
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopManager, providedIn: 'root' });
79
+ }
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopManager, decorators: [{
81
+ type: Injectable,
82
+ args: [{
83
+ providedIn: 'root',
84
+ }]
85
+ }], ctorParameters: () => [{ type: i1.TruContextFilters }, { type: i2.TruWindowEventHandler }] });
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3AtbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3NlcnZpY2VzL3RydS1kZXNrdG9wLW1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQVE3RCxNQUFNLE9BQU8saUJBQWlCO0lBR2xCO0lBQ0E7SUFGVixZQUNVLGNBQWlDLEVBQ2pDLGtCQUF5QztRQUR6QyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF1QjtJQUFJLENBQUM7SUFFeEQsY0FBYyxHQUFHLENBQ2YsU0FBaUIsRUFDakIsZUFBdUIsRUFDdkIsZ0JBQXdCLEVBQ3hCLGFBQXFCLEVBQ3JCLFdBQWlDLEVBQUUsRUFDbkMsa0JBQTJCLEtBQUssRUFBc0IsRUFBRTtRQUV4RCxJQUFJLFdBQVcsR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDM0MsV0FBVyxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDbEMsV0FBVyxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUM7UUFDOUMsV0FBVyxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDO1FBQ2hELFdBQVcsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUM7UUFDekQsV0FBVyxDQUFDLEtBQUssR0FBRztZQUNsQjtnQkFDRSxNQUFNLEVBQUUsSUFBSTtnQkFDWixRQUFRLEVBQUUsUUFBUTtnQkFDbEIsV0FBVyxFQUFFLENBQUM7Z0JBQ2QsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsU0FBUyxFQUFFLEtBQUs7Z0JBQ2hCLFNBQVMsRUFBRSxLQUFLO2dCQUNoQixlQUFlLEVBQUUsZUFBZTtnQkFDaEMsYUFBYSxFQUFFLGFBQWE7YUFDN0I7U0FDRixDQUFDO1FBQ0YsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQyxDQUFBO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsU0FBUyxHQUFHLENBQ1YsU0FBaUIsRUFDakIsZUFBdUIsRUFDdkIsZ0JBQXdCLEVBQ3hCLGFBQXFCLEVBQ3JCLFdBQWlDLEVBQUUsRUFDbkMsa0JBQTJCLEtBQUssRUFDaEMsaUJBQTBCLElBQUksRUFDOUIsWUFBc0IsRUFBRSxFQUFFO1FBQzFCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQztJQUM1SSxDQUFDLENBQUE7SUFFRCxzQkFBc0IsR0FBUSxFQUFFLENBQUM7SUFFakM7Ozs7Ozs7O09BUUc7SUFDSCxjQUFjLEdBQUcsQ0FBQyxJQUFZLEVBQW1CLEVBQUU7UUFDakQsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1gsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxHQUFHLE1BQU0sR0FBRztnQkFDL0MsY0FBYyxFQUFFLENBQUM7Z0JBQ2pCLFdBQVcsRUFBRSxDQUFDO2FBQ2YsQ0FBQztTQUNIO2FBQU07WUFDTCxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUM7WUFDckIsSUFBSSxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQzNDO1FBQ0QsT0FBTztZQUNMLElBQUksRUFBRSxJQUFJO1lBQ1YsT0FBTyxFQUFFLEdBQUcsRUFBRTtnQkFDWixJQUFJLE1BQU0sQ0FBQyxXQUFXLEtBQUssQ0FBQztvQkFDMUIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7cUJBQzFDO29CQUNILEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQztpQkFDdEI7WUFDSCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQTt1R0F0RlUsaUJBQWlCOzJHQUFqQixpQkFBaUIsY0FGaEIsTUFBTTs7MkZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBUcnVXaW5kb3dFdmVudEhhbmRsZXIgfSBmcm9tICcuL3RydS13aW5kb3ctZXZlbnQtaGFuZGxlcic7XHJcbmltcG9ydCB7IFRydVdpbmRvd0V2ZW50QXJncyB9IGZyb20gJy4vdHJ1LXdpbmRvdy1ldmVudC1hcmdzJztcclxuaW1wb3J0IHsgVHJ1Q29udGV4dEZpbHRlcnMgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXMvdHJ1LWNvbnRleHQtZmlsdGVyc1wiO1xyXG5pbXBvcnQgeyBUcnVFbnRpdHlCYXNlIH0gZnJvbSBcIi4uLy4uLy4uL2Jhc2UtY2xhc3Nlcy90cnUtZW50aXR5LWJhc2VcIjtcclxuaW1wb3J0IHsgVHJ1RGVza3RvcFRpdGxlIH0gZnJvbSBcIi4uL2NsYXNzZXMvdHJ1LWRlc2t0b3AtdGl0bGVcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXNrdG9wTWFuYWdlciB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjb250ZXh0RmlsdGVyczogVHJ1Q29udGV4dEZpbHRlcnMsXHJcbiAgICBwcml2YXRlIHdpbmRvd0V2ZW50SGFuZGxlcjogVHJ1V2luZG93RXZlbnRIYW5kbGVyKSB7IH1cclxuXHJcbiAgZ2V0V2luZG93RXZlbnQgPSAoXHJcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcclxuICAgIHRhYmxlUGx1cmFsTmFtZTogc3RyaW5nLFxyXG4gICAgdGFibGVQbHVyYWxMYWJlbDogc3RyaW5nLFxyXG4gICAgY29tcG9uZW50TmFtZTogc3RyaW5nLFxyXG4gICAgZW50aXRpZXM6IEFycmF5PFRydUVudGl0eUJhc2U+ID0gW10sXHJcbiAgICBvcGVuQXNEZXRhaVZpZXc6IGJvb2xlYW4gPSBmYWxzZSk6IFRydVdpbmRvd0V2ZW50QXJncyA9PiB7XHJcblxyXG4gICAgdmFyIHdpbmRvd0V2ZW50ID0gbmV3IFRydVdpbmRvd0V2ZW50QXJncygpO1xyXG4gICAgd2luZG93RXZlbnQudGFibGVOYW1lID0gdGFibGVOYW1lO1xyXG4gICAgd2luZG93RXZlbnQudGFibGVQbHVyYWxOYW1lID0gdGFibGVQbHVyYWxOYW1lO1xyXG4gICAgd2luZG93RXZlbnQudGFibGVQbHVyYWxMYWJlbCA9IHRhYmxlUGx1cmFsTGFiZWw7XHJcbiAgICB3aW5kb3dFdmVudC5jb250ZXh0RmlsdGVycyA9IHRoaXMuY29udGV4dEZpbHRlcnMuZmlsdGVycztcclxuICAgIHdpbmRvd0V2ZW50LnZpZXdzID0gW1xyXG4gICAgICB7XHJcbiAgICAgICAgYWN0aXZlOiB0cnVlLFxyXG4gICAgICAgIGVudGl0aWVzOiBlbnRpdGllcyxcclxuICAgICAgICBlbnRpdHlJbmRleDogMCxcclxuICAgICAgICBpc0RpcnR5OiBmYWxzZSxcclxuICAgICAgICBpc0VkaXRpbmc6IGZhbHNlLFxyXG4gICAgICAgIGlzSW52YWxpZDogZmFsc2UsXHJcbiAgICAgICAgb3BlbkFzRGV0YWlWaWV3OiBvcGVuQXNEZXRhaVZpZXcsXHJcbiAgICAgICAgY29tcG9uZW50TmFtZTogY29tcG9uZW50TmFtZVxyXG4gICAgICB9XHJcbiAgICBdO1xyXG4gICAgcmV0dXJuIHdpbmRvd0V2ZW50O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbnMgYSB3aW5kb3cgZm9yIGEgZGlyZWN0aXZlLlxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkaXJlY3RpdmVOYW1lIC0gbmFtZSBvZiB0aGUgdmlldyBkaXJlY3RpdmUuXHJcbiAgICogQHBhcmFtIHtvYmplY3R9IGRhdGEgLSB2YWx1ZXMgdG8gcGFzcyB0byB0aGUgdmlldy5cclxuICAgKiBAcGFyYW0ge29wdGlvbmFsIGJvb2x9IHNob3dJZkV4aXN0cyAtIGlmIHRydWUgYW5kIGEgdmlldyBhbHJlYWR5IGV4aXN0cyBmb3IgdGhlIFxyXG4gICAqIGRpcmVjdGl2ZSwgdGhlbiBzaG93cyBpdHMgd2luZG93IGluc3RlYWQgb2YgY3JlYXRpbmcgYSBuZXcgb25lLlxyXG4gICAqL1xyXG4gIGFkZFdpbmRvdyA9IChcclxuICAgIHRhYmxlTmFtZTogc3RyaW5nLFxyXG4gICAgdGFibGVQbHVyYWxOYW1lOiBzdHJpbmcsXHJcbiAgICB0YWJsZVBsdXJhbExhYmVsOiBzdHJpbmcsXHJcbiAgICBjb21wb25lbnROYW1lOiBzdHJpbmcsXHJcbiAgICBlbnRpdGllczogQXJyYXk8VHJ1RW50aXR5QmFzZT4gPSBbXSxcclxuICAgIG9wZW5Bc0RldGFpVmlldzogYm9vbGVhbiA9IGZhbHNlLFxyXG4gICAgc2hvd05hdmlnYXRpb246IGJvb2xlYW4gPSB0cnVlLFxyXG4gICAgc2hvd0lmRXhpc3RzPzogYm9vbGVhbikgPT4ge1xyXG4gICAgdGhpcy53aW5kb3dFdmVudEhhbmRsZXIub3Blbih0aGlzLmdldFdpbmRvd0V2ZW50KHRhYmxlTmFtZSwgdGFibGVQbHVyYWxOYW1lLCB0YWJsZVBsdXJhbExhYmVsLCBjb21wb25lbnROYW1lLCBlbnRpdGllcywgb3BlbkFzRGV0YWlWaWV3KSk7XHJcbiAgfVxyXG5cclxuICB3aW5kb3dUaXRsZXNCeUJhc2VUZXh0OiBhbnkgPSB7fTtcclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyBhIHVuaXF1ZSBzdHJpbmcgZm9yIHRoZSBiYXNlIG5hbWUgb2YgYSB3aW5kb3cuICBBdCBmaXJzdCwgcmV0dXJucyB0aGUgaW5wdXQuXHJcbiAgICogRm9yIHNlY29uZCBjYWxsIHdpdGggc2FtZSBiYXNlIG5hbWUsIHJldHVybnMgdGhlIG5hbWUgcGx1cyAnIC0gMicgYW5kIHNvIG9uLiAgV2hlblxyXG4gICAqIGFsbCBvZiB0aGUgdGl0bGVzIGZvciB0aGUgYmFzZSBuYW1lIGFyZSByZWxlYXNlZCwgdGhlbiB0aGUgbmV4dCB0aXRsZSB3aWxsIGhhdmUgbm9cclxuICAgKiBzdWZmaXguXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRleHQgLSBiYXNlIG5hbWUgb2YgYSB3aW5kb3cuXHJcbiAgICogQHJldHVybnMge29iamVjdH0gLSB0ZXh0OiB0aGUgdW5pcXVlIHRleHQgYW5kIHJlbGVhc2UoKTogcmVsZWFzZXMgdGhlIG5hbWUgZm9yXHJcbiAgICogIGZ1dHVyZSB3aW5kb3dzLlxyXG4gICAqL1xyXG4gIGdldFVuaXF1ZVRpdGxlID0gKHRleHQ6IHN0cmluZyk6IFRydURlc2t0b3BUaXRsZSA9PiB7XHJcbiAgICB2YXIgYmFzZVRleHQgPSB0ZXh0O1xyXG4gICAgdmFyIHRpdGxlcyA9IHRoaXMud2luZG93VGl0bGVzQnlCYXNlVGV4dFtiYXNlVGV4dF07XHJcbiAgICBpZiAoIXRpdGxlcykge1xyXG4gICAgICB0aGlzLndpbmRvd1RpdGxlc0J5QmFzZVRleHRbYmFzZVRleHRdID0gdGl0bGVzID0ge1xyXG4gICAgICAgIGRpc3BlbnNlZENvdW50OiAxLFxyXG4gICAgICAgIGFjdGl2ZUNvdW50OiAxXHJcbiAgICAgIH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICArK3RpdGxlcy5hY3RpdmVDb3VudDtcclxuICAgICAgdGV4dCArPSAnIC0gJyArICgrK3RpdGxlcy5kaXNwZW5zZWRDb3VudCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICB0ZXh0OiB0ZXh0LFxyXG4gICAgICByZWxlYXNlOiAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRpdGxlcy5hY3RpdmVDb3VudCA9PT0gMSlcclxuICAgICAgICAgIGRlbGV0ZSB0aGlzLndpbmRvd1RpdGxlc0J5QmFzZVRleHRbYmFzZVRleHRdO1xyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgLS10aXRsZXMuYWN0aXZlQ291bnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,108 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { TruDesktopViewConfig } from '../classes/tru-desktop-view-config';
3
+ import * as i0 from "@angular/core";
4
+ export class TruDesktopService {
5
+ /**
6
+ * @tru.doc function
7
+ * @name DesktopService.createDesktop
8
+ * @module tru.desktop
9
+ *
10
+ * @description
11
+ * Creates a new desktop instance.
12
+ *
13
+ * @returns {object} Desktop
14
+ */
15
+ createDesktop = function () {
16
+ var desktop = new Desktop();
17
+ return desktop;
18
+ };
19
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
20
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopService });
21
+ }
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruDesktopService, decorators: [{
23
+ type: Injectable
24
+ }] });
25
+ /**
26
+ * @tru.desktop.doc class
27
+ * @name DesktopService.Desktop
28
+ * @module tru.desktop
29
+ *
30
+ * @description Desktop defines a logical desktop. Any non-dom properties and elements needed by the desktop should
31
+ * be defined in this class
32
+ *
33
+ */
34
+ export class Desktop {
35
+ options = new DesktopOptions();
36
+ windowConfig = new WindowConfig();
37
+ viewConfig = new TruDesktopViewConfig();
38
+ }
39
+ ;
40
+ /**
41
+ * @tru.desktop.doc class
42
+ * @name DesktopService.DesktopOptions
43
+ * @module tru.desktop
44
+ *
45
+ * @description Default DesktopOptions class. DesktopOptions are defined by the application developer and overlaid
46
+ * over this object.
47
+ *
48
+ */
49
+ export class DesktopOptions {
50
+ allowDirtyClose = false;
51
+ allowInvalidClose = false;
52
+ cancelEditingOnNavigation = false;
53
+ canCloseFn = undefined;
54
+ canNavigateFn = undefined;
55
+ displayViewportDimensions = false;
56
+ enableAnimation = true;
57
+ enableWindowCascading = true;
58
+ logoUrl = undefined;
59
+ menubarHeight = 32;
60
+ menubarConfig = undefined;
61
+ showLaunchMenu = false;
62
+ }
63
+ ;
64
+ /**
65
+ * @tru.desktop.doc class
66
+ * @name DesktopService.WindowConfig
67
+ * @module tru.desktop
68
+ *
69
+ * @description
70
+ * Default configuration object for a window. windowConfig properties can be defined by the application developer and overlaid
71
+ * over this object.
72
+ *
73
+ */
74
+ export class WindowConfig {
75
+ tableName = '';
76
+ tablePluralName = '';
77
+ tablePluralLabel = '';
78
+ active = true;
79
+ bottom = 'auto';
80
+ globals = undefined;
81
+ height = '400px';
82
+ isDirty = false;
83
+ isInvalid = false;
84
+ left = 0;
85
+ maximized = undefined;
86
+ minHeight = '200px';
87
+ minimized = false;
88
+ minWidth = '200px';
89
+ outOfBounds = false;
90
+ savedPosition = {};
91
+ right = 'auto';
92
+ scope = undefined;
93
+ title = '';
94
+ top = 0;
95
+ width = '400px';
96
+ views = Array();
97
+ zIndex = -1;
98
+ isReadOnly = false;
99
+ unsubscribes = [];
100
+ wasReadOnly = false;
101
+ contextFilters = [];
102
+ destroy = () => {
103
+ while (this.unsubscribes.length)
104
+ this?.unsubscribes?.shift()?.call();
105
+ };
106
+ }
107
+ ;
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRlc2t0b3Atc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3NlcnZpY2VzL3RydS1kZXNrdG9wLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFHMUUsTUFBTSxPQUFPLGlCQUFpQjtJQUM1Qjs7Ozs7Ozs7O09BU0c7SUFDSSxhQUFhLEdBQUc7UUFDckIsSUFBSSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM1QixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDLENBQUE7dUdBZFUsaUJBQWlCOzJHQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVU7O0FBbUJYOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxPQUFPLE9BQU87SUFDbEIsT0FBTyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7SUFDL0IsWUFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDbEMsVUFBVSxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztDQUN6QztBQUFBLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sT0FBTyxjQUFjO0lBQ3pCLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDeEIsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQzFCLHlCQUF5QixHQUFHLEtBQUssQ0FBQztJQUNsQyxVQUFVLEdBQUcsU0FBUyxDQUFDO0lBQ3ZCLGFBQWEsR0FBRyxTQUFTLENBQUM7SUFDMUIseUJBQXlCLEdBQUcsS0FBSyxDQUFDO0lBQ2xDLGVBQWUsR0FBRyxJQUFJLENBQUM7SUFDdkIscUJBQXFCLEdBQUcsSUFBSSxDQUFDO0lBQzdCLE9BQU8sR0FBRyxTQUFTLENBQUM7SUFDcEIsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUNuQixhQUFhLEdBQUcsU0FBUyxDQUFDO0lBQzFCLGNBQWMsR0FBRyxLQUFLLENBQUM7Q0FDeEI7QUFBQSxDQUFDO0FBR0Y7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxPQUFPLFlBQVk7SUFDdkIsU0FBUyxHQUFXLEVBQUUsQ0FBQztJQUN2QixlQUFlLEdBQVcsRUFBRSxDQUFDO0lBQzdCLGdCQUFnQixHQUFXLEVBQUUsQ0FBQztJQUU5QixNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ2QsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUNoQixPQUFPLEdBQUcsU0FBUyxDQUFDO0lBQ3BCLE1BQU0sR0FBRyxPQUFPLENBQUM7SUFDakIsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUNoQixTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ2xCLElBQUksR0FBRyxDQUFDLENBQUM7SUFDVCxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQ3RCLFNBQVMsR0FBRyxPQUFPLENBQUM7SUFDcEIsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQixRQUFRLEdBQUcsT0FBTyxDQUFDO0lBQ25CLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDcEIsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUNuQixLQUFLLEdBQUcsTUFBTSxDQUFDO0lBQ2YsS0FBSyxHQUFHLFNBQVMsQ0FBQztJQUNsQixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ1gsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUNSLEtBQUssR0FBRyxPQUFPLENBQUM7SUFDaEIsS0FBSyxHQUFHLEtBQUssRUFBd0IsQ0FBQztJQUN0QyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDWixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQ25CLFlBQVksR0FBZSxFQUFFLENBQUM7SUFDOUIsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNwQixjQUFjLEdBQTRCLEVBQUUsQ0FBQztJQUU3QyxPQUFPLEdBQUcsR0FBRyxFQUFFO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU07WUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3ZFLENBQUMsQ0FBQTtDQUNGO0FBQUEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFRydUNvbnRleHRGaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL3RydS1jb250ZXh0LWZpbHRlcic7XHJcbmltcG9ydCB7IFRydURlc2t0b3BWaWV3Q29uZmlnIH0gZnJvbSAnLi4vY2xhc3Nlcy90cnUtZGVza3RvcC12aWV3LWNvbmZpZyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXNrdG9wU2VydmljZSB7XHJcbiAgLyoqXHJcbiAgICogQHRydS5kb2MgZnVuY3Rpb25cclxuICAgKiBAbmFtZSBEZXNrdG9wU2VydmljZS5jcmVhdGVEZXNrdG9wXHJcbiAgICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gICAqXHJcbiAgICogQGRlc2NyaXB0aW9uXHJcbiAgICogQ3JlYXRlcyBhIG5ldyBkZXNrdG9wIGluc3RhbmNlLlxyXG4gICAqXHJcbiAgICogQHJldHVybnMge29iamVjdH0gRGVza3RvcFxyXG4gICAqL1xyXG4gIHB1YmxpYyBjcmVhdGVEZXNrdG9wID0gZnVuY3Rpb24gKCkge1xyXG4gICAgdmFyIGRlc2t0b3AgPSBuZXcgRGVza3RvcCgpO1xyXG4gICAgcmV0dXJuIGRlc2t0b3A7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEB0cnUuZGVza3RvcC5kb2MgY2xhc3NcclxuICogQG5hbWUgRGVza3RvcFNlcnZpY2UuRGVza3RvcFxyXG4gKiBAbW9kdWxlIHRydS5kZXNrdG9wXHJcbiAqXHJcbiAqIEBkZXNjcmlwdGlvbiBEZXNrdG9wIGRlZmluZXMgYSBsb2dpY2FsIGRlc2t0b3AuICBBbnkgbm9uLWRvbSBwcm9wZXJ0aWVzIGFuZCBlbGVtZW50cyBuZWVkZWQgYnkgdGhlIGRlc2t0b3Agc2hvdWxkXHJcbiAqIGJlIGRlZmluZWQgaW4gdGhpcyBjbGFzc1xyXG4gKlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIERlc2t0b3Age1xyXG4gIG9wdGlvbnMgPSBuZXcgRGVza3RvcE9wdGlvbnMoKTtcclxuICB3aW5kb3dDb25maWcgPSBuZXcgV2luZG93Q29uZmlnKCk7XHJcbiAgdmlld0NvbmZpZyA9IG5ldyBUcnVEZXNrdG9wVmlld0NvbmZpZygpO1xyXG59O1xyXG5cclxuLyoqXHJcbiAqIEB0cnUuZGVza3RvcC5kb2MgY2xhc3NcclxuICogQG5hbWUgRGVza3RvcFNlcnZpY2UuRGVza3RvcE9wdGlvbnNcclxuICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb24gRGVmYXVsdCBEZXNrdG9wT3B0aW9ucyBjbGFzcy4gIERlc2t0b3BPcHRpb25zIGFyZSBkZWZpbmVkIGJ5IHRoZSBhcHBsaWNhdGlvbiBkZXZlbG9wZXIgYW5kIG92ZXJsYWlkXHJcbiAqIG92ZXIgdGhpcyBvYmplY3QuXHJcbiAqXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRGVza3RvcE9wdGlvbnMge1xyXG4gIGFsbG93RGlydHlDbG9zZSA9IGZhbHNlO1xyXG4gIGFsbG93SW52YWxpZENsb3NlID0gZmFsc2U7XHJcbiAgY2FuY2VsRWRpdGluZ09uTmF2aWdhdGlvbiA9IGZhbHNlO1xyXG4gIGNhbkNsb3NlRm4gPSB1bmRlZmluZWQ7XHJcbiAgY2FuTmF2aWdhdGVGbiA9IHVuZGVmaW5lZDtcclxuICBkaXNwbGF5Vmlld3BvcnREaW1lbnNpb25zID0gZmFsc2U7XHJcbiAgZW5hYmxlQW5pbWF0aW9uID0gdHJ1ZTtcclxuICBlbmFibGVXaW5kb3dDYXNjYWRpbmcgPSB0cnVlO1xyXG4gIGxvZ29VcmwgPSB1bmRlZmluZWQ7XHJcbiAgbWVudWJhckhlaWdodCA9IDMyO1xyXG4gIG1lbnViYXJDb25maWcgPSB1bmRlZmluZWQ7XHJcbiAgc2hvd0xhdW5jaE1lbnUgPSBmYWxzZTtcclxufTtcclxuXHJcblxyXG4vKipcclxuICogQHRydS5kZXNrdG9wLmRvYyBjbGFzc1xyXG4gKiBAbmFtZSBEZXNrdG9wU2VydmljZS5XaW5kb3dDb25maWdcclxuICogQG1vZHVsZSB0cnUuZGVza3RvcFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICogRGVmYXVsdCBjb25maWd1cmF0aW9uIG9iamVjdCBmb3IgYSB3aW5kb3cuIHdpbmRvd0NvbmZpZyBwcm9wZXJ0aWVzIGNhbiBiZSBkZWZpbmVkIGJ5IHRoZSBhcHBsaWNhdGlvbiBkZXZlbG9wZXIgYW5kIG92ZXJsYWlkXHJcbiAqIG92ZXIgdGhpcyBvYmplY3QuXHJcbiAqXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgV2luZG93Q29uZmlnIHtcclxuICB0YWJsZU5hbWU6IHN0cmluZyA9ICcnO1xyXG4gIHRhYmxlUGx1cmFsTmFtZTogc3RyaW5nID0gJyc7XHJcbiAgdGFibGVQbHVyYWxMYWJlbDogc3RyaW5nID0gJyc7XHJcblxyXG4gIGFjdGl2ZSA9IHRydWU7XHJcbiAgYm90dG9tID0gJ2F1dG8nO1xyXG4gIGdsb2JhbHMgPSB1bmRlZmluZWQ7XHJcbiAgaGVpZ2h0ID0gJzQwMHB4JztcclxuICBpc0RpcnR5ID0gZmFsc2U7XHJcbiAgaXNJbnZhbGlkID0gZmFsc2U7XHJcbiAgbGVmdCA9IDA7XHJcbiAgbWF4aW1pemVkID0gdW5kZWZpbmVkO1xyXG4gIG1pbkhlaWdodCA9ICcyMDBweCc7XHJcbiAgbWluaW1pemVkID0gZmFsc2U7XHJcbiAgbWluV2lkdGggPSAnMjAwcHgnO1xyXG4gIG91dE9mQm91bmRzID0gZmFsc2U7XHJcbiAgc2F2ZWRQb3NpdGlvbiA9IHt9O1xyXG4gIHJpZ2h0ID0gJ2F1dG8nO1xyXG4gIHNjb3BlID0gdW5kZWZpbmVkO1xyXG4gIHRpdGxlID0gJyc7XHJcbiAgdG9wID0gMDtcclxuICB3aWR0aCA9ICc0MDBweCc7XHJcbiAgdmlld3MgPSBBcnJheTxUcnVEZXNrdG9wVmlld0NvbmZpZz4oKTtcclxuICB6SW5kZXggPSAtMTtcclxuICBpc1JlYWRPbmx5ID0gZmFsc2U7XHJcbiAgdW5zdWJzY3JpYmVzOiBBcnJheTxhbnk+ID0gW107XHJcbiAgd2FzUmVhZE9ubHkgPSBmYWxzZTtcclxuICBjb250ZXh0RmlsdGVyczogQXJyYXk8VHJ1Q29udGV4dEZpbHRlcj4gPSBbXTtcclxuXHJcbiAgZGVzdHJveSA9ICgpID0+IHtcclxuICAgIHdoaWxlICh0aGlzLnVuc3Vic2NyaWJlcy5sZW5ndGgpIHRoaXM/LnVuc3Vic2NyaWJlcz8uc2hpZnQoKT8uY2FsbCgpO1xyXG4gIH1cclxufTtcclxuIl19
@@ -0,0 +1,25 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class TruWindowActionEventHandler {
5
+ save$ = new Subject();
6
+ revert$ = new Subject();
7
+ onSave = () => {
8
+ return this.save$;
9
+ };
10
+ onRevert = () => {
11
+ return this.revert$;
12
+ };
13
+ save = () => {
14
+ this.save$.next(null);
15
+ };
16
+ revert = () => {
17
+ this.revert$.next(null);
18
+ };
19
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowActionEventHandler, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
20
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowActionEventHandler });
21
+ }
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowActionEventHandler, decorators: [{
23
+ type: Injectable
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXdpbmRvdy1hY3Rpb24tZXZlbnQtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wL3NlcnZpY2VzL3RydS13aW5kb3ctYWN0aW9uLWV2ZW50LWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUcvQixNQUFNLE9BQU8sMkJBQTJCO0lBRTlCLEtBQUssR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUNyQyxPQUFPLEdBQWtCLElBQUksT0FBTyxFQUFFLENBQUM7SUFFL0MsTUFBTSxHQUFHLEdBQUcsRUFBRTtRQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDLENBQUE7SUFFRCxRQUFRLEdBQUcsR0FBRyxFQUFFO1FBQ2QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUMsQ0FBQTtJQUVELElBQUksR0FBRyxHQUFHLEVBQUU7UUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDLENBQUE7SUFFRCxNQUFNLEdBQUcsR0FBRyxFQUFFO1FBQ1osSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQyxDQUFBO3VHQW5CVSwyQkFBMkI7MkdBQTNCLDJCQUEyQjs7MkZBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgVHJ1V2luZG93QWN0aW9uRXZlbnRIYW5kbGVyIHtcclxuXHJcbiAgcHJpdmF0ZSBzYXZlJDogU3ViamVjdDxudWxsPiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgcHJpdmF0ZSByZXZlcnQkOiBTdWJqZWN0PG51bGw+ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgb25TYXZlID0gKCkgPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2F2ZSQ7XHJcbiAgfVxyXG5cclxuICBvblJldmVydCA9ICgpID0+IHtcclxuICAgIHJldHVybiB0aGlzLnJldmVydCQ7XHJcbiAgfVxyXG5cclxuICBzYXZlID0gKCkgPT4ge1xyXG4gICAgdGhpcy5zYXZlJC5uZXh0KG51bGwpO1xyXG4gIH1cclxuXHJcbiAgcmV2ZXJ0ID0gKCkgPT4ge1xyXG4gICAgdGhpcy5yZXZlcnQkLm5leHQobnVsbCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,24 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class TruWindowEventArgs {
4
+ title = '';
5
+ tableName = '';
6
+ tablePluralName = '';
7
+ tablePluralLabel = '';
8
+ context = {};
9
+ contentBottom = '23px';
10
+ statusbarDirective = 'tru-statusbar';
11
+ height = '450px';
12
+ width = '900px';
13
+ views = [{}];
14
+ contextFilters = [];
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowEventArgs, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
16
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowEventArgs, providedIn: 'root' });
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruWindowEventArgs, decorators: [{
19
+ type: Injectable,
20
+ args: [{
21
+ providedIn: 'root'
22
+ }]
23
+ }] });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXdpbmRvdy1ldmVudC1hcmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL2Rlc2t0b3Avc2VydmljZXMvdHJ1LXdpbmRvdy1ldmVudC1hcmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTNDLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsS0FBSyxHQUFXLEVBQUUsQ0FBQztJQUNuQixTQUFTLEdBQVcsRUFBRSxDQUFDO0lBQ3ZCLGVBQWUsR0FBVyxFQUFFLENBQUM7SUFDN0IsZ0JBQWdCLEdBQVcsRUFBRSxDQUFDO0lBQzlCLE9BQU8sR0FBUSxFQUFFLENBQUM7SUFDbEIsYUFBYSxHQUFXLE1BQU0sQ0FBQTtJQUM5QixrQkFBa0IsR0FBVyxlQUFlLENBQUM7SUFDN0MsTUFBTSxHQUFXLE9BQU8sQ0FBQztJQUN6QixLQUFLLEdBQVcsT0FBTyxDQUFDO0lBQ3hCLEtBQUssR0FBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM1QixjQUFjLEdBQTRCLEVBQUUsQ0FBQzt1R0FYbEMsa0JBQWtCOzJHQUFsQixrQkFBa0IsY0FGakIsTUFBTTs7MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJ1Q29udGV4dEZpbHRlciB9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvdHJ1LWNvbnRleHQtZmlsdGVyJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRydVdpbmRvd0V2ZW50QXJncyB7XHJcbiAgdGl0bGU6IHN0cmluZyA9ICcnO1xyXG4gIHRhYmxlTmFtZTogc3RyaW5nID0gJyc7XHJcbiAgdGFibGVQbHVyYWxOYW1lOiBzdHJpbmcgPSAnJztcclxuICB0YWJsZVBsdXJhbExhYmVsOiBzdHJpbmcgPSAnJztcclxuICBjb250ZXh0OiBhbnkgPSB7fTtcclxuICBjb250ZW50Qm90dG9tOiBzdHJpbmcgPSAnMjNweCdcclxuICBzdGF0dXNiYXJEaXJlY3RpdmU6IHN0cmluZyA9ICd0cnUtc3RhdHVzYmFyJztcclxuICBoZWlnaHQ6IHN0cmluZyA9ICc0NTBweCc7XHJcbiAgd2lkdGg6IHN0cmluZyA9ICc5MDBweCc7XHJcbiAgdmlld3M6IEFycmF5PG9iamVjdD4gPSBbe31dO1xyXG4gIGNvbnRleHRGaWx0ZXJzOiBBcnJheTxUcnVDb250ZXh0RmlsdGVyPiA9IFtdO1xyXG59XHJcbiJdfQ==