mirror of
https://dev.azure.com/hugendubel/ISA/_git/ISA-Frontend
synced 2025-12-28 22:42:11 +01:00
HIMA-790 add a new article
This commit is contained in:
@@ -6,7 +6,7 @@ export interface Remission {
|
||||
remissionProcessCreated?: boolean;
|
||||
remissionProcessStarted?: boolean;
|
||||
remissionProcessCompleted?: boolean;
|
||||
remissionProcess?: RemissionProcess;
|
||||
remissionProcess?: any;
|
||||
remissionProducts?: RemissionProduct[];
|
||||
target?: string;
|
||||
source?: RemissionResourceType;
|
||||
@@ -16,8 +16,8 @@ export interface Remission {
|
||||
blockReminder?: boolean;
|
||||
remissionFinishingProcessStatus?: RemissionFinishingProcessStatus;
|
||||
containerId?: string;
|
||||
zentral: RemissionTypeFilters;
|
||||
ueberlauf: RemissionTypeFilters;
|
||||
// zentral: RemissionTypeFilters;
|
||||
// ueberlauf: RemissionTypeFilters;
|
||||
}
|
||||
|
||||
export interface RemissionTypeFilters {
|
||||
|
||||
@@ -59,8 +59,11 @@ export class RemissionSelectors {
|
||||
static getRemissionFilters(resourceType, resourceTarget) {
|
||||
return state => {
|
||||
const { remission } = state.remission;
|
||||
return remission[resourceType]
|
||||
? remission[resourceType][resourceTarget]
|
||||
console.log('getRemissionFilters', resourceTarget, resourceType);
|
||||
|
||||
console.log('remission', remission.remissionProcess[resourceType][resourceTarget]);
|
||||
return remission && remission.remissionProcess && remission.remissionProcess[resourceType]
|
||||
? remission.remissionProcess[resourceType][resourceTarget]
|
||||
: {
|
||||
abteilungen: {
|
||||
filterGroups: [],
|
||||
@@ -101,10 +104,10 @@ export class RemissionSelectors {
|
||||
static getRemissionSelectedGroups(filterId = 'abteilungen') {
|
||||
return state => {
|
||||
const { remission } = state.remission;
|
||||
if (remission) {
|
||||
if (remission && remission.remissionProcess) {
|
||||
const source = remission.source;
|
||||
const target = remission.target;
|
||||
return remission[source][target][filterId].filterGroups;
|
||||
return remission.remissionProcess[source][target][filterId].filterGroups;
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -112,23 +115,23 @@ export class RemissionSelectors {
|
||||
@Selector([RemissionState])
|
||||
static getRemissionSelectedOptions(remissionState: RemissionStateModel) {
|
||||
const remission = remissionState.remission;
|
||||
if (remission) {
|
||||
if (remission && remission.remissionProcess) {
|
||||
const source = remission.source;
|
||||
const target = remission.target;
|
||||
return remission[source][target].abteilungen.filterOptions;
|
||||
return remission.remissionProcess[source][target].abteilungen.filterOptions;
|
||||
}
|
||||
}
|
||||
|
||||
@Selector([RemissionState])
|
||||
static getRemissionSelectedFilters(remissionState: RemissionStateModel) {
|
||||
const remission = remissionState.remission;
|
||||
if (remission) {
|
||||
if (remission && remission.remissionProcess) {
|
||||
const source = remission.source;
|
||||
const target = remission.target;
|
||||
if (source === RemissionResourceType.Overflow) {
|
||||
return remission[source][target].abteilungen.filterGroups;
|
||||
return remission.remissionProcess[source][target].abteilungen.filterGroups;
|
||||
} else {
|
||||
const filters = remission[source][target];
|
||||
const filters = remission.remissionProcess[source][target];
|
||||
const centralSelectedAktionenFilters = filters.aktionen.filterGroups || [];
|
||||
return [
|
||||
...centralSelectedAktionenFilters,
|
||||
|
||||
@@ -86,6 +86,7 @@ export class RemissionState {
|
||||
...remissionProcess
|
||||
}
|
||||
};
|
||||
console.log('SetRemissionProcess#', remission);
|
||||
ctx.patchState({ remission });
|
||||
this.syncApiState(remission);
|
||||
}
|
||||
@@ -117,35 +118,74 @@ export class RemissionState {
|
||||
const currentRemission = state.remission;
|
||||
let remission: Remission;
|
||||
const target = currentRemission.target;
|
||||
const selectedFilters: any = {
|
||||
[filterId]: {
|
||||
filterGroups,
|
||||
filterOptions
|
||||
}
|
||||
};
|
||||
if (source === RemissionResourceType.Central) {
|
||||
remission = {
|
||||
...currentRemission,
|
||||
zentral: {
|
||||
...currentRemission.zentral,
|
||||
[target]: {
|
||||
...currentRemission.zentral[target],
|
||||
[filterId]: {
|
||||
filterGroups,
|
||||
filterOptions
|
||||
remissionProcess: {
|
||||
...currentRemission.remissionProcess,
|
||||
zentral: {
|
||||
...currentRemission.remissionProcess.zentral,
|
||||
[target]: {
|
||||
...currentRemission.remissionProcess.zentral[target],
|
||||
...selectedFilters
|
||||
}
|
||||
}
|
||||
}
|
||||
// remissionProcess: {
|
||||
// ...currentRemission.remissionProcess,
|
||||
// filter: {
|
||||
// ...currentRemission.remissionProcess.filter,
|
||||
// filter: {
|
||||
// [filterId]: selectedFilters[filterId].filterOptions.map(option => option.id)
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
// zentral: {
|
||||
// ...currentRemission.zentral,
|
||||
// [target]: {
|
||||
// ...currentRemission.zentral[target],
|
||||
// ...selectedFilters
|
||||
// }
|
||||
// }
|
||||
};
|
||||
} else {
|
||||
remission = {
|
||||
...currentRemission,
|
||||
ueberlauf: {
|
||||
...currentRemission.ueberlauf,
|
||||
[target]: {
|
||||
...currentRemission.ueberlauf[target],
|
||||
[filterId]: {
|
||||
filterGroups,
|
||||
filterOptions
|
||||
remissionProcess: {
|
||||
...currentRemission.remissionProcess,
|
||||
ueberlauf: {
|
||||
...currentRemission.remissionProcess.ueberlauf,
|
||||
[target]: {
|
||||
...currentRemission.remissionProcess.ueberlauf[target],
|
||||
...selectedFilters
|
||||
}
|
||||
}
|
||||
}
|
||||
// filter: {
|
||||
// ...currentRemission.remissionProcess.filter,
|
||||
// filter: {
|
||||
// [filterId]: selectedFilters[filterId].filterGroups.map(option => option.id)
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
// ueberlauf: {
|
||||
// ...currentRemission.ueberlauf,
|
||||
// [target]: {
|
||||
// ...currentRemission.ueberlauf[target],
|
||||
// ...selectedFilters
|
||||
// }
|
||||
// }
|
||||
};
|
||||
}
|
||||
console.log('filterGroups', filterGroups);
|
||||
console.log('filterOptions', filterOptions);
|
||||
console.log('remission filters', remission);
|
||||
ctx.patchState({ remission });
|
||||
this.syncApiState(remission);
|
||||
}
|
||||
@@ -319,8 +359,7 @@ export class RemissionState {
|
||||
source: RemissionResourceType.Central,
|
||||
shippingDocumentCreated: false,
|
||||
blockReminder: true,
|
||||
remissionFinishingProcessStatus: RemissionFinishingProcessStatus.notSet,
|
||||
...intitialFiltersValue
|
||||
remissionFinishingProcessStatus: RemissionFinishingProcessStatus.notSet
|
||||
};
|
||||
ctx.patchState({ remission });
|
||||
this.syncApiState(remission);
|
||||
@@ -337,8 +376,7 @@ export class RemissionState {
|
||||
source: RemissionResourceType.Central,
|
||||
shippingDocumentCreated: false,
|
||||
blockReminder: true,
|
||||
remissionFinishingProcessStatus: RemissionFinishingProcessStatus.notSet,
|
||||
...intitialFiltersValue
|
||||
remissionFinishingProcessStatus: RemissionFinishingProcessStatus.notSet
|
||||
};
|
||||
ctx.patchState({ remission });
|
||||
this.syncApiState(remission);
|
||||
|
||||
@@ -148,7 +148,7 @@ export class RemissionListComponent implements OnInit, OnDestroy {
|
||||
if (!this.remissionProcess) {
|
||||
return;
|
||||
}
|
||||
|
||||
console.log('changes', changes);
|
||||
this.remissionService
|
||||
.updateRemissionFilter({
|
||||
remissionProcessId: this.remissionProcess.id,
|
||||
|
||||
@@ -202,18 +202,10 @@ export class RemissionFinishComponent implements OnInit, OnDestroy {
|
||||
}
|
||||
|
||||
finishRemission() {
|
||||
this.remissionService
|
||||
.completeRemission({
|
||||
remissionProcessId: this.remissionProcess.id
|
||||
})
|
||||
.subscribe(remissionFinished => {
|
||||
if (!isNullOrUndefined(remissionFinished)) {
|
||||
this.appService.clearIdleReminder();
|
||||
this.pageStatus = RemissionFinishingProcessStatus.finished;
|
||||
this.store.dispatch(new SetRemissionFinishedProcessStatus(this.pageStatus));
|
||||
this.store.dispatch(new ResetRemissionState());
|
||||
}
|
||||
});
|
||||
this.appService.clearIdleReminder();
|
||||
this.pageStatus = RemissionFinishingProcessStatus.finished;
|
||||
this.store.dispatch(new SetRemissionFinishedProcessStatus(this.pageStatus));
|
||||
this.store.dispatch(new ResetRemissionState());
|
||||
}
|
||||
|
||||
continueRemission() {
|
||||
|
||||
@@ -202,6 +202,7 @@ export class RemissionListCreateComponent implements OnInit, OnDestroy {
|
||||
this.remissionProcessStatuses = remissionProcessStatuses;
|
||||
this.remissionProcess$ = !this.remissionProcessStatuses.created ? this.createProcess() : this.continueProcess();
|
||||
this.remissionProcess$.pipe(takeUntil(this.destroy$)).subscribe(remissionProcess => {
|
||||
console.log('remissionProcess#', remissionProcess);
|
||||
(!isNullOrUndefined(remissionProcess.capacities)).ifTrue(() => this.capacitiesBinder(remissionProcess.capacities));
|
||||
});
|
||||
|
||||
@@ -380,7 +381,7 @@ export class RemissionListCreateComponent implements OnInit, OnDestroy {
|
||||
}
|
||||
|
||||
openStartRemissionDialog() {
|
||||
if (this.isNative) {
|
||||
if (this.isIPad) {
|
||||
this.startRemission();
|
||||
} else {
|
||||
this.remissionStartDialog.openDialog();
|
||||
@@ -508,15 +509,37 @@ export class RemissionListCreateComponent implements OnInit, OnDestroy {
|
||||
? filters.abteilungen.filterOptions
|
||||
: filters.abteilungen.filterGroups;
|
||||
const aktionenFilters = this.selectedRemissionResourceType === RemissionResourceType.Central ? filters.aktionen.filterGroups : [];
|
||||
this.remissionHelper.updateFilters({
|
||||
target: resourceTarget,
|
||||
source: this.selectedRemissionResourceType,
|
||||
filters: {
|
||||
abteilungen: abteilungenFilters,
|
||||
...(aktionenFilters.length > 0 && {
|
||||
aktionen: aktionenFilters
|
||||
})
|
||||
const selectedFilters = {
|
||||
abteilungen: abteilungenFilters,
|
||||
...(aktionenFilters.length > 0 && {
|
||||
aktionen: aktionenFilters
|
||||
})
|
||||
};
|
||||
|
||||
if (!this.listLoaded) {
|
||||
console.log('ZAPISUJ FILTRY KURWO');
|
||||
const updateFilters = {};
|
||||
if (selectedFilters) {
|
||||
Object.keys(selectedFilters).forEach(filterId => {
|
||||
updateFilters[filterId] = [...selectedFilters[filterId].map(op => op.id)];
|
||||
});
|
||||
}
|
||||
});
|
||||
this.remissionService
|
||||
.updateRemissionFilter({
|
||||
remissionProcessId: this.remissionProcess.id,
|
||||
changes: {
|
||||
target: resourceTarget,
|
||||
source: this.selectedRemissionResourceType,
|
||||
filter: updateFilters
|
||||
}
|
||||
})
|
||||
.subscribe();
|
||||
} else {
|
||||
this.remissionHelper.updateFilters({
|
||||
target: resourceTarget,
|
||||
source: this.selectedRemissionResourceType,
|
||||
filters: selectedFilters
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -179,14 +179,17 @@ export class RemissionListStartedComponent implements OnInit, OnDestroy {
|
||||
|
||||
remissionSubsribtionInitialisation() {
|
||||
this.loadCurrentRemissionProcessStatuses().then(remissionProcessStatuses => {
|
||||
console.log('loadCurrentRemissionProcessStatuses');
|
||||
this.remissionProcessStatuses = remissionProcessStatuses;
|
||||
this.remissionProcess$ = !this.remissionProcessStatuses.created ? this.createProcess() : this.continueProcess();
|
||||
this.remissionProcess$.pipe(takeUntil(this.destroy$), distinctUntilChanged()).subscribe(remissionProcess => {
|
||||
console.log('remissionProcess', remissionProcess);
|
||||
(!isNullOrUndefined(remissionProcess.capacities)).ifTrue(() => this.capacitiesBinder(remissionProcess.capacities));
|
||||
});
|
||||
of(this.remissionSuppliers$.pipe(filter(this.remissionSuppliersFilter)), this.remissionProcess$)
|
||||
.pipe(combineAll(), take(1), takeUntil(this.destroy$))
|
||||
.subscribe(([suppliers, process]: [any, any]) => {
|
||||
console.log('process', process);
|
||||
this.remissionSuppliersSubscriptionHandler(suppliers, process);
|
||||
});
|
||||
});
|
||||
@@ -252,6 +255,7 @@ export class RemissionListStartedComponent implements OnInit, OnDestroy {
|
||||
|
||||
remisionProcessSubscriptionHandler = (remissionProcess: RemissionProcess) => {
|
||||
this.remissionProcess = remissionProcess;
|
||||
console.log('set', remissionProcess);
|
||||
this.store.dispatch(new SetRemissionProcess(remissionProcess));
|
||||
this.processNeedsToBeRestoredFromCache.ifTrue(() => this.restoreProcess());
|
||||
this.selectedRemissionResourceType =
|
||||
@@ -427,15 +431,37 @@ export class RemissionListStartedComponent implements OnInit, OnDestroy {
|
||||
? filters.abteilungen.filterOptions
|
||||
: filters.abteilungen.filterGroups;
|
||||
const aktionenFilters = this.selectedRemissionResourceType === RemissionResourceType.Central ? filters.aktionen.filterGroups : [];
|
||||
this.remissionHelper.updateFilters({
|
||||
target: resourceTarget,
|
||||
source: this.selectedRemissionResourceType,
|
||||
filters: {
|
||||
abteilungen: abteilungenFilters,
|
||||
...(aktionenFilters.length > 0 && {
|
||||
aktionen: aktionenFilters
|
||||
})
|
||||
const selectedFilters = {
|
||||
abteilungen: abteilungenFilters,
|
||||
...(aktionenFilters.length > 0 && {
|
||||
aktionen: aktionenFilters
|
||||
})
|
||||
};
|
||||
|
||||
if (!this.listLoaded) {
|
||||
console.log('ZAPISUJ FILTRY KURWO');
|
||||
const updateFilters = {};
|
||||
if (selectedFilters) {
|
||||
Object.keys(selectedFilters).forEach(filterId => {
|
||||
updateFilters[filterId] = [...selectedFilters[filterId].map(op => op.id)];
|
||||
});
|
||||
}
|
||||
});
|
||||
this.remissionService
|
||||
.updateRemissionFilter({
|
||||
remissionProcessId: this.remissionProcess.id,
|
||||
changes: {
|
||||
target: resourceTarget,
|
||||
source: this.selectedRemissionResourceType,
|
||||
filter: updateFilters
|
||||
}
|
||||
})
|
||||
.subscribe();
|
||||
} else {
|
||||
this.remissionHelper.updateFilters({
|
||||
target: resourceTarget,
|
||||
source: this.selectedRemissionResourceType,
|
||||
filters: selectedFilters
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ export class RemissionShippingDocumentScannerScanditComponent implements AfterVi
|
||||
destroy$ = new Subject();
|
||||
|
||||
public settings = new ScanSettings({
|
||||
enabledSymbologies: [Barcode.Symbology.CODE128, Barcode.Symbology.EAN13]
|
||||
enabledSymbologies: [Barcode.Symbology.CODE128, Barcode.Symbology.EAN13, Barcode.Symbology.INTERLEAVED_2_OF_5]
|
||||
});
|
||||
|
||||
@ViewChild('scanner') scanner: ScanditSdkBarcodePickerComponent;
|
||||
|
||||
48
package-lock.json
generated
48
package-lock.json
generated
@@ -1039,65 +1039,65 @@
|
||||
}
|
||||
},
|
||||
"@cmf/catalog-api": {
|
||||
"version": "0.1.19",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@cmf/catalog-api/-/catalog-api-0.1.19.tgz",
|
||||
"integrity": "sha1-meUray5zaYrqJiYnTv36qWAXGgw=",
|
||||
"version": "0.1.21",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@cmf/catalog-api/-/catalog-api-0.1.21.tgz",
|
||||
"integrity": "sha1-aQDFHvaBHmcLi56nDZPwf+wXb2o=",
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"@cmf/core": {
|
||||
"version": "0.1.19",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@cmf/core/-/core-0.1.19.tgz",
|
||||
"integrity": "sha1-1Jxn7V3CcsDnmgyRCD7j4GIQkoQ=",
|
||||
"version": "0.1.21",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@cmf/core/-/core-0.1.21.tgz",
|
||||
"integrity": "sha1-y45JHSNu6eoyWygfh9DONqR2XPw=",
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"@cmf/inventory-api": {
|
||||
"version": "0.1.19",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@cmf/inventory-api/-/inventory-api-0.1.19.tgz",
|
||||
"integrity": "sha1-HqNa6KmqAogR5sahnc9sIwrldY8=",
|
||||
"version": "0.1.21",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@cmf/inventory-api/-/inventory-api-0.1.21.tgz",
|
||||
"integrity": "sha1-3WjqXk2UgyFPGse1cHgu1EpqX9Q=",
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"@cmf/trade-api": {
|
||||
"version": "0.1.19",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@cmf/trade-api/-/trade-api-0.1.19.tgz",
|
||||
"integrity": "sha1-OQKQRhCjhk3j3sTnuEqd8kuiVJM=",
|
||||
"version": "0.1.21",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@cmf/trade-api/-/trade-api-0.1.21.tgz",
|
||||
"integrity": "sha1-S+lF5LzZ6tdzE55OtyukqJ29nPM=",
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"@isa/catsearch-api": {
|
||||
"version": "0.0.47",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@isa/catsearch-api/-/catsearch-api-0.0.47.tgz",
|
||||
"integrity": "sha1-Uk/wka6Jd/ba9w1Kg4VUKOO3Rko=",
|
||||
"version": "0.0.48",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@isa/catsearch-api/-/catsearch-api-0.0.48.tgz",
|
||||
"integrity": "sha1-QWfLRl8iBKs+KTlG5REm75z1vw8=",
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"@isa/print-api": {
|
||||
"version": "0.0.47",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@isa/print-api/-/print-api-0.0.47.tgz",
|
||||
"integrity": "sha1-lQCmG4/zfN1VQzKAJjMMIQBFgmA=",
|
||||
"version": "0.0.48",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@isa/print-api/-/print-api-0.0.48.tgz",
|
||||
"integrity": "sha1-UOn5UBCGRJhmACii0h+oVnVPAmU=",
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"@isa/remi-api": {
|
||||
"version": "0.0.47",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@isa/remi-api/-/remi-api-0.0.47.tgz",
|
||||
"integrity": "sha1-m20rJHpHDdYVbZAkKLqwaTu3j80=",
|
||||
"version": "0.0.48",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@isa/remi-api/-/remi-api-0.0.48.tgz",
|
||||
"integrity": "sha1-uEdj6PJg/Bl5qvRCltml1wzoh18=",
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"@isa/remission": {
|
||||
"version": "0.2.22",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@isa/remission/-/remission-0.2.22.tgz",
|
||||
"integrity": "sha1-+ERnzxaMen7gpnvU9mJH7obyuTE=",
|
||||
"version": "0.2.23",
|
||||
"resolved": "https://pkgs.dev.azure.com/hugendubel/_packaging/hugendubel/npm/registry/@isa/remission/-/remission-0.2.23.tgz",
|
||||
"integrity": "sha1-5vzKfx1VW2rpZP1UWQqyr5lxszg=",
|
||||
"requires": {
|
||||
"tslib": "^1.9.0"
|
||||
}
|
||||
|
||||
16
package.json
16
package.json
@@ -30,14 +30,14 @@
|
||||
"@angular/pwa": "^0.13.4",
|
||||
"@angular/router": "~7.2.12",
|
||||
"@angular/service-worker": "~7.2.12",
|
||||
"@cmf/catalog-api": "^0.1.19",
|
||||
"@cmf/core": "^0.1.19",
|
||||
"@cmf/inventory-api": "^0.1.19",
|
||||
"@cmf/trade-api": "^0.1.19",
|
||||
"@isa/catsearch-api": "^0.0.47",
|
||||
"@isa/print-api": "0.0.47",
|
||||
"@isa/remi-api": "^0.0.47",
|
||||
"@isa/remission": "^0.2.22",
|
||||
"@cmf/catalog-api": "^0.1.21",
|
||||
"@cmf/core": "^0.1.21",
|
||||
"@cmf/inventory-api": "^0.1.21",
|
||||
"@cmf/trade-api": "^0.1.21",
|
||||
"@isa/catsearch-api": "^0.0.48",
|
||||
"@isa/print-api": "0.0.48",
|
||||
"@isa/remi-api": "^0.0.48",
|
||||
"@isa/remission": "^0.2.23",
|
||||
"@ng-idle/core": "^8.0.0-beta.4",
|
||||
"@ng-idle/keepalive": "^8.0.0-beta.4",
|
||||
"@ngxs/store": "^3.4.1",
|
||||
|
||||
Reference in New Issue
Block a user