@smartbit4all/ng-client 4.5.10 → 4.5.12

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.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, Injectable, Optional, Inject, PLATFORM_ID, NgModule, SkipSelf, RendererStyleFlags2, Directive, Input, HostBinding, HostListener, Component, EventEmitter, Output, ViewChildren, ViewChild, ElementRef, forwardRef, Pipe, ViewContainerRef, ViewEncapsulation, ChangeDetectionStrategy, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA, input, computed, effect, signal, ChangeDetectorRef } from '@angular/core';
2
+ import { InjectionToken, Injectable, Optional, Inject, PLATFORM_ID, NgModule, SkipSelf, RendererStyleFlags2, Directive, Input, HostBinding, HostListener, Component, EventEmitter, Output, ViewChildren, ViewChild, ElementRef, forwardRef, Pipe, ViewContainerRef, ViewEncapsulation, ChangeDetectionStrategy, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA, inject, input, computed, effect, signal, ChangeDetectorRef } from '@angular/core';
3
3
  import * as i1 from '@angular/common/http';
4
4
  import { HttpHeaders, HttpContext, HttpErrorResponse, HttpParams, HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
5
5
  import { Subject, lastValueFrom, take, takeUntil, interval, startWith, map, distinctUntilChanged, catchError, throwError, from } from 'rxjs';
@@ -33,7 +33,7 @@ import { ENTER, COMMA } from '@angular/cdk/keycodes';
33
33
  import { deepEqual } from 'fast-equals';
34
34
  import moment from 'moment';
35
35
  import * as i1$4 from '@angular/material/snack-bar';
36
- import { MAT_SNACK_BAR_DATA, MatSnackBarModule } from '@angular/material/snack-bar';
36
+ import { MAT_SNACK_BAR_DATA, MatSnackBarModule, MatSnackBar } from '@angular/material/snack-bar';
37
37
  import { TemplatePortal } from '@angular/cdk/portal';
38
38
  import * as i2$2 from '@angular/cdk/overlay';
39
39
  import * as i11 from '@angular/material/form-field';
@@ -13212,7 +13212,7 @@ class SmartBackendBootstrapService {
13212
13212
  this.session.setCookieName(config.cookieName);
13213
13213
  this.session.setSessionHandlerService(this);
13214
13214
  this.viewContext.setViewHandlers(config.viewHandlers);
13215
- this.viewContext.setMessageDialogName(config.messageDialogName);
13215
+ this.viewContext.setMessageDialogName(config.messageDialogName ?? 'message-dialog');
13216
13216
  this.viewContext.setActionDescriptors(config.actionDescriptors);
13217
13217
  this.viewContext.openSmartLink.subscribe((channel) => {
13218
13218
  this.handleSmartLink(channel);
@@ -13223,7 +13223,10 @@ class SmartBackendBootstrapService {
13223
13223
  await this.config.onSmartLink(channel);
13224
13224
  return;
13225
13225
  }
13226
- await this.viewContext.initialize();
13226
+ // Default: simply unblock showPublishedView's `await openSmartLink.toPromise()`.
13227
+ // The viewContext is already initialized by start()/bootstrapWith() — calling
13228
+ // initialize() here without a uuid would always trigger startViewContext(),
13229
+ // creating a second viewcontext and producing duplicate UI (e.g. two login pages).
13227
13230
  this.viewContext.openSmartLink.complete();
13228
13231
  }
13229
13232
  start() {
@@ -13292,6 +13295,21 @@ class SmartBackendBootstrapService {
13292
13295
  }
13293
13296
  await this.viewContext.initNewViewContext();
13294
13297
  }
13298
+ /**
13299
+ * Called by `SmartErrorCatchingInterceptor` for transport-level failures
13300
+ * (status 0, 5xx). Fire-and-forget; the request still rejects with the
13301
+ * original error so callers can do per-call handling.
13302
+ */
13303
+ async handleTransportError(err) {
13304
+ if (!this.config) {
13305
+ return Promise.reject(new Error('SmartBackendBootstrapService.configure() must be called before handleTransportError().'));
13306
+ }
13307
+ if (this.config.onTransportError) {
13308
+ await this.config.onTransportError(err);
13309
+ return;
13310
+ }
13311
+ console.warn('Transport error — server unreachable or 5xx', err);
13312
+ }
13295
13313
  async runInit() {
13296
13314
  try {
13297
13315
  await this.session.initialize();
@@ -13340,6 +13358,136 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
13340
13358
  args: [{ providedIn: 'root' }]
13341
13359
  }], ctorParameters: () => [{ type: SmartSessionService }, { type: SmartViewContextService }] });
13342
13360
 
13361
+ const STRINGS_HU = {
13362
+ startErrorMessage: 'A szerver nem elérhető.',
13363
+ startErrorRetry: 'Újrapróbálás',
13364
+ transportErrorMessage: 'A szerver nem elérhető.',
13365
+ transportErrorReload: 'Újratöltés',
13366
+ sessionErrorMessage: 'A munkamenet lejárt, kérjük jelentkezzen be újra.',
13367
+ sessionErrorAction: 'Bejelentkezés',
13368
+ };
13369
+ const STRINGS_EN = {
13370
+ startErrorMessage: 'The server is unavailable.',
13371
+ startErrorRetry: 'Retry',
13372
+ transportErrorMessage: 'The server is unavailable.',
13373
+ transportErrorReload: 'Reload',
13374
+ sessionErrorMessage: 'Your session has expired. Please log in again.',
13375
+ sessionErrorAction: 'Log in',
13376
+ };
13377
+ /**
13378
+ * Opt-in default UX for `SmartBackendBootstrapService` error hooks.
13379
+ *
13380
+ * Spread the result of `hooks(options)` into `bootstrap.configure()` to get a
13381
+ * MatSnackBar-based "error + retry" UI without writing the host glue:
13382
+ *
13383
+ * ```ts
13384
+ * bootstrap.configure({
13385
+ * ...minimalConfig,
13386
+ * ...defaultErrorUi.hooks({ language: 'hu' }),
13387
+ * });
13388
+ * ```
13389
+ *
13390
+ * Hosts that want custom logic can omit this service and write their own
13391
+ * `onStartError` / `onTransportError` callbacks directly.
13392
+ */
13393
+ class SmartDefaultErrorUiService {
13394
+ constructor() {
13395
+ this.snackBar = inject(MatSnackBar);
13396
+ this.session = inject(SmartSessionService);
13397
+ }
13398
+ /** Returns a hooks bundle ready to spread into `bootstrap.configure()`. */
13399
+ hooks(options = {}) {
13400
+ return {
13401
+ onStartError: (err) => this.showStartError(err, options),
13402
+ onTransportError: (err) => this.showTransportError(err, options),
13403
+ onSessionError: (err) => this.showSessionError(err, options),
13404
+ };
13405
+ }
13406
+ showStartError(_err, options = {}) {
13407
+ const s = this.resolveStrings(options);
13408
+ const ref = this.snackBar.open(s.startErrorMessage, s.startErrorRetry, {
13409
+ duration: 0, // sticky — app is not usable until retry succeeds
13410
+ });
13411
+ // Full reload, not bootstrap.start(). A bootstrap.start() retry only re-runs
13412
+ // the init sequence; any components that already mounted during the failed
13413
+ // attempt have rejected `whenReady()` Promises and won't re-trigger their
13414
+ // run() when bootstrap eventually succeeds. Reload guarantees a clean mount.
13415
+ ref.onAction().subscribe(() => this.verifyServerAndReload());
13416
+ }
13417
+ showTransportError(_err, options = {}) {
13418
+ const s = this.resolveStrings(options);
13419
+ const ref = this.snackBar.open(s.transportErrorMessage, s.transportErrorReload, {
13420
+ duration: options.transportErrorDuration ?? 0,
13421
+ });
13422
+ ref.onAction().subscribe(() => this.verifyServerAndReload());
13423
+ }
13424
+ showSessionError(_err, options = {}) {
13425
+ const s = this.resolveStrings(options);
13426
+ const ref = this.snackBar.open(s.sessionErrorMessage, s.sessionErrorAction, {
13427
+ duration: 0, // sticky — session is invalid until the user takes action
13428
+ });
13429
+ ref.onAction().subscribe(() => this.recoverSession());
13430
+ }
13431
+ /**
13432
+ * Clears the dead session and reloads. Unlike `verifyServerAndReload`, this
13433
+ * does NOT pre-check via `getSession()` — the SID is known to be invalid,
13434
+ * so the check would fail. We best-effort `clearAndStartNewSession()`
13435
+ * (creates a fresh anonymous session); reload happens regardless so the
13436
+ * user is not stuck if the clear fails (e.g., server flapping).
13437
+ *
13438
+ * Overridable in tests.
13439
+ */
13440
+ async recoverSession() {
13441
+ try {
13442
+ await this.session.clearAndStartNewSession();
13443
+ }
13444
+ catch {
13445
+ // Server may also be down; reload anyway and let bootstrap.start() retry.
13446
+ }
13447
+ this.reloadPage();
13448
+ }
13449
+ /**
13450
+ * Pings `getSession()` before reloading: if the server is still down, the
13451
+ * reload would just re-trigger the broken-screen state. The failed check
13452
+ * goes through `SmartErrorCatchingInterceptor` and re-fires `onTransportError`,
13453
+ * so the user sees a fresh snackbar — they get visible feedback that the
13454
+ * server is still unreachable, without paying the cost of a full bundle
13455
+ * reload that lands on the same broken state.
13456
+ *
13457
+ * Overridable in tests.
13458
+ */
13459
+ async verifyServerAndReload() {
13460
+ try {
13461
+ await this.session.getSession();
13462
+ }
13463
+ catch {
13464
+ return; // server still unreachable — interceptor re-opens the snackbar
13465
+ }
13466
+ this.reloadPage();
13467
+ }
13468
+ /** Overridable in tests. */
13469
+ reloadPage() {
13470
+ window.location.reload();
13471
+ }
13472
+ resolveStrings(options) {
13473
+ const lang = this.resolveLanguage(options.language);
13474
+ const base = lang === 'hu' ? STRINGS_HU : STRINGS_EN;
13475
+ return { ...base, ...(options.strings ?? {}) };
13476
+ }
13477
+ resolveLanguage(lang) {
13478
+ if (lang === 'hu' || lang === 'en') {
13479
+ return lang;
13480
+ }
13481
+ return navigator.language?.toLowerCase().startsWith('hu') ? 'hu' : 'en';
13482
+ }
13483
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartDefaultErrorUiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
13484
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartDefaultErrorUiService, providedIn: 'root' }); }
13485
+ }
13486
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: SmartDefaultErrorUiService, decorators: [{
13487
+ type: Injectable,
13488
+ args: [{ providedIn: 'root' }]
13489
+ }] });
13490
+
13343
13491
  /*
13344
13492
  * Public API Surface of smart-session
13345
13493
  */
