@smartbit4all/ng-client 1.0.0 → 1.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 (51) hide show
  1. package/esm2020/lib/smart-client/projects.mjs +6 -0
  2. package/esm2020/lib/smart-client/smart-authentication.service.mjs +15 -0
  3. package/esm2020/lib/smart-client/smart-component-api-client.mjs +87 -0
  4. package/esm2020/lib/smart-client/smart.component.mjs +31 -0
  5. package/esm2020/lib/smart-client/smart.service.mjs +31 -0
  6. package/esm2020/lib/smart-client/smart.subject.mjs +13 -0
  7. package/esm2020/lib/smart-ng-client.module.mjs +2 -2
  8. package/esm2020/lib/view-context/api/api/view.service.mjs +130 -1
  9. package/esm2020/lib/view-context/api/api.module.mjs +15 -15
  10. package/esm2020/lib/view-context/api/configuration.mjs +2 -2
  11. package/esm2020/lib/view-context/api/model/componentModel.mjs +13 -0
  12. package/esm2020/lib/view-context/api/model/componentModelChange.mjs +13 -0
  13. package/esm2020/lib/view-context/api/model/messageData.mjs +1 -1
  14. package/esm2020/lib/view-context/api/model/messageOption.mjs +1 -1
  15. package/esm2020/lib/view-context/api/model/models.mjs +4 -1
  16. package/esm2020/lib/view-context/api/model/uiAction.mjs +1 -1
  17. package/esm2020/lib/view-context/api/model/uiActionDescriptor.mjs +1 -1
  18. package/esm2020/lib/view-context/api/model/view.mjs +1 -1
  19. package/esm2020/lib/view-context/api/model/viewContextChange.mjs +2 -0
  20. package/esm2020/lib/view-context/api/model/viewData.mjs +1 -1
  21. package/esm2020/lib/view-context/api/model/viewStateUpdate.mjs +1 -1
  22. package/esm2020/lib/view-context/smart-view-context.service.mjs +26 -1
  23. package/esm2020/projects.mjs +2 -1
  24. package/fesm2015/smartbit4all-ng-client.mjs +339 -15
  25. package/fesm2015/smartbit4all-ng-client.mjs.map +1 -1
  26. package/fesm2020/smartbit4all-ng-client.mjs +351 -14
  27. package/fesm2020/smartbit4all-ng-client.mjs.map +1 -1
  28. package/lib/smart-client/projects.d.ts +5 -0
  29. package/lib/smart-client/smart-authentication.service.d.ts +12 -0
  30. package/lib/smart-client/smart-component-api-client.d.ts +31 -0
  31. package/lib/smart-client/smart.component.d.ts +12 -0
  32. package/lib/smart-client/smart.service.d.ts +12 -0
  33. package/lib/smart-client/smart.subject.d.ts +6 -0
  34. package/lib/view-context/api/api/view.service.d.ts +58 -0
  35. package/lib/view-context/api/api.module.d.ts +9 -9
  36. package/lib/view-context/api/model/componentModel.d.ts +33 -0
  37. package/lib/view-context/api/model/componentModelChange.d.ts +19 -0
  38. package/lib/view-context/api/model/messageData.d.ts +2 -0
  39. package/lib/view-context/api/model/messageOption.d.ts +2 -0
  40. package/lib/view-context/api/model/models.d.ts +3 -0
  41. package/lib/view-context/api/model/uiAction.d.ts +3 -0
  42. package/lib/view-context/api/model/uiActionDescriptor.d.ts +2 -0
  43. package/lib/view-context/api/model/view.d.ts +7 -0
  44. package/lib/view-context/api/model/viewContextChange.d.ts +20 -0
  45. package/lib/view-context/api/model/viewData.d.ts +2 -0
  46. package/lib/view-context/api/model/viewStateUpdate.d.ts +2 -0
  47. package/lib/view-context/smart-view-context.service.d.ts +8 -1
  48. package/package.json +1 -1
  49. package/projects.d.ts +1 -0
  50. package/smartbit4all-ng-client-1.0.1.tgz +0 -0
  51. package/smartbit4all-ng-client-1.0.0.tgz +0 -0
