mirror of
https://dev.azure.com/hugendubel/ISA/_git/ISA-Frontend
synced 2025-12-28 22:42:11 +01:00
Scandit aus App entfernt und Scannen für die Produktsuche
This commit is contained in:
@@ -105,7 +105,7 @@
|
||||
},
|
||||
{
|
||||
"type": "anyComponentStyle",
|
||||
"maximumWarning": "6kb"
|
||||
"maximumWarning": "25kb"
|
||||
}
|
||||
],
|
||||
"serviceWorker": true
|
||||
@@ -114,7 +114,7 @@
|
||||
"budgets": [
|
||||
{
|
||||
"type": "anyComponentStyle",
|
||||
"maximumWarning": "6kb"
|
||||
"maximumWarning": "25kb"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -98,18 +98,19 @@ export class ArticleSearchboxComponent implements OnInit, OnDestroy {
|
||||
}
|
||||
|
||||
async startSearch() {
|
||||
if (await this.environmentService.isMobile()) {
|
||||
if ((await this.environmentService.isMobile()) && !(await this.query$.pipe(first()).toPromise())) {
|
||||
return this.scan();
|
||||
}
|
||||
this.articleSearchStore.search({ empty: true, scrollPosReset: true });
|
||||
} else {
|
||||
this.articleSearchStore.search({ empty: true, scrollPosReset: true });
|
||||
|
||||
this.subscriptions.add(
|
||||
this.articleSearchStore.selectSearchState$.subscribe((state) => {
|
||||
if (state !== 'fetching' && state !== 'empty') {
|
||||
this.closeFilterOverlay.emit();
|
||||
}
|
||||
})
|
||||
);
|
||||
this.subscriptions.add(
|
||||
this.articleSearchStore.selectSearchState$.subscribe((state) => {
|
||||
if (state !== 'fetching' && state !== 'empty') {
|
||||
this.closeFilterOverlay.emit();
|
||||
}
|
||||
})
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
scan() {
|
||||
|
||||
@@ -9,7 +9,6 @@ import { FormsModule } from '@angular/forms';
|
||||
import { BreadcrumbsComponent } from '../components/breadcrumbs/breadcrumbs.component';
|
||||
import { MenuComponent } from '../components/menu/menu.component';
|
||||
import { DashboardModule } from '../modules/dashboard/dashboard.module';
|
||||
import { NewsletterSignupModule } from './newsletter-signup/newsletter-signup.module';
|
||||
import { ContentPageComponent } from '../pages/content/content.component';
|
||||
import { SharedModule } from '../shared/shared.module';
|
||||
import { ProcessModule } from '../modules/process/process.module';
|
||||
@@ -56,7 +55,6 @@ import { RemissionStartedLeaveDialogComponent } from './remission/components/rem
|
||||
ScrollingModule,
|
||||
FormsModule,
|
||||
SharedModule,
|
||||
NewsletterSignupModule,
|
||||
InfiniteScrollModule,
|
||||
DashboardModule,
|
||||
ProcessModule,
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
|
||||
import { NewsletterSignupComponent } from './pages/newsletter-signup.component';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { SharedLibModule, SignaturePadModule } from 'shared/public_api';
|
||||
import { ButtonModule, CheckboxModule, IconModule } from '@libs/ui';
|
||||
|
||||
@NgModule({
|
||||
imports: [CommonModule, SharedLibModule, ButtonModule, CheckboxModule, SignaturePadModule, IconModule],
|
||||
exports: [NewsletterSignupComponent],
|
||||
declarations: [NewsletterSignupComponent],
|
||||
providers: [],
|
||||
})
|
||||
export class NewsletterSignupModule {}
|
||||
@@ -1,29 +0,0 @@
|
||||
import { trigger, style, transition, animate, query, state } from '@angular/animations';
|
||||
|
||||
export const circleAnimation = trigger('circle', [
|
||||
state(
|
||||
'one',
|
||||
style({
|
||||
opacity: 0,
|
||||
height: 0,
|
||||
})
|
||||
),
|
||||
state(
|
||||
'two',
|
||||
style({
|
||||
opacity: 1,
|
||||
height: '*',
|
||||
marginBottom: '20px',
|
||||
})
|
||||
),
|
||||
transition('one => two', [
|
||||
animate(
|
||||
'300ms 400ms ease-out',
|
||||
style({
|
||||
opacity: 1,
|
||||
height: '*',
|
||||
marginBottom: '20px',
|
||||
})
|
||||
),
|
||||
]),
|
||||
]);
|
||||
@@ -1,8 +0,0 @@
|
||||
import { trigger, style, transition, animate, query, state, stagger } from '@angular/animations';
|
||||
|
||||
export const expandAnimation = trigger('expand', [
|
||||
transition(':enter, * => 0, * => -1', []),
|
||||
state('one', style({ opacity: 0, height: 0 })),
|
||||
state('two', style({ opacity: 1, height: '*' })),
|
||||
transition('one => two', [animate(400, style({ opacity: 0, height: 0 })), animate(300, style({ opacity: 1, height: '*' }))]),
|
||||
]);
|
||||
@@ -1,34 +0,0 @@
|
||||
<div class="container">
|
||||
<div class="header">
|
||||
<span>Empfehlungen</span>
|
||||
</div>
|
||||
<div [@circle]="stage" class="success-check">
|
||||
<img src="/assets/images/Check_green_circle.svg" />
|
||||
</div>
|
||||
<h1 *ngIf="stage == 'one'">Passende Newsletter abonnieren?</h1>
|
||||
<h1 *ngIf="stage == 'two'">Sie haben folgende Newsletter abonniert</h1>
|
||||
|
||||
<div class="options" [@remove]="stage">
|
||||
<app-checkbox [option]="opt" *ngFor="let opt of options"></app-checkbox>
|
||||
</div>
|
||||
|
||||
<div [@expand]="stage" class="additional">
|
||||
<h1>Weitere Newsletter abonnieren?</h1>
|
||||
<div class="options">
|
||||
<app-checkbox [option]="opt" *ngFor="let opt of extra"></app-checkbox>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<lib-signature-pad #sigPad class="pad"></lib-signature-pad>
|
||||
<div *ngIf="!changes" class="disabled"></div>
|
||||
<caption class="signature">
|
||||
Signature
|
||||
</caption>
|
||||
|
||||
<p class="muted">
|
||||
Mit meiner Unterschrift erkläre ich mich damit einverstanden, dass die Hugendubel mir regelmäßig Informationen zum Thema
|
||||
Versanstaltungen zuschickt. Meine Einwilligung kann ich jederzeit gegenüber Hugendubel widerrufen.
|
||||
</p>
|
||||
|
||||
<app-button [primary]="true" (action)="confirm()" *ngIf="changes">Abonnieren</app-button>
|
||||
</div>
|
||||
@@ -1,101 +0,0 @@
|
||||
.container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-direction: column;
|
||||
user-select: none;
|
||||
|
||||
h1 {
|
||||
font-family: 'Open Sans';
|
||||
font-size: 18px;
|
||||
font-weight: 600;
|
||||
color: rgba(0, 0, 0, 1);
|
||||
margin: 0;
|
||||
margin-bottom: 25px;
|
||||
text-align: center;
|
||||
}
|
||||
caption {
|
||||
font-family: 'Open Sans';
|
||||
font-size: 14px;
|
||||
font-weight: 600;
|
||||
color: rgba(0, 0, 0, 1);
|
||||
text-align: left;
|
||||
line-height: 21px;
|
||||
}
|
||||
|
||||
p.muted {
|
||||
width: 70%;
|
||||
font-family: 'Open Sans';
|
||||
font-size: 16px;
|
||||
font-weight: 600;
|
||||
color: rgba(179, 195, 212, 1);
|
||||
text-align: center;
|
||||
line-height: 21px;
|
||||
margin-top: 25px;
|
||||
margin-bottom: 35px;
|
||||
}
|
||||
}
|
||||
|
||||
.header {
|
||||
width: 100%;
|
||||
text-align: left;
|
||||
color: rgba(23, 32, 98, 1);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 30px;
|
||||
|
||||
.icon {
|
||||
// width: 22px;
|
||||
// height: 20px;
|
||||
background-image: url(/assets/images/Empfehlungen_Icon.svg);
|
||||
}
|
||||
span {
|
||||
font-family: 'Open Sans';
|
||||
font-size: 15px;
|
||||
font-weight: bold;
|
||||
text-transform: uppercase;
|
||||
margin-left: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
.options {
|
||||
font-family: 'Open Sans';
|
||||
font-size: 16px;
|
||||
color: rgba(0, 0, 0, 1);
|
||||
margin-bottom: 60px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
position: relative;
|
||||
|
||||
app-checkbox {
|
||||
max-width: 230px;
|
||||
|
||||
&:not(:first-child) {
|
||||
margin-left: 15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.additional {
|
||||
flex: 0.0001;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.pad {
|
||||
display: block;
|
||||
border: #e1ebf5 2px solid;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.signature {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
.disabled {
|
||||
display: block;
|
||||
background: #e1ebf5;
|
||||
margin-top: -223px;
|
||||
height: 206px;
|
||||
width: 550px;
|
||||
opacity: 0.2;
|
||||
}
|
||||
@@ -1,75 +0,0 @@
|
||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||
import { circleAnimation } from './circle.animation';
|
||||
import { removeAnimation } from './remove.animation';
|
||||
import { expandAnimation } from './expand.animation';
|
||||
import { SignaturePadComponent } from 'shared/lib/signature-pad/signature-pad.component';
|
||||
import { CheckboxOption } from '@libs/ui';
|
||||
|
||||
@Component({
|
||||
selector: 'app-newsletter-signup',
|
||||
templateUrl: 'newsletter-signup.component.html',
|
||||
styleUrls: ['newsletter-signup.component.scss'],
|
||||
animations: [circleAnimation, removeAnimation, expandAnimation],
|
||||
})
|
||||
export class NewsletterSignupComponent implements OnInit {
|
||||
@ViewChild(SignaturePadComponent) sigPad: SignaturePadComponent;
|
||||
|
||||
stage = 'one';
|
||||
options = [];
|
||||
init: CheckboxOption[] = [
|
||||
{
|
||||
value: 'Neues von Inger-Maria Mahlke',
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
value: 'Thema Fantasy',
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
value: 'Veranstaltungen',
|
||||
selected: false,
|
||||
},
|
||||
];
|
||||
|
||||
extra: CheckboxOption[] = [
|
||||
{
|
||||
value: 'Neues von Nele Neuhaus',
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
value: 'Thema Roman',
|
||||
selected: false,
|
||||
},
|
||||
{
|
||||
value: 'Filiale Stachus',
|
||||
selected: false,
|
||||
},
|
||||
];
|
||||
|
||||
constructor() {}
|
||||
|
||||
ngOnInit() {
|
||||
this.options = [...this.init];
|
||||
}
|
||||
|
||||
get changes() {
|
||||
if (this.stage == 'one') {
|
||||
return this.init.some((i) => i.selected);
|
||||
}
|
||||
return this.extra.some((i) => i.selected);
|
||||
}
|
||||
nextStage() {
|
||||
this.stage = this.stage === 'one' ? 'two' : 'one';
|
||||
if (this.stage === 'one') {
|
||||
this.options = [...this.init];
|
||||
} else {
|
||||
this.options = this.options.filter((i) => i.selected);
|
||||
}
|
||||
}
|
||||
|
||||
confirm() {
|
||||
this.stage = 'two';
|
||||
this.options = this.options.filter((i) => i.selected);
|
||||
this.sigPad.clear();
|
||||
}
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
import { trigger, style, transition, animate, query } from '@angular/animations';
|
||||
|
||||
export const removeAnimation = trigger('remove', [
|
||||
transition(':enter, * => 0, * => -1', []),
|
||||
transition('one => two', [
|
||||
// each time the binding value changes
|
||||
query(':leave', [style({ opacity: 0 })]),
|
||||
query(':leave', [animate('0.2s', style({ flex: 0.00001, opacity: 0 }))]),
|
||||
]),
|
||||
]);
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -1,6 +1,3 @@
|
||||
import { Barcode, ScanSettings } from 'scandit-sdk';
|
||||
// import { ScanditSdkBarcodePickerComponent, ScanditSdkService } from 'scandit-sdk-angular';
|
||||
|
||||
import { AfterViewInit, ChangeDetectorRef, Component, EventEmitter, Output, OnDestroy } from '@angular/core';
|
||||
|
||||
import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
@@ -23,40 +20,18 @@ export class BarcodeScannerScanditComponent implements AfterViewInit, OnDestroy
|
||||
@Output() scan = new EventEmitter();
|
||||
destroy$ = new Subject();
|
||||
|
||||
public settings = new ScanSettings({
|
||||
enabledSymbologies: [Barcode.Symbology.CODE128, Barcode.Symbology.EAN13],
|
||||
});
|
||||
|
||||
log = 'tst';
|
||||
constructor(private cameraError: CameraErrorHandler, private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
constructor(private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
this.webview = this.native.isUiWebview();
|
||||
}
|
||||
|
||||
ngAfterViewInit() {
|
||||
this.webview = this.native.isUiWebview();
|
||||
|
||||
this.cameraError.notAllowed.subscribe((v) => (this.errorAccess = v));
|
||||
|
||||
if (this.webview) {
|
||||
this.ready = true;
|
||||
}
|
||||
}
|
||||
|
||||
scanSuccess(result) {
|
||||
if (result.barcodes.length > 0) {
|
||||
this.code = result.barcodes[0].data;
|
||||
this.enabled = false;
|
||||
this.search();
|
||||
}
|
||||
}
|
||||
|
||||
scanToggle() {
|
||||
this.enabled = true;
|
||||
this.ready = false;
|
||||
this.cdRef.detectChanges();
|
||||
setTimeout(() => this.cdRef.detectChanges(), 200);
|
||||
}
|
||||
|
||||
openNativeScanner() {
|
||||
this.native
|
||||
.openScanner()
|
||||
@@ -73,15 +48,6 @@ export class BarcodeScannerScanditComponent implements AfterViewInit, OnDestroy
|
||||
});
|
||||
}
|
||||
|
||||
search() {
|
||||
this.scan.emit(this.code);
|
||||
}
|
||||
|
||||
scanErrorHandler($event) {
|
||||
console.error($event);
|
||||
this.errorAccess = true;
|
||||
}
|
||||
|
||||
ngOnDestroy() {
|
||||
this.destroy$.next();
|
||||
}
|
||||
|
||||
@@ -7,10 +7,6 @@ import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
import { WindowRef } from './utils/window-ref.service';
|
||||
import { ButtonModule } from '@libs/ui';
|
||||
|
||||
const licenseKey =
|
||||
// tslint:disable-next-line: max-line-length
|
||||
'AcwsxifsOx+fAw/oXRAh/7w/zNFaMBqI+U7n6hARS/yzdGQvqFgeiFtKjjjUDuCIO3qscw0HMjb5fy0X7kRJWktFvP/sPi5eADMDiOhyhroJKFJKEUrwzXNjTQxvXUTXKhZTFs4svtghBoEi988sXll2KuaDOPDwfpNZX5FVLUKyf/1T8XvRhhYFS4UqoM+X+L1RcW7uUxaRgZ7xAQBGAHGO39laedxcmSQSZK1+fFnYRNlFKFmSLuvxGdxEnX3Aq3tZO9hlNcmN+FUSilXdQoxDwc1ryZrJxR7jMPfT1o3ShIn8MSL9wc6iN9KAXjQgEGkmksPRvwGoraUGm6+1SFYHmwHy5HwRZP604Ctzscd754LW86cfgWNVFY0TXmE5z0hWC759bqOcZPMCVK1D7FbHDpfoU2SAdhQPqr87MGVgYSZ56FIvRUJeshMDRFYR53oPmHbZNerfd/J3kMk9AL5dH74TmCOjTqrj5jvZQDkPgcRjlqcn9AW3kQ6RJgajQMg9R4p0KDZd9r1Wqm2vwowCvphl5LIX2kH7rssemeQHZf2yTariSclWQdntudSD8YdMcCzURn0jQpJj6UJ2PAXgFYLJSVDW++SVrPKokQr2F0odavyXCZCjd7L1248kLKVdJp1qEXiIuhrz8XduS65KOscXR3KePZMeb7gzM9Oh14Ai7sxwBOnMXBoul/LrVaBrbFvN/iXsaVewFQhuW19mI90+runCKiLOqMb0LcuO68a1r0pxYUK5hGIc5Pgj20ZS/xPvQBJhyIPmc1/tCVLfWLwwKYmM4FI9BOU4p4i5MAJcb/c5JA1LJQ==';
|
||||
const engineLocation = 'assets/vendor/scandit/';
|
||||
@NgModule({
|
||||
imports: [CommonModule, ButtonModule],
|
||||
exports: [BarcodeScannerScanditComponent],
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
import { Barcode, ScanSettings } from 'scandit-sdk';
|
||||
import { ScanditSdkBarcodePickerComponent, ScanditSdkService } from 'scandit-sdk-angular';
|
||||
|
||||
import { AfterViewInit, ChangeDetectorRef, Component, EventEmitter, Output, ViewChild, OnDestroy } from '@angular/core';
|
||||
|
||||
import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
@@ -21,56 +18,15 @@ export class CollectingShelfScannerScanditComponent implements AfterViewInit, On
|
||||
public ready = false;
|
||||
public webview = true;
|
||||
@Output() scan = new EventEmitter();
|
||||
@Output() manualEntry = new EventEmitter();
|
||||
|
||||
destroy$ = new Subject();
|
||||
|
||||
public settings = new ScanSettings({
|
||||
enabledSymbologies: [Barcode.Symbology.CODE128, Barcode.Symbology.EAN13],
|
||||
});
|
||||
|
||||
@ViewChild('scanner') scanner: ScanditSdkBarcodePickerComponent;
|
||||
log = 'tst';
|
||||
constructor(private cameraError: CameraErrorHandler, private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
constructor(private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
this.webview = this.native.isUiWebview();
|
||||
}
|
||||
|
||||
ngAfterViewInit() {
|
||||
this.webview = this.native.isUiWebview();
|
||||
|
||||
if (this.webview) {
|
||||
this.cameraError.notAllowed.subscribe((v) => (this.errorAccess = v));
|
||||
|
||||
try {
|
||||
this.scanner.error.subscribe(
|
||||
(success) => {
|
||||
this.scanErrorHandler(success);
|
||||
this.log = JSON.stringify(success);
|
||||
},
|
||||
(error) => {
|
||||
this.scanErrorHandler(error);
|
||||
this.log = JSON.stringify(error);
|
||||
}
|
||||
);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
this.ready = true;
|
||||
}
|
||||
}
|
||||
|
||||
scanSuccess(result) {
|
||||
if (result.barcodes.length > 0) {
|
||||
this.code = result.barcodes[0].data;
|
||||
this.enabled = false;
|
||||
this.search();
|
||||
}
|
||||
}
|
||||
|
||||
scanToggle() {
|
||||
this.enabled = true;
|
||||
this.ready = false;
|
||||
this.cdRef.detectChanges();
|
||||
setTimeout(() => this.cdRef.detectChanges(), 200);
|
||||
}
|
||||
|
||||
public openNativeScanner() {
|
||||
@@ -89,33 +45,6 @@ export class CollectingShelfScannerScanditComponent implements AfterViewInit, On
|
||||
});
|
||||
}
|
||||
|
||||
search() {
|
||||
this.scan.emit(this.code);
|
||||
}
|
||||
|
||||
isReady(scanner) {
|
||||
this.ready = true;
|
||||
const picker = (this.scanner['scanditSdkService'] as ScanditSdkService).picker as any;
|
||||
this.errorOther = !picker.scanner.isReadyToWork;
|
||||
picker.cameraManager.cameraSwitcherEnabled = false;
|
||||
picker.barcodePickerGui.cameraSwitcherElement = null;
|
||||
picker.cameraManager.triggerFatalError = (e) => {
|
||||
console.error(e);
|
||||
this.errorOther = true;
|
||||
};
|
||||
|
||||
this.cdRef.detectChanges();
|
||||
}
|
||||
|
||||
emitManualEntryIntent() {
|
||||
this.manualEntry.emit(true);
|
||||
}
|
||||
|
||||
scanErrorHandler($event) {
|
||||
console.error($event);
|
||||
this.errorAccess = true;
|
||||
}
|
||||
|
||||
ngOnDestroy() {
|
||||
this.destroy$.next();
|
||||
}
|
||||
|
||||
@@ -7,10 +7,6 @@ import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
import { WindowRef } from './utils/window-ref.service';
|
||||
import { ButtonModule } from '@libs/ui';
|
||||
|
||||
const licenseKey =
|
||||
// tslint:disable-next-line: max-line-length
|
||||
'AcwsxifsOx+fAw/oXRAh/7w/zNFaMBqI+U7n6hARS/yzdGQvqFgeiFtKjjjUDuCIO3qscw0HMjb5fy0X7kRJWktFvP/sPi5eADMDiOhyhroJKFJKEUrwzXNjTQxvXUTXKhZTFs4svtghBoEi988sXll2KuaDOPDwfpNZX5FVLUKyf/1T8XvRhhYFS4UqoM+X+L1RcW7uUxaRgZ7xAQBGAHGO39laedxcmSQSZK1+fFnYRNlFKFmSLuvxGdxEnX3Aq3tZO9hlNcmN+FUSilXdQoxDwc1ryZrJxR7jMPfT1o3ShIn8MSL9wc6iN9KAXjQgEGkmksPRvwGoraUGm6+1SFYHmwHy5HwRZP604Ctzscd754LW86cfgWNVFY0TXmE5z0hWC759bqOcZPMCVK1D7FbHDpfoU2SAdhQPqr87MGVgYSZ56FIvRUJeshMDRFYR53oPmHbZNerfd/J3kMk9AL5dH74TmCOjTqrj5jvZQDkPgcRjlqcn9AW3kQ6RJgajQMg9R4p0KDZd9r1Wqm2vwowCvphl5LIX2kH7rssemeQHZf2yTariSclWQdntudSD8YdMcCzURn0jQpJj6UJ2PAXgFYLJSVDW++SVrPKokQr2F0odavyXCZCjd7L1248kLKVdJp1qEXiIuhrz8XduS65KOscXR3KePZMeb7gzM9Oh14Ai7sxwBOnMXBoul/LrVaBrbFvN/iXsaVewFQhuW19mI90+runCKiLOqMb0LcuO68a1r0pxYUK5hGIc5Pgj20ZS/xPvQBJhyIPmc1/tCVLfWLwwKYmM4FI9BOU4p4i5MAJcb/c5JA1LJQ==';
|
||||
const engineLocation = 'assets/vendor/scandit/';
|
||||
@NgModule({
|
||||
imports: [CommonModule, ButtonModule],
|
||||
exports: [CollectingShelfScannerScanditComponent],
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
></scandit-sdk-barcode-picker> -->
|
||||
</div>
|
||||
<app-button (click)="openNativeScanner()" primary="true" *ngIf="webview">Kundenkarte scannen</app-button>
|
||||
<app-button (click)="emitManualEntryIntent()">Kartennummer manuell eintragen</app-button>
|
||||
<div class="w-100 loading" *ngIf="!enabled">
|
||||
<div class="scan-result">
|
||||
<span>{{ code }}</span>
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
import { Barcode, ScanSettings } from 'scandit-sdk';
|
||||
import { ScanditSdkBarcodePickerComponent, ScanditSdkService } from 'scandit-sdk-angular';
|
||||
|
||||
import { AfterViewInit, ChangeDetectorRef, Component, EventEmitter, Output, ViewChild, OnDestroy } from '@angular/core';
|
||||
|
||||
import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
@@ -24,53 +21,12 @@ export class CustomerCardScannerScanditComponent implements AfterViewInit, OnDes
|
||||
@Output() manualEntry = new EventEmitter();
|
||||
destroy$ = new Subject();
|
||||
|
||||
public settings = new ScanSettings({
|
||||
enabledSymbologies: [Barcode.Symbology.CODE128, Barcode.Symbology.EAN13],
|
||||
});
|
||||
|
||||
@ViewChild('scanner') scanner: ScanditSdkBarcodePickerComponent;
|
||||
log = 'tst';
|
||||
constructor(private cameraError: CameraErrorHandler, private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
constructor(private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
this.webview = this.native.isUiWebview();
|
||||
}
|
||||
|
||||
ngAfterViewInit() {
|
||||
this.webview = this.native.isUiWebview();
|
||||
|
||||
if (this.webview) {
|
||||
this.cameraError.notAllowed.subscribe((v) => (this.errorAccess = v));
|
||||
|
||||
try {
|
||||
this.scanner.error.subscribe(
|
||||
(success) => {
|
||||
this.scanErrorHandler(success);
|
||||
this.log = JSON.stringify(success);
|
||||
},
|
||||
(error) => {
|
||||
this.scanErrorHandler(error);
|
||||
this.log = JSON.stringify(error);
|
||||
}
|
||||
);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
this.ready = true;
|
||||
}
|
||||
}
|
||||
|
||||
scanSuccess(result) {
|
||||
if (result.barcodes.length > 0) {
|
||||
this.code = result.barcodes[0].data;
|
||||
this.enabled = false;
|
||||
this.search();
|
||||
}
|
||||
}
|
||||
|
||||
scanToggle() {
|
||||
this.enabled = true;
|
||||
this.ready = false;
|
||||
this.cdRef.detectChanges();
|
||||
setTimeout(() => this.cdRef.detectChanges(), 200);
|
||||
}
|
||||
|
||||
public openNativeScanner() {
|
||||
@@ -89,39 +45,6 @@ export class CustomerCardScannerScanditComponent implements AfterViewInit, OnDes
|
||||
});
|
||||
}
|
||||
|
||||
search() {
|
||||
this.scan.emit(this.code);
|
||||
}
|
||||
|
||||
isReady(scanner) {
|
||||
this.ready = true;
|
||||
const picker = (this.scanner['scanditSdkService'] as ScanditSdkService).picker as any;
|
||||
this.errorOther = !picker.scanner.isReadyToWork;
|
||||
picker.cameraManager.cameraSwitcherEnabled = false;
|
||||
picker.barcodePickerGui.cameraSwitcherElement = null;
|
||||
picker.cameraManager.triggerFatalError = (e) => {
|
||||
console.error(e);
|
||||
this.errorOther = true;
|
||||
};
|
||||
|
||||
// Remove Scandit logo
|
||||
// const element = scanner.pickerContainer.nativeElement as Element;
|
||||
// const imageElement = element.childNodes[0].childNodes[0]
|
||||
// .childNodes[6] as any;
|
||||
// imageElement.src = '';
|
||||
|
||||
this.cdRef.detectChanges();
|
||||
}
|
||||
|
||||
emitManualEntryIntent() {
|
||||
this.manualEntry.emit(true);
|
||||
}
|
||||
|
||||
scanErrorHandler($event) {
|
||||
console.error($event);
|
||||
this.errorAccess = true;
|
||||
}
|
||||
|
||||
ngOnDestroy() {
|
||||
this.destroy$.next();
|
||||
}
|
||||
|
||||
@@ -7,10 +7,6 @@ import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
import { WindowRef } from './utils/window-ref.service';
|
||||
import { ButtonModule } from '@libs/ui';
|
||||
|
||||
const licenseKey =
|
||||
// tslint:disable-next-line: max-line-length
|
||||
'AcwsxifsOx+fAw/oXRAh/7w/zNFaMBqI+U7n6hARS/yzdGQvqFgeiFtKjjjUDuCIO3qscw0HMjb5fy0X7kRJWktFvP/sPi5eADMDiOhyhroJKFJKEUrwzXNjTQxvXUTXKhZTFs4svtghBoEi988sXll2KuaDOPDwfpNZX5FVLUKyf/1T8XvRhhYFS4UqoM+X+L1RcW7uUxaRgZ7xAQBGAHGO39laedxcmSQSZK1+fFnYRNlFKFmSLuvxGdxEnX3Aq3tZO9hlNcmN+FUSilXdQoxDwc1ryZrJxR7jMPfT1o3ShIn8MSL9wc6iN9KAXjQgEGkmksPRvwGoraUGm6+1SFYHmwHy5HwRZP604Ctzscd754LW86cfgWNVFY0TXmE5z0hWC759bqOcZPMCVK1D7FbHDpfoU2SAdhQPqr87MGVgYSZ56FIvRUJeshMDRFYR53oPmHbZNerfd/J3kMk9AL5dH74TmCOjTqrj5jvZQDkPgcRjlqcn9AW3kQ6RJgajQMg9R4p0KDZd9r1Wqm2vwowCvphl5LIX2kH7rssemeQHZf2yTariSclWQdntudSD8YdMcCzURn0jQpJj6UJ2PAXgFYLJSVDW++SVrPKokQr2F0odavyXCZCjd7L1248kLKVdJp1qEXiIuhrz8XduS65KOscXR3KePZMeb7gzM9Oh14Ai7sxwBOnMXBoul/LrVaBrbFvN/iXsaVewFQhuW19mI90+runCKiLOqMb0LcuO68a1r0pxYUK5hGIc5Pgj20ZS/xPvQBJhyIPmc1/tCVLfWLwwKYmM4FI9BOU4p4i5MAJcb/c5JA1LJQ==';
|
||||
const engineLocation = 'assets/vendor/scandit/';
|
||||
@NgModule({
|
||||
imports: [CommonModule, ButtonModule],
|
||||
exports: [CustomerCardScannerScanditComponent],
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
import { Barcode, ScanSettings } from 'scandit-sdk';
|
||||
import { ScanditSdkBarcodePickerComponent, ScanditSdkService } from 'scandit-sdk-angular';
|
||||
|
||||
import { AfterViewInit, ChangeDetectorRef, Component, EventEmitter, Output, ViewChild, OnDestroy } from '@angular/core';
|
||||
|
||||
import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
import { AfterViewInit, ChangeDetectorRef, Component, EventEmitter, Output, OnDestroy } from '@angular/core';
|
||||
import { NativeContainerService } from './native-container.service';
|
||||
import { Subject } from 'rxjs';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
@@ -18,59 +13,16 @@ export class RemissionContainerScannerScanditComponent implements AfterViewInit,
|
||||
public errorAccess = false;
|
||||
public errorOther = false;
|
||||
public code = '';
|
||||
public ready = false;
|
||||
public webview = true;
|
||||
@Output() scan = new EventEmitter();
|
||||
@Output() manualEntry = new EventEmitter();
|
||||
destroy$ = new Subject();
|
||||
|
||||
public settings = new ScanSettings({
|
||||
enabledSymbologies: [Barcode.Symbology.CODE128, Barcode.Symbology.EAN13],
|
||||
});
|
||||
|
||||
@ViewChild('scanner') scanner: ScanditSdkBarcodePickerComponent;
|
||||
log = 'tst';
|
||||
constructor(private cameraError: CameraErrorHandler, private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
constructor(private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
this.webview = this.native.isUiWebview().isNative;
|
||||
}
|
||||
|
||||
ngAfterViewInit() {
|
||||
this.webview = this.native.isUiWebview().isNative;
|
||||
|
||||
if (this.webview) {
|
||||
this.cameraError.notAllowed.subscribe((v) => (this.errorAccess = v));
|
||||
|
||||
try {
|
||||
this.scanner.error.subscribe(
|
||||
(success) => {
|
||||
this.scanErrorHandler(success);
|
||||
this.log = JSON.stringify(success);
|
||||
},
|
||||
(error) => {
|
||||
this.scanErrorHandler(error);
|
||||
this.log = JSON.stringify(error);
|
||||
}
|
||||
);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
this.ready = true;
|
||||
}
|
||||
}
|
||||
|
||||
scanSuccess(result) {
|
||||
if (result.barcodes.length > 0) {
|
||||
this.code = result.barcodes[0].data;
|
||||
this.enabled = false;
|
||||
this.search();
|
||||
}
|
||||
}
|
||||
|
||||
scanToggle() {
|
||||
this.enabled = true;
|
||||
this.ready = false;
|
||||
this.cdRef.detectChanges();
|
||||
setTimeout(() => this.cdRef.detectChanges(), 200);
|
||||
}
|
||||
|
||||
public openNativeScanner() {
|
||||
@@ -89,33 +41,6 @@ export class RemissionContainerScannerScanditComponent implements AfterViewInit,
|
||||
});
|
||||
}
|
||||
|
||||
search() {
|
||||
this.scan.emit(this.code);
|
||||
}
|
||||
|
||||
isReady(scanner) {
|
||||
this.ready = true;
|
||||
const picker = (this.scanner['scanditSdkService'] as ScanditSdkService).picker as any;
|
||||
this.errorOther = !picker.scanner.isReadyToWork;
|
||||
picker.cameraManager.cameraSwitcherEnabled = false;
|
||||
picker.barcodePickerGui.cameraSwitcherElement = null;
|
||||
picker.cameraManager.triggerFatalError = (e) => {
|
||||
console.error(e);
|
||||
this.errorOther = true;
|
||||
};
|
||||
|
||||
this.cdRef.detectChanges();
|
||||
}
|
||||
|
||||
emitManualEntryIntent() {
|
||||
this.manualEntry.emit(true);
|
||||
}
|
||||
|
||||
scanErrorHandler($event) {
|
||||
console.error($event);
|
||||
this.errorAccess = true;
|
||||
}
|
||||
|
||||
ngOnDestroy() {
|
||||
this.destroy$.next();
|
||||
}
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
import { ZXingScannerModule } from '@zxing/ngx-scanner';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { ErrorHandler, NgModule } from '@angular/core';
|
||||
|
||||
@@ -8,12 +7,8 @@ import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
import { WindowRef } from './utils/window-ref.service';
|
||||
import { ButtonModule } from '@libs/ui';
|
||||
|
||||
const licenseKey =
|
||||
// tslint:disable-next-line: max-line-length
|
||||
'AcwsxifsOx+fAw/oXRAh/7w/zNFaMBqI+U7n6hARS/yzdGQvqFgeiFtKjjjUDuCIO3qscw0HMjb5fy0X7kRJWktFvP/sPi5eADMDiOhyhroJKFJKEUrwzXNjTQxvXUTXKhZTFs4svtghBoEi988sXll2KuaDOPDwfpNZX5FVLUKyf/1T8XvRhhYFS4UqoM+X+L1RcW7uUxaRgZ7xAQBGAHGO39laedxcmSQSZK1+fFnYRNlFKFmSLuvxGdxEnX3Aq3tZO9hlNcmN+FUSilXdQoxDwc1ryZrJxR7jMPfT1o3ShIn8MSL9wc6iN9KAXjQgEGkmksPRvwGoraUGm6+1SFYHmwHy5HwRZP604Ctzscd754LW86cfgWNVFY0TXmE5z0hWC759bqOcZPMCVK1D7FbHDpfoU2SAdhQPqr87MGVgYSZ56FIvRUJeshMDRFYR53oPmHbZNerfd/J3kMk9AL5dH74TmCOjTqrj5jvZQDkPgcRjlqcn9AW3kQ6RJgajQMg9R4p0KDZd9r1Wqm2vwowCvphl5LIX2kH7rssemeQHZf2yTariSclWQdntudSD8YdMcCzURn0jQpJj6UJ2PAXgFYLJSVDW++SVrPKokQr2F0odavyXCZCjd7L1248kLKVdJp1qEXiIuhrz8XduS65KOscXR3KePZMeb7gzM9Oh14Ai7sxwBOnMXBoul/LrVaBrbFvN/iXsaVewFQhuW19mI90+runCKiLOqMb0LcuO68a1r0pxYUK5hGIc5Pgj20ZS/xPvQBJhyIPmc1/tCVLfWLwwKYmM4FI9BOU4p4i5MAJcb/c5JA1LJQ==';
|
||||
const engineLocation = 'assets/vendor/scandit/';
|
||||
@NgModule({
|
||||
imports: [CommonModule, ButtonModule, ZXingScannerModule],
|
||||
imports: [CommonModule, ButtonModule],
|
||||
exports: [RemissionContainerScannerScanditComponent],
|
||||
declarations: [RemissionContainerScannerScanditComponent],
|
||||
providers: [WindowRef, NativeContainerService, CameraErrorHandler, { provide: ErrorHandler, useExisting: CameraErrorHandler }],
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
import { Barcode, ScanSettings } from 'scandit-sdk';
|
||||
import { ScanditSdkBarcodePickerComponent, ScanditSdkService } from 'scandit-sdk-angular';
|
||||
|
||||
import { AfterViewInit, ChangeDetectorRef, Component, EventEmitter, Output, ViewChild, OnDestroy } from '@angular/core';
|
||||
|
||||
import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
import { NativeContainerService } from './native-container.service';
|
||||
import { Subject } from 'rxjs';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
@@ -14,7 +10,6 @@ import { takeUntil } from 'rxjs/operators';
|
||||
styleUrls: ['remission-product-scanner-scandit.component.scss'],
|
||||
})
|
||||
export class RemissionProductScannerScanditComponent implements AfterViewInit, OnDestroy {
|
||||
public enabled = true;
|
||||
public errorAccess = false;
|
||||
public errorOther = false;
|
||||
public code = '';
|
||||
@@ -24,53 +19,12 @@ export class RemissionProductScannerScanditComponent implements AfterViewInit, O
|
||||
@Output() manualEntry = new EventEmitter();
|
||||
destroy$ = new Subject();
|
||||
|
||||
public settings = new ScanSettings({
|
||||
enabledSymbologies: [Barcode.Symbology.CODE128, Barcode.Symbology.EAN13],
|
||||
});
|
||||
|
||||
@ViewChild('scanner') scanner: ScanditSdkBarcodePickerComponent;
|
||||
log = 'tst';
|
||||
constructor(private cameraError: CameraErrorHandler, private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
constructor(private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
this.webview = this.native.isUiWebview();
|
||||
}
|
||||
|
||||
ngAfterViewInit() {
|
||||
this.webview = this.native.isUiWebview();
|
||||
|
||||
if (this.webview) {
|
||||
this.cameraError.notAllowed.subscribe((v) => (this.errorAccess = v));
|
||||
|
||||
try {
|
||||
this.scanner.error.subscribe(
|
||||
(success) => {
|
||||
this.scanErrorHandler(success);
|
||||
this.log = JSON.stringify(success);
|
||||
},
|
||||
(error) => {
|
||||
this.scanErrorHandler(error);
|
||||
this.log = JSON.stringify(error);
|
||||
}
|
||||
);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
this.ready = true;
|
||||
}
|
||||
}
|
||||
|
||||
scanSuccess(result) {
|
||||
if (result.barcodes.length > 0) {
|
||||
this.code = result.barcodes[0].data;
|
||||
this.enabled = false;
|
||||
this.search();
|
||||
}
|
||||
}
|
||||
|
||||
scanToggle() {
|
||||
this.enabled = true;
|
||||
this.ready = false;
|
||||
this.cdRef.detectChanges();
|
||||
setTimeout(() => this.cdRef.detectChanges(), 200);
|
||||
}
|
||||
|
||||
public openNativeScanner() {
|
||||
@@ -83,39 +37,11 @@ export class RemissionProductScannerScanditComponent implements AfterViewInit, O
|
||||
if (data.status === 'SUCCESS') {
|
||||
this.code = data.data;
|
||||
this.scan.emit(this.code);
|
||||
this.enabled = false;
|
||||
this.cdRef.detectChanges();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
search() {
|
||||
this.scan.emit(this.code);
|
||||
}
|
||||
|
||||
isReady(scanner) {
|
||||
this.ready = true;
|
||||
const picker = (this.scanner['scanditSdkService'] as ScanditSdkService).picker as any;
|
||||
this.errorOther = !picker.scanner.isReadyToWork;
|
||||
picker.cameraManager.cameraSwitcherEnabled = false;
|
||||
picker.barcodePickerGui.cameraSwitcherElement = null;
|
||||
picker.cameraManager.triggerFatalError = (e) => {
|
||||
console.error(e);
|
||||
this.errorOther = true;
|
||||
};
|
||||
|
||||
this.cdRef.detectChanges();
|
||||
}
|
||||
|
||||
emitManualEntryIntent() {
|
||||
this.manualEntry.emit(true);
|
||||
}
|
||||
|
||||
scanErrorHandler($event) {
|
||||
console.error($event);
|
||||
this.errorAccess = true;
|
||||
}
|
||||
|
||||
ngOnDestroy() {
|
||||
this.destroy$.next();
|
||||
}
|
||||
|
||||
@@ -7,10 +7,6 @@ import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
import { WindowRef } from './utils/window-ref.service';
|
||||
import { ButtonModule } from '@libs/ui';
|
||||
|
||||
const licenseKey =
|
||||
// tslint:disable-next-line: max-line-length
|
||||
'AcwsxifsOx+fAw/oXRAh/7w/zNFaMBqI+U7n6hARS/yzdGQvqFgeiFtKjjjUDuCIO3qscw0HMjb5fy0X7kRJWktFvP/sPi5eADMDiOhyhroJKFJKEUrwzXNjTQxvXUTXKhZTFs4svtghBoEi988sXll2KuaDOPDwfpNZX5FVLUKyf/1T8XvRhhYFS4UqoM+X+L1RcW7uUxaRgZ7xAQBGAHGO39laedxcmSQSZK1+fFnYRNlFKFmSLuvxGdxEnX3Aq3tZO9hlNcmN+FUSilXdQoxDwc1ryZrJxR7jMPfT1o3ShIn8MSL9wc6iN9KAXjQgEGkmksPRvwGoraUGm6+1SFYHmwHy5HwRZP604Ctzscd754LW86cfgWNVFY0TXmE5z0hWC759bqOcZPMCVK1D7FbHDpfoU2SAdhQPqr87MGVgYSZ56FIvRUJeshMDRFYR53oPmHbZNerfd/J3kMk9AL5dH74TmCOjTqrj5jvZQDkPgcRjlqcn9AW3kQ6RJgajQMg9R4p0KDZd9r1Wqm2vwowCvphl5LIX2kH7rssemeQHZf2yTariSclWQdntudSD8YdMcCzURn0jQpJj6UJ2PAXgFYLJSVDW++SVrPKokQr2F0odavyXCZCjd7L1248kLKVdJp1qEXiIuhrz8XduS65KOscXR3KePZMeb7gzM9Oh14Ai7sxwBOnMXBoul/LrVaBrbFvN/iXsaVewFQhuW19mI90+runCKiLOqMb0LcuO68a1r0pxYUK5hGIc5Pgj20ZS/xPvQBJhyIPmc1/tCVLfWLwwKYmM4FI9BOU4p4i5MAJcb/c5JA1LJQ==';
|
||||
const engineLocation = 'assets/vendor/scandit/';
|
||||
@NgModule({
|
||||
imports: [CommonModule, ButtonModule],
|
||||
exports: [RemissionProductScannerScanditComponent],
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
import { Barcode, ScanSettings } from 'scandit-sdk';
|
||||
import { ScanditSdkBarcodePickerComponent, ScanditSdkService } from 'scandit-sdk-angular';
|
||||
import { AfterViewInit, ChangeDetectorRef, Component, EventEmitter, Output, OnDestroy } from '@angular/core';
|
||||
|
||||
import { AfterViewInit, ChangeDetectorRef, Component, EventEmitter, Output, ViewChild, OnDestroy } from '@angular/core';
|
||||
|
||||
import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
import { NativeContainerService } from './native-container.service';
|
||||
import { Subject } from 'rxjs';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
@@ -18,93 +14,16 @@ export class RemissionShippingDocumentScannerScanditComponent implements AfterVi
|
||||
public errorAccess = false;
|
||||
public errorOther = false;
|
||||
public code = '';
|
||||
public ready = false;
|
||||
public webview = true;
|
||||
@Output() scan = new EventEmitter();
|
||||
@Output() manualEntry = new EventEmitter();
|
||||
destroy$ = new Subject();
|
||||
private activeSymbolCounts = [
|
||||
4,
|
||||
5,
|
||||
6,
|
||||
7,
|
||||
8,
|
||||
9,
|
||||
10,
|
||||
11,
|
||||
12,
|
||||
13,
|
||||
14,
|
||||
15,
|
||||
16,
|
||||
17,
|
||||
18,
|
||||
19,
|
||||
20,
|
||||
21,
|
||||
22,
|
||||
23,
|
||||
24,
|
||||
25,
|
||||
26,
|
||||
27,
|
||||
28,
|
||||
29,
|
||||
30,
|
||||
31,
|
||||
32,
|
||||
];
|
||||
|
||||
public settings: ScanSettings;
|
||||
|
||||
@ViewChild('scanner') scanner: ScanditSdkBarcodePickerComponent;
|
||||
log = 'tst';
|
||||
constructor(private cameraError: CameraErrorHandler, private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
constructor(private cdRef: ChangeDetectorRef, private native: NativeContainerService) {
|
||||
this.webview = this.native.isUiWebview();
|
||||
|
||||
this.settings = new ScanSettings({
|
||||
enabledSymbologies: [Barcode.Symbology.CODE128, Barcode.Symbology.EAN13, Barcode.Symbology.INTERLEAVED_2_OF_5],
|
||||
});
|
||||
const twoOfFifeSymbology = this.settings.getSymbologySettings(Barcode.Symbology.INTERLEAVED_2_OF_5);
|
||||
twoOfFifeSymbology.setActiveSymbolCounts(this.activeSymbolCounts);
|
||||
}
|
||||
|
||||
ngAfterViewInit() {
|
||||
this.webview = this.native.isUiWebview();
|
||||
|
||||
if (this.webview) {
|
||||
this.cameraError.notAllowed.pipe(takeUntil(this.destroy$)).subscribe((v) => (this.errorAccess = v));
|
||||
|
||||
try {
|
||||
this.scanner.error.pipe(takeUntil(this.destroy$)).subscribe(
|
||||
(success) => {
|
||||
this.scanErrorHandler(success);
|
||||
this.log = JSON.stringify(success);
|
||||
},
|
||||
(error) => {
|
||||
this.scanErrorHandler(error);
|
||||
this.log = JSON.stringify(error);
|
||||
}
|
||||
);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
this.ready = true;
|
||||
}
|
||||
}
|
||||
|
||||
scanSuccess(result) {
|
||||
if (result.barcodes.length > 0) {
|
||||
this.code = result.barcodes[0].data;
|
||||
this.enabled = false;
|
||||
this.search();
|
||||
}
|
||||
}
|
||||
|
||||
scanToggle() {
|
||||
this.enabled = true;
|
||||
this.ready = false;
|
||||
this.cdRef.detectChanges();
|
||||
setTimeout(() => this.cdRef.detectChanges(), 200);
|
||||
}
|
||||
|
||||
public openNativeScanner() {
|
||||
@@ -124,33 +43,6 @@ export class RemissionShippingDocumentScannerScanditComponent implements AfterVi
|
||||
});
|
||||
}
|
||||
|
||||
search() {
|
||||
this.scan.emit(this.code);
|
||||
}
|
||||
|
||||
isReady(scanner) {
|
||||
this.ready = true;
|
||||
const picker = (this.scanner['scanditSdkService'] as ScanditSdkService).picker as any;
|
||||
this.errorOther = !picker.scanner.isReadyToWork;
|
||||
picker.cameraManager.cameraSwitcherEnabled = false;
|
||||
picker.barcodePickerGui.cameraSwitcherElement = null;
|
||||
picker.cameraManager.triggerFatalError = (e) => {
|
||||
console.error(e);
|
||||
this.errorOther = true;
|
||||
};
|
||||
|
||||
this.cdRef.detectChanges();
|
||||
}
|
||||
|
||||
emitManualEntryIntent() {
|
||||
this.manualEntry.emit(true);
|
||||
}
|
||||
|
||||
scanErrorHandler($event) {
|
||||
console.error($event);
|
||||
this.errorAccess = true;
|
||||
}
|
||||
|
||||
ngOnDestroy() {
|
||||
this.destroy$.next();
|
||||
}
|
||||
|
||||
@@ -7,10 +7,6 @@ import { CameraErrorHandler } from './utils/camera-error.handler';
|
||||
import { WindowRef } from './utils/window-ref.service';
|
||||
import { ButtonModule } from '@libs/ui';
|
||||
|
||||
const licenseKey =
|
||||
// tslint:disable-next-line: max-line-length
|
||||
'AcwsxifsOx+fAw/oXRAh/7w/zNFaMBqI+U7n6hARS/yzdGQvqFgeiFtKjjjUDuCIO3qscw0HMjb5fy0X7kRJWktFvP/sPi5eADMDiOhyhroJKFJKEUrwzXNjTQxvXUTXKhZTFs4svtghBoEi988sXll2KuaDOPDwfpNZX5FVLUKyf/1T8XvRhhYFS4UqoM+X+L1RcW7uUxaRgZ7xAQBGAHGO39laedxcmSQSZK1+fFnYRNlFKFmSLuvxGdxEnX3Aq3tZO9hlNcmN+FUSilXdQoxDwc1ryZrJxR7jMPfT1o3ShIn8MSL9wc6iN9KAXjQgEGkmksPRvwGoraUGm6+1SFYHmwHy5HwRZP604Ctzscd754LW86cfgWNVFY0TXmE5z0hWC759bqOcZPMCVK1D7FbHDpfoU2SAdhQPqr87MGVgYSZ56FIvRUJeshMDRFYR53oPmHbZNerfd/J3kMk9AL5dH74TmCOjTqrj5jvZQDkPgcRjlqcn9AW3kQ6RJgajQMg9R4p0KDZd9r1Wqm2vwowCvphl5LIX2kH7rssemeQHZf2yTariSclWQdntudSD8YdMcCzURn0jQpJj6UJ2PAXgFYLJSVDW++SVrPKokQr2F0odavyXCZCjd7L1248kLKVdJp1qEXiIuhrz8XduS65KOscXR3KePZMeb7gzM9Oh14Ai7sxwBOnMXBoul/LrVaBrbFvN/iXsaVewFQhuW19mI90+runCKiLOqMb0LcuO68a1r0pxYUK5hGIc5Pgj20ZS/xPvQBJhyIPmc1/tCVLfWLwwKYmM4FI9BOU4p4i5MAJcb/c5JA1LJQ==';
|
||||
const engineLocation = 'assets/vendor/scandit/';
|
||||
@NgModule({
|
||||
imports: [CommonModule, ButtonModule],
|
||||
exports: [RemissionShippingDocumentScannerScanditComponent],
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
export * from './public_api';
|
||||
@@ -1,2 +0,0 @@
|
||||
export * from './signature-pad.component';
|
||||
export * from './signature-pad.module';
|
||||
@@ -1,39 +0,0 @@
|
||||
import { SignaturePad } from 'angular2-signaturepad/signature-pad';
|
||||
|
||||
import { AfterViewInit, Component, ViewChild } from '@angular/core';
|
||||
|
||||
@Component({
|
||||
selector: 'lib-signature-pad',
|
||||
template: ` <signature-pad [options]="signaturePadOptions" (onBeginEvent)="drawStart()" (onEndEvent)="drawComplete()"></signature-pad> `,
|
||||
})
|
||||
export class SignaturePadComponent implements AfterViewInit {
|
||||
@ViewChild(SignaturePad) signaturePad: SignaturePad;
|
||||
|
||||
public signaturePadOptions: Object = {
|
||||
// passed through to szimek/signature_pad constructor
|
||||
minWidth: 1,
|
||||
canvasWidth: 550,
|
||||
canvasHeight: 200,
|
||||
};
|
||||
|
||||
constructor() {}
|
||||
|
||||
ngAfterViewInit() {
|
||||
// this.signaturePad is now available
|
||||
this.signaturePad.set('minWidth', 1); // set szimek/signature_pad options at runtime
|
||||
this.signaturePad.clear(); // invoke functions from szimek/signature_pad API
|
||||
}
|
||||
|
||||
drawComplete() {
|
||||
// will be notified of szimek/signature_pad's onEnd event
|
||||
// console.log(this.signaturePad.toDataURL());
|
||||
}
|
||||
|
||||
drawStart() {
|
||||
// will be notified of szimek/signature_pad's onBegin event
|
||||
// console.log('begin drawing');
|
||||
}
|
||||
public clear() {
|
||||
this.signaturePad.clear();
|
||||
}
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
import { SignaturePadModule as ExternalSPModule } from 'angular2-signaturepad';
|
||||
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { NgModule } from '@angular/core';
|
||||
|
||||
import { SignaturePadComponent } from './signature-pad.component';
|
||||
|
||||
@NgModule({
|
||||
imports: [CommonModule, ExternalSPModule],
|
||||
exports: [SignaturePadComponent],
|
||||
declarations: [SignaturePadComponent],
|
||||
})
|
||||
export class SignaturePadModule {}
|
||||
@@ -3,7 +3,6 @@
|
||||
*/
|
||||
export * from './lib/shared-lib.module';
|
||||
export * from './lib/barcode-scanner';
|
||||
export * from './lib/signature-pad';
|
||||
export * from './lib/customer-card-scanner';
|
||||
export * from './lib/collecting-shelf-scanner';
|
||||
export * from './lib/remission-container-scanner';
|
||||
|
||||
148
package-lock.json
generated
148
package-lock.json
generated
@@ -4886,22 +4886,6 @@
|
||||
"regenerator-runtime": "^0.13.4"
|
||||
}
|
||||
},
|
||||
"@babel/runtime-corejs2": {
|
||||
"version": "7.3.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/runtime-corejs2/-/runtime-corejs2-7.3.1.tgz",
|
||||
"integrity": "sha512-YpO13776h3e6Wy8dl2J8T9Qwlvopr+b4trCEhHE+yek6yIqV8sx6g3KozdHMbXeBpjosbPi+Ii5Z7X9oXFHUKA==",
|
||||
"requires": {
|
||||
"core-js": "^2.5.7",
|
||||
"regenerator-runtime": "^0.12.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"regenerator-runtime": {
|
||||
"version": "0.12.1",
|
||||
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz",
|
||||
"integrity": "sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"@babel/template": {
|
||||
"version": "7.10.4",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz",
|
||||
@@ -5860,31 +5844,6 @@
|
||||
"integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==",
|
||||
"dev": true
|
||||
},
|
||||
"@zxing/library": {
|
||||
"version": "0.7.0",
|
||||
"resolved": "https://registry.npmjs.org/@zxing/library/-/library-0.7.0.tgz",
|
||||
"integrity": "sha512-VJ1cJaCWVF8MspnuyaZKGKlrSQLqQ5usgSap8uuCAvWGQ6W6OwN1NeGvnjhT+9hmnwkHK8XjaflvzaDBC7nKnw==",
|
||||
"requires": {
|
||||
"text-encoding": "^0.6.4",
|
||||
"ts-custom-error": "^2.2.1"
|
||||
}
|
||||
},
|
||||
"@zxing/ngx-scanner": {
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@zxing/ngx-scanner/-/ngx-scanner-1.3.0.tgz",
|
||||
"integrity": "sha512-CA62X8eR+2FnF0XFzVAjhH8U//Quw5ACkUM2/WryXMWaT8v+uapBhKkpUldXfKav5L5ADCO2nv2MLcuhD55QlQ==",
|
||||
"requires": {
|
||||
"@zxing/library": "0.7.0",
|
||||
"tslib": "^1.9.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"tslib": {
|
||||
"version": "1.13.0",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
|
||||
"integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"JSONStream": {
|
||||
"version": "1.3.5",
|
||||
"resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
|
||||
@@ -6053,14 +6012,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"angular2-signaturepad": {
|
||||
"version": "2.8.0",
|
||||
"resolved": "https://registry.npmjs.org/angular2-signaturepad/-/angular2-signaturepad-2.8.0.tgz",
|
||||
"integrity": "sha512-K7EZwvfAdRMFfFegzhapk4cEEgQXQW8En9K254OBenKon4HSHT7zVVRC20juwVW/H/XDy+D5km3Fbj4WnFV8IQ==",
|
||||
"requires": {
|
||||
"signature_pad": "2.3.2"
|
||||
}
|
||||
},
|
||||
"ansi-colors": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
|
||||
@@ -9325,11 +9276,6 @@
|
||||
"integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=",
|
||||
"dev": true
|
||||
},
|
||||
"eventemitter3": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz",
|
||||
"integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA=="
|
||||
},
|
||||
"events": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz",
|
||||
@@ -9659,11 +9605,6 @@
|
||||
"resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
|
||||
"integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
|
||||
},
|
||||
"faker": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/faker/-/faker-4.1.0.tgz",
|
||||
"integrity": "sha1-HkW7vsxndLPBlfrSg1EJxtdIzD8="
|
||||
},
|
||||
"fast-deep-equal": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz",
|
||||
@@ -10579,11 +10520,6 @@
|
||||
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz",
|
||||
"integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w=="
|
||||
},
|
||||
"howler": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/howler/-/howler-2.1.1.tgz",
|
||||
"integrity": "sha512-9nwyDCGxhAGMmNXDfMLv0M/uS/WUg2//jG6t96D8DqbbsVZgXQzsP/ZMItbWO/Fqg7Gg69kOv3xVSDzJdd7aqA=="
|
||||
},
|
||||
"hpack.js": {
|
||||
"version": "2.1.6",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/hpack.js/-/hpack.js-2.1.6.tgz",
|
||||
@@ -14978,11 +14914,6 @@
|
||||
"has": "^1.0.3"
|
||||
}
|
||||
},
|
||||
"objectFitPolyfill": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/objectFitPolyfill/-/objectFitPolyfill-2.1.1.tgz",
|
||||
"integrity": "sha512-+GQQw+yzk4L7Xl6d4auU6Cbz3HEuN5SKoPEoqjTw+X9uuev1KkiNq9k8hCXQbycZ6ZmM79RXOcSs37XXbVN2Rw=="
|
||||
},
|
||||
"obuf": {
|
||||
"version": "1.1.2",
|
||||
"resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz",
|
||||
@@ -18677,14 +18608,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"rtcpeerconnection-shim": {
|
||||
"version": "1.2.15",
|
||||
"resolved": "https://registry.npmjs.org/rtcpeerconnection-shim/-/rtcpeerconnection-shim-1.2.15.tgz",
|
||||
"integrity": "sha512-C6DxhXt7bssQ1nHb154lqeL0SXz5Dx4RczXZu2Aa/L1NJFnEVDxFwCBo3fqtuljhHIGceg5JKBV4XJ0gW5JKyw==",
|
||||
"requires": {
|
||||
"sdp": "^2.6.0"
|
||||
}
|
||||
},
|
||||
"run-async": {
|
||||
"version": "2.4.1",
|
||||
"resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
|
||||
@@ -18837,42 +18760,6 @@
|
||||
"integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
|
||||
"dev": true
|
||||
},
|
||||
"scandit-sdk": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/scandit-sdk/-/scandit-sdk-4.1.1.tgz",
|
||||
"integrity": "sha512-inRJOY+KEdstQefThduZkj5FJDfVJI6exdmp7slE28uVpsPH0TBfiBHLsk+kHwTD6IGx/b9NM9dg9szL69CkKw==",
|
||||
"requires": {
|
||||
"@babel/runtime-corejs2": "^7.3.1",
|
||||
"eventemitter3": "3.1.0",
|
||||
"howler": "^2.1.1",
|
||||
"objectFitPolyfill": "^2.1.1",
|
||||
"tslib": "^1.9.3",
|
||||
"ua-parser-js": "^0.7.19",
|
||||
"webrtc-adapter": "^7.2.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"tslib": {
|
||||
"version": "1.13.0",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
|
||||
"integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"scandit-sdk-angular": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/scandit-sdk-angular/-/scandit-sdk-angular-2.0.0.tgz",
|
||||
"integrity": "sha512-s9ZcNTuVgnRViYNDCOPvPXO6UbEuGnONBe1VEQ7ksUnWZge0XtsuvrlndpcGnVR/PbupymMfKZWpWYoH3jn8BA==",
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"tslib": {
|
||||
"version": "1.13.0",
|
||||
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
|
||||
"integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"schema-utils": {
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
|
||||
@@ -18923,11 +18810,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"sdp": {
|
||||
"version": "2.9.0",
|
||||
"resolved": "https://registry.npmjs.org/sdp/-/sdp-2.9.0.tgz",
|
||||
"integrity": "sha512-XAVZQO4qsfzVTHorF49zCpkdxiGmPNjA8ps8RcJGtGP3QJ/A8I9/SVg/QnkAFDMXIyGbHZBBFwYBw6WdnhT96w=="
|
||||
},
|
||||
"select-hose": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
|
||||
@@ -19194,11 +19076,6 @@
|
||||
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
|
||||
"integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0="
|
||||
},
|
||||
"signature_pad": {
|
||||
"version": "2.3.2",
|
||||
"resolved": "https://registry.npmjs.org/signature_pad/-/signature_pad-2.3.2.tgz",
|
||||
"integrity": "sha512-peYXLxOsIY6MES2TrRLDiNg2T++8gGbpP2yaC+6Ohtxr+a2dzoaqWosWDY9sWqTAAk6E/TyQO+LJw9zQwyu5kA=="
|
||||
},
|
||||
"simple-swizzle": {
|
||||
"version": "0.2.2",
|
||||
"resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
|
||||
@@ -21290,12 +21167,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"text-encoding": {
|
||||
"version": "0.6.4",
|
||||
"resolved": "https://registry.npmjs.org/text-encoding/-/text-encoding-0.6.4.tgz",
|
||||
"integrity": "sha1-45mpgiV6J22uQou5KEXLcb3CbRk=",
|
||||
"optional": true
|
||||
},
|
||||
"text-table": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
|
||||
@@ -21479,11 +21350,6 @@
|
||||
"glob": "^7.1.2"
|
||||
}
|
||||
},
|
||||
"ts-custom-error": {
|
||||
"version": "2.2.2",
|
||||
"resolved": "https://registry.npmjs.org/ts-custom-error/-/ts-custom-error-2.2.2.tgz",
|
||||
"integrity": "sha512-I0FEdfdatDjeigRqh1JFj67bcIKyRNm12UVGheBjs2pXgyELg2xeiQLVaWu1pVmNGXZVnz/fvycSU41moBIpOg=="
|
||||
},
|
||||
"ts-node": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz",
|
||||
@@ -21671,11 +21537,6 @@
|
||||
"integrity": "sha512-tEu6DGxGgRJPb/mVPIZ48e69xCn2yRmCgYmDugAVwmJ6o+0u1RI18eO7E7WBTLYLaEVVOhwQmcdhQHweux/WPg==",
|
||||
"dev": true
|
||||
},
|
||||
"ua-parser-js": {
|
||||
"version": "0.7.19",
|
||||
"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.19.tgz",
|
||||
"integrity": "sha512-T3PVJ6uz8i0HzPxOF9SWzWAlfN/DavlpQqepn22xgve/5QecC+XMCAtmUNnY7C9StehaV6exjUCI801lOI7QlQ=="
|
||||
},
|
||||
"uglify-js": {
|
||||
"version": "3.4.9",
|
||||
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz",
|
||||
@@ -22830,15 +22691,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"webrtc-adapter": {
|
||||
"version": "7.2.0",
|
||||
"resolved": "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-7.2.0.tgz",
|
||||
"integrity": "sha512-+QsCKlCTjLVKKhkClQwXXgalyehiIzYcwKL7X2bS8cE/1paG44P8kW3kXOGMDJVy/1rnYMRz1ukYmobmGRw+4w==",
|
||||
"requires": {
|
||||
"rtcpeerconnection-shim": "^1.2.15",
|
||||
"sdp": "^2.9.0"
|
||||
}
|
||||
},
|
||||
"websocket-client": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/websocket-client/-/websocket-client-1.0.0.tgz",
|
||||
|
||||
@@ -57,12 +57,9 @@
|
||||
"@ngrx/store-devtools": "^10.0.0",
|
||||
"@ngxs/store": "^3.6.2",
|
||||
"@types/faker": "^4.1.5",
|
||||
"@zxing/ngx-scanner": "^1.3.0",
|
||||
"angular-oauth2-oidc": "^8.0.4",
|
||||
"angular2-signaturepad": "^2.8.0",
|
||||
"application": "^0.1.4",
|
||||
"core-js": "^2.6.5",
|
||||
"faker": "^4.1.0",
|
||||
"hammerjs": "^2.0.8",
|
||||
"intersection-observer": "^0.11.0",
|
||||
"lodash": "^4.17.21",
|
||||
@@ -74,8 +71,6 @@
|
||||
"ngx-toggle-switch": "^2.0.5",
|
||||
"node-sass": "^4.14.1",
|
||||
"rxjs": "~6.6.3",
|
||||
"scandit-sdk": "^4.1.1",
|
||||
"scandit-sdk-angular": "^2.0.0",
|
||||
"smoothscroll-polyfill": "^0.4.4",
|
||||
"socket.io": "^2.2.0",
|
||||
"tslib": "^2.0.0",
|
||||
|
||||
Reference in New Issue
Block a user