@@ -13405,11 +13553,20 @@ class SmartErrorCatchingInterceptor {
13405
13553
  }));
13406
13554
  }
13407
13555
  }
13556
+ if (this.isTransportError(error)) {
13557
+ // Fire-and-forget; the request still rejects so callers can react per-call.
13558
+ this.bootstrap.handleTransportError(error).catch((err) => {
13559
+ console.error('handleTransportError hook threw', err);
13560
+ });
13561
+ }
13408
13562
  return throwError(() => error);
13409
13563
  }
13410
13564
  isSessionError(error) {
13411
13565
  return error.status === 400 && error.error.code != null;
13412
13566
  }
13567
+ isTransportError(error) {
13568
+ return error.status === 0 || error.status >= 500;
13569
+ }
13413
13570
  getSessionError(error) {
13414
13571
  return this.sessionErrorCodes.find((sessionError) => sessionError.code === error.error.code);
13415
13572
  }
@@ -22335,7 +22492,6 @@ class SmartComponentLayoutUtility {
22335
22492
  result.push(...this.getToolbars(expandable));
22336
22493
  }
22337
22494
  let expandeableHeaderToolbar = comp.expandableComponents?.first?.toolbar;
22338
- console.log(expandeableHeaderToolbar);
22339
22495
  if (expandeableHeaderToolbar) {
22340
22496
  result.push(expandeableHeaderToolbar);
22341
22497
  }
