Browse Source

refactore

pull/14153/head
Maksym Tsymbarov 11 months ago
parent
commit
9c6170d8c0
  1. 25
      ui-ngx/src/app/modules/home/components/widget/lib/photo-camera-input.component.ts
  2. 13
      ui-ngx/src/app/modules/home/components/widget/lib/settings/input/photo-camera-input-widget-settings.component.ts

25
ui-ngx/src/app/modules/home/components/widget/lib/photo-camera-input.component.ts

@ -24,25 +24,25 @@ import {
ViewChild,
ViewEncapsulation
} from '@angular/core';
import { PageComponent } from '@shared/components/page.component';
import { WidgetContext } from '@home/models/widget-component.models';
import { Store } from '@ngrx/store';
import { DomSanitizer, SafeUrl } from '@angular/platform-browser';
import { ImageService } from '@app/core/public-api';
import { AppState } from '@core/core.state';
import { AttributeService } from '@core/http/attribute.service';
import { UtilsService } from '@core/services/utils.service';
import { Datasource, DatasourceData, DatasourceType } from '@shared/models/widget.models';
import { WINDOW } from '@core/services/window.service';
import { AttributeService } from '@core/http/attribute.service';
import { isString } from '@core/utils';
import { WidgetContext } from '@home/models/widget-component.models';
import { Store } from '@ngrx/store';
import { PageComponent } from '@shared/components/page.component';
import { EntityId } from '@shared/models/id/entity-id';
import { AttributeScope, DataKeyType } from '@shared/models/telemetry/telemetry.models';
import { map, Observable, of, switchMap, tap } from 'rxjs';
import { isFile, isString } from '@core/utils';
import { DomSanitizer, SafeUrl } from '@angular/platform-browser';
import { ImageService } from '@app/core/public-api';
import { Datasource, DatasourceData, DatasourceType } from '@shared/models/widget.models';
import { map, Observable, of, switchMap } from 'rxjs';
interface PhotoCameraInputWidgetSettings {
widgetTitle: string;
saveToGallery: boolean;
imageVisibility: boolean;
usePublicGalleryLink: boolean;
imageQuality: number;
imageFormat: string;
maxWidth: number;
@ -284,8 +284,7 @@ export class PhotoCameraInputWidgetComponent extends PageComponent implements On
this.canvasElement.height = this.videoHeight;
this.canvasElement.getContext('2d').drawImage(this.videoElement, 0, 0, this.videoWidth, this.videoHeight);
const previewDataUrl = this.canvasElement.toDataURL(this.mimeType, this.quality);
this.previewPhoto = previewDataUrl;
this.previewPhoto = this.canvasElement.toDataURL(this.mimeType, this.quality);
this.isPreviewPhoto = true;
}
@ -310,7 +309,7 @@ export class PhotoCameraInputWidgetComponent extends PageComponent implements On
return this.imageService.uploadImage(file, fileName);
}),
map((imageInfo) =>
this.settings.imageVisibility ? imageInfo.publicLink : imageInfo.link
this.settings.usePublicGalleryLink ? imageInfo.publicLink : imageInfo.link
)
);
}

13
ui-ngx/src/app/modules/home/components/widget/lib/settings/input/photo-camera-input-widget-settings.component.ts

@ -15,11 +15,10 @@
///
import { Component } from '@angular/core';
import { WidgetSettings, WidgetSettingsComponent } from '@shared/models/widget.models';
import { UntypedFormBuilder, UntypedFormGroup, Validators } from '@angular/forms';
import { Store } from '@ngrx/store';
import { AppState } from '@core/core.state';
import { deepClone } from '@app/core/utils';
import { Store } from '@ngrx/store';
import { WidgetSettings, WidgetSettingsComponent } from '@shared/models/widget.models';
@Component({
selector: 'tb-photo-camera-input-widget-settings',
@ -44,7 +43,7 @@ export class PhotoCameraInputWidgetSettingsComponent extends WidgetSettingsCompo
widgetTitle: '',
saveToGallery: false,
imageVisibility: true,
usePublicGalleryLink: true,
imageFormat: 'image/png',
imageQuality: 0.92,
maxWidth: 640,
@ -61,7 +60,7 @@ export class PhotoCameraInputWidgetSettingsComponent extends WidgetSettingsCompo
// Image settings
saveToGallery: [settings.saveToGallery],
imageVisibility: [settings.imageVisibility],
usePublicGalleryLink: [settings.usePublicGalleryLink],
imageFormat: [settings.imageFormat, []],
imageQuality: [settings.imageQuality, [Validators.min(0), Validators.max(100)]],
maxWidth: [settings.maxWidth, [Validators.min(1)]],
@ -72,7 +71,8 @@ export class PhotoCameraInputWidgetSettingsComponent extends WidgetSettingsCompo
protected prepareInputSettings(settings: WidgetSettings): WidgetSettings {
return {
...settings,
saveToGallery: settings.saveToGallery || false,
saveToGallery: settings.saveToGallery ?? false,
usePublicGalleryLink: settings.usePublicGalleryLink ?? false,
imageQuality: settings.imageQuality * 100
}
}
@ -80,7 +80,6 @@ export class PhotoCameraInputWidgetSettingsComponent extends WidgetSettingsCompo
protected prepareOutputSettings(settings: WidgetSettings): WidgetSettings {
return {
...settings,
saveToGallery: settings.saveToGallery || false,
imageQuality: settings.imageQuality / 100
}
}

Loading…
Cancel
Save