@@ -0,0 +1,5 @@
1
+ export * from "./smart-authentication.service";
2
+ export * from "./smart.component";
3
+ export * from "./smart-component-api-client";
4
+ export * from "./smart.service";
5
+ export * from "./smart.subject";
@@ -0,0 +1,12 @@
1
+ import { Subject } from "rxjs";
2
+ import * as i0 from "@angular/core";
3
+ export interface SmartAuthenticationServiceInterface {
4
+ bffApisHaveBeenSetUp: boolean;
5
+ headersUpdated: Subject<void>;
6
+ }
7
+ export declare class SmartAuthenticationService implements SmartAuthenticationServiceInterface {
8
+ bffApisHaveBeenSetUp: boolean;
9
+ headersUpdated: Subject<void>;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<SmartAuthenticationService, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<SmartAuthenticationService>;
12
+ }
@@ -0,0 +1,31 @@
1
+ import { Subject } from "rxjs";
2
+ import { ComponentModel, SmartViewContextService, UiAction, UiActionAdditionalParams, UiActionRequest, UiActionSpecificDemandResponse, UseUiAction } from "../view-context/projects";
3
+ import { SmartAuthenticationServiceInterface } from "./smart-authentication.service";
4
+ export declare abstract class SmartComponentApiClient<T> implements UseUiAction {
5
+ protected auth: SmartAuthenticationServiceInterface;
6
+ protected viewContext: SmartViewContextService;
7
+ protected pageName: string;
8
+ protected _destroy$: Subject<void>;
9
+ private detectChange;
10
+ private _uuid?;
11
+ get uuid(): string | undefined;
12
+ set uuid(uuid: string | undefined);
13
+ private _model;
14
+ get model(): ComponentModel | undefined;
15
+ set model(model: ComponentModel | undefined);
16
+ private _data?;
17
+ get data(): T | undefined;
18
+ set data(model: T | undefined);
19
+ modelChanged: Subject<void>;
20
+ submit: Subject<void>;
21
+ reSubscribeToChange: Subject<void>;
22
+ constructor(auth: SmartAuthenticationServiceInterface, viewContext: SmartViewContextService, pageName: string);
23
+ _ngOnInit(): void;
24
+ _ngOnDestroy(): void;
25
+ run(): void;
26
+ getAdditionalParams(uiAction: UiAction): UiActionAdditionalParams;
27
+ getModel(): T | undefined;
28
+ performUiActionRequest(uiActionRequest: UiActionRequest): Promise<any>;
29
+ handleSpecificDemandsAsynchronously(uiAction: UiAction, uiActionRequest: UiActionRequest): Promise<UiActionSpecificDemandResponse>;
30
+ load(): Promise<void>;
31
+ }
@@ -0,0 +1,12 @@
1
+ import { OnDestroy, OnInit } from "@angular/core";
2
+ import { SmartViewContextService } from "../view-context/smart-view-context.service";
3
+ import { SmartAuthenticationServiceInterface } from "./smart-authentication.service";
4
+ import { SmartComponentApiClient } from "./smart-component-api-client";
5
+ import * as i0 from "@angular/core";
6
+ export declare abstract class SmartComponent<T> extends SmartComponentApiClient<T> implements OnInit, OnDestroy {
7
+ constructor(auth: SmartAuthenticationServiceInterface, viewContext: SmartViewContextService, pageName: string);
8
+ ngOnInit(): void;
9
+ ngOnDestroy(): void;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<SmartComponent<any>, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<SmartComponent<any>, "ng-component", never, {}, {}, never, never>;
12
+ }
@@ -0,0 +1,12 @@
1
+ import { OnDestroy, OnInit } from "@angular/core";
2
+ import { SmartViewContextService } from "../view-context/projects";
3
+ import { SmartAuthenticationServiceInterface } from "./smart-authentication.service";
4
+ import { SmartComponentApiClient } from "./smart-component-api-client";
5
+ import * as i0 from "@angular/core";
6
+ export declare abstract class SmartService<T> extends SmartComponentApiClient<T> implements OnInit, OnDestroy {
7
+ constructor(auth: SmartAuthenticationServiceInterface, viewContext: SmartViewContextService, pageName: string);
8
+ ngOnInit(): void;
9
+ ngOnDestroy(): void;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<SmartService<any>, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<SmartService<any>>;
12
+ }
@@ -0,0 +1,6 @@
1
+ import { Subject, Subscription } from "rxjs";
2
+ export declare class SmartSubject<T> extends Subject<T> {
3
+ private unsubscribe$;
4
+ constructor(unsubscribe$: Subject<void>);
5
+ subscribe(next?: (value: T) => void, error?: (error: any) => void, complete?: () => void): Subscription;
6
+ }
@@ -1,7 +1,10 @@
1
1
  import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http';
2
2
  import { Observable } from 'rxjs';