@@ -23859,5 +24015,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
23859
24015
  * Generated bundle index. Do not edit.
23860
24016
  */
23861
24017
 
23862
- export { APIS$5 as APIS, AbstractMap, ApiModule$5 as ApiModule, ApiQueueService, BASE_PATH$7 as BASE_PATH, COLLECTION_FORMATS$7 as COLLECTION_FORMATS, COMPONENT_LIBRARY, CUSTOM_DIAGRAM_OPTIONS, CloseResult, ComparableDropdownDirective, ComparableMultiselectDirective, ComponentFactoryService, ComponentFactoryServiceModule, ComponentLibrary, ComponentType, ComponentWidgetType, Configuration$7 as Configuration, DIALOG_DISABLE_CLOSE, DataChangeKind, DefaultChartOptionsProvider, DefaultUiActionCode_CLOSE, DrawTime, EMPTY_PARAMS, ExpandableSectionButtonIconPosition, ExpandableSectionButtonType, ExpandableSectionComponent, FilterExpressionBoolOperator$1 as FilterExpressionBoolOperator, FilterExpressionBuilderGroupBuilderGroupKindEnum, FilterExpressionDataType, FilterExpressionFieldWidgetType, FilterExpressionOperation, FilterExpressionOrderByOrderEnum, GeoMapDataLoadingMode, GeoMapDataSourceType, GeoMapItemKind, GeoMapOperationMode, GeoMapSelectionMode, GeoMapTextType, GoogleMap, GridColumnContentType, GridDataAccessConfigKindEnum, GridSelectionMode, GridSelectionType, GridUiActionType, GridViewDescriptorKindEnum, HighlightPipe, IS_ASYNC_PARAM_NAME, IconPosition, ImageResourceKindEnum, LayoutDirection, LeafletMap, LinkTargetEnum, MAP_ENGINE, MapEngine, MenuComponent, MessageOptionType, MessageTextType, MessageType, NAMED_VALIDATOR, NamedValidatorOperationEnum, NamedValidatorService, PhotoCaptureWidgetComponent, RecordingUploaderPropertiesOpenDirectionEnum, SelectionDefinitionTypeEnum, SelectionDefinitionValueSetValueTypeEnum, ServerRequestType, SessionAPIS, SessionErrorBehaviour, SessionService, SharedModule, SimplifiedTabGroupComponent, SmartActionType, SmartBackendBootstrapService, SmartComponent, SmartComponentApiClient, SmartComponentLayoutComponent, SmartComponentLayoutModule, SmartComponentLayoutUtility, SmartDatePipe, SmartDateTimePipe, SmartDiagramComponent, SmartDiagramModule, SmartDialog, SmartEmbeddedSlotDirective, SmartExpandableSectionModule, SmartExpandableSectionService, SmartFileEditorComponent, SmartFileUploaderComponent, SmartFilterComponent, SmartFilterEditorContentComponent, SmartFilterEditorModule, SmartFilterEditorService, SmartFilterExpressionItemComponent, SmartFilterExpressionItemsComponent, SmartFilterModule, SmartFilterParamComponent, SmartFilterParamsComponent, SmartFilterPosition, SmartFilterType, SmartFormInputMode, SmartFormTextFieldButtonIconPosition, SmartFormWidgetDirection, SmartFormWidgetType, SmartFormWidgetWidth, SmartGridButtonType, SmartGridComponent, SmartGridDataLayout, SmartGridModule, SmartGridService, SmartGridType, SmartIconComponent, SmartIconModule, SmartIconService, SmartLayoutDef, SmartLinkChannelVariableInPath, SmartLinkMigrationStatusStatusEnum, SmartLinkUuidVariableInPath, SmartMapComponent, SmartMapModule, SmartMultiFileEditorComponent, SmartNavbarComponent, SmartNavbarModule, SmartNavbarService, SmartNavigationModule, SmartNavigationService, SmartNgClientModule, SmartNgClientService, SmartService, SmartSessionModule, SmartSessionService, SmartSessionTimerComponent, SmartSessionTimerService, SmartSubject, SmartTabGroupModule, SmartTabGroupService, SmartTable, SmartTableButtonType, SmartTableHeaderPropertyType, SmartTableInterfaceTypeEnum, SmartTableOptionButtonDirection, SmartTableOrder, SmartTableType, SmartTimePipe, SmartTooltipDirective, SmartTreeComponent, SmartTreeNodeButtonType, SmartUserSettinsIconPosition, SmartValidationModule, SmartValidatorName, SmartViewContextErrorDialogButtonLabel, SmartViewContextErrorDialogMessage, SmartViewContextErrorDialogTitle, SmartViewContextModule, SmartViewContextService, SmartViewRedirect, SmartVoiceRecorderComponent, SmartWidgetHintPosition, SmartWidgetHintPositionEnum, SmartWidgetSettings, SmartdialogModule, SmartdialogService, SmartfileuploaderComponent, SmartformComponent, SmartformLayoutDefinitionService, SmartformwidgetComponent, SmarttableComponent, SmarttableModule, SmarttableService, SmarttreeGenericService, SmarttreeModule, SmarttreeService, TabGroupComponent, ToggleLabelPosition, ToolbarDirection, UiActionButtonComponent, UiActionButtonType, UiActionConfirmDialogComponent, UiActionConfirmDialogService, UiActionDescriptorService, UiActionDialogButtonComponent, UiActionDialogType, UiActionFeedbackType, UiActionInputDialogComponent, UiActionInputDialogService, UiActionInputType, UiActionService, UiActionToolbarComponent, UiActionTooltipTooltipPositionEnum, UiBadgeComponent, UiBadgeDirective, UploadWidgetComponent, UploadWidgetType, ValueChangeMode, ViewEventHandlerViewEventTypeEnum, ViewService, ViewState, ViewType, VoiceRecordWidgetComponent, barChart, bubbleChart, createBasicOptions, doughnutChart, horizontalBarChart, horizontalStackedBarChart, multiAxisLineChart, pieChart, polarAreaChart, radarChart, scatterChart, stackedBarChart, transformDataToBarLikeDataSet, transformDataToBasicDataSets, transformDataToBubble, transformDataToScatter };
24018
+ export { APIS$5 as APIS, AbstractMap, ApiModule$5 as ApiModule, ApiQueueService, BASE_PATH$7 as BASE_PATH, COLLECTION_FORMATS$7 as COLLECTION_FORMATS, COMPONENT_LIBRARY, CUSTOM_DIAGRAM_OPTIONS, CloseResult, ComparableDropdownDirective, ComparableMultiselectDirective, ComponentFactoryService, ComponentFactoryServiceModule, ComponentLibrary, ComponentType, ComponentWidgetType, Configuration$7 as Configuration, DIALOG_DISABLE_CLOSE, DataChangeKind, DefaultChartOptionsProvider, DefaultUiActionCode_CLOSE, DrawTime, EMPTY_PARAMS, ExpandableSectionButtonIconPosition, ExpandableSectionButtonType, ExpandableSectionComponent, FilterExpressionBoolOperator$1 as FilterExpressionBoolOperator, FilterExpressionBuilderGroupBuilderGroupKindEnum, FilterExpressionDataType, FilterExpressionFieldWidgetType, FilterExpressionOperation, FilterExpressionOrderByOrderEnum, GeoMapDataLoadingMode, GeoMapDataSourceType, GeoMapItemKind, GeoMapOperationMode, GeoMapSelectionMode, GeoMapTextType, GoogleMap, GridColumnContentType, GridDataAccessConfigKindEnum, GridSelectionMode, GridSelectionType, GridUiActionType, GridViewDescriptorKindEnum, HighlightPipe, IS_ASYNC_PARAM_NAME, IconPosition, ImageResourceKindEnum, LayoutDirection, LeafletMap, LinkTargetEnum, MAP_ENGINE, MapEngine, MenuComponent, MessageOptionType, MessageTextType, MessageType, NAMED_VALIDATOR, NamedValidatorOperationEnum, NamedValidatorService, PhotoCaptureWidgetComponent, RecordingUploaderPropertiesOpenDirectionEnum, SelectionDefinitionTypeEnum, SelectionDefinitionValueSetValueTypeEnum, ServerRequestType, SessionAPIS, SessionErrorBehaviour, SessionService, SharedModule, SimplifiedTabGroupComponent, SmartActionType, SmartBackendBootstrapService, SmartComponent, SmartComponentApiClient, SmartComponentLayoutComponent, SmartComponentLayoutModule, SmartComponentLayoutUtility, SmartDatePipe, SmartDateTimePipe, SmartDefaultErrorUiService, SmartDiagramComponent, SmartDiagramModule, SmartDialog, SmartEmbeddedSlotDirective, SmartExpandableSectionModule, SmartExpandableSectionService, SmartFileEditorComponent, SmartFileUploaderComponent, SmartFilterComponent, SmartFilterEditorContentComponent, SmartFilterEditorModule, SmartFilterEditorService, SmartFilterExpressionItemComponent, SmartFilterExpressionItemsComponent, SmartFilterModule, SmartFilterParamComponent, SmartFilterParamsComponent, SmartFilterPosition, SmartFilterType, SmartFormInputMode, SmartFormTextFieldButtonIconPosition, SmartFormWidgetDirection, SmartFormWidgetType, SmartFormWidgetWidth, SmartGridButtonType, SmartGridComponent, SmartGridDataLayout, SmartGridModule, SmartGridService, SmartGridType, SmartIconComponent, SmartIconModule, SmartIconService, SmartLayoutDef, SmartLinkChannelVariableInPath, SmartLinkMigrationStatusStatusEnum, SmartLinkUuidVariableInPath, SmartMapComponent, SmartMapModule, SmartMultiFileEditorComponent, SmartNavbarComponent, SmartNavbarModule, SmartNavbarService, SmartNavigationModule, SmartNavigationService, SmartNgClientModule, SmartNgClientService, SmartService, SmartSessionModule, SmartSessionService, SmartSessionTimerComponent, SmartSessionTimerService, SmartSubject, SmartTabGroupModule, SmartTabGroupService, SmartTable, SmartTableButtonType, SmartTableHeaderPropertyType, SmartTableInterfaceTypeEnum, SmartTableOptionButtonDirection, SmartTableOrder, SmartTableType, SmartTimePipe, SmartTooltipDirective, SmartTreeComponent, SmartTreeNodeButtonType, SmartUserSettinsIconPosition, SmartValidationModule, SmartValidatorName, SmartViewContextErrorDialogButtonLabel, SmartViewContextErrorDialogMessage, SmartViewContextErrorDialogTitle, SmartViewContextModule, SmartViewContextService, SmartViewRedirect, SmartVoiceRecorderComponent, SmartWidgetHintPosition, SmartWidgetHintPositionEnum, SmartWidgetSettings, SmartdialogModule, SmartdialogService, SmartfileuploaderComponent, SmartformComponent, SmartformLayoutDefinitionService, SmartformwidgetComponent, SmarttableComponent, SmarttableModule, SmarttableService, SmarttreeGenericService, SmarttreeModule, SmarttreeService, TabGroupComponent, ToggleLabelPosition, ToolbarDirection, UiActionButtonComponent, UiActionButtonType, UiActionConfirmDialogComponent, UiActionConfirmDialogService, UiActionDescriptorService, UiActionDialogButtonComponent, UiActionDialogType, UiActionFeedbackType, UiActionInputDialogComponent, UiActionInputDialogService, UiActionInputType, UiActionService, UiActionToolbarComponent, UiActionTooltipTooltipPositionEnum, UiBadgeComponent, UiBadgeDirective, UploadWidgetComponent, UploadWidgetType, ValueChangeMode, ViewEventHandlerViewEventTypeEnum, ViewService, ViewState, ViewType, VoiceRecordWidgetComponent, barChart, bubbleChart, createBasicOptions, doughnutChart, horizontalBarChart, horizontalStackedBarChart, multiAxisLineChart, pieChart, polarAreaChart, radarChart, scatterChart, stackedBarChart, transformDataToBarLikeDataSet, transformDataToBasicDataSets, transformDataToBubble, transformDataToScatter };
23863
24019
  //# sourceMappingURL=smartbit4all-ng-client.mjs.map