@smartbit4all/ng-client 6.0.35 → 7.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1007) hide show
  1. package/MIGRATION-7.0.md +1722 -0
  2. package/README.md +199 -386
  3. package/WIDGETS.md +206 -0
  4. package/fesm2022/smartbit4all-ng-client.mjs +15013 -17559
  5. package/fesm2022/smartbit4all-ng-client.mjs.map +1 -1
  6. package/package.json +15 -18
  7. package/smartbit4all-ng-client-7.0.1.tgz +0 -0
  8. package/types/smartbit4all-ng-client.d.ts +10350 -0
  9. package/esm2022/lib/component-factory-service/component-factory-service.module.mjs +0 -17
  10. package/esm2022/lib/component-factory-service/component-factory-service.service.mjs +0 -35
  11. package/esm2022/lib/component-factory-service/projects.mjs +0 -6
  12. package/esm2022/lib/session/api/api/api.mjs +0 -4
  13. package/esm2022/lib/session/api/api/session.service.mjs +0 -306
  14. package/esm2022/lib/session/api/configuration.mjs +0 -91
  15. package/esm2022/lib/session/api/encoder.mjs +0 -19
  16. package/esm2022/lib/session/api/index.mjs +0 -3
  17. package/esm2022/lib/session/api/model/accountInfo.mjs +0 -13
  18. package/esm2022/lib/session/api/model/apiError.mjs +0 -13
  19. package/esm2022/lib/session/api/model/authenticationProviderData.mjs +0 -13
  20. package/esm2022/lib/session/api/model/getAuthenticationProvidersResponse.mjs +0 -2
  21. package/esm2022/lib/session/api/model/models.mjs +0 -9
  22. package/esm2022/lib/session/api/model/refreshSessionRequest.mjs +0 -13
  23. package/esm2022/lib/session/api/model/session.mjs +0 -2
  24. package/esm2022/lib/session/api/model/sessionInfoData.mjs +0 -2
  25. package/esm2022/lib/session/api/model/userActivityLog.mjs +0 -13
  26. package/esm2022/lib/session/api/param.mjs +0 -2
  27. package/esm2022/lib/session/api/variables.mjs +0 -9
  28. package/esm2022/lib/session/cookie-service/smart-cookie.service.mjs +0 -225
  29. package/esm2022/lib/session/projects.mjs +0 -12
  30. package/esm2022/lib/session/smart-backend-bootstrap.config.mjs +0 -2
  31. package/esm2022/lib/session/smart-backend-bootstrap.service.mjs +0 -217
  32. package/esm2022/lib/session/smart-default-error-ui.service.mjs +0 -134
  33. package/esm2022/lib/session/smart-error-catching.interceptor.mjs +0 -109
  34. package/esm2022/lib/session/smart-header-maintainer.interceptor.mjs +0 -44
  35. package/esm2022/lib/session/smart-session-handler.service.mjs +0 -7
  36. package/esm2022/lib/session/smart-session.module.mjs +0 -58
  37. package/esm2022/lib/session/smart-session.service.mjs +0 -309
  38. package/esm2022/lib/session/smart-timer/smart-session-timer.component.mjs +0 -59
  39. package/esm2022/lib/shared/projects.mjs +0 -4
  40. package/esm2022/lib/shared/shared.module.mjs +0 -19
  41. package/esm2022/lib/shared/smart-tooltip.directive.mjs +0 -58
  42. package/esm2022/lib/shared/smarttable.date-pipe.mjs +0 -43
  43. package/esm2022/lib/smart-client/projects.mjs +0 -4
  44. package/esm2022/lib/smart-client/smart-component-api-client.mjs +0 -935
  45. package/esm2022/lib/smart-client/smart-file-uploader/smart-file-uploader.component.mjs +0 -79
  46. package/esm2022/lib/smart-client/smart.component.mjs +0 -88
  47. package/esm2022/lib/smart-client/smart.service.mjs +0 -71
  48. package/esm2022/lib/smart-component-layout/api/api/api.mjs +0 -4
  49. package/esm2022/lib/smart-component-layout/api/api/default.service.mjs +0 -133
  50. package/esm2022/lib/smart-component-layout/api/api.module.mjs +0 -40
  51. package/esm2022/lib/smart-component-layout/api/configuration.mjs +0 -91
  52. package/esm2022/lib/smart-component-layout/api/encoder.mjs +0 -19
  53. package/esm2022/lib/smart-component-layout/api/index.mjs +0 -7
  54. package/esm2022/lib/smart-component-layout/api/model/componentType.mjs +0 -18
  55. package/esm2022/lib/smart-component-layout/api/model/componentWidgetType.mjs +0 -22
  56. package/esm2022/lib/smart-component-layout/api/model/layoutDefinitionDescriptor.mjs +0 -2
  57. package/esm2022/lib/smart-component-layout/api/model/layoutDirection.mjs +0 -17
  58. package/esm2022/lib/smart-component-layout/api/model/models.mjs +0 -10
  59. package/esm2022/lib/smart-component-layout/api/model/smartComponentLayoutDefinition.mjs +0 -2
  60. package/esm2022/lib/smart-component-layout/api/model/smartComponentWidgetDefinition.mjs +0 -2
  61. package/esm2022/lib/smart-component-layout/api/model/toolbarAlignment.mjs +0 -17
  62. package/esm2022/lib/smart-component-layout/api/model/toolbarDirection.mjs +0 -17
  63. package/esm2022/lib/smart-component-layout/api/model/toolbarProperties.mjs +0 -2
  64. package/esm2022/lib/smart-component-layout/api/param.mjs +0 -2
  65. package/esm2022/lib/smart-component-layout/api/variables.mjs +0 -9
  66. package/esm2022/lib/smart-component-layout/projects.mjs +0 -8
  67. package/esm2022/lib/smart-component-layout/smart-component-layout-utility.mjs +0 -169
  68. package/esm2022/lib/smart-component-layout/smart-component-layout.component.mjs +0 -438
  69. package/esm2022/lib/smart-component-layout/smart-component-layout.module.mjs +0 -57
  70. package/esm2022/lib/smart-diagram/api/api/api.mjs +0 -4
  71. package/esm2022/lib/smart-diagram/api/api/diagramService.service.mjs +0 -141
  72. package/esm2022/lib/smart-diagram/api/api.module.mjs +0 -40
  73. package/esm2022/lib/smart-diagram/api/configuration.mjs +0 -91
  74. package/esm2022/lib/smart-diagram/api/encoder.mjs +0 -19
  75. package/esm2022/lib/smart-diagram/api/index.mjs +0 -7
  76. package/esm2022/lib/smart-diagram/api/model/diagramColor.mjs +0 -13
  77. package/esm2022/lib/smart-diagram/api/model/diagramDataContainer.mjs +0 -2
  78. package/esm2022/lib/smart-diagram/api/model/diagramDataItem.mjs +0 -13
  79. package/esm2022/lib/smart-diagram/api/model/diagramDataSet.mjs +0 -2
  80. package/esm2022/lib/smart-diagram/api/model/diagramDescriptor.mjs +0 -2
  81. package/esm2022/lib/smart-diagram/api/model/diagramModel.mjs +0 -2
  82. package/esm2022/lib/smart-diagram/api/model/diagramShape.mjs +0 -2
  83. package/esm2022/lib/smart-diagram/api/model/drawTime.mjs +0 -18
  84. package/esm2022/lib/smart-diagram/api/model/labelText.mjs +0 -2
  85. package/esm2022/lib/smart-diagram/api/model/models.mjs +0 -10
  86. package/esm2022/lib/smart-diagram/api/param.mjs +0 -2
  87. package/esm2022/lib/smart-diagram/api/variables.mjs +0 -9
  88. package/esm2022/lib/smart-diagram/component/default-smart-diagram-options.provider.mjs +0 -312
  89. package/esm2022/lib/smart-diagram/component/smart-diagram.component.mjs +0 -359
  90. package/esm2022/lib/smart-diagram/component/smart-diagram.module.mjs +0 -40
  91. package/esm2022/lib/smart-diagram/component/smart-diagram.util.mjs +0 -10
  92. package/esm2022/lib/smart-diagram/projects.mjs +0 -5
  93. package/esm2022/lib/smart-dialog/projects.mjs +0 -8
  94. package/esm2022/lib/smart-dialog/smartdialog.component.mjs +0 -54
  95. package/esm2022/lib/smart-dialog/smartdialog.model.mjs +0 -16
  96. package/esm2022/lib/smart-dialog/smartdialog.module.mjs +0 -46
  97. package/esm2022/lib/smart-dialog/smartdialog.service.mjs +0 -86
  98. package/esm2022/lib/smart-expandable-section/expandable-section.component.mjs +0 -101
  99. package/esm2022/lib/smart-expandable-section/expandable-section.model.mjs +0 -12
  100. package/esm2022/lib/smart-expandable-section/projects.mjs +0 -8
  101. package/esm2022/lib/smart-expandable-section/smart-expandable-section.module.mjs +0 -57
  102. package/esm2022/lib/smart-expandable-section/smart-expandable-section.service.mjs +0 -14
  103. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBoolOperator.mjs +0 -17
  104. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderField.mjs +0 -2
  105. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderGroup.mjs +0 -8
  106. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderModel.mjs +0 -2
  107. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionData.mjs +0 -2
  108. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionDataType.mjs +0 -20
  109. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionField.mjs +0 -2
  110. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionFieldList.mjs +0 -2
  111. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionFieldWidgetType.mjs +0 -28
  112. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionList.mjs +0 -2
  113. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOperandData.mjs +0 -2
  114. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOperation.mjs +0 -32
  115. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOrderBy.mjs +0 -18
  116. package/esm2022/lib/smart-filter/api/filter/model/model.mjs +0 -16
  117. package/esm2022/lib/smart-filter/api/filter/model/searchIndexObjectDefinitionData.mjs +0 -2
  118. package/esm2022/lib/smart-filter/api/filter/model/searchIndexPropertyDefinitionData.mjs +0 -13
  119. package/esm2022/lib/smart-filter/api/value/model/value.mjs +0 -13
  120. package/esm2022/lib/smart-filter/projects.mjs +0 -9
  121. package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-expression-field/smart-filter-expression-field.component.mjs +0 -14
  122. package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-simple/components/smart-filter-simple-field/smart-filter-simple-field.component.mjs +0 -166
  123. package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-simple/smart-filter-simple.component.mjs +0 -45
  124. package/esm2022/lib/smart-filter/smart-filter/smart-filter.component.mjs +0 -36
  125. package/esm2022/lib/smart-filter/smart-filter/smart-filter.service.mjs +0 -31
  126. package/esm2022/lib/smart-filter/smart-filter.model.mjs +0 -13
  127. package/esm2022/lib/smart-filter/smart-filter.module.mjs +0 -33
  128. package/esm2022/lib/smart-filter-editor/api/api/api.mjs +0 -4
  129. package/esm2022/lib/smart-filter-editor/api/api/filter.service.mjs +0 -198
  130. package/esm2022/lib/smart-filter-editor/api/api.module.mjs +0 -40
  131. package/esm2022/lib/smart-filter-editor/api/configuration.mjs +0 -91
  132. package/esm2022/lib/smart-filter-editor/api/encoder.mjs +0 -19
  133. package/esm2022/lib/smart-filter-editor/api/index.mjs +0 -7
  134. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBoolOperator.mjs +0 -17
  135. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilder.mjs +0 -2
  136. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderApiConfig.mjs +0 -13
  137. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderField.mjs +0 -2
  138. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderGroup.mjs +0 -8
  139. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderModel.mjs +0 -2
  140. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderUiModel.mjs +0 -7
  141. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionData.mjs +0 -2
  142. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionDataType.mjs +0 -20
  143. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionField.mjs +0 -2
  144. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldEditor.mjs +0 -2
  145. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldList.mjs +0 -2
  146. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldWidgetType.mjs +0 -28
  147. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionList.mjs +0 -2
  148. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOperandData.mjs +0 -2
  149. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOperation.mjs +0 -32
  150. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOrderBy.mjs +0 -19
  151. package/esm2022/lib/smart-filter-editor/api/model/models.mjs +0 -20
  152. package/esm2022/lib/smart-filter-editor/api/model/searchPageConfig.mjs +0 -2
  153. package/esm2022/lib/smart-filter-editor/api/model/smartFilterType.mjs +0 -17
  154. package/esm2022/lib/smart-filter-editor/api/param.mjs +0 -2
  155. package/esm2022/lib/smart-filter-editor/api/variables.mjs +0 -9
  156. package/esm2022/lib/smart-filter-editor/filter-utils.mjs +0 -3
  157. package/esm2022/lib/smart-filter-editor/filterExpressionBuilderApiActions.mjs +0 -15
  158. package/esm2022/lib/smart-filter-editor/project.mjs +0 -11
  159. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/advanced/advanced-relation-button/advanced-relation-button.component.mjs +0 -27
  160. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/advanced/advanced-smart-filter-expression-item/advanced-smart-filter-expression-item.component.mjs +0 -32
  161. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/advanced/expression-editor-dialog/expression-editor-dialog.component.mjs +0 -29
  162. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/advanced/expression-editor-dialog/expression-editor-dialog.service.mjs +0 -50
  163. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-item/smart-filter-expression-item.component.mjs +0 -72
  164. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-items/smart-filter-expression-items.component.mjs +0 -52
  165. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/smart-filter-editor-content.component.mjs +0 -329
  166. package/esm2022/lib/smart-filter-editor/smart-filter-editor.model.mjs +0 -2
  167. package/esm2022/lib/smart-filter-editor/smart-filter-editor.module.mjs +0 -84
  168. package/esm2022/lib/smart-filter-editor/smart-filter-editor.service.mjs +0 -78
  169. package/esm2022/lib/smart-filter-editor/smart-filter-params/components/smart-filter-param/smart-filter-param.component.mjs +0 -24
  170. package/esm2022/lib/smart-filter-editor/smart-filter-params/smart-filter-params.component.mjs +0 -57
  171. package/esm2022/lib/smart-form/api/api/api.mjs +0 -4
  172. package/esm2022/lib/smart-form/api/api/default.service.mjs +0 -133
  173. package/esm2022/lib/smart-form/api/api.module.mjs +0 -40
  174. package/esm2022/lib/smart-form/api/configuration.mjs +0 -91
  175. package/esm2022/lib/smart-form/api/encoder.mjs +0 -19
  176. package/esm2022/lib/smart-form/api/index.mjs +0 -7
  177. package/esm2022/lib/smart-form/api/model/dateFieldProperties.mjs +0 -13
  178. package/esm2022/lib/smart-form/api/model/divProperties.mjs +0 -2
  179. package/esm2022/lib/smart-form/api/model/fileUploaderProperties.mjs +0 -2
  180. package/esm2022/lib/smart-form/api/model/imageProperties.mjs +0 -2
  181. package/esm2022/lib/smart-form/api/model/models.mjs +0 -20
  182. package/esm2022/lib/smart-form/api/model/multiFileUploaderProperties.mjs +0 -2
  183. package/esm2022/lib/smart-form/api/model/propertyMapping.mjs +0 -13
  184. package/esm2022/lib/smart-form/api/model/recordingUploaderProperties.mjs +0 -7
  185. package/esm2022/lib/smart-form/api/model/selectionDefinition.mjs +0 -14
  186. package/esm2022/lib/smart-form/api/model/smartFormInputMode.mjs +0 -22
  187. package/esm2022/lib/smart-form/api/model/smartFormWidgetDirection.mjs +0 -17
  188. package/esm2022/lib/smart-form/api/model/smartFormWidgetType.mjs +0 -49
  189. package/esm2022/lib/smart-form/api/model/smartLayoutDefinition.mjs +0 -2
  190. package/esm2022/lib/smart-form/api/model/smartMatrixModel.mjs +0 -2
  191. package/esm2022/lib/smart-form/api/model/smartWidgetDefinition.mjs +0 -2
  192. package/esm2022/lib/smart-form/api/model/smartWidgetHint.mjs +0 -18
  193. package/esm2022/lib/smart-form/api/model/sortDefinition.mjs +0 -13
  194. package/esm2022/lib/smart-form/api/model/textBoxProperties.mjs +0 -13
  195. package/esm2022/lib/smart-form/api/model/textFieldProperties.mjs +0 -13
  196. package/esm2022/lib/smart-form/api/model/valueChangeMode.mjs +0 -21
  197. package/esm2022/lib/smart-form/api/param.mjs +0 -2
  198. package/esm2022/lib/smart-form/api/variables.mjs +0 -9
  199. package/esm2022/lib/smart-form/highlightMacthingString-pipe.mjs +0 -20
  200. package/esm2022/lib/smart-form/projects.mjs +0 -18
  201. package/esm2022/lib/smart-form/services/smartform.layout-definition.service.mjs +0 -754
  202. package/esm2022/lib/smart-form/services/smartform.service.mjs +0 -683
  203. package/esm2022/lib/smart-form/smartfileuploader/large-file-snack-bar/large-file-snack-bar.component.mjs +0 -15
  204. package/esm2022/lib/smart-form/smartfileuploader/smartfileuploader.component.mjs +0 -193
  205. package/esm2022/lib/smart-form/smartfileuploader/smartfileuploader.model.mjs +0 -2
  206. package/esm2022/lib/smart-form/smartform.component.mjs +0 -190
  207. package/esm2022/lib/smart-form/smartform.form-model.mjs +0 -2
  208. package/esm2022/lib/smart-form/smartform.model.mjs +0 -38
  209. package/esm2022/lib/smart-form/widgets/components/smart-file-editor/smart-file-editor.component.mjs +0 -179
  210. package/esm2022/lib/smart-form/widgets/components/smart-month-picker/smart-month-picker.component.mjs +0 -83
  211. package/esm2022/lib/smart-form/widgets/components/smart-multi-file-editor/smart-multi-file-editor.component.mjs +0 -170
  212. package/esm2022/lib/smart-form/widgets/components/smart-voice-recorder/smart-voice-recorder.component.mjs +0 -151
  213. package/esm2022/lib/smart-form/widgets/directives/comparable-dropdown.directive.mjs +0 -35
  214. package/esm2022/lib/smart-form/widgets/directives/comparable-multiselect.directive.mjs +0 -79
  215. package/esm2022/lib/smart-form/widgets/smartformwidget/smartformwidget.component.mjs +0 -1050
  216. package/esm2022/lib/smart-form/widgets/smartformwidget/sortable-widget/sortable-widget.component.mjs +0 -78
  217. package/esm2022/lib/smart-form/widgets/smartformwidget/trackCaps.directive.mjs +0 -31
  218. package/esm2022/lib/smart-generic-pages/acl-editing-view/acl-editing-view.component.mjs +0 -98
  219. package/esm2022/lib/smart-generic-pages/api/platform/acl/model/aCL.mjs +0 -2
  220. package/esm2022/lib/smart-generic-pages/api/platform/acl/model/aCLEntry.mjs +0 -18
  221. package/esm2022/lib/smart-generic-pages/api/platform/acl/model/objectValidationSeverity.mjs +0 -19
  222. package/esm2022/lib/smart-generic-pages/api/platform/acl/model/subject.mjs +0 -13
  223. package/esm2022/lib/smart-generic-pages/api/platform/api-default/objectHistoryRangeData.mjs +0 -2
  224. package/esm2022/lib/smart-generic-pages/api/platform/searchpage/model/searchPageModel.mjs +0 -2
  225. package/esm2022/lib/smart-generic-pages/api/platform/subjectselector/model/subjectSelectorPageModel.mjs +0 -13
  226. package/esm2022/lib/smart-generic-pages/api/platform/validation/model/validationItem.mjs +0 -2
  227. package/esm2022/lib/smart-generic-pages/api/platform/validation/model/validationResultPageModel.mjs +0 -2
  228. package/esm2022/lib/smart-generic-pages/generic-page/generic-page.component.mjs +0 -54
  229. package/esm2022/lib/smart-generic-pages/invalid-smartlink/invalid-smartlink.component.mjs +0 -40
  230. package/esm2022/lib/smart-generic-pages/no-permission-page/no-permission-page.component.mjs +0 -40
  231. package/esm2022/lib/smart-generic-pages/projects.mjs +0 -13
  232. package/esm2022/lib/smart-generic-pages/search-page/search-page.component.mjs +0 -81
  233. package/esm2022/lib/smart-generic-pages/smart-generic-pages.module.mjs +0 -116
  234. package/esm2022/lib/smart-generic-pages/subject-selector/subject-selector.component.mjs +0 -78
  235. package/esm2022/lib/smart-generic-pages/validation-result-page/validation-result-page.component.mjs +0 -93
  236. package/esm2022/lib/smart-grid/api/grid-api/api/api.mjs +0 -4
  237. package/esm2022/lib/smart-grid/api/grid-api/api/grid.service.mjs +0 -514
  238. package/esm2022/lib/smart-grid/api/grid-api/api.module.mjs +0 -40
  239. package/esm2022/lib/smart-grid/api/grid-api/configuration.mjs +0 -91
  240. package/esm2022/lib/smart-grid/api/grid-api/encoder.mjs +0 -19
  241. package/esm2022/lib/smart-grid/api/grid-api/index.mjs +0 -7
  242. package/esm2022/lib/smart-grid/api/grid-api/model/gridColumnContentType.mjs +0 -17
  243. package/esm2022/lib/smart-grid/api/grid-api/model/gridColumnMeta.mjs +0 -2
  244. package/esm2022/lib/smart-grid/api/grid-api/model/gridDataAccessConfig.mjs +0 -20
  245. package/esm2022/lib/smart-grid/api/grid-api/model/gridExportDescriptor.mjs +0 -2
  246. package/esm2022/lib/smart-grid/api/grid-api/model/gridModel.mjs +0 -2
  247. package/esm2022/lib/smart-grid/api/grid-api/model/gridPage.mjs +0 -2
  248. package/esm2022/lib/smart-grid/api/grid-api/model/gridRow.mjs +0 -2
  249. package/esm2022/lib/smart-grid/api/grid-api/model/gridRowLayoutDescriptor.mjs +0 -2
  250. package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionChange.mjs +0 -13
  251. package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionMode.mjs +0 -18
  252. package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionType.mjs +0 -17
  253. package/esm2022/lib/smart-grid/api/grid-api/model/gridServerModel.mjs +0 -2
  254. package/esm2022/lib/smart-grid/api/grid-api/model/gridUpdateData.mjs +0 -2
  255. package/esm2022/lib/smart-grid/api/grid-api/model/gridView.mjs +0 -2
  256. package/esm2022/lib/smart-grid/api/grid-api/model/gridViewDescriptor.mjs +0 -8
  257. package/esm2022/lib/smart-grid/api/grid-api/model/models.mjs +0 -16
  258. package/esm2022/lib/smart-grid/api/grid-api/param.mjs +0 -2
  259. package/esm2022/lib/smart-grid/api/grid-api/variables.mjs +0 -9
  260. package/esm2022/lib/smart-grid/components/expandable-grid/expandable-grid.component.mjs +0 -20
  261. package/esm2022/lib/smart-grid/components/generic-component/expanded-row-renderer.component.mjs +0 -47
  262. package/esm2022/lib/smart-grid/components/smart-grid-card/smart-grid-card.component.mjs +0 -92
  263. package/esm2022/lib/smart-grid/components/table-layout-definer/table-layout-definer.component.mjs +0 -200
  264. package/esm2022/lib/smart-grid/models/model.mjs +0 -29
  265. package/esm2022/lib/smart-grid/projects.mjs +0 -9
  266. package/esm2022/lib/smart-grid/smart-grid-toolbar-util.mjs +0 -76
  267. package/esm2022/lib/smart-grid/smart-grid.component.mjs +0 -1074
  268. package/esm2022/lib/smart-grid/smart-grid.module.mjs +0 -103
  269. package/esm2022/lib/smart-grid/smart-grid.service.mjs +0 -92
  270. package/esm2022/lib/smart-icon/projects.mjs +0 -9
  271. package/esm2022/lib/smart-icon/smart-icon/smart-icon.component.mjs +0 -95
  272. package/esm2022/lib/smart-icon/smart-icon/ui-badge/ui-badge.component.mjs +0 -33
  273. package/esm2022/lib/smart-icon/smart-icon/ui-badge/ui-badge.directive.mjs +0 -37
  274. package/esm2022/lib/smart-icon/smart-icon.module.mjs +0 -26
  275. package/esm2022/lib/smart-icon/smart-icon.service.mjs +0 -93
  276. package/esm2022/lib/smart-map/abstract-map.mjs +0 -112
  277. package/esm2022/lib/smart-map/api/api/api.mjs +0 -4
  278. package/esm2022/lib/smart-map/api/api/geoMap.service.mjs +0 -312
  279. package/esm2022/lib/smart-map/api/api.module.mjs +0 -40
  280. package/esm2022/lib/smart-map/api/configuration.mjs +0 -91
  281. package/esm2022/lib/smart-map/api/encoder.mjs +0 -19
  282. package/esm2022/lib/smart-map/api/index.mjs +0 -7
  283. package/esm2022/lib/smart-map/api/model/gPSPosition.mjs +0 -13
  284. package/esm2022/lib/smart-map/api/model/gPSRoute.mjs +0 -2
  285. package/esm2022/lib/smart-map/api/model/geoMapChange.mjs +0 -2
  286. package/esm2022/lib/smart-map/api/model/geoMapDataLoadingMode.mjs +0 -17
  287. package/esm2022/lib/smart-map/api/model/geoMapDataSourceDescriptor.mjs +0 -2
  288. package/esm2022/lib/smart-map/api/model/geoMapDataSourceType.mjs +0 -19
  289. package/esm2022/lib/smart-map/api/model/geoMapEditingSession.mjs +0 -2
  290. package/esm2022/lib/smart-map/api/model/geoMapInteraction.mjs +0 -2
  291. package/esm2022/lib/smart-map/api/model/geoMapItem.mjs +0 -2
  292. package/esm2022/lib/smart-map/api/model/geoMapItemKind.mjs +0 -18
  293. package/esm2022/lib/smart-map/api/model/geoMapLayer.mjs +0 -2
  294. package/esm2022/lib/smart-map/api/model/geoMapLayerChange.mjs +0 -2
  295. package/esm2022/lib/smart-map/api/model/geoMapLayerDescriptor.mjs +0 -2
  296. package/esm2022/lib/smart-map/api/model/geoMapModel.mjs +0 -2
  297. package/esm2022/lib/smart-map/api/model/geoMapOperationMode.mjs +0 -17
  298. package/esm2022/lib/smart-map/api/model/geoMapSelectionMode.mjs +0 -18
  299. package/esm2022/lib/smart-map/api/model/geoMapServerModel.mjs +0 -2
  300. package/esm2022/lib/smart-map/api/model/geoMapTextType.mjs +0 -17
  301. package/esm2022/lib/smart-map/api/model/geoMapViewState.mjs +0 -2
  302. package/esm2022/lib/smart-map/api/model/geoMapViewport.mjs +0 -2
  303. package/esm2022/lib/smart-map/api/model/models.mjs +0 -21
  304. package/esm2022/lib/smart-map/api/param.mjs +0 -2
  305. package/esm2022/lib/smart-map/api/variables.mjs +0 -9
  306. package/esm2022/lib/smart-map/api-default/api-default.mjs +0 -2
  307. package/esm2022/lib/smart-map/impl/google-map.mjs +0 -224
  308. package/esm2022/lib/smart-map/impl/leaflet-map.mjs +0 -422
  309. package/esm2022/lib/smart-map/projects.mjs +0 -9
  310. package/esm2022/lib/smart-map/smart-map.component.mjs +0 -222
  311. package/esm2022/lib/smart-map/smart-map.module.mjs +0 -22
  312. package/esm2022/lib/smart-map/smart-map.types.mjs +0 -2
  313. package/esm2022/lib/smart-navbar/projects.mjs +0 -8
  314. package/esm2022/lib/smart-navbar/smart-navbar.component.mjs +0 -61
  315. package/esm2022/lib/smart-navbar/smart-navbar.model.mjs +0 -6
  316. package/esm2022/lib/smart-navbar/smart-navbar.module.mjs +0 -63
  317. package/esm2022/lib/smart-navbar/smart-navbar.service.mjs +0 -14
  318. package/esm2022/lib/smart-navigation/projects.mjs +0 -6
  319. package/esm2022/lib/smart-navigation/smart-navigation.interface.mjs +0 -2
  320. package/esm2022/lib/smart-navigation/smart-navigation.module.mjs +0 -18
  321. package/esm2022/lib/smart-navigation/smart-navigation.service.mjs +0 -27
  322. package/esm2022/lib/smart-ng-client.module.mjs +0 -131
  323. package/esm2022/lib/smart-ng-client.service.mjs +0 -19
  324. package/esm2022/lib/smart-subject/projects.mjs +0 -5
  325. package/esm2022/lib/smart-subject/smart-subject.mjs +0 -21
  326. package/esm2022/lib/smart-tab-group/projects.mjs +0 -5
  327. package/esm2022/lib/smart-tab-group/smart-tab-group.module.mjs +0 -22
  328. package/esm2022/lib/smart-table/components/default-actions-popup/default-actions-popup.component.mjs +0 -43
  329. package/esm2022/lib/smart-table/components/loading/loading.component.mjs +0 -15
  330. package/esm2022/lib/smart-table/directives/mat-context-menu-trigger-for.directive.mjs +0 -52
  331. package/esm2022/lib/smart-table/projects.mjs +0 -8
  332. package/esm2022/lib/smart-table/smarttable.component.mjs +0 -98
  333. package/esm2022/lib/smart-table/smarttable.model.mjs +0 -177
  334. package/esm2022/lib/smart-table/smarttable.module.mjs +0 -109
  335. package/esm2022/lib/smart-table/smarttable.service.mjs +0 -14
  336. package/esm2022/lib/smart-table/tables/material-table/material-table.component.mjs +0 -40
  337. package/esm2022/lib/smart-table/tables/mobile-table/mobile-table.component.mjs +0 -23
  338. package/esm2022/lib/smart-table/tables/table.mjs +0 -614
  339. package/esm2022/lib/smart-tree/projects.mjs +0 -9
  340. package/esm2022/lib/smart-tree/smarttree-generic.service.mjs +0 -292
  341. package/esm2022/lib/smart-tree/smarttree.component.mjs +0 -188
  342. package/esm2022/lib/smart-tree/smarttree.model.mjs +0 -7
  343. package/esm2022/lib/smart-tree/smarttree.module.mjs +0 -64
  344. package/esm2022/lib/smart-tree/smarttree.node.model.mjs +0 -6
  345. package/esm2022/lib/smart-tree/smarttree.service.interface.mjs +0 -2
  346. package/esm2022/lib/smart-tree/smarttree.service.mjs +0 -47
  347. package/esm2022/lib/smart-tree/tree-api/api/tree.service.mjs +0 -1190
  348. package/esm2022/lib/smart-tree/tree-api/configuration.mjs +0 -91
  349. package/esm2022/lib/smart-tree/tree-api/encoder.mjs +0 -19
  350. package/esm2022/lib/smart-tree/tree-api/param.mjs +0 -2
  351. package/esm2022/lib/smart-tree/tree-api/variables.mjs +0 -9
  352. package/esm2022/lib/smart-validation/named-validator.service.mjs +0 -115
  353. package/esm2022/lib/smart-validation/projects.mjs +0 -4
  354. package/esm2022/lib/smart-validation/smart-validation.module.mjs +0 -24
  355. package/esm2022/lib/smart-validation/smart-validation.types.mjs +0 -4
  356. package/esm2022/lib/theme/theme.service.mjs +0 -48
  357. package/esm2022/lib/view-context/api/api/api.mjs +0 -4
  358. package/esm2022/lib/view-context/api/api/view.service.mjs +0 -1113
  359. package/esm2022/lib/view-context/api/api-default/binaryContentData.mjs +0 -2
  360. package/esm2022/lib/view-context/api/api-default/binaryData.mjs +0 -2
  361. package/esm2022/lib/view-context/api/api-default/invocationError.mjs +0 -2
  362. package/esm2022/lib/view-context/api/api-default/invocationRequest.mjs +0 -2
  363. package/esm2022/lib/view-context/api/api-default/invocationRun.mjs +0 -2
  364. package/esm2022/lib/view-context/api/api.module.mjs +0 -40
  365. package/esm2022/lib/view-context/api/configuration.mjs +0 -91
  366. package/esm2022/lib/view-context/api/encoder.mjs +0 -19
  367. package/esm2022/lib/view-context/api/index.mjs +0 -7
  368. package/esm2022/lib/view-context/api/model/backgroundProcessInfo.mjs +0 -2
  369. package/esm2022/lib/view-context/api/model/badgeDescriptor.mjs +0 -13
  370. package/esm2022/lib/view-context/api/model/clipboardData.mjs +0 -13
  371. package/esm2022/lib/view-context/api/model/closeResult.mjs +0 -18
  372. package/esm2022/lib/view-context/api/model/componentConstraint.mjs +0 -2
  373. package/esm2022/lib/view-context/api/model/componentModel.mjs +0 -2
  374. package/esm2022/lib/view-context/api/model/componentModelChange.mjs +0 -13
  375. package/esm2022/lib/view-context/api/model/dataChange.mjs +0 -2
  376. package/esm2022/lib/view-context/api/model/dataChangeEvent.mjs +0 -2
  377. package/esm2022/lib/view-context/api/model/dataChangeKind.mjs +0 -21
  378. package/esm2022/lib/view-context/api/model/deviceInfo.mjs +0 -13
  379. package/esm2022/lib/view-context/api/model/downloadedFile.mjs +0 -13
  380. package/esm2022/lib/view-context/api/model/iconPosition.mjs +0 -20
  381. package/esm2022/lib/view-context/api/model/imageResource.mjs +0 -8
  382. package/esm2022/lib/view-context/api/model/link.mjs +0 -20
  383. package/esm2022/lib/view-context/api/model/menuDescriptor.mjs +0 -2
  384. package/esm2022/lib/view-context/api/model/menuOpenDirection.mjs +0 -23
  385. package/esm2022/lib/view-context/api/model/menuTriggerType.mjs +0 -17
  386. package/esm2022/lib/view-context/api/model/messageData.mjs +0 -2
  387. package/esm2022/lib/view-context/api/model/messageOption.mjs +0 -2
  388. package/esm2022/lib/view-context/api/model/messageOptionType.mjs +0 -18
  389. package/esm2022/lib/view-context/api/model/messageResult.mjs +0 -2
  390. package/esm2022/lib/view-context/api/model/messageTextType.mjs +0 -17
  391. package/esm2022/lib/view-context/api/model/messageType.mjs +0 -19
  392. package/esm2022/lib/view-context/api/model/models.mjs +0 -71
  393. package/esm2022/lib/view-context/api/model/multiComboBoxElement.mjs +0 -13
  394. package/esm2022/lib/view-context/api/model/multiComboBoxModel.mjs +0 -2
  395. package/esm2022/lib/view-context/api/model/namedValidator.mjs +0 -19
  396. package/esm2022/lib/view-context/api/model/openPendingData.mjs +0 -2
  397. package/esm2022/lib/view-context/api/model/publishedViewData.mjs +0 -13
  398. package/esm2022/lib/view-context/api/model/serverRequestExecutionStat.mjs +0 -2
  399. package/esm2022/lib/view-context/api/model/serverRequestTrack.mjs +0 -2
  400. package/esm2022/lib/view-context/api/model/serverRequestType.mjs +0 -24
  401. package/esm2022/lib/view-context/api/model/shellProperty.mjs +0 -13
  402. package/esm2022/lib/view-context/api/model/smartLinkData.mjs +0 -2
  403. package/esm2022/lib/view-context/api/model/smartLinkMigrationStatus.mjs +0 -8
  404. package/esm2022/lib/view-context/api/model/statisticRecord.mjs +0 -13
  405. package/esm2022/lib/view-context/api/model/style.mjs +0 -13
  406. package/esm2022/lib/view-context/api/model/themeDefinition.mjs +0 -2
  407. package/esm2022/lib/view-context/api/model/themeDescriptor.mjs +0 -2
  408. package/esm2022/lib/view-context/api/model/themeShellDescriptor.mjs +0 -2
  409. package/esm2022/lib/view-context/api/model/uiAction.mjs +0 -2
  410. package/esm2022/lib/view-context/api/model/uiActionButtonDescriptor.mjs +0 -2
  411. package/esm2022/lib/view-context/api/model/uiActionButtonType.mjs +0 -27
  412. package/esm2022/lib/view-context/api/model/uiActionConstraint.mjs +0 -13
  413. package/esm2022/lib/view-context/api/model/uiActionDefinition.mjs +0 -2
  414. package/esm2022/lib/view-context/api/model/uiActionDefinitionEntry.mjs +0 -2
  415. package/esm2022/lib/view-context/api/model/uiActionDescriptor.mjs +0 -2
  416. package/esm2022/lib/view-context/api/model/uiActionDialogDescriptor.mjs +0 -2
  417. package/esm2022/lib/view-context/api/model/uiActionFeedbackType.mjs +0 -20
  418. package/esm2022/lib/view-context/api/model/uiActionInputType.mjs +0 -21
  419. package/esm2022/lib/view-context/api/model/uiActionRequest.mjs +0 -13
  420. package/esm2022/lib/view-context/api/model/uiActionSchedule.mjs +0 -13
  421. package/esm2022/lib/view-context/api/model/uiActionTooltip.mjs +0 -22
  422. package/esm2022/lib/view-context/api/model/uiActionUploadDescriptor.mjs +0 -2
  423. package/esm2022/lib/view-context/api/model/uploadWidgetType.mjs +0 -18
  424. package/esm2022/lib/view-context/api/model/uploadedFile.mjs +0 -2
  425. package/esm2022/lib/view-context/api/model/valueSet.mjs +0 -2
  426. package/esm2022/lib/view-context/api/model/view.mjs +0 -2
  427. package/esm2022/lib/view-context/api/model/viewApiError.mjs +0 -13
  428. package/esm2022/lib/view-context/api/model/viewConstraint.mjs +0 -2
  429. package/esm2022/lib/view-context/api/model/viewContext.mjs +0 -2
  430. package/esm2022/lib/view-context/api/model/viewContextChange.mjs +0 -2
  431. package/esm2022/lib/view-context/api/model/viewContextData.mjs +0 -2
  432. package/esm2022/lib/view-context/api/model/viewContextUpdate.mjs +0 -2
  433. package/esm2022/lib/view-context/api/model/viewData.mjs +0 -2
  434. package/esm2022/lib/view-context/api/model/viewEventHandler.mjs +0 -8
  435. package/esm2022/lib/view-context/api/model/viewPlaceholder.mjs +0 -13
  436. package/esm2022/lib/view-context/api/model/viewState.mjs +0 -22
  437. package/esm2022/lib/view-context/api/model/viewStateUpdate.mjs +0 -2
  438. package/esm2022/lib/view-context/api/model/viewType.mjs +0 -18
  439. package/esm2022/lib/view-context/api/param.mjs +0 -2
  440. package/esm2022/lib/view-context/api/variables.mjs +0 -9
  441. package/esm2022/lib/view-context/default-view-components.token.mjs +0 -9
  442. package/esm2022/lib/view-context/invalid-fields-snack-bar/invalid-fields-snack-bar.component.mjs +0 -20
  443. package/esm2022/lib/view-context/message-dialog/message-dialog.component.mjs +0 -93
  444. package/esm2022/lib/view-context/projects.mjs +0 -30
  445. package/esm2022/lib/view-context/property-definition-data.mjs +0 -2
  446. package/esm2022/lib/view-context/reuse-router-slot.token.mjs +0 -4
  447. package/esm2022/lib/view-context/smart-embedded-slot.directive.mjs +0 -57
  448. package/esm2022/lib/view-context/smart-ui-action/components/menu/click/menu.component.mjs +0 -254
  449. package/esm2022/lib/view-context/smart-ui-action/components/menu/hover/hover-menu.component.mjs +0 -256
  450. package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.constants.mjs +0 -62
  451. package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.service.mjs +0 -29
  452. package/esm2022/lib/view-context/smart-ui-action/components/success-snack-bar/success-snack-bar.component.mjs +0 -30
  453. package/esm2022/lib/view-context/smart-ui-action/components/theme-selector/theme-selector.component.mjs +0 -35
  454. package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/photo-capture-widget/photo-capture-widget.component.mjs +0 -198
  455. package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/prime-file-uploader/prime-file-uploader.component.mjs +0 -95
  456. package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/upload-widget.component.mjs +0 -134
  457. package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/upload-widget.utils.mjs +0 -12
  458. package/esm2022/lib/view-context/smart-ui-action/components/upload-widget/voice-record-widget/voice-record-widget.component.mjs +0 -256
  459. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.component.mjs +0 -77
  460. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.service.mjs +0 -54
  461. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-dialog-button/ui-action-dialog-button.component.mjs +0 -60
  462. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.component.mjs +0 -106
  463. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.service.mjs +0 -60
  464. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.component.mjs +0 -132
  465. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.service.mjs +0 -58
  466. package/esm2022/lib/view-context/smart-ui-action/file-editor-toolbar/file-editor-toolbar.component.mjs +0 -35
  467. package/esm2022/lib/view-context/smart-ui-action/ui-action-button/button-icon-placeholder.mjs +0 -7
  468. package/esm2022/lib/view-context/smart-ui-action/ui-action-button/ui-action-button.component.mjs +0 -258
  469. package/esm2022/lib/view-context/smart-ui-action/ui-action-toolbar.component.mjs +0 -349
  470. package/esm2022/lib/view-context/smart-ui-action/ui-action.descriptor.service.mjs +0 -185
  471. package/esm2022/lib/view-context/smart-ui-action/ui-action.model.mjs +0 -7
  472. package/esm2022/lib/view-context/smart-ui-action/ui-action.service.mjs +0 -250
  473. package/esm2022/lib/view-context/smart-view-context-dialog.service.mjs +0 -77
  474. package/esm2022/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.component.mjs +0 -35
  475. package/esm2022/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.service.mjs +0 -74
  476. package/esm2022/lib/view-context/smart-view-context.interceptor.mjs +0 -63
  477. package/esm2022/lib/view-context/smart-view-context.model.mjs +0 -2
  478. package/esm2022/lib/view-context/smart-view-context.module.mjs +0 -405
  479. package/esm2022/lib/view-context/smart-view-context.service.mjs +0 -1079
  480. package/esm2022/lib/view-context/smart-view-redirect/smart-view-redirect.mjs +0 -41
  481. package/esm2022/lib/view-context/utility/componentLibrary.mjs +0 -9
  482. package/esm2022/lib/view-context/utility/smart-object-utility.mjs +0 -44
  483. package/esm2022/lib/view-context/utility/smart-style-utility.mjs +0 -68
  484. package/esm2022/lib/view-context/value-api/api/api.mjs +0 -4
  485. package/esm2022/lib/view-context/value-api/api/value.service.mjs +0 -138
  486. package/esm2022/lib/view-context/value-api/api.module.mjs +0 -40
  487. package/esm2022/lib/view-context/value-api/configuration.mjs +0 -91
  488. package/esm2022/lib/view-context/value-api/encoder.mjs +0 -19
  489. package/esm2022/lib/view-context/value-api/index.mjs +0 -7
  490. package/esm2022/lib/view-context/value-api/model/genericValue.mjs +0 -13
  491. package/esm2022/lib/view-context/value-api/model/models.mjs +0 -11
  492. package/esm2022/lib/view-context/value-api/model/value.mjs +0 -13
  493. package/esm2022/lib/view-context/value-api/model/valueSetData.mjs +0 -2
  494. package/esm2022/lib/view-context/value-api/model/valueSetDefinition.mjs +0 -2
  495. package/esm2022/lib/view-context/value-api/model/valueSetDefinitionData.mjs +0 -2
  496. package/esm2022/lib/view-context/value-api/model/valueSetDefinitionIdentifier.mjs +0 -13
  497. package/esm2022/lib/view-context/value-api/model/valueSetDefinitionKind.mjs +0 -24
  498. package/esm2022/lib/view-context/value-api/model/valueSetExpression.mjs +0 -2
  499. package/esm2022/lib/view-context/value-api/model/valueSetOperand.mjs +0 -2
  500. package/esm2022/lib/view-context/value-api/model/valueSetOperation.mjs +0 -19
  501. package/esm2022/lib/view-context/value-api/param.mjs +0 -2
  502. package/esm2022/lib/view-context/value-api/variables.mjs +0 -9
  503. package/esm2022/lib/view-context/view-handler-resolution.mjs +0 -21
  504. package/esm2022/lib/view-context/view-op.mjs +0 -41
  505. package/esm2022/lib/view-context/view-slot-resolution.mjs +0 -28
  506. package/esm2022/projects.mjs +0 -31
  507. package/esm2022/smartbit4all-ng-client.mjs +0 -5
  508. package/index.d.ts +0 -5
  509. package/lib/component-factory-service/component-factory-service.module.d.ts +0 -6
  510. package/lib/component-factory-service/component-factory-service.service.d.ts +0 -13
  511. package/lib/component-factory-service/projects.d.ts +0 -2
  512. package/lib/session/api/api/api.d.ts +0 -3
  513. package/lib/session/api/api/session.service.d.ts +0 -107
  514. package/lib/session/api/configuration.d.ts +0 -104
  515. package/lib/session/api/encoder.d.ts +0 -11
  516. package/lib/session/api/index.d.ts +0 -2
  517. package/lib/session/api/model/accountInfo.d.ts +0 -24
  518. package/lib/session/api/model/apiError.d.ts +0 -15
  519. package/lib/session/api/model/authenticationProviderData.d.ts +0 -17
  520. package/lib/session/api/model/getAuthenticationProvidersResponse.d.ts +0 -15
  521. package/lib/session/api/model/models.d.ts +0 -8
  522. package/lib/session/api/model/refreshSessionRequest.d.ts +0 -14
  523. package/lib/session/api/model/session.d.ts +0 -32
  524. package/lib/session/api/model/sessionInfoData.d.ts +0 -26
  525. package/lib/session/api/model/userActivityLog.d.ts +0 -33
  526. package/lib/session/api/param.d.ts +0 -37
  527. package/lib/session/api/variables.d.ts +0 -8
  528. package/lib/session/cookie-service/smart-cookie.service.d.ts +0 -129
  529. package/lib/session/projects.d.ts +0 -8
  530. package/lib/session/smart-backend-bootstrap.config.d.ts +0 -73
  531. package/lib/session/smart-backend-bootstrap.service.d.ts +0 -57
  532. package/lib/session/smart-default-error-ui.service.d.ts +0 -90
  533. package/lib/session/smart-error-catching.interceptor.d.ts +0 -21
  534. package/lib/session/smart-header-maintainer.interceptor.d.ts +0 -11
  535. package/lib/session/smart-session-handler.service.d.ts +0 -22
  536. package/lib/session/smart-session.module.d.ts +0 -12
  537. package/lib/session/smart-session.service.d.ts +0 -88
  538. package/lib/session/smart-timer/smart-session-timer.component.d.ts +0 -19
  539. package/lib/shared/projects.d.ts +0 -3
  540. package/lib/shared/shared.module.d.ts +0 -9
  541. package/lib/shared/smart-tooltip.directive.d.ts +0 -16
  542. package/lib/shared/smarttable.date-pipe.d.ts +0 -18
  543. package/lib/smart-client/projects.d.ts +0 -3
  544. package/lib/smart-client/smart-component-api-client.d.ts +0 -143
  545. package/lib/smart-client/smart-file-uploader/smart-file-uploader.component.d.ts +0 -25
  546. package/lib/smart-client/smart.component.d.ts +0 -35
  547. package/lib/smart-client/smart.service.d.ts +0 -29
  548. package/lib/smart-component-layout/api/api/api.d.ts +0 -3
  549. package/lib/smart-component-layout/api/api/default.service.d.ts +0 -33
  550. package/lib/smart-component-layout/api/api.module.d.ts +0 -11
  551. package/lib/smart-component-layout/api/configuration.d.ts +0 -104
  552. package/lib/smart-component-layout/api/encoder.d.ts +0 -11
  553. package/lib/smart-component-layout/api/index.d.ts +0 -6
  554. package/lib/smart-component-layout/api/model/componentType.d.ts +0 -16
  555. package/lib/smart-component-layout/api/model/componentWidgetType.d.ts +0 -20
  556. package/lib/smart-component-layout/api/model/layoutDefinitionDescriptor.d.ts +0 -19
  557. package/lib/smart-component-layout/api/model/layoutDirection.d.ts +0 -15
  558. package/lib/smart-component-layout/api/model/models.d.ts +0 -9
  559. package/lib/smart-component-layout/api/model/smartComponentLayoutDefinition.d.ts +0 -32
  560. package/lib/smart-component-layout/api/model/smartComponentWidgetDefinition.d.ts +0 -26
  561. package/lib/smart-component-layout/api/model/toolbarAlignment.d.ts +0 -15
  562. package/lib/smart-component-layout/api/model/toolbarDirection.d.ts +0 -15
  563. package/lib/smart-component-layout/api/model/toolbarProperties.d.ts +0 -18
  564. package/lib/smart-component-layout/api/param.d.ts +0 -37
  565. package/lib/smart-component-layout/api/variables.d.ts +0 -8
  566. package/lib/smart-component-layout/projects.d.ts +0 -4
  567. package/lib/smart-component-layout/smart-component-layout-utility.d.ts +0 -25
  568. package/lib/smart-component-layout/smart-component-layout.component.d.ts +0 -93
  569. package/lib/smart-component-layout/smart-component-layout.module.d.ts +0 -17
  570. package/lib/smart-diagram/api/api/api.d.ts +0 -3
  571. package/lib/smart-diagram/api/api/diagramService.service.d.ts +0 -36
  572. package/lib/smart-diagram/api/api.module.d.ts +0 -11
  573. package/lib/smart-diagram/api/configuration.d.ts +0 -104
  574. package/lib/smart-diagram/api/encoder.d.ts +0 -11
  575. package/lib/smart-diagram/api/index.d.ts +0 -6
  576. package/lib/smart-diagram/api/model/diagramColor.d.ts +0 -17
  577. package/lib/smart-diagram/api/model/diagramDataContainer.d.ts +0 -19
  578. package/lib/smart-diagram/api/model/diagramDataItem.d.ts +0 -25
  579. package/lib/smart-diagram/api/model/diagramDataSet.d.ts +0 -22
  580. package/lib/smart-diagram/api/model/diagramDescriptor.d.ts +0 -57
  581. package/lib/smart-diagram/api/model/diagramModel.d.ts +0 -19
  582. package/lib/smart-diagram/api/model/diagramShape.d.ts +0 -30
  583. package/lib/smart-diagram/api/model/drawTime.d.ts +0 -18
  584. package/lib/smart-diagram/api/model/labelText.d.ts +0 -21
  585. package/lib/smart-diagram/api/model/models.d.ts +0 -9
  586. package/lib/smart-diagram/api/param.d.ts +0 -37
  587. package/lib/smart-diagram/api/variables.d.ts +0 -8
  588. package/lib/smart-diagram/component/default-smart-diagram-options.provider.d.ts +0 -33
  589. package/lib/smart-diagram/component/smart-diagram.component.d.ts +0 -43
  590. package/lib/smart-diagram/component/smart-diagram.module.d.ts +0 -11
  591. package/lib/smart-diagram/component/smart-diagram.util.d.ts +0 -1
  592. package/lib/smart-diagram/projects.d.ts +0 -4
  593. package/lib/smart-dialog/projects.d.ts +0 -4
  594. package/lib/smart-dialog/smartdialog.component.d.ts +0 -19
  595. package/lib/smart-dialog/smartdialog.model.d.ts +0 -68
  596. package/lib/smart-dialog/smartdialog.module.d.ts +0 -14
  597. package/lib/smart-dialog/smartdialog.service.d.ts +0 -28
  598. package/lib/smart-expandable-section/expandable-section.component.d.ts +0 -30
  599. package/lib/smart-expandable-section/expandable-section.model.d.ts +0 -43
  600. package/lib/smart-expandable-section/projects.d.ts +0 -4
  601. package/lib/smart-expandable-section/smart-expandable-section.module.d.ts +0 -17
  602. package/lib/smart-expandable-section/smart-expandable-section.service.d.ts +0 -6
  603. package/lib/smart-filter/api/filter/model/filterExpressionBoolOperator.d.ts +0 -15
  604. package/lib/smart-filter/api/filter/model/filterExpressionBuilderField.d.ts +0 -27
  605. package/lib/smart-filter/api/filter/model/filterExpressionBuilderGroup.d.ts +0 -36
  606. package/lib/smart-filter/api/filter/model/filterExpressionBuilderModel.d.ts +0 -27
  607. package/lib/smart-filter/api/filter/model/filterExpressionData.d.ts +0 -27
  608. package/lib/smart-filter/api/filter/model/filterExpressionDataType.d.ts +0 -18
  609. package/lib/smart-filter/api/filter/model/filterExpressionField.d.ts +0 -44
  610. package/lib/smart-filter/api/filter/model/filterExpressionFieldList.d.ts +0 -21
  611. package/lib/smart-filter/api/filter/model/filterExpressionFieldWidgetType.d.ts +0 -26
  612. package/lib/smart-filter/api/filter/model/filterExpressionList.d.ts +0 -18
  613. package/lib/smart-filter/api/filter/model/filterExpressionOperandData.d.ts +0 -25
  614. package/lib/smart-filter/api/filter/model/filterExpressionOperation.d.ts +0 -30
  615. package/lib/smart-filter/api/filter/model/filterExpressionOrderBy.d.ts +0 -25
  616. package/lib/smart-filter/api/filter/model/model.d.ts +0 -15
  617. package/lib/smart-filter/api/filter/model/searchIndexObjectDefinitionData.d.ts +0 -19
  618. package/lib/smart-filter/api/filter/model/searchIndexPropertyDefinitionData.d.ts +0 -18
  619. package/lib/smart-filter/api/value/model/value.d.ts +0 -29
  620. package/lib/smart-filter/projects.d.ts +0 -5
  621. package/lib/smart-filter/smart-filter/components/smart-filter-expression-field/smart-filter-expression-field.component.d.ts +0 -8
  622. package/lib/smart-filter/smart-filter/components/smart-filter-simple/components/smart-filter-simple-field/smart-filter-simple-field.component.d.ts +0 -31
  623. package/lib/smart-filter/smart-filter/components/smart-filter-simple/smart-filter-simple.component.d.ts +0 -18
  624. package/lib/smart-filter/smart-filter/smart-filter.component.d.ts +0 -15
  625. package/lib/smart-filter/smart-filter/smart-filter.service.d.ts +0 -16
  626. package/lib/smart-filter/smart-filter.model.d.ts +0 -25
  627. package/lib/smart-filter/smart-filter.module.d.ts +0 -15
  628. package/lib/smart-filter-editor/api/api/api.d.ts +0 -3
  629. package/lib/smart-filter-editor/api/api/filter.service.d.ts +0 -57
  630. package/lib/smart-filter-editor/api/api.module.d.ts +0 -11
  631. package/lib/smart-filter-editor/api/configuration.d.ts +0 -104
  632. package/lib/smart-filter-editor/api/encoder.d.ts +0 -11
  633. package/lib/smart-filter-editor/api/index.d.ts +0 -6
  634. package/lib/smart-filter-editor/api/model/filterExpressionBoolOperator.d.ts +0 -15
  635. package/lib/smart-filter-editor/api/model/filterExpressionBuilder.d.ts +0 -16
  636. package/lib/smart-filter-editor/api/model/filterExpressionBuilderApiConfig.d.ts +0 -16
  637. package/lib/smart-filter-editor/api/model/filterExpressionBuilderField.d.ts +0 -27
  638. package/lib/smart-filter-editor/api/model/filterExpressionBuilderGroup.d.ts +0 -36
  639. package/lib/smart-filter-editor/api/model/filterExpressionBuilderModel.d.ts +0 -27
  640. package/lib/smart-filter-editor/api/model/filterExpressionBuilderUiModel.d.ts +0 -38
  641. package/lib/smart-filter-editor/api/model/filterExpressionData.d.ts +0 -27
  642. package/lib/smart-filter-editor/api/model/filterExpressionDataType.d.ts +0 -18
  643. package/lib/smart-filter-editor/api/model/filterExpressionField.d.ts +0 -44
  644. package/lib/smart-filter-editor/api/model/filterExpressionFieldEditor.d.ts +0 -17
  645. package/lib/smart-filter-editor/api/model/filterExpressionFieldList.d.ts +0 -23
  646. package/lib/smart-filter-editor/api/model/filterExpressionFieldWidgetType.d.ts +0 -26
  647. package/lib/smart-filter-editor/api/model/filterExpressionList.d.ts +0 -18
  648. package/lib/smart-filter-editor/api/model/filterExpressionOperandData.d.ts +0 -25
  649. package/lib/smart-filter-editor/api/model/filterExpressionOperation.d.ts +0 -30
  650. package/lib/smart-filter-editor/api/model/filterExpressionOrderBy.d.ts +0 -28
  651. package/lib/smart-filter-editor/api/model/models.d.ts +0 -19
  652. package/lib/smart-filter-editor/api/model/searchPageConfig.d.ts +0 -73
  653. package/lib/smart-filter-editor/api/model/smartFilterType.d.ts +0 -15
  654. package/lib/smart-filter-editor/api/param.d.ts +0 -37
  655. package/lib/smart-filter-editor/api/variables.d.ts +0 -8
  656. package/lib/smart-filter-editor/filter-utils.d.ts +0 -2
  657. package/lib/smart-filter-editor/filterExpressionBuilderApiActions.d.ts +0 -13
  658. package/lib/smart-filter-editor/project.d.ts +0 -10
  659. package/lib/smart-filter-editor/smart-filter-editor-content/components/advanced/advanced-relation-button/advanced-relation-button.component.d.ts +0 -11
  660. package/lib/smart-filter-editor/smart-filter-editor-content/components/advanced/advanced-smart-filter-expression-item/advanced-smart-filter-expression-item.component.d.ts +0 -11
  661. package/lib/smart-filter-editor/smart-filter-editor-content/components/advanced/expression-editor-dialog/expression-editor-dialog.component.d.ts +0 -14
  662. package/lib/smart-filter-editor/smart-filter-editor-content/components/advanced/expression-editor-dialog/expression-editor-dialog.service.d.ts +0 -21
  663. package/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-item/smart-filter-expression-item.component.d.ts +0 -19
  664. package/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-items/smart-filter-expression-items.component.d.ts +0 -20
  665. package/lib/smart-filter-editor/smart-filter-editor-content/smart-filter-editor-content.component.d.ts +0 -50
  666. package/lib/smart-filter-editor/smart-filter-editor.model.d.ts +0 -4
  667. package/lib/smart-filter-editor/smart-filter-editor.module.d.ts +0 -21
  668. package/lib/smart-filter-editor/smart-filter-editor.service.d.ts +0 -51
  669. package/lib/smart-filter-editor/smart-filter-params/components/smart-filter-param/smart-filter-param.component.d.ts +0 -9
  670. package/lib/smart-filter-editor/smart-filter-params/smart-filter-params.component.d.ts +0 -21
  671. package/lib/smart-form/api/api/api.d.ts +0 -3
  672. package/lib/smart-form/api/api/default.service.d.ts +0 -33
  673. package/lib/smart-form/api/api.module.d.ts +0 -11
  674. package/lib/smart-form/api/configuration.d.ts +0 -104
  675. package/lib/smart-form/api/encoder.d.ts +0 -11
  676. package/lib/smart-form/api/index.d.ts +0 -6
  677. package/lib/smart-form/api/model/dateFieldProperties.d.ts +0 -15
  678. package/lib/smart-form/api/model/divProperties.d.ts +0 -15
  679. package/lib/smart-form/api/model/fileUploaderProperties.d.ts +0 -20
  680. package/lib/smart-form/api/model/imageProperties.d.ts +0 -15
  681. package/lib/smart-form/api/model/models.d.ts +0 -19
  682. package/lib/smart-form/api/model/multiFileUploaderProperties.d.ts +0 -19
  683. package/lib/smart-form/api/model/propertyMapping.d.ts +0 -24
  684. package/lib/smart-form/api/model/recordingUploaderProperties.d.ts +0 -20
  685. package/lib/smart-form/api/model/selectionDefinition.d.ts +0 -58
  686. package/lib/smart-form/api/model/smartFormInputMode.d.ts +0 -20
  687. package/lib/smart-form/api/model/smartFormWidgetDirection.d.ts +0 -15
  688. package/lib/smart-form/api/model/smartFormWidgetType.d.ts +0 -47
  689. package/lib/smart-form/api/model/smartLayoutDefinition.d.ts +0 -15
  690. package/lib/smart-form/api/model/smartMatrixModel.d.ts +0 -29
  691. package/lib/smart-form/api/model/smartWidgetDefinition.d.ts +0 -125
  692. package/lib/smart-form/api/model/smartWidgetHint.d.ts +0 -19
  693. package/lib/smart-form/api/model/sortDefinition.d.ts +0 -15
  694. package/lib/smart-form/api/model/textBoxProperties.d.ts +0 -15
  695. package/lib/smart-form/api/model/textFieldProperties.d.ts +0 -14
  696. package/lib/smart-form/api/model/valueChangeMode.d.ts +0 -19
  697. package/lib/smart-form/api/param.d.ts +0 -37
  698. package/lib/smart-form/api/variables.d.ts +0 -8
  699. package/lib/smart-form/highlightMacthingString-pipe.d.ts +0 -7
  700. package/lib/smart-form/projects.d.ts +0 -14
  701. package/lib/smart-form/services/smartform.layout-definition.service.d.ts +0 -50
  702. package/lib/smart-form/services/smartform.service.d.ts +0 -52
  703. package/lib/smart-form/smartfileuploader/large-file-snack-bar/large-file-snack-bar.component.d.ts +0 -8
  704. package/lib/smart-form/smartfileuploader/smartfileuploader.component.d.ts +0 -38
  705. package/lib/smart-form/smartfileuploader/smartfileuploader.model.d.ts +0 -7
  706. package/lib/smart-form/smartform.component.d.ts +0 -43
  707. package/lib/smart-form/smartform.form-model.d.ts +0 -864
  708. package/lib/smart-form/smartform.model.d.ts +0 -126
  709. package/lib/smart-form/widgets/components/smart-file-editor/smart-file-editor.component.d.ts +0 -54
  710. package/lib/smart-form/widgets/components/smart-month-picker/smart-month-picker.component.d.ts +0 -29
  711. package/lib/smart-form/widgets/components/smart-multi-file-editor/smart-multi-file-editor.component.d.ts +0 -57
  712. package/lib/smart-form/widgets/components/smart-voice-recorder/smart-voice-recorder.component.d.ts +0 -50
  713. package/lib/smart-form/widgets/directives/comparable-dropdown.directive.d.ts +0 -10
  714. package/lib/smart-form/widgets/directives/comparable-multiselect.directive.d.ts +0 -10
  715. package/lib/smart-form/widgets/smartformwidget/smartformwidget.component.d.ts +0 -173
  716. package/lib/smart-form/widgets/smartformwidget/sortable-widget/sortable-widget.component.d.ts +0 -24
  717. package/lib/smart-form/widgets/smartformwidget/trackCaps.directive.d.ts +0 -9
  718. package/lib/smart-generic-pages/acl-editing-view/acl-editing-view.component.d.ts +0 -21
  719. package/lib/smart-generic-pages/api/platform/acl/model/aCL.d.ts +0 -18
  720. package/lib/smart-generic-pages/api/platform/acl/model/aCLEntry.d.ts +0 -54
  721. package/lib/smart-generic-pages/api/platform/acl/model/objectValidationSeverity.d.ts +0 -19
  722. package/lib/smart-generic-pages/api/platform/acl/model/subject.d.ts +0 -24
  723. package/lib/smart-generic-pages/api/platform/api-default/objectHistoryRangeData.d.ts +0 -2
  724. package/lib/smart-generic-pages/api/platform/searchpage/model/searchPageModel.d.ts +0 -27
  725. package/lib/smart-generic-pages/api/platform/subjectselector/model/subjectSelectorPageModel.d.ts +0 -14
  726. package/lib/smart-generic-pages/api/platform/validation/model/validationItem.d.ts +0 -17
  727. package/lib/smart-generic-pages/api/platform/validation/model/validationResultPageModel.d.ts +0 -18
  728. package/lib/smart-generic-pages/generic-page/generic-page.component.d.ts +0 -12
  729. package/lib/smart-generic-pages/invalid-smartlink/invalid-smartlink.component.d.ts +0 -11
  730. package/lib/smart-generic-pages/no-permission-page/no-permission-page.component.d.ts +0 -11
  731. package/lib/smart-generic-pages/projects.d.ts +0 -9
  732. package/lib/smart-generic-pages/search-page/search-page.component.d.ts +0 -25
  733. package/lib/smart-generic-pages/smart-generic-pages.module.d.ts +0 -19
  734. package/lib/smart-generic-pages/subject-selector/subject-selector.component.d.ts +0 -17
  735. package/lib/smart-generic-pages/validation-result-page/validation-result-page.component.d.ts +0 -25
  736. package/lib/smart-grid/api/grid-api/api/api.d.ts +0 -3
  737. package/lib/smart-grid/api/grid-api/api/grid.service.d.ts +0 -182
  738. package/lib/smart-grid/api/grid-api/api.module.d.ts +0 -11
  739. package/lib/smart-grid/api/grid-api/configuration.d.ts +0 -104
  740. package/lib/smart-grid/api/grid-api/encoder.d.ts +0 -11
  741. package/lib/smart-grid/api/grid-api/index.d.ts +0 -6
  742. package/lib/smart-grid/api/grid-api/model/gridColumnContentType.d.ts +0 -15
  743. package/lib/smart-grid/api/grid-api/model/gridColumnMeta.d.ts +0 -34
  744. package/lib/smart-grid/api/grid-api/model/gridDataAccessConfig.d.ts +0 -44
  745. package/lib/smart-grid/api/grid-api/model/gridExportDescriptor.d.ts +0 -19
  746. package/lib/smart-grid/api/grid-api/model/gridModel.d.ts +0 -36
  747. package/lib/smart-grid/api/grid-api/model/gridPage.d.ts +0 -26
  748. package/lib/smart-grid/api/grid-api/model/gridRow.d.ts +0 -47
  749. package/lib/smart-grid/api/grid-api/model/gridRowLayoutDescriptor.d.ts +0 -20
  750. package/lib/smart-grid/api/grid-api/model/gridSelectionChange.d.ts +0 -24
  751. package/lib/smart-grid/api/grid-api/model/gridSelectionMode.d.ts +0 -16
  752. package/lib/smart-grid/api/grid-api/model/gridSelectionType.d.ts +0 -15
  753. package/lib/smart-grid/api/grid-api/model/gridServerModel.d.ts +0 -22
  754. package/lib/smart-grid/api/grid-api/model/gridUpdateData.d.ts +0 -20
  755. package/lib/smart-grid/api/grid-api/model/gridView.d.ts +0 -21
  756. package/lib/smart-grid/api/grid-api/model/gridViewDescriptor.d.ts +0 -39
  757. package/lib/smart-grid/api/grid-api/model/models.d.ts +0 -15
  758. package/lib/smart-grid/api/grid-api/param.d.ts +0 -37
  759. package/lib/smart-grid/api/grid-api/variables.d.ts +0 -8
  760. package/lib/smart-grid/components/expandable-grid/expandable-grid.component.d.ts +0 -10
  761. package/lib/smart-grid/components/generic-component/expanded-row-renderer.component.d.ts +0 -21
  762. package/lib/smart-grid/components/smart-grid-card/smart-grid-card.component.d.ts +0 -26
  763. package/lib/smart-grid/components/table-layout-definer/table-layout-definer.component.d.ts +0 -47
  764. package/lib/smart-grid/models/model.d.ts +0 -73
  765. package/lib/smart-grid/projects.d.ts +0 -5
  766. package/lib/smart-grid/smart-grid-toolbar-util.d.ts +0 -12
  767. package/lib/smart-grid/smart-grid.component.d.ts +0 -157
  768. package/lib/smart-grid/smart-grid.module.d.ts +0 -29
  769. package/lib/smart-grid/smart-grid.service.d.ts +0 -26
  770. package/lib/smart-icon/projects.d.ts +0 -5
  771. package/lib/smart-icon/smart-icon/smart-icon.component.d.ts +0 -34
  772. package/lib/smart-icon/smart-icon/ui-badge/ui-badge.component.d.ts +0 -10
  773. package/lib/smart-icon/smart-icon/ui-badge/ui-badge.directive.d.ts +0 -14
  774. package/lib/smart-icon/smart-icon.module.d.ts +0 -14
  775. package/lib/smart-icon/smart-icon.service.d.ts +0 -29
  776. package/lib/smart-map/abstract-map.d.ts +0 -37
  777. package/lib/smart-map/api/api/api.d.ts +0 -3
  778. package/lib/smart-map/api/api/geoMap.service.d.ts +0 -101
  779. package/lib/smart-map/api/api.module.d.ts +0 -11
  780. package/lib/smart-map/api/configuration.d.ts +0 -104
  781. package/lib/smart-map/api/encoder.d.ts +0 -11
  782. package/lib/smart-map/api/index.d.ts +0 -6
  783. package/lib/smart-map/api/model/gPSPosition.d.ts +0 -32
  784. package/lib/smart-map/api/model/gPSRoute.d.ts +0 -21
  785. package/lib/smart-map/api/model/geoMapChange.d.ts +0 -21
  786. package/lib/smart-map/api/model/geoMapDataLoadingMode.d.ts +0 -15
  787. package/lib/smart-map/api/model/geoMapDataSourceDescriptor.d.ts +0 -52
  788. package/lib/smart-map/api/model/geoMapDataSourceType.d.ts +0 -17
  789. package/lib/smart-map/api/model/geoMapEditingSession.d.ts +0 -17
  790. package/lib/smart-map/api/model/geoMapInteraction.d.ts +0 -24
  791. package/lib/smart-map/api/model/geoMapItem.d.ts +0 -41
  792. package/lib/smart-map/api/model/geoMapItemKind.d.ts +0 -16
  793. package/lib/smart-map/api/model/geoMapLayer.d.ts +0 -19
  794. package/lib/smart-map/api/model/geoMapLayerChange.d.ts +0 -20
  795. package/lib/smart-map/api/model/geoMapLayerDescriptor.d.ts +0 -28
  796. package/lib/smart-map/api/model/geoMapModel.d.ts +0 -26
  797. package/lib/smart-map/api/model/geoMapOperationMode.d.ts +0 -15
  798. package/lib/smart-map/api/model/geoMapSelectionMode.d.ts +0 -16
  799. package/lib/smart-map/api/model/geoMapServerModel.d.ts +0 -25
  800. package/lib/smart-map/api/model/geoMapTextType.d.ts +0 -15
  801. package/lib/smart-map/api/model/geoMapViewState.d.ts +0 -27
  802. package/lib/smart-map/api/model/geoMapViewport.d.ts +0 -20
  803. package/lib/smart-map/api/model/models.d.ts +0 -20
  804. package/lib/smart-map/api/param.d.ts +0 -37
  805. package/lib/smart-map/api/variables.d.ts +0 -8
  806. package/lib/smart-map/api-default/api-default.d.ts +0 -2
  807. package/lib/smart-map/impl/google-map.d.ts +0 -23
  808. package/lib/smart-map/impl/leaflet-map.d.ts +0 -22
  809. package/lib/smart-map/projects.d.ts +0 -8
  810. package/lib/smart-map/smart-map.component.d.ts +0 -39
  811. package/lib/smart-map/smart-map.module.d.ts +0 -11
  812. package/lib/smart-map/smart-map.types.d.ts +0 -34
  813. package/lib/smart-navbar/projects.d.ts +0 -4
  814. package/lib/smart-navbar/smart-navbar.component.d.ts +0 -20
  815. package/lib/smart-navbar/smart-navbar.model.d.ts +0 -48
  816. package/lib/smart-navbar/smart-navbar.module.d.ts +0 -18
  817. package/lib/smart-navbar/smart-navbar.service.d.ts +0 -6
  818. package/lib/smart-navigation/projects.d.ts +0 -2
  819. package/lib/smart-navigation/smart-navigation.interface.d.ts +0 -5
  820. package/lib/smart-navigation/smart-navigation.module.d.ts +0 -6
  821. package/lib/smart-navigation/smart-navigation.service.d.ts +0 -12
  822. package/lib/smart-ng-client.module.d.ts +0 -25
  823. package/lib/smart-ng-client.service.d.ts +0 -10
  824. package/lib/smart-subject/projects.d.ts +0 -1
  825. package/lib/smart-subject/smart-subject.d.ts +0 -6
  826. package/lib/smart-tab-group/projects.d.ts +0 -1
  827. package/lib/smart-tab-group/smart-tab-group.module.d.ts +0 -10
  828. package/lib/smart-table/components/default-actions-popup/default-actions-popup.component.d.ts +0 -19
  829. package/lib/smart-table/components/loading/loading.component.d.ts +0 -8
  830. package/lib/smart-table/directives/mat-context-menu-trigger-for.directive.d.ts +0 -10
  831. package/lib/smart-table/projects.d.ts +0 -4
  832. package/lib/smart-table/smarttable.component.d.ts +0 -34
  833. package/lib/smart-table/smarttable.model.d.ts +0 -202
  834. package/lib/smart-table/smarttable.module.d.ts +0 -29
  835. package/lib/smart-table/smarttable.service.d.ts +0 -6
  836. package/lib/smart-table/tables/material-table/material-table.component.d.ts +0 -8
  837. package/lib/smart-table/tables/mobile-table/mobile-table.component.d.ts +0 -8
  838. package/lib/smart-table/tables/table.d.ts +0 -98
  839. package/lib/smart-tree/projects.d.ts +0 -5
  840. package/lib/smart-tree/smarttree-generic.service.d.ts +0 -48
  841. package/lib/smart-tree/smarttree.component.d.ts +0 -43
  842. package/lib/smart-tree/smarttree.model.d.ts +0 -42
  843. package/lib/smart-tree/smarttree.module.d.ts +0 -16
  844. package/lib/smart-tree/smarttree.node.model.d.ts +0 -13
  845. package/lib/smart-tree/smarttree.service.d.ts +0 -25
  846. package/lib/smart-tree/smarttree.service.interface.d.ts +0 -43
  847. package/lib/smart-tree/tree-api/api/tree.service.d.ts +0 -336
  848. package/lib/smart-tree/tree-api/configuration.d.ts +0 -104
  849. package/lib/smart-tree/tree-api/encoder.d.ts +0 -11
  850. package/lib/smart-tree/tree-api/param.d.ts +0 -37
  851. package/lib/smart-tree/tree-api/variables.d.ts +0 -8
  852. package/lib/smart-validation/named-validator.service.d.ts +0 -17
  853. package/lib/smart-validation/projects.d.ts +0 -3
  854. package/lib/smart-validation/smart-validation.module.d.ts +0 -8
  855. package/lib/smart-validation/smart-validation.types.d.ts +0 -12
  856. package/lib/theme/theme.service.d.ts +0 -17
  857. package/lib/view-context/api/api/api.d.ts +0 -3
  858. package/lib/view-context/api/api/view.service.d.ts +0 -426
  859. package/lib/view-context/api/api-default/binaryContentData.d.ts +0 -2
  860. package/lib/view-context/api/api-default/binaryData.d.ts +0 -2
  861. package/lib/view-context/api/api-default/invocationError.d.ts +0 -2
  862. package/lib/view-context/api/api-default/invocationRequest.d.ts +0 -2
  863. package/lib/view-context/api/api-default/invocationRun.d.ts +0 -2
  864. package/lib/view-context/api/api.module.d.ts +0 -11
  865. package/lib/view-context/api/configuration.d.ts +0 -104
  866. package/lib/view-context/api/encoder.d.ts +0 -11
  867. package/lib/view-context/api/index.d.ts +0 -6
  868. package/lib/view-context/api/model/backgroundProcessInfo.d.ts +0 -25
  869. package/lib/view-context/api/model/badgeDescriptor.d.ts +0 -15
  870. package/lib/view-context/api/model/clipboardData.d.ts +0 -20
  871. package/lib/view-context/api/model/closeResult.d.ts +0 -16
  872. package/lib/view-context/api/model/componentConstraint.d.ts +0 -31
  873. package/lib/view-context/api/model/componentModel.d.ts +0 -47
  874. package/lib/view-context/api/model/componentModelChange.d.ts +0 -29
  875. package/lib/view-context/api/model/dataChange.d.ts +0 -25
  876. package/lib/view-context/api/model/dataChangeEvent.d.ts +0 -31
  877. package/lib/view-context/api/model/dataChangeKind.d.ts +0 -19
  878. package/lib/view-context/api/model/deviceInfo.d.ts +0 -43
  879. package/lib/view-context/api/model/downloadedFile.d.ts +0 -19
  880. package/lib/view-context/api/model/iconPosition.d.ts +0 -18
  881. package/lib/view-context/api/model/imageResource.d.ts +0 -28
  882. package/lib/view-context/api/model/link.d.ts +0 -35
  883. package/lib/view-context/api/model/menuDescriptor.d.ts +0 -17
  884. package/lib/view-context/api/model/menuOpenDirection.d.ts +0 -21
  885. package/lib/view-context/api/model/menuTriggerType.d.ts +0 -15
  886. package/lib/view-context/api/model/messageData.d.ts +0 -29
  887. package/lib/view-context/api/model/messageOption.d.ts +0 -20
  888. package/lib/view-context/api/model/messageOptionType.d.ts +0 -16
  889. package/lib/view-context/api/model/messageResult.d.ts +0 -16
  890. package/lib/view-context/api/model/messageTextType.d.ts +0 -15
  891. package/lib/view-context/api/model/messageType.d.ts +0 -17
  892. package/lib/view-context/api/model/models.d.ts +0 -70
  893. package/lib/view-context/api/model/multiComboBoxElement.d.ts +0 -16
  894. package/lib/view-context/api/model/multiComboBoxModel.d.ts +0 -16
  895. package/lib/view-context/api/model/namedValidator.d.ts +0 -27
  896. package/lib/view-context/api/model/openPendingData.d.ts +0 -29
  897. package/lib/view-context/api/model/publishedViewData.d.ts +0 -14
  898. package/lib/view-context/api/model/serverRequestExecutionStat.d.ts +0 -40
  899. package/lib/view-context/api/model/serverRequestTrack.d.ts +0 -60
  900. package/lib/view-context/api/model/serverRequestType.d.ts +0 -22
  901. package/lib/view-context/api/model/shellProperty.d.ts +0 -15
  902. package/lib/view-context/api/model/smartLinkData.d.ts +0 -29
  903. package/lib/view-context/api/model/smartLinkMigrationStatus.d.ts +0 -39
  904. package/lib/view-context/api/model/statisticRecord.d.ts +0 -36
  905. package/lib/view-context/api/model/style.d.ts +0 -21
  906. package/lib/view-context/api/model/themeDefinition.d.ts +0 -22
  907. package/lib/view-context/api/model/themeDescriptor.d.ts +0 -16
  908. package/lib/view-context/api/model/themeShellDescriptor.d.ts +0 -17
  909. package/lib/view-context/api/model/uiAction.d.ts +0 -68
  910. package/lib/view-context/api/model/uiActionButtonDescriptor.d.ts +0 -25
  911. package/lib/view-context/api/model/uiActionButtonType.d.ts +0 -25
  912. package/lib/view-context/api/model/uiActionConstraint.d.ts +0 -22
  913. package/lib/view-context/api/model/uiActionDefinition.d.ts +0 -19
  914. package/lib/view-context/api/model/uiActionDefinitionEntry.d.ts +0 -18
  915. package/lib/view-context/api/model/uiActionDescriptor.d.ts +0 -44
  916. package/lib/view-context/api/model/uiActionDialogDescriptor.d.ts +0 -23
  917. package/lib/view-context/api/model/uiActionFeedbackType.d.ts +0 -18
  918. package/lib/view-context/api/model/uiActionInputType.d.ts +0 -19
  919. package/lib/view-context/api/model/uiActionRequest.d.ts +0 -31
  920. package/lib/view-context/api/model/uiActionSchedule.d.ts +0 -14
  921. package/lib/view-context/api/model/uiActionTooltip.d.ts +0 -25
  922. package/lib/view-context/api/model/uiActionUploadDescriptor.d.ts +0 -27
  923. package/lib/view-context/api/model/uploadWidgetType.d.ts +0 -16
  924. package/lib/view-context/api/model/uploadedFile.d.ts +0 -20
  925. package/lib/view-context/api/model/valueSet.d.ts +0 -20
  926. package/lib/view-context/api/model/view.d.ts +0 -88
  927. package/lib/view-context/api/model/viewApiError.d.ts +0 -18
  928. package/lib/view-context/api/model/viewConstraint.d.ts +0 -18
  929. package/lib/view-context/api/model/viewContext.d.ts +0 -33
  930. package/lib/view-context/api/model/viewContextChange.d.ts +0 -24
  931. package/lib/view-context/api/model/viewContextData.d.ts +0 -25
  932. package/lib/view-context/api/model/viewContextUpdate.d.ts +0 -24
  933. package/lib/view-context/api/model/viewData.d.ts +0 -28
  934. package/lib/view-context/api/model/viewEventHandler.d.ts +0 -36
  935. package/lib/view-context/api/model/viewPlaceholder.d.ts +0 -22
  936. package/lib/view-context/api/model/viewState.d.ts +0 -20
  937. package/lib/view-context/api/model/viewStateUpdate.d.ts +0 -22
  938. package/lib/view-context/api/model/viewType.d.ts +0 -16
  939. package/lib/view-context/api/param.d.ts +0 -37
  940. package/lib/view-context/api/variables.d.ts +0 -8
  941. package/lib/view-context/default-view-components.token.d.ts +0 -18
  942. package/lib/view-context/invalid-fields-snack-bar/invalid-fields-snack-bar.component.d.ts +0 -9
  943. package/lib/view-context/message-dialog/message-dialog.component.d.ts +0 -27
  944. package/lib/view-context/projects.d.ts +0 -26
  945. package/lib/view-context/property-definition-data.d.ts +0 -5
  946. package/lib/view-context/reuse-router-slot.token.d.ts +0 -3
  947. package/lib/view-context/smart-embedded-slot.directive.d.ts +0 -20
  948. package/lib/view-context/smart-ui-action/components/menu/click/menu.component.d.ts +0 -49
  949. package/lib/view-context/smart-ui-action/components/menu/hover/hover-menu.component.d.ts +0 -50
  950. package/lib/view-context/smart-ui-action/components/menu/menu.constants.d.ts +0 -7
  951. package/lib/view-context/smart-ui-action/components/menu/menu.service.d.ts +0 -11
  952. package/lib/view-context/smart-ui-action/components/success-snack-bar/success-snack-bar.component.d.ts +0 -13
  953. package/lib/view-context/smart-ui-action/components/theme-selector/theme-selector.component.d.ts +0 -16
  954. package/lib/view-context/smart-ui-action/components/upload-widget/photo-capture-widget/photo-capture-widget.component.d.ts +0 -30
  955. package/lib/view-context/smart-ui-action/components/upload-widget/prime-file-uploader/prime-file-uploader.component.d.ts +0 -32
  956. package/lib/view-context/smart-ui-action/components/upload-widget/upload-widget.component.d.ts +0 -40
  957. package/lib/view-context/smart-ui-action/components/upload-widget/upload-widget.utils.d.ts +0 -3
  958. package/lib/view-context/smart-ui-action/components/upload-widget/voice-record-widget/voice-record-widget.component.d.ts +0 -43
  959. package/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.component.d.ts +0 -29
  960. package/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.service.d.ts +0 -21
  961. package/lib/view-context/smart-ui-action/dialogs/ui-action-dialog-button/ui-action-dialog-button.component.d.ts +0 -15
  962. package/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.component.d.ts +0 -36
  963. package/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.service.d.ts +0 -26
  964. package/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.component.d.ts +0 -31
  965. package/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.service.d.ts +0 -28
  966. package/lib/view-context/smart-ui-action/file-editor-toolbar/file-editor-toolbar.component.d.ts +0 -13
  967. package/lib/view-context/smart-ui-action/ui-action-button/button-icon-placeholder.d.ts +0 -5
  968. package/lib/view-context/smart-ui-action/ui-action-button/ui-action-button.component.d.ts +0 -55
  969. package/lib/view-context/smart-ui-action/ui-action-toolbar.component.d.ts +0 -73
  970. package/lib/view-context/smart-ui-action/ui-action.descriptor.service.d.ts +0 -23
  971. package/lib/view-context/smart-ui-action/ui-action.model.d.ts +0 -43
  972. package/lib/view-context/smart-ui-action/ui-action.service.d.ts +0 -42
  973. package/lib/view-context/smart-view-context-dialog.service.d.ts +0 -21
  974. package/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.component.d.ts +0 -15
  975. package/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.service.d.ts +0 -21
  976. package/lib/view-context/smart-view-context.interceptor.d.ts +0 -17
  977. package/lib/view-context/smart-view-context.model.d.ts +0 -37
  978. package/lib/view-context/smart-view-context.module.d.ts +0 -86
  979. package/lib/view-context/smart-view-context.service.d.ts +0 -172
  980. package/lib/view-context/smart-view-redirect/smart-view-redirect.d.ts +0 -16
  981. package/lib/view-context/utility/componentLibrary.d.ts +0 -6
  982. package/lib/view-context/utility/smart-object-utility.d.ts +0 -5
  983. package/lib/view-context/utility/smart-style-utility.d.ts +0 -12
  984. package/lib/view-context/value-api/api/api.d.ts +0 -3
  985. package/lib/view-context/value-api/api/value.service.d.ts +0 -35
  986. package/lib/view-context/value-api/api.module.d.ts +0 -11
  987. package/lib/view-context/value-api/configuration.d.ts +0 -104
  988. package/lib/view-context/value-api/encoder.d.ts +0 -11
  989. package/lib/view-context/value-api/index.d.ts +0 -6
  990. package/lib/view-context/value-api/model/genericValue.d.ts +0 -33
  991. package/lib/view-context/value-api/model/models.d.ts +0 -10
  992. package/lib/view-context/value-api/model/value.d.ts +0 -29
  993. package/lib/view-context/value-api/model/valueSetData.d.ts +0 -41
  994. package/lib/view-context/value-api/model/valueSetDefinition.d.ts +0 -16
  995. package/lib/view-context/value-api/model/valueSetDefinitionData.d.ts +0 -53
  996. package/lib/view-context/value-api/model/valueSetDefinitionIdentifier.d.ts +0 -21
  997. package/lib/view-context/value-api/model/valueSetDefinitionKind.d.ts +0 -22
  998. package/lib/view-context/value-api/model/valueSetExpression.d.ts +0 -18
  999. package/lib/view-context/value-api/model/valueSetOperand.d.ts +0 -25
  1000. package/lib/view-context/value-api/model/valueSetOperation.d.ts +0 -17
  1001. package/lib/view-context/value-api/param.d.ts +0 -37
  1002. package/lib/view-context/value-api/variables.d.ts +0 -8
  1003. package/lib/view-context/view-handler-resolution.d.ts +0 -11
  1004. package/lib/view-context/view-op.d.ts +0 -18
  1005. package/lib/view-context/view-slot-resolution.d.ts +0 -27
  1006. package/projects.d.ts +0 -27
  1007. package/smartbit4all-ng-client-6.0.35.tgz +0 -0