3
+ import { ComponentModel } from '../model/componentModel';
3
4
  import { MessageResult } from '../model/messageResult';
5
+ import { UiActionRequest } from '../model/uiActionRequest';
4
6
  import { ViewConstraint } from '../model/viewConstraint';
7
+ import { ViewContextChange } from '../model/viewContextChange';
5
8
  import { ViewContextData } from '../model/viewContextData';
6
9
  import { ViewContextUpdate } from '../model/viewContextUpdate';
7
10
  import { Configuration } from '../configuration';
@@ -50,6 +53,42 @@ export declare class ViewService {
50
53
  httpHeaderAccept?: 'application/octet-stream';
51
54
  context?: HttpContext;
52
55
  }): Observable<HttpEvent<Blob>>;
56
+ /**
57
+ * @param uuid
58
+ * @param item
59
+ * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
60
+ * @param reportProgress flag to report request and response progress.
61
+ */
62
+ downloadItemDeprecated(uuid: string, item: string, observe?: 'body', reportProgress?: boolean, options?: {
63
+ httpHeaderAccept?: 'application/octet-stream';
64
+ context?: HttpContext;
65
+ }): Observable<Blob>;
66
+ downloadItemDeprecated(uuid: string, item: string, observe?: 'response', reportProgress?: boolean, options?: {
67
+ httpHeaderAccept?: 'application/octet-stream';
68
+ context?: HttpContext;
69
+ }): Observable<HttpResponse<Blob>>;
70
+ downloadItemDeprecated(uuid: string, item: string, observe?: 'events', reportProgress?: boolean, options?: {
71
+ httpHeaderAccept?: 'application/octet-stream';
72
+ context?: HttpContext;
73
+ }): Observable<HttpEvent<Blob>>;
74
+ /**
75
+ * Returns component\&#39;s model.
76
+ * @param uuid Component\&#39;s unique identifier.
77
+ * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
78
+ * @param reportProgress flag to report request and response progress.
79
+ */
80
+ getComponentModel(uuid: string, observe?: 'body', reportProgress?: boolean, options?: {
81
+ httpHeaderAccept?: 'application/json';
82
+ context?: HttpContext;
83
+ }): Observable<ComponentModel>;
84
+ getComponentModel(uuid: string, observe?: 'response', reportProgress?: boolean, options?: {
85
+ httpHeaderAccept?: 'application/json';
86
+ context?: HttpContext;
87
+ }): Observable<HttpResponse<ComponentModel>>;
88
+ getComponentModel(uuid: string, observe?: 'events', reportProgress?: boolean, options?: {
89
+ httpHeaderAccept?: 'application/json';
90
+ context?: HttpContext;
91
+ }): Observable<HttpEvent<ComponentModel>>;
53
92
  /**
54
93
  * Returns the view constraint object belongs to the given view
55
94
  * @param uuid View\&#39;s unique identifier.
@@ -106,6 +145,25 @@ export declare class ViewService {
106
145
  httpHeaderAccept?: undefined;
107
146
  context?: HttpContext;
108
147
  }): Observable<HttpEvent<any>>;
148
+ /**
149
+ * Performs a generic UI action.
150
+ * @param uuid
151
+ * @param body
152
+ * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
153
+ * @param reportProgress flag to report request and response progress.
154
+ */
155
+ performAction(uuid: string, body: UiActionRequest, observe?: 'body', reportProgress?: boolean, options?: {
156
+ httpHeaderAccept?: 'application/json';
157
+ context?: HttpContext;
158
+ }): Observable<ViewContextChange>;
159
+ performAction(uuid: string, body: UiActionRequest, observe?: 'response', reportProgress?: boolean, options?: {
160
+ httpHeaderAccept?: 'application/json';
161
+ context?: HttpContext;
162
+ }): Observable<HttpResponse<ViewContextChange>>;
163
+ performAction(uuid: string, body: UiActionRequest, observe?: 'events', reportProgress?: boolean, options?: {
164
+ httpHeaderAccept?: 'application/json';
165
+ context?: HttpContext;
166
+ }): Observable<HttpEvent<ViewContextChange>>;
109
167
  /**
110
168
  * @param channel Smartlink\&#39;s channel.
111
169
  * @param uuid Smartlink\&#39;s unique identifier
@@ -1,11 +1,11 @@
1
- import { ModuleWithProviders } from "@angular/core";
2
- import { Configuration } from "./configuration";
3
- import { HttpClient } from "@angular/common/http";
1
+ import { ModuleWithProviders } from '@angular/core';
2
+ import { Configuration } from './configuration';
3
+ import { HttpClient } from '@angular/common/http';
4
4
  import * as i0 from "@angular/core";
5
- export declare class ViewContextApiModule {
6
- static forRoot(configurationFactory: () => Configuration): ModuleWithProviders<ViewContextApiModule>;
7
- constructor(parentModule: ViewContextApiModule, http: HttpClient);
8
- static ɵfac: i0.ɵɵFactoryDeclaration<ViewContextApiModule, [{ optional: true; skipSelf: true; }, { optional: true; }]>;
9
- static ɵmod: i0.ɵɵNgModuleDeclaration<ViewContextApiModule, never, never, never>;
10
- static ɵinj: i0.ɵɵInjectorDeclaration<ViewContextApiModule>;
5
+ export declare class ApiModule {
6
+ static forRoot(configurationFactory: () => Configuration): ModuleWithProviders<ApiModule>;
7
+ constructor(parentModule: ApiModule, http: HttpClient);
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<ApiModule, [{ optional: true; skipSelf: true; }, { optional: true; }]>;
9
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ApiModule, never, never, never>;
10
+ static ɵinj: i0.ɵɵInjectorDeclaration<ApiModule>;
11
11
  }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * View API
3
+ * View API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: info@it4all.hu
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import { SmartLayoutDefinition } from "@smartbit4all/form";
13
+ import { ComponentConstraint } from "./componentConstraint";
14
+ import { UiAction } from "./uiAction";
15
+ /**
16
+ * Model of a UI component. Contains all information in one object, which are needed to render a fully functionin component.
17
+ */
18
+ export interface ComponentModel {
19
+ uuid: string;
20
+ name: string;
21
+ data?: object;
22
+ constraints: Array<ComponentConstraint>;
23
+ layouts: {
24
+ [key: string]: SmartLayoutDefinition;
25
+ };
26
+ actions: Array<UiAction>;
27
+ /**
28
+ * Complex widgets with corresponding initial model.
29
+ */
30
+ widgetModels: {
31
+ [key: string]: object;
32
+ };
33
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * View API
3
+ * View API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: info@it4all.hu
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Change of a ComponentModel.
14
+ */
15
+ export interface ComponentModelChange {
16
+ uuid: string;
17
+ path: string;
18
+ value?: object;
19
+ }
@@ -25,3 +25,5 @@ export interface MessageData {
25
25
  text?: string;
26
26
  options?: Array<MessageOption>;
27
27
  }
28
+ export declare namespace MessageData {
29
+ }
@@ -16,3 +16,5 @@ export interface MessageOption {
16
16
  icon?: string;
17
17
  type?: MessageOptionType;
18
18
  }
19
+ export declare namespace MessageOption {
20
+ }
@@ -1,5 +1,7 @@
1
1
  export * from './closeResult';
2
2
  export * from './componentConstraint';
3
+ export * from './componentModel';
4
+ export * from './componentModelChange';
3
5
  export * from './messageData';
4
6
  export * from './messageOption';
5
7
  export * from './messageOptionType';
@@ -20,6 +22,7 @@ export * from './view';
20
22
  export * from './viewApiError';
21
23
  export * from './viewConstraint';
22
24
  export * from './viewContext';
25
+ export * from './viewContextChange';
23
26
  export * from './viewContextData';
24
27
  export * from './viewContextUpdate';
25
28
  export * from './viewData';
@@ -12,6 +12,7 @@
12
12
  import { UiActionInputType } from './uiActionInputType';
13
13
  export interface UiAction {
14
14
  code?: string;
15
+ path?: string;
15
16
  identifier?: string;
16
17
  inputType?: UiActionInputType;
17
18
  input2Type?: UiActionInputType;
@@ -24,3 +25,5 @@ export interface UiAction {
24
25
  [key: string]: any;
25
26
  };
26
27
  }
28
+ export declare namespace UiAction {
29
+ }
@@ -30,3 +30,5 @@ export interface UiActionDescriptor {
30
30
  feedbackType?: UiActionFeedbackType;
31
31
  feedbackText?: string;
32
32
  }
33
+ export declare namespace UiActionDescriptor {
34
+ }
@@ -10,6 +10,7 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import { ViewState } from './viewState';
13
+ import { UiAction } from './uiAction';
13
14
  import { ViewType } from './viewType';
14
15
  import { ViewConstraint } from './viewConstraint';
15
16
  export interface View {
@@ -32,5 +33,11 @@ export interface View {
32
33
  downloadableItems: {
33
34
  [key: string]: string;
34
35
  };
36
+ actions: Array<UiAction>;
37
+ widgetModels: {
38
+ [key: string]: object;
39
+ };
35
40
  keepModelOnImplicitClose?: boolean;
36
41
  }
42
+ export declare namespace View {
43
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * View API
3
+ * View API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: info@it4all.hu
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import { ComponentModelChange } from './componentModelChange';
13
+ import { ViewContextData } from './viewContextData';
14
+ /**
15
+ * The same session can be valid / used in multiple UIs, this object represents a UI.
16
+ */
17
+ export interface ViewContextChange {
18
+ viewContext: ViewContextData;
19
+ changes: Array<ComponentModelChange>;
20
+ }
@@ -23,3 +23,5 @@ export interface ViewData {
23
23
  type: ViewType;
24
24
  containerUuid?: string;
25
25
  }
26
+ export declare namespace ViewData {
27
+ }
@@ -20,3 +20,5 @@ export interface ViewStateUpdate {
20
20
  uuid?: string;
21
21
  state?: ViewState;
22
22
  }
23
+ export declare namespace ViewStateUpdate {
24
+ }
@@ -1,9 +1,10 @@
1
1
  import { SmartdialogService } from "@smartbit4all/dialog";
2
2
  import { SmartNavigationService } from "@smartbit4all/navigation";
3
3
  import { Subject } from "rxjs";
4
- import { MessageData, MessageResult, UiActionDescriptor, ViewConstraint, ViewContextData, ViewContextUpdate, ViewData, ViewService } from "./api";
4
+ import { ComponentModel, MessageData, MessageResult, UiActionDescriptor, UiActionRequest, ViewConstraint, ViewContextData, ViewContextUpdate, ViewData, ViewService } from "./api";
5
5
  import { SmartTranslateService, SmartViewContextApiError, SmartViewContextApiErrors, SmartViewHandlerModel } from "./smart-view-context.model";
6
6
  import { SmartSessionService } from "../session/smart-session.service";
7
+ import { SmartSubject } from "../smart-client/smart.subject";
7
8
  import * as i0 from "@angular/core";
8
9
  export declare class SmartViewContextService {
9
10
  private view;
@@ -25,11 +26,14 @@ export declare class SmartViewContextService {
25
26
  private dialogRefs;
26
27
  private actionDescriptors?;
27
28
  commonFeedbackText?: string;
29
+ smartApiClients: Map<string, SmartSubject<any>>;
28
30
  set translateService(translateService: SmartTranslateService | undefined);
29
31
  get translateService(): SmartTranslateService | undefined;
30
32
  private _translateService?;
31
33
  translateServiceChanged: Subject<void>;
32
34
  constructor(view: ViewService, session: SmartSessionService, navigation: SmartNavigationService, dialog: SmartdialogService);
35
+ follow(uuid: string, detectChange: SmartSubject<any>): void;
36
+ unfollow(uuid: string): void;
33
37
  setActionDescriptors(actionDescriptors: Map<string, UiActionDescriptor>): void;
34
38
  getActionDescriptors(): Map<string, UiActionDescriptor> | undefined;
35
39
  setViewHandlers(viewHandlers: Array<SmartViewHandlerModel>): void;
@@ -55,6 +59,9 @@ export declare class SmartViewContextService {
55
59
  getViewConstraint(uuid: string): Promise<ViewConstraint>;
56
60
  showPublishedView(channel: string, uuid: string): Promise<void>;
57
61
  downloadResource(uuid: string, item: string): Promise<any>;
62
+ performAction(uuid: string, uiActionRequest: UiActionRequest): Promise<void>;
63
+ private handleChanges;
64
+ load(uuid: string): Promise<ComponentModel | undefined>;
58
65
  static ɵfac: i0.ɵɵFactoryDeclaration<SmartViewContextService, never>;
59
66
  static ɵprov: i0.ɵɵInjectableDeclaration<SmartViewContextService>;
60
67
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smartbit4all/ng-client",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.2.0",
6
6
  "@angular/core": "^13.2.0",
package/projects.d.ts CHANGED
@@ -2,3 +2,4 @@ export * from "./lib/smart-ng-client.service";
2
2
  export * from "./lib/smart-ng-client.module";
3
3
  export * from "./lib/view-context/projects";
4
4
  export * from "./lib/session/projects";
5
+ export * from "./lib/smart-client/projects";
Binary file
Binary file