sgc-share-lib
Version:
Share the basics Models for create custom SGC UI Components. This library implements the basic data structure used to describe SGC graphics components.
747 lines (746 loc) • 28 kB
TypeScript
import { HttpClient, HttpContext, HttpHeaders, HttpParams } from '@angular/common/http';
import { EventEmitter } from '@angular/core';
import { BehaviorSubject, Observable, Subject } from 'rxjs';
import * as i0 from "@angular/core";
/**
*
*/
export declare enum TypeCrudView {
LIST = 0,
CREATE = 1,
EDIT = 2,
IMPORT = 3,
REPORT = 4,
STATS = 5
}
/**
*
*/
export interface TOptionListeSelectValues {
value: any;
label: string;
data?: any;
items?: Array<TOptionListeSelectValues>;
}
export declare enum TypeFieldFormEdit {
TEXTE = "TEXT",
TEXTE_MULTILIGNE = "TEXT_MULTILINE",
TEXTE_SECRET = "TEXT_SECRET",
NOMBRE = "NUMERIC",
DATE = "DATE",
DATE_HEURE = "DATE_HEURE",
HEURE = "HEURE",
BOOLEEN = "BOOLEAN",
SELECT_VALUE = "SELECT_VALUE",
LISTE_OBJECT = "LIST_OBJECT",
FILE = "FILE"
}
export declare enum TExportFormat {
PDF = "pdf",
EXCEL = "xlsx",
CSV = "csv"
}
export declare function getListeTypeExportFormat(): Array<TOptionListeSelectValues>;
export declare enum TExportPageOrientation {
PORTRAIT = "0",
LANDSCAPE = "1"
}
export declare function getListeTypeExportOrientation(): Array<TOptionListeSelectValues>;
export declare enum TExportHeaderDataValueFrom {
FIELD_NAME = "name",
FIELD_LABEL = "label"
}
export declare function getListeTypeExportHeaderDataValueFrom(): Array<TOptionListeSelectValues>;
export interface TOptionExportData {
exportFormat: TExportFormat;
exportPageOrientation: TExportPageOrientation;
exportHeaderDataValueFrom: TExportHeaderDataValueFrom;
exportListeColsData: Array<string>;
exportShowRowNumber: boolean;
}
export declare enum TImportFormat {
EXCEL = "xlsx",
EXCEL_OLD = "xls",
CSV = "csv"
}
export interface TOptionImportData {
importFormat?: TImportFormat;
selectedSheetXlsName?: string;
editSelectedSheetXlsName?: string;
listeSheetXlsNames: Array<string>;
xlsRowHeaderIndex?: number;
startRowImportIndex: number;
maxRowsImport: number;
}
export interface TOptionFileUploadDownload {
saveInDB: boolean;
autoRenameFile: boolean;
fileSvrName?: string;
baseSvrPath?: string;
dbSrcTableName?: string;
dbSrcColumnName?: string;
typeFileName?: string;
fileToReplace?: string;
}
export declare function getListeTypeImportFormat(): Array<TOptionListeSelectValues>;
export declare enum TypeFileImportExportNames {
WORD = "application/msword",
WORD_OLD = "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
EXCEL = "application/vnd.ms-excel",
EXCEL_OLD = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
CSV = "text/csv",
PDF = "application/pdf",
IMAGE_PNG = "image/png",
IMAGE_JPEG = "image/jpeg"
}
export declare function getListeTypeImportExportNames(): Array<TOptionListeSelectValues>;
export interface TRowGrilleFieldsFormEdit {
indexRow: number;
listeFieldsRow: TListeFieldFormEditData;
}
export interface TGrilleFieldsFormEdit {
idGrilleFields: string;
modeleRowFields: TRowGrilleFieldsFormEdit;
listeRows: Array<TRowGrilleFieldsFormEdit>;
showHeader: boolean;
showColumnHeader: boolean;
showFooter: boolean;
showAddButton: boolean;
showRemoveColumnOption: boolean;
lastIndexRowFields: number;
isHide?: () => boolean;
}
export declare enum TypeHidePasswordSymbol {
ASTERISK = "*",
DOT = "."
}
/** Structure des données pour un composant UI basique */
export interface TFieldFormEditData {
name?: string;
value?: any;
showLabel?: boolean;
label?: string;
required: string | boolean;
requiredMsg?: string;
disabled?: boolean;
classCssStyle?: string;
typeFieldForm: TypeFieldFormEdit;
useInCreateView?: boolean;
useInEditView?: boolean;
useInImportView?: boolean;
isDisabled?: () => boolean;
isHide?: () => boolean;
onChange?: (event?: any) => void;
isDataValidate?: () => boolean;
minLength?: number;
maxLength?: number;
showPrefixIcon?: boolean;
prefixIcon?: string;
showSuffixIcon?: boolean;
suffixIcon?: string;
showPrefixText?: boolean;
prefixText?: string;
showSuffixText?: boolean;
suffixText?: string;
cols?: number;
rows?: number;
showSpinner?: boolean;
hidePassword?: boolean;
hidePasswordSymbol?: TypeHidePasswordSymbol;
dateFormat?: string;
dateSepFormat?: string;
showTime?: boolean;
selectMultivalue?: boolean;
listeSelectValues?: Array<TOptionListeSelectValues>;
useApiToLoadSelectValues?: boolean;
apiSelectFieldLabel?: string;
apiSelectFieldValue?: string;
apiSelect_SVC_getItems?: CrudDataService_ListView<any>;
initFileUploadDownloadOptionsFromValue?: boolean;
fileDownloadIcon?: string;
enableFileUploadDelete?: boolean;
onDeleteFileUpload?: (event?: any) => void;
fileUploadDowloadOption?: TOptionFileUploadDownload;
defaultBasePath?: string;
fileToUpload?: Blob;
rowNumberInForm?: number;
indexInRow?: number;
widthInResponsiveGridWiew?: number;
grilleFields?: TGrilleFieldsFormEdit;
}
export type TListeFieldFormEditData = Array<TFieldFormEditData>;
export declare const TFieldFormEditDefault: TFieldFormEditData;
export declare class BaseFieldFormEditUI {
data: TFieldFormEditData;
dataChange: EventEmitter<TFieldFormEditData>;
isDisabled: () => boolean;
getLabel: () => string;
isHide: () => boolean;
/*****************************************************/
useField_TEXT(): boolean;
useField_PASSWORD(): boolean;
useField_TEXTAREA(): boolean;
useField_NUMBER(): boolean;
useField_DATE(): boolean;
useField_DATEHEURE(): boolean;
useField_HEURE(): boolean;
static ɵfac: i0.ɵɵFactoryDeclaration<BaseFieldFormEditUI, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<BaseFieldFormEditUI, "sgc-ng-baseui", never, { "data": { "alias": "data"; "required": false; }; }, { "dataChange": "dataChange"; }, never, never, false, never>;
}
export interface LabelSeparator_Model {
labelAlign?: H_ALIGN_CONSTANT;
css_fontweight?: FONTWEIGHT_CONSTANT;
css_textcolor?: string;
css_fontsize?: number;
}
export declare const Min_WidthFieldInResponsiveGridWiew: number;
export declare const Max_WidthFieldInResponsiveGridWiew: number;
export declare const DefaultRowGapBetweenFields: number;
export declare const DefaultRowHeight: number;
export declare class TGroupFieldFormEdit {
idOrder?: number;
label?: string;
showLabel: boolean;
showBorder: boolean;
private _listeFiedsForm;
get listeFiedsForm(): TListeFieldFormEditData;
listeGrilleFiedsForm?: Array<TGrilleFieldsFormEdit>;
classCssStyle?: string;
iconSeparator?: string;
css_titleColor?: string;
css_backgroundColor?: string;
rowGapBetweenFields?: number;
rowHeight?: number;
labelSeparatorParam?: LabelSeparator_Model;
isHide?: () => boolean;
constructor(myIdOrder?: number, myLabel?: string, myShowLabel?: boolean, myShowBorder?: boolean);
addFieldsToGroup(listeFields: TListeFieldFormEditData): void;
}
export type TListeGroupFieldFormEdit = Array<TGroupFieldFormEdit>;
export declare class TFormEdit<TDataCreate, TDataEdit> {
private _listeGroupeFields;
get listeGroupeFields(): TListeGroupFieldFormEdit;
listeFormFils?: Array<TFormEdit<TDataCreate, TDataEdit>>;
private _listeAllFieldsGroup;
constructor();
addGridFieldsToGroup(group: TGroupFieldFormEdit, grilleFields: TGrilleFieldsFormEdit): void;
addGroupToForm(group: TGroupFieldFormEdit): void;
getValueOfFieldForm(nameField: string | undefined): any;
setBlobValueOfFieldForm(listeBlobFields: TListeBlobField, nameField: string | undefined): void;
setValueOfFieldForm(nameField: string | undefined, value: any): void;
}
export declare function typeDataIs_TEXTE(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_TEXTE_SECRET(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_TEXTE_MULTILIGNE(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_NOMBRE(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_BOOLEEN(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_DATE(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_DATEHEURE(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_HEURE(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_SELECTVALUE(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_FILEINPUT(fieldform: TFieldFormEditData): boolean;
export declare function typeDataIs_LISTE_OBJECT(fieldform: TFieldFormEditData): boolean;
export declare function useField_TEXT(fieldform: TFieldFormEditData): boolean;
export declare function useField_PASSWORD(fieldform: TFieldFormEditData): boolean;
export declare function useField_TEXTAREA(fieldform: TFieldFormEditData): boolean;
export declare function useField_NUMBER(fieldform: TFieldFormEditData): boolean;
export declare function useField_DATE(fieldform: TFieldFormEditData): boolean;
export declare function useField_DATEHEURE(fieldform: TFieldFormEditData): boolean;
export declare function useField_HEURE(fieldform: TFieldFormEditData): boolean;
export declare function useField_SELECTVALUE(fieldform: TFieldFormEditData): boolean;
export declare function useField_FILEINPUT(fieldform: TFieldFormEditData): boolean;
export declare enum FONTWEIGHT_CONSTANT {
FW_100 = 100,
FW_200 = 200,
FW_300 = 300,
FW_400_NORMAL = 400,
FW_500 = 500,
FW_600 = 600,
FW_700_BOLD = 700,
FW_800 = 800,
FW_900 = 900
}
export declare enum H_ALIGN_CONSTANT {
LEFT = "left",
CENTER = "center",
RIGHT = "right"
}
export interface ReponseAPI<TypeData> {
data: TypeData;
message: string;
reponseOK: boolean;
}
export interface RowDataImportValidator<TDataType> {
data: TDataType;
statusOk: boolean;
errMsg: string;
}
export interface FieldDataImport {
fieldName: string;
numeroOrdre: number;
widthInPercent: number;
}
export interface ExportListDataParams {
title: string;
useLandscape: boolean;
useHeaderDataFieldName: boolean;
addNumeroOrdre: boolean;
listeColsData: Array<string>;
periodeReference: string;
}
export interface ResponseResolveCrudList {
response: any;
}
export interface PaginateData<TypeData> {
currentPage: number;
totalRecords: number;
totalPageRecords: number;
pageData: TypeData;
}
export interface PaginateReponseAPI<TypeData> {
data: PaginateData<TypeData>;
message: string;
reponseOK: boolean;
}
export declare enum Enum_FilterMatchMode {
EXACT = "EXACT",
CONTAINS = "CONTAINS",
STARTS_WITH = "START",
ENDS_WITH = "END"
}
export declare enum Enum_FilterOperator {
EQUALS = "eq",
CONTAINS = "contains",
STARTS_WITH = "startWith",
ENDS_WITH = "endWith",
DATE_IS = "date_is",
GREATER_THAN = "gt",
GREATER_THAN_OR_EQUAL_TO = "gte",
LESS_THAN = "lt",
LESS_THAN_OR_EQUAL_TO = "lte",
BETWEEN = "between",
IN = "in",
LIKE = "like"
}
export declare enum TypeFieldDataView {
TEXTE = "TEXT",
TEXTE_SECRET = "TEXT_SECRET",
NOMBRE = "NUMERIC",
DATE = "DATE",
DATE_HEURE = "DATE_HEURE",
HEURE = "HEURE",
BOOLEEN = "BOOLEAN",
FILE_IMAGE = "FILE_IMAGE",
FILE_DOC = "FILE_DOC",
FILE = "FILE"
}
export interface TFilterMetadataUI {
field: string;
value?: any;
operator?: Enum_FilterOperator;
}
export interface TSortMetaUI {
field: string;
order: number;
}
export interface TColumnDataTableDef {
header: string;
field: string;
visible?: boolean;
styleClassHeader?: string;
styleClassField?: string;
typeData?: TypeFieldDataView;
listFilterOperators?: Array<TOptionListeSelectValues>;
filterValue?: any;
css_width?: number;
css_textAlign?: TCss_ColumnDataTableTextAlign;
}
export declare enum TCss_ColumnDataTableTextAlign {
LEFT = "left",
RIGHT = "right",
CENTER = "center",
JUSTIFY = "justify"
}
export interface ColumnDatatableFilterValue {
value: any;
operator: Enum_FilterOperator;
}
export interface ParamFindData {
listeFiltres: ORofAndFilters;
page: number;
size: number;
filters?: Map<string, ColumnDatatableFilterValue>;
}
export interface ParamFindStatsData {
listeFiltres: ORofAndFilters;
filtresModalitesAsTxt: Array<string>;
}
export declare function generateCritereTxtFromFiltres(listefiltres?: ORofAndFilters): Array<string>;
export interface ColumnDatatableFilterValue {
value: any;
operator: Enum_FilterOperator;
}
export interface ParamFindData {
listeFiltres: ORofAndFilters;
page: number;
size: number;
filters?: Map<string, ColumnDatatableFilterValue>;
}
export interface ParamFindStatsData {
listeFiltres: ORofAndFilters;
filtresModalitesAsTxt: Array<string>;
}
export interface TRowFieldsOfFilterConditionData {
fieldColumn: TFieldFormEditData;
fieldOperator: TFieldFormEditData;
fieldValue: TFieldFormEditData;
}
export interface FiltreRequete {
active: boolean;
name?: string;
label?: string;
value?: any;
operator?: Enum_FilterOperator;
ignoreWhenNull: boolean;
defaultNullValue: any;
rowsFieldsForm?: TRowFieldsOfFilterConditionData;
}
export interface ANDFilters {
value: Array<FiltreRequete>;
visible: boolean;
}
export type ORofAndFilters = Array<ANDFilters>;
export interface HttpOptionsRequeteAPI {
headers?: HttpHeaders;
params?: HttpParams;
context?: HttpContext;
withCredentials?: boolean;
}
export declare function addOptionHeaderRequeteAPI_ContentType_JSON(myHttpOptionsApi: HttpOptionsRequeteAPI): void;
export declare function addOptionHeaderRequeteAPI_ContentType_MULTIPART(myHttpOptionsApi: HttpOptionsRequeteAPI): void;
export declare function addOptionHeaderRequeteAPI_ResponseType_BLOB(myHttpOptionsApi: HttpOptionsRequeteAPI): void;
export declare function addOptionHeaderRequeteAPI_ACCEPT_JSON(myHttpOptionsApi: HttpOptionsRequeteAPI): void;
export declare function addOptionHeaderRequeteAPI_JSON(myHttpOptionsApi: HttpOptionsRequeteAPI): void;
export declare function addOptionHeaderRequeteAPI(myHttpOptionsApi: HttpOptionsRequeteAPI, myKeyHeader: string, myValueHeader: string): void;
export declare function addOptionHeaderRequeteAPI_Authorization(myHttpOptionsApi: HttpOptionsRequeteAPI, username: string, password: string): void;
/** */
export declare function addOptionParamRequeteAPI(myHttpOptionsApi: HttpOptionsRequeteAPI, myKeyParam: string, myKeyValue: any): void;
export interface HttpClientParamsAPI {
idApp?: string;
connectedUserId?: number;
connectedUserLogin?: string;
timeZoneOffset?: string;
}
export interface ApiSettings {
api_viewName?: string;
baseUrlApi: string;
apiUrl_findAll?: string;
apiUrl_findAllForStats?: string;
apiUrl_findAllForStats2?: string;
apiUrl_findByPage?: string;
apiUrl_findById?: string;
apiUrl_editOrCreate?: string;
apiUrl_delete?: string;
apiUrl_previewUpload?: string;
apiUrl_validateUpload?: string;
apiUrl_upload?: string;
apiUrl_exportData?: string;
apiUrl_exportStats?: string;
apiUrl_fileUpload?: string;
apiUrl_fileDownload?: string;
api_authorization_username?: string;
api_authorization_password?: string;
api_clientParams?: HttpClientParamsAPI;
api_keyHttpHeader_clientParamsAsTxt?: string;
api_keyHttpHeader_criteresAsTxt?: string;
}
export interface DateHeureSettings {
defaultCustomDateFormat: string;
defaultCustomDateHeureFormat: string;
defaultCustomHeureFormat: string;
}
export declare function isColTypeDate(col: TColumnDataTableDef): boolean;
export declare function isColTypeDateHeure(col: TColumnDataTableDef): boolean;
export declare function isColTypeBooleen(col: TColumnDataTableDef): boolean;
export declare function isColTypeNombre(col: TColumnDataTableDef): boolean;
export declare function isColTypeTexte(col: TColumnDataTableDef): boolean;
export declare const defaultMaxYAxesChart: number;
export interface ListeChoixValeursModalitesStats {
valeursmodaliteparam1: Array<string>;
valeursmodaliteparam2: Array<string>;
}
export interface LabelModaliteStats {
labelModalite1: string;
labelModalite2: string;
}
export interface DimensionAnalyseStats {
nom: string;
description: string;
}
export interface ModaliteStatsParam {
nomChampFiltre1: string;
nomChampFiltre2?: string;
nomChampCumul: string;
titreLabelChampFiltre1?: string;
}
export interface ModaliteStatsParamForRenderView {
valeur: string;
couleurAffichage: string;
visible: boolean;
ordre?: number;
}
export interface ChartStatsParamForRenderView {
nomChampFiltre1: string;
nomChampFiltre2?: string;
listeChoixValeurs1: Array<ModaliteStatsParamForRenderView>;
listeChoixValeurs2?: Array<ModaliteStatsParamForRenderView>;
titreLabelChampFiltre1: string;
typeGraphique: string;
ordonner: boolean;
}
export type ListeModaliteStatsParams = Array<ModaliteStatsParam>;
export interface ValeurModaliteStats<TDATA> {
modalites: Array<string>;
allLabelsModalites: Array<string>;
value: number;
percentValue: number;
cumulValue: number;
moyenneValue: number;
valMin: number;
valMax: number;
}
export interface EntryDataSetChart {
label?: any;
data: Array<any>;
backgroundColor?: string;
}
export type ListeValeursModaliteStats<TDATA> = Array<ValeurModaliteStats<TDATA>>;
export interface SerieStats<TDATA> {
titre?: string;
dimensionsAnalyses: Array<DimensionAnalyseStats>;
listeValeursModalites: Array<ValeurModaliteStats<TDATA>>;
totalData: Number;
listeValeursModalitesForView?: ListeModaliteStatsForView;
dataChartView?: any;
optionsChartView?: any;
valeurMin?: Number;
valeurMax?: Number;
}
export interface TabModaliteSerie1 {
titre: string;
effectif: number;
taux: number;
}
export interface TabModaliteSerie2 {
titreserie1: string;
titre: string;
effectif: number;
taux: number;
}
export type ListeSeriesStats<TDATA> = Array<SerieStats<TDATA>>;
export declare enum TypeChartStats {
BAR = "bar",
PIE = "pie",
DOUGHNUT = "doughnut"
}
export declare enum ListePositionAffichage {
BOTTOM = "bottom",
TOP = "top",
RIGHT = "right",
LEFT = "left"
}
export interface StylesTitreChartStats {
display: boolean;
fontSize?: number;
}
export interface OptionsLegendeChartStats {
positionAffichage: ListePositionAffichage;
}
export interface StylesModaliteStats {
backgroundColor: string;
}
export interface StylesSerieStats {
backgroundColors: Array<string>;
}
export interface ChartStats<TDATA> {
idChartStats: string;
titre: string;
typechart: string;
listeParamsModalite: ListeModaliteStatsParams;
stylesTitre?: StylesTitreChartStats;
optionsLegende?: OptionsLegendeChartStats;
listeSeries: ListeSeriesStats<TDATA>;
}
export type ListeChartStats<TDATA> = Array<ChartStats<TDATA>>;
export interface ModaliteStatsForView {
label: string;
value: Number;
}
export type ListeModaliteStatsForView = Array<ModaliteStatsForView>;
export declare class CrudFiltreRecherche {
private criteresFiltresAsTxt;
private filtresModalitesAsTxt;
reloadOnFiltreChange: Subject<Array<string>>;
constructor();
private emitSubjectChange;
validateChangeFiltre(filtres?: ORofAndFilters): void;
validateChangeStatsFiltre(modalites: ListeModaliteStatsParams, filtres: ORofAndFilters): void;
initCritereTxtFromFiltres(listefiltres?: ORofAndFilters): void;
getCriteresFiltresAsTxt(): Array<string>;
getFiltresModalitesAsTxt(): Array<string>;
}
/*** DEFAULT FILE DATA SERVICE ** */
export declare class FileDataService {
default_apiSettings: ApiSettings;
apiSettings?: ApiSettings;
optionRequeteAPI: HttpOptionsRequeteAPI;
default_dateHeureSettings: DateHeureSettings;
dateHeureSettings?: DateHeureSettings;
httpClient: HttpClient;
constructor(myHttpClient: HttpClient, myApiSettings?: ApiSettings);
/**************************************************/
/** */
protected getCompleteUrlEntity(suffixeEntityUrl?: string): string;
protected getApi_keyHttpHeader_clientParamsAsTxt(): string;
protected getApi_clientParams(): HttpClientParamsAPI;
protected getApi_authorization_username(): string;
protected getApi_authorization_password(): string;
protected getCompleteUrlEntity_filedownload(): string;
protected getCompleteUrlEntity_fileupload(): string;
/**************************************************/
/********** */
protected resetHttpParamsRequeteAPI(): void;
/********** */
protected resetHttpHeadersRequeteAPI(): void;
/***** */
private setOptionParamRequeteAPI_HttpClientParams;
downloadFileFromServer(downloadParams: TOptionFileUploadDownload): Observable<any>;
protected getOptionRequeteDownload(): {
headers: HttpHeaders;
};
}
/*** DEFAULT CRUD DATA SERVICE ** */
export declare class CrudDataService<TDataList, TDataCreate, TDataEdit, TDataImport, TDataExport> {
default_apiSettings: ApiSettings;
apiSettings?: ApiSettings;
optionRequeteAPI: HttpOptionsRequeteAPI;
default_dateHeureSettings: DateHeureSettings;
dateHeureSettings?: DateHeureSettings;
useEchelleInfo_listData: boolean;
useEchelleInfo_statsData: boolean;
dataKeyField: string;
httpClient: HttpClient;
typeView: TypeCrudView;
listeAllFieldsFormEdit: TListeFieldFormEditData;
constructor(myHttpClient: HttpClient, myDataKeyField: string, mytypeview: TypeCrudView, myApiSettings?: ApiSettings);
/**************************************************/
/** */
protected getCompleteUrlEntity(suffixeEntityUrl?: string): string;
protected getCompleteUrlEntity_listAll(): string | undefined;
protected getCompleteUrlEntity_listAllStats(): string | undefined;
protected getCompleteUrlEntity_listAllStats2(): string | undefined;
protected getCompleteUrlEntity_listByPage(): string | undefined;
protected getCompleteUrlEntity_findById(): string | undefined;
protected getCompleteUrlEntity_editOrCreate(): string | undefined;
protected getCompleteUrlEntity_delete(): string | undefined;
protected getCompleteUrlEntity_previewUpload(): string | undefined;
protected getCompleteUrlEntity_validateUpload(): string | undefined;
protected getCompleteUrlEntity_upload(): string | undefined;
protected getCompleteUrlEntity_exportData(): string | undefined;
protected getCompleteUrlEntity_filedownload(): string;
protected getCompleteUrlEntity_exportStats(): string | undefined;
protected getApi_keyHttpHeader_clientParamsAsTxt(): string;
protected getApi_keyHttpHeader_criteresAsTxt(): string;
protected getApi_clientParams(): HttpClientParamsAPI;
protected getApi_authorization_username(): string;
protected getApi_authorization_password(): string;
/**************************************************/
/********** */
protected resetHttpParamsRequeteAPI(): void;
/********** */
protected resetHttpHeadersRequeteAPI(): void;
/***** */
private setOptionParamRequeteAPI_HttpClientParams;
/******************************************************************* */
findDataAll(listeFiltres?: ORofAndFilters): Observable<ReponseAPI<TDataList[]>>;
findDataFromServer(findParams: ParamFindData): Observable<PaginateReponseAPI<TDataList[]>>;
findById(idData: string): Observable<ReponseAPI<TDataList>>;
deleteById(idData: string): Observable<ReponseAPI<Boolean>>;
deleteAll(): Observable<ReponseAPI<Boolean>>;
exportData(type: string, exportParams: ExportListDataParams, listefiltres?: ORofAndFilters): Observable<any>;
protected getOptionRequeteReport(): {
headers: HttpHeaders;
};
convertDataResponseApi_PaginateListView: (resApi: any) => PaginateReponseAPI<TDataList[]>;
convertDataResponseApi_ListView: (resApi: any) => ReponseAPI<TDataList[]>;
getAllFieldOfCreateTypeData(): TListeFieldFormEditData;
getAllFieldOfEditTypeData(): TListeFieldFormEditData;
getAllFieldOfImportTypeData(): TListeFieldFormEditData;
downloadFileFromServer(downloadParams: TOptionFileUploadDownload): Observable<any>;
protected getOptionRequeteDownload(): {
headers: HttpHeaders;
};
}
export declare class CrudDataService_ListView<TDataList> extends CrudDataService<TDataList, any, any, any, any> {
titreViewDataList: string;
cols_Datatable: Array<TColumnDataTableDef>;
exportColumns?: any[];
globalFiltersColumns?: string[];
urlNavigatePageCreateOrEdit?: string;
urlNavigatePageImport?: string;
nbRowsAuto: boolean;
nbRowsDataTableByPage: number;
selectNbRowsDataTableByPage_template: string;
selectedData?: TDataList;
navigateToEdit_Subject: BehaviorSubject<boolean>;
navigateToCreate_Subject: BehaviorSubject<boolean>;
navigateToImport_Subject: BehaviorSubject<boolean>;
constructor(myHttpClient: HttpClient, myDataKeyField: string, myColsDatatable?: Array<TColumnDataTableDef>, myTitreView?: string, myNbRowsAuto?: boolean, myNbRowsDataTableByPage?: number, mySelectNbRowsDataTableByPage_template?: string);
myInit_ListView: () => void;
onPrepare_ListView: (responseResolveData: any) => void;
setStaticParameters_ListView: () => void;
getIDValue: (data: TDataList) => any;
}
/** Read the custom property of body section with given name: **/
export declare function readProperty(name: string): string;
export interface WrapperEditData<TDataCreateOrEdit> {
data?: Observable<TDataCreateOrEdit>;
typeEditView: TypeCrudView;
othersData?: Observable<any>;
}
export interface TBlobField {
nameField: string;
optionsFile: TOptionFileUploadDownload;
file: Blob;
}
export type TListeBlobField = Array<TBlobField>;
/**
*
*/
export declare class CrudDataService_CreateOrEditView<TDataCreate, TDataEdit, TDataList> extends CrudDataService<TDataList, TDataCreate, TDataEdit, any, any> {
titreCreateOrEditView: string;
urlNavigatePageListView: string;
formEdit: TFormEdit<TDataCreate, TDataEdit>;
navigateToList_Subject: BehaviorSubject<boolean>;
newDataCreate: () => TDataCreate;
constructor(myHttpClient: HttpClient, myDataKeyField: string, mytypeview: TypeCrudView.CREATE | TypeCrudView.EDIT, myTitreView?: string, myUrlNavigateListView?: string);
isCreateView(): boolean;
isEditView(): boolean;
saveNew(newData: TDataCreate, uploadfiles?: Blob[], optionsUploadfiles?: TOptionFileUploadDownload[]): Observable<ReponseAPI<TDataList>>;
save(editData: TDataEdit): Observable<ReponseAPI<TDataList>>;
initFieldsValuesFromApiDataEdit: (apidata?: TDataEdit) => void;
initFieldsValuesFromApiDataCreate: (apidata?: TDataCreate) => void;
initApiDataFromFieldsValuesEdit: (apidata?: TDataEdit, listeBlobFields?: TListeBlobField) => void;
initApiDataFromFieldsValuesCreate: (apidata?: TDataCreate, listeBlobFields?: TListeBlobField) => void;
convertDataListToCreate: (datalistElt: TDataList) => TDataCreate;
convertDataListToEdit: (datalistElt: TDataList) => TDataEdit;
onPrepareEdit: () => void;
onPrepareCreate: () => void;
updateDataCreateBeforeSave(data: TDataCreate): any;
updateDataEditBeforeSave(data: TDataEdit): any;
validateDataToSaveCreate: () => boolean;
validateDataToSaveEdit: () => boolean;
afterSaveCreate: () => void;
afterSaveEdit: () => void;
getListeFileUploadFieldsFromData(): Array<TFieldFormEditData>;
}