@smartbit4all/ng-client 4.2.66 → 4.2.68

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 (424) hide show
  1. package/README.md +386 -386
  2. package/esm2022/lib/component-factory-service/component-factory-service.module.mjs +1 -1
  3. package/esm2022/lib/component-factory-service/component-factory-service.service.mjs +1 -1
  4. package/esm2022/lib/component-factory-service/projects.mjs +1 -1
  5. package/esm2022/lib/session/api/api/api.mjs +1 -1
  6. package/esm2022/lib/session/api/api/session.service.mjs +1 -1
  7. package/esm2022/lib/session/api/configuration.mjs +1 -1
  8. package/esm2022/lib/session/api/encoder.mjs +1 -1
  9. package/esm2022/lib/session/api/index.mjs +1 -1
  10. package/esm2022/lib/session/api/model/accountInfo.mjs +1 -1
  11. package/esm2022/lib/session/api/model/apiError.mjs +1 -1
  12. package/esm2022/lib/session/api/model/authenticationProviderData.mjs +1 -1
  13. package/esm2022/lib/session/api/model/getAuthenticationProvidersResponse.mjs +1 -1
  14. package/esm2022/lib/session/api/model/models.mjs +1 -1
  15. package/esm2022/lib/session/api/model/refreshSessionRequest.mjs +1 -1
  16. package/esm2022/lib/session/api/model/session.mjs +1 -1
  17. package/esm2022/lib/session/api/model/sessionInfoData.mjs +1 -1
  18. package/esm2022/lib/session/api/model/userActivityLog.mjs +1 -1
  19. package/esm2022/lib/session/api/param.mjs +1 -1
  20. package/esm2022/lib/session/api/variables.mjs +1 -1
  21. package/esm2022/lib/session/cookie-service/smart-cookie.service.mjs +1 -1
  22. package/esm2022/lib/session/projects.mjs +1 -1
  23. package/esm2022/lib/session/smart-error-catching.interceptor.mjs +1 -1
  24. package/esm2022/lib/session/smart-header-maintainer.interceptor.mjs +1 -1
  25. package/esm2022/lib/session/smart-session-handler.service.mjs +1 -1
  26. package/esm2022/lib/session/smart-session.module.mjs +1 -1
  27. package/esm2022/lib/session/smart-session.service.mjs +1 -1
  28. package/esm2022/lib/session/smart-timer/smart-session-timer.component.mjs +3 -3
  29. package/esm2022/lib/session/smart-timer/smart-session-timer.service.mjs +1 -1
  30. package/esm2022/lib/shared/projects.mjs +1 -1
  31. package/esm2022/lib/shared/shared.module.mjs +1 -1
  32. package/esm2022/lib/shared/smart-tooltip.directive.mjs +1 -1
  33. package/esm2022/lib/shared/smarttable.date-pipe.mjs +1 -1
  34. package/esm2022/lib/smart-client/projects.mjs +1 -1
  35. package/esm2022/lib/smart-client/smart-authentication.service.mjs +1 -1
  36. package/esm2022/lib/smart-client/smart-component-api-client.mjs +1 -1
  37. package/esm2022/lib/smart-client/smart-file-uploader/smart-file-uploader.component.mjs +3 -3
  38. package/esm2022/lib/smart-client/smart.component.mjs +1 -1
  39. package/esm2022/lib/smart-client/smart.service.mjs +1 -1
  40. package/esm2022/lib/smart-component-layout/api/api/api.mjs +1 -1
  41. package/esm2022/lib/smart-component-layout/api/api/default.service.mjs +1 -1
  42. package/esm2022/lib/smart-component-layout/api/api.module.mjs +1 -1
  43. package/esm2022/lib/smart-component-layout/api/configuration.mjs +1 -1
  44. package/esm2022/lib/smart-component-layout/api/encoder.mjs +1 -1
  45. package/esm2022/lib/smart-component-layout/api/index.mjs +1 -1
  46. package/esm2022/lib/smart-component-layout/api/model/componentType.mjs +1 -1
  47. package/esm2022/lib/smart-component-layout/api/model/componentWidgetType.mjs +1 -1
  48. package/esm2022/lib/smart-component-layout/api/model/layoutDirection.mjs +1 -1
  49. package/esm2022/lib/smart-component-layout/api/model/models.mjs +1 -1
  50. package/esm2022/lib/smart-component-layout/api/model/smartComponentLayoutDefinition.mjs +1 -1
  51. package/esm2022/lib/smart-component-layout/api/model/smartComponentWidgetDefinition.mjs +1 -1
  52. package/esm2022/lib/smart-component-layout/api/param.mjs +1 -1
  53. package/esm2022/lib/smart-component-layout/api/variables.mjs +1 -1
  54. package/esm2022/lib/smart-component-layout/projects.mjs +1 -1
  55. package/esm2022/lib/smart-component-layout/smart-component-layout-utility.mjs +1 -1
  56. package/esm2022/lib/smart-component-layout/smart-component-layout.component.mjs +3 -3
  57. package/esm2022/lib/smart-component-layout/smart-component-layout.module.mjs +1 -1
  58. package/esm2022/lib/smart-dialog/projects.mjs +1 -1
  59. package/esm2022/lib/smart-dialog/smartdialog.component.mjs +3 -3
  60. package/esm2022/lib/smart-dialog/smartdialog.model.mjs +1 -1
  61. package/esm2022/lib/smart-dialog/smartdialog.module.mjs +1 -1
  62. package/esm2022/lib/smart-dialog/smartdialog.service.mjs +1 -1
  63. package/esm2022/lib/smart-expandable-section/expandable-section.component.mjs +3 -3
  64. package/esm2022/lib/smart-expandable-section/expandable-section.model.mjs +1 -1
  65. package/esm2022/lib/smart-expandable-section/projects.mjs +1 -1
  66. package/esm2022/lib/smart-expandable-section/smart-expandable-section.module.mjs +1 -1
  67. package/esm2022/lib/smart-expandable-section/smart-expandable-section.service.mjs +1 -1
  68. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBoolOperator.mjs +1 -1
  69. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderField.mjs +1 -1
  70. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderGroup.mjs +1 -1
  71. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionBuilderModel.mjs +1 -1
  72. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionData.mjs +1 -1
  73. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionDataType.mjs +1 -1
  74. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionField.mjs +1 -1
  75. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionFieldList.mjs +1 -1
  76. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionFieldWidgetType.mjs +1 -1
  77. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionList.mjs +1 -1
  78. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOperandData.mjs +1 -1
  79. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOperation.mjs +1 -1
  80. package/esm2022/lib/smart-filter/api/filter/model/filterExpressionOrderBy.mjs +1 -1
  81. package/esm2022/lib/smart-filter/api/filter/model/model.mjs +1 -1
  82. package/esm2022/lib/smart-filter/api/filter/model/searchIndexObjectDefinitionData.mjs +1 -1
  83. package/esm2022/lib/smart-filter/api/filter/model/searchIndexPropertyDefinitionData.mjs +1 -1
  84. package/esm2022/lib/smart-filter/api/value/model/value.mjs +1 -1
  85. package/esm2022/lib/smart-filter/projects.mjs +1 -1
  86. package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-expression-field/smart-filter-expression-field.component.mjs +1 -1
  87. package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-simple/components/smart-filter-simple-field/smart-filter-simple-field.component.mjs +3 -3
  88. package/esm2022/lib/smart-filter/smart-filter/components/smart-filter-simple/smart-filter-simple.component.mjs +3 -3
  89. package/esm2022/lib/smart-filter/smart-filter/smart-filter.component.mjs +3 -3
  90. package/esm2022/lib/smart-filter/smart-filter/smart-filter.service.mjs +1 -1
  91. package/esm2022/lib/smart-filter/smart-filter.model.mjs +1 -1
  92. package/esm2022/lib/smart-filter/smart-filter.module.mjs +1 -1
  93. package/esm2022/lib/smart-filter-editor/api/api/filter.service.mjs +1 -1
  94. package/esm2022/lib/smart-filter-editor/api/configuration.mjs +1 -1
  95. package/esm2022/lib/smart-filter-editor/api/encoder.mjs +1 -1
  96. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBoolOperator.mjs +1 -1
  97. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderApiConfig.mjs +1 -1
  98. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderField.mjs +1 -1
  99. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderGroup.mjs +1 -1
  100. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderModel.mjs +1 -1
  101. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionBuilderUiModel.mjs +1 -1
  102. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionData.mjs +1 -1
  103. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionDataType.mjs +1 -1
  104. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionField.mjs +1 -1
  105. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldEditor.mjs +1 -1
  106. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldList.mjs +1 -1
  107. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionFieldWidgetType.mjs +1 -1
  108. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionList.mjs +1 -1
  109. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOperandData.mjs +1 -1
  110. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOperation.mjs +1 -1
  111. package/esm2022/lib/smart-filter-editor/api/model/filterExpressionOrderBy.mjs +1 -1
  112. package/esm2022/lib/smart-filter-editor/api/model/smartFilterType.mjs +1 -1
  113. package/esm2022/lib/smart-filter-editor/api/param.mjs +1 -1
  114. package/esm2022/lib/smart-filter-editor/api/variables.mjs +1 -1
  115. package/esm2022/lib/smart-filter-editor/filterExpressionBuilderApiActions.mjs +1 -1
  116. package/esm2022/lib/smart-filter-editor/project.mjs +1 -1
  117. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-item/smart-filter-expression-item.component.mjs +3 -3
  118. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/components/smart-filter-expression-items/smart-filter-expression-items.component.mjs +3 -3
  119. package/esm2022/lib/smart-filter-editor/smart-filter-editor-content/smart-filter-editor-content.component.mjs +3 -3
  120. package/esm2022/lib/smart-filter-editor/smart-filter-editor.model.mjs +1 -1
  121. package/esm2022/lib/smart-filter-editor/smart-filter-editor.module.mjs +1 -1
  122. package/esm2022/lib/smart-filter-editor/smart-filter-editor.service.mjs +1 -1
  123. package/esm2022/lib/smart-filter-editor/smart-filter-params/components/smart-filter-param/smart-filter-param.component.mjs +3 -3
  124. package/esm2022/lib/smart-filter-editor/smart-filter-params/smart-filter-params.component.mjs +3 -3
  125. package/esm2022/lib/smart-form/api/api/api.mjs +1 -1
  126. package/esm2022/lib/smart-form/api/api/default.service.mjs +1 -1
  127. package/esm2022/lib/smart-form/api/api.module.mjs +1 -1
  128. package/esm2022/lib/smart-form/api/configuration.mjs +1 -1
  129. package/esm2022/lib/smart-form/api/encoder.mjs +1 -1
  130. package/esm2022/lib/smart-form/api/index.mjs +1 -1
  131. package/esm2022/lib/smart-form/api/model/models.mjs +1 -1
  132. package/esm2022/lib/smart-form/api/model/propertyMapping.mjs +1 -1
  133. package/esm2022/lib/smart-form/api/model/selectionDefinition.mjs +1 -1
  134. package/esm2022/lib/smart-form/api/model/smartFormInputMode.mjs +1 -1
  135. package/esm2022/lib/smart-form/api/model/smartFormWidgetDirection.mjs +1 -1
  136. package/esm2022/lib/smart-form/api/model/smartFormWidgetType.mjs +1 -1
  137. package/esm2022/lib/smart-form/api/model/smartLayoutDefinition.mjs +1 -1
  138. package/esm2022/lib/smart-form/api/model/smartMatrixModel.mjs +1 -1
  139. package/esm2022/lib/smart-form/api/model/smartWidgetDefinition.mjs +1 -1
  140. package/esm2022/lib/smart-form/api/model/smartWidgetHint.mjs +1 -1
  141. package/esm2022/lib/smart-form/api/model/sortDefinition.mjs +1 -1
  142. package/esm2022/lib/smart-form/api/model/valueChangeMode.mjs +1 -1
  143. package/esm2022/lib/smart-form/api/param.mjs +1 -1
  144. package/esm2022/lib/smart-form/api/variables.mjs +1 -1
  145. package/esm2022/lib/smart-form/highlightMacthingString-pipe.mjs +1 -1
  146. package/esm2022/lib/smart-form/projects.mjs +1 -1
  147. package/esm2022/lib/smart-form/services/smartform.layout-definition.service.mjs +1 -1
  148. package/esm2022/lib/smart-form/services/smartform.service.mjs +1 -1
  149. package/esm2022/lib/smart-form/smartfileuploader/large-file-snack-bar/large-file-snack-bar.component.mjs +3 -3
  150. package/esm2022/lib/smart-form/smartfileuploader/smartfileuploader.component.mjs +3 -3
  151. package/esm2022/lib/smart-form/smartfileuploader/smartfileuploader.model.mjs +1 -1
  152. package/esm2022/lib/smart-form/smartform.component.mjs +3 -3
  153. package/esm2022/lib/smart-form/smartform.form-model.mjs +1 -1
  154. package/esm2022/lib/smart-form/smartform.model.mjs +1 -1
  155. package/esm2022/lib/smart-form/widgets/components/smart-month-picker/smart-month-picker.component.mjs +3 -3
  156. package/esm2022/lib/smart-form/widgets/directives/comparable-dropdown.directive.mjs +1 -1
  157. package/esm2022/lib/smart-form/widgets/directives/comparable-multiselect.directive.mjs +1 -1
  158. package/esm2022/lib/smart-form/widgets/smartformwidget/smartformwidget.component.mjs +3 -3
  159. package/esm2022/lib/smart-form/widgets/smartformwidget/sortable-widget/sortable-widget.component.mjs +3 -3
  160. package/esm2022/lib/smart-form/widgets/smartformwidget/trackCaps.directive.mjs +1 -1
  161. package/esm2022/lib/smart-grid/api/grid-api/api/api.mjs +1 -1
  162. package/esm2022/lib/smart-grid/api/grid-api/api/grid.service.mjs +1 -1
  163. package/esm2022/lib/smart-grid/api/grid-api/api.module.mjs +1 -1
  164. package/esm2022/lib/smart-grid/api/grid-api/configuration.mjs +1 -1
  165. package/esm2022/lib/smart-grid/api/grid-api/encoder.mjs +1 -1
  166. package/esm2022/lib/smart-grid/api/grid-api/index.mjs +1 -1
  167. package/esm2022/lib/smart-grid/api/grid-api/model/gridColumnContentType.mjs +1 -1
  168. package/esm2022/lib/smart-grid/api/grid-api/model/gridColumnMeta.mjs +1 -1
  169. package/esm2022/lib/smart-grid/api/grid-api/model/gridDataAccessConfig.mjs +1 -1
  170. package/esm2022/lib/smart-grid/api/grid-api/model/gridExportDescriptor.mjs +1 -1
  171. package/esm2022/lib/smart-grid/api/grid-api/model/gridModel.mjs +1 -1
  172. package/esm2022/lib/smart-grid/api/grid-api/model/gridPage.mjs +1 -1
  173. package/esm2022/lib/smart-grid/api/grid-api/model/gridRow.mjs +1 -1
  174. package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionChange.mjs +1 -1
  175. package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionMode.mjs +1 -1
  176. package/esm2022/lib/smart-grid/api/grid-api/model/gridSelectionType.mjs +1 -1
  177. package/esm2022/lib/smart-grid/api/grid-api/model/gridServerModel.mjs +1 -1
  178. package/esm2022/lib/smart-grid/api/grid-api/model/gridUpdateData.mjs +1 -1
  179. package/esm2022/lib/smart-grid/api/grid-api/model/gridView.mjs +1 -1
  180. package/esm2022/lib/smart-grid/api/grid-api/model/gridViewDescriptor.mjs +1 -1
  181. package/esm2022/lib/smart-grid/api/grid-api/model/models.mjs +1 -1
  182. package/esm2022/lib/smart-grid/api/grid-api/param.mjs +1 -1
  183. package/esm2022/lib/smart-grid/api/grid-api/variables.mjs +1 -1
  184. package/esm2022/lib/smart-grid/components/expandable-grid/expandable-grid.component.mjs +3 -3
  185. package/esm2022/lib/smart-grid/components/smart-grid-card/smart-grid-card.component.mjs +3 -3
  186. package/esm2022/lib/smart-grid/components/table-layout-definer/table-layout-definer.component.mjs +3 -3
  187. package/esm2022/lib/smart-grid/models/model.mjs +1 -1
  188. package/esm2022/lib/smart-grid/projects.mjs +1 -1
  189. package/esm2022/lib/smart-grid/smart-grid-toolbar-util.mjs +1 -1
  190. package/esm2022/lib/smart-grid/smart-grid.component.mjs +3 -3
  191. package/esm2022/lib/smart-grid/smart-grid.module.mjs +1 -1
  192. package/esm2022/lib/smart-grid/smart-grid.service.mjs +1 -1
  193. package/esm2022/lib/smart-icon/projects.mjs +1 -1
  194. package/esm2022/lib/smart-icon/smart-icon/smart-icon.component.mjs +3 -3
  195. package/esm2022/lib/smart-icon/smart-icon.module.mjs +1 -1
  196. package/esm2022/lib/smart-icon/smart-icon.service.mjs +1 -1
  197. package/esm2022/lib/smart-map/abstract-map.mjs +1 -1
  198. package/esm2022/lib/smart-map/api/api/api.mjs +1 -1
  199. package/esm2022/lib/smart-map/api/api/geoMap.service.mjs +1 -1
  200. package/esm2022/lib/smart-map/api/api.module.mjs +1 -1
  201. package/esm2022/lib/smart-map/api/configuration.mjs +1 -1
  202. package/esm2022/lib/smart-map/api/encoder.mjs +1 -1
  203. package/esm2022/lib/smart-map/api/index.mjs +1 -1
  204. package/esm2022/lib/smart-map/api/model/gPSPosition.mjs +1 -1
  205. package/esm2022/lib/smart-map/api/model/gPSRoute.mjs +1 -1
  206. package/esm2022/lib/smart-map/api/model/geoMapChange.mjs +1 -1
  207. package/esm2022/lib/smart-map/api/model/geoMapDataLoadingMode.mjs +1 -1
  208. package/esm2022/lib/smart-map/api/model/geoMapDataSourceDescriptor.mjs +1 -1
  209. package/esm2022/lib/smart-map/api/model/geoMapDataSourceType.mjs +1 -1
  210. package/esm2022/lib/smart-map/api/model/geoMapEditingSession.mjs +1 -1
  211. package/esm2022/lib/smart-map/api/model/geoMapInteraction.mjs +1 -1
  212. package/esm2022/lib/smart-map/api/model/geoMapItem.mjs +1 -1
  213. package/esm2022/lib/smart-map/api/model/geoMapItemKind.mjs +1 -1
  214. package/esm2022/lib/smart-map/api/model/geoMapLayer.mjs +1 -1
  215. package/esm2022/lib/smart-map/api/model/geoMapLayerChange.mjs +1 -1
  216. package/esm2022/lib/smart-map/api/model/geoMapLayerDescriptor.mjs +1 -1
  217. package/esm2022/lib/smart-map/api/model/geoMapModel.mjs +1 -1
  218. package/esm2022/lib/smart-map/api/model/geoMapOperationMode.mjs +1 -1
  219. package/esm2022/lib/smart-map/api/model/geoMapSelectionMode.mjs +1 -1
  220. package/esm2022/lib/smart-map/api/model/geoMapServerModel.mjs +1 -1
  221. package/esm2022/lib/smart-map/api/model/geoMapTextType.mjs +1 -1
  222. package/esm2022/lib/smart-map/api/model/geoMapViewState.mjs +1 -1
  223. package/esm2022/lib/smart-map/api/model/geoMapViewport.mjs +1 -1
  224. package/esm2022/lib/smart-map/api/model/models.mjs +1 -1
  225. package/esm2022/lib/smart-map/api/param.mjs +1 -1
  226. package/esm2022/lib/smart-map/api/variables.mjs +1 -1
  227. package/esm2022/lib/smart-map/api-default/api-default.mjs +1 -1
  228. package/esm2022/lib/smart-map/impl/google-map.mjs +1 -1
  229. package/esm2022/lib/smart-map/impl/leaflet-map.mjs +1 -1
  230. package/esm2022/lib/smart-map/projects.mjs +1 -1
  231. package/esm2022/lib/smart-map/smart-map.component.mjs +3 -3
  232. package/esm2022/lib/smart-map/smart-map.module.mjs +1 -1
  233. package/esm2022/lib/smart-map/smart-map.types.mjs +1 -1
  234. package/esm2022/lib/smart-navbar/projects.mjs +1 -1
  235. package/esm2022/lib/smart-navbar/smart-navbar.component.mjs +3 -3
  236. package/esm2022/lib/smart-navbar/smart-navbar.model.mjs +1 -1
  237. package/esm2022/lib/smart-navbar/smart-navbar.module.mjs +1 -1
  238. package/esm2022/lib/smart-navbar/smart-navbar.service.mjs +1 -1
  239. package/esm2022/lib/smart-navigation/projects.mjs +1 -1
  240. package/esm2022/lib/smart-navigation/smart-navigation.interface.mjs +1 -1
  241. package/esm2022/lib/smart-navigation/smart-navigation.module.mjs +1 -1
  242. package/esm2022/lib/smart-navigation/smart-navigation.service.mjs +1 -1
  243. package/esm2022/lib/smart-ng-client.module.mjs +1 -1
  244. package/esm2022/lib/smart-ng-client.service.mjs +1 -1
  245. package/esm2022/lib/smart-subject/projects.mjs +1 -1
  246. package/esm2022/lib/smart-subject/smart-subject.mjs +1 -1
  247. package/esm2022/lib/smart-tab-group/projects.mjs +1 -1
  248. package/esm2022/lib/smart-tab-group/smart-tab-group.component.mjs +3 -3
  249. package/esm2022/lib/smart-tab-group/smart-tab-group.module.mjs +1 -1
  250. package/esm2022/lib/smart-tab-group/smart-tab-group.service.mjs +1 -1
  251. package/esm2022/lib/smart-tab-group/tab-content/tab-content.component.mjs +3 -3
  252. package/esm2022/lib/smart-tab-group/tab-group-simplified/tab-group.component.mjs +3 -3
  253. package/esm2022/lib/smart-tab-group/tabTile.model.mjs +1 -1
  254. package/esm2022/lib/smart-table/components/default-actions-popup/default-actions-popup.component.mjs +3 -3
  255. package/esm2022/lib/smart-table/components/loading/loading.component.mjs +3 -3
  256. package/esm2022/lib/smart-table/directives/mat-context-menu-trigger-for.directive.mjs +1 -1
  257. package/esm2022/lib/smart-table/projects.mjs +1 -1
  258. package/esm2022/lib/smart-table/smarttable.component.mjs +3 -3
  259. package/esm2022/lib/smart-table/smarttable.model.mjs +1 -1
  260. package/esm2022/lib/smart-table/smarttable.module.mjs +1 -1
  261. package/esm2022/lib/smart-table/smarttable.service.mjs +1 -1
  262. package/esm2022/lib/smart-table/tables/material-table/material-table.component.mjs +3 -3
  263. package/esm2022/lib/smart-table/tables/mobile-table/mobile-table.component.mjs +3 -3
  264. package/esm2022/lib/smart-table/tables/table.mjs +1 -1
  265. package/esm2022/lib/smart-tree/projects.mjs +1 -1
  266. package/esm2022/lib/smart-tree/smarttree-generic.service.mjs +1 -1
  267. package/esm2022/lib/smart-tree/smarttree.component.mjs +3 -3
  268. package/esm2022/lib/smart-tree/smarttree.model.mjs +1 -1
  269. package/esm2022/lib/smart-tree/smarttree.module.mjs +1 -1
  270. package/esm2022/lib/smart-tree/smarttree.node.model.mjs +1 -1
  271. package/esm2022/lib/smart-tree/smarttree.service.interface.mjs +1 -1
  272. package/esm2022/lib/smart-tree/smarttree.service.mjs +1 -1
  273. package/esm2022/lib/smart-tree/tree-api/api/tree.service.mjs +1 -1
  274. package/esm2022/lib/smart-tree/tree-api/configuration.mjs +1 -1
  275. package/esm2022/lib/smart-tree/tree-api/encoder.mjs +1 -1
  276. package/esm2022/lib/smart-tree/tree-api/param.mjs +1 -1
  277. package/esm2022/lib/smart-tree/tree-api/variables.mjs +1 -1
  278. package/esm2022/lib/smart-validation/named-validator.service.mjs +1 -1
  279. package/esm2022/lib/smart-validation/projects.mjs +1 -1
  280. package/esm2022/lib/smart-validation/smart-validation.module.mjs +1 -1
  281. package/esm2022/lib/smart-validation/smart-validation.types.mjs +1 -1
  282. package/esm2022/lib/view-context/api/api/api.mjs +1 -1
  283. package/esm2022/lib/view-context/api/api/view.service.mjs +1 -1
  284. package/esm2022/lib/view-context/api/api-default/binaryData.mjs +1 -1
  285. package/esm2022/lib/view-context/api/api-default/invocationError.mjs +1 -1
  286. package/esm2022/lib/view-context/api/api-default/invocationRequest.mjs +1 -1
  287. package/esm2022/lib/view-context/api/api.module.mjs +1 -1
  288. package/esm2022/lib/view-context/api/configuration.mjs +1 -1
  289. package/esm2022/lib/view-context/api/encoder.mjs +1 -1
  290. package/esm2022/lib/view-context/api/index.mjs +1 -1
  291. package/esm2022/lib/view-context/api/model/badgeDescriptor.mjs +1 -1
  292. package/esm2022/lib/view-context/api/model/clipboardData.mjs +1 -1
  293. package/esm2022/lib/view-context/api/model/closeResult.mjs +1 -1
  294. package/esm2022/lib/view-context/api/model/componentConstraint.mjs +1 -1
  295. package/esm2022/lib/view-context/api/model/componentModel.mjs +1 -1
  296. package/esm2022/lib/view-context/api/model/componentModelChange.mjs +1 -1
  297. package/esm2022/lib/view-context/api/model/dataChange.mjs +1 -1
  298. package/esm2022/lib/view-context/api/model/dataChangeEvent.mjs +1 -1
  299. package/esm2022/lib/view-context/api/model/dataChangeKind.mjs +1 -1
  300. package/esm2022/lib/view-context/api/model/deviceInfo.mjs +1 -1
  301. package/esm2022/lib/view-context/api/model/downloadedFile.mjs +1 -1
  302. package/esm2022/lib/view-context/api/model/iconPosition.mjs +1 -1
  303. package/esm2022/lib/view-context/api/model/imageResource.mjs +1 -1
  304. package/esm2022/lib/view-context/api/model/link.mjs +1 -1
  305. package/esm2022/lib/view-context/api/model/messageData.mjs +1 -1
  306. package/esm2022/lib/view-context/api/model/messageOption.mjs +1 -1
  307. package/esm2022/lib/view-context/api/model/messageOptionType.mjs +1 -1
  308. package/esm2022/lib/view-context/api/model/messageResult.mjs +1 -1
  309. package/esm2022/lib/view-context/api/model/messageTextType.mjs +1 -1
  310. package/esm2022/lib/view-context/api/model/messageType.mjs +1 -1
  311. package/esm2022/lib/view-context/api/model/models.mjs +1 -1
  312. package/esm2022/lib/view-context/api/model/namedValidator.mjs +1 -1
  313. package/esm2022/lib/view-context/api/model/openPendingData.mjs +1 -1
  314. package/esm2022/lib/view-context/api/model/serverRequestExecutionStat.mjs +1 -1
  315. package/esm2022/lib/view-context/api/model/serverRequestTrack.mjs +1 -1
  316. package/esm2022/lib/view-context/api/model/serverRequestType.mjs +1 -1
  317. package/esm2022/lib/view-context/api/model/smartLinkData.mjs +1 -1
  318. package/esm2022/lib/view-context/api/model/smartLinkMigrationStatus.mjs +1 -1
  319. package/esm2022/lib/view-context/api/model/statisticRecord.mjs +1 -1
  320. package/esm2022/lib/view-context/api/model/style.mjs +1 -1
  321. package/esm2022/lib/view-context/api/model/uiAction.mjs +1 -1
  322. package/esm2022/lib/view-context/api/model/uiActionButtonDescriptor.mjs +1 -1
  323. package/esm2022/lib/view-context/api/model/uiActionButtonType.mjs +1 -1
  324. package/esm2022/lib/view-context/api/model/uiActionConstraint.mjs +1 -1
  325. package/esm2022/lib/view-context/api/model/uiActionDescriptor.mjs +1 -1
  326. package/esm2022/lib/view-context/api/model/uiActionDialogDescriptor.mjs +1 -1
  327. package/esm2022/lib/view-context/api/model/uiActionFeedbackType.mjs +1 -1
  328. package/esm2022/lib/view-context/api/model/uiActionInputType.mjs +1 -1
  329. package/esm2022/lib/view-context/api/model/uiActionRequest.mjs +1 -1
  330. package/esm2022/lib/view-context/api/model/uiActionTooltip.mjs +1 -1
  331. package/esm2022/lib/view-context/api/model/uiActionUploadDescriptor.mjs +1 -1
  332. package/esm2022/lib/view-context/api/model/uploadWidgetType.mjs +1 -1
  333. package/esm2022/lib/view-context/api/model/uploadedFile.mjs +1 -1
  334. package/esm2022/lib/view-context/api/model/valueSet.mjs +1 -1
  335. package/esm2022/lib/view-context/api/model/view.mjs +1 -1
  336. package/esm2022/lib/view-context/api/model/viewApiError.mjs +1 -1
  337. package/esm2022/lib/view-context/api/model/viewConstraint.mjs +1 -1
  338. package/esm2022/lib/view-context/api/model/viewContext.mjs +1 -1
  339. package/esm2022/lib/view-context/api/model/viewContextChange.mjs +1 -1
  340. package/esm2022/lib/view-context/api/model/viewContextData.mjs +1 -1
  341. package/esm2022/lib/view-context/api/model/viewContextUpdate.mjs +1 -1
  342. package/esm2022/lib/view-context/api/model/viewData.mjs +1 -1
  343. package/esm2022/lib/view-context/api/model/viewEventHandler.mjs +1 -1
  344. package/esm2022/lib/view-context/api/model/viewPlaceholder.mjs +1 -1
  345. package/esm2022/lib/view-context/api/model/viewState.mjs +1 -1
  346. package/esm2022/lib/view-context/api/model/viewStateUpdate.mjs +1 -1
  347. package/esm2022/lib/view-context/api/model/viewType.mjs +1 -1
  348. package/esm2022/lib/view-context/api/param.mjs +1 -1
  349. package/esm2022/lib/view-context/api/variables.mjs +1 -1
  350. package/esm2022/lib/view-context/invalid-fields-snack-bar/invalid-fields-snack-bar.component.mjs +3 -3
  351. package/esm2022/lib/view-context/message-dialog/message-dialog.component.mjs +3 -3
  352. package/esm2022/lib/view-context/projects.mjs +1 -1
  353. package/esm2022/lib/view-context/property-definition-data.mjs +1 -1
  354. package/esm2022/lib/view-context/smart-ui-action/components/action-badge/action-badge.component.mjs +3 -3
  355. package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.component.mjs +3 -3
  356. package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.constants.mjs +1 -1
  357. package/esm2022/lib/view-context/smart-ui-action/components/menu/menu.service.mjs +1 -1
  358. package/esm2022/lib/view-context/smart-ui-action/components/success-snack-bar/success-snack-bar.component.mjs +3 -3
  359. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.component.mjs +3 -3
  360. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-confirm-dialog/ui-action-confirm-dialog.service.mjs +1 -1
  361. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-dialog-button/ui-action-dialog-button.component.mjs +3 -3
  362. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/photo-capture-widget/photo-capture-widget.component.mjs +3 -3
  363. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.component.mjs +27 -3
  364. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.service.mjs +1 -1
  365. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/voice-record-widget/voice-record-widget.component.mjs +5 -5
  366. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.component.mjs +3 -3
  367. package/esm2022/lib/view-context/smart-ui-action/dialogs/ui-action-input-dialog/ui-action-input-dialog.service.mjs +1 -1
  368. package/esm2022/lib/view-context/smart-ui-action/ui-action-button/ui-action-button.component.mjs +3 -3
  369. package/esm2022/lib/view-context/smart-ui-action/ui-action-toolbar.component.mjs +79 -5
  370. package/esm2022/lib/view-context/smart-ui-action/ui-action.descriptor.service.mjs +1 -1
  371. package/esm2022/lib/view-context/smart-ui-action/ui-action.model.mjs +1 -1
  372. package/esm2022/lib/view-context/smart-ui-action/ui-action.service.mjs +1 -1
  373. package/esm2022/lib/view-context/smart-view-context-dialog.service.mjs +1 -1
  374. package/esm2022/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.component.mjs +3 -3
  375. package/esm2022/lib/view-context/smart-view-context-error-dialog/smart-view-context-error-dialog.service.mjs +1 -1
  376. package/esm2022/lib/view-context/smart-view-context.interceptor.mjs +1 -1
  377. package/esm2022/lib/view-context/smart-view-context.model.mjs +1 -1
  378. package/esm2022/lib/view-context/smart-view-context.module.mjs +1 -1
  379. package/esm2022/lib/view-context/smart-view-context.service.mjs +1 -1
  380. package/esm2022/lib/view-context/smart-view-redirect/smart-view-redirect.mjs +1 -1
  381. package/esm2022/lib/view-context/utility/componentLibrary.mjs +1 -1
  382. package/esm2022/lib/view-context/utility/smart-object-utility.mjs +1 -1
  383. package/esm2022/lib/view-context/utility/smart-style-utility.mjs +1 -1
  384. package/esm2022/lib/view-context/value-api/api/api.mjs +1 -1
  385. package/esm2022/lib/view-context/value-api/api/value.service.mjs +1 -1
  386. package/esm2022/lib/view-context/value-api/api.module.mjs +1 -1
  387. package/esm2022/lib/view-context/value-api/configuration.mjs +1 -1
  388. package/esm2022/lib/view-context/value-api/encoder.mjs +1 -1
  389. package/esm2022/lib/view-context/value-api/index.mjs +1 -1
  390. package/esm2022/lib/view-context/value-api/model/genericValue.mjs +1 -1
  391. package/esm2022/lib/view-context/value-api/model/models.mjs +1 -1
  392. package/esm2022/lib/view-context/value-api/model/value.mjs +1 -1
  393. package/esm2022/lib/view-context/value-api/model/valueSetData.mjs +1 -1
  394. package/esm2022/lib/view-context/value-api/model/valueSetDefinition.mjs +1 -1
  395. package/esm2022/lib/view-context/value-api/model/valueSetDefinitionData.mjs +1 -1
  396. package/esm2022/lib/view-context/value-api/model/valueSetDefinitionIdentifier.mjs +1 -1
  397. package/esm2022/lib/view-context/value-api/model/valueSetDefinitionKind.mjs +1 -1
  398. package/esm2022/lib/view-context/value-api/model/valueSetExpression.mjs +1 -1
  399. package/esm2022/lib/view-context/value-api/model/valueSetOperand.mjs +1 -1
  400. package/esm2022/lib/view-context/value-api/model/valueSetOperation.mjs +1 -1
  401. package/esm2022/lib/view-context/value-api/param.mjs +1 -1
  402. package/esm2022/lib/view-context/value-api/variables.mjs +1 -1
  403. package/esm2022/projects.mjs +1 -1
  404. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartData.mjs +1 -1
  405. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartDescriptor.mjs +1 -1
  406. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartOrientation.mjs +1 -1
  407. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartType.mjs +1 -1
  408. package/esm2022/src/lib/smart-chart/smart-chart/api/model/chartValue.mjs +1 -1
  409. package/esm2022/src/lib/smart-chart/smart-chart/api/model/models.mjs +1 -1
  410. package/esm2022/src/lib/smart-chart/smart-chart/api/model/pieChartLegendPosition.mjs +1 -1
  411. package/esm2022/src/lib/smart-chart/smart-chart/default-chart-options.provider.mjs +1 -1
  412. package/esm2022/src/lib/smart-chart/smart-chart/smart-chart.component.mjs +19 -19
  413. package/esm2022/src/lib/smart-chart/smart-chart/smart-chart.module.mjs +1 -1
  414. package/esm2022/src/lib/smart-chart/smart-chart-projects.mjs +1 -1
  415. package/esm2022/src/lib/smart-chart/view-context/utility/componentLibrary.mjs +1 -1
  416. package/fesm2022/smartbit4all-ng-client-src-lib-smart-chart.mjs +18 -18
  417. package/fesm2022/smartbit4all-ng-client-src-lib-smart-chart.mjs.map +1 -1
  418. package/fesm2022/smartbit4all-ng-client.mjs +199 -101
  419. package/fesm2022/smartbit4all-ng-client.mjs.map +1 -1
  420. package/lib/view-context/smart-ui-action/dialogs/ui-action-file-upload-dialog/ui-action-file-upload-dialog.component.d.ts +3 -0
  421. package/lib/view-context/smart-ui-action/ui-action-toolbar.component.d.ts +20 -3
  422. package/package.json +1 -1
  423. package/smartbit4all-ng-client-4.2.68.tgz +0 -0
  424. package/smartbit4all-ng-client-4.2.66.tgz +0 -0
