@esolve/ng-esolve-connect 0.143.0 → 0.145.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/esolve-ng-esolve-connect.mjs +491 -16
- package/fesm2022/esolve-ng-esolve-connect.mjs.map +1 -1
- package/index.d.ts +1249 -685
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -593,150 +593,71 @@ interface EsolveAssetOptions {
|
|
|
593
593
|
area_of_application?: string;
|
|
594
594
|
}
|
|
595
595
|
|
|
596
|
-
|
|
597
|
-
type: 'category' | 'subcategory';
|
|
598
|
-
esolve_id: string | number;
|
|
599
|
-
parent_id: string;
|
|
600
|
-
description: string;
|
|
601
|
-
sef_description: string;
|
|
602
|
-
short_description: string;
|
|
603
|
-
sort_priority: number;
|
|
604
|
-
active: boolean;
|
|
605
|
-
display_only: boolean;
|
|
606
|
-
private image_name;
|
|
607
|
-
id: string;
|
|
608
|
-
seo_details: EsolveSeoInfo;
|
|
609
|
-
total_stock?: number;
|
|
610
|
-
children?: EsolveCategoryTreeItem[];
|
|
611
|
-
private image_path;
|
|
612
|
-
get small_image_src(): string;
|
|
613
|
-
get thumbnail_image_src(): string;
|
|
614
|
-
get tiny_image_src(): string;
|
|
615
|
-
constructor(type: 'category' | 'subcategory', esolve_id: string | number, parent_id: string, description: string, sef_description: string, short_description: string, sort_priority: number, active: boolean, display_only: boolean, image_name: string, seo_title: string, seo_keywords: string, seo_description: string, children?: EsolveCategoryTreeItem[]);
|
|
616
|
-
getImagePath(image_size: 'small' | 'thumb' | 'tiny'): string;
|
|
617
|
-
}
|
|
596
|
+
type EsolveStockSortField = 'sorting_code' | 'price' | 'name' | 'description' | 'code' | 'created';
|
|
618
597
|
|
|
619
|
-
|
|
620
|
-
|
|
598
|
+
type EsolveErpSalesStockSortField = EsolveStockSortField | 'total' | 'qty' | 'date';
|
|
599
|
+
|
|
600
|
+
interface EsolveAdditionalStockImageRecord {
|
|
621
601
|
id: number;
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
seo_description: string;
|
|
628
|
-
sort_priority: number;
|
|
629
|
-
active: boolean;
|
|
630
|
-
display_only: boolean;
|
|
631
|
-
seo_page_title: string;
|
|
632
|
-
seo_keywords: string;
|
|
633
|
-
short_description: string;
|
|
634
|
-
image: string;
|
|
635
|
-
total_stock?: number;
|
|
602
|
+
type: string;
|
|
603
|
+
url: string;
|
|
604
|
+
name?: string | null;
|
|
605
|
+
etag?: string | null;
|
|
606
|
+
key?: string | null;
|
|
636
607
|
}
|
|
637
608
|
|
|
638
|
-
interface
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
owner_menu_id: string;
|
|
642
|
-
description: string;
|
|
643
|
-
sef_description: string;
|
|
644
|
-
seo_description: string;
|
|
645
|
-
sort_priority: number;
|
|
646
|
-
active: boolean;
|
|
647
|
-
display_only: boolean;
|
|
648
|
-
seo_page_title: string;
|
|
649
|
-
seo_keywords: string;
|
|
650
|
-
short_description: string;
|
|
651
|
-
image: string;
|
|
652
|
-
total_stock?: number;
|
|
653
|
-
children: (EsolveCategoryRecord | EsolveSubcategoryRecord)[];
|
|
609
|
+
interface EsolveStockBarcodeOptions {
|
|
610
|
+
barcode: string;
|
|
611
|
+
barcode_type?: string;
|
|
654
612
|
}
|
|
655
613
|
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
sort_priority: number;
|
|
664
|
-
active: boolean;
|
|
665
|
-
display_only: boolean;
|
|
666
|
-
seo_page_title: string;
|
|
667
|
-
seo_keywords: string;
|
|
668
|
-
seo_description: string;
|
|
669
|
-
image: string;
|
|
670
|
-
total_stock?: number;
|
|
671
|
-
children?: EsolveCategoryTreeItemRecord[];
|
|
614
|
+
type EsolveBarcodeType = 'ean13' | 'qr' | 'code39' | 'code128';
|
|
615
|
+
|
|
616
|
+
interface EsolveStockBarcodeRecord {
|
|
617
|
+
id: number;
|
|
618
|
+
code: string;
|
|
619
|
+
barcode_data: string;
|
|
620
|
+
barcode_type: EsolveBarcodeType;
|
|
672
621
|
}
|
|
673
622
|
|
|
674
|
-
interface
|
|
675
|
-
|
|
676
|
-
* Generated ID. Does not require type to be set.
|
|
677
|
-
*/
|
|
678
|
-
id?: string;
|
|
679
|
-
/**
|
|
680
|
-
* Type category tree item. Required for if esolve_id or sef_description is set
|
|
681
|
-
*/
|
|
682
|
-
type?: 'category' | 'subcategory';
|
|
683
|
-
/**
|
|
684
|
-
* Search engine friendly description. Requires type to be set.
|
|
685
|
-
*/
|
|
686
|
-
sef_description?: string;
|
|
687
|
-
/**
|
|
688
|
-
* ID from eSolve. Requires type to be set.
|
|
689
|
-
*/
|
|
690
|
-
esolve_id?: number | string;
|
|
623
|
+
interface EsolveColourOptions {
|
|
624
|
+
colour_chart_id?: number | number[];
|
|
691
625
|
}
|
|
692
626
|
|
|
693
|
-
interface
|
|
694
|
-
|
|
695
|
-
|
|
627
|
+
interface EsolveColourRecord {
|
|
628
|
+
id: number;
|
|
629
|
+
colour: string;
|
|
630
|
+
description: string;
|
|
631
|
+
image_name: string;
|
|
632
|
+
image_last_modified: string;
|
|
696
633
|
}
|
|
697
634
|
|
|
698
|
-
declare class
|
|
635
|
+
declare class EsolveColour {
|
|
636
|
+
id: number;
|
|
637
|
+
colour: string;
|
|
638
|
+
description: string;
|
|
639
|
+
private image_name;
|
|
640
|
+
private image_last_modified;
|
|
641
|
+
get image_src(): string;
|
|
642
|
+
constructor(record: Partial<EsolveColourRecord>);
|
|
643
|
+
getImagePath(): string;
|
|
644
|
+
}
|
|
645
|
+
|
|
646
|
+
declare class EsolveColoursService {
|
|
699
647
|
private readonly config;
|
|
700
648
|
private readonly http;
|
|
701
649
|
/**
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
getSpecialTree(special_id: number): Observable<EsolveCategoryTreeItem[]>;
|
|
714
|
-
/**
|
|
715
|
-
* Retrieve the manufacturer tree structure for a specific manufacturer from the eSolve
|
|
716
|
-
* instance and converts it into the correct format
|
|
717
|
-
*
|
|
718
|
-
* @param manufacturer_id Id of the manufacturer to get the tree for
|
|
719
|
-
*
|
|
720
|
-
* @returns Observable containing manufacturer tree data
|
|
721
|
-
*/
|
|
722
|
-
getManufacturerTree(manufacturer_id: number): Observable<EsolveCategoryTreeItem[]>;
|
|
723
|
-
/**
|
|
724
|
-
* Retrieve the details of a category tree item from the eSolve instance and
|
|
725
|
-
* converts it to the correct format.
|
|
726
|
-
*
|
|
727
|
-
* @param options Filter options
|
|
728
|
-
*/
|
|
729
|
-
getCategoryTreeItem(options: EsolveCategoryTreeItemOptions): Observable<EsolveCategoryTreeItem>;
|
|
730
|
-
/**
|
|
731
|
-
* Processes the eSolve tree records and converts them into the correct format.
|
|
732
|
-
*
|
|
733
|
-
* @param tree_records Records to process
|
|
734
|
-
*/
|
|
735
|
-
private processTree;
|
|
736
|
-
private processTreeItem;
|
|
737
|
-
private processID;
|
|
738
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveCategoryTreeService, never>;
|
|
739
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveCategoryTreeService>;
|
|
650
|
+
* Retrieves colour chart details for the provided filter options
|
|
651
|
+
*
|
|
652
|
+
* @param options Filter options
|
|
653
|
+
*
|
|
654
|
+
* @returns An observable of colour details
|
|
655
|
+
*/
|
|
656
|
+
getColours(options?: EsolveColourOptions): Observable<EsolveColour[]>;
|
|
657
|
+
private parseOptions;
|
|
658
|
+
private processColours;
|
|
659
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveColoursService, never>;
|
|
660
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveColoursService>;
|
|
740
661
|
}
|
|
741
662
|
|
|
742
663
|
interface EsolveManufacturerOptions {
|
|
@@ -794,6 +715,42 @@ declare class EsolveManufacturersService {
|
|
|
794
715
|
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveManufacturersService>;
|
|
795
716
|
}
|
|
796
717
|
|
|
718
|
+
type EsolveMaterialPhraseMatchMode = 'contains' | 'not_equals' | 'equals';
|
|
719
|
+
|
|
720
|
+
interface EsolveMaterialOptions {
|
|
721
|
+
type_of_materials_id?: number | number[];
|
|
722
|
+
phrase?: string;
|
|
723
|
+
phrase_match_mode?: EsolveMaterialPhraseMatchMode;
|
|
724
|
+
}
|
|
725
|
+
|
|
726
|
+
interface EsolveMaterialRecord {
|
|
727
|
+
id: number;
|
|
728
|
+
material: string;
|
|
729
|
+
}
|
|
730
|
+
|
|
731
|
+
declare class EsolveMaterial {
|
|
732
|
+
id: number;
|
|
733
|
+
material: string;
|
|
734
|
+
constructor(record?: Partial<EsolveMaterialRecord>);
|
|
735
|
+
}
|
|
736
|
+
|
|
737
|
+
declare class EsolveMaterialsService {
|
|
738
|
+
private readonly config;
|
|
739
|
+
private readonly http;
|
|
740
|
+
/**
|
|
741
|
+
* Retrieves type of materials details for the provided filter options
|
|
742
|
+
*
|
|
743
|
+
* @param options Filter options
|
|
744
|
+
*
|
|
745
|
+
* @returns An observable of material details
|
|
746
|
+
*/
|
|
747
|
+
getMaterials(options?: EsolveMaterialOptions): Observable<EsolveMaterial[]>;
|
|
748
|
+
private parseOptions;
|
|
749
|
+
private processMaterials;
|
|
750
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveMaterialsService, never>;
|
|
751
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveMaterialsService>;
|
|
752
|
+
}
|
|
753
|
+
|
|
797
754
|
interface EsolveRangeRecord {
|
|
798
755
|
id: number;
|
|
799
756
|
range: string;
|
|
@@ -927,478 +884,26 @@ declare class EsolveTopicService {
|
|
|
927
884
|
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveTopicService>;
|
|
928
885
|
}
|
|
929
886
|
|
|
930
|
-
interface
|
|
887
|
+
interface EsolveStockBadgeRecord {
|
|
931
888
|
id: number;
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
document_type?: string;
|
|
938
|
-
area_of_application?: string;
|
|
939
|
-
asset_category?: string;
|
|
940
|
-
asset_sub_category?: string;
|
|
941
|
-
sort_priority?: number;
|
|
942
|
-
created?: string;
|
|
943
|
-
image_name?: string;
|
|
944
|
-
category?: EsolveCategoryTreeItemRecord;
|
|
945
|
-
subcategory?: EsolveCategoryTreeItemRecord;
|
|
946
|
-
manufacturer?: EsolveManufacturerRecord;
|
|
947
|
-
range?: EsolveRangeRecord;
|
|
948
|
-
topics?: EsolveTopicRecord[];
|
|
949
|
-
tags?: EsolveTagRecord[];
|
|
950
|
-
url?: string;
|
|
889
|
+
text: string;
|
|
890
|
+
identifier: string;
|
|
891
|
+
font_colour: string;
|
|
892
|
+
badge_colour: string;
|
|
893
|
+
sort_priority: number;
|
|
951
894
|
}
|
|
952
895
|
|
|
953
|
-
interface
|
|
954
|
-
|
|
955
|
-
|
|
896
|
+
interface EsolveStockCartParameter {
|
|
897
|
+
name: string;
|
|
898
|
+
type: EsolveStockCartParameterInput;
|
|
899
|
+
label: string;
|
|
900
|
+
is_required: boolean;
|
|
901
|
+
options?: string[];
|
|
956
902
|
}
|
|
957
903
|
|
|
958
|
-
interface
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
}
|
|
962
|
-
|
|
963
|
-
declare class EsolveLinkedAsset {
|
|
964
|
-
id: number;
|
|
965
|
-
name: string;
|
|
966
|
-
type: EsolveAssetType;
|
|
967
|
-
description: string;
|
|
968
|
-
src: string;
|
|
969
|
-
private image_name;
|
|
970
|
-
/**
|
|
971
|
-
* Shortcut to `getImagePath()`
|
|
972
|
-
*/
|
|
973
|
-
get image_src(): string;
|
|
974
|
-
constructor(record: EsolveLinkedAssetRecord);
|
|
975
|
-
/**
|
|
976
|
-
* Retrieve image path
|
|
977
|
-
*
|
|
978
|
-
* @returns Image path on CDN, else empty string if no image exists
|
|
979
|
-
*/
|
|
980
|
-
getImagePath(): string;
|
|
981
|
-
}
|
|
982
|
-
|
|
983
|
-
declare class EsolveAsset {
|
|
984
|
-
id: number;
|
|
985
|
-
src: string;
|
|
986
|
-
name: string;
|
|
987
|
-
type?: EsolveAssetType;
|
|
988
|
-
description: string;
|
|
989
|
-
document_number: string;
|
|
990
|
-
document_type: string;
|
|
991
|
-
area_of_application: string;
|
|
992
|
-
asset_category: string;
|
|
993
|
-
asset_sub_category: string;
|
|
994
|
-
sort_priority: number;
|
|
995
|
-
created?: string;
|
|
996
|
-
category?: EsolveCategoryTreeItem;
|
|
997
|
-
subcategory?: EsolveCategoryTreeItem;
|
|
998
|
-
manufacturer?: EsolveManufacturer;
|
|
999
|
-
range?: EsolveRange;
|
|
1000
|
-
topics: EsolveTopic[];
|
|
1001
|
-
tags: EsolveTag[];
|
|
1002
|
-
url: string;
|
|
1003
|
-
private image_name;
|
|
1004
|
-
/**
|
|
1005
|
-
* Shortcut to `getImagePath()`
|
|
1006
|
-
*/
|
|
1007
|
-
get image_src(): string;
|
|
1008
|
-
constructor(record: EsolveAssetRecord);
|
|
1009
|
-
/**
|
|
1010
|
-
* Retrieve image path
|
|
1011
|
-
*
|
|
1012
|
-
* @returns Image path on CDN, else empty string if no image exists
|
|
1013
|
-
*/
|
|
1014
|
-
getImagePath(): string;
|
|
1015
|
-
}
|
|
1016
|
-
|
|
1017
|
-
declare class EsolveAssetsService {
|
|
1018
|
-
private readonly config;
|
|
1019
|
-
private readonly http;
|
|
1020
|
-
getAsset(id: number): Observable<EsolveAsset>;
|
|
1021
|
-
getAssets(options?: EsolveAssetOptions): Observable<EsolveAssetList>;
|
|
1022
|
-
getMediaAssets(options: EsolveMediaAssetOptions): Observable<EsolveAssetList>;
|
|
1023
|
-
getStockAssets(options: EsolveStockAssetOptions): Observable<EsolveAssetList>;
|
|
1024
|
-
private processAsset;
|
|
1025
|
-
private getAssetRecords;
|
|
1026
|
-
private parseOptions;
|
|
1027
|
-
private processAssetLists;
|
|
1028
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveAssetsService, never>;
|
|
1029
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveAssetsService>;
|
|
1030
|
-
}
|
|
1031
|
-
|
|
1032
|
-
interface EsolveSessionData {
|
|
1033
|
-
addresses_id: number;
|
|
1034
|
-
location_id: number;
|
|
1035
|
-
shipping_id: number;
|
|
1036
|
-
clients_id: number;
|
|
1037
|
-
}
|
|
1038
|
-
|
|
1039
|
-
interface EsolveSession {
|
|
1040
|
-
token: string;
|
|
1041
|
-
user_id: number;
|
|
1042
|
-
access_level: number;
|
|
1043
|
-
location_id: number;
|
|
1044
|
-
addresses_id: number;
|
|
1045
|
-
shipping_id: number;
|
|
1046
|
-
clients_id: number;
|
|
1047
|
-
}
|
|
1048
|
-
|
|
1049
|
-
interface EsolveSessionUpdateOptions {
|
|
1050
|
-
user_id?: number;
|
|
1051
|
-
location_id?: number;
|
|
1052
|
-
addresses_id?: number;
|
|
1053
|
-
shipping_id?: number;
|
|
1054
|
-
clients_id?: number;
|
|
1055
|
-
token?: string;
|
|
1056
|
-
expiry_date_unix?: number;
|
|
1057
|
-
grace_unix?: number;
|
|
1058
|
-
}
|
|
1059
|
-
|
|
1060
|
-
declare class EsolveSessionService {
|
|
1061
|
-
private readonly is_browser;
|
|
1062
|
-
private readonly config;
|
|
1063
|
-
private readonly cookieService;
|
|
1064
|
-
private readonly storage_key;
|
|
1065
|
-
private readonly appRef;
|
|
1066
|
-
protected readonly token: i0.WritableSignal<string>;
|
|
1067
|
-
protected readonly user_id: i0.WritableSignal<number>;
|
|
1068
|
-
protected readonly access_level: i0.WritableSignal<number>;
|
|
1069
|
-
protected readonly location_id: i0.WritableSignal<number>;
|
|
1070
|
-
protected readonly addresses_id: i0.WritableSignal<number>;
|
|
1071
|
-
protected readonly shipping_id: i0.WritableSignal<number>;
|
|
1072
|
-
protected readonly clients_id: i0.WritableSignal<number>;
|
|
1073
|
-
protected readonly state_hash: i0.Signal<string>;
|
|
1074
|
-
protected readonly session: i0.Signal<EsolveSession>;
|
|
1075
|
-
private token$;
|
|
1076
|
-
private user_id$;
|
|
1077
|
-
private access_level$;
|
|
1078
|
-
private location_id$;
|
|
1079
|
-
private addresses_id$;
|
|
1080
|
-
private shipping_id$;
|
|
1081
|
-
private clients_id$;
|
|
1082
|
-
private session$;
|
|
1083
|
-
private timer_start;
|
|
1084
|
-
private timer_stop;
|
|
1085
|
-
private expire;
|
|
1086
|
-
private session_end;
|
|
1087
|
-
private app_stable_init$;
|
|
1088
|
-
constructor();
|
|
1089
|
-
isValid(): boolean;
|
|
1090
|
-
getSession(): Observable<EsolveSession>;
|
|
1091
|
-
getSessionValue(): EsolveSession;
|
|
1092
|
-
onSessionEnd(): Observable<void>;
|
|
1093
|
-
onExpire(): Observable<void>;
|
|
1094
|
-
expireSession(): void;
|
|
1095
|
-
getToken(): string;
|
|
1096
|
-
onTokenUpdate(): Observable<string>;
|
|
1097
|
-
updateToken(token: string): void;
|
|
1098
|
-
getUserId(): number;
|
|
1099
|
-
onUserIdUpdate(): Observable<number>;
|
|
1100
|
-
updateUserId(user_id: number): void;
|
|
1101
|
-
getAccessLevel(): number;
|
|
1102
|
-
onAccessLevelUpdate(): Observable<number>;
|
|
1103
|
-
updateAccessLevel(access_level: number): void;
|
|
1104
|
-
getLocationId(): number;
|
|
1105
|
-
onLocationIdUpdate(): Observable<number>;
|
|
1106
|
-
updateLocationId(location_id: number): void;
|
|
1107
|
-
getAddressesId(): number;
|
|
1108
|
-
onAddressesIdUpdate(): Observable<number>;
|
|
1109
|
-
updateAddressesId(addresses_id: number): void;
|
|
1110
|
-
getShippingId(): number;
|
|
1111
|
-
onShippingIdUpdate(): Observable<number>;
|
|
1112
|
-
updateShippingId(shipping_id: number): void;
|
|
1113
|
-
getClientsId(): number;
|
|
1114
|
-
onClientsIdUpdate(): Observable<number>;
|
|
1115
|
-
updateClientsId(clients_id: number): void;
|
|
1116
|
-
getStateHash(): string;
|
|
1117
|
-
stopTimer(): void;
|
|
1118
|
-
startTimer(time: number | Date): Promise<void>;
|
|
1119
|
-
getCachedSession(): string | null;
|
|
1120
|
-
reset(): void;
|
|
1121
|
-
handleSession(session: EsolveSession, expiry_date_unix: number, grace_unix: number): void;
|
|
1122
|
-
handleUpdateSession(options: EsolveSessionUpdateOptions): void;
|
|
1123
|
-
private setStorageKey;
|
|
1124
|
-
private getCache;
|
|
1125
|
-
private setCache;
|
|
1126
|
-
private removeCache;
|
|
1127
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveSessionService, never>;
|
|
1128
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveSessionService>;
|
|
1129
|
-
}
|
|
1130
|
-
|
|
1131
|
-
declare class EsolveSessionMetadataService {
|
|
1132
|
-
private readonly config;
|
|
1133
|
-
private readonly http;
|
|
1134
|
-
private readonly errorHandler;
|
|
1135
|
-
private readonly responseHandler;
|
|
1136
|
-
set(type: string, metadata: any): Observable<EsolveResponseResult>;
|
|
1137
|
-
get<T>(type: string): Observable<T>;
|
|
1138
|
-
delete(type: string): Observable<EsolveResult>;
|
|
1139
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveSessionMetadataService, never>;
|
|
1140
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveSessionMetadataService>;
|
|
1141
|
-
}
|
|
1142
|
-
|
|
1143
|
-
declare enum EsolveEventType {
|
|
1144
|
-
FATAL_SESSION_ERROR = "FATAL_SESSION_ERROR",
|
|
1145
|
-
SESSION_VALIDATION_START = "SESSION_VALIDATION_START",
|
|
1146
|
-
SESSION_VALIDATION_END = "SESSION_VALIDATION_END",
|
|
1147
|
-
CART_ERROR = "CART_ERROR"
|
|
1148
|
-
}
|
|
1149
|
-
|
|
1150
|
-
interface EsolveEventRecord {
|
|
1151
|
-
type: EsolveEventType;
|
|
1152
|
-
message?: string;
|
|
1153
|
-
additional_data?: any;
|
|
1154
|
-
}
|
|
1155
|
-
|
|
1156
|
-
interface EsolveNotificationButtonActionRecord {
|
|
1157
|
-
text: string;
|
|
1158
|
-
module: string;
|
|
1159
|
-
target: EsolveUrlTarget;
|
|
1160
|
-
url: string;
|
|
1161
|
-
}
|
|
1162
|
-
|
|
1163
|
-
interface EsolveNotificationDateRecord {
|
|
1164
|
-
date: string;
|
|
1165
|
-
timestamp: number;
|
|
1166
|
-
}
|
|
1167
|
-
|
|
1168
|
-
interface EsolveNotificationDatesRecord {
|
|
1169
|
-
from: EsolveNotificationDateRecord;
|
|
1170
|
-
to: EsolveNotificationDateRecord;
|
|
1171
|
-
}
|
|
1172
|
-
|
|
1173
|
-
interface EsolveSystemNotificationOptions {
|
|
1174
|
-
exclude_ids?: number[];
|
|
1175
|
-
}
|
|
1176
|
-
|
|
1177
|
-
type EsolveNotificationPosition = 'top' | 'center' | 'bottom' | 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';
|
|
1178
|
-
|
|
1179
|
-
type EsolveNotificationSize = 'small' | 'normal' | 'large';
|
|
1180
|
-
|
|
1181
|
-
type EsolveNotificationType = 'modal' | 'floating_block' | 'toast';
|
|
1182
|
-
|
|
1183
|
-
interface EsolveSystemNotificationTypeRecord {
|
|
1184
|
-
id: number;
|
|
1185
|
-
identifier: string;
|
|
1186
|
-
title: string;
|
|
1187
|
-
type: EsolveNotificationType;
|
|
1188
|
-
position: EsolveNotificationPosition;
|
|
1189
|
-
size: EsolveNotificationSize;
|
|
1190
|
-
system_disable_order: boolean;
|
|
1191
|
-
}
|
|
1192
|
-
|
|
1193
|
-
interface EsolveSystemNotificationRecord {
|
|
1194
|
-
id: number;
|
|
1195
|
-
identifier: string;
|
|
1196
|
-
title: string;
|
|
1197
|
-
message: string;
|
|
1198
|
-
dates?: EsolveNotificationDatesRecord | null;
|
|
1199
|
-
timeout: number;
|
|
1200
|
-
display_every: number;
|
|
1201
|
-
button_actions: EsolveNotificationButtonActionRecord[];
|
|
1202
|
-
type: EsolveSystemNotificationTypeRecord;
|
|
1203
|
-
}
|
|
1204
|
-
|
|
1205
|
-
declare class EsolveEvent {
|
|
1206
|
-
private _type;
|
|
1207
|
-
private _message;
|
|
1208
|
-
private _additional_data?;
|
|
1209
|
-
get type(): EsolveEventType;
|
|
1210
|
-
get message(): string;
|
|
1211
|
-
get additional_data(): any;
|
|
1212
|
-
constructor(record: EsolveEventRecord);
|
|
1213
|
-
}
|
|
1214
|
-
|
|
1215
|
-
declare class EsolveNotificationButtonAction {
|
|
1216
|
-
text: string;
|
|
1217
|
-
url: string;
|
|
1218
|
-
module: string;
|
|
1219
|
-
target: EsolveUrlTarget;
|
|
1220
|
-
constructor(record?: EsolveNotificationButtonActionRecord);
|
|
1221
|
-
}
|
|
1222
|
-
|
|
1223
|
-
declare class EsolveNotificationDates {
|
|
1224
|
-
from: Date;
|
|
1225
|
-
to: Date;
|
|
1226
|
-
constructor(record: EsolveNotificationDatesRecord);
|
|
1227
|
-
}
|
|
1228
|
-
|
|
1229
|
-
declare class EsolveSystemNotificationType {
|
|
1230
|
-
id: number;
|
|
1231
|
-
identifier: string;
|
|
1232
|
-
title: string;
|
|
1233
|
-
system_disable_order: boolean;
|
|
1234
|
-
position: EsolveNotificationPosition;
|
|
1235
|
-
size: EsolveNotificationSize;
|
|
1236
|
-
type: EsolveNotificationType;
|
|
1237
|
-
constructor(record: EsolveSystemNotificationTypeRecord);
|
|
1238
|
-
}
|
|
1239
|
-
|
|
1240
|
-
declare class EsolveSystemNotification {
|
|
1241
|
-
id: number;
|
|
1242
|
-
identifier: string;
|
|
1243
|
-
title: string;
|
|
1244
|
-
message: string;
|
|
1245
|
-
timeout: number;
|
|
1246
|
-
display_every: number;
|
|
1247
|
-
button_actions: EsolveNotificationButtonAction[];
|
|
1248
|
-
type: EsolveSystemNotificationType;
|
|
1249
|
-
dates?: EsolveNotificationDates;
|
|
1250
|
-
constructor(record: EsolveSystemNotificationRecord);
|
|
1251
|
-
}
|
|
1252
|
-
|
|
1253
|
-
declare class EsolveEventTargetService {
|
|
1254
|
-
private readonly listeners;
|
|
1255
|
-
addEventListener(event_name: EsolveEventType, callback: (event: EsolveEvent) => void): void;
|
|
1256
|
-
removeEventListener(event_name: EsolveEventType, callback: (event: EsolveEvent) => void): void;
|
|
1257
|
-
dispatchEvent(event: EsolveEvent | EsolveEventType): void;
|
|
1258
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveEventTargetService, never>;
|
|
1259
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveEventTargetService>;
|
|
1260
|
-
}
|
|
1261
|
-
|
|
1262
|
-
declare class EsolveNotificationsService {
|
|
1263
|
-
private readonly config;
|
|
1264
|
-
private readonly http;
|
|
1265
|
-
getSystemNotifications(options?: EsolveSystemNotificationOptions): Observable<EsolveSystemNotification[]>;
|
|
1266
|
-
private processNotifications;
|
|
1267
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveNotificationsService, never>;
|
|
1268
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveNotificationsService>;
|
|
1269
|
-
}
|
|
1270
|
-
|
|
1271
|
-
interface EsolveAuthGetData {
|
|
1272
|
-
key: string;
|
|
1273
|
-
}
|
|
1274
|
-
|
|
1275
|
-
interface EsolveAuthCheckData extends Partial<EsolveAuthGetData> {
|
|
1276
|
-
key_okay: boolean;
|
|
1277
|
-
}
|
|
1278
|
-
|
|
1279
|
-
type EsolveStockSortField = 'sorting_code' | 'price' | 'name' | 'description' | 'code' | 'created';
|
|
1280
|
-
|
|
1281
|
-
type EsolveErpSalesStockSortField = EsolveStockSortField | 'total' | 'qty' | 'date';
|
|
1282
|
-
|
|
1283
|
-
interface EsolveAdditionalStockImageRecord {
|
|
1284
|
-
id: number;
|
|
1285
|
-
type: string;
|
|
1286
|
-
url: string;
|
|
1287
|
-
name?: string | null;
|
|
1288
|
-
etag?: string | null;
|
|
1289
|
-
key?: string | null;
|
|
1290
|
-
}
|
|
1291
|
-
|
|
1292
|
-
interface EsolveStockBarcodeOptions {
|
|
1293
|
-
barcode: string;
|
|
1294
|
-
barcode_type?: string;
|
|
1295
|
-
}
|
|
1296
|
-
|
|
1297
|
-
type EsolveBarcodeType = 'ean13' | 'qr' | 'code39' | 'code128';
|
|
1298
|
-
|
|
1299
|
-
interface EsolveStockBarcodeRecord {
|
|
1300
|
-
id: number;
|
|
1301
|
-
code: string;
|
|
1302
|
-
barcode_data: string;
|
|
1303
|
-
barcode_type: EsolveBarcodeType;
|
|
1304
|
-
}
|
|
1305
|
-
|
|
1306
|
-
interface EsolveColourOptions {
|
|
1307
|
-
colour_chart_id?: number | number[];
|
|
1308
|
-
}
|
|
1309
|
-
|
|
1310
|
-
interface EsolveColourRecord {
|
|
1311
|
-
id: number;
|
|
1312
|
-
colour: string;
|
|
1313
|
-
description: string;
|
|
1314
|
-
image_name: string;
|
|
1315
|
-
image_last_modified: string;
|
|
1316
|
-
}
|
|
1317
|
-
|
|
1318
|
-
declare class EsolveColour {
|
|
1319
|
-
id: number;
|
|
1320
|
-
colour: string;
|
|
1321
|
-
description: string;
|
|
1322
|
-
private image_name;
|
|
1323
|
-
private image_last_modified;
|
|
1324
|
-
get image_src(): string;
|
|
1325
|
-
constructor(record: Partial<EsolveColourRecord>);
|
|
1326
|
-
getImagePath(): string;
|
|
1327
|
-
}
|
|
1328
|
-
|
|
1329
|
-
declare class EsolveColoursService {
|
|
1330
|
-
private readonly config;
|
|
1331
|
-
private readonly http;
|
|
1332
|
-
/**
|
|
1333
|
-
* Retrieves colour chart details for the provided filter options
|
|
1334
|
-
*
|
|
1335
|
-
* @param options Filter options
|
|
1336
|
-
*
|
|
1337
|
-
* @returns An observable of colour details
|
|
1338
|
-
*/
|
|
1339
|
-
getColours(options?: EsolveColourOptions): Observable<EsolveColour[]>;
|
|
1340
|
-
private parseOptions;
|
|
1341
|
-
private processColours;
|
|
1342
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveColoursService, never>;
|
|
1343
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveColoursService>;
|
|
1344
|
-
}
|
|
1345
|
-
|
|
1346
|
-
type EsolveMaterialPhraseMatchMode = 'contains' | 'not_equals' | 'equals';
|
|
1347
|
-
|
|
1348
|
-
interface EsolveMaterialOptions {
|
|
1349
|
-
type_of_materials_id?: number | number[];
|
|
1350
|
-
phrase?: string;
|
|
1351
|
-
phrase_match_mode?: EsolveMaterialPhraseMatchMode;
|
|
1352
|
-
}
|
|
1353
|
-
|
|
1354
|
-
interface EsolveMaterialRecord {
|
|
1355
|
-
id: number;
|
|
1356
|
-
material: string;
|
|
1357
|
-
}
|
|
1358
|
-
|
|
1359
|
-
declare class EsolveMaterial {
|
|
1360
|
-
id: number;
|
|
1361
|
-
material: string;
|
|
1362
|
-
constructor(record?: Partial<EsolveMaterialRecord>);
|
|
1363
|
-
}
|
|
1364
|
-
|
|
1365
|
-
declare class EsolveMaterialsService {
|
|
1366
|
-
private readonly config;
|
|
1367
|
-
private readonly http;
|
|
1368
|
-
/**
|
|
1369
|
-
* Retrieves type of materials details for the provided filter options
|
|
1370
|
-
*
|
|
1371
|
-
* @param options Filter options
|
|
1372
|
-
*
|
|
1373
|
-
* @returns An observable of material details
|
|
1374
|
-
*/
|
|
1375
|
-
getMaterials(options?: EsolveMaterialOptions): Observable<EsolveMaterial[]>;
|
|
1376
|
-
private parseOptions;
|
|
1377
|
-
private processMaterials;
|
|
1378
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveMaterialsService, never>;
|
|
1379
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveMaterialsService>;
|
|
1380
|
-
}
|
|
1381
|
-
|
|
1382
|
-
interface EsolveStockBadgeRecord {
|
|
1383
|
-
id: number;
|
|
1384
|
-
text: string;
|
|
1385
|
-
identifier: string;
|
|
1386
|
-
font_colour: string;
|
|
1387
|
-
badge_colour: string;
|
|
1388
|
-
sort_priority: number;
|
|
1389
|
-
}
|
|
1390
|
-
|
|
1391
|
-
interface EsolveStockCartParameter {
|
|
1392
|
-
name: string;
|
|
1393
|
-
type: EsolveStockCartParameterInput;
|
|
1394
|
-
label: string;
|
|
1395
|
-
is_required: boolean;
|
|
1396
|
-
options?: string[];
|
|
1397
|
-
}
|
|
1398
|
-
|
|
1399
|
-
interface EsolveStockLeadTimesRecord {
|
|
1400
|
-
max: number;
|
|
1401
|
-
min: number;
|
|
904
|
+
interface EsolveStockLeadTimesRecord {
|
|
905
|
+
max: number;
|
|
906
|
+
min: number;
|
|
1402
907
|
}
|
|
1403
908
|
|
|
1404
909
|
interface EsolveStockLinkedCategoryRecord {
|
|
@@ -1512,7 +1017,35 @@ interface EsolveLinkedStockRecord<T extends EsolveCustomFields = EsolveCustomFie
|
|
|
1512
1017
|
qty: number;
|
|
1513
1018
|
}
|
|
1514
1019
|
|
|
1515
|
-
|
|
1020
|
+
type EsolveStockItemOptionsFieldsSet = 'lite' | 'full' | 'custom' | 'config';
|
|
1021
|
+
|
|
1022
|
+
/**
|
|
1023
|
+
* Shared options controlling which stock field set an endpoint returns.
|
|
1024
|
+
*
|
|
1025
|
+
* Supported by every stock-search endpoint: get-items, get-wishlist,
|
|
1026
|
+
* get-suggested-items, get-recipe-items, get-linked-items and
|
|
1027
|
+
* get-media-linked-items.
|
|
1028
|
+
*
|
|
1029
|
+
* When omitted the endpoint returns the default `lite` field set.
|
|
1030
|
+
*/
|
|
1031
|
+
interface EsolveStockFieldSetOptions {
|
|
1032
|
+
/**
|
|
1033
|
+
* Overrides which field set is returned.
|
|
1034
|
+
*
|
|
1035
|
+
* Note: `full` is only honoured by endpoints that apply listing
|
|
1036
|
+
* identifiers (get-items, get-wishlist, get-recipe-items,
|
|
1037
|
+
* get-media-linked-items). On get-suggested-items and get-linked-items it
|
|
1038
|
+
* degrades to `lite`; use `config` or `custom` there instead.
|
|
1039
|
+
*/
|
|
1040
|
+
override_fields_set?: EsolveStockItemOptionsFieldsSet;
|
|
1041
|
+
/**
|
|
1042
|
+
* Field-config names used when `override_fields_set` is `custom`.
|
|
1043
|
+
* Serialised to a comma-separated list on the wire.
|
|
1044
|
+
*/
|
|
1045
|
+
custom_field_config_names?: string[];
|
|
1046
|
+
}
|
|
1047
|
+
|
|
1048
|
+
interface EsolveMediaStockItemOptions extends EsolveStockFieldSetOptions {
|
|
1516
1049
|
media_id?: number;
|
|
1517
1050
|
media_identifier?: string;
|
|
1518
1051
|
rows?: number;
|
|
@@ -1529,7 +1062,7 @@ interface EsolveRecipeItemRecord<T extends EsolveCustomFields = EsolveCustomFiel
|
|
|
1529
1062
|
qty: number;
|
|
1530
1063
|
}
|
|
1531
1064
|
|
|
1532
|
-
interface EsolveRecipeStockOptions {
|
|
1065
|
+
interface EsolveRecipeStockOptions extends EsolveStockFieldSetOptions {
|
|
1533
1066
|
page?: number;
|
|
1534
1067
|
rows?: number;
|
|
1535
1068
|
sort?: EsolveSort<EsolveStockSortField>;
|
|
@@ -1576,17 +1109,13 @@ interface EsolveStockItemLocationLevelRecord {
|
|
|
1576
1109
|
distance?: number;
|
|
1577
1110
|
}
|
|
1578
1111
|
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
interface EsolveStockItemOptions extends EsolveStockItemBaseOptions {
|
|
1112
|
+
interface EsolveStockItemOptions extends EsolveStockItemBaseOptions, EsolveStockFieldSetOptions {
|
|
1582
1113
|
category_id?: string;
|
|
1583
1114
|
subcategory_id?: number;
|
|
1584
1115
|
manufacturers_id?: number;
|
|
1585
1116
|
ranges_id?: number;
|
|
1586
1117
|
is_active?: boolean;
|
|
1587
1118
|
display_only?: boolean;
|
|
1588
|
-
override_fields_set?: EsolveStockItemOptionsFieldsSet;
|
|
1589
|
-
custom_field_config_names?: string[];
|
|
1590
1119
|
tag_id_list?: number[];
|
|
1591
1120
|
topic_id_list?: number[];
|
|
1592
1121
|
specials_id?: number;
|
|
@@ -2231,7 +1760,7 @@ declare class EsolveStockService<T extends EsolveCustomFields = EsolveCustomFiel
|
|
|
2231
1760
|
*
|
|
2232
1761
|
* @param code Stock item code
|
|
2233
1762
|
*/
|
|
2234
|
-
getLinkedItems(code: string): Observable<EsolveLinkedStockItem<T>[]>;
|
|
1763
|
+
getLinkedItems(code: string, options?: EsolveStockFieldSetOptions): Observable<EsolveLinkedStockItem<T>[]>;
|
|
2235
1764
|
/**
|
|
2236
1765
|
* Retrieve list of stock items on a recipe from the eSolve API
|
|
2237
1766
|
*
|
|
@@ -2249,7 +1778,7 @@ declare class EsolveStockService<T extends EsolveCustomFields = EsolveCustomFiel
|
|
|
2249
1778
|
*
|
|
2250
1779
|
* @param code Stock item code
|
|
2251
1780
|
*/
|
|
2252
|
-
getSuggestedItems(code: string): Observable<EsolveSuggestedStockItem<T>[]>;
|
|
1781
|
+
getSuggestedItems(code: string, options?: EsolveStockFieldSetOptions): Observable<EsolveSuggestedStockItem<T>[]>;
|
|
2253
1782
|
/**
|
|
2254
1783
|
* Retrieves the full image collection of a stock item
|
|
2255
1784
|
*
|
|
@@ -2264,6 +1793,14 @@ declare class EsolveStockService<T extends EsolveCustomFields = EsolveCustomFiel
|
|
|
2264
1793
|
*/
|
|
2265
1794
|
getStockBarcodes(options: EsolveStockBarcodeOptions): Observable<EsolveStockBarcode[]>;
|
|
2266
1795
|
private parseBaseStockItemOptions;
|
|
1796
|
+
/**
|
|
1797
|
+
* Applies the shared field-set options (`override_fields_set` and
|
|
1798
|
+
* `custom_field_config_names`) to the given HTTP params.
|
|
1799
|
+
*
|
|
1800
|
+
* @param params HTTP client parameters
|
|
1801
|
+
* @param options Field set options
|
|
1802
|
+
*/
|
|
1803
|
+
private applyFieldSetOptions;
|
|
2267
1804
|
/**
|
|
2268
1805
|
* Processes the eSolve stock item record and converts it to an object.
|
|
2269
1806
|
*
|
|
@@ -2886,9 +2423,120 @@ declare class EsolveErpDocumentsRequestResult extends EsolveResponseResult {
|
|
|
2886
2423
|
constructor(response: EsolvePostResponseItem);
|
|
2887
2424
|
}
|
|
2888
2425
|
|
|
2889
|
-
declare class EsolveChangePasswordResult extends EsolveResponseResult {
|
|
2890
|
-
password_updated: boolean;
|
|
2891
|
-
constructor(response: EsolvePostResponseItem);
|
|
2426
|
+
declare class EsolveChangePasswordResult extends EsolveResponseResult {
|
|
2427
|
+
password_updated: boolean;
|
|
2428
|
+
constructor(response: EsolvePostResponseItem);
|
|
2429
|
+
}
|
|
2430
|
+
|
|
2431
|
+
interface EsolveSessionData {
|
|
2432
|
+
addresses_id: number;
|
|
2433
|
+
location_id: number;
|
|
2434
|
+
shipping_id: number;
|
|
2435
|
+
clients_id: number;
|
|
2436
|
+
}
|
|
2437
|
+
|
|
2438
|
+
interface EsolveSession {
|
|
2439
|
+
token: string;
|
|
2440
|
+
user_id: number;
|
|
2441
|
+
access_level: number;
|
|
2442
|
+
location_id: number;
|
|
2443
|
+
addresses_id: number;
|
|
2444
|
+
shipping_id: number;
|
|
2445
|
+
clients_id: number;
|
|
2446
|
+
}
|
|
2447
|
+
|
|
2448
|
+
interface EsolveSessionUpdateOptions {
|
|
2449
|
+
user_id?: number;
|
|
2450
|
+
location_id?: number;
|
|
2451
|
+
addresses_id?: number;
|
|
2452
|
+
shipping_id?: number;
|
|
2453
|
+
clients_id?: number;
|
|
2454
|
+
token?: string;
|
|
2455
|
+
expiry_date_unix?: number;
|
|
2456
|
+
grace_unix?: number;
|
|
2457
|
+
}
|
|
2458
|
+
|
|
2459
|
+
declare class EsolveSessionService {
|
|
2460
|
+
private readonly is_browser;
|
|
2461
|
+
private readonly config;
|
|
2462
|
+
private readonly cookieService;
|
|
2463
|
+
private readonly storage_key;
|
|
2464
|
+
private readonly appRef;
|
|
2465
|
+
protected readonly token: i0.WritableSignal<string>;
|
|
2466
|
+
protected readonly user_id: i0.WritableSignal<number>;
|
|
2467
|
+
protected readonly access_level: i0.WritableSignal<number>;
|
|
2468
|
+
protected readonly location_id: i0.WritableSignal<number>;
|
|
2469
|
+
protected readonly addresses_id: i0.WritableSignal<number>;
|
|
2470
|
+
protected readonly shipping_id: i0.WritableSignal<number>;
|
|
2471
|
+
protected readonly clients_id: i0.WritableSignal<number>;
|
|
2472
|
+
protected readonly state_hash: i0.Signal<string>;
|
|
2473
|
+
protected readonly session: i0.Signal<EsolveSession>;
|
|
2474
|
+
private token$;
|
|
2475
|
+
private user_id$;
|
|
2476
|
+
private access_level$;
|
|
2477
|
+
private location_id$;
|
|
2478
|
+
private addresses_id$;
|
|
2479
|
+
private shipping_id$;
|
|
2480
|
+
private clients_id$;
|
|
2481
|
+
private session$;
|
|
2482
|
+
private timer_start;
|
|
2483
|
+
private timer_stop;
|
|
2484
|
+
private expire;
|
|
2485
|
+
private session_end;
|
|
2486
|
+
private app_stable_init$;
|
|
2487
|
+
constructor();
|
|
2488
|
+
isValid(): boolean;
|
|
2489
|
+
getSession(): Observable<EsolveSession>;
|
|
2490
|
+
getSessionValue(): EsolveSession;
|
|
2491
|
+
onSessionEnd(): Observable<void>;
|
|
2492
|
+
onExpire(): Observable<void>;
|
|
2493
|
+
expireSession(): void;
|
|
2494
|
+
getToken(): string;
|
|
2495
|
+
onTokenUpdate(): Observable<string>;
|
|
2496
|
+
updateToken(token: string): void;
|
|
2497
|
+
getUserId(): number;
|
|
2498
|
+
onUserIdUpdate(): Observable<number>;
|
|
2499
|
+
updateUserId(user_id: number): void;
|
|
2500
|
+
getAccessLevel(): number;
|
|
2501
|
+
onAccessLevelUpdate(): Observable<number>;
|
|
2502
|
+
updateAccessLevel(access_level: number): void;
|
|
2503
|
+
getLocationId(): number;
|
|
2504
|
+
onLocationIdUpdate(): Observable<number>;
|
|
2505
|
+
updateLocationId(location_id: number): void;
|
|
2506
|
+
getAddressesId(): number;
|
|
2507
|
+
onAddressesIdUpdate(): Observable<number>;
|
|
2508
|
+
updateAddressesId(addresses_id: number): void;
|
|
2509
|
+
getShippingId(): number;
|
|
2510
|
+
onShippingIdUpdate(): Observable<number>;
|
|
2511
|
+
updateShippingId(shipping_id: number): void;
|
|
2512
|
+
getClientsId(): number;
|
|
2513
|
+
onClientsIdUpdate(): Observable<number>;
|
|
2514
|
+
updateClientsId(clients_id: number): void;
|
|
2515
|
+
getStateHash(): string;
|
|
2516
|
+
stopTimer(): void;
|
|
2517
|
+
startTimer(time: number | Date): Promise<void>;
|
|
2518
|
+
getCachedSession(): string | null;
|
|
2519
|
+
reset(): void;
|
|
2520
|
+
handleSession(session: EsolveSession, expiry_date_unix: number, grace_unix: number): void;
|
|
2521
|
+
handleUpdateSession(options: EsolveSessionUpdateOptions): void;
|
|
2522
|
+
private setStorageKey;
|
|
2523
|
+
private getCache;
|
|
2524
|
+
private setCache;
|
|
2525
|
+
private removeCache;
|
|
2526
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveSessionService, never>;
|
|
2527
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveSessionService>;
|
|
2528
|
+
}
|
|
2529
|
+
|
|
2530
|
+
declare class EsolveSessionMetadataService {
|
|
2531
|
+
private readonly config;
|
|
2532
|
+
private readonly http;
|
|
2533
|
+
private readonly errorHandler;
|
|
2534
|
+
private readonly responseHandler;
|
|
2535
|
+
set(type: string, metadata: any): Observable<EsolveResponseResult>;
|
|
2536
|
+
get<T>(type: string): Observable<T>;
|
|
2537
|
+
delete(type: string): Observable<EsolveResult>;
|
|
2538
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveSessionMetadataService, never>;
|
|
2539
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveSessionMetadataService>;
|
|
2892
2540
|
}
|
|
2893
2541
|
|
|
2894
2542
|
interface EsolveForgotPasswordResponse extends EsolvePostResponseItem {
|
|
@@ -3297,6 +2945,7 @@ interface EsolveLocationRecord<T extends EsolveCustomFields = EsolveCustomFields
|
|
|
3297
2945
|
image_name?: string;
|
|
3298
2946
|
image_last_modified?: string;
|
|
3299
2947
|
custom_fields?: T;
|
|
2948
|
+
sef_name?: string;
|
|
3300
2949
|
}
|
|
3301
2950
|
|
|
3302
2951
|
type EsolveLocationSortField = 'sorting_code' | 'price' | 'name' | 'description' | 'code' | 'created';
|
|
@@ -3348,6 +2997,7 @@ declare class EsolveLocation<T extends EsolveCustomFields = EsolveCustomFields>
|
|
|
3348
2997
|
include_on_enquiries: boolean;
|
|
3349
2998
|
include_on_store_locator: boolean;
|
|
3350
2999
|
website_url: string;
|
|
3000
|
+
sef_name: string;
|
|
3351
3001
|
address: EsolveLocationAddress;
|
|
3352
3002
|
pobox_address: EsolveLocationPOBoxAddress;
|
|
3353
3003
|
contact_info: EsolveLocationContactInfo;
|
|
@@ -4406,9 +4056,7 @@ type EsolveCartItemErrors = {
|
|
|
4406
4056
|
[tempcart_id: number]: EsolveCartItemErrorRecord;
|
|
4407
4057
|
};
|
|
4408
4058
|
|
|
4409
|
-
type
|
|
4410
|
-
|
|
4411
|
-
type EsolveCart = EsolveCartItem[];
|
|
4059
|
+
type EsolveCartItemSortField = 'sorting_code' | 'price' | 'qty' | 'name' | 'description' | 'code' | 'type';
|
|
4412
4060
|
|
|
4413
4061
|
/**
|
|
4414
4062
|
* How a promotion's reward is expressed once qualified.
|
|
@@ -4434,6 +4082,10 @@ type EsolveCartPromotionProgressMode = 'qty' | 'any_one' | 'all';
|
|
|
4434
4082
|
*/
|
|
4435
4083
|
type EsolveCartPromotionProgress = EsolveCartPromotionProgressItem[];
|
|
4436
4084
|
|
|
4085
|
+
type EsolveCartSetAction = 'add' | 'edit' | 'remove';
|
|
4086
|
+
|
|
4087
|
+
type EsolveCart = EsolveCartItem[];
|
|
4088
|
+
|
|
4437
4089
|
type EsolveDeliveryCategoryTotalsMapRecord = Record<string, EsolveDeliveryCategoryTotalsRecord>;
|
|
4438
4090
|
|
|
4439
4091
|
type EsolveDeliveryCategoryTotalsMap = Map<string, EsolveDeliveryCategoryTotals>;
|
|
@@ -4460,107 +4112,523 @@ declare class EsolveCartService {
|
|
|
4460
4112
|
*
|
|
4461
4113
|
* @returns An `Observable` with an array of cart items
|
|
4462
4114
|
*/
|
|
4463
|
-
getCart(): Observable<EsolveCart>;
|
|
4115
|
+
getCart(): Observable<EsolveCart>;
|
|
4116
|
+
/**
|
|
4117
|
+
* Updates the cart by preforming various actions, such as adding, editing or removing items from the cart.
|
|
4118
|
+
*
|
|
4119
|
+
* @param items An array of options to update the cart
|
|
4120
|
+
* @param action The default action to preform
|
|
4121
|
+
*
|
|
4122
|
+
* @returns An `Observable` with an array of responses that gives feedback on the requested changes
|
|
4123
|
+
*/
|
|
4124
|
+
setCart(items: EsolveCartSetItem[], action?: EsolveCartSetAction): Observable<EsolveCartItemResponse[]>;
|
|
4125
|
+
setCartEmpty(type: EsolveTransactionType, additional_where: EsolveAdditionalWhere[]): Observable<EsolveEmptyCartResult>;
|
|
4126
|
+
/**
|
|
4127
|
+
* Retrieves the totals of the cart with all the totals calculated
|
|
4128
|
+
*
|
|
4129
|
+
* @returns An `Observable` with an object containing cart totals
|
|
4130
|
+
*/
|
|
4131
|
+
getTotals(type?: EsolveTransactionType): Observable<EsolveCartTotals>;
|
|
4132
|
+
/**
|
|
4133
|
+
* Retrieves a tracking code for the cart
|
|
4134
|
+
*
|
|
4135
|
+
* @returns An `Observable` with the cart tracking code
|
|
4136
|
+
*/
|
|
4137
|
+
getTrackingCode(): Observable<number>;
|
|
4138
|
+
/**
|
|
4139
|
+
* Get the data of the transaction for the analytics
|
|
4140
|
+
*
|
|
4141
|
+
* @param transaction_id ID of the transaction used in eSolve
|
|
4142
|
+
*
|
|
4143
|
+
* @returns An `Observable` with the analytics data
|
|
4144
|
+
*/
|
|
4145
|
+
getTransactionAnalyticsData<T = any>(transaction_id: number): Observable<EsolveTransactionAnalyticsData<T>>;
|
|
4146
|
+
/**
|
|
4147
|
+
* Initiates checkout of the cart items
|
|
4148
|
+
*
|
|
4149
|
+
* @param type The cart type that needs to be checked out
|
|
4150
|
+
* @param addresses_id The ID of the delivery address
|
|
4151
|
+
* @param shipping_id The ID of the shipping method
|
|
4152
|
+
* @param payment_method_id The ID of the selected payment method
|
|
4153
|
+
* @param location_id The ID of the selected branch from with shipping needs to be calculated
|
|
4154
|
+
* @param comments Additional comments on the cart
|
|
4155
|
+
* @param time_slot The time slot to be used
|
|
4156
|
+
* @param apply_wallet Whether to apply wallet to the order
|
|
4157
|
+
* @param purchase_order_number Custom purchase order to added to transaction
|
|
4158
|
+
*
|
|
4159
|
+
* @returns An `Observable` with the transaction ID
|
|
4160
|
+
*/
|
|
4161
|
+
checkout(type: EsolveTransactionType, addresses_id: number, shipping_id: number, payment_method_id?: number, location_id?: number, comments?: string, time_slot?: EsolveTimeSlotCheckout, apply_wallet?: boolean, purchase_order_number?: string, expected_date?: string): Observable<EsolveCheckoutResult>;
|
|
4162
|
+
getCartAlternatives(): Observable<EsolveCartAlternativesMap>;
|
|
4163
|
+
/**
|
|
4164
|
+
* Retrieves the active promotions the cart has not yet qualified for, with a
|
|
4165
|
+
* ready-to-display indicator message and the structured data behind it.
|
|
4166
|
+
*
|
|
4167
|
+
* The endpoint is read-only — it never applies discounts and never writes to
|
|
4168
|
+
* the cart. Call it whenever the cart changes (the same trigger used for
|
|
4169
|
+
* `getCart` / `getTotals`). A `no_records` soft-error (`records: []`) means
|
|
4170
|
+
* there is nothing to display — not a real failure — and resolves to an
|
|
4171
|
+
* empty array.
|
|
4172
|
+
*
|
|
4173
|
+
* @returns An `Observable` with an array of promotion progress entries
|
|
4174
|
+
*/
|
|
4175
|
+
getCartPromotionProgress(): Observable<EsolveCartPromotionProgress>;
|
|
4176
|
+
/**
|
|
4177
|
+
* Set an alternative stock item to current cart item
|
|
4178
|
+
*
|
|
4179
|
+
* @param id It is used to identify the specific cart item for which the alternative is being set
|
|
4180
|
+
* @param alternative The alternative value that you want to set for a specific cart item.
|
|
4181
|
+
* @returns an Observable of type EsolveResponseResult.
|
|
4182
|
+
*/
|
|
4183
|
+
setCartAlternative(id: number, alternative: string): Observable<EsolveResponseResult>;
|
|
4184
|
+
deleteCartAlternative(id: number): Observable<EsolveResult>;
|
|
4185
|
+
/**
|
|
4186
|
+
* Processes the eSolve tree records
|
|
4187
|
+
*
|
|
4188
|
+
* @param cart_item_records Records to process
|
|
4189
|
+
* @returns An array of processed cart items
|
|
4190
|
+
*/
|
|
4191
|
+
private processCart;
|
|
4192
|
+
/**
|
|
4193
|
+
* Processes the eSolve cart alternatives records
|
|
4194
|
+
*
|
|
4195
|
+
* @param records Records to process
|
|
4196
|
+
*
|
|
4197
|
+
* @returns A `Map` of processed cart alternatives
|
|
4198
|
+
*/
|
|
4199
|
+
private processCartAlternatives;
|
|
4200
|
+
/**
|
|
4201
|
+
* Processes the eSolve cart totals
|
|
4202
|
+
*
|
|
4203
|
+
* @param record Data to process
|
|
4204
|
+
* @returns Processed cart totals
|
|
4205
|
+
*/
|
|
4206
|
+
private processCartTotals;
|
|
4207
|
+
/**
|
|
4208
|
+
* Processes the eSolve cart promotion progress records
|
|
4209
|
+
*
|
|
4210
|
+
* @param records Records to process
|
|
4211
|
+
* @returns An array of processed promotion progress entries
|
|
4212
|
+
*/
|
|
4213
|
+
private processCartPromotionProgress;
|
|
4214
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveCartService, never>;
|
|
4215
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveCartService>;
|
|
4216
|
+
}
|
|
4217
|
+
|
|
4218
|
+
declare class EsolveCategoryTreeItem implements EsolveSeoDetails {
|
|
4219
|
+
type: 'category' | 'subcategory';
|
|
4220
|
+
esolve_id: string | number;
|
|
4221
|
+
parent_id: string;
|
|
4222
|
+
description: string;
|
|
4223
|
+
sef_description: string;
|
|
4224
|
+
short_description: string;
|
|
4225
|
+
sort_priority: number;
|
|
4226
|
+
active: boolean;
|
|
4227
|
+
display_only: boolean;
|
|
4228
|
+
private image_name;
|
|
4229
|
+
id: string;
|
|
4230
|
+
seo_details: EsolveSeoInfo;
|
|
4231
|
+
total_stock?: number;
|
|
4232
|
+
children?: EsolveCategoryTreeItem[];
|
|
4233
|
+
cart_sort: EsolveSort<EsolveCartItemSortField> | null;
|
|
4234
|
+
stock_sort: EsolveSort<EsolveStockSortField> | null;
|
|
4235
|
+
private image_path;
|
|
4236
|
+
get small_image_src(): string;
|
|
4237
|
+
get thumbnail_image_src(): string;
|
|
4238
|
+
get tiny_image_src(): string;
|
|
4239
|
+
constructor(type: 'category' | 'subcategory', esolve_id: string | number, parent_id: string, description: string, sef_description: string, short_description: string, sort_priority: number, active: boolean, display_only: boolean, image_name: string, seo_title: string, seo_keywords: string, seo_description: string, children?: EsolveCategoryTreeItem[], cart_sort?: {
|
|
4240
|
+
sort: EsolveCartItemSortField;
|
|
4241
|
+
order: EsolveSortOrder;
|
|
4242
|
+
}, stock_sort?: {
|
|
4243
|
+
sort: EsolveStockSortField;
|
|
4244
|
+
order: EsolveSortOrder;
|
|
4245
|
+
});
|
|
4246
|
+
getImagePath(image_size: 'small' | 'thumb' | 'tiny'): string;
|
|
4247
|
+
}
|
|
4248
|
+
|
|
4249
|
+
interface EsolveSubcategoryRecord {
|
|
4250
|
+
type: 'subcategory';
|
|
4251
|
+
id: number;
|
|
4252
|
+
menu_id: string;
|
|
4253
|
+
external_system_code: string;
|
|
4254
|
+
location_id: number;
|
|
4255
|
+
description: string;
|
|
4256
|
+
sef_description: string;
|
|
4257
|
+
seo_description: string;
|
|
4258
|
+
sort_priority: number;
|
|
4259
|
+
active: boolean;
|
|
4260
|
+
display_only: boolean;
|
|
4261
|
+
seo_page_title: string;
|
|
4262
|
+
seo_keywords: string;
|
|
4263
|
+
short_description: string;
|
|
4264
|
+
image: string;
|
|
4265
|
+
total_stock?: number;
|
|
4266
|
+
cart_sort?: {
|
|
4267
|
+
sort: EsolveCartItemSortField;
|
|
4268
|
+
order: EsolveSortOrder;
|
|
4269
|
+
};
|
|
4270
|
+
stock_sort?: {
|
|
4271
|
+
sort: EsolveStockSortField;
|
|
4272
|
+
order: EsolveSortOrder;
|
|
4273
|
+
};
|
|
4274
|
+
}
|
|
4275
|
+
|
|
4276
|
+
interface EsolveCategoryRecord {
|
|
4277
|
+
type: 'category';
|
|
4278
|
+
menu_id: string;
|
|
4279
|
+
owner_menu_id: string;
|
|
4280
|
+
description: string;
|
|
4281
|
+
sef_description: string;
|
|
4282
|
+
seo_description: string;
|
|
4283
|
+
sort_priority: number;
|
|
4284
|
+
active: boolean;
|
|
4285
|
+
display_only: boolean;
|
|
4286
|
+
seo_page_title: string;
|
|
4287
|
+
seo_keywords: string;
|
|
4288
|
+
short_description: string;
|
|
4289
|
+
image: string;
|
|
4290
|
+
total_stock?: number;
|
|
4291
|
+
children: (EsolveCategoryRecord | EsolveSubcategoryRecord)[];
|
|
4292
|
+
cart_sort?: {
|
|
4293
|
+
sort: EsolveCartItemSortField;
|
|
4294
|
+
order: EsolveSortOrder;
|
|
4295
|
+
};
|
|
4296
|
+
stock_sort?: {
|
|
4297
|
+
sort: EsolveStockSortField;
|
|
4298
|
+
order: EsolveSortOrder;
|
|
4299
|
+
};
|
|
4300
|
+
}
|
|
4301
|
+
|
|
4302
|
+
interface EsolveCategoryTreeItemRecord {
|
|
4303
|
+
type: 'category' | 'subcategory';
|
|
4304
|
+
id: string | number;
|
|
4305
|
+
parent_id: string;
|
|
4306
|
+
description: string;
|
|
4307
|
+
sef_description: string;
|
|
4308
|
+
short_description: string;
|
|
4309
|
+
sort_priority: number;
|
|
4310
|
+
active: boolean;
|
|
4311
|
+
display_only: boolean;
|
|
4312
|
+
seo_page_title: string;
|
|
4313
|
+
seo_keywords: string;
|
|
4314
|
+
seo_description: string;
|
|
4315
|
+
image: string;
|
|
4316
|
+
total_stock?: number;
|
|
4317
|
+
children?: EsolveCategoryTreeItemRecord[];
|
|
4318
|
+
cart_sort?: {
|
|
4319
|
+
sort: EsolveCartItemSortField;
|
|
4320
|
+
order: EsolveSortOrder;
|
|
4321
|
+
};
|
|
4322
|
+
stock_sort?: {
|
|
4323
|
+
sort: EsolveStockSortField;
|
|
4324
|
+
order: EsolveSortOrder;
|
|
4325
|
+
};
|
|
4326
|
+
}
|
|
4327
|
+
|
|
4328
|
+
interface EsolveCategoryTreeItemOptions {
|
|
4329
|
+
/**
|
|
4330
|
+
* Generated ID. Does not require type to be set.
|
|
4331
|
+
*/
|
|
4332
|
+
id?: string;
|
|
4333
|
+
/**
|
|
4334
|
+
* Type category tree item. Required for if esolve_id or sef_description is set
|
|
4335
|
+
*/
|
|
4336
|
+
type?: 'category' | 'subcategory';
|
|
4464
4337
|
/**
|
|
4465
|
-
*
|
|
4466
|
-
*
|
|
4467
|
-
* @param items An array of options to update the cart
|
|
4468
|
-
* @param action The default action to preform
|
|
4469
|
-
*
|
|
4470
|
-
* @returns An `Observable` with an array of responses that gives feedback on the requested changes
|
|
4338
|
+
* Search engine friendly description. Requires type to be set.
|
|
4471
4339
|
*/
|
|
4472
|
-
|
|
4473
|
-
setCartEmpty(type: EsolveTransactionType, additional_where: EsolveAdditionalWhere[]): Observable<EsolveEmptyCartResult>;
|
|
4340
|
+
sef_description?: string;
|
|
4474
4341
|
/**
|
|
4475
|
-
*
|
|
4476
|
-
*
|
|
4477
|
-
* @returns An `Observable` with an object containing cart totals
|
|
4342
|
+
* ID from eSolve. Requires type to be set.
|
|
4478
4343
|
*/
|
|
4479
|
-
|
|
4344
|
+
esolve_id?: number | string;
|
|
4345
|
+
}
|
|
4346
|
+
|
|
4347
|
+
interface EsolveCategoryIdentifier {
|
|
4348
|
+
type: 'category' | 'subcategory';
|
|
4349
|
+
esolve_id: number | string;
|
|
4350
|
+
}
|
|
4351
|
+
|
|
4352
|
+
declare class EsolveCategoryTreeService {
|
|
4353
|
+
private readonly config;
|
|
4354
|
+
private readonly http;
|
|
4480
4355
|
/**
|
|
4481
|
-
* Retrieves
|
|
4482
|
-
*
|
|
4483
|
-
* @returns An `Observable` with the cart tracking code
|
|
4356
|
+
* Retrieves the category tree from eSolve instance and coverts it to the correct format.
|
|
4484
4357
|
*/
|
|
4485
|
-
|
|
4358
|
+
getCategoryTree(identifier?: string): Observable<EsolveCategoryTreeItem[]>;
|
|
4486
4359
|
/**
|
|
4487
|
-
*
|
|
4360
|
+
* Retrieve the special tree structure for a specific special from the eSolve
|
|
4361
|
+
* instance and converts it into the correct format
|
|
4488
4362
|
*
|
|
4489
|
-
* @param
|
|
4363
|
+
* @param special_id Id of to special to get tree for
|
|
4490
4364
|
*
|
|
4491
|
-
* @returns
|
|
4365
|
+
* @returns Observable containing special tree data
|
|
4492
4366
|
*/
|
|
4493
|
-
|
|
4367
|
+
getSpecialTree(special_id: number): Observable<EsolveCategoryTreeItem[]>;
|
|
4494
4368
|
/**
|
|
4495
|
-
*
|
|
4369
|
+
* Retrieve the manufacturer tree structure for a specific manufacturer from the eSolve
|
|
4370
|
+
* instance and converts it into the correct format
|
|
4496
4371
|
*
|
|
4497
|
-
* @param
|
|
4498
|
-
* @param addresses_id The ID of the delivery address
|
|
4499
|
-
* @param shipping_id The ID of the shipping method
|
|
4500
|
-
* @param payment_method_id The ID of the selected payment method
|
|
4501
|
-
* @param location_id The ID of the selected branch from with shipping needs to be calculated
|
|
4502
|
-
* @param comments Additional comments on the cart
|
|
4503
|
-
* @param time_slot The time slot to be used
|
|
4504
|
-
* @param apply_wallet Whether to apply wallet to the order
|
|
4505
|
-
* @param purchase_order_number Custom purchase order to added to transaction
|
|
4372
|
+
* @param manufacturer_id Id of the manufacturer to get the tree for
|
|
4506
4373
|
*
|
|
4507
|
-
* @returns
|
|
4374
|
+
* @returns Observable containing manufacturer tree data
|
|
4508
4375
|
*/
|
|
4509
|
-
|
|
4510
|
-
getCartAlternatives(): Observable<EsolveCartAlternativesMap>;
|
|
4376
|
+
getManufacturerTree(manufacturer_id: number): Observable<EsolveCategoryTreeItem[]>;
|
|
4511
4377
|
/**
|
|
4512
|
-
*
|
|
4513
|
-
*
|
|
4514
|
-
*
|
|
4515
|
-
* The endpoint is read-only — it never applies discounts and never writes to
|
|
4516
|
-
* the cart. Call it whenever the cart changes (the same trigger used for
|
|
4517
|
-
* `getCart` / `getTotals`). A `no_records` soft-error (`records: []`) means
|
|
4518
|
-
* there is nothing to display — not a real failure — and resolves to an
|
|
4519
|
-
* empty array.
|
|
4378
|
+
* Retrieve the details of a category tree item from the eSolve instance and
|
|
4379
|
+
* converts it to the correct format.
|
|
4520
4380
|
*
|
|
4521
|
-
* @
|
|
4381
|
+
* @param options Filter options
|
|
4522
4382
|
*/
|
|
4523
|
-
|
|
4383
|
+
getCategoryTreeItem(options: EsolveCategoryTreeItemOptions): Observable<EsolveCategoryTreeItem>;
|
|
4524
4384
|
/**
|
|
4525
|
-
*
|
|
4385
|
+
* Processes the eSolve tree records and converts them into the correct format.
|
|
4526
4386
|
*
|
|
4527
|
-
* @param
|
|
4528
|
-
* @param alternative The alternative value that you want to set for a specific cart item.
|
|
4529
|
-
* @returns an Observable of type EsolveResponseResult.
|
|
4387
|
+
* @param tree_records Records to process
|
|
4530
4388
|
*/
|
|
4531
|
-
|
|
4532
|
-
|
|
4389
|
+
private processTree;
|
|
4390
|
+
private processTreeItem;
|
|
4391
|
+
private processID;
|
|
4392
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveCategoryTreeService, never>;
|
|
4393
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveCategoryTreeService>;
|
|
4394
|
+
}
|
|
4395
|
+
|
|
4396
|
+
interface EsolveAssetRecord {
|
|
4397
|
+
id: number;
|
|
4398
|
+
src: string;
|
|
4399
|
+
name: string;
|
|
4400
|
+
type: EsolveAssetType;
|
|
4401
|
+
description: string;
|
|
4402
|
+
document_number?: string;
|
|
4403
|
+
document_type?: string;
|
|
4404
|
+
area_of_application?: string;
|
|
4405
|
+
asset_category?: string;
|
|
4406
|
+
asset_sub_category?: string;
|
|
4407
|
+
sort_priority?: number;
|
|
4408
|
+
created?: string;
|
|
4409
|
+
image_name?: string;
|
|
4410
|
+
category?: EsolveCategoryTreeItemRecord;
|
|
4411
|
+
subcategory?: EsolveCategoryTreeItemRecord;
|
|
4412
|
+
manufacturer?: EsolveManufacturerRecord;
|
|
4413
|
+
range?: EsolveRangeRecord;
|
|
4414
|
+
topics?: EsolveTopicRecord[];
|
|
4415
|
+
tags?: EsolveTagRecord[];
|
|
4416
|
+
url?: string;
|
|
4417
|
+
}
|
|
4418
|
+
|
|
4419
|
+
interface EsolveMediaAssetOptions extends EsolveAssetOptions {
|
|
4420
|
+
media_id?: number;
|
|
4421
|
+
media_identifier?: string;
|
|
4422
|
+
}
|
|
4423
|
+
|
|
4424
|
+
interface EsolveStockAssetOptions extends EsolveAssetOptions {
|
|
4425
|
+
code?: string;
|
|
4426
|
+
sef_name?: string;
|
|
4427
|
+
}
|
|
4428
|
+
|
|
4429
|
+
declare class EsolveLinkedAsset {
|
|
4430
|
+
id: number;
|
|
4431
|
+
name: string;
|
|
4432
|
+
type: EsolveAssetType;
|
|
4433
|
+
description: string;
|
|
4434
|
+
src: string;
|
|
4435
|
+
private image_name;
|
|
4533
4436
|
/**
|
|
4534
|
-
*
|
|
4535
|
-
*
|
|
4536
|
-
* @param cart_item_records Records to process
|
|
4537
|
-
* @returns An array of processed cart items
|
|
4437
|
+
* Shortcut to `getImagePath()`
|
|
4538
4438
|
*/
|
|
4539
|
-
|
|
4439
|
+
get image_src(): string;
|
|
4440
|
+
constructor(record: EsolveLinkedAssetRecord);
|
|
4540
4441
|
/**
|
|
4541
|
-
*
|
|
4542
|
-
*
|
|
4543
|
-
* @param records Records to process
|
|
4442
|
+
* Retrieve image path
|
|
4544
4443
|
*
|
|
4545
|
-
* @returns
|
|
4444
|
+
* @returns Image path on CDN, else empty string if no image exists
|
|
4546
4445
|
*/
|
|
4547
|
-
|
|
4446
|
+
getImagePath(): string;
|
|
4447
|
+
}
|
|
4448
|
+
|
|
4449
|
+
declare class EsolveAsset {
|
|
4450
|
+
id: number;
|
|
4451
|
+
src: string;
|
|
4452
|
+
name: string;
|
|
4453
|
+
type?: EsolveAssetType;
|
|
4454
|
+
description: string;
|
|
4455
|
+
document_number: string;
|
|
4456
|
+
document_type: string;
|
|
4457
|
+
area_of_application: string;
|
|
4458
|
+
asset_category: string;
|
|
4459
|
+
asset_sub_category: string;
|
|
4460
|
+
sort_priority: number;
|
|
4461
|
+
created?: string;
|
|
4462
|
+
category?: EsolveCategoryTreeItem;
|
|
4463
|
+
subcategory?: EsolveCategoryTreeItem;
|
|
4464
|
+
manufacturer?: EsolveManufacturer;
|
|
4465
|
+
range?: EsolveRange;
|
|
4466
|
+
topics: EsolveTopic[];
|
|
4467
|
+
tags: EsolveTag[];
|
|
4468
|
+
url: string;
|
|
4469
|
+
private image_name;
|
|
4548
4470
|
/**
|
|
4549
|
-
*
|
|
4550
|
-
*
|
|
4551
|
-
* @param record Data to process
|
|
4552
|
-
* @returns Processed cart totals
|
|
4471
|
+
* Shortcut to `getImagePath()`
|
|
4553
4472
|
*/
|
|
4554
|
-
|
|
4473
|
+
get image_src(): string;
|
|
4474
|
+
constructor(record: EsolveAssetRecord);
|
|
4555
4475
|
/**
|
|
4556
|
-
*
|
|
4476
|
+
* Retrieve image path
|
|
4557
4477
|
*
|
|
4558
|
-
* @
|
|
4559
|
-
* @returns An array of processed promotion progress entries
|
|
4478
|
+
* @returns Image path on CDN, else empty string if no image exists
|
|
4560
4479
|
*/
|
|
4561
|
-
|
|
4562
|
-
|
|
4563
|
-
|
|
4480
|
+
getImagePath(): string;
|
|
4481
|
+
}
|
|
4482
|
+
|
|
4483
|
+
declare class EsolveAssetsService {
|
|
4484
|
+
private readonly config;
|
|
4485
|
+
private readonly http;
|
|
4486
|
+
getAsset(id: number): Observable<EsolveAsset>;
|
|
4487
|
+
getAssets(options?: EsolveAssetOptions): Observable<EsolveAssetList>;
|
|
4488
|
+
getMediaAssets(options: EsolveMediaAssetOptions): Observable<EsolveAssetList>;
|
|
4489
|
+
getStockAssets(options: EsolveStockAssetOptions): Observable<EsolveAssetList>;
|
|
4490
|
+
private processAsset;
|
|
4491
|
+
private getAssetRecords;
|
|
4492
|
+
private parseOptions;
|
|
4493
|
+
private processAssetLists;
|
|
4494
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveAssetsService, never>;
|
|
4495
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveAssetsService>;
|
|
4496
|
+
}
|
|
4497
|
+
|
|
4498
|
+
declare enum EsolveEventType {
|
|
4499
|
+
FATAL_SESSION_ERROR = "FATAL_SESSION_ERROR",
|
|
4500
|
+
SESSION_VALIDATION_START = "SESSION_VALIDATION_START",
|
|
4501
|
+
SESSION_VALIDATION_END = "SESSION_VALIDATION_END",
|
|
4502
|
+
CART_ERROR = "CART_ERROR"
|
|
4503
|
+
}
|
|
4504
|
+
|
|
4505
|
+
interface EsolveEventRecord {
|
|
4506
|
+
type: EsolveEventType;
|
|
4507
|
+
message?: string;
|
|
4508
|
+
additional_data?: any;
|
|
4509
|
+
}
|
|
4510
|
+
|
|
4511
|
+
interface EsolveNotificationButtonActionRecord {
|
|
4512
|
+
text: string;
|
|
4513
|
+
module: string;
|
|
4514
|
+
target: EsolveUrlTarget;
|
|
4515
|
+
url: string;
|
|
4516
|
+
}
|
|
4517
|
+
|
|
4518
|
+
interface EsolveNotificationDateRecord {
|
|
4519
|
+
date: string;
|
|
4520
|
+
timestamp: number;
|
|
4521
|
+
}
|
|
4522
|
+
|
|
4523
|
+
interface EsolveNotificationDatesRecord {
|
|
4524
|
+
from: EsolveNotificationDateRecord;
|
|
4525
|
+
to: EsolveNotificationDateRecord;
|
|
4526
|
+
}
|
|
4527
|
+
|
|
4528
|
+
interface EsolveSystemNotificationOptions {
|
|
4529
|
+
exclude_ids?: number[];
|
|
4530
|
+
}
|
|
4531
|
+
|
|
4532
|
+
type EsolveNotificationPosition = 'top' | 'center' | 'bottom' | 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';
|
|
4533
|
+
|
|
4534
|
+
type EsolveNotificationSize = 'small' | 'normal' | 'large';
|
|
4535
|
+
|
|
4536
|
+
type EsolveNotificationType = 'modal' | 'floating_block' | 'toast';
|
|
4537
|
+
|
|
4538
|
+
interface EsolveSystemNotificationTypeRecord {
|
|
4539
|
+
id: number;
|
|
4540
|
+
identifier: string;
|
|
4541
|
+
title: string;
|
|
4542
|
+
type: EsolveNotificationType;
|
|
4543
|
+
position: EsolveNotificationPosition;
|
|
4544
|
+
size: EsolveNotificationSize;
|
|
4545
|
+
system_disable_order: boolean;
|
|
4546
|
+
}
|
|
4547
|
+
|
|
4548
|
+
interface EsolveSystemNotificationRecord {
|
|
4549
|
+
id: number;
|
|
4550
|
+
identifier: string;
|
|
4551
|
+
title: string;
|
|
4552
|
+
message: string;
|
|
4553
|
+
dates?: EsolveNotificationDatesRecord | null;
|
|
4554
|
+
timeout: number;
|
|
4555
|
+
display_every: number;
|
|
4556
|
+
button_actions: EsolveNotificationButtonActionRecord[];
|
|
4557
|
+
type: EsolveSystemNotificationTypeRecord;
|
|
4558
|
+
}
|
|
4559
|
+
|
|
4560
|
+
declare class EsolveEvent {
|
|
4561
|
+
private _type;
|
|
4562
|
+
private _message;
|
|
4563
|
+
private _additional_data?;
|
|
4564
|
+
get type(): EsolveEventType;
|
|
4565
|
+
get message(): string;
|
|
4566
|
+
get additional_data(): any;
|
|
4567
|
+
constructor(record: EsolveEventRecord);
|
|
4568
|
+
}
|
|
4569
|
+
|
|
4570
|
+
declare class EsolveNotificationButtonAction {
|
|
4571
|
+
text: string;
|
|
4572
|
+
url: string;
|
|
4573
|
+
module: string;
|
|
4574
|
+
target: EsolveUrlTarget;
|
|
4575
|
+
constructor(record?: EsolveNotificationButtonActionRecord);
|
|
4576
|
+
}
|
|
4577
|
+
|
|
4578
|
+
declare class EsolveNotificationDates {
|
|
4579
|
+
from: Date;
|
|
4580
|
+
to: Date;
|
|
4581
|
+
constructor(record: EsolveNotificationDatesRecord);
|
|
4582
|
+
}
|
|
4583
|
+
|
|
4584
|
+
declare class EsolveSystemNotificationType {
|
|
4585
|
+
id: number;
|
|
4586
|
+
identifier: string;
|
|
4587
|
+
title: string;
|
|
4588
|
+
system_disable_order: boolean;
|
|
4589
|
+
position: EsolveNotificationPosition;
|
|
4590
|
+
size: EsolveNotificationSize;
|
|
4591
|
+
type: EsolveNotificationType;
|
|
4592
|
+
constructor(record: EsolveSystemNotificationTypeRecord);
|
|
4593
|
+
}
|
|
4594
|
+
|
|
4595
|
+
declare class EsolveSystemNotification {
|
|
4596
|
+
id: number;
|
|
4597
|
+
identifier: string;
|
|
4598
|
+
title: string;
|
|
4599
|
+
message: string;
|
|
4600
|
+
timeout: number;
|
|
4601
|
+
display_every: number;
|
|
4602
|
+
button_actions: EsolveNotificationButtonAction[];
|
|
4603
|
+
type: EsolveSystemNotificationType;
|
|
4604
|
+
dates?: EsolveNotificationDates;
|
|
4605
|
+
constructor(record: EsolveSystemNotificationRecord);
|
|
4606
|
+
}
|
|
4607
|
+
|
|
4608
|
+
declare class EsolveEventTargetService {
|
|
4609
|
+
private readonly listeners;
|
|
4610
|
+
addEventListener(event_name: EsolveEventType, callback: (event: EsolveEvent) => void): void;
|
|
4611
|
+
removeEventListener(event_name: EsolveEventType, callback: (event: EsolveEvent) => void): void;
|
|
4612
|
+
dispatchEvent(event: EsolveEvent | EsolveEventType): void;
|
|
4613
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveEventTargetService, never>;
|
|
4614
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveEventTargetService>;
|
|
4615
|
+
}
|
|
4616
|
+
|
|
4617
|
+
declare class EsolveNotificationsService {
|
|
4618
|
+
private readonly config;
|
|
4619
|
+
private readonly http;
|
|
4620
|
+
getSystemNotifications(options?: EsolveSystemNotificationOptions): Observable<EsolveSystemNotification[]>;
|
|
4621
|
+
private processNotifications;
|
|
4622
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveNotificationsService, never>;
|
|
4623
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveNotificationsService>;
|
|
4624
|
+
}
|
|
4625
|
+
|
|
4626
|
+
interface EsolveAuthGetData {
|
|
4627
|
+
key: string;
|
|
4628
|
+
}
|
|
4629
|
+
|
|
4630
|
+
interface EsolveAuthCheckData extends Partial<EsolveAuthGetData> {
|
|
4631
|
+
key_okay: boolean;
|
|
4564
4632
|
}
|
|
4565
4633
|
|
|
4566
4634
|
interface EsolveAuthData {
|
|
@@ -5460,6 +5528,130 @@ declare class EsolvePaymentService {
|
|
|
5460
5528
|
static ɵprov: i0.ɵɵInjectableDeclaration<EsolvePaymentService>;
|
|
5461
5529
|
}
|
|
5462
5530
|
|
|
5531
|
+
interface EsolveEnquiryFormFieldRecordBase {
|
|
5532
|
+
id: number;
|
|
5533
|
+
identifier: string;
|
|
5534
|
+
type: string;
|
|
5535
|
+
label: string;
|
|
5536
|
+
description: string;
|
|
5537
|
+
required: boolean;
|
|
5538
|
+
/**
|
|
5539
|
+
* Fields sharing the same nonzero `layout_row` render together in one
|
|
5540
|
+
* Formly `fieldGroup` row instead of stacked. `0` (the default for every
|
|
5541
|
+
* field predating this) means "own row" — unchanged behavior.
|
|
5542
|
+
*/
|
|
5543
|
+
layout_row: number;
|
|
5544
|
+
}
|
|
5545
|
+
|
|
5546
|
+
interface EsolveEnquiryFormFieldCheckboxRecord extends EsolveEnquiryFormFieldRecordBase {
|
|
5547
|
+
type: 'checkbox';
|
|
5548
|
+
options: {
|
|
5549
|
+
label: string;
|
|
5550
|
+
value: string;
|
|
5551
|
+
}[];
|
|
5552
|
+
}
|
|
5553
|
+
|
|
5554
|
+
interface EsolveEnquiryFormFieldFileRecord extends EsolveEnquiryFormFieldRecordBase {
|
|
5555
|
+
type: 'file';
|
|
5556
|
+
accept: string;
|
|
5557
|
+
}
|
|
5558
|
+
|
|
5559
|
+
/**
|
|
5560
|
+
* A presentational section heading. It collects no answer and should be
|
|
5561
|
+
* rendered as a group title; every field that follows it (in order) belongs
|
|
5562
|
+
* under this heading until the next heading. `required` and `layout_row` do
|
|
5563
|
+
* not apply.
|
|
5564
|
+
*/
|
|
5565
|
+
interface EsolveEnquiryFormFieldHeadingRecord extends EsolveEnquiryFormFieldRecordBase {
|
|
5566
|
+
type: 'heading';
|
|
5567
|
+
presentational: true;
|
|
5568
|
+
}
|
|
5569
|
+
|
|
5570
|
+
interface EsolveEnquiryFormFieldRadioRecord extends EsolveEnquiryFormFieldRecordBase {
|
|
5571
|
+
type: 'radio';
|
|
5572
|
+
options: {
|
|
5573
|
+
label: string;
|
|
5574
|
+
value: string;
|
|
5575
|
+
}[];
|
|
5576
|
+
}
|
|
5577
|
+
|
|
5578
|
+
interface EsolveEnquiryFormFieldSelectRecord extends EsolveEnquiryFormFieldRecordBase {
|
|
5579
|
+
type: 'select';
|
|
5580
|
+
options: {
|
|
5581
|
+
label: string;
|
|
5582
|
+
value: string;
|
|
5583
|
+
}[];
|
|
5584
|
+
}
|
|
5585
|
+
|
|
5586
|
+
interface EsolveEnquiryFormFieldTextRecord extends EsolveEnquiryFormFieldRecordBase {
|
|
5587
|
+
type: 'input' | 'textarea' | 'phone' | 'email';
|
|
5588
|
+
placeholder: string;
|
|
5589
|
+
character_length: number;
|
|
5590
|
+
}
|
|
5591
|
+
|
|
5592
|
+
type EsolveEnquiryFormFieldRecord = EsolveEnquiryFormFieldTextRecord | EsolveEnquiryFormFieldSelectRecord | EsolveEnquiryFormFieldRadioRecord | EsolveEnquiryFormFieldCheckboxRecord | EsolveEnquiryFormFieldFileRecord | EsolveEnquiryFormFieldHeadingRecord;
|
|
5593
|
+
|
|
5594
|
+
interface EsolveEnquiryFormRecord {
|
|
5595
|
+
id: number;
|
|
5596
|
+
identifier: string;
|
|
5597
|
+
title: string;
|
|
5598
|
+
description: string;
|
|
5599
|
+
success_message: string;
|
|
5600
|
+
fields: EsolveEnquiryFormFieldRecord[];
|
|
5601
|
+
}
|
|
5602
|
+
|
|
5603
|
+
interface EsolveEnquiryFormSubmitResult {
|
|
5604
|
+
success: boolean;
|
|
5605
|
+
message: string;
|
|
5606
|
+
invalid_field_identifiers?: string[];
|
|
5607
|
+
}
|
|
5608
|
+
|
|
5609
|
+
declare class EsolveEnquiryFormField {
|
|
5610
|
+
id: number;
|
|
5611
|
+
identifier: string;
|
|
5612
|
+
type: string;
|
|
5613
|
+
label: string;
|
|
5614
|
+
description: string;
|
|
5615
|
+
required: boolean;
|
|
5616
|
+
placeholder: string;
|
|
5617
|
+
character_length: number;
|
|
5618
|
+
options: {
|
|
5619
|
+
label: string;
|
|
5620
|
+
value: string;
|
|
5621
|
+
}[];
|
|
5622
|
+
accept: string;
|
|
5623
|
+
layout_row: number;
|
|
5624
|
+
presentational: boolean;
|
|
5625
|
+
constructor(record?: Partial<EsolveEnquiryFormFieldRecord>);
|
|
5626
|
+
/**
|
|
5627
|
+
* Presentational fields (e.g. section headings) carry no answer and should
|
|
5628
|
+
* be rendered as layout/grouping markers rather than inputs.
|
|
5629
|
+
*/
|
|
5630
|
+
isPresentational(): boolean;
|
|
5631
|
+
}
|
|
5632
|
+
|
|
5633
|
+
declare class EsolveEnquiryFormSubmissionResult {
|
|
5634
|
+
success: boolean;
|
|
5635
|
+
message: string;
|
|
5636
|
+
invalid_field_identifiers: string[];
|
|
5637
|
+
constructor(result: EsolveEnquiryFormSubmitResult);
|
|
5638
|
+
}
|
|
5639
|
+
|
|
5640
|
+
declare class EsolveEnquiryForm {
|
|
5641
|
+
id: number;
|
|
5642
|
+
identifier: string;
|
|
5643
|
+
title: string;
|
|
5644
|
+
description: string;
|
|
5645
|
+
success_message: string;
|
|
5646
|
+
fields: EsolveEnquiryFormField[];
|
|
5647
|
+
constructor(record?: Partial<EsolveEnquiryFormRecord>);
|
|
5648
|
+
private processFields;
|
|
5649
|
+
}
|
|
5650
|
+
|
|
5651
|
+
interface EsolveEnquiryFormSubmitHttpResponse {
|
|
5652
|
+
additional_data: EsolveEnquiryFormSubmitResult;
|
|
5653
|
+
}
|
|
5654
|
+
|
|
5463
5655
|
type EsolveEnquiryResponse = EsolvePostResponseItem;
|
|
5464
5656
|
|
|
5465
5657
|
declare class EsolveEnquiryResult extends EsolveResponseResult {
|
|
@@ -5467,6 +5659,46 @@ declare class EsolveEnquiryResult extends EsolveResponseResult {
|
|
|
5467
5659
|
constructor(response: EsolveEnquiryResponse);
|
|
5468
5660
|
}
|
|
5469
5661
|
|
|
5662
|
+
declare class EsolveEnquiryFormsService {
|
|
5663
|
+
private readonly http;
|
|
5664
|
+
private readonly config;
|
|
5665
|
+
private readonly errorHandler;
|
|
5666
|
+
/**
|
|
5667
|
+
* Fetch an enquiry form definition by its id or string identifier.
|
|
5668
|
+
*
|
|
5669
|
+
* @param params - Either `{ id: number }` or `{ identifier: string }`
|
|
5670
|
+
*
|
|
5671
|
+
* @returns an Observable of type EsolveEnquiryForm
|
|
5672
|
+
*/
|
|
5673
|
+
getEnquiryForm(params: {
|
|
5674
|
+
id: number;
|
|
5675
|
+
} | {
|
|
5676
|
+
identifier: string;
|
|
5677
|
+
}): Observable<EsolveEnquiryForm>;
|
|
5678
|
+
/**
|
|
5679
|
+
* Submit a completed enquiry form.
|
|
5680
|
+
*
|
|
5681
|
+
* Resolves with the submit result — does not reject on validation failure.
|
|
5682
|
+
* Check `result.success` and `result.invalid_field_identifiers` to handle
|
|
5683
|
+
* field-level validation errors without clearing the form.
|
|
5684
|
+
*
|
|
5685
|
+
* Captcha fields (`captcha_key`, `captcha_code`) should be appended to
|
|
5686
|
+
* `form_data` by the caller when captcha is enabled.
|
|
5687
|
+
*
|
|
5688
|
+
* @param params - Either `{ id: number }` or `{ identifier: string }`
|
|
5689
|
+
* @param form_data - Completed form data; file fields appended as `File` objects
|
|
5690
|
+
*
|
|
5691
|
+
* @returns an Observable of type EsolveEnquiryFormSubmissionResult
|
|
5692
|
+
*/
|
|
5693
|
+
submitEnquiryForm(params: {
|
|
5694
|
+
id: number;
|
|
5695
|
+
} | {
|
|
5696
|
+
identifier: string;
|
|
5697
|
+
}, form_data: FormData): Observable<EsolveEnquiryFormSubmissionResult>;
|
|
5698
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveEnquiryFormsService, never>;
|
|
5699
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveEnquiryFormsService>;
|
|
5700
|
+
}
|
|
5701
|
+
|
|
5470
5702
|
declare class EsolveEnquiryService {
|
|
5471
5703
|
private readonly config;
|
|
5472
5704
|
private readonly http;
|
|
@@ -5531,9 +5763,12 @@ declare class EsolveWishlistService {
|
|
|
5531
5763
|
/**
|
|
5532
5764
|
* Retrieves the current wishlist
|
|
5533
5765
|
*
|
|
5766
|
+
* @param options Optional field-set options controlling which stock
|
|
5767
|
+
* fields are returned for each wishlist item
|
|
5768
|
+
*
|
|
5534
5769
|
* @returns An `Observable` with an array of cart items
|
|
5535
5770
|
*/
|
|
5536
|
-
getWishlist(): Observable<EsolveWishlist>;
|
|
5771
|
+
getWishlist(options?: EsolveStockFieldSetOptions): Observable<EsolveWishlist>;
|
|
5537
5772
|
/**
|
|
5538
5773
|
* Updates the wishlist by preforming various actions, such as adding, editing or removing items from the list.
|
|
5539
5774
|
*
|
|
@@ -6142,11 +6377,35 @@ declare class EsolveCompetitionEntryResult extends EsolveResponseResult {
|
|
|
6142
6377
|
constructor(response: EsolveCompetitionEntryResponse);
|
|
6143
6378
|
}
|
|
6144
6379
|
|
|
6380
|
+
interface EsolveCompetitionEntryRecord {
|
|
6381
|
+
id: string;
|
|
6382
|
+
code: string;
|
|
6383
|
+
title: string;
|
|
6384
|
+
submitted_by: string;
|
|
6385
|
+
file_type: 'image' | 'video' | 'audio' | 'text' | 'pdf' | 'pptx' | 'docx';
|
|
6386
|
+
file_url: string;
|
|
6387
|
+
preview_url: string;
|
|
6388
|
+
date_submitted: string;
|
|
6389
|
+
status: 'pending' | 'approved' | 'winner';
|
|
6390
|
+
up_votes: number;
|
|
6391
|
+
down_votes: number;
|
|
6392
|
+
has_voted: boolean;
|
|
6393
|
+
text_content?: string;
|
|
6394
|
+
}
|
|
6395
|
+
|
|
6145
6396
|
interface EsolveCompetitionOptions {
|
|
6146
6397
|
competition_id?: number;
|
|
6147
6398
|
identifier?: string;
|
|
6148
6399
|
}
|
|
6149
6400
|
|
|
6401
|
+
/**
|
|
6402
|
+
* Raw public competition statistics shape returned by the API.
|
|
6403
|
+
*/
|
|
6404
|
+
interface EsolveCompetitionStatsRecord {
|
|
6405
|
+
total_entries: number;
|
|
6406
|
+
total_votes: number;
|
|
6407
|
+
}
|
|
6408
|
+
|
|
6150
6409
|
interface EsolveCompetitionWinnerRecord {
|
|
6151
6410
|
userid: number;
|
|
6152
6411
|
firstname: string;
|
|
@@ -6174,11 +6433,65 @@ interface EsolveCompetitionRecord {
|
|
|
6174
6433
|
audio_attachment: boolean;
|
|
6175
6434
|
video_attachment: boolean;
|
|
6176
6435
|
image_attachment: boolean;
|
|
6436
|
+
document_attachment: boolean;
|
|
6177
6437
|
text: boolean;
|
|
6178
6438
|
display_timer: boolean;
|
|
6439
|
+
enable_voting: boolean;
|
|
6440
|
+
require_approval: boolean;
|
|
6441
|
+
stats: EsolveCompetitionStatsRecord;
|
|
6179
6442
|
winners: EsolveCompetitionWinnerRecord[];
|
|
6180
6443
|
}
|
|
6181
6444
|
|
|
6445
|
+
interface EsolveCompetitionVoteRecord extends EsolvePostResponseItem {
|
|
6446
|
+
entry_id: string;
|
|
6447
|
+
dowhat: 'up' | 'down';
|
|
6448
|
+
up_votes: number;
|
|
6449
|
+
down_votes: number;
|
|
6450
|
+
has_voted: boolean;
|
|
6451
|
+
}
|
|
6452
|
+
|
|
6453
|
+
declare class EsolveCompetitionEntry {
|
|
6454
|
+
id: string;
|
|
6455
|
+
code: string;
|
|
6456
|
+
title: string;
|
|
6457
|
+
submitted_by: string;
|
|
6458
|
+
file_type: EsolveCompetitionEntryRecord['file_type'];
|
|
6459
|
+
file_url: string;
|
|
6460
|
+
preview_url: string;
|
|
6461
|
+
date_submitted: string;
|
|
6462
|
+
status: EsolveCompetitionEntryRecord['status'];
|
|
6463
|
+
up_votes: number;
|
|
6464
|
+
down_votes: number;
|
|
6465
|
+
has_voted: boolean;
|
|
6466
|
+
text_content?: string;
|
|
6467
|
+
constructor(record?: Partial<EsolveCompetitionEntryRecord>);
|
|
6468
|
+
}
|
|
6469
|
+
|
|
6470
|
+
/**
|
|
6471
|
+
* Public competition statistics returned by the `get-competitions.php` service.
|
|
6472
|
+
*/
|
|
6473
|
+
declare class EsolveCompetitionStats implements EsolveCompetitionStatsRecord {
|
|
6474
|
+
/**
|
|
6475
|
+
* Total approved entries submitted to the competition.
|
|
6476
|
+
*/
|
|
6477
|
+
total_entries: number;
|
|
6478
|
+
/**
|
|
6479
|
+
* Total up + down votes cast across all competition entries.
|
|
6480
|
+
*/
|
|
6481
|
+
total_votes: number;
|
|
6482
|
+
constructor(record?: Partial<EsolveCompetitionStatsRecord>);
|
|
6483
|
+
}
|
|
6484
|
+
|
|
6485
|
+
declare class EsolveCompetitionVoteResult extends EsolveResponseResult {
|
|
6486
|
+
success: boolean;
|
|
6487
|
+
entry_id: string;
|
|
6488
|
+
dowhat: 'up' | 'down';
|
|
6489
|
+
up_votes: number;
|
|
6490
|
+
down_votes: number;
|
|
6491
|
+
has_voted: boolean;
|
|
6492
|
+
constructor(record: EsolveCompetitionVoteRecord);
|
|
6493
|
+
}
|
|
6494
|
+
|
|
6182
6495
|
declare class EsolveCompetitionWinner {
|
|
6183
6496
|
/**
|
|
6184
6497
|
* eSolve Generated ID
|
|
@@ -6252,6 +6565,18 @@ declare class EsolveCompetition {
|
|
|
6252
6565
|
* Competition requires text submission
|
|
6253
6566
|
*/
|
|
6254
6567
|
require_text: boolean;
|
|
6568
|
+
/**
|
|
6569
|
+
* Allow document (PDF/PPTX/DOCX) submissions
|
|
6570
|
+
*/
|
|
6571
|
+
require_document: boolean;
|
|
6572
|
+
/**
|
|
6573
|
+
* Whether public voting on entries is enabled for this competition
|
|
6574
|
+
*/
|
|
6575
|
+
enable_voting: boolean;
|
|
6576
|
+
/**
|
|
6577
|
+
* Whether new entries require moderator approval before they appear
|
|
6578
|
+
*/
|
|
6579
|
+
require_approval: boolean;
|
|
6255
6580
|
/**
|
|
6256
6581
|
* List of competition winners
|
|
6257
6582
|
*/
|
|
@@ -6260,6 +6585,10 @@ declare class EsolveCompetition {
|
|
|
6260
6585
|
* Display a count down timer
|
|
6261
6586
|
*/
|
|
6262
6587
|
display_timer: boolean;
|
|
6588
|
+
/**
|
|
6589
|
+
* Public competition statistics (entries and votes)
|
|
6590
|
+
*/
|
|
6591
|
+
stats: EsolveCompetitionStats;
|
|
6263
6592
|
constructor(record?: Partial<EsolveCompetitionRecord>);
|
|
6264
6593
|
}
|
|
6265
6594
|
|
|
@@ -6303,6 +6632,25 @@ declare class EsolveCompetitionsService {
|
|
|
6303
6632
|
* @returns an Observable of type EsolveCompetitionEntryResult
|
|
6304
6633
|
*/
|
|
6305
6634
|
setCompetitionEntry(competitions_id: number, form_data: FormData): Observable<EsolveCompetitionEntryResult>;
|
|
6635
|
+
/**
|
|
6636
|
+
* Retrieve a paginated list of approved entries for a competition.
|
|
6637
|
+
*
|
|
6638
|
+
* @param competitions_id - eSolve ID of the competition.
|
|
6639
|
+
* @param page - 1-based page number (optional).
|
|
6640
|
+
* @param rows - entries per page (optional).
|
|
6641
|
+
*
|
|
6642
|
+
* @returns an Observable of EsolveCompetitionEntry[].
|
|
6643
|
+
*/
|
|
6644
|
+
getCompetitionEntries(competitions_id: number, page?: number, rows?: number): Observable<EsolveCompetitionEntry[]>;
|
|
6645
|
+
/**
|
|
6646
|
+
* Cast or retract a vote on a competition entry.
|
|
6647
|
+
*
|
|
6648
|
+
* @param competition_entry_id - UUID of the entry to vote on.
|
|
6649
|
+
* @param dowhat - `'up'` to upvote (default) or `'down'` to downvote.
|
|
6650
|
+
*
|
|
6651
|
+
* @returns an Observable of EsolveCompetitionVoteResult.
|
|
6652
|
+
*/
|
|
6653
|
+
setCompetitionVote(competition_entry_id: string, dowhat?: 'up' | 'down'): Observable<EsolveCompetitionVoteResult>;
|
|
6306
6654
|
private getCompetitionSingle;
|
|
6307
6655
|
private getCompetitionRecords;
|
|
6308
6656
|
private processCompetition;
|
|
@@ -7019,5 +7367,221 @@ declare class EsolveSettingsService {
|
|
|
7019
7367
|
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveSettingsService>;
|
|
7020
7368
|
}
|
|
7021
7369
|
|
|
7022
|
-
|
|
7023
|
-
|
|
7370
|
+
/**
|
|
7371
|
+
* Suggestion-chip intents the frontend handles locally with no server call.
|
|
7372
|
+
* The server emits these in `suggestions[].intent`; they never appear in the
|
|
7373
|
+
* top-level response `intent` and are never sent back to `set-chat-intent.php`.
|
|
7374
|
+
*/
|
|
7375
|
+
type EsolveChatClientActionIntent = 'view_cart' | 'checkout';
|
|
7376
|
+
|
|
7377
|
+
type EsolveChatDisplayHint = 'grid' | 'multi_grid' | 'list' | 'map' | 'text';
|
|
7378
|
+
|
|
7379
|
+
type EsolveChatIntent = 'product_search' | 'product_catalog' | 'add_to_basket' | 'directions' | 'list_brands' | 'general';
|
|
7380
|
+
|
|
7381
|
+
type EsolveChatIntentRequest = EsolveChatIntentMessageRequest | EsolveChatIntentDispatchRequest;
|
|
7382
|
+
|
|
7383
|
+
/**
|
|
7384
|
+
* "View more" target for a `product_catalog` group, resolved server-side
|
|
7385
|
+
* from the AI's guessed `filters` (`category`/`subcategory`/`brand`/`tag`)
|
|
7386
|
+
* against the store's real taxonomy — see
|
|
7387
|
+
* `ChatIntentDispatcher::resolveGroupLink()` on the esolve side. `null` when
|
|
7388
|
+
* no filter dimension resolved to a real record; the group still renders,
|
|
7389
|
+
* it just has no "View more" link.
|
|
7390
|
+
*
|
|
7391
|
+
* `type` selects which storefront route to build:
|
|
7392
|
+
* - `category`: `/category/:sef`
|
|
7393
|
+
* - `subcategory`: `/category/:parent_sef/subcategory/:sef`
|
|
7394
|
+
* - `brand`: `/brands/:sef`
|
|
7395
|
+
* - `tag`: `/search/tag/:phrase`
|
|
7396
|
+
*
|
|
7397
|
+
* `topic` is intentionally not included — the server does not currently
|
|
7398
|
+
* resolve topic filters to a link (no reliable sef/slug to route to).
|
|
7399
|
+
*/
|
|
7400
|
+
type EsolveChatProductGroupLinkRecord = {
|
|
7401
|
+
type: 'category';
|
|
7402
|
+
sef: string;
|
|
7403
|
+
} | {
|
|
7404
|
+
type: 'subcategory';
|
|
7405
|
+
sef: string;
|
|
7406
|
+
parent_sef: string;
|
|
7407
|
+
} | {
|
|
7408
|
+
type: 'brand';
|
|
7409
|
+
sef: string;
|
|
7410
|
+
} | {
|
|
7411
|
+
type: 'tag';
|
|
7412
|
+
phrase: string;
|
|
7413
|
+
};
|
|
7414
|
+
|
|
7415
|
+
/** The `intent` on a suggestion chip — a server intent (dispatch) or a client-action intent (local). */
|
|
7416
|
+
type EsolveChatSuggestionIntent = EsolveChatIntent | EsolveChatClientActionIntent;
|
|
7417
|
+
|
|
7418
|
+
interface EsolveChatMessage {
|
|
7419
|
+
role: 'user' | 'assistant';
|
|
7420
|
+
content: string;
|
|
7421
|
+
}
|
|
7422
|
+
|
|
7423
|
+
/** Structured chip tap — direct dispatch, no AI round trip. */
|
|
7424
|
+
interface EsolveChatIntentDispatchRequest {
|
|
7425
|
+
/** One of the 5 server intents. Client-action intents are never sent here. */
|
|
7426
|
+
intent: EsolveChatIntent;
|
|
7427
|
+
parameters: Record<string, unknown>;
|
|
7428
|
+
history?: EsolveChatMessage[];
|
|
7429
|
+
/** Chip phrase recorded as the user turn in history. Falls back to parameters.query server-side. */
|
|
7430
|
+
phrase?: string;
|
|
7431
|
+
}
|
|
7432
|
+
|
|
7433
|
+
/** Free-text message — AI classification. */
|
|
7434
|
+
interface EsolveChatIntentMessageRequest {
|
|
7435
|
+
message: string;
|
|
7436
|
+
history: EsolveChatMessage[];
|
|
7437
|
+
context?: string;
|
|
7438
|
+
}
|
|
7439
|
+
|
|
7440
|
+
/**
|
|
7441
|
+
* Raw `{label, items, link}` group shape the `product_catalog` intent
|
|
7442
|
+
* returns in `data` (`display_hint: 'multi_grid'`) — one group per
|
|
7443
|
+
* `parameters.groups` entry the AI resolved a search for. `items` is the
|
|
7444
|
+
* same raw `'lite'` field-set stock row shape `product_search`/
|
|
7445
|
+
* `get-items.php` return; never a bespoke chat-only shape.
|
|
7446
|
+
*/
|
|
7447
|
+
interface EsolveChatProductGroupRecord {
|
|
7448
|
+
/** Group heading (e.g. a category or theme name). Empty string when the server had no label to give — e.g. the legacy single-query fallback. */
|
|
7449
|
+
label: string;
|
|
7450
|
+
items: Partial<EsolveStockBaseRecord>[];
|
|
7451
|
+
/** "View more" target resolved from this group's filters, or `null` when none of them matched a real category/subcategory/brand/tag. */
|
|
7452
|
+
link: EsolveChatProductGroupLinkRecord | null;
|
|
7453
|
+
}
|
|
7454
|
+
|
|
7455
|
+
/**
|
|
7456
|
+
* One quick-reply chip offered after an assistant turn. `intent` is the
|
|
7457
|
+
* routing key — server intents are tapped via
|
|
7458
|
+
* {@link EsolveChatService.dispatchIntent} (no AI round trip); client-action
|
|
7459
|
+
* intents (`view_cart`, `checkout`) are mapped locally by the consumer with
|
|
7460
|
+
* no server call. `query` is the free-text fallback, always present.
|
|
7461
|
+
*/
|
|
7462
|
+
interface EsolveChatSuggestion {
|
|
7463
|
+
/** Short text to show on the chip. */
|
|
7464
|
+
label: string;
|
|
7465
|
+
/** Routing key: a server intent (dispatch) or a client-action intent (local). */
|
|
7466
|
+
intent: EsolveChatSuggestionIntent;
|
|
7467
|
+
/** Intent parameters for structured routing. Empty for client-action chips. */
|
|
7468
|
+
parameters: Record<string, unknown>;
|
|
7469
|
+
/** Free-text fallback message; always present. */
|
|
7470
|
+
query: string;
|
|
7471
|
+
}
|
|
7472
|
+
|
|
7473
|
+
/**
|
|
7474
|
+
* `data` is whatever raw row shape the matched intent's action already
|
|
7475
|
+
* returns server-side — the same `Partial<EsolveStockBaseRecord>`,
|
|
7476
|
+
* `EsolveLocationRecord`, or `Partial<EsolveManufacturerRecord>` shape the
|
|
7477
|
+
* rest of the app builds from `get-items.php` / `get-locations.php` /
|
|
7478
|
+
* `get-manufacturers.php` — never a bespoke chat-only shape. The one
|
|
7479
|
+
* exception is `product_catalog`, whose rows are already grouped
|
|
7480
|
+
* server-side (`{label, items}[]`, `display_hint: 'multi_grid'`) since a
|
|
7481
|
+
* single flat item list can't represent multiple labelled grids.
|
|
7482
|
+
*/
|
|
7483
|
+
interface EsolveChatIntentResponse {
|
|
7484
|
+
intent: EsolveChatIntent;
|
|
7485
|
+
parameters: Record<string, unknown>;
|
|
7486
|
+
reply: string;
|
|
7487
|
+
history: EsolveChatMessage[];
|
|
7488
|
+
data: Partial<EsolveStockBaseRecord>[] | EsolveLocationRecord[] | Partial<EsolveManufacturerRecord>[] | EsolveChatProductGroupRecord[] | [];
|
|
7489
|
+
context: string;
|
|
7490
|
+
display_hint: EsolveChatDisplayHint;
|
|
7491
|
+
suggestions: EsolveChatSuggestion[];
|
|
7492
|
+
}
|
|
7493
|
+
|
|
7494
|
+
/**
|
|
7495
|
+
* One labelled product grid within a `product_catalog` (`multi_grid`) chat
|
|
7496
|
+
* result — e.g. "Under R500", "Best sellers". `items` are built the same way
|
|
7497
|
+
* `EsolveChatIntentResult.items` builds `product_search` results, just
|
|
7498
|
+
* grouped under a label instead of a single flat list. `link` is an optional
|
|
7499
|
+
* "View more" target the consumer can build a route from — `null` when the
|
|
7500
|
+
* server couldn't resolve any of this group's filters to a real
|
|
7501
|
+
* category/subcategory/brand/tag.
|
|
7502
|
+
*/
|
|
7503
|
+
declare class EsolveChatProductGroup {
|
|
7504
|
+
label: string;
|
|
7505
|
+
items: EsolveStockItemBase[];
|
|
7506
|
+
link: EsolveChatProductGroupLinkRecord | null;
|
|
7507
|
+
constructor(record: EsolveChatProductGroupRecord);
|
|
7508
|
+
}
|
|
7509
|
+
|
|
7510
|
+
declare class EsolveChatIntentResult {
|
|
7511
|
+
intent: EsolveChatIntent;
|
|
7512
|
+
parameters: Record<string, unknown>;
|
|
7513
|
+
reply: string;
|
|
7514
|
+
history: EsolveChatMessage[];
|
|
7515
|
+
/**
|
|
7516
|
+
* Raw `'lite'` field-set stock rows — the same shape and model
|
|
7517
|
+
* `get-items.php` results use elsewhere in the app — rather than a
|
|
7518
|
+
* bespoke chat-only item shape. The full StockSearch already runs
|
|
7519
|
+
* server-side regardless, so there's nothing cheaper to build a
|
|
7520
|
+
* duplicate model from.
|
|
7521
|
+
*
|
|
7522
|
+
* Populated for `product_search` and `add_to_basket` only. `product_catalog`
|
|
7523
|
+
* results come back grouped — see {@link groups} — since a flat item list
|
|
7524
|
+
* can't represent multiple labelled grids.
|
|
7525
|
+
*/
|
|
7526
|
+
items: EsolveStockItemBase[];
|
|
7527
|
+
/**
|
|
7528
|
+
* Labelled product grids for the `product_catalog` intent
|
|
7529
|
+
* (`display_hint: 'multi_grid'`) — one StockSearch per group, run
|
|
7530
|
+
* server-side. Empty for every other intent.
|
|
7531
|
+
*/
|
|
7532
|
+
groups: EsolveChatProductGroup[];
|
|
7533
|
+
/** Raw location rows, same shape/model `get-locations.php` results use. */
|
|
7534
|
+
locations: EsolveLocation[];
|
|
7535
|
+
/** Raw manufacturer rows, same shape/model `get-manufacturers.php` results use. */
|
|
7536
|
+
brands: EsolveManufacturer[];
|
|
7537
|
+
/** Pass back as `context` on the next {@link EsolveChatService.sendMessage} call. Empty string when there are no results. */
|
|
7538
|
+
context: string;
|
|
7539
|
+
/** UI rendering hint from the server: `'grid'`, `'multi_grid'`, `'list'`, `'map'`, or `'text'`. */
|
|
7540
|
+
display_hint: EsolveChatDisplayHint;
|
|
7541
|
+
/** Up to 3 quick-reply chips to show after this turn. */
|
|
7542
|
+
suggestions: EsolveChatSuggestion[];
|
|
7543
|
+
constructor(response: EsolveChatIntentResponse);
|
|
7544
|
+
}
|
|
7545
|
+
|
|
7546
|
+
declare class EsolveChatService {
|
|
7547
|
+
private readonly http;
|
|
7548
|
+
private readonly config;
|
|
7549
|
+
private readonly errorHandler;
|
|
7550
|
+
/**
|
|
7551
|
+
* Send a free-text message to the chat assistant (AI classification).
|
|
7552
|
+
*
|
|
7553
|
+
* The caller is responsible for persisting `result.history` and
|
|
7554
|
+
* `result.context` between turns and passing them back on the next call.
|
|
7555
|
+
* The server caps history at 50 messages and summarises automatically.
|
|
7556
|
+
*
|
|
7557
|
+
* @param message The user's message (max 1024 chars; truncated server-side).
|
|
7558
|
+
* @param history History from the previous `EsolveChatIntentResult.history`.
|
|
7559
|
+
* Pass an empty array to start a new conversation.
|
|
7560
|
+
* @param context Pass back `EsolveChatIntentResult.context` from the previous
|
|
7561
|
+
* turn so the AI can answer follow-up questions about results
|
|
7562
|
+
* currently shown on screen. Omit or pass `null` / `''` when
|
|
7563
|
+
* there are no current results. Never stored in history.
|
|
7564
|
+
*/
|
|
7565
|
+
sendMessage(message: string, history?: EsolveChatIntentMessageRequest['history'], context?: string): Observable<EsolveChatIntentResult>;
|
|
7566
|
+
/**
|
|
7567
|
+
* Dispatch a structured suggestion-chip tap directly — no AI round trip.
|
|
7568
|
+
*
|
|
7569
|
+
* Use this when the consumer taps a chip whose `intent` is a server intent
|
|
7570
|
+
* (`product_search`, `product_catalog`, `add_to_basket`, `directions`,
|
|
7571
|
+
* `list_brands`). Client-action intents (`view_cart`, `checkout`) are handled
|
|
7572
|
+
* locally by the consumer and never reach this method.
|
|
7573
|
+
*
|
|
7574
|
+
* @param intent One of the 5 server intents.
|
|
7575
|
+
* @param parameters The chip's `parameters` (sent back verbatim).
|
|
7576
|
+
* @param history History from the previous `EsolveChatIntentResult.history`.
|
|
7577
|
+
* @param phrase The chip's phrase, recorded as the user turn in history.
|
|
7578
|
+
* Omit to let the server fall back to `parameters.query`.
|
|
7579
|
+
*/
|
|
7580
|
+
dispatchIntent(intent: EsolveChatIntent, parameters: Record<string, unknown>, history?: EsolveChatIntentDispatchRequest['history'], phrase?: string): Observable<EsolveChatIntentResult>;
|
|
7581
|
+
private post;
|
|
7582
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<EsolveChatService, never>;
|
|
7583
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<EsolveChatService>;
|
|
7584
|
+
}
|
|
7585
|
+
|
|
7586
|
+
export { ESOLVE_CONNECT_CONFIG, ESOLVE_EURUS_AUTO_LOGIN, EsolveAccountConfirmationResult, EsolveAccountPayment, EsolveAccountService, EsolveAdditionalStockImage, EsolveAddress, EsolveAddressResult, EsolveAffiliate, EsolveAffiliateCheckResult, EsolveAffiliateLinkResult, EsolveAffiliateService, EsolveAlbum, EsolveAlbumImage, EsolveAlbumImageList, EsolveAlbumList, EsolveAlbumsService, EsolveAsset, EsolveAssetsService, EsolveAuthService, EsolveBankingDetails, EsolveBanner, EsolveBannerImage, EsolveBannerImageHotspot, EsolveBannerService, EsolveBannerVideo, EsolveCaptcha, EsolveCaptchaService, EsolveCareer, EsolveCareersService, EsolveCartAlternative, EsolveCartErrorHandlerService, EsolveCartItem, EsolveCartItemError, EsolveCartPromotionProgressItem, EsolveCartPromotionProgressQualifyingItem, EsolveCartService, EsolveCartStockItem, EsolveCartTaxBreakdown, EsolveCartTotals, EsolveCategoryTreeItem, EsolveCategoryTreeService, EsolveCdnSrcDirective, EsolveChangePasswordResult, EsolveChatIntentResult, EsolveChatProductGroup, EsolveChatService, EsolveCheckoutResult, EsolveClientAsset, EsolveClientAssetList, EsolveColour, EsolveColoursService, EsolveCompetition, EsolveCompetitionDates, EsolveCompetitionEntry, EsolveCompetitionEntryResult, EsolveCompetitionStats, EsolveCompetitionVoteResult, EsolveCompetitionWinner, EsolveCompetitionsService, EsolveConfigService, EsolveCookieService, EsolveCountry, EsolveCountryService, EsolveCoupon, EsolveCouponsService, EsolveDeliveriesService, EsolveDelivery, EsolveDeliveryCategoryTotals, EsolveDeliveryList, EsolveDeliveryStatus, EsolveDependantItem, EsolveDeviceService, EsolveEmptyCartResult, EsolveEmptyWishlistResult, EsolveEnquiryForm, EsolveEnquiryFormField, EsolveEnquiryFormSubmissionResult, EsolveEnquiryFormsService, EsolveEnquiryResult, EsolveEnquiryService, EsolveErpDocumentRequest, EsolveErpDocumentsRequestResult, EsolveErrorHandlerService, EsolveEvent, EsolveEventTargetService, EsolveEventType, EsolveFilterFactory, EsolveGenericFilter, EsolveGeocodeAddressResult, EsolveGeocodeCoordsResult, EsolveGeocodeResult, EsolveGeocoderService, EsolveHttpError, EsolveLinkedAsset, EsolveLinkedStockItem, EsolveList, EsolveLocation, EsolveLocationAddress, EsolveLocationContactInfo, EsolveLocationGEO, EsolveLocationList, EsolveLocationPOBoxAddress, EsolveLocationTradingDay, EsolveLocationTradingTimes, EsolveLocationUpdateResult, EsolveLocationsService, EsolveManufacturer, EsolveManufacturersService, EsolveMaterial, EsolveMaterialsService, EsolveMediaStockItem, EsolveMenuItem, EsolveMenuService, EsolveMultipleSelectFilter, EsolveNewsArticle, EsolveNewsArticleAuthor, EsolveNewsArticleList, EsolveNewsGroup, EsolveNewsService, EsolveNewsletterResult, EsolveNotificationButtonAction, EsolveNotificationDates, EsolveNotificationsService, EsolveOtp, EsolveOtpService, EsolveOtpValidation, EsolvePaymentMethod, EsolvePaymentResult, EsolvePaymentService, EsolveRange, EsolveRangeFilter, EsolveRangesService, EsolveRecipeStockItem, EsolveRegistrationResult, EsolveResetPasswordResult, EsolveResponseHandlerService, EsolveResponseResult, EsolveResult, EsolveReview, EsolveReviewList, EsolveReviewResult, EsolveReviewsService, EsolveSearchCleanResult, EsolveSearchResult, EsolveSearchResultItem, EsolveSearchService, EsolveSearchVectorizeResult, EsolveSeoInfo, EsolveSeoService, EsolveSessionAddressUpdateResult, EsolveSessionClientUpdateResult, EsolveSessionMetadataService, EsolveSessionService, EsolveSessionShippingUpdateResult, EsolveSetDeviceResult, EsolveSetNotifyResult, EsolveSettings, EsolveSettingsService, EsolveShippingCost, EsolveShippingCostItem, EsolveShippingMethod, EsolveShippingService, EsolveShippingTotals, EsolveSingleSelectFilter, EsolveSpecial, EsolveSpecialDates, EsolveSpecialImage, EsolveSpecialImageCollection, EsolveSpecialsService, EsolveStatement, EsolveStatementAgeing, EsolveStatementBalances, EsolveStatementTransaction, EsolveStockBadge, EsolveStockBarcode, EsolveStockGroup, EsolveStockGroupItem, EsolveStockImage, EsolveStockImageCollection, EsolveStockItem, EsolveStockItemBase, EsolveStockItemList, EsolveStockItemLocationLevel, EsolveStockLeadTimes, EsolveStockLinkedCategory, EsolveStockPrice, EsolveStockReviewsReport, EsolveStockService, EsolveStockTransactionSales, EsolveSuggestedStockItem, EsolveSupplier, EsolveSuppliersService, EsolveSystemNotification, EsolveSystemNotificationType, EsolveTag, EsolveTagsService, EsolveTimeSlot, EsolveTimeSlotConfig, EsolveTimeSlotDate, EsolveTimeSlotDays, EsolveTimeSlotTimes, EsolveToggleFilter, EsolveTopic, EsolveTopicService, EsolveTransaction, EsolveTransactionAddress, EsolveTransactionAnalyticsData, EsolveTransactionApprovalResult, EsolveTransactionClient, EsolveTransactionDelivery, EsolveTransactionItem, EsolveTransactionItemPrice, EsolveTransactionList, EsolveTransactionLocation, EsolveTransactionPaymentMethod, EsolveTransactionPick, EsolveTransactionShippingMethod, EsolveTransactionTimeSlot, EsolveTransactionUser, EsolveTransactionsService, EsolveUserAccount, EsolveUserAccountBusiness, EsolveUserAccountContact, EsolveUserAccountResult, EsolveUserClientAccount, EsolveUserClientAccountBalances, EsolveUserDevice, EsolveVaultItem, EsolveVaultItemResult, EsolveVoucher, EsolveVouchersService, EsolveWalletBalances, EsolveWalletService, EsolveWalletTransaction, EsolveWalletTransactionsList, EsolveWishlistItem, EsolveWishlistService, NgEsolveConnectModule, esolveAuthInterceptor, esolveHexHash, esolveUnauthorizedErrorInterceptor, isEsolveCdnPath, isFtgCdnPath, isLegacyEsolveCdnPath, processEsolveImageSrc, provideEsolveImageLoader, provideNgEsolveConnect };
|
|
7587
|
+
export type { EsolveAccountConfirmationPostResponseItem, EsolveAccountPaymentRecord, EsolveAccountPaymentsOptions, EsolveAdditionalStockImageRecord, EsolveAdditionalWhere, EsolveAddressPlaceType, EsolveAddressPostData, EsolveAddressRecord, EsolveAddressResponse, EsolveAddressType, EsolveAffiliateCheckRecord, EsolveAffiliateLinkOptions, EsolveAffiliateLinkResponse, EsolveAffiliateRecord, EsolveAffiliatesOptions, EsolveAlbumImageOptions, EsolveAlbumImageRecord, EsolveAlbumImageSize, EsolveAlbumOptions, EsolveAlbumRecord, EsolveAssetList, EsolveAssetOptions, EsolveAssetRecord, EsolveAssetType, EsolveAuthCheckData, EsolveAuthCheckResponse, EsolveAuthData, EsolveAuthGetData, EsolveAuthGetResponse, EsolveAuthResponse, EsolveAuthResponseData, EsolveAuthResult, EsolveBannerImageHotspotCoords, EsolveBannerImageHotspotRecord, EsolveBannerImageRecord, EsolveBannerImageSet, EsolveBannerImageType, EsolveBannerLink, EsolveBannerRecord, EsolveBannerType, EsolveBannerVideoRecord, EsolveCaptchaAction, EsolveCaptchaOptions, EsolveCaptchaRecord, EsolveCardData, EsolveCareerOptions, EsolveCareerRecord, EsolveCareerType, EsolveCareersSortField, EsolveCart, EsolveCartAdditionalParams, EsolveCartAlternativeRecord, EsolveCartAlternativesMap, EsolveCartEmptyResponse, EsolveCartErrors, EsolveCartItemErrorRecord, EsolveCartItemErrors, EsolveCartItemRecord, EsolveCartItemResponse, EsolveCartItemSortField, EsolveCartPromotionProgress, EsolveCartPromotionProgressDiscountType, EsolveCartPromotionProgressItemType, EsolveCartPromotionProgressMode, EsolveCartPromotionProgressQualifyingItemRecord, EsolveCartPromotionProgressRecord, EsolveCartSetAction, EsolveCartSetItem, EsolveCartTotalsRecord, EsolveCategoryIdentifier, EsolveCategoryRecord, EsolveCategoryTreeItemOptions, EsolveCategoryTreeItemRecord, EsolveChatClientActionIntent, EsolveChatDisplayHint, EsolveChatIntent, EsolveChatIntentDispatchRequest, EsolveChatIntentMessageRequest, EsolveChatIntentRequest, EsolveChatIntentResponse, EsolveChatMessage, EsolveChatProductGroupLinkRecord, EsolveChatProductGroupRecord, EsolveChatSuggestion, EsolveChatSuggestionIntent, EsolveCheckoutBody, EsolveCheckoutResponse, EsolveClientAssetRecord, EsolveClientAssetsOptions, EsolveColourOptions, EsolveColourRecord, EsolveCompetitionEntryRecord, EsolveCompetitionOptions, EsolveCompetitionRecord, EsolveCompetitionStatsRecord, EsolveCompetitionVoteRecord, EsolveCompetitionWinnerRecord, EsolveConnectConfig, EsolveCookieOptions, EsolveCountryOptions, EsolveCountryRecord, EsolveCouponRecord, EsolveCouponValidation, EsolveCouponValidationError, EsolveCouponValidationResult, EsolveCouponsCache, EsolveCustomFields, EsolveDeleteResponse, EsolveDeleteResult, EsolveDeliveriesOptions, EsolveDeliveriesSortField, EsolveDeliveryCategoryTotalsMap, EsolveDeliveryCategoryTotalsMapRecord, EsolveDeliveryCategoryTotalsRecord, EsolveDeliveryIntegration, EsolveDeliveryRecord, EsolveDeliveryStatusRecord, EsolveDeliveryStatusType, EsolveDeliveryType, EsolveDependantItemRecord, EsolveDevice, EsolveDeviceType, EsolveEnquiryFormFieldCheckboxRecord, EsolveEnquiryFormFieldFileRecord, EsolveEnquiryFormFieldHeadingRecord, EsolveEnquiryFormFieldRadioRecord, EsolveEnquiryFormFieldRecord, EsolveEnquiryFormFieldRecordBase, EsolveEnquiryFormFieldSelectRecord, EsolveEnquiryFormFieldTextRecord, EsolveEnquiryFormRecord, EsolveEnquiryFormSubmitHttpResponse, EsolveEnquiryFormSubmitResult, EsolveEnquiryResponse, EsolveErpDocumentRequestRecord, EsolveErpSalesStockSortField, EsolveEventRecord, EsolveFilter, EsolveFilterDefinitions, EsolveFilterList, EsolveFilterRecord, EsolveFilterRecordList, EsolveFilterType, EsolveForgotPasswordGetResult, EsolveForgotPasswordResponse, EsolveGenericFilterDefinition, EsolveGeocodeAddressRecord, EsolveGeocodeResponse, EsolveGeocodeResultRecord, EsolveGetResponse, EsolveInsuranceCalculationMethod, EsolveIntegrationType, EsolveLinkedAssetRecord, EsolveLinkedStockRecord, EsolveLocationFilterOptions, EsolveLocationGeoOptions, EsolveLocationImageSize, EsolveLocationOption, EsolveLocationOptions, EsolveLocationRecord, EsolveLocationSortField, EsolveLoginPostResponseItem, EsolveLoginResponse, EsolveLogoutResponse, EsolveManufacturerImageSize, EsolveManufacturerOptions, EsolveManufacturerRecord, EsolveMaterialOptions, EsolveMaterialPhraseMatchMode, EsolveMaterialRecord, EsolveMediaAssetOptions, EsolveMediaStockItemList, EsolveMediaStockItemOptions, EsolveMediaStockItemRecord, EsolveMediaStockSortField, EsolveMenu, EsolveMenuTreeRecord, EsolveNewsArticleAuthorRecord, EsolveNewsArticleOptions, EsolveNewsArticleRecord, EsolveNewsGroupRecord, EsolveNewsletterResponse, EsolveNotificationButtonActionRecord, EsolveNotificationDateRecord, EsolveNotificationDatesRecord, EsolveNotificationPosition, EsolveNotificationSize, EsolveNotificationType, EsolveOtpAction, EsolveOtpOptions, EsolveOtpRecord, EsolveOtpValidationRecord, EsolvePaymentFormInput, EsolvePaymentMethodOptions, EsolvePaymentMethodRecord, EsolvePaymentRedirectLinks, EsolvePaymentResponse, EsolvePaymentSetBody, EsolvePaymentStatus, EsolvePickStatusType, EsolvePostResponseItem, EsolvePostResponseStatus, EsolveRangeFilterDefinition, EsolveRangeFilterRecord, EsolveRangeFilterType, EsolveRangeOptions, EsolveRangeRecord, EsolveRecipeItemRecord, EsolveRecipeStockOptions, EsolveRegistrationData, EsolveRegistrationPostResponseItem, EsolveResponse, EsolveResponseLogItem, EsolveReviewListRecord, EsolveReviewOptions, EsolveReviewRecord, EsolveReviewReport, EsolveReviewResponse, EsolveReviewSortField, EsolveReviewUser, EsolveSearchAuthStatus, EsolveSearchAuthStatusType, EsolveSearchBillingRequest, EsolveSearchBillingResponse, EsolveSearchBillingTotal, EsolveSearchCleanResponse, EsolveSearchRequest, EsolveSearchResponse, EsolveSearchResultRecord, EsolveSearchVectorizeGetRequest, EsolveSearchVectorizeGetResponse, EsolveSearchVectorizeItem, EsolveSearchVectorizeRequest, EsolveSearchVectorizeResponse, EsolveSelectFilter, EsolveSelectFilterRecord, EsolveSelectFilterType, EsolveSeoDetails, EsolveServiceProvider, EsolveSession, EsolveSessionData, EsolveSessionUpdateOptions, EsolveSetResponse, EsolveSettingsRecord, EsolveShippingCalculationMethod, EsolveShippingCostItemRecord, EsolveShippingCostRecord, EsolveShippingLocation, EsolveShippingMethodOptions, EsolveShippingMethodRecord, EsolveSort, EsolveSortOrder, EsolveSpecialImageCollectionRecord, EsolveSpecialImageRecord, EsolveSpecialOptions, EsolveSpecialRecord, EsolveStatementAgeingRecord, EsolveStatementBalancesRecord, EsolveStatementRecord, EsolveStatementTransactionRecord, EsolveStockAssetOptions, EsolveStockBadgeRecord, EsolveStockBarcodeOptions, EsolveStockBarcodeRecord, EsolveStockBaseRecord, EsolveStockCartParameter, EsolveStockCartParameterInput, EsolveStockFieldSetOptions, EsolveStockFilterOptions, EsolveStockGroupItemRecord, EsolveStockHistorySortField, EsolveStockImageCollectionRecord, EsolveStockImageSize, EsolveStockItemBaseOptions, EsolveStockItemHistoryOptions, EsolveStockItemLocationLevelRecord, EsolveStockItemOptions, EsolveStockLeadTimesRecord, EsolveStockLinkedCategoryRecord, EsolveStockRecord, EsolveStockReviewsReportRecord, EsolveStockSortField, EsolveStockType, EsolveStockUnitOfMeasure, EsolveSubcategoryRecord, EsolveSupplierOptions, EsolveSupplierRecord, EsolveSystemNotificationOptions, EsolveSystemNotificationRecord, EsolveSystemNotificationTypeRecord, EsolveTagOptions, EsolveTagPhraseMatchMode, EsolveTagRecord, EsolveTimeSlotCheckout, EsolveTimeSlotConfigRecord, EsolveTimeSlotDateRecord, EsolveTimeSlotDaysRecord, EsolveTimeSlotRecord, EsolveTimeSlotTimesRecord, EsolveToggleFilterType, EsolveTopicRecord, EsolveTrackingCode, EsolveTranactionApproval, EsolveTransactionAnalyticsDataRecord, EsolveTransactionApprovalState, EsolveTransactionClientRecord, EsolveTransactionItemRecord, EsolveTransactionLocationRecord, EsolveTransactionOptions, EsolveTransactionPaymentMethodRecord, EsolveTransactionRecord, EsolveTransactionSalesStockItemOptions, EsolveTransactionShippingMethodRecord, EsolveTransactionSortField, EsolveTransactionTimeSlotRecord, EsolveTransactionType, EsolveTransactionUserRecord, EsolveUrlTarget, EsolveUserAccountData, EsolveUserAccountRecord, EsolveUserClientAccountBalancesRecord, EsolveUserClientAccountRecord, EsolveUserDeviceOptions, EsolveUserDeviceRecord, EsolveValidateOtpResponse, EsolveVaultRecord, EsolveVaultResponse, EsolveVoucherRecord, EsolveVoucherValidation, EsolveVoucherValidationError, EsolveVoucherValidationResult, EsolveVouchersCache, EsolveWalletBalancesRecord, EsolveWalletCashOutOptions, EsolveWalletCashOutResponse, EsolveWalletTransactionOptions, EsolveWalletTransactionRecord, EsolveWalletTransactionType, EsolveWishlist, EsolveWishlistItemRecord, EsolveWishlistItemResponse, EsolveWishlistSetAction, EsolveWishlistSetItem };
|