Merge branch 'master' into release/1.3

This commit is contained in:
Michael Auer
2021-02-15 15:16:25 +01:00
15 changed files with 56 additions and 45 deletions

View File

@@ -1,4 +1,5 @@
import { Injectable } from '@angular/core';
import { StringDictionary } from '@cmf/core';
import { AuthConfig } from 'angular-oauth2-oidc';
@Injectable()
@@ -6,6 +7,8 @@ export class AppConfiguration {
includeGoogleAnalytics = false;
title?: string;
cdn: StringDictionary<string>;
sso: AuthConfig;
swagger: { [key: string]: { rootUrl: string } };

View File

@@ -56,6 +56,7 @@ import { ModalDialogueModule } from './core/overlay/component';
import { AppModalModule } from './app-modal.module';
import { OverlaysModule } from './core/overlay/overlays.module';
import { DateAdapter, NativeDateAdapter } from '@isa-ui/core/date';
import { CDN_PRODUCT_PICTURES } from './tokens';
registerLocaleData(localeDe, localeDeExtra);
registerLocaleData(localeDe, 'de', localeDeExtra);
@@ -89,6 +90,9 @@ export function remissionModuleOptionsFactory(config: AppConfiguration): Remissi
return config.remissionModuleOptions;
}
export function cdnProdutctPictures(config: AppConfiguration): string {
return config.cdn.productPictures;
}
@NgModule({
declarations: [AppComponent],
imports: [
@@ -163,6 +167,12 @@ export function remissionModuleOptionsFactory(config: AppConfiguration): Remissi
provide: DateAdapter,
useClass: NativeDateAdapter,
},
{
provide: CDN_PRODUCT_PICTURES,
useFactory: cdnProdutctPictures,
deps: [AppConfiguration],
},
],
bootstrap: [AppComponent],
})

View File

@@ -2,7 +2,7 @@
<div class="product-image">
<img
class="thumbnail"
src="https://produktbilder.ihugendubel.de/{{ orderItemListItem?.product.ean }}.jpg?showDummy=true"
src="{{ cdnProdutctPictures }}/{{ orderItemListItem?.product.ean }}.jpg?showDummy=true"
alt="item.product.name"
/>
</div>

View File