package/README.md CHANGED
@@ -1,386 +1,386 @@
1
- # Smart Ng Client
2
-
3
- ---
4
-
5
- ## How to use
6
-
7
- ### Installation
8
-
9
- Go to your project, open the terminal and use the following command:
10
-
11
- npm i @smartbit4all/ng-client
12
-
13
- Provide the `SmartNgClientModule` in the app.module:
14
-
15
- `app.module.ts:`
16
-
17
- @NgModule({
18
- declarations: [...],
19
- imports: [
20
- SmartNgClientModule,
21
- ...
22
- ],
23
- providers: [
24
- SmartSessionService,
25
- SmartViewContextService,
26
- ...
27
- ],
28
- ...
29
- })
30
-
31
- ### Usage
32
-
33
- In order to use the SmartSessionService I recommend to follow the guideline belove.
34
-
35
- **Generate a service** which will **handle the session and the authentication**.
36
-
37
- `Terminal:`
38
-
39
- >>> cd src/app
40
-
41
- >>> mkdir services
42
-
43
- >>> cd ./services
44
-
45
- >>> ng g s authentication
46
-
47
- Provide this new service as a **global service**:
48
-
49
- `app.module.ts:`
50
-
51
- @NgModule({
52
- declarations: [...],
53
- imports: [...],
54
- providers: [
55
- SmartSessionService,
56
- AuthenticationService,
57
- ...
58
- ],
59
- ...
60
- })
61
-
62
- ### Authentication state changed
63
-
64
- The change of authentication state can be detected in any components. To handle it you must subscribe to the change itself.
65
-
66
- **Note that in this version a user is authenticated when the response of the GET session contains a list of authentications.**
67
-
68
- this.isAuthenticated = response.authentications.length > 0
69
-
70
- `any.component.ts:`
71
-
72
- constructor(
73
- private auth: AuthenticationService,
74
- private session: SmartSessionService
75
- ) {
76
- this.session.authenticationStateChanged.subscribe((isAuth: boolean) => {
77
- if (!isAuth) {
78
- this.router.navigate(['/login']);
79
- }
80
- });
81
- }
82
-
83
- ### Using locales
84
-
85
- The `SmartSessionService` supports the usage of locales in you application. It is important to note that the language is related to the session!
86
-
87
- This example uses the [NgxTranslate/core](https://www.npmjs.com/package/@ngx-translate/core) package.
88
-
89
- `authentication.service.ts:`
90
-
91
- import { TranslateService } from '@ngx-translate/core';
92
- ...
93
-
94
- export class AuthenticationService {
95
- ...
96
-
97
- constructor(
98
- ...
99
- private translate: TranslateService
100
- ) {
101
- this.session.localeChanged.subscribe(() => {
102
- this.translate.use(this.session.getLocale());
103
- });
104
- }
105
-
106
- async changeLocale(locale: string): Promise<void> {
107
- await this.session.changeLocale(locale);
108
- }
109
-
110
- getLocale(): string {
111
- return this.session.getLocale();
112
- }
113
- }
114
-
115
- ### SmartDevTool usage
116
-
117
- Turn on and off the devTool:
118
-
119
- // active
120
- localStorage.setItem('smartDevToolActive', 'true');
121
- // inactive
122
- localStorage.setItem('smartDevToolActive', 'false');
123
-
124
- Set the devTool's button visibility
125
-
126
- // visible
127
- localStorage.setItem('useDevTool', 'true');
128
- // invisible
129
- localStorage.setItem('useDevTool', 'false');
130
-
131
- In order to use this package properly, please create a folder called `viewcontext` in which a `view-context.pages.model.ts` shall be created:
132
-
133
- - src/app/viewcontext/
134
- - view-context.pages.ts
135
- - view-context.handlers.ts
136
-
137
- `view-context.pages.ts:`
138
-
139
- export enum Pages {
140
- // mandatory
141
- VIEW_CONTEXT = 'viewContextUuid',
142
-
143
- // optionals
144
- ANY_PAGE = 'anyPage',
145
- ANY_DIALOG = 'anyDialog,
146
- ANY_COMPONENT = 'anyComponent,
147
- ...
148
- }
149
-
150
- `view-context.handlers.ts:`
151
-
152
- import { SmartViewHandlerModel, ViewType } from '@smartbit4all/view-context';
153
- import { Pages } from './view-context.pages';
154
- import { AnyDialogService } from '../any-dialog/any-dialog.service';
155
-
156
- export const viewContextHandlers: SmartViewHandlerModel[] = [
157
- // ViewType.Normal
158
- {
159
- name: Pages.ANY_PAGE,
160
- route: 'any'
161
- },
162
- // ViewType.Dialog
163
- {
164
- name: Pages.ANY_DIALOG,
165
- component: AnyDialogComponent
166
- },
167
- // ViewType.Normal or ViewType.Dialog
168
- {
169
- name: Pages.ANY_COMPONENT,
170
- route: 'any',
171
- component: AnyComponent
172
- }
173
- ];
174
-
175
- Don't forget to define some ApiErrors and inject it into the **AuthenticationService**:
176
-
177
- `view-context.api-errors.ts:`
178
-
179
- const viewContextApiErrors: SmartViewContextApiErrors = {
180
- viewContextApiErrors:  [
181
- {
182
- code: "001",
183
- dialogTitle?: "Error"
184
- message: "An error message"
185
- buttonLabel?: "Ok"
186
- }
187
- ]
188
- }
189
-
190
- ### SmartLink
191
-
192
- In order to use SmartLinks in your application, follow the instruction:
193
-
194
- Firstly, set up the routing:
195
-
196
- `app-routing.module.ts:`
197
-
198
- const routes: Routes = [
199
- // Out of the box solution
200
- {
201
- path: `redirect/:${SmartLinkChannelVariableInPath}/:${SmartLinkUuidVariableInPath}`,
202
- component: SmartViewRedirect,
203
- },
204
- // Custom solution
205
- {
206
- path: `customRedirect/:${SmartLinkChannelVariableInPath}/:${SmartLinkUuidVariableInPath}`,
207
- component: RedirectComponent,
208
- },
209
- ...
210
- ]
211
-
212
- Then you can set up your custom redirect component as you wish:
213
-
214
- `redirect.component.ts:`
215
-
216
- @Component({
217
- selector: "app-redirect",
218
- templateUrl: "./redirect.component.html",
219
- styleUrls: ["./redirect.component.css"],
220
- })
221
- export class RedirectComponent extends SmartViewRedirect {
222
- constructor(
223
- service: SmartViewContextService,
224
- navigation: SmartNavigationService,
225
- route: ActivatedRoute
226
- ) {
227
- super(
228
- service,
229
- navigation,
230
- route
231
- );
232
- }
233
- }
234
-
235
- Then subscribe for the _openSmartLink_ event and handle it in your AuthenticationService:
236
-
237
- `authentication.service.ts:`
238
-
239
- constructor(...) {
240
- ...
241
- this.viewContext.openSmartLink.subscribe(() => {
242
- this.handleOpenSmartLinkEvent();
243
- })
244
- }
245
-
246
- private async handleOpenSmartLinkEvent(): Promise<void> {
247
- // Do your business logic here
248
-
249
- // If authentication is needed to open the link:
250
- let isAuthenticated = await this.isAuthenticated();
251
- if (isAuthenticated) {
252
- this.viewContext.openSmartLink.complete();
253
- } else {
254
- // Navigate to login screen without reloading the site!
255
- }
256
- }
257
-
258
- // Modify this if authentication is needed to open links
259
- async login(request: LocalAuthenticationLoginRequest): Promise<boolean> {
260
- await this.auth.login(request);
261
- let isAuth = await this.session.getIsAuthenticated();
262
- if (isAuth) {
263
- await this.viewContext.initialize();
264
-
265
- await this.anyBffApi.startAnyPage().toPromise();
266
-
267
- // If there is a smart link waiting for opening...
268
- if (this.viewContext.isOpeningSmartLink) {
269
- this.viewContext.openSmartLink.complete();
270
- return isAuth;
271
- }
272
-
273
- let uuid = this.viewContext.getUuidOfPage(Pages.VIEW_CONTEXT);
274
- await this.viewContext.getAndSyncViewContext(uuid);
275
- }
276
- return isAuth;
277
- }
278
-
279
- ### UiActions
280
-
281
- The ViewContext package contains a common manager for the UiActions. To use this tool, please follow the instructions.
282
-
283
- `action.descriptors.ts:`
284
-
285
- import {
286
- UiActionButtonIconPos,
287
- UiActionButtonType,
288
- UiActionDescriptor
289
- } from '@smartbit4all/view-context';
290
-
291
- // Build your own action descriptors
292
- export const ActionDescriptors: Map<string, UiActionDescriptor> = new Map([
293
- [
294
- 'EXAMPLE',
295
- {
296
- title: 'Example action',
297
- type: UiActionButtonType.Raised,
298
- color: 'primary',
299
- dialog: {
300
- title: 'Example dialog title',
301
- text: 'Example dialog text',
302
- actionButton: {
303
- caption: 'Example action',
304
- color: 'primary'
305
- },
306
- cancelButton: {
307
- caption: 'Cancel',
308
- color: ''
309
- }
310
- },
311
- inputDialog: { ... },
312
- confirmDialog: { ... },
313
- feedbackType: UiActionFeedbackType.SNACKBAR;
314
- feedbackText: "Example feedback";
315
- }
316
- ]
317
- ])
318
-
319
- `authentication.service.ts:`
320
-
321
- constructor(...) {
322
- ...
323
- // Set your descriptors
324
- this.viewContext.setActionDescriptors(ActionDescriptors);
325
-
326
- // Set basic feedback
327
- this.viewContext.commonFeedbackText = "Basic feedback."
328
- ...
329
- }
330
-
331
- `example.component.ts:`
332
-
333
- @Component({
334
- selector: 'app-example',
335
- templateUrl: './example.component.html',
336
- styleUrls: ['./example.component.css']
337
- })
338
- export class ExampleComponent implements UseUiAction {
339
- possibleActions: UiAction[]; // Comes from the backend
340
- actions: UiActionModel[] = [];
341
-
342
- // UseUiAction properties
343
- submit: Subject<void> = new Subject();
344
- reSubscribeToChange: Subject<void> = new Subject();
345
-
346
- constructor(private service: ExampleService) {}
347
-
348
- // UseUiAction functions
349
- getAdditionalParams(uiAction: UiAction): UiActionAdditionalParams {
350
- // return additional parameters if needed
351
- throw new Error('Method not implemented.');
352
- }
353
- getModel() {
354
- // return the model of the page
355
- throw new Error('Method not implemented.');
356
- }
357
- async performUiActionRequest(uiActionRequest: UiActionRequest): Promise<any> {
358
- // perform the uiActionRequest on the proper service
359
- await this.service.performAction(uiActionRequest)
360
- }
361
- handleSpecificDemandsAsynchronously(uiAction: UiAction): Promise<UiActionSpecificDemandResponse> {
362
- // handle specific demands if needed
363
- throw new Error('Method not implemented.');
364
- }
365
-
366
- // Construct
367
- constructActions(): void {
368
- this.actions = [];
369
- let exceptions = ['EXCEPTION'];
370
- this.possibleActions.map((uiAction: UiAction) => {
371
- this.actions?.push({
372
- uiAction,
373
- serviceToUse: this, // bind a class which implements the UseUiAction
374
- exception: exceptions.includes(uiAction.code!)
375
- });
376
- });
377
- }
378
- }
379
-
380
- `example.component.html:`
381
-
382
- <smart-ui-action-toolbar [uiActionModels]="actions"></smart-ui-action-toolbar>
383
-
384
- ---
385
-
386
- ## Version logs
1
+ # Smart Ng Client
2
+
3
+ ---
4
+
5
+ ## How to use
6
+
7
+ ### Installation
8
+
9
+ Go to your project, open the terminal and use the following command:
10
+
11
+ npm i @smartbit4all/ng-client
12
+
13
+ Provide the `SmartNgClientModule` in the app.module:
14
+
15
+ `app.module.ts:`
16
+
17
+ @NgModule({
18
+ declarations: [...],
19
+ imports: [
20
+ SmartNgClientModule,
21
+ ...
22
+ ],
23
+ providers: [
24
+ SmartSessionService,
25
+ SmartViewContextService,
26
+ ...
27
+ ],
28
+ ...
29
+ })
30
+
31
+ ### Usage
32
+
33
+ In order to use the SmartSessionService I recommend to follow the guideline belove.
34
+
35
+ **Generate a service** which will **handle the session and the authentication**.
36
+
37
+ `Terminal:`
38
+
39
+ >>> cd src/app
40
+
41
+ >>> mkdir services
42
+
43
+ >>> cd ./services
44
+
45
+ >>> ng g s authentication
46
+
47
+ Provide this new service as a **global service**:
48
+
49
+ `app.module.ts:`
50
+
51
+ @NgModule({
52
+ declarations: [...],
53
+ imports: [...],
54
+ providers: [
55
+ SmartSessionService,
56
+ AuthenticationService,
57
+ ...
58
+ ],
59
+ ...
60
+ })
61
+
62
+ ### Authentication state changed
63
+
64
+ The change of authentication state can be detected in any components. To handle it you must subscribe to the change itself.
65
+
66
+ **Note that in this version a user is authenticated when the response of the GET session contains a list of authentications.**
67
+
68
+ this.isAuthenticated = response.authentications.length > 0
69
+
70
+ `any.component.ts:`
71
+
72
+ constructor(
73
+ private auth: AuthenticationService,
74
+ private session: SmartSessionService
75
+ ) {
76
+ this.session.authenticationStateChanged.subscribe((isAuth: boolean) => {
77
+ if (!isAuth) {
78
+ this.router.navigate(['/login']);
79
+ }
80
+ });
81
+ }
82
+
83
+ ### Using locales
84
+
85
+ The `SmartSessionService` supports the usage of locales in you application. It is important to note that the language is related to the session!
86
+
87
+ This example uses the [NgxTranslate/core](https://www.npmjs.com/package/@ngx-translate/core) package.
88
+
89
+ `authentication.service.ts:`
90
+
91
+ import { TranslateService } from '@ngx-translate/core';
92
+ ...
93
+
94
+ export class AuthenticationService {
95
+ ...
96
+
97
+ constructor(
98
+ ...
99
+ private translate: TranslateService
100
+ ) {
101
+ this.session.localeChanged.subscribe(() => {
102
+ this.translate.use(this.session.getLocale());
103
+ });
104
+ }
105
+
106
+ async changeLocale(locale: string): Promise<void> {
107
+ await this.session.changeLocale(locale);
108
+ }
109
+
110
+ getLocale(): string {
111
+ return this.session.getLocale();
112
+ }
113
+ }
114
+
115
+ ### SmartDevTool usage
116
+
117
+ Turn on and off the devTool:
118
+
119
+ // active
120
+ localStorage.setItem('smartDevToolActive', 'true');
121
+ // inactive
122
+ localStorage.setItem('smartDevToolActive', 'false');
123
+
124
+ Set the devTool's button visibility
125
+
126
+ // visible
127
+ localStorage.setItem('useDevTool', 'true');
128
+ // invisible
129
+ localStorage.setItem('useDevTool', 'false');
130
+
131
+ In order to use this package properly, please create a folder called `viewcontext` in which a `view-context.pages.model.ts` shall be created:
132
+
133
+ - src/app/viewcontext/
134
+ - view-context.pages.ts
135
+ - view-context.handlers.ts
136
+
137
+ `view-context.pages.ts:`
138
+
139
+ export enum Pages {
140
+ // mandatory
141
+ VIEW_CONTEXT = 'viewContextUuid',
142
+
143
+ // optionals
144
+ ANY_PAGE = 'anyPage',
145
+ ANY_DIALOG = 'anyDialog,
146
+ ANY_COMPONENT = 'anyComponent,
147
+ ...
148
+ }
149
+
150
+ `view-context.handlers.ts:`
151
+
152
+ import { SmartViewHandlerModel, ViewType } from '@smartbit4all/view-context';
153
+ import { Pages } from './view-context.pages';
154
+ import { AnyDialogService } from '../any-dialog/any-dialog.service';
155
+
156
+ export const viewContextHandlers: SmartViewHandlerModel[] = [
157
+ // ViewType.Normal
158
+ {
159
+ name: Pages.ANY_PAGE,
160
+ route: 'any'
161
+ },
162
+ // ViewType.Dialog
163
+ {
164
+ name: Pages.ANY_DIALOG,
165
+ component: AnyDialogComponent
166
+ },
167
+ // ViewType.Normal or ViewType.Dialog
168
+ {
169
+ name: Pages.ANY_COMPONENT,
170
+ route: 'any',
171
+ component: AnyComponent
172
+ }
173
+ ];
174
+
175
+ Don't forget to define some ApiErrors and inject it into the **AuthenticationService**:
176
+
177
+ `view-context.api-errors.ts:`
178
+
179
+ const viewContextApiErrors: SmartViewContextApiErrors = {
180
+ viewContextApiErrors:  [
181
+ {
182
+ code: "001",
183
+ dialogTitle?: "Error"
184
+ message: "An error message"
185
+ buttonLabel?: "Ok"
186
+ }
187
+ ]
188
+ }
189
+
190
+ ### SmartLink
191
+
192
+ In order to use SmartLinks in your application, follow the instruction:
193
+
194
+ Firstly, set up the routing:
195
+
196
+ `app-routing.module.ts:`
197
+
198
+ const routes: Routes = [
199
+ // Out of the box solution
200
+ {
201
+ path: `redirect/:${SmartLinkChannelVariableInPath}/:${SmartLinkUuidVariableInPath}`,
202
+ component: SmartViewRedirect,
203
+ },
204
+ // Custom solution
205
+ {
206
+ path: `customRedirect/:${SmartLinkChannelVariableInPath}/:${SmartLinkUuidVariableInPath}`,
207
+ component: RedirectComponent,
208
+ },
209
+ ...
210
+ ]
211
+
212
+ Then you can set up your custom redirect component as you wish:
213
+
214
+ `redirect.component.ts:`
215
+
216
+ @Component({
217
+ selector: "app-redirect",
218
+ templateUrl: "./redirect.component.html",
219
+ styleUrls: ["./redirect.component.css"],
220
+ })
221
+ export class RedirectComponent extends SmartViewRedirect {
222
+ constructor(
223
+ service: SmartViewContextService,
224
+ navigation: SmartNavigationService,
225
+ route: ActivatedRoute
226
+ ) {
227
+ super(
228
+ service,
229
+ navigation,
230
+ route
231
+ );
232
+ }
233
+ }
234
+
235
+ Then subscribe for the _openSmartLink_ event and handle it in your AuthenticationService:
236
+
237
+ `authentication.service.ts:`
238
+
239
+ constructor(...) {
240
+ ...
241
+ this.viewContext.openSmartLink.subscribe(() => {
242
+ this.handleOpenSmartLinkEvent();
243
+ })
244
+ }
245
+
246
+ private async handleOpenSmartLinkEvent(): Promise<void> {
247
+ // Do your business logic here
248
+
249
+ // If authentication is needed to open the link:
250
+ let isAuthenticated = await this.isAuthenticated();
251
+ if (isAuthenticated) {
252
+ this.viewContext.openSmartLink.complete();
253
+ } else {
254
+ // Navigate to login screen without reloading the site!
255
+ }
256
+ }
257
+
258
+ // Modify this if authentication is needed to open links
259
+ async login(request: LocalAuthenticationLoginRequest): Promise<boolean> {
260
+ await this.auth.login(request);
261
+ let isAuth = await this.session.getIsAuthenticated();
262
+ if (isAuth) {
263
+ await this.viewContext.initialize();
264
+
265
+ await this.anyBffApi.startAnyPage().toPromise();
266
+
267
+ // If there is a smart link waiting for opening...
268
+ if (this.viewContext.isOpeningSmartLink) {
269
+ this.viewContext.openSmartLink.complete();
270
+ return isAuth;
271
+ }
272
+
273
+ let uuid = this.viewContext.getUuidOfPage(Pages.VIEW_CONTEXT);
274
+ await this.viewContext.getAndSyncViewContext(uuid);
275
+ }
276
+ return isAuth;
277
+ }
278
+
279
+ ### UiActions
280
+
281
+ The ViewContext package contains a common manager for the UiActions. To use this tool, please follow the instructions.
282
+
283
+ `action.descriptors.ts:`
284
+
285
+ import {
286
+ UiActionButtonIconPos,
287
+ UiActionButtonType,
288
+ UiActionDescriptor
289
+ } from '@smartbit4all/view-context';
290
+
291
+ // Build your own action descriptors
292
+ export const ActionDescriptors: Map<string, UiActionDescriptor> = new Map([
293
+ [
294
+ 'EXAMPLE',
295
+ {
296
+ title: 'Example action',
297
+ type: UiActionButtonType.Raised,
298
+ color: 'primary',
299
+ dialog: {
300
+ title: 'Example dialog title',
301
+ text: 'Example dialog text',
302
+ actionButton: {
303
+ caption: 'Example action',
304
+ color: 'primary'
305
+ },
306
+ cancelButton: {
307
+ caption: 'Cancel',
308
+ color: ''
309
+ }
310
+ },
311
+ inputDialog: { ... },
312
+ confirmDialog: { ... },
313
+ feedbackType: UiActionFeedbackType.SNACKBAR;
314
+ feedbackText: "Example feedback";
315
+ }
316
+ ]
317
+ ])
318
+
319
+ `authentication.service.ts:`
320
+
321
+ constructor(...) {
322
+ ...
323
+ // Set your descriptors
324
+ this.viewContext.setActionDescriptors(ActionDescriptors);
325
+
326
+ // Set basic feedback
327
+ this.viewContext.commonFeedbackText = "Basic feedback."
328
+ ...
329
+ }
330
+
331
+ `example.component.ts:`
332
+
333
+ @Component({
334
+ selector: 'app-example',
335
+ templateUrl: './example.component.html',
336
+ styleUrls: ['./example.component.css']
337
+ })
338
+ export class ExampleComponent implements UseUiAction {
339
+ possibleActions: UiAction[]; // Comes from the backend
340
+ actions: UiActionModel[] = [];
341
+
342
+ // UseUiAction properties
343
+ submit: Subject<void> = new Subject();
344
+ reSubscribeToChange: Subject<void> = new Subject();
345
+
346
+ constructor(private service: ExampleService) {}
347
+
348
+ // UseUiAction functions
349
+ getAdditionalParams(uiAction: UiAction): UiActionAdditionalParams {
350
+ // return additional parameters if needed
351
+ throw new Error('Method not implemented.');
352
+ }
353
+ getModel() {
354
+ // return the model of the page
355
+ throw new Error('Method not implemented.');
356
+ }
357
+ async performUiActionRequest(uiActionRequest: UiActionRequest): Promise<any> {
358
+ // perform the uiActionRequest on the proper service
359
+ await this.service.performAction(uiActionRequest)
360
+ }
361
+ handleSpecificDemandsAsynchronously(uiAction: UiAction): Promise<UiActionSpecificDemandResponse> {
362
+ // handle specific demands if needed
363
+ throw new Error('Method not implemented.');
364
+ }
365
+
366
+ // Construct
367
+ constructActions(): void {
368
+ this.actions = [];
369
+ let exceptions = ['EXCEPTION'];
370
+ this.possibleActions.map((uiAction: UiAction) => {
371
+ this.actions?.push({
372
+ uiAction,
373
+ serviceToUse: this, // bind a class which implements the UseUiAction
374
+ exception: exceptions.includes(uiAction.code!)
375
+ });
376
+ });
377
+ }
378
+ }
379
+
380
+ `example.component.html:`
381
+
382
+ <smart-ui-action-toolbar [uiActionModels]="actions"></smart-ui-action-toolbar>
383
+
384
+ ---
385
+
386
+ ## Version logs