adjuster-ui.service.ts 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. import {Injectable} from '@angular/core';
  2. import {
  3. HsDialogContainerService,
  4. HsLayoutService,
  5. HsPanelComponent,
  6. } from 'hslayers-ng';
  7. import {AdjusterLoaderComponent} from './adjuster-loader/adjuster-loader.component';
  8. import {AdjusterPresetsService} from './adjuster-presets.service';
  9. import {AdjusterService} from './adjuster.service';
  10. @Injectable({providedIn: 'root'})
  11. export class AdjusterUIService {
  12. constructor(
  13. public adjusterService: AdjusterService,
  14. public adjusterPresetsService: AdjusterPresetsService,
  15. public hsDialogContainerService: HsDialogContainerService,
  16. public hsLayoutService: HsLayoutService
  17. ) {
  18. console.log('creating dialog...');
  19. this.hsDialogContainerService.create(AdjusterLoaderComponent, {});
  20. console.log(
  21. '🚀 ~ file: adjuster-ui.service.ts ~ line 24 ~ hsDialogContainerService',
  22. hsDialogContainerService
  23. );
  24. console.log('dialog creation done?');
  25. }
  26. hasDatasets(factor): boolean {
  27. return factor.datasets.length > 0;
  28. }
  29. getLabelInCurrentLang(labels) {
  30. return this.adjusterPresetsService.getLabelInCurrentLang(labels);
  31. }
  32. isVisible(): boolean {
  33. return this.hsLayoutService.panelVisible('adjuster-advanced');
  34. }
  35. noDataSelected(): boolean {
  36. if (this.adjusterService.factors.length === 0) {
  37. return true;
  38. }
  39. let datasetsEffectivelyTurnedOn = [];
  40. for (const factor of this.adjusterService.factors) {
  41. if (factor.weight === 0) {
  42. continue;
  43. }
  44. datasetsEffectivelyTurnedOn = [
  45. ...datasetsEffectivelyTurnedOn,
  46. ...factor.datasets.filter((ds) => ds.included),
  47. ];
  48. }
  49. return datasetsEffectivelyTurnedOn.length === 0;
  50. }
  51. noOperationSelected(): boolean {
  52. return (
  53. !this.adjusterService.allowIndex && !this.adjusterService.allowClusters
  54. );
  55. }
  56. /*selectMethod(): void {
  57. this.adjusterService.method = this.method;
  58. this.adjusterEventService.methodChanged.next(this.method);
  59. }*/
  60. }