@@ -10,8 +10,10 @@ import {
ElementRef,
ChangeDetectorRef,
Renderer2,
Inject,
} from '@angular/core';
import { OrderItemListItemDTO, ReceiptDTO } from '@swagger/oms';
import { CDN_PRODUCT_PICTURES } from 'apps/sales/src/app/tokens';
@Component({
selector: 'app-shelf-order-item-details',
@@ -62,7 +64,11 @@ export class ShelfOrderItemDetailsComponent implements OnChanges {
inputQuantityError: string;
moreThan10 = false;
constructor(private cdr: ChangeDetectorRef, private renderer: Renderer2) {}
constructor(
private cdr: ChangeDetectorRef,
private renderer: Renderer2,
@Inject(CDN_PRODUCT_PICTURES) public cdnProdutctPictures: string
) {}
ngOnChanges({ orderItemListItem }: SimpleChanges): void {
if (orderItemListItem) {

View File

@@ -21,13 +21,7 @@
</div>
<div class="grid-container">
<div class="cover">
<img
class="thumbnail"
src="https://produktbilder.ihugendubel.de/{{
item.product.ean
}}.jpg?showDummy=true"
alt="item.product.name"
/>
<img class="thumbnail" src="{{ cdnProdutctPictures }}/{{ item.product.ean }}.jpg?showDummy=true" alt="item.product.name" />
</div>
<div class="title">
<strong class="product-name">

View File

@@ -1,5 +1,6 @@
import { Component, OnInit, ChangeDetectionStrategy, Input } from '@angular/core';
import { Component, OnInit, ChangeDetectionStrategy, Input, Inject } from '@angular/core';
import { OrderItemListItemDTO } from '@swagger/oms';
import { CDN_PRODUCT_PICTURES } from 'apps/sales/src/app/tokens';
@Component({
selector: 'app-search-result-group-item',
@@ -14,7 +15,7 @@ export class SearchResultGroupItemComponent implements OnInit {
@Input()
displayCompartmentCode = true;
constructor() {}
constructor(@Inject(CDN_PRODUCT_PICTURES) public cdnProdutctPictures: string) {}
ngOnInit() {}
}

View File

@@ -1,17 +0,0 @@
import { CreateImageSourceFromEanPipe } from './generate-image-src-from-ean.pipe';
describe('Pipe: CreateImageSourceFromEanPipe', () => {
let pipe: CreateImageSourceFromEanPipe;
const ean = '123456';
beforeEach(() => {
pipe = new CreateImageSourceFromEanPipe();
});
it('should return the image url for the provided ean', () => {
const result = pipe.transform(ean);
expect(result).toEqual(`https://produktbilder.ihugendubel.de/${ean}.jpg?showDummy=true`);
});
});

View File

@@ -1,11 +1,14 @@
import { Pipe, PipeTransform } from '@angular/core';
import { Inject, Pipe, PipeTransform } from '@angular/core';
import { CDN_PRODUCT_PICTURES } from '../../../tokens';
@Pipe({
name: 'createImageSourceFromEan',
})
export class CreateImageSourceFromEanPipe implements PipeTransform {
constructor(@Inject(CDN_PRODUCT_PICTURES) private cdnProdutctPictures: string) {}
transform(ean: string): string {
return `https://produktbilder.ihugendubel.de/
return `${this.cdnProdutctPictures}/
${ean}
.jpg?showDummy=true`;
}

View File

@@ -0,0 +1,3 @@
import { InjectionToken } from '@angular/core';
export const CDN_PRODUCT_PICTURES = new InjectionToken<string>('cdn.productPictures');

View File

@@ -1,6 +1,9 @@
{
"includeGoogleAnalytics": false,
"title": "ISA - feature",
"cdn": {
"productPictures": "https://produktbilder-test.paragon-data.net"
},
"sso": {
"issuer": "https://sso-test.paragon-data.de",
"clientId": "hug-isa",
@@ -42,16 +45,14 @@
"print": "https://isa-feature.paragon-data.net/print/v1/"
}
},
"taskCalendarModuleOptions": {
"useMock": false,
"endpoints": {
"eis": "https://isa-feature.paragon-data.net/eis/v1/"
}
},
"taskCalendarConfig": {
"monthsOffset": 3,
"weeksOffset": 2
}
}
}

View File

@@ -1,6 +1,9 @@
{
"includeGoogleAnalytics": false,
"title": "ISA - integration",
"cdn": {
"productPictures": "https://produktbilder-test.paragon-data.net"
},
"sso": {
"issuer": "https://sso-test.paragon-data.de",
"clientId": "hug-isa",
@@ -42,16 +45,14 @@
"print": "https://isa-integration.paragon-data.net/print/v1/"
}
},
"taskCalendarModuleOptions": {
"useMock": false,
"endpoints": {
"eis": "https://isa.paragon-data.de/eis/v1/"
}
},
"taskCalendarConfig": {
"monthsOffset": 3,
"weeksOffset": 2
}
}
}

View File

@@ -1,6 +1,9 @@
{
"includeGoogleAnalytics": false,
"title": "ISA - local",
"cdn": {
"productPictures": "https://produktbilder-test.paragon-data.net"
},
"sso": {
"issuer": "https://sso-test.paragon-data.de",
"clientId": "hug-isa",

View File

@@ -1,6 +1,9 @@
{
"includeGoogleAnalytics": true,
"title": "ISA",
"cdn": {
"productPictures": "https://produktbilder.paragon-data.net"
},
"sso": {
"issuer": "https://sso.paragon-data.de",
"clientId": "hug-isa",
@@ -42,16 +45,14 @@
"print": "https://isa.paragon-systems.de/print/v1/"
}
},
"taskCalendarModuleOptions": {
"useMock": false,
"endpoints": {
"eis": "https://isa.paragon-data.de/eis/v1/"
}
},
"taskCalendarConfig": {
"monthsOffset": 3,
"weeksOffset": 2
}
}
}

View File

@@ -1,6 +1,9 @@
{
"includeGoogleAnalytics": true,
"title": "ISA - staging",
"cdn": {
"productPictures": "https://produktbilder.paragon-data.net"
},
"sso": {
"issuer": "https://sso.paragon-data.de",
"clientId": "hug-isa",
@@ -42,16 +45,14 @@
"print": "https://isa-staging.paragon-systems.de/print/v1/"
}
},
"taskCalendarModuleOptions": {
"useMock": false,
"endpoints": {
"eis": "https://isa-staging.paragon-data.net/eis/v1/"
}
},
"taskCalendarConfig": {
"monthsOffset": 3,
"weeksOffset": 2
}
}
}

View File

@@ -1,6 +1,9 @@
{
"includeGoogleAnalytics": false,
"title": "ISA - test",
"cdn": {
"productPictures": "https://produktbilder-test.paragon-data.net"
},
"sso": {
"issuer": "https://sso-test.paragon-data.de",
"clientId": "hug-isa",
@@ -42,16 +45,14 @@
"print": "https://isa-test.paragon-data.net/print/v1/"
}
},
"taskCalendarModuleOptions": {
"useMock": false,
"endpoints": {
"eis": "https://isa-test.paragon-data.net/eis/v1/"
}
},
"taskCalendarConfig": {
"monthsOffset": 3,
"weeksOffset": 2
}
}
}