@@ -1,349 +0,0 @@
1
- import { Component, HostListener, Inject, Input, ViewChild, } from '@angular/core';
2
- import { interval, Subject, takeUntil } from 'rxjs';
3
- import { IconPosition, MenuTriggerType, } from '../api';
4
- import { UiActionButtonType } from '../api/model/uiActionButtonType';
5
- import { UiActionDescriptorService } from './ui-action.descriptor.service';
6
- import { COMPONENT_LIBRARY, ComponentLibrary } from '../utility/componentLibrary';
7
- import { ToolbarAlignment, ToolbarDirection, } from '../../smart-component-layout/api';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "./ui-action.service";
10
- import * as i2 from "./components/menu/menu.service";
11
- import * as i3 from "@angular/common";
12
- import * as i4 from "./ui-action-button/ui-action-button.component";
13
- import * as i5 from "./components/menu/click/menu.component";
14
- import * as i6 from "./components/menu/hover/hover-menu.component";
15
- import * as i7 from "./components/theme-selector/theme-selector.component";
16
- import * as i8 from "../utility/componentLibrary";
17
- export class UiActionToolbarComponent {
18
- constructor(service, inject, menuService, changeDetector, compLib) {
19
- this.service = service;
20
- this.inject = inject;
21
- this.menuService = menuService;
22
- this.changeDetector = changeDetector;
23
- this.compLib = compLib;
24
- this._destroy$ = new Subject();
25
- this.componentLibrary = ComponentLibrary; // Expose the enum to the template
26
- this.pressedButtonActive = true;
27
- this.scrollOnWrap = false;
28
- this.isScrollable = false;
29
- this.scrollSpeed = 5;
30
- this.scrollDelay = 16;
31
- this.scrollHoldDelay = 100;
32
- this.schedules = new Map();
33
- this.buttonLeft = {
34
- title: '',
35
- color: 'primary',
36
- type: UiActionButtonType.RAISED,
37
- icon: this.compLib === ComponentLibrary.PRIMENG ? 'chevron-left' : 'arrow_back',
38
- iconPosition: IconPosition.PRE,
39
- };
40
- this.buttonRight = {
41
- title: '',
42
- color: 'primary',
43
- type: UiActionButtonType.RAISED,
44
- icon: this.compLib === ComponentLibrary.PRIMENG ? 'chevron-right' : 'arrow_forward',
45
- iconPosition: IconPosition.PRE,
46
- };
47
- // Injects the basic UiActionDescriptorService provided by the AppModule
48
- this.manager = inject.get(UiActionDescriptorService);
49
- this.subscribeToLanguageChange();
50
- }
51
- ngOnInit() {
52
- // Overrides the basic UiActionDescriptorService with a custom one if there is one
53
- if (this.uiActionDescriptorService) {
54
- this.manager = this.uiActionDescriptorService;
55
- this.subscribeToLanguageChange();
56
- }
57
- if (this.toolbarPropertes) {
58
- this.scrollOnWrap = this.toolbarPropertes.scrollable ?? false;
59
- }
60
- this.setUp();
61
- }
62
- ngAfterViewInit() {
63
- if (this.scrollOnWrap) {
64
- setTimeout(() => {
65
- this.checkScrollable();
66
- });
67
- }
68
- }
69
- onResize() {
70
- if (this.scrollOnWrap) {
71
- this.checkScrollable();
72
- }
73
- }
74
- ngOnChanges(changes) {
75
- if (changes['uiActionModels']) {
76
- let uiActionModels = changes['uiActionModels'].currentValue;
77
- if (uiActionModels) {
78
- this.uiActionModels = uiActionModels;
79
- this.setUp();
80
- }
81
- }
82
- }
83
- ngOnDestroy() {
84
- this.clearSchedule();
85
- this._destroy$.next();
86
- this._destroy$.complete();
87
- }
88
- subscribeToLanguageChange() {
89
- this.languageChangedSubscription?.unsubscribe();
90
- this.languageChangedSubscription = this.manager.languageChanged
91
- .pipe(takeUntil(this._destroy$))
92
- .subscribe(() => {
93
- this.setUp();
94
- });
95
- }
96
- async setUp() {
97
- if (this.uiActionModels) {
98
- let uiActionModelsWithDescriptions = [];
99
- for (const uiActionModel of this.uiActionModels) {
100
- const uiAction = uiActionModel.uiAction;
101
- // using equality is a must here, undefined and null should be equal
102
- if (this.id == uiAction.toolbar) {
103
- uiActionModel.descriptor = await this.manager.getActionDescriptor(uiActionModel.uiAction);
104
- uiActionModelsWithDescriptions.push(uiActionModel);
105
- }
106
- }
107
- this.scheduleActions(this.uiActionModels);
108
- this.uiActionModelsWithDescriptions = uiActionModelsWithDescriptions;
109
- this.changeDetector.markForCheck();
110
- this.changeDetector.detectChanges();
111
- setTimeout(() => this.checkScrollable());
112
- }
113
- }
114
- setActionModels(models) {
115
- this.uiActionModels = models;
116
- this.setUp();
117
- }
118
- clearSchedule() {
119
- this.schedules.forEach((sub) => sub.unsubscribe());
120
- this.schedules.clear();
121
- }
122
- scheduleActions(uiActionModels) {
123
- this.clearSchedule();
124
- uiActionModels.forEach((uiActionModel) => {
125
- var uiAction = uiActionModel.uiAction;
126
- if (!uiAction.code ||
127
- uiAction.disabled ||
128
- !uiAction.schedule?.intervalSeconds ||
129
- this.schedules.has(uiAction.code) ||
130
- uiAction.subActions?.length) {
131
- return;
132
- }
133
- var intervalInMs = uiAction.schedule.intervalSeconds * 1000;
134
- var sub = interval(intervalInMs)
135
- .pipe(takeUntil(this._destroy$))
136
- .subscribe(() => {
137
- var scheduledUiActionModel = {
138
- ...uiActionModel,
139
- uiAction: {
140
- ...uiActionModel.uiAction,
141
- params: {
142
- ...uiActionModel.uiAction.params,
143
- scheduled: true,
144
- },
145
- },
146
- };
147
- this.fireAction(scheduledUiActionModel);
148
- });
149
- this.schedules.set(uiAction.code, sub);
150
- });
151
- }
152
- trackByFn(idx, m) {
153
- return m.uiAction.code ?? idx;
154
- }
155
- async fireAction(uiActionModel) {
156
- if (uiActionModel.uiAction.disabled) {
157
- return;
158
- }
159
- let options = {
160
- nodeId: uiActionModel.nodeId,
161
- widgetId: uiActionModel.widgetId,
162
- };
163
- await this.service.execute(uiActionModel.uiAction, uiActionModel, options);
164
- }
165
- async onActionClicked(event, uiActionModel) {
166
- // event.stopPropagation();
167
- this.menuService.closeAllMenus();
168
- if (uiActionModel.uiAction.disabled) {
169
- return;
170
- }
171
- if (this.pressedButtonActive) {
172
- this.pressedButtonActive = false;
173
- // ui-tiered-menu emits a full UiAction (no 'event' property),
174
- // ui-action-button emits { event: MouseEvent, code, descriptor }.
175
- // Use the emitted UiAction only for tiered-menu sub-actions.
176
- let actionToExecute = {
177
- ...uiActionModel,
178
- uiAction: !event.event && event.code ? event : uiActionModel.uiAction,
179
- };
180
- await this.fireAction(actionToExecute);
181
- this.pressedButtonActive = true;
182
- }
183
- }
184
- onActionDoubleClicked(event, uiActionModel) {
185
- // event.stopPropagation();
186
- // We do not handle double clicks
187
- }
188
- getbtnClass(uiActionModel) {
189
- if (uiActionModel.descriptor?.color) {
190
- return 'p-button-' + uiActionModel.descriptor?.color;
191
- }
192
- return '';
193
- }
194
- getType(uiActionModel) {
195
- if (!uiActionModel.descriptor?.type) {
196
- // console.log(`Action button type unset: ${uiActionModel?.uiAction?.code}`);
197
- }
198
- if (this.compLib === ComponentLibrary.PRIMENG) {
199
- // return '';
200
- // 'p-button-text': true,
201
- /* 'p-button-raised': true,
202
- 'p-button-rounded': true,
203
- 'p-button-outlined': true,
204
- */
205
- switch (uiActionModel.descriptor?.type) {
206
- case UiActionButtonType.NORMAL:
207
- return {
208
- 'p-button-text': true,
209
- 'p-button-rounded': true,
210
- };
211
- case UiActionButtonType.FLAT:
212
- return { 'p-button-raised': true, 'p-button-rounded': true };
213
- case UiActionButtonType.RAISED:
214
- return { 'p-button-raised': true, 'p-button-rounded': true };
215
- case UiActionButtonType.STROKED:
216
- return { 'p-button-outlined': true, 'p-button-rounded': true };
217
- case UiActionButtonType.MINI_FAB:
218
- return { 'p-button-rounded': true, 'p-button-text': true, 'p-button-raised': true };
219
- default:
220
- return {
221
- 'p-button-text': true,
222
- 'p-button-raised': true,
223
- 'p-button-rounded': true,
224
- 'p-button-outlined': true,
225
- };
226
- }
227
- }
228
- else {
229
- switch (uiActionModel.descriptor?.type) {
230
- case UiActionButtonType.NORMAL:
231
- return 'mat-mdc-button';
232
- case UiActionButtonType.FLAT:
233
- return 'mat-mdc-flat-button';
234
- case UiActionButtonType.RAISED:
235
- return 'mat-mdc-raised-button';
236
- case UiActionButtonType.STROKED:
237
- return 'mat-mdc-stroked-button';
238
- case UiActionButtonType.ICON:
239
- return 'mat-mdc-icon-button';
240
- case UiActionButtonType.MINI_FAB:
241
- return 'mat-mdc-mini-fab';
242
- case UiActionButtonType.FAB:
243
- return 'mat-mdc-fab';
244
- default:
245
- // console.log(`Unhandled action button type case: ${uiActionModel.descriptor?.type}`);
246
- return `mat-button`;
247
- }
248
- }
249
- }
250
- iconPosition() {
251
- return IconPosition;
252
- }
253
- isOnlyIcon(uiActionModel) {
254
- return (uiActionModel.descriptor?.type === UiActionButtonType.ICON ||
255
- uiActionModel.descriptor?.type === UiActionButtonType.MINI_FAB ||
256
- uiActionModel.descriptor?.type === UiActionButtonType.FAB);
257
- }
258
- getTooltipPos(pos) {
259
- if (pos) {
260
- return pos.toLowerCase();
261
- }
262
- else {
263
- return 'before';
264
- }
265
- }
266
- getTooltipDelay(delay) {
267
- return delay ? delay : 1000;
268
- }
269
- getTooltipHideDelay(delay) {
270
- return delay ? delay : 2000;
271
- }
272
- checkScrollable() {
273
- if (!this.scrollOnWrap) {
274
- return;
275
- }
276
- const scrollable = this.containerRef?.nativeElement;
277
- if (scrollable) {
278
- this.isScrollable = scrollable.scrollWidth > scrollable.clientWidth;
279
- }
280
- }
281
- scrollLeft() {
282
- this.containerRef.nativeElement.scrollLeft -= 100;
283
- }
284
- scrollRight() {
285
- this.containerRef.nativeElement.scrollLeft += 100;
286
- }
287
- scrollStart(direction) {
288
- this.scrollTimeout = setTimeout(() => {
289
- const delta = direction === 'left' ? -this.scrollSpeed : this.scrollSpeed;
290
- this.scrollInterval = setInterval(() => {
291
- this.containerRef.nativeElement.scrollLeft += delta;
292
- }, this.scrollDelay);
293
- }, this.scrollHoldDelay);
294
- }
295
- stopScroll() {
296
- if (this.scrollTimeout) {
297
- clearTimeout(this.scrollTimeout);
298
- this.scrollTimeout = null;
299
- }
300
- if (this.scrollInterval) {
301
- clearInterval(this.scrollInterval);
302
- this.scrollInterval = null;
303
- }
304
- }
305
- onHover() {
306
- this.menuService.closeMenusForToolbar(this.id ?? '');
307
- }
308
- get isVertical() {
309
- return this.toolbarPropertes?.direction === ToolbarDirection.VERTICAL;
310
- }
311
- get isHorizontal() {
312
- return this.toolbarPropertes?.direction === ToolbarDirection.HORIZONTAL;
313
- }
314
- get isAlignedStart() {
315
- return this.toolbarPropertes?.alignment === ToolbarAlignment.START;
316
- }
317
- get isAlignedEnd() {
318
- return this.toolbarPropertes?.alignment === ToolbarAlignment.END;
319
- }
320
- get triggerType() {
321
- return MenuTriggerType;
322
- }
323
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: UiActionToolbarComponent, deps: [{ token: i1.UiActionService }, { token: i0.Injector }, { token: i2.UiMenuService }, { token: i0.ChangeDetectorRef }, { token: COMPONENT_LIBRARY }], target: i0.ɵɵFactoryTarget.Component }); }
324
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.11", type: UiActionToolbarComponent, selector: "smart-ui-action-toolbar", inputs: { uiActionModels: "uiActionModels", uiActionDescriptorService: "uiActionDescriptorService", id: "id", scrollOnWrap: "scrollOnWrap", toolbarPropertes: "toolbarPropertes" }, host: { listeners: { "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["container"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (isScrollable && scrollOnWrap) {\r\n <ui-action-button\r\n [disabled]=\"!isScrollable\"\r\n [descriptor]=\"buttonLeft\"\r\n (actionClick)=\"scrollLeft()\"\r\n (mousedown)=\"scrollStart('left')\"\r\n (mouseup)=\"stopScroll()\"\r\n (mouseleave)=\"stopScroll()\"\r\n (touchstart)=\"scrollStart('left')\"\r\n (touchend)=\"stopScroll()\"\r\n />\r\n}\r\n\r\n<div\r\n #container\r\n class=\"uiActionButtonsContainer\"\r\n (click)=\"$event.stopPropagation()\"\r\n [ngClass]=\"{\r\n scrollableContent: scrollOnWrap,\r\n verticalToolbar: isVertical,\r\n horizontalToolbar: isHorizontal,\r\n alignedStart: isAlignedStart,\r\n alignedEnd: isAlignedEnd,\r\n }\"\r\n>\r\n <ng-container *ngFor=\"let uiActionModel of uiActionModelsWithDescriptions; trackBy: trackByFn\">\r\n @if (uiActionModel.uiAction.code === 'themeSelector') {\r\n <theme-selector [model]=\"uiActionModel\"></theme-selector>\r\n } @else if (uiActionModel.uiAction.subActions && uiActionModel.uiAction.subActions.length > 0) {\r\n <ng-container\r\n *ngTemplateOutlet=\"menuTypes; context: { uiActionModel: uiActionModel }\"\r\n ></ng-container>\r\n } @else {\r\n <ui-action-button\r\n (mouseenter)=\"onHover()\"\r\n [descriptor]=\"uiActionModel.descriptor!\"\r\n [code]=\"uiActionModel.uiAction.code\"\r\n [disabled]=\"!!uiActionModel.uiAction.disabled\"\r\n [addedCssClass]=\"uiActionModel.cssClass\"\r\n [viewActivated]=\"uiActionModel.uiAction.viewActivated\"\r\n (actionClick)=\"onActionClicked($event, uiActionModel)\"\r\n (actionDoubleClick)=\"onActionDoubleClicked($event, uiActionModel)\"\r\n >\r\n </ui-action-button>\r\n }\r\n </ng-container>\r\n</div>\r\n\r\n@if (isScrollable && scrollOnWrap) {\r\n <ui-action-button\r\n [disabled]=\"!isScrollable\"\r\n [descriptor]=\"buttonRight\"\r\n (actionClick)=\"scrollRight()\"\r\n (mousedown)=\"scrollStart('right')\"\r\n (mouseup)=\"stopScroll()\"\r\n (mouseleave)=\"stopScroll()\"\r\n (touchstart)=\"scrollStart('right')\"\r\n (touchend)=\"stopScroll()\"\r\n />\r\n}\r\n\r\n<ng-template #menuTypes let-uiActionModel=\"uiActionModel\">\r\n @switch (uiActionModel?.uiAction?.descriptor?.menu?.triggerType) {\r\n @case (triggerType.HOVER) {\r\n <ui-hover-menu\r\n #menu\r\n [toolbarId]=\"id\"\r\n (mouseenter)=\"onHover()\"\r\n [triggerAction]=\"uiActionModel.uiAction\"\r\n [subActions]=\"uiActionModel.uiAction.subActions!\"\r\n (actionClick)=\"onActionClicked($event, uiActionModel)\"\r\n ></ui-hover-menu>\r\n }\r\n @case (triggerType.CLICK) {\r\n <ui-tiered-menu\r\n #menu\r\n (mouseenter)=\"onHover()\"\r\n [triggerAction]=\"uiActionModel.uiAction\"\r\n [subActions]=\"uiActionModel.uiAction.subActions!\"\r\n (actionClick)=\"onActionClicked($event, uiActionModel)\"\r\n ></ui-tiered-menu>\r\n }\r\n @default {\r\n <ui-tiered-menu\r\n #menu\r\n (mouseenter)=\"onHover()\"\r\n [triggerAction]=\"uiActionModel.uiAction\"\r\n [subActions]=\"uiActionModel.uiAction.subActions!\"\r\n (actionClick)=\"onActionClicked($event, uiActionModel)\"\r\n ></ui-tiered-menu>\r\n }\r\n }\r\n</ng-template>\r\n", styles: [":host:has(.uiActionButtonsContainer.scrollableContent){display:flex;flex-direction:row;justify-content:space-between;gap:.5rem;width:100%;align-items:center}:host:has(.verticalToolbar){height:100%}:host:has(.horizontalToolbar.alignedEnd){width:100%}.uiActionButtonsContainer{display:flex;flex-direction:row;gap:1rem;flex-wrap:wrap}.uiActionButtonsContainer ::ng-deep button{display:flex;gap:1rem;align-items:center;justify-content:center}.uiActionButtonsContainer ::ng-deep .buttonWrapper{position:relative;width:fit-content;height:fit-content}.scrollableContent{flex:1;flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;display:flex;scrollbar-width:none;padding:.5rem 0;align-items:center}.scrollableContent::-webkit-scrollbar{display:none!important}.verticalToolbar{display:flex;flex-direction:column;height:100%}.verticalToolbar ::ng-deep ui-action-button,.verticalToolbar ::ng-deep button{width:100%}.alignedStart{justify-content:flex-start}.alignedEnd{justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.UiActionButtonComponent, selector: "ui-action-button", inputs: ["disabled", "descriptor", "code", "viewActivated", "addedCssClass", "addBasicClasses", "iconPlaceholder"], outputs: ["actionClick", "actionDoubleClick"] }, { kind: "component", type: i5.ClickMenuComponent, selector: "ui-tiered-menu", inputs: ["triggerAction", "isSubmenu", "menuOpenDirection"], outputs: ["actionClick", "submenuOpened"] }, { kind: "component", type: i6.HoverMenuComponent, selector: "ui-hover-menu", inputs: ["triggerAction", "isSubmenu", "menuOpenDirection", "toolbarId"], outputs: ["actionClick", "submenuOpened"] }, { kind: "component", type: i7.ThemeSelectorComponent, selector: "theme-selector", inputs: ["model"] }] }); }
325
- }
326
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: UiActionToolbarComponent, decorators: [{
327
- type: Component,
328
- args: [{ selector: 'smart-ui-action-toolbar', template: "@if (isScrollable && scrollOnWrap) {\r\n <ui-action-button\r\n [disabled]=\"!isScrollable\"\r\n [descriptor]=\"buttonLeft\"\r\n (actionClick)=\"scrollLeft()\"\r\n (mousedown)=\"scrollStart('left')\"\r\n (mouseup)=\"stopScroll()\"\r\n (mouseleave)=\"stopScroll()\"\r\n (touchstart)=\"scrollStart('left')\"\r\n (touchend)=\"stopScroll()\"\r\n />\r\n}\r\n\r\n<div\r\n #container\r\n class=\"uiActionButtonsContainer\"\r\n (click)=\"$event.stopPropagation()\"\r\n [ngClass]=\"{\r\n scrollableContent: scrollOnWrap,\r\n verticalToolbar: isVertical,\r\n horizontalToolbar: isHorizontal,\r\n alignedStart: isAlignedStart,\r\n alignedEnd: isAlignedEnd,\r\n }\"\r\n>\r\n <ng-container *ngFor=\"let uiActionModel of uiActionModelsWithDescriptions; trackBy: trackByFn\">\r\n @if (uiActionModel.uiAction.code === 'themeSelector') {\r\n <theme-selector [model]=\"uiActionModel\"></theme-selector>\r\n } @else if (uiActionModel.uiAction.subActions && uiActionModel.uiAction.subActions.length > 0) {\r\n <ng-container\r\n *ngTemplateOutlet=\"menuTypes; context: { uiActionModel: uiActionModel }\"\r\n ></ng-container>\r\n } @else {\r\n <ui-action-button\r\n (mouseenter)=\"onHover()\"\r\n [descriptor]=\"uiActionModel.descriptor!\"\r\n [code]=\"uiActionModel.uiAction.code\"\r\n [disabled]=\"!!uiActionModel.uiAction.disabled\"\r\n [addedCssClass]=\"uiActionModel.cssClass\"\r\n [viewActivated]=\"uiActionModel.uiAction.viewActivated\"\r\n (actionClick)=\"onActionClicked($event, uiActionModel)\"\r\n (actionDoubleClick)=\"onActionDoubleClicked($event, uiActionModel)\"\r\n >\r\n </ui-action-button>\r\n }\r\n </ng-container>\r\n</div>\r\n\r\n@if (isScrollable && scrollOnWrap) {\r\n <ui-action-button\r\n [disabled]=\"!isScrollable\"\r\n [descriptor]=\"buttonRight\"\r\n (actionClick)=\"scrollRight()\"\r\n (mousedown)=\"scrollStart('right')\"\r\n (mouseup)=\"stopScroll()\"\r\n (mouseleave)=\"stopScroll()\"\r\n (touchstart)=\"scrollStart('right')\"\r\n (touchend)=\"stopScroll()\"\r\n />\r\n}\r\n\r\n<ng-template #menuTypes let-uiActionModel=\"uiActionModel\">\r\n @switch (uiActionModel?.uiAction?.descriptor?.menu?.triggerType) {\r\n @case (triggerType.HOVER) {\r\n <ui-hover-menu\r\n #menu\r\n [toolbarId]=\"id\"\r\n (mouseenter)=\"onHover()\"\r\n [triggerAction]=\"uiActionModel.uiAction\"\r\n [subActions]=\"uiActionModel.uiAction.subActions!\"\r\n (actionClick)=\"onActionClicked($event, uiActionModel)\"\r\n ></ui-hover-menu>\r\n }\r\n @case (triggerType.CLICK) {\r\n <ui-tiered-menu\r\n #menu\r\n (mouseenter)=\"onHover()\"\r\n [triggerAction]=\"uiActionModel.uiAction\"\r\n [subActions]=\"uiActionModel.uiAction.subActions!\"\r\n (actionClick)=\"onActionClicked($event, uiActionModel)\"\r\n ></ui-tiered-menu>\r\n }\r\n @default {\r\n <ui-tiered-menu\r\n #menu\r\n (mouseenter)=\"onHover()\"\r\n [triggerAction]=\"uiActionModel.uiAction\"\r\n [subActions]=\"uiActionModel.uiAction.subActions!\"\r\n (actionClick)=\"onActionClicked($event, uiActionModel)\"\r\n ></ui-tiered-menu>\r\n }\r\n }\r\n</ng-template>\r\n", styles: [":host:has(.uiActionButtonsContainer.scrollableContent){display:flex;flex-direction:row;justify-content:space-between;gap:.5rem;width:100%;align-items:center}:host:has(.verticalToolbar){height:100%}:host:has(.horizontalToolbar.alignedEnd){width:100%}.uiActionButtonsContainer{display:flex;flex-direction:row;gap:1rem;flex-wrap:wrap}.uiActionButtonsContainer ::ng-deep button{display:flex;gap:1rem;align-items:center;justify-content:center}.uiActionButtonsContainer ::ng-deep .buttonWrapper{position:relative;width:fit-content;height:fit-content}.scrollableContent{flex:1;flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;display:flex;scrollbar-width:none;padding:.5rem 0;align-items:center}.scrollableContent::-webkit-scrollbar{display:none!important}.verticalToolbar{display:flex;flex-direction:column;height:100%}.verticalToolbar ::ng-deep ui-action-button,.verticalToolbar ::ng-deep button{width:100%}.alignedStart{justify-content:flex-start}.alignedEnd{justify-content:flex-end}\n"] }]
329
- }], ctorParameters: () => [{ type: i1.UiActionService }, { type: i0.Injector }, { type: i2.UiMenuService }, { type: i0.ChangeDetectorRef }, { type: i8.ComponentLibrary, decorators: [{
330
- type: Inject,
331
- args: [COMPONENT_LIBRARY]
332
- }] }], propDecorators: { containerRef: [{
333
- type: ViewChild,
334
- args: ['container', { static: false }]
335
- }], uiActionModels: [{
336
- type: Input
337
- }], uiActionDescriptorService: [{
338
- type: Input
339
- }], id: [{
340
- type: Input
341
- }], scrollOnWrap: [{
342
- type: Input
343
- }], toolbarPropertes: [{
344
- type: Input
345
- }], onResize: [{
346
- type: HostListener,
347
- args: ['window:resize']
348
- }] } });
349
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktYWN0aW9uLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc21hcnQtbmctY2xpZW50L3NyYy9saWIvdmlldy1jb250ZXh0L3NtYXJ0LXVpLWFjdGlvbi91aS1hY3Rpb24tdG9vbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zbWFydC1uZy1jbGllbnQvc3JjL2xpYi92aWV3LWNvbnRleHQvc21hcnQtdWktYWN0aW9uL3VpLWFjdGlvbi10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUNaLE1BQU0sRUFFTixLQUFLLEVBS0wsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEUsT0FBTyxFQUNMLFlBQVksRUFDWixlQUFlLEdBR2hCLE1BQU0sUUFBUSxDQUFDO0FBQ2hCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRzNFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xGLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEdBRWpCLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7Ozs7QUFRMUMsTUFBTSxPQUFPLHdCQUF3QjtJQThCbkMsWUFDVSxPQUF3QixFQUN4QixNQUFnQixFQUNoQixXQUEwQixFQUMzQixjQUFpQyxFQUNOLE9BQXlCO1FBSm5ELFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQ3hCLFdBQU0sR0FBTixNQUFNLENBQVU7UUFDaEIsZ0JBQVcsR0FBWCxX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QUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixFQUFFLFNBQVMsS0FBSyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUM7SUFDeEUsQ0FBQztJQUNELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixFQUFFLFNBQVMsS0FBSyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUM7SUFDMUUsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxTQUFTLEtBQUssZ0JBQWdCLENBQUMsS0FBSyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxTQUFTLEtBQUssZ0JBQWdCLENBQUMsR0FBRyxDQUFDO0lBQ25FLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLGVBQWUsQ0FBQztJQUN6QixDQUFDOytHQTVYVSx3QkFBd0IsdUlBbUN6QixpQkFBaUI7bUdBbkNoQix3QkFBd0IsMmFDdkNyQyx3eEdBNkZBOzs0RkR0RGEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHlCQUF5Qjs7MEJBdUNoQyxNQUFNOzJCQUFDLGlCQUFpQjt5Q0FsQ2dCLFlBQVk7c0JBQXRELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFRaEMsY0FBYztzQkFBdEIsS0FBSztnQkFDRyx5QkFBeUI7c0JBQWpDLEtBQUs7Z0JBQ0csRUFBRTtzQkFBVixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQW1EeUIsUUFBUTtzQkFBdEMsWUFBWTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5qZWN0LFxyXG4gIEluamVjdG9yLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHsgaW50ZXJ2YWwsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgSWNvblBvc2l0aW9uLFxyXG4gIE1lbnVUcmlnZ2VyVHlwZSxcclxuICBVaUFjdGlvbkRlc2NyaXB0b3IsXHJcbiAgVWlBY3Rpb25Ub29sdGlwVG9vbHRpcFBvc2l0aW9uRW51bSxcclxufSBmcm9tICcuLi9hcGknO1xyXG5pbXBvcnQgeyBVaUFjdGlvbkJ1dHRvblR5cGUgfSBmcm9tICcuLi9hcGkvbW9kZWwvdWlBY3Rpb25CdXR0b25UeXBlJztcclxuaW1wb3J0IHsgVWlBY3Rpb25EZXNjcmlwdG9yU2VydmljZSB9IGZyb20gJy4vdWktYWN0aW9uLmRlc2NyaXB0b3Iuc2VydmljZSc7XHJcbmltcG9ydCB7IFVpQWN0aW9uTW9kZWwgfSBmcm9tICcuL3VpLWFjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IFVpQWN0aW9uU2VydmljZSB9IGZyb20gJy4vdWktYWN0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDT01QT05FTlRfTElCUkFSWSwgQ29tcG9uZW50TGlicmFyeSB9IGZyb20gJy4uL3V0aWxpdHkvY29tcG9uZW50TGlicmFyeSc7XHJcbmltcG9ydCB7XHJcbiAgVG9vbGJhckFsaWdubWVudCxcclxuICBUb29sYmFyRGlyZWN0aW9uLFxyXG4gIFRvb2xiYXJQcm9wZXJ0aWVzLFxyXG59IGZyb20gJy4uLy4uL3NtYXJ0LWNvbXBvbmVudC1sYXlvdXQvYXBpJztcclxuaW1wb3J0IHsgVWlNZW51U2VydmljZSB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51L21lbnUuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NtYXJ0LXVpLWFjdGlvbi10b29sYmFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdWktYWN0aW9uLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3VpLWFjdGlvbi10b29sYmFyLmNvbXBvbmVudC5jc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFVpQWN0aW9uVG9vbGJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicsIHsgc3RhdGljOiBmYWxzZSB9KSBjb250YWluZXJSZWYhOiBFbGVtZW50UmVmO1xyXG5cclxuICBwcml2YXRlIF9kZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIGNvbXBvbmVudExpYnJhcnkgPSBDb21wb25lbnRMaWJyYXJ5OyAvLyBFeHBvc2UgdGhlIGVudW0gdG8gdGhlIHRlbXBsYXRlXHJcblxyXG4gIHByZXNzZWRCdXR0b25BY3RpdmU6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKSB1aUFjdGlvbk1vZGVscz86IFVpQWN0aW9uTW9kZWxbXTtcclxuICBASW5wdXQoKSB1aUFjdGlvbkRlc2NyaXB0b3JTZXJ2aWNlPzogVWlBY3Rpb25EZXNjcmlwdG9yU2VydmljZTtcclxuICBASW5wdXQoKSBpZD86IHN0cmluZztcclxuICBASW5wdXQoKSBzY3JvbGxPbldyYXA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSB0b29sYmFyUHJvcGVydGVzPzogVG9vbGJhclByb3BlcnRpZXM7XHJcblxyXG4gIHVpQWN0aW9uTW9kZWxzV2l0aERlc2NyaXB0aW9ucz86IFVpQWN0aW9uTW9kZWxbXTtcclxuXHJcbiAgcHJpdmF0ZSBtYW5hZ2VyITogVWlBY3Rpb25EZXNjcmlwdG9yU2VydmljZTtcclxuICBwcml2YXRlIGxhbmd1YWdlQ2hhbmdlZFN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgaXNTY3JvbGxhYmxlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgc2Nyb2xsSW50ZXJ2YWw6IGFueTtcclxuICBwcml2YXRlIHNjcm9sbFRpbWVvdXQ6IGFueTtcclxuICBwcml2YXRlIHNjcm9sbFNwZWVkOiBudW1iZXIgPSA1O1xyXG4gIHByaXZhdGUgc2Nyb2xsRGVsYXk6IG51bWJlciA9IDE2O1xyXG4gIHByaXZhdGUgc2Nyb2xsSG9sZERlbGF5OiBudW1iZXIgPSAxMDA7XHJcblxyXG4gIHByaXZhdGUgc2NoZWR1bGVzID0gbmV3IE1hcDxzdHJpbmcsIFN1YnNjcmlwdGlvbj4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHNlcnZpY2U6IFVpQWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgaW5qZWN0OiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgbWVudVNlcnZpY2U6IFVpTWVudVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgQEluamVjdChDT01QT05FTlRfTElCUkFSWSkgcHVibGljIGNvbXBMaWI6IENvbXBvbmVudExpYnJhcnlcclxuICApIHtcclxuICAgIC8vIEluamVjdHMgdGhlIGJhc2ljIFVpQWN0aW9uRGVzY3JpcHRvclNlcnZpY2UgcHJvdmlkZWQgYnkgdGhlIEFwcE1vZHVsZVxyXG4gICAgdGhpcy5tYW5hZ2VyID0gaW5qZWN0LmdldChVaUFjdGlvbkRlc2NyaXB0b3JTZXJ2aWNlKTtcclxuXHJcbiAgICB0aGlzLnN1YnNjcmliZVRvTGFuZ3VhZ2VDaGFuZ2UoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgLy8gT3ZlcnJpZGVzIHRoZSBiYXNpYyBVaUFjdGlvbkRlc2NyaXB0b3JTZXJ2aWNlIHdpdGggYSBjdXN0b20gb25lIGlmIHRoZXJlIGlzIG9uZVxyXG4gICAgaWYgKHRoaXMudWlBY3Rpb25EZXNjcmlwdG9yU2VydmljZSkge1xyXG4gICAgICB0aGlzLm1hbmFnZXIgPSB0aGlzLnVpQWN0aW9uRGVzY3JpcHRvclNlcnZpY2U7XHJcbiAgICAgIHRoaXMuc3Vic2NyaWJlVG9MYW5ndWFnZUNoYW5nZSgpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMudG9vbGJhclByb3BlcnRlcykge1xyXG4gICAgICB0aGlzLnNjcm9sbE9uV3JhcCA9IHRoaXMudG9vbGJhclByb3BlcnRlcy5zY3JvbGxhYmxlID8/IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc2V0VXAoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmICh0aGlzLnNjcm9sbE9uV3JhcCkge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmNoZWNrU2Nyb2xsYWJsZSgpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKSBvblJlc2l6ZSgpIHtcclxuICAgIGlmICh0aGlzLnNjcm9sbE9uV3JhcCkge1xyXG4gICAgICB0aGlzLmNoZWNrU2Nyb2xsYWJsZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXNbJ3VpQWN0aW9uTW9kZWxzJ10pIHtcclxuICAgICAgbGV0IHVpQWN0aW9uTW9kZWxzID0gY2hhbmdlc1sndWlBY3Rpb25Nb2RlbHMnXS5jdXJyZW50VmFsdWU7XHJcbiAgICAgIGlmICh1aUFjdGlvbk1vZGVscykge1xyXG4gICAgICAgIHRoaXMudWlBY3Rpb25Nb2RlbHMgPSB1aUFjdGlvbk1vZGVscztcclxuXHJcbiAgICAgICAgdGhpcy5zZXRVcCgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xlYXJTY2hlZHVsZSgpO1xyXG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xyXG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaWJlVG9MYW5ndWFnZUNoYW5nZSgpOiB2b2lkIHtcclxuICAgIHRoaXMubGFuZ3VhZ2VDaGFuZ2VkU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xyXG5cclxuICAgIHRoaXMubGFuZ3VhZ2VDaGFuZ2VkU3Vic2NyaXB0aW9uID0gdGhpcy5tYW5hZ2VyLmxhbmd1YWdlQ2hhbmdlZFxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLnNldFVwKCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgc2V0VXAoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAodGhpcy51aUFjdGlvbk1vZGVscykge1xyXG4gICAgICBsZXQgdWlBY3Rpb25Nb2RlbHNXaXRoRGVzY3JpcHRpb25zID0gW107XHJcbiAgICAgIGZvciAoY29uc3QgdWlBY3Rpb25Nb2RlbCBvZiB0aGlzLnVpQWN0aW9uTW9kZWxzKSB7XHJcbiAgICAgICAgY29uc3QgdWlBY3Rpb24gPSB1aUFjdGlvbk1vZGVsLnVpQWN0aW9uO1xyXG5cclxuICAgICAgICAvLyB1c2luZyBlcXVhbGl0eSBpcyBhIG11c3QgaGVyZSwgdW5kZWZpbmVkIGFuZCBudWxsIHNob3VsZCBiZSBlcXVhbFxyXG4gICAgICAgIGlmICh0aGlzLmlkID09IHVpQWN0aW9uLnRvb2xiYXIpIHtcclxuICAgICAgICAgIHVpQWN0aW9uTW9kZWwuZGVzY3JpcHRvciA9IGF3YWl0IHRoaXMubWFuYWdlci5nZXRBY3Rpb25EZXNjcmlwdG9yKHVpQWN0aW9uTW9kZWwudWlBY3Rpb24pO1xyXG4gICAgICAgICAgdWlBY3Rpb25Nb2RlbHNXaXRoRGVzY3JpcHRpb25zLnB1c2godWlBY3Rpb25Nb2RlbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2NoZWR1bGVBY3Rpb25zKHRoaXMudWlBY3Rpb25Nb2RlbHMpO1xyXG4gICAgICB0aGlzLnVpQWN0aW9uTW9kZWxzV2l0aERlc2NyaXB0aW9ucyA9IHVpQWN0aW9uTW9kZWxzV2l0aERlc2NyaXB0aW9ucztcclxuXHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNoZWNrU2Nyb2xsYWJsZSgpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldEFjdGlvbk1vZGVscyhtb2RlbHM6IFVpQWN0aW9uTW9kZWxbXSk6IHZvaWQge1xyXG4gICAgdGhpcy51aUFjdGlvbk1vZGVscyA9IG1vZGVscztcclxuICAgIHRoaXMuc2V0VXAoKTtcclxuICB9XHJcblxyXG4gIGNsZWFyU2NoZWR1bGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNjaGVkdWxlcy5mb3JFYWNoKChzdWIpID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcclxuICAgIHRoaXMuc2NoZWR1bGVzLmNsZWFyKCk7XHJcbiAgfVxyXG5cclxuICBzY2hlZHVsZUFjdGlvbnModWlBY3Rpb25Nb2RlbHM6IFVpQWN0aW9uTW9kZWxbXSkge1xyXG4gICAgdGhpcy5jbGVhclNjaGVkdWxlKCk7XHJcblxyXG4gICAgdWlBY3Rpb25Nb2RlbHMuZm9yRWFjaCgodWlBY3Rpb25Nb2RlbDogVWlBY3Rpb25Nb2RlbCkgPT4ge1xyXG4gICAgICB2YXIgdWlBY3Rpb24gPSB1aUFjdGlvbk1vZGVsLnVpQWN0aW9uO1xyXG5cclxuICAgICAgaWYgKFxyXG4gICAgICAgICF1aUFjdGlvbi5jb2RlIHx8XHJcbiAgICAgICAgdWlBY3Rpb24uZGlzYWJsZWQgfHxcclxuICAgICAgICAhdWlBY3Rpb24uc2NoZWR1bGU/LmludGVydmFsU2Vjb25kcyB8fFxyXG4gICAgICAgIHRoaXMuc2NoZWR1bGVzLmhhcyh1aUFjdGlvbi5jb2RlKSB8fFxyXG4gICAgICAgIHVpQWN0aW9uLnN1YkFjdGlvbnM/Lmxlbmd0aFxyXG4gICAgICApIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHZhciBpbnRlcnZhbEluTXMgPSB1aUFjdGlvbi5zY2hlZHVsZS5pbnRlcnZhbFNlY29uZHMgKiAxMDAwO1xyXG4gICAgICB2YXIgc3ViID0gaW50ZXJ2YWwoaW50ZXJ2YWxJbk1zKVxyXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB2YXIgc2NoZWR1bGVkVWlBY3Rpb25Nb2RlbDogVWlBY3Rpb25Nb2RlbCA9IHtcclxuICAgICAgICAgICAgLi4udWlBY3Rpb25Nb2RlbCxcclxuICAgICAgICAgICAgdWlBY3Rpb246IHtcclxuICAgICAgICAgICAgICAuLi51aUFjdGlvbk1vZGVsLnVpQWN0aW9uLFxyXG4gICAgICAgICAgICAgIHBhcmFtczoge1xyXG4gICAgICAgICAgICAgICAgLi4udWlBY3Rpb25Nb2RlbC51aUFjdGlvbi5wYXJhbXMsXHJcbiAgICAgICAgICAgICAgICBzY2hlZHVsZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgdGhpcy5maXJlQWN0aW9uKHNjaGVkdWxlZFVpQWN0aW9uTW9kZWwpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgdGhpcy5zY2hlZHVsZXMuc2V0KHVpQWN0aW9uLmNvZGUsIHN1Yik7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHRyYWNrQnlGbihpZHg6IG51bWJlciwgbTogVWlBY3Rpb25Nb2RlbCk6IHN0cmluZyB8IG51bWJlciB7XHJcbiAgICByZXR1cm4gbS51aUFjdGlvbi5jb2RlID8/IGlkeDtcclxuICB9XHJcblxyXG4gIGFzeW5jIGZpcmVBY3Rpb24odWlBY3Rpb25Nb2RlbDogVWlBY3Rpb25Nb2RlbCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKHVpQWN0aW9uTW9kZWwudWlBY3Rpb24uZGlzYWJsZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBvcHRpb25zID0ge1xyXG4gICAgICBub2RlSWQ6IHVpQWN0aW9uTW9kZWwubm9kZUlkLFxyXG4gICAgICB3aWRnZXRJZDogdWlBY3Rpb25Nb2RlbC53aWRnZXRJZCxcclxuICAgIH07XHJcblxyXG4gICAgYXdhaXQgdGhpcy5zZXJ2aWNlLmV4ZWN1dGUodWlBY3Rpb25Nb2RlbC51aUFjdGlvbiwgdWlBY3Rpb25Nb2RlbCwgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBvbkFjdGlvbkNsaWNrZWQoZXZlbnQ6IGFueSwgdWlBY3Rpb25Nb2RlbDogVWlBY3Rpb25Nb2RlbCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgLy8gZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLm1lbnVTZXJ2aWNlLmNsb3NlQWxsTWVudXMoKTtcclxuXHJcbiAgICBpZiAodWlBY3Rpb25Nb2RlbC51aUFjdGlvbi5kaXNhYmxlZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMucHJlc3NlZEJ1dHRvbkFjdGl2ZSkge1xyXG4gICAgICB0aGlzLnByZXNzZWRCdXR0b25BY3RpdmUgPSBmYWxzZTtcclxuXHJcbiAgICAgIC8vIHVpLXRpZXJlZC1tZW51IGVtaXRzIGEgZnVsbCBVaUFjdGlvbiAobm8gJ2V2ZW50JyBwcm9wZXJ0eSksXHJcbiAgICAgIC8vIHVpLWFjdGlvbi1idXR0b24gZW1pdHMgeyBldmVudDogTW91c2VFdmVudCwgY29kZSwgZGVzY3JpcHRvciB9LlxyXG4gICAgICAvLyBVc2UgdGhlIGVtaXR0ZWQgVWlBY3Rpb24gb25seSBmb3IgdGllcmVkLW1lbnUgc3ViLWFjdGlvbnMuXHJcbiAgICAgIGxldCBhY3Rpb25Ub0V4ZWN1dGU6IFVpQWN0aW9uTW9kZWwgPSB7XHJcbiAgICAgICAgLi4udWlBY3Rpb25Nb2RlbCxcclxuICAgICAgICB1aUFjdGlvbjogIWV2ZW50LmV2ZW50ICYmIGV2ZW50LmNvZGUgPyBldmVudCA6IHVpQWN0aW9uTW9kZWwudWlBY3Rpb24sXHJcbiAgICAgIH07XHJcblxyXG4gICAgICBhd2FpdCB0aGlzLmZpcmVBY3Rpb24oYWN0aW9uVG9FeGVjdXRlKTtcclxuXHJcbiAgICAgIHRoaXMucHJlc3NlZEJ1dHRvbkFjdGl2ZSA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkFjdGlvbkRvdWJsZUNsaWNrZWQoZXZlbnQ6IGFueSwgdWlBY3Rpb25Nb2RlbDogVWlBY3Rpb25Nb2RlbCk6IHZvaWQge1xyXG4gICAgLy8gZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAvLyBXZSBkbyBub3QgaGFuZGxlIGRvdWJsZSBjbGlja3NcclxuICB9XHJcbiAgZ2V0YnRuQ2xhc3ModWlBY3Rpb25Nb2RlbDogVWlBY3Rpb25Nb2RlbCk6IHN0cmluZyB7XHJcbiAgICBpZiAodWlBY3Rpb25Nb2RlbC5kZXNjcmlwdG9yPy5jb2xvcikge1xyXG4gICAgICByZXR1cm4gJ3AtYnV0dG9uLScgKyB1aUFjdGlvbk1vZGVsLmRlc2NyaXB0b3I/LmNvbG9yO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuICBnZXRUeXBlKHVpQWN0aW9uTW9kZWw6IFVpQWN0aW9uTW9kZWwpOiBhbnkge1xyXG4gICAgaWYgKCF1aUFjdGlvbk1vZGVsLmRlc2NyaXB0b3I/LnR5cGUpIHtcclxuICAgICAgLy8gY29uc29sZS5sb2coYEFjdGlvbiBidXR0b24gdHlwZSB1bnNldDogJHt1aUFjdGlvbk1vZGVsPy51aUFjdGlvbj8uY29kZX1gKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmNvbXBMaWIgPT09IENvbXBvbmVudExpYnJhcnkuUFJJTUVORykge1xyXG4gICAgICAvLyByZXR1cm4gJyc7XHJcblxyXG4gICAgICAvLyAncC1idXR0b24tdGV4dCc6IHRydWUsXHJcbiAgICAgIC8qICAgJ3AtYnV0dG9uLXJhaXNlZCc6IHRydWUsXHJcbiAgICAgICAgJ3AtYnV0dG9uLXJvdW5kZWQnOiB0cnVlLFxyXG4gICAgICAgICdwLWJ1dHRvbi1vdXRsaW5lZCc6IHRydWUsXHJcbiAgKi9cclxuICAgICAgc3dpdGNoICh1aUFjdGlvbk1vZGVsLmRlc2NyaXB0b3I/LnR5cGUpIHtcclxuICAgICAgICBjYXNlIFVpQWN0aW9uQnV0dG9uVHlwZS5OT1JNQUw6XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAncC1idXR0b24tdGV4dCc6IHRydWUsXHJcbiAgICAgICAgICAgICdwLWJ1dHRvbi1yb3VuZGVkJzogdHJ1ZSxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgY2FzZSBVaUFjdGlvbkJ1dHRvblR5cGUuRkxBVDpcclxuICAgICAgICAgIHJldHVybiB7ICdwLWJ1dHRvbi1yYWlzZWQnOiB0cnVlLCAncC1idXR0b24tcm91bmRlZCc6IHRydWUgfTtcclxuICAgICAgICBjYXNlIFVpQWN0aW9uQnV0dG9uVHlwZS5SQUlTRUQ6XHJcbiAgICAgICAgICByZXR1cm4geyAncC1idXR0b24tcmFpc2VkJzogdHJ1ZSwgJ3AtYnV0dG9uLXJvdW5kZWQnOiB0cnVlIH07XHJcbiAgICAgICAgY2FzZSBVaUFjdGlvbkJ1dHRvblR5cGUuU1RST0tFRDpcclxuICAgICAgICAgIHJldHVybiB7ICdwLWJ1dHRvbi1vdXRsaW5lZCc6IHRydWUsICdwLWJ1dHRvbi1yb3VuZGVkJzogdHJ1ZSB9O1xyXG4gICAgICAgIGNhc2UgVWlBY3Rpb25CdXR0b25UeXBlLk1JTklfRkFCOlxyXG4gICAgICAgICAgcmV0dXJuIHsgJ3AtYnV0dG9uLXJvdW5kZWQnOiB0cnVlLCAncC1idXR0b24tdGV4dCc6IHRydWUsICdwLWJ1dHRvbi1yYWlzZWQnOiB0cnVlIH07XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICdwLWJ1dHRvbi10ZXh0JzogdHJ1ZSxcclxuICAgICAgICAgICAgJ3AtYnV0dG9uLXJhaXNlZCc6IHRydWUsXHJcbiAgICAgICAgICAgICdwLWJ1dHRvbi1yb3VuZGVkJzogdHJ1ZSxcclxuICAgICAgICAgICAgJ3AtYnV0dG9uLW91dGxpbmVkJzogdHJ1ZSxcclxuICAgICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHN3aXRjaCAodWlBY3Rpb25Nb2RlbC5kZXNjcmlwdG9yPy50eXBlKSB7XHJcbiAgICAgICAgY2FzZSBVaUFjdGlvbkJ1dHRvblR5cGUuTk9STUFMOlxyXG4gICAgICAgICAgcmV0dXJuICdtYXQtbWRjLWJ1dHRvbic7XHJcbiAgICAgICAgY2FzZSBVaUFjdGlvbkJ1dHRvblR5cGUuRkxBVDpcclxuICAgICAgICAgIHJldHVybiAnbWF0LW1kYy1mbGF0LWJ1dHRvbic7XHJcbiAgICAgICAgY2FzZSBVaUFjdGlvbkJ1dHRvblR5cGUuUkFJU0VEOlxyXG4gICAgICAgICAgcmV0dXJuICdtYXQtbWRjLXJhaXNlZC1idXR0b24nO1xyXG4gICAgICAgIGNhc2UgVWlBY3Rpb25CdXR0b25UeXBlLlNUUk9LRUQ6XHJcbiAgICAgICAgICByZXR1cm4gJ21hdC1tZGMtc3Ryb2tlZC1idXR0b24nO1xyXG4gICAgICAgIGNhc2UgVWlBY3Rpb25CdXR0b25UeXBlLklDT046XHJcbiAgICAgICAgICByZXR1cm4gJ21hdC1tZGMtaWNvbi1idXR0b24nO1xyXG4gICAgICAgIGNhc2UgVWlBY3Rpb25CdXR0b25UeXBlLk1JTklfRkFCOlxyXG4gICAgICAgICAgcmV0dXJuICdtYXQtbWRjLW1pbmktZmFiJztcclxuICAgICAgICBjYXNlIFVpQWN0aW9uQnV0dG9uVHlwZS5GQUI6XHJcbiAgICAgICAgICByZXR1cm4gJ21hdC1tZGMtZmFiJztcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgLy8gY29uc29sZS5sb2coYFVuaGFuZGxlZCBhY3Rpb24gYnV0dG9uIHR5cGUgY2FzZTogJHt1aUFjdGlvbk1vZGVsLmRlc2NyaXB0b3I/LnR5cGV9YCk7XHJcbiAgICAgICAgICByZXR1cm4gYG1hdC1idXR0b25gO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpY29uUG9zaXRpb24oKTogdHlwZW9mIEljb25Qb3NpdGlvbiB7XHJcbiAgICByZXR1cm4gSWNvblBvc2l0aW9uO1xyXG4gIH1cclxuXHJcbiAgaXNPbmx5SWNvbih1aUFjdGlvbk1vZGVsOiBVaUFjdGlvbk1vZGVsKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICB1aUFjdGlvbk1vZGVsLmRlc2NyaXB0b3I/LnR5cGUgPT09IFVpQWN0aW9uQnV0dG9uVHlwZS5JQ09OIHx8XHJcbiAgICAgIHVpQWN0aW9uTW9kZWwuZGVzY3JpcHRvcj8udHlwZSA9PT0gVWlBY3Rpb25CdXR0b25UeXBlLk1JTklfRkFCIHx8XHJcbiAgICAgIHVpQWN0aW9uTW9kZWwuZGVzY3JpcHRvcj8udHlwZSA9PT0gVWlBY3Rpb25CdXR0b25UeXBlLkZBQlxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldFRvb2x0aXBQb3MocG9zPzogVWlBY3Rpb25Ub29sdGlwVG9vbHRpcFBvc2l0aW9uRW51bSk6IFRvb2x0aXBQb3NpdGlvbiB7XHJcbiAgICBpZiAocG9zKSB7XHJcbiAgICAgIHJldHVybiBwb3MudG9Mb3dlckNhc2UoKSBhcyBUb29sdGlwUG9zaXRpb247XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJ2JlZm9yZSc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRUb29sdGlwRGVsYXkoZGVsYXk/OiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIGRlbGF5ID8gZGVsYXkgOiAxMDAwO1xyXG4gIH1cclxuXHJcbiAgZ2V0VG9vbHRpcEhpZGVEZWxheShkZWxheT86IG51bWJlcik6IG51bWJlciB7XHJcbiAgICByZXR1cm4gZGVsYXkgPyBkZWxheSA6IDIwMDA7XHJcbiAgfVxyXG5cclxuICBjaGVja1Njcm9sbGFibGUoKSB7XHJcbiAgICBpZiAoIXRoaXMuc2Nyb2xsT25XcmFwKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzY3JvbGxhYmxlID0gdGhpcy5jb250YWluZXJSZWY/Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBpZiAoc2Nyb2xsYWJsZSkge1xyXG4gICAgICB0aGlzLmlzU2Nyb2xsYWJsZSA9IHNjcm9sbGFibGUuc2Nyb2xsV2lkdGggPiBzY3JvbGxhYmxlLmNsaWVudFdpZHRoO1xyXG4gICAgfVxyXG4gIH1cclxuICBzY3JvbGxMZWZ0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250YWluZXJSZWYubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0IC09IDEwMDtcclxuICB9XHJcblxyXG4gIHNjcm9sbFJpZ2h0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250YWluZXJSZWYubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ICs9IDEwMDtcclxuICB9XHJcblxyXG4gIHNjcm9sbFN0YXJ0KGRpcmVjdGlvbjogJ2xlZnQnIHwgJ3JpZ2h0Jyk6IHZvaWQge1xyXG4gICAgdGhpcy5zY3JvbGxUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGRlbHRhID0gZGlyZWN0aW9uID09PSAnbGVmdCcgPyAtdGhpcy5zY3JvbGxTcGVlZCA6IHRoaXMuc2Nyb2xsU3BlZWQ7XHJcblxyXG4gICAgICB0aGlzLnNjcm9sbEludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCArPSBkZWx0YTtcclxuICAgICAgfSwgdGhpcy5zY3JvbGxEZWxheSk7XHJcbiAgICB9LCB0aGlzLnNjcm9sbEhvbGREZWxheSk7XHJcbiAgfVxyXG5cclxuICBzdG9wU2Nyb2xsKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc2Nyb2xsVGltZW91dCkge1xyXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5zY3JvbGxUaW1lb3V0KTtcclxuICAgICAgdGhpcy5zY3JvbGxUaW1lb3V0ID0gbnVsbDtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnNjcm9sbEludGVydmFsKSB7XHJcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5zY3JvbGxJbnRlcnZhbCk7XHJcbiAgICAgIHRoaXMuc2Nyb2xsSW50ZXJ2YWwgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25Ib3ZlcigpOiB2b2lkIHtcclxuICAgIHRoaXMubWVudVNlcnZpY2UuY2xvc2VNZW51c0ZvclRvb2xiYXIodGhpcy5pZCA/PyAnJyk7XHJcbiAgfVxyXG5cclxuICBidXR0b25MZWZ0OiBVaUFjdGlvbkRlc2NyaXB0b3IgPSB7XHJcbiAgICB0aXRsZTogJycsXHJcbiAgICBjb2xvcjogJ3ByaW1hcnknLFxyXG4gICAgdHlwZTogVWlBY3Rpb25CdXR0b25UeXBlLlJBSVNFRCxcclxuICAgIGljb246IHRoaXMuY29tcExpYiA9PT0gQ29tcG9uZW50TGlicmFyeS5QUklNRU5HID8gJ2NoZXZyb24tbGVmdCcgOiAnYXJyb3dfYmFjaycsXHJcbiAgICBpY29uUG9zaXRpb246IEljb25Qb3NpdGlvbi5QUkUsXHJcbiAgfTtcclxuXHJcbiAgYnV0dG9uUmlnaHQ6IFVpQWN0aW9uRGVzY3JpcHRvciA9IHtcclxuICAgIHRpdGxlOiAnJyxcclxuICAgIGNvbG9yOiAncHJpbWFyeScsXHJcbiAgICB0eXBlOiBVaUFjdGlvbkJ1dHRvblR5cGUuUkFJU0VELFxyXG4gICAgaWNvbjogdGhpcy5jb21wTGliID09PSBDb21wb25lbnRMaWJyYXJ5LlBSSU1FTkcgPyAnY2hldnJvbi1yaWdodCcgOiAnYXJyb3dfZm9yd2FyZCcsXHJcbiAgICBpY29uUG9zaXRpb246IEljb25Qb3NpdGlvbi5QUkUsXHJcbiAgfTtcclxuXHJcbiAgZ2V0IGlzVmVydGljYWwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50b29sYmFyUHJvcGVydGVzPy5kaXJlY3Rpb24gPT09IFRvb2xiYXJEaXJlY3Rpb24uVkVSVElDQUw7XHJcbiAgfVxyXG4gIGdldCBpc0hvcml6b250YWwoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50b29sYmFyUHJvcGVydGVzPy5kaXJlY3Rpb24gPT09IFRvb2xiYXJEaXJlY3Rpb24uSE9SSVpPTlRBTDtcclxuICB9XHJcblxyXG4gIGdldCBpc0FsaWduZWRTdGFydCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnRvb2xiYXJQcm9wZXJ0ZXM/LmFsaWdubWVudCA9PT0gVG9vbGJhckFsaWdubWVudC5TVEFSVDtcclxuICB9XHJcblxyXG4gIGdldCBpc0FsaWduZWRFbmQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50b29sYmFyUHJvcGVydGVzPy5hbGlnbm1lbnQgPT09IFRvb2xiYXJBbGlnbm1lbnQuRU5EO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHRyaWdnZXJUeXBlKCkge1xyXG4gICAgcmV0dXJuIE1lbnVUcmlnZ2VyVHlwZTtcclxuICB9XHJcbn1cclxuIiwiQGlmIChpc1Njcm9sbGFibGUgJiYgc2Nyb2xsT25XcmFwKSB7XHJcbiAgPHVpLWFjdGlvbi1idXR0b25cclxuICAgIFtkaXNhYmxlZF09XCIhaXNTY3JvbGxhYmxlXCJcclxuICAgIFtkZXNjcmlwdG9yXT1cImJ1dHRvbkxlZnRcIlxyXG4gICAgKGFjdGlvbkNsaWNrKT1cInNjcm9sbExlZnQoKVwiXHJcbiAgICAobW91c2Vkb3duKT1cInNjcm9sbFN0YXJ0KCdsZWZ0JylcIlxyXG4gICAgKG1vdXNldXApPVwic3RvcFNjcm9sbCgpXCJcclxuICAgIChtb3VzZWxlYXZlKT1cInN0b3BTY3JvbGwoKVwiXHJcbiAgICAodG91Y2hzdGFydCk9XCJzY3JvbGxTdGFydCgnbGVmdCcpXCJcclxuICAgICh0b3VjaGVuZCk9XCJzdG9wU2Nyb2xsKClcIlxyXG4gIC8+XHJcbn1cclxuXHJcbjxkaXZcclxuICAjY29udGFpbmVyXHJcbiAgY2xhc3M9XCJ1aUFjdGlvbkJ1dHRvbnNDb250YWluZXJcIlxyXG4gIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gIFtuZ0NsYXNzXT1cIntcclxuICAgIHNjcm9sbGFibGVDb250ZW50OiBzY3JvbGxPbldyYXAsXHJcbiAgICB2ZXJ0aWNhbFRvb2xiYXI6IGlzVmVydGljYWwsXHJcbiAgICBob3Jpem9udGFsVG9vbGJhcjogaXNIb3Jpem9udGFsLFxyXG4gICAgYWxpZ25lZFN0YXJ0OiBpc0FsaWduZWRTdGFydCxcclxuICAgIGFsaWduZWRFbmQ6IGlzQWxpZ25lZEVuZCxcclxuICB9XCJcclxuPlxyXG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHVpQWN0aW9uTW9kZWwgb2YgdWlBY3Rpb25Nb2RlbHNXaXRoRGVzY3JpcHRpb25zOyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cclxuICAgIEBpZiAodWlBY3Rpb25Nb2RlbC51aUFjdGlvbi5jb2RlID09PSAndGhlbWVTZWxlY3RvcicpIHtcclxuICAgICAgPHRoZW1lLXNlbGVjdG9yIFttb2RlbF09XCJ1aUFjdGlvbk1vZGVsXCI+PC90aGVtZS1zZWxlY3Rvcj5cclxuICAgIH0gQGVsc2UgaWYgKHVpQWN0aW9uTW9kZWwudWlBY3Rpb24uc3ViQWN0aW9ucyAmJiB1aUFjdGlvbk1vZGVsLnVpQWN0aW9uLnN1YkFjdGlvbnMubGVuZ3RoID4gMCkge1xyXG4gICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJtZW51VHlwZXM7IGNvbnRleHQ6IHsgdWlBY3Rpb25Nb2RlbDogdWlBY3Rpb25Nb2RlbCB9XCJcclxuICAgICAgPjwvbmctY29udGFpbmVyPlxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIDx1aS1hY3Rpb24tYnV0dG9uXHJcbiAgICAgICAgKG1vdXNlZW50ZXIpPVwib25Ib3ZlcigpXCJcclxuICAgICAgICBbZGVzY3JpcHRvcl09XCJ1aUFjdGlvbk1vZGVsLmRlc2NyaXB0b3IhXCJcclxuICAgICAgICBbY29kZV09XCJ1aUFjdGlvbk1vZGVsLnVpQWN0aW9uLmNvZGVcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCIhIXVpQWN0aW9uTW9kZWwudWlBY3Rpb24uZGlzYWJsZWRcIlxyXG4gICAgICAgIFthZGRlZENzc0NsYXNzXT1cInVpQWN0aW9uTW9kZWwuY3NzQ2xhc3NcIlxyXG4gICAgICAgIFt2aWV3QWN0aXZhdGVkXT1cInVpQWN0aW9uTW9kZWwudWlBY3Rpb24udmlld0FjdGl2YXRlZFwiXHJcbiAgICAgICAgKGFjdGlvbkNsaWNrKT1cIm9uQWN0aW9uQ2xpY2tlZCgkZXZlbnQsIHVpQWN0aW9uTW9kZWwpXCJcclxuICAgICAgICAoYWN0aW9uRG91YmxlQ2xpY2spPVwib25BY3Rpb25Eb3VibGVDbGlja2VkKCRldmVudCwgdWlBY3Rpb25Nb2RlbClcIlxyXG4gICAgICA+XHJcbiAgICAgIDwvdWktYWN0aW9uLWJ1dHRvbj5cclxuICAgIH1cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcblxyXG5AaWYgKGlzU2Nyb2xsYWJsZSAmJiBzY3JvbGxPbldyYXApIHtcclxuICA8dWktYWN0aW9uLWJ1dHRvblxyXG4gICAgW2Rpc2FibGVkXT1cIiFpc1Njcm9sbGFibGVcIlxyXG4gICAgW2Rlc2NyaXB0b3JdPVwiYnV0dG9uUmlnaHRcIlxyXG4gICAgKGFjdGlvbkNsaWNrKT1cInNjcm9sbFJpZ2h0KClcIlxyXG4gICAgKG1vdXNlZG93bik9XCJzY3JvbGxTdGFydCgncmlnaHQnKVwiXHJcbiAgICAobW91c2V1cCk9XCJzdG9wU2Nyb2xsKClcIlxyXG4gICAgKG1vdXNlbGVhdmUpPVwic3RvcFNjcm9sbCgpXCJcclxuICAgICh0b3VjaHN0YXJ0KT1cInNjcm9sbFN0YXJ0KCdyaWdodCcpXCJcclxuICAgICh0b3VjaGVuZCk9XCJzdG9wU2Nyb2xsKClcIlxyXG4gIC8+XHJcbn1cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbWVudVR5cGVzIGxldC11aUFjdGlvbk1vZGVsPVwidWlBY3Rpb25Nb2RlbFwiPlxyXG4gIEBzd2l0Y2ggKHVpQWN0aW9uTW9kZWw/LnVpQWN0aW9uPy5kZXNjcmlwdG9yPy5tZW51Py50cmlnZ2VyVHlwZSkge1xyXG4gICAgQGNhc2UgKHRyaWdnZXJUeXBlLkhPVkVSKSB7XHJcbiAgICAgIDx1aS1ob3Zlci1tZW51XHJcbiAgICAgICAgI21lbnVcclxuICAgICAgICBbdG9vbGJhcklkXT1cImlkXCJcclxuICAgICAgICAobW91c2VlbnRlcik9XCJvbkhvdmVyKClcIlxyXG4gICAgICAgIFt0cmlnZ2VyQWN0aW9uXT1cInVpQWN0aW9uTW9kZWwudWlBY3Rpb25cIlxyXG4gICAgICAgIFtzdWJBY3Rpb25zXT1cInVpQWN0aW9uTW9kZWwudWlBY3Rpb24uc3ViQWN0aW9ucyFcIlxyXG4gICAgICAgIChhY3Rpb25DbGljayk9XCJvbkFjdGlvbkNsaWNrZWQoJGV2ZW50LCB1aUFjdGlvbk1vZGVsKVwiXHJcbiAgICAgID48L3VpLWhvdmVyLW1lbnU+XHJcbiAgICB9XHJcbiAgICBAY2FzZSAodHJpZ2dlclR5cGUuQ0xJQ0spIHtcclxuICAgICAgPHVpLXRpZXJlZC1tZW51XHJcbiAgICAgICAgI21lbnVcclxuICAgICAgICAobW91c2VlbnRlcik9XCJvbkhvdmVyKClcIlxyXG4gICAgICAgIFt0cmlnZ2VyQWN0aW9uXT1cInVpQWN0aW9uTW9kZWwudWlBY3Rpb25cIlxyXG4gICAgICAgIFtzdWJBY3Rpb25zXT1cInVpQWN0aW9uTW9kZWwudWlBY3Rpb24uc3ViQWN0aW9ucyFcIlxyXG4gICAgICAgIChhY3Rpb25DbGljayk9XCJvbkFjdGlvbkNsaWNrZWQoJGV2ZW50LCB1aUFjdGlvbk1vZGVsKVwiXHJcbiAgICAgID48L3VpLXRpZXJlZC1tZW51PlxyXG4gICAgfVxyXG4gICAgQGRlZmF1bHQge1xyXG4gICAgICA8dWktdGllcmVkLW1lbnVcclxuICAgICAgICAjbWVudVxyXG4gICAgICAgIChtb3VzZWVudGVyKT1cIm9uSG92ZXIoKVwiXHJcbiAgICAgICAgW3RyaWdnZXJBY3Rpb25dPVwidWlBY3Rpb25Nb2RlbC51aUFjdGlvblwiXHJcbiAgICAgICAgW3N1YkFjdGlvbnNdPVwidWlBY3Rpb25Nb2RlbC51aUFjdGlvbi5zdWJBY3Rpb25zIVwiXHJcbiAgICAgICAgKGFjdGlvbkNsaWNrKT1cIm9uQWN0aW9uQ2xpY2tlZCgkZXZlbnQsIHVpQWN0aW9uTW9kZWwpXCJcclxuICAgICAgPjwvdWktdGllcmVkLW1lbnU+XHJcbiAgICB9XHJcbiAgfVxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=